[*] Binary protection state of onscreencontrols

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


[*] Function mmap tear down of onscreencontrols

    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/onscreencontrols @ 0x6043c */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.0006043c ()                  | void fcn_0006043c () {
                                             | label_0:
    0x0006043c lui gp, 7                     |     
    0x00060440 addiu gp, gp, -0x21fc         |     
    0x00060444 addu gp, gp, t9               |     gp += t9;
    0x00060448 addiu sp, sp, -0x88           |     
    0x0006044c sw ra, 0x84(sp)               |     *(var_84h) = ra;
    0x00060450 sw s3, 0x80(sp)               |     *(var_80h) = s3;
    0x00060454 sw s2, 0x7c(sp)               |     *(var_7ch) = s2;
    0x00060458 sw s1, 0x78(sp)               |     *(var_78h) = s1;
    0x0006045c sw s0, 0x74(sp)               |     *(var_74h) = s0;
    0x00060460 sw gp, 0x18(sp)               |     *(var_18h) = gp;
    0x00060464 move s0, a0                   |     s0 = a0;
    0x00060468 move s1, a1                   |     s1 = a1;
    0x0006046c lw v0, -0x736c(gp)            |     v0 = *((gp - 7387));
    0x00060470 lw v0, (v0)                   |     v0 = *(v0);
    0x00060474 sw v0, 0x6c(sp)               |     *(var_6ch) = v0;
    0x00060478 move a1, a2                   |     a1 = a2;
    0x0006047c lw a0, 0xc(a0)                |     a0 = *((a0 + 3));
    0x00060480 lw t9, -0x7d70(gp)            |     t9 = *(gp);
    0x00060484 bal 0x45c54                   |     fcn_00045c54 ();
    0x00060488 nop                           |     
    0x0006048c lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x00060490 lw v0, 0x14(s0)               |     v0 = *((s0 + 5));
                                             |     if (v0 != 0) {
    0x00060494 bnel v0, zero, 0x60510        |         
    0x00060498 lw v0, 0x18(s0)               |         v0 = *((s0 + 6));
    0x0006049c sb zero, (v0)                 |         *(v0) = 0;
                                             |         if (v0 != 0) {
    0x000604a0 bnel v0, zero, 0x604a4        |             
                                             |         }
    0x000604a4 lw s2, 0x10(s0)               |         s2 = *((s0 + 4));
    0x000604a8 lw a3, -0x7f84(gp)            |         a3 = *(gp);
                                             |         if (s2 == 0) {
    0x000604ac beqz s2, 0x606c0              |             goto label_14;
                                             |         }
    0x000604b0 lw s3, 4(s0)                  |         s3 = *((s0 + 1));
    0x000604b4 sw s1, 0x10(sp)               |         *(var_10h_6) = s1;
                                             |         /* esilref: '&u' */
    0x000604b8 addiu a3, a3, -0x43a8         |         a3 += -0x43a8;
    0x000604bc addiu a2, zero, 0x10          |         a2 = 0x10;
    0x000604c0 lw a1, -0x74a8(gp)            |         a1 = *((gp - 7466));
    0x000604c4 addiu s1, sp, 0x24            |         s1 = sp + 0x24;
    0x000604c8 move a0, s1                   |         a0 = s1;
    0x000604cc lw t9, -0x7c00(gp)            |         t9 = *(gp);
    0x000604d0 bal 0x43a70                   |         method ();
    0x000604d4 nop                           |         
    0x000604d8 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x000604dc addiu v0, zero, 0x29          |         v0 = 0x29;
    0x000604e0 sw v0, 0x10(sp)               |         *(var_10h_6) = v0;
    0x000604e4 lw a3, -0x7f84(gp)            |         a3 = *(gp);
                                             |         /* str.Failed_to_validate_against_child_schema_ */
    0x000604e8 addiu a3, a3, -0x30b0         |         a3 += -aav.0x000030b0;
    0x000604ec move a2, zero                 |         a2 = 0;
    0x000604f0 move a1, zero                 |         a1 = 0;
    0x000604f4 move a0, s1                   |         a0 = s1;
    0x000604f8 lw t9, -0x7390(gp)            |         t9 = *(gp);
    0x000604fc jalr t9                       |         t9 ();
    0x00060500 nop                           |         
    0x00060504 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x00060508 addiu v1, sp, 0x44            |         v1 = sp + 0x44;
    0x0006050c b 0x6052c                     |         
                                             |         if (v0 == 0) {
                                             |         } else {
    0x00060510 beql v0, zero, 0x606c4        |             goto label_15;
                                             |         }
    0x00060514 lbu v0, 8(s0)                 |         v0 = *((s0 + 8));
    0x00060518 lw v1, (v0)                   |         v1 = *(v0);
    0x0006051c addiu v1, v1, 1               |         v1++;
    0x00060520 sw v1, (v0)                   |         *(v0) = v1;
    0x00060524 lbu v0, 8(s0)                 |         v0 = *((s0 + 8));
    0x00060528 b 0x606c4                     |         goto label_15;
                                             |     }
    0x0006052c sw v1, 0x3c(sp)               |     *(var_3ch_5) = v1;
    0x00060530 lw a0, (v0)                   |     a0 = *(v0);
    0x00060534 addiu v1, v0, 8               |     v1 = v0 + 8;
                                             |     if (a0 == v1) {
    0x00060538 beql a0, v1, 0x60598          |         goto label_16;
                                             |     }
    0x0006053c lwl a3, 0xb(v0)               |     __asm ("lwl a3, 0xb(v0)");
    0x00060540 sw a0, 0x3c(sp)               |     *(var_3ch_5) = a0;
    0x00060544 lw a0, 8(v0)                  |     a0 = *((v0 + 2));
    0x00060548 sw a0, 0x44(sp)               |     *(var_44h_5) = a0;
                                             |     do {
    0x0006054c lw a0, 4(v0)                  |         a0 = *((v0 + 1));
    0x00060550 sw a0, 0x40(sp)               |         *(var_40h_4) = a0;
    0x00060554 sw v1, (v0)                   |         *(v0) = v1;
    0x00060558 sw zero, 4(v0)                |         *((v0 + 1)) = 0;
    0x0006055c sb zero, 8(v0)                |         *((v0 + 8)) = 0;
    0x00060560 lw v1, 0x40(sp)               |         v1 = *(var_40h_4);
    0x00060564 lui v0, 0x7fff                |         v0 = 0x7fffffff;
    0x00060568 ori v0, v0, 0xffff            |         
    0x0006056c addiu a2, zero, 1             |         a2 = 1;
                                             |         if (v1 == v0) {
    0x00060570 beq v1, v0, 0x605c8           |             goto label_17;
                                             |         }
    0x00060574 lw a1, -0x7f84(gp)            |         a1 = *(gp);
                                             |         /* esilref: '(' */
    0x00060578 addiu a1, a1, -0x42b4         |         a1 += -0x42b4;
    0x0006057c addiu a0, sp, 0x3c            |         a0 = sp + 0x3c;
    0x00060580 lw t9, -0x74a0(gp)            |         t9 = *(gp);
    0x00060584 jalr t9                       |         t9 ();
    0x00060588 nop                           |         
    0x0006058c lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x00060590 addiu v1, sp, 0x5c            |         v1 = sp + 0x5c;
    0x00060594 b 0x605e8                     |         goto label_18;
                                             | label_16:
    0x00060598 lwr a3, 8(v0)                 |         __asm ("lwr a3, 8(v0)");
    0x0006059c lwl a2, 0xf(v0)               |         __asm ("lwl a2, 0xf(v0)");
    0x000605a0 lwr a2, 0xc(v0)               |         __asm ("lwr a2, 0xc(v0)");
    0x000605a4 lwl a1, 0x13(v0)              |         __asm ("lwl a1, 0x13(v0)");
    0x000605a8 lwr a1, 0x10(v0)              |         __asm ("lwr a1, 0x10(v0)");
    0x000605ac lwl a0, 0x17(v0)              |         __asm ("lwl a0, 0x17(v0)");
    0x000605b0 lwr a0, 0x14(v0)              |         __asm ("lwr a0, 0x14(v0)");
    0x000605b4 sw a3, 0x44(sp)               |         *(var_44h_5) = a3;
    0x000605b8 sw a2, 0x48(sp)               |         *(var_48h_4) = a2;
    0x000605bc sw a1, 0x4c(sp)               |         *(var_4ch_4) = a1;
    0x000605c0 sw a0, 0x50(sp)               |         *(var_50h_4) = a0;
    0x000605c4 b 0x6054c                     |         
                                             |     } while (1);
                                             | label_17:
    0x000605c8 lw a0, -0x7fcc(gp)            |     a0 = *(gp);
                                             |     /* str.basic_string::append */
    0x000605cc addiu a0, a0, 0x5544          |     a0 += 0x5544;
    0x000605d0 lw t9, -0x73c0(gp)            |     t9 = *(gp);
    0x000605d4 jalr t9                       |     t9 ();
    0x000605d8 nop                           |     
    0x000605dc lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x000605e0 move s0, a0                   |     s0 = a0;
    0x000605e4 b 0x60714                     |     goto label_19;
                                             | label_18:
    0x000605e8 sw v1, 0x54(sp)               |     *(var_54h_5) = v1;
    0x000605ec lw a0, (v0)                   |     a0 = *(v0);
    0x000605f0 addiu v1, v0, 8               |     v1 = v0 + 8;
                                             |     if (a0 == v1) {
    0x000605f4 beql a0, v1, 0x60640          |         goto label_20;
                                             |     }
    0x000605f8 lwl a3, 0xb(v0)               |     __asm ("lwl a3, 0xb(v0)");
    0x000605fc sw a0, 0x54(sp)               |     *(var_54h_5) = a0;
    0x00060600 lw a0, 8(v0)                  |     a0 = *((v0 + 2));
    0x00060604 sw a0, 0x5c(sp)               |     *(var_5ch_4) = a0;
                                             |     do {
    0x00060608 lw a0, 4(v0)                  |         a0 = *((v0 + 1));
    0x0006060c sw a0, 0x58(sp)               |         *(var_58h_3) = a0;
    0x00060610 sw v1, (v0)                   |         *(v0) = v1;
    0x00060614 sw zero, 4(v0)                |         *((v0 + 1)) = 0;
    0x00060618 sb zero, 8(v0)                |         *((v0 + 8)) = 0;
    0x0006061c addiu a2, sp, 0x54            |         a2 = sp + 0x54;
    0x00060620 move a1, s3                   |         a1 = s3;
    0x00060624 move a0, s2                   |         a0 = s2;
    0x00060628 lw t9, -0x7be4(gp)            |         t9 = *(gp);
    0x0006062c bal 0x44744                   |         fcn_00044744 ();
    0x00060630 nop                           |         
    0x00060634 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x00060638 lw a0, 0x54(sp)               |         a0 = *(var_54h_5);
    0x0006063c b 0x60670                     |         goto label_21;
                                             | label_20:
    0x00060640 lwr a3, 8(v0)                 |         __asm ("lwr a3, 8(v0)");
    0x00060644 lwl a2, 0xf(v0)               |         __asm ("lwl a2, 0xf(v0)");
    0x00060648 lwr a2, 0xc(v0)               |         __asm ("lwr a2, 0xc(v0)");
    0x0006064c lwl a1, 0x13(v0)              |         __asm ("lwl a1, 0x13(v0)");
    0x00060650 lwr a1, 0x10(v0)              |         __asm ("lwr a1, 0x10(v0)");
    0x00060654 lwl a0, 0x17(v0)              |         __asm ("lwl a0, 0x17(v0)");
    0x00060658 lwr a0, 0x14(v0)              |         __asm ("lwr a0, 0x14(v0)");
    0x0006065c sw a3, 0x5c(sp)               |         *(var_5ch_4) = a3;
    0x00060660 sw a2, 0x60(sp)               |         *(var_60h_2) = a2;
    0x00060664 sw a1, 0x64(sp)               |         *(var_64h_2) = a1;
    0x00060668 sw a0, 0x68(sp)               |         *(var_68h_4) = a0;
    0x0006066c b 0x60608                     |         
                                             |     } while (1);
                                             | label_21:
    0x00060670 addiu v0, sp, 0x5c            |     v0 = sp + 0x5c;
    0x00060674 lw t9, -0x7488(gp)            |     t9 = *((gp - 7458));
                                             |     if (a0 != v0) {
    0x00060678 beq a0, v0, 0x60688           |         
    0x0006067c jalr t9                       |         t9 ();
    0x00060680 nop                           |         
    0x00060684 lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             |     }
    0x00060688 lw a0, 0x3c(sp)               |     a0 = *(var_3ch_5);
    0x0006068c addiu v0, sp, 0x44            |     v0 = sp + 0x44;
    0x00060690 lw t9, -0x7488(gp)            |     t9 = *((gp - 7458));
                                             |     if (a0 != v0) {
    0x00060694 beq a0, v0, 0x606a4           |         
    0x00060698 jalr t9                       |         t9 ();
    0x0006069c nop                           |         
    0x000606a0 lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             |     }
    0x000606a4 lw a0, 0x24(sp)               |     a0 = *(var_24h_6);
    0x000606a8 addiu v0, sp, 0x2c            |     v0 = sp + 0x2c;
    0x000606ac lw t9, -0x7488(gp)            |     t9 = *((gp - 7458));
                                             |     if (a0 != v0) {
    0x000606b0 beq a0, v0, 0x606c0           |         
    0x000606b4 jalr t9                       |         t9 ();
    0x000606b8 nop                           |         
    0x000606bc lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             |     }
                                             | label_14:
    0x000606c0 lbu v0, 9(s0)                 |     v0 = *((s0 + 9));
                                             | label_15:
    0x000606c4 lw a0, 0x6c(sp)               |     a0 = *(var_6ch);
    0x000606c8 lw v1, -0x736c(gp)            |     v1 = *((gp - 7387));
    0x000606cc lw v1, (v1)                   |     v1 = *(v1);
    0x000606d0 lw ra, 0x84(sp)               |     ra = *(var_84h);
                                             |     if (a0 != v1) {
    0x000606d4 bne a0, v1, 0x60768           |         goto label_22;
                                             |     }
    0x000606d8 lw s3, 0x80(sp)               |     s3 = *(var_80h);
    0x000606dc lw s2, 0x7c(sp)               |     s2 = *(var_7ch);
    0x000606e0 lw s1, 0x78(sp)               |     s1 = *(var_78h);
    0x000606e4 lw s0, 0x74(sp)               |     s0 = *(var_74h);
    0x000606e8 addiu sp, sp, 0x88            |     
    0x000606ec jr ra                         |     return v1;
                                             | label_19:
    0x00060714 lw a0, 0x3c(sp)               |     a0 = *(var_3ch_5);
    0x00060718 addiu v0, sp, 0x44            |     v0 = sp + 0x44;
    0x0006071c lw t9, -0x7488(gp)            |     t9 = *((gp - 7458));
                                             |     if (a0 == v0) {
    0x00060720 beq a0, v0, 0x60730           |         goto label_23;
                                             |     }
    0x00060724 jalr t9                       |     t9 ();
    0x00060728 nop                           |     
    0x0006072c lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     do {
                                             | label_23:
    0x00060730 lw a0, 0x24(sp)               |         a0 = *(var_24h_6);
    0x00060734 addiu v0, sp, 0x2c            |         v0 = sp + 0x2c;
    0x00060738 lw t9, -0x7488(gp)            |         t9 = *((gp - 7458));
                                             |         if (a0 != v0) {
    0x0006073c beq a0, v0, 0x6074c           |             
    0x00060740 jalr t9                       |             t9 ();
    0x00060744 nop                           |             
    0x00060748 lw gp, 0x18(sp)               |             gp = *(var_18h);
                                             |         }
    0x0006074c move a0, s0                   |         a0 = s0;
    0x00060750 lw t9, -0x75f8(gp)            |         t9 = sym.imp._Unwind_Resume;
    0x00060754 jalr t9                       |         t9 ();
    0x00060758 nop                           |         
    0x0006075c lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x00060760 move s0, a0                   |         s0 = a0;
    0x00060764 b 0x60730                     |         
                                             |     } while (1);
                                             | label_22:
    0x00060768 lw t9, -0x74e8(gp)            |     t9 = sym.imp.__stack_chk_fail;
    0x0006076c jalr t9                       |     t9 ();
    0x00060770 nop                           |     
    0x00060774 lui gp, 7                     |     
    0x00060778 addiu gp, gp, -0x2534         |     
    0x0006077c addu gp, gp, t9               |     gp += t9;
    0x00060780 addiu sp, sp, -0x80           |     
    0x00060784 sw ra, 0x7c(sp)               |     *(var_7ch_2) = ra;
    0x00060788 sw s7, 0x78(sp)               |     *(var_78h_2) = s7;
    0x0006078c sw s6, 0x74(sp)               |     *(var_74h_2) = s6;
    0x00060790 sw s5, 0x70(sp)               |     *(var_70h) = s5;
    0x00060794 sw s4, 0x6c(sp)               |     *(var_6ch_2) = s4;
    0x00060798 sw s3, 0x68(sp)               |     *(var_68h) = s3;
    0x0006079c sw s2, 0x64(sp)               |     *(var_64h) = s2;
    0x000607a0 sw s1, 0x60(sp)               |     *(var_60h) = s1;
    0x000607a4 sw s0, 0x5c(sp)               |     *(var_5ch) = s0;
    0x000607a8 sw gp, 0x10(sp)               |     *(var_10h) = gp;
    0x000607ac move s1, a0                   |     s1 = a0;
    0x000607b0 move s2, a1                   |     s2 = a1;
    0x000607b4 lw v0, -0x736c(gp)            |     v0 = *((gp - 7387));
    0x000607b8 lw v0, (v0)                   |     v0 = *(v0);
    0x000607bc sw v0, 0x54(sp)               |     *(var_54h) = v0;
    0x000607c0 sb zero, 0x1c(sp)             |     *(var_1ch) = 0;
    0x000607c4 lbu v1, 0x1c(a0)              |     v1 = *((a0 + 28));
    0x000607c8 lw v0, 8(a0)                  |     v0 = *((a0 + 2));
    0x000607cc sw v0, 0x24(sp)               |     *(var_24h) = v0;
    0x000607d0 lw v0, -0x7d78(gp)            |     v0 = *(gp);
    0x000607d4 addiu v0, v0, 8               |     v0 += 8;
    0x000607d8 sw v0, 0x20(sp)               |     *(var_20h) = v0;
    0x000607dc sb zero, 0x28(sp)             |     *(var_28h) = 0;
    0x000607e0 addiu v0, zero, 1             |     v0 = 1;
    0x000607e4 sb v0, 0x29(sp)               |     *(var_29h) = v0;
    0x000607e8 sb v1, 0x2a(sp)               |     *(var_2ah) = v1;
    0x000607ec addiu v0, sp, 0x1c            |     v0 = sp + 0x1c;
    0x000607f0 sw v0, 0x2c(sp)               |     *(var_2ch) = v0;
    0x000607f4 lw s0, 0x20(a1)               |     s0 = *((a1 + 8));
    0x000607f8 addiu s4, a1, 0x18            |     s4 = a1 + 0x18;
    0x000607fc lw s3, -0x7f84(gp)            |     s3 = *(gp);
                                             |     if (s0 == s4) {
    0x00060800 beq s0, s4, 0x609c8           |         goto label_24;
                                             |     }
    0x00060804 addiu s3, s3, -0x3054         |     s3 += -0x3054;
    0x00060808 addiu s5, sp, 0x20            |     s5 = sp + 0x20;
    0x0006080c lw s7, -0x7be0(gp)            |     s7 = *(gp);
    0x00060810 lw s6, -0x7a64(gp)            |     s6 = *(gp);
    0x00060814 b 0x60870                     |     
                                             |     while (v0 == 0) {
    0x00060850 move a0, s0                   |         a0 = s0;
                                             |         if (v0 == 0) {
    0x00060854 beqz v0, 0x609c8              |             goto label_24;
                                             |         }
    0x00060858 lw t9, -0x7504(gp)            |         t9 = *(gp);
    0x0006085c jalr t9                       |         t9 ();
    0x00060860 nop                           |         
    0x00060864 lw gp, 0x10(sp)               |         gp = *(var_10h);
    0x00060868 move s0, v0                   |         s0 = v0;
                                             |         if (s4 == v0) {
    0x0006086c beq s4, v0, 0x609c8           |             goto label_24;
                                             |         }
    0x00060870 lw v0, 0x10(s0)               |         v0 = *((s0 + 4));
    0x00060874 sltiu v0, v0, 8               |         v0 = (v0 < 8) ? 1 : 0;
    0x00060878 lbu v0, 0x29(sp)              |         v0 = *(var_29h);
    0x0006087c beqz v0, 0x60850              |         
                                             |     }
    0x00060880 lw v0, 0x10(s0)               |     v0 = *((s0 + 4));
    0x00060884 sll v0, v0, 2                 |     v0 <<= 2;
    0x00060888 lwx v0, v0(s3)                |     __asm ("lwx v0, v0(s3)");
    0x0006088c addu v0, v0, gp               |     v0 += gp;
    0x00060890 jr v0                         |     v0 ();
    0x00060894 nop                           |     
                                             | label_24:
    0x000609c8 lbu s3, 0x1c(sp)              |     s3 = *(var_1ch);
                                             |     if (s3 != 0) {
    0x000609cc beql s3, zero, 0x60a14        |         
    0x000609d0 sw zero, 0x1c(sp)             |         *(var_1ch) = 0;
                                             | label_1:
    0x000609d4 move v0, s3                   |         v0 = s3;
                                             | label_2:
    0x000609d8 lw a0, 0x54(sp)               |         a0 = *(var_54h);
    0x000609dc lw v1, -0x736c(gp)            |         v1 = *((gp - 7387));
    0x000609e0 lw v1, (v1)                   |         v1 = *(v1);
    0x000609e4 lw ra, 0x7c(sp)               |         ra = *(var_7ch_2);
                                             |         if (a0 != v1) {
    0x000609e8 bne a0, v1, 0x60b3c           |             goto label_25;
                                             |         }
    0x000609ec lw s7, 0x78(sp)               |         s7 = *(var_78h_2);
    0x000609f0 lw s6, 0x74(sp)               |         s6 = *(var_74h_2);
    0x000609f4 lw s5, 0x70(sp)               |         s5 = *(var_70h);
    0x000609f8 lw s4, 0x6c(sp)               |         s4 = *(var_6ch_2);
    0x000609fc lw s3, 0x68(sp)               |         s3 = *(var_68h);
    0x00060a00 lw s2, 0x64(sp)               |         s2 = *(var_64h);
    0x00060a04 lw s1, 0x60(sp)               |         s1 = *(var_60h);
    0x00060a08 lw s0, 0x5c(sp)               |         s0 = *(var_5ch);
    0x00060a0c addiu sp, sp, 0x80            |         
    0x00060a10 jr ra                         |         return v1;
                                             |     }
    0x00060a14 addiu s6, s1, 0xc             |     s6 = s1 + 0xc;
    0x00060a18 addiu v0, s1, 4               |     v0 = s1 + 4;
    0x00060a1c sw v0, 0x20(sp)               |     *(var_20h) = v0;
    0x00060a20 sw s6, 0x24(sp)               |     *(var_24h) = s6;
    0x00060a24 sb zero, 0x28(sp)             |     *(var_28h) = 0;
    0x00060a28 addiu v0, zero, 1             |     v0 = 1;
    0x00060a2c sb v0, 0x29(sp)               |     *(var_29h) = v0;
    0x00060a30 sw s1, 0x2c(sp)               |     *(var_2ch) = s1;
    0x00060a34 sw zero, 0x30(sp)             |     *(var_30h) = 0;
    0x00060a38 addiu v0, sp, 0x1c            |     v0 = sp + 0x1c;
    0x00060a3c sw v0, 0x34(sp)               |     *(var_34h) = v0;
    0x00060a40 sw zero, 0x38(sp)             |     *(var_38h) = 0;
    0x00060a44 lw s0, 0x34(s2)               |     s0 = *((s2 + 13));
    0x00060a48 lw s4, 0x38(s2)               |     s4 = *((s2 + 14));
    0x00060a4c lw v0, 0x1c(sp)               |     v0 = *(var_1ch);
                                             |     if (s0 == s4) {
    0x00060a50 beq s0, s4, 0x60a94           |         goto label_26;
                                             |     }
    0x00060a54 move s2, zero                 |     s2 = 0;
    0x00060a58 addiu s7, sp, 0x20            |     s7 = sp + 0x20;
    0x00060a5c lw s5, -0x7a5c(gp)            |     s5 = *(gp);
                                             |     do {
    0x00060a60 lw a2, (s0)                   |         a2 = *(s0);
    0x00060a64 move a1, s2                   |         a1 = s2;
    0x00060a68 move a0, s7                   |         a0 = s7;
    0x00060a6c move t9, s5                   |         t9 = s5;
    0x00060a70 bal 0x6043c                   |         fcn_0006043c ();
                                             |         goto label_0;
    0x00060a74 nop                           |         
    0x00060a78 lw gp, 0x10(sp)               |         gp = *(var_10h);
    0x00060a7c lw v0, 0x1c(sp)               |         v0 = *(var_1ch);
                                             |         if (v0 == 0) {
    0x00060a80 beqz v0, 0x60a94              |             goto label_26;
                                             |         }
    0x00060a84 addiu s0, s0, 4               |         s0 += 4;
    0x00060a88 addiu s2, s2, 1               |         s2++;
    0x00060a8c bne s4, s0, 0x60a60           |         
                                             |     } while (s4 != s0);
    0x00060a90 lw v0, 0x1c(sp)               |     v0 = *(var_1ch);
                                             | label_26:
    0x00060a94 addiu s3, zero, 1             |     s3 = 1;
                                             |     if (v0 == 0) {
    0x00060a98 bnel v0, zero, 0x609d4        |         goto label_1;
                                             |     }
    0x00060a9c lw s1, 0x18(s1)               |     s1 = *((s1 + 6));
    0x00060aa0 addiu a2, sp, 0x20            |     a2 = sp + 0x20;
                                             |     if (s1 == 0) {
    0x00060aa4 beqz s1, 0x609d4              |         goto label_1;
                                             |     }
    0x00060aa8 lw a1, -0x7f84(gp)            |     a1 = *(gp);
                                             |     /* str.Value_type_not_permitted_by_type_constraint. */
    0x00060aac addiu a1, a1, -0x3084         |     a1 += -0x3084;
    0x00060ab0 addiu s0, sp, 0x3c            |     s0 = sp + 0x3c;
    0x00060ab4 move a0, s0                   |     a0 = s0;
    0x00060ab8 lw t9, -0x753c(gp)            |     t9 = *(gp);
    0x00060abc jalr t9                       |     t9 ();
    0x00060ac0 nop                           |     
    0x00060ac4 lw gp, 0x10(sp)               |     gp = *(var_10h);
    0x00060ac8 move a2, s0                   |     a2 = s0;
    0x00060acc move a1, s6                   |     a1 = s6;
    0x00060ad0 move a0, s1                   |     a0 = s1;
    0x00060ad4 lw t9, -0x7be4(gp)            |     t9 = *(gp);
    0x00060ad8 bal 0x44744                   |     fcn_00044744 ();
    0x00060adc nop                           |     
    0x00060ae0 lw gp, 0x10(sp)               |     gp = *(var_10h);
    0x00060ae4 lw a0, 0x3c(sp)               |     a0 = *(var_3ch_4);
    0x00060ae8 addiu v0, sp, 0x44            |     v0 = sp + 0x44;
    0x00060aec lw t9, -0x7488(gp)            |     t9 = *((gp - 7458));
                                             |     if (a0 == v0) {
    0x00060af0 beq a0, v0, 0x609d4           |         goto label_1;
                                             |     }
    0x00060af4 jalr t9                       |     t9 ();
    0x00060af8 nop                           |     
    0x00060afc lw gp, 0x10(sp)               |     gp = *(var_10h);
    0x00060b00 move v0, s3                   |     v0 = s3;
    0x00060b04 b 0x609d8                     |     goto label_2;
                                             | label_25:
    0x00060b3c lw t9, -0x74e8(gp)            |     t9 = sym.imp.__stack_chk_fail;
    0x00060b40 jalr t9                       |     t9 ();
    0x00060b44 nop                           |     
    0x00060b48 lui gp, 7                     |     
    0x00060b4c addiu gp, gp, -0x2908         |     
    0x00060b50 addu gp, gp, t9               |     gp += t9;
    0x00060b54 addiu sp, sp, -0x100          |     
    0x00060b58 sw ra, 0xfc(sp)               |     *(var_fch) = ra;
    0x00060b5c sw fp, 0xf8(sp)               |     *(var_f8h) = fp;
    0x00060b60 sw s7, 0xf4(sp)               |     *(var_f4h) = s7;
    0x00060b64 sw s6, 0xf0(sp)               |     *(var_f0h) = s6;
    0x00060b68 sw s5, 0xec(sp)               |     *(var_ech) = s5;
    0x00060b6c sw s4, 0xe8(sp)               |     *(var_e8h) = s4;
    0x00060b70 sw s3, 0xe4(sp)               |     *(var_e4h) = s3;
    0x00060b74 sw s2, 0xe0(sp)               |     *(var_e0h) = s2;
    0x00060b78 sw s1, 0xdc(sp)               |     *(var_dch) = s1;
    0x00060b7c sw s0, 0xd8(sp)               |     *(var_d8h) = s0;
    0x00060b80 sw gp, 0x10(sp)               |     *(var_10h_2) = gp;
    0x00060b84 move s3, a0                   |     s3 = a0;
    0x00060b88 move s2, a1                   |     s2 = a1;
    0x00060b8c lw v0, -0x736c(gp)            |     v0 = *((gp - 7387));
    0x00060b90 lw v0, (v0)                   |     v0 = *(v0);
    0x00060b94 sw v0, 0xd4(sp)               |     *(var_d4h) = v0;
    0x00060b98 sw zero, 0x20(sp)             |     *(var_20h_2) = 0;
    0x00060b9c sw zero, 0x70(sp)             |     *(var_70h_2) = 0;
    0x00060ba0 sw zero, 0x74(sp)             |     *(var_74h_3) = 0;
    0x00060ba4 sw zero, 0x78(sp)             |     *(var_78h_3) = 0;
    0x00060ba8 sw zero, 0x7c(sp)             |     *(var_7ch_3) = 0;
    0x00060bac sw zero, 0x80(sp)             |     *(var_80h_2) = 0;
    0x00060bb0 sw zero, 0x84(sp)             |     *(var_84h_2) = 0;
    0x00060bb4 sw zero, 0x88(sp)             |     *(var_88h) = 0;
    0x00060bb8 sw zero, 0x8c(sp)             |     *(var_8ch) = 0;
    0x00060bbc sw zero, 0x90(sp)             |     *(var_90h) = 0;
    0x00060bc0 sw zero, 0x94(sp)             |     *(var_94h) = 0;
    0x00060bc4 move a1, zero                 |     a1 = 0;
    0x00060bc8 addiu a0, sp, 0x70            |     a0 = sp + 0x70;
    0x00060bcc lw t9, -0x7d84(gp)            |     t9 = *(gp);
    0x00060bd0 bal 0x433c8                   |     method ();
    0x00060bd4 nop                           |     
    0x00060bd8 lw gp, 0x10(sp)               |     gp = *(var_10h_2);
    0x00060bdc lw s1, 0x18(s3)               |     s1 = *((s3 + 6));
    0x00060be0 addiu s1, sp, 0x70            |     s1 = sp + 0x70;
                                             |     if (s1 != 0) {
    0x00060be4 bnel s1, zero, 0x60be8        |         
                                             |     }
    0x00060be8 addiu s7, s3, 0xc             |     s7 = s3 + 0xc;
    0x00060bec lbu s0, 0x1c(s3)              |     s0 = *((s3 + 28));
    0x00060bf0 lw v0, -0x7d7c(gp)            |     v0 = *(gp);
    0x00060bf4 addiu v0, v0, 8               |     v0 += 8;
    0x00060bf8 sw v0, 0x50(sp)               |     *(var_50h) = v0;
    0x00060bfc lw v0, 8(s3)                  |     v0 = *((s3 + 2));
    0x00060c00 sw v0, 0x58(sp)               |     *(var_58h) = v0;
    0x00060c04 lw v0, -0x7d78(gp)            |     v0 = *(gp);
    0x00060c08 addiu v0, v0, 8               |     v0 += 8;
    0x00060c0c sw v0, 0x54(sp)               |     *(var_54h_2) = v0;
    0x00060c10 move a1, s7                   |     a1 = s7;
    0x00060c14 addiu a0, sp, 0x5c            |     a0 = sp + 0x5c;
    0x00060c18 lw t9, -0x7d74(gp)            |     t9 = *(gp);
    0x00060c1c bal 0x44590                   |     method ();
    0x00060c20 nop                           |     
    0x00060c24 lw gp, 0x10(sp)               |     gp = *(var_10h_2);
    0x00060c28 sw s1, 0x68(sp)               |     *(var_68h_2) = s1;
    0x00060c2c sb s0, 0x6c(sp)               |     *(var_6ch_3) = s0;
    0x00060c30 addiu v0, s3, 4               |     v0 = s3 + 4;
    0x00060c34 sw v0, 0x34(sp)               |     *(var_34h_2) = v0;
    0x00060c38 sw s7, 0x38(sp)               |     *(var_38h_2) = s7;
    0x00060c3c addiu v0, zero, 1             |     v0 = 1;
    0x00060c40 sb v0, 0x3c(sp)               |     *(var_3ch) = v0;
    0x00060c44 sb v0, 0x3d(sp)               |     *(var_3dh) = v0;
    0x00060c48 addiu v0, sp, 0x50            |     v0 = sp + 0x50;
    0x00060c4c sw v0, 0x40(sp)               |     *(var_40h) = v0;
    0x00060c50 sw s1, 0x44(sp)               |     *(var_44h) = s1;
    0x00060c54 addiu v0, sp, 0x20            |     v0 = sp + 0x20;
    0x00060c58 sw v0, 0x48(sp)               |     *(var_48h) = v0;
    0x00060c5c sw zero, 0x4c(sp)             |     *(var_4ch) = 0;
    0x00060c60 lw s0, 0x14(s2)               |     s0 = *((s2 + 5));
    0x00060c64 lw s4, 0x18(s2)               |     s4 = *((s2 + 6));
    0x00060c68 move s2, zero                 |     s2 = 0;
                                             |     if (s0 == s4) {
    0x00060c6c beq s0, s4, 0x60cb0           |         goto label_27;
                                             |     }
    0x00060c70 addiu s5, sp, 0x34            |     s5 = sp + 0x34;
    0x00060c74 lw s6, -0x7a5c(gp)            |     s6 = *(gp);
    0x00060c78 b 0x60c8c                     |     
                                             |     while (1) {
    0x00060c7c addiu s0, s0, 4               |         s0 += 4;
                                             |         if (v0 == 0) {
    0x00060c80 beqz v0, 0x60cb0              |             goto label_27;
                                             |         }
    0x00060c84 addiu s2, s2, 1               |         s2++;
                                             |         if (s4 == s0) {
    0x00060c88 beq s4, s0, 0x60cb0           |             goto label_27;
                                             |         }
    0x00060c8c lw a2, (s0)                   |         a2 = *(s0);
    0x00060c90 move a1, s2                   |         a1 = s2;
    0x00060c94 move a0, s5                   |         a0 = s5;
    0x00060c98 move t9, s6                   |         t9 = s6;
    0x00060c9c bal 0x6043c                   |         fcn_0006043c ();
                                             |         goto label_0;
    0x00060ca0 nop                           |         
    0x00060ca4 lw gp, 0x10(sp)               |         gp = *(var_10h_2);
    0x00060ca8 b 0x60c7c                     |         
                                             |     }
    0x00060cac nop                           |     
                                             | label_27:
    0x00060cb0 lw v0, 0x20(sp)               |     v0 = *(var_20h_2);
    0x00060cb4 addiu v1, zero, 1             |     v1 = 1;
                                             |     if (v0 != 0) {
    0x00060cb8 bnez v0, 0x60f08              |         goto label_28;
                                             |     }
    0x00060cbc lw v0, 0x18(s3)               |     v0 = *((s3 + 6));
    0x00060cc0 addiu v0, sp, 0xc4            |     v0 = sp + 0xc4;
                                             |     if (v0 == 0) {
    0x00060cc4 beqz v0, 0x60f78              |         goto label_29;
                                             |     }
    0x00060cc8 sw zero, 0xb0(sp)             |     *(var_b0h_2) = 0;
    0x00060ccc sw zero, 0xb4(sp)             |     *(var_b4h_2) = 0;
    0x00060cd0 sw zero, 0xb8(sp)             |     *(var_b8h_2) = 0;
    0x00060cd4 sw v0, 0xbc(sp)               |     *(var_bch_2) = v0;
    0x00060cd8 sw zero, 0xc0(sp)             |     *(var_c0h_2) = 0;
    0x00060cdc sb zero, 0xc4(sp)             |     *(var_c4h_2) = 0;
    0x00060ce0 addiu v0, sp, 0xb0            |     v0 = sp + 0xb0;
    0x00060ce4 sw v0, 0x18(sp)               |     *(var_18h_3) = v0;
    0x00060ce8 lw fp, -0x7d8c(gp)            |     fp = *(gp);
    0x00060cec addiu s5, sp, 0xbc            |     s5 = sp + 0xbc;
    0x00060cf0 lw v0, -0x7d68(gp)            |     v0 = *(gp);
    0x00060cf4 sw v0, 0x1c(sp)               |     *(var_1ch_4) = v0;
    0x00060cf8 lw s6, -0x7be4(gp)            |     s6 = *(gp);
    0x00060cfc b 0x6109c                     |     goto label_30;
                                             | label_8:
    0x00060d00 move a0, s5                   |     a0 = s5;
    0x00060d04 lw t9, -0x73c4(gp)            |     t9 = *(gp);
    0x00060d08 jalr t9                       |     t9 ();
    0x00060d0c nop                           |     
    0x00060d10 lw gp, 0x10(sp)               |     gp = *(var_10h_2);
    0x00060d14 lw s2, 8(s1)                  |     s2 = *((s1 + 2));
    0x00060d18 lw v0, 0x10(s1)               |     v0 = *((s1 + 4));
    0x00060d1c addiu v0, v0, -0x24           |     v0 += -0x24;
    0x00060d20 addiu v0, s2, 0x14            |     v0 = s2 + 0x14;
                                             |     if (s2 == v0) {
    0x00060d24 beq s2, v0, 0x60dc8           |         goto label_31;
                                             |     }
    0x00060d28 lw a0, 0xc(s2)                |     a0 = *((s2 + 3));
    0x00060d2c lw t9, -0x7488(gp)            |     t9 = *((gp - 7458));
                                             |     if (a0 != v0) {
    0x00060d30 beq a0, v0, 0x60d40           |         
    0x00060d34 jalr t9                       |         t9 ();
    0x00060d38 nop                           |         
    0x00060d3c lw gp, 0x10(sp)               |         gp = *(var_10h_2);
                                             |     }
    0x00060d40 lw s0, (s2)                   |     s0 = *(s2);
    0x00060d44 lw s4, 4(s2)                  |     s4 = *((s2 + 1));
    0x00060d48 lw a0, (s0)                   |     a0 = *(s0);
                                             |     if (s0 == s4) {
    0x00060d4c bnel s0, s4, 0x60db4          |         goto label_32;
                                             |     }
    0x00060d50 lw a0, (s2)                   |     a0 = *(s2);
                                             |     do {
    0x00060d54 lw t9, -0x7488(gp)            |         t9 = *((gp - 7458));
                                             |         if (a0 != 0) {
    0x00060d58 beqz a0, 0x60d68              |             
    0x00060d5c jalr t9                       |             t9 ();
    0x00060d60 nop                           |             
    0x00060d64 lw gp, 0x10(sp)               |             gp = *(var_10h_2);
                                             |         }
    0x00060d68 lw v0, 8(s1)                  |         v0 = *((s1 + 2));
    0x00060d6c addiu v0, v0, 0x24            |         v0 += 0x24;
    0x00060d70 sw v0, 8(s1)                  |         *((s1 + 2)) = v0;
    0x00060d74 move a2, s5                   |         a2 = s5;
                                             | label_5:
    0x00060d78 lw a1, 0x18(sp)               |         a1 = *(var_18h_3);
    0x00060d7c lw a0, 0x18(s3)               |         a0 = *((s3 + 6));
    0x00060d80 move t9, s6                   |         t9 = s6;
    0x00060d84 bal 0x44744                   |         fcn_00044744 ();
    0x00060d88 nop                           |         
    0x00060d8c lw gp, 0x10(sp)               |         gp = *(var_10h_2);
    0x00060d90 b 0x6109c                     |         goto label_30;
    0x00060d94 nop                           |         
                                             | label_3:
    0x00060d98 jalr t9                       |         t9 ();
    0x00060d9c nop                           |         
    0x00060da0 lw gp, 0x10(sp)               |         gp = *(var_10h_2);
    0x00060da4 addiu s0, s0, 0x18            |         s0 += 0x18;
                                             | label_4:
    0x00060da8 beql s4, s0, 0x60d54          |         
                                             |     } while (s4 == s0);
    0x00060dac lw a0, (s2)                   |     a0 = *(s2);
    0x00060db0 lw a0, (s0)                   |     a0 = *(s0);
                                             | label_32:
    0x00060db4 addiu v0, s0, 8               |     v0 = s0 + 8;
    0x00060db8 lw t9, -0x7488(gp)            |     t9 = *((gp - 7458));
                                             |     if (a0 != v0) {
    0x00060dbc bne a0, v0, 0x60d98           |         goto label_3;
                                             |     }
    0x00060dc0 addiu s0, s0, 0x18            |     s0 += 0x18;
    0x00060dc4 b 0x60da8                     |     goto label_4;
                                             | label_31:
    0x00060dc8 move a0, s1                   |     a0 = s1;
    0x00060dcc lw t9, 0x1c(sp)               |     t9 = *(var_1ch_4);
    0x00060dd0 jalr t9                       |     t9 ();
    0x00060dd4 nop                           |     
    0x00060dd8 lw gp, 0x10(sp)               |     gp = *(var_10h_2);
    0x00060ddc move a2, s5                   |     a2 = s5;
    0x00060de0 b 0x60d78                     |     goto label_5;
                                             | label_7:
    0x00060de4 addiu v0, sp, 0xa0            |     v0 = sp + 0xa0;
    0x00060de8 lw t9, -0x7488(gp)            |     t9 = *((gp - 7458));
                                             |     if (a0 != v0) {
    0x00060dec beq a0, v0, 0x60dfc           |         
    0x00060df0 jalr t9                       |         t9 ();
    0x00060df4 nop                           |         
    0x00060df8 lw gp, 0x10(sp)               |         gp = *(var_10h_2);
                                             |     }
    0x00060dfc lw a0, 0xbc(sp)               |     a0 = *(var_bch_2);
    0x00060e00 addiu v0, sp, 0xc4            |     v0 = sp + 0xc4;
    0x00060e04 lw t9, -0x7488(gp)            |     t9 = *((gp - 7458));
                                             |     if (a0 != v0) {
    0x00060e08 beq a0, v0, 0x60e18           |         
    0x00060e0c jalr t9                       |         t9 ();
    0x00060e10 nop                           |         
    0x00060e14 lw gp, 0x10(sp)               |         gp = *(var_10h_2);
                                             |     }
    0x00060e18 addiu a0, sp, 0xb0            |     a0 = sp + 0xb0;
    0x00060e1c lw t9, -0x7e7c(gp)            |     t9 = *(gp);
    0x00060e20 jalr t9                       |     t9 ();
    0x00060e24 nop                           |     
    0x00060e28 lw gp, 0x10(sp)               |     gp = *(var_10h_2);
    0x00060e2c move s1, zero                 |     s1 = 0;
                                             |     do {
                                             | label_6:
    0x00060e30 lw v0, -0x7d7c(gp)            |         v0 = *(gp);
    0x00060e34 addiu v0, v0, 8               |         v0 += 8;
    0x00060e38 sw v0, 0x50(sp)               |         *(var_50h) = v0;
    0x00060e3c addiu a0, sp, 0x5c            |         a0 = sp + 0x5c;
    0x00060e40 lw t9, -0x7e7c(gp)            |         t9 = *(gp);
    0x00060e44 jalr t9                       |         t9 ();
    0x00060e48 nop                           |         
    0x00060e4c lw gp, 0x10(sp)               |         gp = *(var_10h_2);
    0x00060e50 lw v0, 0x78(sp)               |         v0 = *(var_78h_3);
    0x00060e54 sw v0, 0x34(sp)               |         *(var_34h_2) = v0;
    0x00060e58 lw v0, 0x7c(sp)               |         v0 = *(var_7ch_3);
    0x00060e5c sw v0, 0x38(sp)               |         *(var_38h_2) = v0;
    0x00060e60 lw v0, 0x80(sp)               |         v0 = *(var_80h_2);
    0x00060e64 sw v0, 0x3c(sp)               |         *(var_3ch) = v0;
    0x00060e68 lw v0, 0x84(sp)               |         v0 = *(var_84h_2);
    0x00060e6c sw v0, 0x40(sp)               |         *(var_40h) = v0;
    0x00060e70 lw v0, 0x88(sp)               |         v0 = *(var_88h);
    0x00060e74 sw v0, 0x24(sp)               |         *(var_24h_2) = v0;
    0x00060e78 lw v0, 0x8c(sp)               |         v0 = *(var_8ch);
    0x00060e7c sw v0, 0x28(sp)               |         *(var_28h_2) = v0;
    0x00060e80 lw v0, 0x90(sp)               |         v0 = *(var_90h);
    0x00060e84 sw v0, 0x2c(sp)               |         *(var_2ch_2) = v0;
    0x00060e88 lw v0, 0x94(sp)               |         v0 = *(var_94h);
    0x00060e8c sw v0, 0x30(sp)               |         *(var_30h_2) = v0;
    0x00060e90 addiu a2, sp, 0x24            |         a2 = sp + 0x24;
    0x00060e94 addiu a1, sp, 0x34            |         a1 = sp + 0x34;
    0x00060e98 addiu s0, sp, 0x70            |         s0 = sp + 0x70;
    0x00060e9c move a0, s0                   |         a0 = s0;
    0x00060ea0 lw t9, -0x7c08(gp)            |         t9 = *(gp);
    0x00060ea4 bal 0x435ec                   |         method ();
    0x00060ea8 nop                           |         
    0x00060eac lw gp, 0x10(sp)               |         gp = *(var_10h_2);
    0x00060eb0 move a0, s0                   |         a0 = s0;
    0x00060eb4 lw t9, -0x7c04(gp)            |         t9 = *(gp);
    0x00060eb8 bal 0x429bc                   |         method ();
    0x00060ebc nop                           |         
    0x00060ec0 lw gp, 0x10(sp)               |         gp = *(var_10h_2);
    0x00060ec4 move v0, s1                   |         v0 = s1;
    0x00060ec8 lw a0, 0xd4(sp)               |         a0 = *(var_d4h);
    0x00060ecc lw v1, -0x736c(gp)            |         v1 = *((gp - 7387));
    0x00060ed0 lw v1, (v1)                   |         v1 = *(v1);
    0x00060ed4 lw ra, 0xfc(sp)               |         ra = *(var_fch);
                                             |         if (a0 != v1) {
    0x00060ed8 bne a0, v1, 0x610c8           |             goto label_33;
                                             |         }
    0x00060edc lw fp, 0xf8(sp)               |         fp = *(var_f8h);
    0x00060ee0 lw s7, 0xf4(sp)               |         s7 = *(var_f4h);
    0x00060ee4 lw s6, 0xf0(sp)               |         s6 = *(var_f0h);
    0x00060ee8 lw s5, 0xec(sp)               |         s5 = *(var_ech);
    0x00060eec lw s4, 0xe8(sp)               |         s4 = *(var_e8h);
    0x00060ef0 lw s3, 0xe4(sp)               |         s3 = *(var_e4h);
    0x00060ef4 lw s2, 0xe0(sp)               |         s2 = *(var_e0h);
    0x00060ef8 lw s1, 0xdc(sp)               |         s1 = *(var_dch);
    0x00060efc lw s0, 0xd8(sp)               |         s0 = *(var_d8h);
    0x00060f00 addiu sp, sp, 0x100           |         
    0x00060f04 jr ra                         |         return v1;
                                             | label_28:
    0x00060f08 addiu s1, zero, 1             |         s1 = 1;
    0x00060f0c beq v0, v1, 0x60e30           |         
                                             |     } while (v0 == v1);
    0x00060f10 lw s0, 0x18(s3)               |     s0 = *((s3 + 6));
    0x00060f14 addiu a2, sp, 0x34            |     a2 = sp + 0x34;
                                             |     if (s0 != 0) {
    0x00060f18 beqz s0, 0x60f80              |         
    0x00060f1c lw a1, -0x7f84(gp)            |         a1 = *(gp);
                                             |         /* str.Failed_to_validate_against_exactly_one_child_schema. */
    0x00060f20 addiu a1, a1, -0x3034         |         a1 += -0x3034;
    0x00060f24 addiu a0, sp, 0xb0            |         a0 = sp + 0xb0;
    0x00060f28 lw t9, -0x753c(gp)            |         t9 = *(gp);
    0x00060f2c jalr t9                       |         t9 ();
    0x00060f30 nop                           |         
    0x00060f34 lw gp, 0x10(sp)               |         gp = *(var_10h_2);
    0x00060f38 addiu a2, sp, 0xb0            |         a2 = sp + 0xb0;
    0x00060f3c move a1, s7                   |         a1 = s7;
    0x00060f40 move a0, s0                   |         a0 = s0;
    0x00060f44 lw t9, -0x7be4(gp)            |         t9 = *(gp);
    0x00060f48 bal 0x44744                   |         fcn_00044744 ();
    0x00060f4c nop                           |         
    0x00060f50 lw gp, 0x10(sp)               |         gp = *(var_10h_2);
    0x00060f54 lw a0, 0xb0(sp)               |         a0 = *(var_b0h_2);
    0x00060f58 addiu v0, sp, 0xb8            |         v0 = sp + 0xb8;
    0x00060f5c lw t9, -0x7488(gp)            |         t9 = *((gp - 7458));
                                             |         if (a0 != v0) {
    0x00060f60 beq a0, v0, 0x60f70           |             
    0x00060f64 jalr t9                       |             t9 ();
    0x00060f68 nop                           |             
    0x00060f6c lw gp, 0x10(sp)               |             gp = *(var_10h_2);
                                             |         }
    0x00060f70 move s1, zero                 |         s1 = 0;
    0x00060f74 b 0x60e30                     |         goto label_6;
                                             | label_29:
    0x00060f78 move s1, zero                 |         s1 = 0;
    0x00060f7c b 0x60e30                     |         goto label_6;
                                             |     }
    0x00060f80 move s1, zero                 |     s1 = 0;
    0x00060f84 b 0x60e30                     |     goto label_6;
                                             |     do {
    0x00061054 lw s0, 0x18(s3)               |         s0 = *((s3 + 6));
    0x00061058 addiu a2, sp, 0x34            |         a2 = sp + 0x34;
    0x0006105c lw a1, -0x7f84(gp)            |         a1 = *(gp);
                                             |         /* str.Failed_to_validate_against_any_child_schemas_allowed_by_oneOf_constraint. */
    0x00061060 addiu a1, a1, -0x2ffc         |         a1 += -0x2ffc;
    0x00061064 addiu a0, sp, 0x98            |         a0 = sp + 0x98;
    0x00061068 lw t9, -0x753c(gp)            |         t9 = *(gp);
    0x0006106c jalr t9                       |         t9 ();
    0x00061070 nop                           |         
    0x00061074 lw gp, 0x10(sp)               |         gp = *(var_10h_2);
    0x00061078 addiu a2, sp, 0x98            |         a2 = sp + 0x98;
    0x0006107c move a1, s7                   |         a1 = s7;
    0x00061080 move a0, s0                   |         a0 = s0;
    0x00061084 lw t9, -0x7be4(gp)            |         t9 = *(gp);
    0x00061088 bal 0x44744                   |         fcn_00044744 ();
    0x0006108c nop                           |         
    0x00061090 lw gp, 0x10(sp)               |         gp = *(var_10h_2);
    0x00061094 lw a0, 0x98(sp)               |         a0 = *(var_98h_2);
    0x00061098 b 0x60de4                     |         goto label_7;
                                             | label_30:
    0x0006109c lw s0, 8(s1)                  |         s0 = *((s1 + 2));
    0x000610a0 lw v0, 0x18(s1)               |         v0 = *((s1 + 6));
    0x000610a4 move a1, s0                   |         a1 = s0;
    0x000610a8 beq v0, s0, 0x61054           |         
                                             |     } while (v0 == s0);
    0x000610ac lw a0, 0x18(sp)               |     a0 = *(var_18h_3);
    0x000610b0 move t9, fp                   |     t9 = fp;
    0x000610b4 jalr t9                       |     t9 ();
    0x000610b8 nop                           |     
    0x000610bc lw gp, 0x10(sp)               |     gp = *(var_10h_2);
    0x000610c0 addiu a1, s0, 0xc             |     a1 = s0 + 0xc;
    0x000610c4 b 0x60d00                     |     goto label_8;
                                             | label_33:
    0x000610c8 lw t9, -0x74e8(gp)            |     t9 = sym.imp.__stack_chk_fail;
    0x000610cc jalr t9                       |     t9 ();
    0x000610d0 nop                           |     
    0x000610d4 lui gp, 7                     |     
    0x000610d8 addiu gp, gp, -0x2e94         |     
    0x000610dc addu gp, gp, t9               |     gp += t9;
    0x000610e0 addiu sp, sp, -0x100          |     
    0x000610e4 sw ra, 0xfc(sp)               |     *(var_fch_2) = ra;
    0x000610e8 sw fp, 0xf8(sp)               |     *(var_f8h_2) = fp;
    0x000610ec sw s7, 0xf4(sp)               |     *(var_f4h_2) = s7;
    0x000610f0 sw s6, 0xf0(sp)               |     *(var_f0h_2) = s6;
    0x000610f4 sw s5, 0xec(sp)               |     *(var_ech_2) = s5;
    0x000610f8 sw s4, 0xe8(sp)               |     *(var_e8h_2) = s4;
    0x000610fc sw s3, 0xe4(sp)               |     *(var_e4h_2) = s3;
    0x00061100 sw s2, 0xe0(sp)               |     *(var_e0h_2) = s2;
    0x00061104 sw s1, 0xdc(sp)               |     *(var_dch_2) = s1;
    0x00061108 sw s0, 0xd8(sp)               |     *(var_d8h_2) = s0;
    0x0006110c sw gp, 0x10(sp)               |     *(var_10h_3) = gp;
    0x00061110 move s3, a0                   |     s3 = a0;
    0x00061114 move s2, a1                   |     s2 = a1;
    0x00061118 lw v0, -0x736c(gp)            |     v0 = *((gp - 7387));
    0x0006111c lw v0, (v0)                   |     v0 = *(v0);
    0x00061120 sw v0, 0xd4(sp)               |     *(var_d4h_2) = v0;
    0x00061124 sw zero, 0x20(sp)             |     *(var_20h_3) = 0;
    0x00061128 sw zero, 0x70(sp)             |     *(var_70h_3) = 0;
    0x0006112c sw zero, 0x74(sp)             |     *(var_74h_4) = 0;
    0x00061130 sw zero, 0x78(sp)             |     *(var_78h_4) = 0;
    0x00061134 sw zero, 0x7c(sp)             |     *(var_7ch_4) = 0;
    0x00061138 sw zero, 0x80(sp)             |     *(var_80h_3) = 0;
    0x0006113c sw zero, 0x84(sp)             |     *(var_84h_3) = 0;
    0x00061140 sw zero, 0x88(sp)             |     *(var_88h_2) = 0;
    0x00061144 sw zero, 0x8c(sp)             |     *(var_8ch_2) = 0;
    0x00061148 sw zero, 0x90(sp)             |     *(var_90h_2) = 0;
    0x0006114c sw zero, 0x94(sp)             |     *(var_94h_2) = 0;
    0x00061150 move a1, zero                 |     a1 = 0;
    0x00061154 addiu a0, sp, 0x70            |     a0 = sp + 0x70;
    0x00061158 lw t9, -0x7d84(gp)            |     t9 = *(gp);
    0x0006115c bal 0x433c8                   |     method ();
    0x00061160 nop                           |     
    0x00061164 lw gp, 0x10(sp)               |     gp = *(var_10h_3);
    0x00061168 lw s1, 0x18(s3)               |     s1 = *((s3 + 6));
    0x0006116c addiu s1, sp, 0x70            |     s1 = sp + 0x70;
                                             |     if (s1 != 0) {
    0x00061170 bnel s1, zero, 0x61174        |         
                                             |     }
    0x00061174 addiu s7, s3, 0xc             |     s7 = s3 + 0xc;
    0x00061178 lbu s0, 0x1c(s3)              |     s0 = *((s3 + 28));
    0x0006117c lw v0, -0x7d7c(gp)            |     v0 = *(gp);
    0x00061180 addiu v0, v0, 8               |     v0 += 8;
    0x00061184 sw v0, 0x50(sp)               |     *(var_50h_2) = v0;
    0x00061188 lw v0, 8(s3)                  |     v0 = *((s3 + 2));
    0x0006118c sw v0, 0x58(sp)               |     *(var_58h_2) = v0;
    0x00061190 lw v0, -0x7d78(gp)            |     v0 = *(gp);
    0x00061194 addiu v0, v0, 8               |     v0 += 8;
    0x00061198 sw v0, 0x54(sp)               |     *(var_54h_3) = v0;
    0x0006119c move a1, s7                   |     a1 = s7;
    0x000611a0 addiu a0, sp, 0x5c            |     a0 = sp + 0x5c;
    0x000611a4 lw t9, -0x7d74(gp)            |     t9 = *(gp);
    0x000611a8 bal 0x44590                   |     method ();
    0x000611ac nop                           |     
    0x000611b0 lw gp, 0x10(sp)               |     gp = *(var_10h_3);
    0x000611b4 sw s1, 0x68(sp)               |     *(var_68h_3) = s1;
    0x000611b8 sb s0, 0x6c(sp)               |     *(var_6ch_4) = s0;
    0x000611bc addiu v0, s3, 4               |     v0 = s3 + 4;
    0x000611c0 sw v0, 0x34(sp)               |     *(var_34h_3) = v0;
    0x000611c4 sw s7, 0x38(sp)               |     *(var_38h_3) = s7;
    0x000611c8 sb zero, 0x3c(sp)             |     *(var_3ch_2) = 0;
    0x000611cc addiu v0, zero, 1             |     v0 = 1;
    0x000611d0 sb v0, 0x3d(sp)               |     *(var_3dh_2) = v0;
    0x000611d4 addiu v0, sp, 0x50            |     v0 = sp + 0x50;
    0x000611d8 sw v0, 0x40(sp)               |     *(var_40h_2) = v0;
    0x000611dc sw s1, 0x44(sp)               |     *(var_44h_2) = s1;
    0x000611e0 addiu v0, sp, 0x20            |     v0 = sp + 0x20;
    0x000611e4 sw v0, 0x48(sp)               |     *(var_48h_2) = v0;
    0x000611e8 sw zero, 0x4c(sp)             |     *(var_4ch_2) = 0;
    0x000611ec lw s0, 0x14(s2)               |     s0 = *((s2 + 5));
    0x000611f0 lw s4, 0x18(s2)               |     s4 = *((s2 + 6));
    0x000611f4 move s2, zero                 |     s2 = 0;
                                             |     if (s0 == s4) {
    0x000611f8 beq s0, s4, 0x6123c           |         goto label_34;
                                             |     }
    0x000611fc addiu s6, sp, 0x34            |     s6 = sp + 0x34;
    0x00061200 lw s5, -0x7a5c(gp)            |     s5 = *(gp);
    0x00061204 b 0x61218                     |     
                                             |     while (1) {
    0x00061208 addiu s0, s0, 4               |         s0 += 4;
                                             |         if (v0 == 0) {
    0x0006120c beqz v0, 0x6123c              |             goto label_34;
                                             |         }
    0x00061210 addiu s2, s2, 1               |         s2++;
                                             |         if (s4 == s0) {
    0x00061214 beq s4, s0, 0x6123c           |             goto label_34;
                                             |         }
    0x00061218 lw a2, (s0)                   |         a2 = *(s0);
    0x0006121c move a1, s2                   |         a1 = s2;
    0x00061220 move a0, s6                   |         a0 = s6;
    0x00061224 move t9, s5                   |         t9 = s5;
    0x00061228 bal 0x6043c                   |         fcn_0006043c ();
                                             |         goto label_0;
    0x0006122c nop                           |         
    0x00061230 lw gp, 0x10(sp)               |         gp = *(var_10h_3);
    0x00061234 b 0x61208                     |         
                                             |     }
    0x00061238 nop                           |     
                                             | label_34:
    0x0006123c lw v0, 0x20(sp)               |     v0 = *(var_20h_3);
    0x00061240 lw s1, 0x20(sp)               |     s1 = *(var_20h_3);
                                             |     if (v0 == 0) {
    0x00061244 bnel v0, zero, 0x613bc        |         goto label_35;
                                             |     }
    0x00061248 lw v0, 0x18(s3)               |     v0 = *((s3 + 6));
    0x0006124c addiu v0, sp, 0xc4            |     v0 = sp + 0xc4;
                                             |     if (v0 == 0) {
    0x00061250 beqz v0, 0x613b8              |         goto label_36;
                                             |     }
    0x00061254 sw zero, 0xb0(sp)             |     *(var_b0h) = 0;
    0x00061258 sw zero, 0xb4(sp)             |     *(var_b4h) = 0;
    0x0006125c sw zero, 0xb8(sp)             |     *(var_b8h) = 0;
    0x00061260 sw v0, 0xbc(sp)               |     *(var_bch) = v0;
    0x00061264 sw zero, 0xc0(sp)             |     *(var_c0h) = 0;
    0x00061268 sb zero, 0xc4(sp)             |     *(var_c4h) = 0;
    0x0006126c addiu v0, sp, 0xb0            |     v0 = sp + 0xb0;
    0x00061270 sw v0, 0x18(sp)               |     *(var_18h_2) = v0;
    0x00061274 lw fp, -0x7d8c(gp)            |     fp = *(gp);
    0x00061278 addiu s5, sp, 0xbc            |     s5 = sp + 0xbc;
    0x0006127c lw v0, -0x7d68(gp)            |     v0 = *(gp);
    0x00061280 sw v0, 0x1c(sp)               |     *(var_1ch_3) = v0;
    0x00061284 lw s6, -0x7be4(gp)            |     s6 = *(gp);
    0x00061288 b 0x61580                     |     goto label_37;
                                             | label_13:
    0x0006128c move a0, s5                   |     a0 = s5;
    0x00061290 lw t9, -0x73c4(gp)            |     t9 = *(gp);
    0x00061294 jalr t9                       |     t9 ();
    0x00061298 nop                           |     
    0x0006129c lw gp, 0x10(sp)               |     gp = *(var_10h_3);
    0x000612a0 lw s2, 8(s1)                  |     s2 = *((s1 + 2));
    0x000612a4 lw v0, 0x10(s1)               |     v0 = *((s1 + 4));
    0x000612a8 addiu v0, v0, -0x24           |     v0 += -0x24;
    0x000612ac addiu v0, s2, 0x14            |     v0 = s2 + 0x14;
                                             |     if (s2 == v0) {
    0x000612b0 beq s2, v0, 0x61354           |         goto label_38;
                                             |     }
    0x000612b4 lw a0, 0xc(s2)                |     a0 = *((s2 + 3));
    0x000612b8 lw t9, -0x7488(gp)            |     t9 = *((gp - 7458));
                                             |     if (a0 != v0) {
    0x000612bc beq a0, v0, 0x612cc           |         
    0x000612c0 jalr t9                       |         t9 ();
    0x000612c4 nop                           |         
    0x000612c8 lw gp, 0x10(sp)               |         gp = *(var_10h_3);
                                             |     }
    0x000612cc lw s0, (s2)                   |     s0 = *(s2);
    0x000612d0 lw s4, 4(s2)                  |     s4 = *((s2 + 1));
    0x000612d4 lw a0, (s0)                   |     a0 = *(s0);
                                             |     if (s0 == s4) {
    0x000612d8 bnel s0, s4, 0x61340          |         goto label_39;
                                             |     }
    0x000612dc lw a0, (s2)                   |     a0 = *(s2);
                                             |     do {
    0x000612e0 lw t9, -0x7488(gp)            |         t9 = *((gp - 7458));
                                             |         if (a0 != 0) {
    0x000612e4 beqz a0, 0x612f4              |             
    0x000612e8 jalr t9                       |             t9 ();
    0x000612ec nop                           |             
    0x000612f0 lw gp, 0x10(sp)               |             gp = *(var_10h_3);
                                             |         }
    0x000612f4 lw v0, 8(s1)                  |         v0 = *((s1 + 2));
    0x000612f8 addiu v0, v0, 0x24            |         v0 += 0x24;
    0x000612fc sw v0, 8(s1)                  |         *((s1 + 2)) = v0;
    0x00061300 move a2, s5                   |         a2 = s5;
                                             | label_11:
    0x00061304 lw a1, 0x18(sp)               |         a1 = *(var_18h_2);
    0x00061308 lw a0, 0x18(s3)               |         a0 = *((s3 + 6));
    0x0006130c move t9, s6                   |         t9 = s6;
    0x00061310 bal 0x44744                   |         fcn_00044744 ();
    0x00061314 nop                           |         
    0x00061318 lw gp, 0x10(sp)               |         gp = *(var_10h_3);
    0x0006131c b 0x61580                     |         goto label_37;
    0x00061320 nop                           |         
                                             | label_9:
    0x00061324 jalr t9                       |         t9 ();
    0x00061328 nop                           |         
    0x0006132c lw gp, 0x10(sp)               |         gp = *(var_10h_3);
    0x00061330 addiu s0, s0, 0x18            |         s0 += 0x18;
                                             | label_10:
    0x00061334 beql s4, s0, 0x612e0          |         
                                             |     } while (s4 == s0);
    0x00061338 lw a0, (s2)                   |     a0 = *(s2);
    0x0006133c lw a0, (s0)                   |     a0 = *(s0);
                                             | label_39:
    0x00061340 addiu v0, s0, 8               |     v0 = s0 + 8;
    0x00061344 lw t9, -0x7488(gp)            |     t9 = *((gp - 7458));
                                             |     if (a0 != v0) {
    0x00061348 bne a0, v0, 0x61324           |         goto label_9;
                                             |     }
    0x0006134c addiu s0, s0, 0x18            |     s0 += 0x18;
    0x00061350 b 0x61334                     |     goto label_10;
                                             | label_38:
    0x00061354 move a0, s1                   |     a0 = s1;
    0x00061358 lw t9, 0x1c(sp)               |     t9 = *(var_1ch_3);
    0x0006135c jalr t9                       |     t9 ();
    0x00061360 nop                           |     
    0x00061364 lw gp, 0x10(sp)               |     gp = *(var_10h_3);
    0x00061368 move a2, s5                   |     a2 = s5;
    0x0006136c b 0x61304                     |     goto label_11;
                                             |     do {
    0x00061370 addiu v0, sp, 0xa0            |         v0 = sp + 0xa0;
    0x00061374 lw t9, -0x7488(gp)            |         t9 = *((gp - 7458));
                                             |         if (a0 != v0) {
    0x00061378 beq a0, v0, 0x61388           |             
    0x0006137c jalr t9                       |             t9 ();
    0x00061380 nop                           |             
    0x00061384 lw gp, 0x10(sp)               |             gp = *(var_10h_3);
                                             |         }
    0x00061388 lw a0, 0xbc(sp)               |         a0 = *(var_bch);
    0x0006138c addiu v0, sp, 0xc4            |         v0 = sp + 0xc4;
    0x00061390 lw t9, -0x7488(gp)            |         t9 = *((gp - 7458));
                                             |         if (a0 != v0) {
    0x00061394 beq a0, v0, 0x613a4           |             
    0x00061398 jalr t9                       |             t9 ();
    0x0006139c nop                           |             
    0x000613a0 lw gp, 0x10(sp)               |             gp = *(var_10h_3);
                                             |         }
    0x000613a4 addiu a0, sp, 0xb0            |         a0 = sp + 0xb0;
    0x000613a8 lw t9, -0x7e7c(gp)            |         t9 = *(gp);
    0x000613ac jalr t9                       |         t9 ();
    0x000613b0 nop                           |         
    0x000613b4 lw gp, 0x10(sp)               |         gp = *(var_10h_3);
                                             | label_36:
    0x000613b8 lw s1, 0x20(sp)               |         s1 = *(var_20h_3);
                                             | label_35:
    0x000613bc sltu s1, zero, s1             |         s1 = (0 < s1) ? 1 : 0;
    0x000613c0 lw v0, -0x7d7c(gp)            |         v0 = *(gp);
    0x000613c4 addiu v0, v0, 8               |         v0 += 8;
    0x000613c8 sw v0, 0x50(sp)               |         *(var_50h_2) = v0;
    0x000613cc addiu a0, sp, 0x5c            |         a0 = sp + 0x5c;
    0x000613d0 lw t9, -0x7e7c(gp)            |         t9 = *(gp);
    0x000613d4 jalr t9                       |         t9 ();
    0x000613d8 nop                           |         
    0x000613dc lw gp, 0x10(sp)               |         gp = *(var_10h_3);
    0x000613e0 lw v0, 0x78(sp)               |         v0 = *(var_78h_4);
    0x000613e4 sw v0, 0x34(sp)               |         *(var_34h_3) = v0;
    0x000613e8 lw v0, 0x7c(sp)               |         v0 = *(var_7ch_4);
    0x000613ec sw v0, 0x38(sp)               |         *(var_38h_3) = v0;
    0x000613f0 lw v0, 0x80(sp)               |         v0 = *(var_80h_3);
    0x000613f4 sw v0, 0x3c(sp)               |         *(var_3ch_2) = v0;
    0x000613f8 lw v0, 0x84(sp)               |         v0 = *(var_84h_3);
    0x000613fc sw v0, 0x40(sp)               |         *(var_40h_2) = v0;
    0x00061400 lw v0, 0x88(sp)               |         v0 = *(var_88h_2);
    0x00061404 sw v0, 0x24(sp)               |         *(var_24h_3) = v0;
    0x00061408 lw v0, 0x8c(sp)               |         v0 = *(var_8ch_2);
    0x0006140c sw v0, 0x28(sp)               |         *(var_28h_3) = v0;
    0x00061410 lw v0, 0x90(sp)               |         v0 = *(var_90h_2);
    0x00061414 sw v0, 0x2c(sp)               |         *(var_2ch_3) = v0;
    0x00061418 lw v0, 0x94(sp)               |         v0 = *(var_94h_2);
    0x0006141c sw v0, 0x30(sp)               |         *(var_30h_3) = v0;
    0x00061420 addiu a2, sp, 0x24            |         a2 = sp + 0x24;
    0x00061424 addiu a1, sp, 0x34            |         a1 = sp + 0x34;
    0x00061428 addiu s0, sp, 0x70            |         s0 = sp + 0x70;
    0x0006142c move a0, s0                   |         a0 = s0;
    0x00061430 lw t9, -0x7c08(gp)            |         t9 = *(gp);
    0x00061434 bal 0x435ec                   |         method ();
    0x00061438 nop                           |         
    0x0006143c lw gp, 0x10(sp)               |         gp = *(var_10h_3);
    0x00061440 move a0, s0                   |         a0 = s0;
    0x00061444 lw t9, -0x7c04(gp)            |         t9 = *(gp);
    0x00061448 bal 0x429bc                   |         method ();
    0x0006144c nop                           |         
    0x00061450 lw gp, 0x10(sp)               |         gp = *(var_10h_3);
    0x00061454 move v0, s1                   |         v0 = s1;
    0x00061458 lw a0, 0xd4(sp)               |         a0 = *(var_d4h_2);
    0x0006145c lw v1, -0x736c(gp)            |         v1 = *((gp - 7387));
    0x00061460 lw v1, (v1)                   |         v1 = *(v1);
    0x00061464 lw ra, 0xfc(sp)               |         ra = *(var_fch_2);
                                             |         if (a0 != v1) {
    0x00061468 bne a0, v1, 0x615ac           |             goto label_40;
                                             |         }
    0x0006146c lw fp, 0xf8(sp)               |         fp = *(var_f8h_2);
    0x00061470 lw s7, 0xf4(sp)               |         s7 = *(var_f4h_2);
    0x00061474 lw s6, 0xf0(sp)               |         s6 = *(var_f0h_2);
    0x00061478 lw s5, 0xec(sp)               |         s5 = *(var_ech_2);
    0x0006147c lw s4, 0xe8(sp)               |         s4 = *(var_e8h_2);
    0x00061480 lw s3, 0xe4(sp)               |         s3 = *(var_e4h_2);
    0x00061484 lw s2, 0xe0(sp)               |         s2 = *(var_e0h_2);
    0x00061488 lw s1, 0xdc(sp)               |         s1 = *(var_dch_2);
    0x0006148c lw s0, 0xd8(sp)               |         s0 = *(var_d8h_2);
    0x00061490 addiu sp, sp, 0x100           |         
    0x00061494 jr ra                         |         return v1;
                                             | label_12:
    0x00061538 lw s0, 0x18(s3)               |         s0 = *((s3 + 6));
    0x0006153c addiu a2, sp, 0x34            |         a2 = sp + 0x34;
    0x00061540 lw a1, -0x7f84(gp)            |         a1 = *(gp);
                                             |         /* str.Failed_to_validate_against_any_child_schemas_allowed_by_anyOf_constraint. */
    0x00061544 addiu a1, a1, -0x2fb0         |         a1 += -0x2fb0;
    0x00061548 addiu a0, sp, 0x98            |         a0 = sp + 0x98;
    0x0006154c lw t9, -0x753c(gp)            |         t9 = *(gp);
    0x00061550 jalr t9                       |         t9 ();
    0x00061554 nop                           |         
    0x00061558 lw gp, 0x10(sp)               |         gp = *(var_10h_3);
    0x0006155c addiu a2, sp, 0x98            |         a2 = sp + 0x98;
    0x00061560 move a1, s7                   |         a1 = s7;
    0x00061564 move a0, s0                   |         a0 = s0;
    0x00061568 lw t9, -0x7be4(gp)            |         t9 = *(gp);
    0x0006156c bal 0x44744                   |         fcn_00044744 ();
    0x00061570 nop                           |         
    0x00061574 lw gp, 0x10(sp)               |         gp = *(var_10h_3);
    0x00061578 lw a0, 0x98(sp)               |         a0 = *(var_98h);
    0x0006157c b 0x61370                     |         
                                             |     } while (1);
                                             | label_37:
    0x00061580 lw s0, 8(s1)                  |     s0 = *((s1 + 2));
    0x00061584 lw v0, 0x18(s1)               |     v0 = *((s1 + 6));
    0x00061588 move a1, s0                   |     a1 = s0;
                                             |     if (v0 == s0) {
    0x0006158c beq v0, s0, 0x61538           |         goto label_12;
                                             |     }
    0x00061590 lw a0, 0x18(sp)               |     a0 = *(var_18h_2);
    0x00061594 move t9, fp                   |     t9 = fp;
    0x00061598 jalr t9                       |     t9 ();
    0x0006159c nop                           |     
    0x000615a0 lw gp, 0x10(sp)               |     gp = *(var_10h_3);
    0x000615a4 addiu a1, s0, 0xc             |     a1 = s0 + 0xc;
    0x000615a8 b 0x6128c                     |     goto label_13;
                                             | label_40:
    0x000615ac lw t9, -0x74e8(gp)            |     t9 = sym.imp.__stack_chk_fail;
    0x000615b0 jalr t9                       |     t9 ();
    0x000615b4 nop                           |     
    0x000615b8 lui gp, 7                     |     
    0x000615bc addiu gp, gp, -0x3378         |     
    0x000615c0 addu gp, gp, t9               |     gp += t9;
    0x000615c4 addiu sp, sp, -0x58           |     
    0x000615c8 sw ra, 0x54(sp)               |     *(var_54h_4) = ra;
    0x000615cc sw s4, 0x50(sp)               |     *(var_50h_3) = s4;
    0x000615d0 sw s3, 0x4c(sp)               |     *(var_4ch_3) = s3;
    0x000615d4 sw s2, 0x48(sp)               |     *(var_48h_3) = s2;
    0x000615d8 sw s1, 0x44(sp)               |     *(var_44h_3) = s1;
    0x000615dc sw s0, 0x40(sp)               |     *(var_40h_3) = s0;
    0x000615e0 sw gp, 0x10(sp)               |     *(var_10h_4) = gp;
    0x000615e4 lw v0, -0x736c(gp)            |     v0 = *((gp - 7387));
    0x000615e8 lw v0, (v0)                   |     v0 = *(v0);
    0x000615ec sw v0, 0x3c(sp)               |     *(var_3ch_3) = v0;
    0x000615f0 addiu v0, zero, 1             |     v0 = 1;
    0x000615f4 sb v0, 0x1f(sp)               |     *(var_1fh) = v0;
    0x000615f8 lw v1, 0x18(a0)               |     v1 = *((a0 + 6));
    0x000615fc addiu a2, a0, 4               |     a2 = a0 + 4;
    0x00061600 sw a2, 0x20(sp)               |     *(var_20h_4) = a2;
    0x00061604 addiu a2, a0, 0xc             |     a2 = a0 + 0xc;
    0x00061608 sw a2, 0x24(sp)               |     *(var_24h_4) = a2;
    0x0006160c sb v0, 0x28(sp)               |     *(var_28h_4) = v0;
    0x00061610 sb zero, 0x29(sp)             |     *(var_29h_2) = 0;
    0x00061614 sw a0, 0x2c(sp)               |     *(var_2ch_4) = a0;
    0x00061618 sw v1, 0x30(sp)               |     *(var_30h_4) = v1;
    0x0006161c sw zero, 0x34(sp)             |     *(var_34h_4) = 0;
    0x00061620 addiu v0, sp, 0x1f            |     v0 = sp + 0x1f;
    0x00061624 sw v0, 0x38(sp)               |     *(var_38h_4) = v0;
    0x00061628 lw s0, 0x14(a1)               |     s0 = *((a1 + 5));
    0x0006162c lw s2, 0x18(a1)               |     s2 = *((a1 + 6));
    0x00061630 lbu v0, 0x1f(sp)              |     v0 = *(var_1fh);
                                             |     if (s0 == s2) {
    0x00061634 beq s0, s2, 0x61678           |         goto label_41;
                                             |     }
    0x00061638 move s1, zero                 |     s1 = 0;
    0x0006163c addiu s4, sp, 0x20            |     s4 = sp + 0x20;
    0x00061640 lw s3, -0x7a5c(gp)            |     s3 = *(gp);
                                             |     do {
    0x00061644 lw a2, (s0)                   |         a2 = *(s0);
    0x00061648 move a1, s1                   |         a1 = s1;
    0x0006164c move a0, s4                   |         a0 = s4;
    0x00061650 move t9, s3                   |         t9 = s3;
    0x00061654 bal 0x6043c                   |         fcn_0006043c ();
                                             |         goto label_0;
    0x00061658 nop                           |         
    0x0006165c lw gp, 0x10(sp)               |         gp = *(var_10h_4);
    0x00061660 lbu v0, 0x1f(sp)              |         v0 = *(var_1fh);
                                             |         if (v0 == 0) {
    0x00061664 beqz v0, 0x61678              |             goto label_41;
                                             |         }
    0x00061668 addiu s0, s0, 4               |         s0 += 4;
    0x0006166c addiu s1, s1, 1               |         s1++;
    0x00061670 bne s2, s0, 0x61644           |         
                                             |     } while (s2 != s0);
    0x00061674 lbu v0, 0x1f(sp)              |     v0 = *(var_1fh);
                                             | label_41:
    0x00061678 lw a0, 0x3c(sp)               |     a0 = *(var_3ch_3);
    0x0006167c lw v1, -0x736c(gp)            |     v1 = *((gp - 7387));
    0x00061680 lw v1, (v1)                   |     v1 = *(v1);
    0x00061684 lw ra, 0x54(sp)               |     ra = *(var_54h_4);
                                             |     if (a0 == v1) {
    0x00061688 bne a0, v1, 0x616a8           |         
    0x0006168c lw s4, 0x50(sp)               |         s4 = *(var_50h_3);
    0x00061690 lw s3, 0x4c(sp)               |         s3 = *(var_4ch_3);
    0x00061694 lw s2, 0x48(sp)               |         s2 = *(var_48h_3);
    0x00061698 lw s1, 0x44(sp)               |         s1 = *(var_44h_3);
    0x0006169c lw s0, 0x40(sp)               |         s0 = *(var_40h_3);
    0x000616a0 addiu sp, sp, 0x58            |         
    0x000616a4 jr ra                         |         return v1;
                                             |     }
    0x000616a8 lw t9, -0x74e8(gp)            |     t9 = sym.imp.__stack_chk_fail;
    0x000616ac jalr t9                       |     t9 ();
    0x000616b0 nop                           |     
                                             | }
    ; assembly                           | /* r2dec pseudo code output */
                                         | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/onscreencontrols @ 0x661d4 */
                                         | #include <stdint.h>
                                         |  
    ; (fcn) fcn.000661d4 ()              | void fcn_000661d4 () {
    0x000661d4 lui gp, 7                 |     
    0x000661d8 addiu gp, gp, -0x7f94     |     
    0x000661dc addu gp, gp, t9           |     gp += t9;
    0x000661e0 addiu sp, sp, -0x30       |     
    0x000661e4 sw ra, 0x2c(sp)           |     *(var_2ch) = ra;
    0x000661e8 sw s3, 0x28(sp)           |     *(var_28h) = s3;
    0x000661ec sw s2, 0x24(sp)           |     *(var_24h) = s2;
    0x000661f0 sw s1, 0x20(sp)           |     *(var_20h) = s1;
    0x000661f4 sw s0, 0x1c(sp)           |     *(var_1ch) = s0;
    0x000661f8 sw gp, 0x10(sp)           |     *(var_10h) = gp;
    0x000661fc move s0, a0               |     s0 = a0;
    0x00066200 lw a0, 0x24(a0)           |     a0 = *((a0 + 9));
    0x00066204 lw t9, -0x7488(gp)        |     t9 = *((gp - 7458));
                                         |     if (a0 != 0) {
    0x00066208 beqz a0, 0x66218          |         
    0x0006620c jalr t9                   |         t9 ();
    0x00066210 nop                       |         
    0x00066214 lw gp, 0x10(sp)           |         gp = *(var_10h);
                                         |     }
    0x00066218 lw s1, 0x18(s0)           |     s1 = *((s0 + 6));
    0x0006621c lw s3, 0x1c(s0)           |     s3 = *((s0 + 7));
    0x00066220 lw a0, 0x18(s1)           |     a0 = *((s1 + 6));
                                         |     if (s1 == s3) {
    0x00066224 bnel s1, s3, 0x662b8      |         goto label_5;
                                         |     }
    0x00066228 lw a0, 0x18(s0)           |     a0 = *((s0 + 6));
                                         |     do {
    0x0006622c lw t9, -0x7488(gp)        |         t9 = *((gp - 7458));
                                         |         if (a0 != 0) {
    0x00066230 beqz a0, 0x66240          |             
    0x00066234 jalr t9                   |             t9 ();
    0x00066238 nop                       |             
    0x0006623c lw gp, 0x10(sp)           |             gp = *(var_10h);
                                         |         }
    0x00066240 lw s1, 0xc(s0)            |         s1 = *((s0 + 3));
    0x00066244 lw s2, 0x10(s0)           |         s2 = *((s0 + 4));
    0x00066248 lw a0, (s1)               |         a0 = *(s1);
                                         |         if (s1 == s2) {
    0x0006624c bnel s1, s2, 0x66308      |             goto label_6;
                                         |         }
    0x00066250 lw a0, 0xc(s0)            |         a0 = *((s0 + 3));
                                         | label_2:
    0x00066254 lw t9, -0x7488(gp)        |         t9 = *((gp - 7458));
                                         |         if (a0 != 0) {
    0x00066258 beqz a0, 0x66268          |             
    0x0006625c jalr t9                   |             t9 ();
    0x00066260 nop                       |             
    0x00066264 lw gp, 0x10(sp)           |             gp = *(var_10h);
                                         |         }
    0x00066268 lw a0, (s0)               |         a0 = *(s0);
    0x0006626c lw t9, -0x7488(gp)        |         t9 = *((gp - 7458));
                                         |         if (a0 != 0) {
    0x00066270 beqz a0, 0x66280          |             
    0x00066274 jalr t9                   |             t9 ();
    0x00066278 nop                       |             
    0x0006627c lw gp, 0x10(sp)           |             gp = *(var_10h);
                                         |         }
    0x00066280 lw ra, 0x2c(sp)           |         ra = *(var_2ch);
    0x00066284 lw s3, 0x28(sp)           |         s3 = *(var_28h);
    0x00066288 lw s2, 0x24(sp)           |         s2 = *(var_24h);
    0x0006628c lw s1, 0x20(sp)           |         s1 = *(var_20h);
    0x00066290 lw s0, 0x1c(sp)           |         s0 = *(var_1ch);
    0x00066294 addiu sp, sp, 0x30        |         
    0x00066298 jr ra                     |         return v0;
                                         | label_0:
    0x0006629c jalr t9                   |         t9 ();
    0x000662a0 nop                       |         
    0x000662a4 lw gp, 0x10(sp)           |         gp = *(var_10h);
    0x000662a8 addiu s1, s1, 0x30        |         s1 += 0x30;
                                         | label_1:
    0x000662ac beql s3, s1, 0x6622c      |         
                                         |     } while (s3 == s1);
    0x000662b0 lw a0, 0x18(s0)           |     a0 = *((s0 + 6));
    0x000662b4 lw a0, 0x18(s1)           |     a0 = *((s1 + 6));
                                         | label_5:
    0x000662b8 addiu v0, s1, 0x20        |     v0 = s1 + 0x20;
    0x000662bc move s2, s1               |     s2 = s1;
                                         |     if (a0 != v0) {
    0x000662c0 beq a0, v0, 0x662d4       |         
    0x000662c4 lw t9, -0x7488(gp)        |         t9 = *((gp - 7458));
    0x000662c8 jalr t9                   |         t9 ();
    0x000662cc nop                       |         
    0x000662d0 lw gp, 0x10(sp)           |         gp = *(var_10h);
                                         |     }
    0x000662d4 lw a0, (s1)               |     a0 = *(s1);
    0x000662d8 addiu s2, s2, 8           |     s2 += 8;
    0x000662dc lw t9, -0x7488(gp)        |     t9 = *((gp - 7458));
                                         |     if (a0 != s2) {
    0x000662e0 bne a0, s2, 0x6629c       |         goto label_0;
                                         |     }
    0x000662e4 addiu s1, s1, 0x30        |     s1 += 0x30;
    0x000662e8 b 0x662ac                 |     goto label_1;
                                         | label_3:
    0x000662ec jalr t9                   |     t9 ();
    0x000662f0 nop                       |     
    0x000662f4 lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x000662f8 addiu s1, s1, 0x18        |     s1 += 0x18;
                                         |     if (s2 == s1) {
                                         | label_4:
    0x000662fc beql s2, s1, 0x66254      |         goto label_2;
                                         |     }
    0x00066300 lw a0, 0xc(s0)            |     a0 = *((s0 + 3));
    0x00066304 lw a0, (s1)               |     a0 = *(s1);
                                         | label_6:
    0x00066308 addiu v0, s1, 8           |     v0 = s1 + 8;
    0x0006630c lw t9, -0x7488(gp)        |     t9 = *((gp - 7458));
                                         |     if (a0 != v0) {
    0x00066310 bne a0, v0, 0x662ec       |         goto label_3;
                                         |     }
    0x00066314 addiu s1, s1, 0x18        |     s1 += 0x18;
    0x00066318 b 0x662fc                 |     goto label_4;
                                         | }
    ; assembly                           | /* r2dec pseudo code output */
                                         | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/onscreencontrols @ 0x663fc */
                                         | #include <stdint.h>
                                         |  
    ; (fcn) fcn.000663fc ()              | void fcn_000663fc () {
    0x000663fc lui gp, 6                 |     
    0x00066400 addiu gp, gp, 0x7e44      |     
    0x00066404 addu gp, gp, t9           |     gp += t9;
    0x00066408 addiu sp, sp, -0x30       |     
    0x0006640c sw ra, 0x2c(sp)           |     *(var_2ch) = ra;
    0x00066410 sw s3, 0x28(sp)           |     *(var_28h) = s3;
    0x00066414 sw s2, 0x24(sp)           |     *(var_24h) = s2;
    0x00066418 sw s1, 0x20(sp)           |     *(var_20h) = s1;
    0x0006641c sw s0, 0x1c(sp)           |     *(var_1ch) = s0;
    0x00066420 sw gp, 0x10(sp)           |     *(var_10h) = gp;
    0x00066424 move s0, a0               |     s0 = a0;
    0x00066428 lw a0, 0x24(a0)           |     a0 = *((a0 + 9));
    0x0006642c lw t9, -0x7488(gp)        |     t9 = *((gp - 7458));
                                         |     if (a0 != 0) {
    0x00066430 beqz a0, 0x66440          |         
    0x00066434 jalr t9                   |         t9 ();
    0x00066438 nop                       |         
    0x0006643c lw gp, 0x10(sp)           |         gp = *(var_10h);
                                         |     }
    0x00066440 lw s1, 0x18(s0)           |     s1 = *((s0 + 6));
    0x00066444 lw s3, 0x1c(s0)           |     s3 = *((s0 + 7));
    0x00066448 lw a0, 0x18(s1)           |     a0 = *((s1 + 6));
                                         |     if (s1 == s3) {
    0x0006644c bnel s1, s3, 0x664e0      |         goto label_5;
                                         |     }
    0x00066450 lw a0, 0x18(s0)           |     a0 = *((s0 + 6));
                                         |     do {
    0x00066454 lw t9, -0x7488(gp)        |         t9 = *((gp - 7458));
                                         |         if (a0 != 0) {
    0x00066458 beqz a0, 0x66468          |             
    0x0006645c jalr t9                   |             t9 ();
    0x00066460 nop                       |             
    0x00066464 lw gp, 0x10(sp)           |             gp = *(var_10h);
                                         |         }
    0x00066468 lw s1, 0xc(s0)            |         s1 = *((s0 + 3));
    0x0006646c lw s2, 0x10(s0)           |         s2 = *((s0 + 4));
    0x00066470 lw a0, (s1)               |         a0 = *(s1);
                                         |         if (s1 == s2) {
    0x00066474 bnel s1, s2, 0x66530      |             goto label_6;
                                         |         }
    0x00066478 lw a0, 0xc(s0)            |         a0 = *((s0 + 3));
                                         | label_2:
    0x0006647c lw t9, -0x7488(gp)        |         t9 = *((gp - 7458));
                                         |         if (a0 != 0) {
    0x00066480 beqz a0, 0x66490          |             
    0x00066484 jalr t9                   |             t9 ();
    0x00066488 nop                       |             
    0x0006648c lw gp, 0x10(sp)           |             gp = *(var_10h);
                                         |         }
    0x00066490 lw a0, (s0)               |         a0 = *(s0);
    0x00066494 lw t9, -0x7488(gp)        |         t9 = *((gp - 7458));
                                         |         if (a0 != 0) {
    0x00066498 beqz a0, 0x664a8          |             
    0x0006649c jalr t9                   |             t9 ();
    0x000664a0 nop                       |             
    0x000664a4 lw gp, 0x10(sp)           |             gp = *(var_10h);
                                         |         }
    0x000664a8 lw ra, 0x2c(sp)           |         ra = *(var_2ch);
    0x000664ac lw s3, 0x28(sp)           |         s3 = *(var_28h);
    0x000664b0 lw s2, 0x24(sp)           |         s2 = *(var_24h);
    0x000664b4 lw s1, 0x20(sp)           |         s1 = *(var_20h);
    0x000664b8 lw s0, 0x1c(sp)           |         s0 = *(var_1ch);
    0x000664bc addiu sp, sp, 0x30        |         
    0x000664c0 jr ra                     |         return v0;
                                         | label_0:
    0x000664c4 jalr t9                   |         t9 ();
    0x000664c8 nop                       |         
    0x000664cc lw gp, 0x10(sp)           |         gp = *(var_10h);
    0x000664d0 addiu s1, s1, 0x30        |         s1 += 0x30;
                                         | label_1:
    0x000664d4 beql s3, s1, 0x66454      |         
                                         |     } while (s3 == s1);
    0x000664d8 lw a0, 0x18(s0)           |     a0 = *((s0 + 6));
    0x000664dc lw a0, 0x18(s1)           |     a0 = *((s1 + 6));
                                         | label_5:
    0x000664e0 addiu v0, s1, 0x20        |     v0 = s1 + 0x20;
    0x000664e4 move s2, s1               |     s2 = s1;
                                         |     if (a0 != v0) {
    0x000664e8 beq a0, v0, 0x664fc       |         
    0x000664ec lw t9, -0x7488(gp)        |         t9 = *((gp - 7458));
    0x000664f0 jalr t9                   |         t9 ();
    0x000664f4 nop                       |         
    0x000664f8 lw gp, 0x10(sp)           |         gp = *(var_10h);
                                         |     }
    0x000664fc lw a0, (s1)               |     a0 = *(s1);
    0x00066500 addiu s2, s2, 8           |     s2 += 8;
    0x00066504 lw t9, -0x7488(gp)        |     t9 = *((gp - 7458));
                                         |     if (a0 != s2) {
    0x00066508 bne a0, s2, 0x664c4       |         goto label_0;
                                         |     }
    0x0006650c addiu s1, s1, 0x30        |     s1 += 0x30;
    0x00066510 b 0x664d4                 |     goto label_1;
                                         | label_3:
    0x00066514 jalr t9                   |     t9 ();
    0x00066518 nop                       |     
    0x0006651c lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x00066520 addiu s1, s1, 0x18        |     s1 += 0x18;
                                         |     if (s2 == s1) {
                                         | label_4:
    0x00066524 beql s2, s1, 0x6647c      |         goto label_2;
                                         |     }
    0x00066528 lw a0, 0xc(s0)            |     a0 = *((s0 + 3));
    0x0006652c lw a0, (s1)               |     a0 = *(s1);
                                         | label_6:
    0x00066530 addiu v0, s1, 8           |     v0 = s1 + 8;
    0x00066534 lw t9, -0x7488(gp)        |     t9 = *((gp - 7458));
                                         |     if (a0 != v0) {
    0x00066538 bne a0, v0, 0x66514       |         goto label_3;
                                         |     }
    0x0006653c addiu s1, s1, 0x18        |     s1 += 0x18;
    0x00066540 b 0x66524                 |     goto label_4;
                                         | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/onscreencontrols @ 0x83810 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.00083810 ()                  | void fcn_00083810 () {
    0x00083810 lui gp, 5                     |     
    0x00083814 addiu gp, gp, -0x55d0         |     
    0x00083818 addu gp, gp, t9               |     gp += t9;
    0x0008381c addiu sp, sp, -0x30           |     
    0x00083820 sw ra, 0x2c(sp)               |     *(var_2ch) = ra;
    0x00083824 sw s3, 0x28(sp)               |     *(var_28h) = s3;
    0x00083828 sw s2, 0x24(sp)               |     *(var_24h) = s2;
    0x0008382c sw s1, 0x20(sp)               |     *(var_20h) = s1;
    0x00083830 sw s0, 0x1c(sp)               |     *(var_1ch) = s0;
    0x00083834 sw gp, 0x10(sp)               |     *(var_10h) = gp;
    0x00083838 move s0, a0                   |     s0 = a0;
    0x0008383c lw a0, 0x88(a0)               |     a0 = *((a0 + 34));
    0x00083840 addiu v0, s0, 0x90            |     v0 = s0 + 0x90;
    0x00083844 lw t9, -0x7488(gp)            |     t9 = *((gp - 7458));
                                             |     if (a0 != v0) {
    0x00083848 beq a0, v0, 0x83858           |         
    0x0008384c jalr t9                       |         t9 ();
    0x00083850 nop                           |         
    0x00083854 lw gp, 0x10(sp)               |         gp = *(var_10h);
                                             |     }
    0x00083858 lw v0, -0x7e28(gp)            |     v0 = *(gp);
    0x0008385c addiu v0, v0, 8               |     v0 += 8;
    0x00083860 sw v0, (s0)                   |     *(s0) = v0;
    0x00083864 lw a0, 0x84(s0)               |     a0 = *((s0 + 33));
    0x00083868 lw v0, (a0)                   |     v0 = *(a0);
    0x0008386c lw t9, (v0)                   |     t9 = *(v0);
    0x00083870 jalr t9                       |     t9 ();
    0x00083874 nop                           |     
    0x00083878 lw gp, 0x10(sp)               |     gp = *(var_10h);
    0x0008387c lw t9, 8(s0)                  |     t9 = *((s0 + 2));
    0x00083880 lw a0, 0x84(s0)               |     a0 = *((s0 + 33));
    0x00083884 jalr t9                       |     t9 ();
    0x00083888 nop                           |     
    0x0008388c lw gp, 0x10(sp)               |     gp = *(var_10h);
    0x00083890 sw zero, 0x84(s0)             |     *((s0 + 33)) = 0;
    0x00083894 lw s1, 0x78(s0)               |     s1 = *((s0 + 30));
    0x00083898 addiu s3, s0, 0x70            |     s3 = s0 + 0x70;
    0x0008389c lw s2, 0x10(s1)               |     s2 = *((s1 + 4));
                                             |     if (s1 == s3) {
    0x000838a0 bnel s1, s3, 0x839b0          |         goto label_3;
                                             |     }
                                             |     do {
    0x000838a4 lw a1, 0x74(s0)               |         a1 = *((s0 + 29));
    0x000838a8 addiu a0, s0, 0x6c            |         a0 = s0 + 0x6c;
    0x000838ac lw t9, -0x7dd8(gp)            |         t9 = *(gp);
    0x000838b0 jalr t9                       |         t9 ();
    0x000838b4 nop                           |         
    0x000838b8 lw gp, 0x10(sp)               |         gp = *(var_10h);
    0x000838bc lw v0, -0x7dd4(gp)            |         v0 = *(gp);
    0x000838c0 addiu v0, v0, 8               |         v0 += 8;
    0x000838c4 sw v0, (s0)                   |         *(s0) = v0;
    0x000838c8 lw s1, 0xc(s0)                |         s1 = *((s0 + 3));
    0x000838cc lw v0, 0x10(s0)               |         v0 = *((s0 + 4));
    0x000838d0 lw s2, (s1)                   |         s2 = *(s1);
                                             |         if (s1 == v0) {
    0x000838d4 bnel s1, v0, 0x839f4          |             goto label_4;
                                             |         }
    0x000838d8 move s1, v0                   |         s1 = v0;
    0x000838dc lw v0, 0xc(s0)                |         v0 = *((s0 + 3));
                                             | label_1:
    0x000838e0 sw v0, 0x10(s0)               |         *((s0 + 4)) = v0;
                                             |         if (v0 != s1) {
    0x000838e4 bnel v0, s1, 0x838e8          |             
                                             |         }
    0x000838e8 lbu v0, 0x50(s0)              |         v0 = *((s0 + 80));
                                             |         if (v0 != 0) {
    0x000838ec beql v0, zero, 0x83914        |             
    0x000838f0 lbu v0, 0x34(s0)              |             v0 = *((s0 + 52));
    0x000838f4 lw a0, 0x54(s0)               |             a0 = *((s0 + 21));
    0x000838f8 addiu v0, s0, 0x5c            |             v0 = s0 + 0x5c;
    0x000838fc lw t9, -0x7488(gp)            |             t9 = *((gp - 7458));
                                             |             if (a0 != v0) {
    0x00083900 beq a0, v0, 0x83910           |                 
    0x00083904 jalr t9                       |                 t9 ();
    0x00083908 nop                           |                 
    0x0008390c lw gp, 0x10(sp)               |                 gp = *(var_10h);
                                             |             }
    0x00083910 lbu v0, 0x34(s0)              |             v0 = *((s0 + 52));
                                             |         }
                                             |         if (v0 != 0) {
    0x00083914 beql v0, zero, 0x8393c        |             
    0x00083918 lbu v0, 0x18(s0)              |             v0 = *((s0 + 24));
    0x0008391c lw a0, 0x38(s0)               |             a0 = *((s0 + 14));
    0x00083920 addiu v0, s0, 0x40            |             v0 = s0 + 0x40;
    0x00083924 lw t9, -0x7488(gp)            |             t9 = *((gp - 7458));
                                             |             if (a0 != v0) {
    0x00083928 beq a0, v0, 0x83938           |                 
    0x0008392c jalr t9                       |                 t9 ();
    0x00083930 nop                           |                 
    0x00083934 lw gp, 0x10(sp)               |                 gp = *(var_10h);
                                             |             }
    0x00083938 lbu v0, 0x18(s0)              |             v0 = *((s0 + 24));
                                             |         }
                                             |         if (v0 != 0) {
    0x0008393c beql v0, zero, 0x83964        |             
    0x00083940 lw a0, 0xc(s0)                |             a0 = *((s0 + 3));
    0x00083944 lw a0, 0x1c(s0)               |             a0 = *((s0 + 7));
    0x00083948 addiu v0, s0, 0x24            |             v0 = s0 + 0x24;
    0x0008394c lw t9, -0x7488(gp)            |             t9 = *((gp - 7458));
                                             |             if (a0 != v0) {
    0x00083950 beq a0, v0, 0x83960           |                 
    0x00083954 jalr t9                       |                 t9 ();
    0x00083958 nop                           |                 
    0x0008395c lw gp, 0x10(sp)               |                 gp = *(var_10h);
                                             |             }
    0x00083960 lw a0, 0xc(s0)                |             a0 = *((s0 + 3));
                                             |         }
    0x00083964 lw t9, -0x7488(gp)            |         t9 = *((gp - 7458));
                                             |         if (a0 != 0) {
    0x00083968 beqz a0, 0x83978              |             
    0x0008396c jalr t9                       |             t9 ();
    0x00083970 nop                           |             
    0x00083974 lw gp, 0x10(sp)               |             gp = *(var_10h);
                                             |         }
    0x00083978 lw ra, 0x2c(sp)               |         ra = *(var_2ch);
    0x0008397c lw s3, 0x28(sp)               |         s3 = *(var_28h);
    0x00083980 lw s2, 0x24(sp)               |         s2 = *(var_24h);
    0x00083984 lw s1, 0x20(sp)               |         s1 = *(var_20h);
    0x00083988 lw s0, 0x1c(sp)               |         s0 = *(var_1ch);
    0x0008398c addiu sp, sp, 0x30            |         
    0x00083990 jr ra                         |         return v0;
                                             | label_0:
    0x00083994 lw t9, -0x7504(gp)            |         t9 = *(gp);
    0x00083998 jalr t9                       |         t9 ();
    0x0008399c nop                           |         
    0x000839a0 lw gp, 0x10(sp)               |         gp = *(var_10h);
    0x000839a4 move s1, v0                   |         s1 = v0;
    0x000839a8 beq v0, s3, 0x838a4           |         
                                             |     } while (v0 == s3);
    0x000839ac lw s2, 0x10(s1)               |     s2 = *((s1 + 4));
                                             | label_3:
    0x000839b0 lw v0, (s2)                   |     v0 = *(s2);
    0x000839b4 lw t9, (v0)                   |     t9 = *(v0);
    0x000839b8 move a0, s2                   |     a0 = s2;
    0x000839bc jalr t9                       |     t9 ();
    0x000839c0 nop                           |     
    0x000839c4 lw gp, 0x10(sp)               |     gp = *(var_10h);
    0x000839c8 lw t9, 8(s0)                  |     t9 = *((s0 + 2));
    0x000839cc move a0, s2                   |     a0 = s2;
    0x000839d0 jalr t9                       |     t9 ();
    0x000839d4 nop                           |     
    0x000839d8 lw gp, 0x10(sp)               |     gp = *(var_10h);
    0x000839dc move a0, s1                   |     a0 = s1;
    0x000839e0 b 0x83994                     |     goto label_0;
                                             | label_2:
    0x000839e4 lw v0, 0x10(s0)               |     v0 = *((s0 + 4));
                                             |     if (v0 == s1) {
    0x000839e8 beql v0, s1, 0x838e0          |         goto label_1;
                                             |     }
    0x000839ec lw v0, 0xc(s0)                |     v0 = *((s0 + 3));
    0x000839f0 lw s2, (s1)                   |     s2 = *(s1);
                                             | label_4:
    0x000839f4 lw v0, (s2)                   |     v0 = *(s2);
    0x000839f8 lw t9, (v0)                   |     t9 = *(v0);
    0x000839fc move a0, s2                   |     a0 = s2;
    0x00083a00 jalr t9                       |     t9 ();
    0x00083a04 nop                           |     
    0x00083a08 lw gp, 0x10(sp)               |     gp = *(var_10h);
    0x00083a0c lw t9, 8(s0)                  |     t9 = *((s0 + 2));
    0x00083a10 move a0, s2                   |     a0 = s2;
    0x00083a14 jalr t9                       |     t9 ();
    0x00083a18 nop                           |     
    0x00083a1c lw gp, 0x10(sp)               |     gp = *(var_10h);
    0x00083a20 addiu s1, s1, 4               |     s1 += 4;
    0x00083a24 b 0x839e4                     |     goto label_2;
                                             | }
    ; assembly                                                   | /* r2dec pseudo code output */
                                                                 | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/onscreencontrols @ 0x2dba0 */
                                                                 | #include <stdint.h>
                                                                 |  
    ; (fcn) method.CgiResponse.setGenericResponseData__ ()       | void method_CgiResponse_setGenericResponseData_ () {
                                                                 |     /* CgiResponse::setGenericResponseData() */
    0x0002dba0 lui gp, 0xa                                       |     
    0x0002dba4 addiu gp, gp, 0x6a0                               |     
    0x0002dba8 addu gp, gp, t9                                   |     gp += t9;
    0x0002dbac addiu sp, sp, -0x80                               |     
    0x0002dbb0 sw ra, 0x7c(sp)                                   |     *(var_7ch) = ra;
    0x0002dbb4 sw s6, 0x78(sp)                                   |     *(var_78h) = s6;
    0x0002dbb8 sw s5, 0x74(sp)                                   |     *(var_74h) = s5;
    0x0002dbbc sw s4, 0x70(sp)                                   |     *(var_70h) = s4;
    0x0002dbc0 sw s3, 0x6c(sp)                                   |     *(var_6ch) = s3;
    0x0002dbc4 sw s2, 0x68(sp)                                   |     *(var_68h) = s2;
    0x0002dbc8 sw s1, 0x64(sp)                                   |     *(var_64h) = s1;
    0x0002dbcc sw s0, 0x60(sp)                                   |     *(var_60h) = s0;
    0x0002dbd0 sw gp, 0x10(sp)                                   |     *(var_10h) = gp;
    0x0002dbd4 lw v0, -0x736c(gp)                                |     v0 = *((gp - 7387));
    0x0002dbd8 lw v0, (v0)                                       |     v0 = *(v0);
    0x0002dbdc sw v0, 0x5c(sp)                                   |     *(var_5ch) = v0;
    0x0002dbe0 sw zero, 0x18(sp)                                 |     *(var_18h) = 0;
    0x0002dbe4 sw zero, 0x1c(sp)                                 |     *(var_1ch) = 0;
    0x0002dbe8 sw zero, 0x20(sp)                                 |     *(var_20h) = 0;
    0x0002dbec sh zero, 0x24(sp)                                 |     *(var_24h) = 0;
    0x0002dbf0 addiu v0, zero, 0x1c05                            |     v0 = 0x1c05;
    0x0002dbf4 sh v0, 0x26(sp)                                   |     *(var_26h) = v0;
    0x0002dbf8 addiu v0, zero, 0xd                               |     v0 = 0xd;
    0x0002dbfc sb v0, 0x25(sp)                                   |     *(var_25h) = v0;
    0x0002dc00 lw s1, 0x18(a0)                                   |     s1 = *((a0 + 6));
    0x0002dc04 lw s3, 0xd0(a0)                                   |     s3 = *((a0 + 52));
                                                                 |     if (s1 == 0) {
    0x0002dc08 beqz s1, 0x2e044                                  |         goto label_29;
                                                                 |     }
    0x0002dc0c move s0, a0                                       |     s0 = a0;
                                                                 |     if (s3 == 0) {
    0x0002dc10 beqz s3, 0x2e06c                                  |         goto label_30;
                                                                 |     }
    0x0002dc14 move a0, s3                                       |     a0 = s3;
    0x0002dc18 lw t9, -0x73cc(gp)                                |     t9 = sym.imp.strlen;
    0x0002dc1c jalr t9                                           |     t9 ();
    0x0002dc20 nop                                               |     
    0x0002dc24 lw gp, 0x10(sp)                                   |     gp = *(var_10h);
    0x0002dc28 move s2, v0                                       |     s2 = v0;
    0x0002dc2c sltiu v0, v0, 0xe                                 |     v0 = (v0 < 0xe) ? 1 : 0;
    0x0002dc30 addiu v0, zero, 0x1c05                            |     v0 = 0x1c05;
                                                                 |     if (v0 == 0) {
    0x0002dc34 beqz v0, 0x2e094                                  |         goto label_31;
                                                                 |     }
    0x0002dc38 sh v0, 0x26(sp)                                   |     *(var_26h) = v0;
    0x0002dc3c addiu v0, zero, 0xd                               |     v0 = 0xd;
    0x0002dc40 subu v0, v0, s2                                   |     __asm ("subu v0, v0, s2");
    0x0002dc44 sb v0, 0x25(sp)                                   |     *(var_25h) = v0;
    0x0002dc48 addiu s1, sp, 0x18                                |     s1 = sp + 0x18;
                                                                 |     do {
    0x0002dc4c move a2, s2                                       |         a2 = s2;
    0x0002dc50 move a1, s3                                       |         a1 = s3;
    0x0002dc54 move a0, s1                                       |         a0 = s1;
    0x0002dc58 lw t9, -0x73b4(gp)                                |         t9 = sym.imp.memcpy;
    0x0002dc5c jalr t9                                           |         t9 ();
    0x0002dc60 nop                                               |         
    0x0002dc64 lw gp, 0x10(sp)                                   |         gp = *(var_10h);
    0x0002dc68 addu s1, s1, s2                                   |         s1 += s2;
    0x0002dc6c sb zero, (s1)                                     |         *(s1) = 0;
    0x0002dc70 lw s3, 0x18(s0)                                   |         s3 = *((s0 + 6));
    0x0002dc74 addiu v0, zero, 3                                 |         v0 = 3;
                                                                 |         if (s3 == 0) {
    0x0002dc78 beqz s3, 0x2e158                                  |             goto label_32;
                                                                 |         }
    0x0002dc7c sw zero, 0x4c(sp)                                 |         *(var_4ch) = 0;
    0x0002dc80 sw zero, 0x50(sp)                                 |         *(var_50h) = 0;
    0x0002dc84 sh zero, 0x54(sp)                                 |         *(var_54h) = 0;
    0x0002dc88 lhu v1, 0x16(s0)                                  |         v1 = *((s0 + 11));
    0x0002dc8c lw a3, -0x7fcc(gp)                                |         a3 = *(gp);
                                                                 |         if (v1 != v0) {
    0x0002dc90 bne v1, v0, 0x2e180                               |             goto label_33;
                                                                 |         }
    0x0002dc94 lw v0, 0xc(s0)                                    |         v0 = *((s0 + 3));
    0x0002dc98 lw v1, 8(s0)                                      |         v1 = *((s0 + 2));
    0x0002dc9c sltu v1, v1, v0                                   |         v1 = (v1 < v0) ? 1 : 0;
    0x0002dca0 lw v1, 0x10(s0)                                   |         v1 = *((s0 + 4));
                                                                 |         if (v1 != 0) {
    0x0002dca4 bnel v1, zero, 0x2dccc                            |             
                                                                 |             if (v0 == 0) {
    0x0002dca8 beql v0, zero, 0x2e9d4                            |                 goto label_34;
                                                                 |             }
    0x0002dcac lw s5, 0x10(s0)                                   |             s5 = *((s0 + 4));
    0x0002dcb0 addiu s2, v0, 1                                   |             s2 = v0 + 1;
    0x0002dcb4 srl s2, s2, 1                                     |             s2 >>= 1;
    0x0002dcb8 addu s2, s2, v0                                   |             s2 += v0;
    0x0002dcbc sltu v1, v0, s2                                   |             v1 = (v0 < s2) ? 1 : 0;
    0x0002dcc0 lw s6, 0x10(s0)                                   |             s6 = *((s0 + 4));
                                                                 |             if (v1 == 0) {
    0x0002dcc4 bnel v1, zero, 0x2e1a4                            |                 goto label_35;
                                                                 |             }
                                                                 | label_1:
    0x0002dcc8 lw v1, 0x10(s0)                                   |             v1 = *((s0 + 4));
                                                                 |         }
    0x0002dccc lw v0, 8(s0)                                      |         v0 = *((s0 + 2));
    0x0002dcd0 sll v0, v0, 5                                     |         v0 <<= 5;
    0x0002dcd4 addu v0, v1, v0                                   |         v0 = v1 + v0;
    0x0002dcd8 addiu a1, zero, 0xa                               |         a1 = 0xa;
    0x0002dcdc sw a1, 0x48(sp)                                   |         *(var_48h) = a1;
    0x0002dce0 lw a0, -0x7fcc(gp)                                |         a0 = *(gp);
                                                                 |         /* str.apiVersion */
    0x0002dce4 addiu a0, a0, 0x49fc                              |         a0 += 0x49fc;
    0x0002dce8 sw a0, 0x50(sp)                                   |         *(var_50h) = a0;
    0x0002dcec addiu a2, zero, 0x405                             |         a2 = 0x405;
    0x0002dcf0 sh a2, 0x56(sp)                                   |         *(var_56h) = a2;
    0x0002dcf4 sw a1, (v0)                                       |         *(v0) = a1;
    0x0002dcf8 lw a1, 0x4c(sp)                                   |         a1 = *(var_4ch);
    0x0002dcfc sw a1, 4(v0)                                      |         *((v0 + 1)) = a1;
    0x0002dd00 sw a0, 8(v0)                                      |         *((v0 + 2)) = a0;
    0x0002dd04 lw a0, 0x54(sp)                                   |         a0 = *(var_54h);
    0x0002dd08 sw a0, 0xc(v0)                                    |         *((v0 + 3)) = a0;
    0x0002dd0c lw v0, 8(s0)                                      |         v0 = *((s0 + 2));
    0x0002dd10 sll v0, v0, 5                                     |         v0 <<= 5;
    0x0002dd14 addu v0, v1, v0                                   |         v0 = v1 + v0;
    0x0002dd18 lw v1, 0x18(sp)                                   |         v1 = *(var_18h);
    0x0002dd1c sw v1, 0x10(v0)                                   |         *((v0 + 4)) = v1;
    0x0002dd20 lw v1, 0x1c(sp)                                   |         v1 = *(var_1ch);
    0x0002dd24 sw v1, 0x14(v0)                                   |         *((v0 + 5)) = v1;
    0x0002dd28 lw v1, 0x20(sp)                                   |         v1 = *(var_20h);
    0x0002dd2c sw v1, 0x18(v0)                                   |         *((v0 + 6)) = v1;
    0x0002dd30 lw v1, 0x24(sp)                                   |         v1 = *(var_24h);
    0x0002dd34 sw v1, 0x1c(v0)                                   |         *((v0 + 7)) = v1;
    0x0002dd38 sh zero, 0x26(sp)                                 |         *(var_26h) = 0;
    0x0002dd3c lw v0, 8(s0)                                      |         v0 = *((s0 + 2));
    0x0002dd40 addiu v0, v0, 1                                   |         v0++;
    0x0002dd44 sw v0, 8(s0)                                      |         *((s0 + 2)) = v0;
    0x0002dd48 sw zero, 0x28(sp)                                 |         *(var_28h) = 0;
    0x0002dd4c sw zero, 0x2c(sp)                                 |         *(var_2ch) = 0;
    0x0002dd50 sw zero, 0x30(sp)                                 |         *(var_30h) = 0;
    0x0002dd54 sh zero, 0x34(sp)                                 |         *(var_34h) = 0;
    0x0002dd58 addiu v0, zero, 0x1c05                            |         v0 = 0x1c05;
    0x0002dd5c sh v0, 0x36(sp)                                   |         *(var_36h) = v0;
    0x0002dd60 addiu v0, zero, 0xd                               |         v0 = 0xd;
    0x0002dd64 sb v0, 0x35(sp)                                   |         *(var_35h) = v0;
    0x0002dd68 lw s1, 0x18(s0)                                   |         s1 = *((s0 + 6));
    0x0002dd6c lw s3, 0xe8(s0)                                   |         s3 = *((s0 + 58));
                                                                 |         if (s1 == 0) {
    0x0002dd70 beqz s1, 0x2e2c4                                  |             goto label_36;
                                                                 |         }
    0x0002dd74 move a0, s3                                       |         a0 = s3;
                                                                 |         if (s3 == 0) {
    0x0002dd78 beqz s3, 0x2e2ec                                  |             goto label_37;
                                                                 |         }
    0x0002dd7c lw t9, -0x73cc(gp)                                |         t9 = sym.imp.strlen;
    0x0002dd80 jalr t9                                           |         t9 ();
    0x0002dd84 nop                                               |         
    0x0002dd88 lw gp, 0x10(sp)                                   |         gp = *(var_10h);
    0x0002dd8c move s2, v0                                       |         s2 = v0;
    0x0002dd90 sltiu v0, v0, 0xe                                 |         v0 = (v0 < 0xe) ? 1 : 0;
    0x0002dd94 addiu v0, zero, 0x1c05                            |         v0 = 0x1c05;
                                                                 |         if (v0 == 0) {
    0x0002dd98 beqz v0, 0x2e314                                  |             goto label_38;
                                                                 |         }
    0x0002dd9c sh v0, 0x36(sp)                                   |         *(var_36h) = v0;
    0x0002dda0 addiu v0, zero, 0xd                               |         v0 = 0xd;
    0x0002dda4 subu v0, v0, s2                                   |         __asm ("subu v0, v0, s2");
    0x0002dda8 sb v0, 0x35(sp)                                   |         *(var_35h) = v0;
    0x0002ddac addiu s1, sp, 0x28                                |         s1 = sp + 0x28;
                                                                 | label_2:
    0x0002ddb0 move a2, s2                                       |         a2 = s2;
    0x0002ddb4 move a1, s3                                       |         a1 = s3;
    0x0002ddb8 move a0, s1                                       |         a0 = s1;
    0x0002ddbc lw t9, -0x73b4(gp)                                |         t9 = sym.imp.memcpy;
    0x0002ddc0 jalr t9                                           |         t9 ();
    0x0002ddc4 nop                                               |         
    0x0002ddc8 lw gp, 0x10(sp)                                   |         gp = *(var_10h);
    0x0002ddcc addu s1, s1, s2                                   |         s1 += s2;
    0x0002ddd0 sb zero, (s1)                                     |         *(s1) = 0;
    0x0002ddd4 lw s3, 0x18(s0)                                   |         s3 = *((s0 + 6));
    0x0002ddd8 addiu v0, zero, 3                                 |         v0 = 3;
                                                                 |         if (s3 == 0) {
    0x0002dddc beqz s3, 0x2e3d8                                  |             goto label_39;
                                                                 |         }
    0x0002dde0 sw zero, 0x4c(sp)                                 |         *(var_4ch) = 0;
    0x0002dde4 sw zero, 0x50(sp)                                 |         *(var_50h) = 0;
    0x0002dde8 sh zero, 0x54(sp)                                 |         *(var_54h) = 0;
    0x0002ddec lhu v1, 0x16(s0)                                  |         v1 = *((s0 + 11));
    0x0002ddf0 lw a3, -0x7fcc(gp)                                |         a3 = *(gp);
                                                                 |         if (v1 != v0) {
    0x0002ddf4 bne v1, v0, 0x2e400                               |             goto label_40;
                                                                 |         }
    0x0002ddf8 lw v0, 0xc(s0)                                    |         v0 = *((s0 + 3));
    0x0002ddfc lw v1, 8(s0)                                      |         v1 = *((s0 + 2));
    0x0002de00 sltu v1, v1, v0                                   |         v1 = (v1 < v0) ? 1 : 0;
    0x0002de04 lw v1, 0x10(s0)                                   |         v1 = *((s0 + 4));
                                                                 |         if (v1 != 0) {
    0x0002de08 bnel v1, zero, 0x2de30                            |             
                                                                 |             if (v0 == 0) {
    0x0002de0c beql v0, zero, 0x2e8ec                            |                 goto label_41;
                                                                 |             }
    0x0002de10 lw s5, 0x10(s0)                                   |             s5 = *((s0 + 4));
    0x0002de14 addiu s2, v0, 1                                   |             s2 = v0 + 1;
    0x0002de18 srl s2, s2, 1                                     |             s2 >>= 1;
    0x0002de1c addu s2, s2, v0                                   |             s2 += v0;
    0x0002de20 sltu v1, v0, s2                                   |             v1 = (v0 < s2) ? 1 : 0;
    0x0002de24 lw s6, 0x10(s0)                                   |             s6 = *((s0 + 4));
                                                                 |             if (v1 == 0) {
    0x0002de28 bnel v1, zero, 0x2e424                            |                 goto label_42;
                                                                 |             }
                                                                 | label_3:
    0x0002de2c lw v1, 0x10(s0)                                   |             v1 = *((s0 + 4));
                                                                 |         }
    0x0002de30 lw v0, 8(s0)                                      |         v0 = *((s0 + 2));
    0x0002de34 sll v0, v0, 5                                     |         v0 <<= 5;
    0x0002de38 addu v0, v1, v0                                   |         v0 = v1 + v0;
    0x0002de3c addiu a1, zero, 7                                 |         a1 = 7;
    0x0002de40 sw a1, 0x48(sp)                                   |         *(var_48h) = a1;
    0x0002de44 lw a0, -0x7fcc(gp)                                |         a0 = *(gp);
                                                                 |         /* str.context */
    0x0002de48 addiu a0, a0, 0x4a08                              |         a0 += 0x4a08;
    0x0002de4c sw a0, 0x50(sp)                                   |         *(var_50h) = a0;
    0x0002de50 addiu a2, zero, 0x405                             |         a2 = 0x405;
    0x0002de54 sh a2, 0x56(sp)                                   |         *(var_56h) = a2;
    0x0002de58 sw a1, (v0)                                       |         *(v0) = a1;
    0x0002de5c lw a1, 0x4c(sp)                                   |         a1 = *(var_4ch);
    0x0002de60 sw a1, 4(v0)                                      |         *((v0 + 1)) = a1;
    0x0002de64 sw a0, 8(v0)                                      |         *((v0 + 2)) = a0;
    0x0002de68 lw a0, 0x54(sp)                                   |         a0 = *(var_54h);
    0x0002de6c sw a0, 0xc(v0)                                    |         *((v0 + 3)) = a0;
    0x0002de70 lw v0, 8(s0)                                      |         v0 = *((s0 + 2));
    0x0002de74 sll v0, v0, 5                                     |         v0 <<= 5;
    0x0002de78 addu v0, v1, v0                                   |         v0 = v1 + v0;
    0x0002de7c lw v1, 0x28(sp)                                   |         v1 = *(var_28h);
    0x0002de80 sw v1, 0x10(v0)                                   |         *((v0 + 4)) = v1;
    0x0002de84 lw v1, 0x2c(sp)                                   |         v1 = *(var_2ch);
    0x0002de88 sw v1, 0x14(v0)                                   |         *((v0 + 5)) = v1;
    0x0002de8c lw v1, 0x30(sp)                                   |         v1 = *(var_30h);
    0x0002de90 sw v1, 0x18(v0)                                   |         *((v0 + 6)) = v1;
    0x0002de94 lw v1, 0x34(sp)                                   |         v1 = *(var_34h);
    0x0002de98 sw v1, 0x1c(v0)                                   |         *((v0 + 7)) = v1;
    0x0002de9c sh zero, 0x36(sp)                                 |         *(var_36h) = 0;
    0x0002dea0 lw v0, 8(s0)                                      |         v0 = *((s0 + 2));
    0x0002dea4 addiu v0, v0, 1                                   |         v0++;
    0x0002dea8 sw v0, 8(s0)                                      |         *((s0 + 2)) = v0;
    0x0002deac sw zero, 0x38(sp)                                 |         *(var_38h) = 0;
    0x0002deb0 sw zero, 0x3c(sp)                                 |         *(var_3ch) = 0;
    0x0002deb4 sw zero, 0x40(sp)                                 |         *(var_40h) = 0;
    0x0002deb8 sh zero, 0x44(sp)                                 |         *(var_44h) = 0;
    0x0002debc addiu v0, zero, 0x1c05                            |         v0 = 0x1c05;
    0x0002dec0 sh v0, 0x46(sp)                                   |         *(var_46h) = v0;
    0x0002dec4 addiu v0, zero, 0xd                               |         v0 = 0xd;
    0x0002dec8 sb v0, 0x45(sp)                                   |         *(var_45h) = v0;
    0x0002decc lw s1, 0x18(s0)                                   |         s1 = *((s0 + 6));
    0x0002ded0 lw s3, 0x100(s0)                                  |         s3 = *(s0);
                                                                 |         if (s1 == 0) {
    0x0002ded4 beqz s1, 0x2e544                                  |             goto label_43;
                                                                 |         }
    0x0002ded8 move a0, s3                                       |         a0 = s3;
                                                                 |         if (s3 == 0) {
    0x0002dedc beqz s3, 0x2e56c                                  |             goto label_44;
                                                                 |         }
    0x0002dee0 lw t9, -0x73cc(gp)                                |         t9 = sym.imp.strlen;
    0x0002dee4 jalr t9                                           |         t9 ();
    0x0002dee8 nop                                               |         
    0x0002deec lw gp, 0x10(sp)                                   |         gp = *(var_10h);
    0x0002def0 move s2, v0                                       |         s2 = v0;
    0x0002def4 sltiu v0, v0, 0xe                                 |         v0 = (v0 < 0xe) ? 1 : 0;
    0x0002def8 addiu v0, zero, 0x1c05                            |         v0 = 0x1c05;
                                                                 |         if (v0 == 0) {
    0x0002defc beqz v0, 0x2e594                                  |             goto label_45;
                                                                 |         }
    0x0002df00 sh v0, 0x46(sp)                                   |         *(var_46h) = v0;
    0x0002df04 addiu v0, zero, 0xd                               |         v0 = 0xd;
    0x0002df08 subu v0, v0, s2                                   |         __asm ("subu v0, v0, s2");
    0x0002df0c sb v0, 0x45(sp)                                   |         *(var_45h) = v0;
    0x0002df10 addiu s1, sp, 0x38                                |         s1 = sp + 0x38;
                                                                 | label_4:
    0x0002df14 move a2, s2                                       |         a2 = s2;
    0x0002df18 move a1, s3                                       |         a1 = s3;
    0x0002df1c move a0, s1                                       |         a0 = s1;
    0x0002df20 lw t9, -0x73b4(gp)                                |         t9 = sym.imp.memcpy;
    0x0002df24 jalr t9                                           |         t9 ();
    0x0002df28 nop                                               |         
    0x0002df2c lw gp, 0x10(sp)                                   |         gp = *(var_10h);
    0x0002df30 addu s1, s1, s2                                   |         s1 += s2;
    0x0002df34 sb zero, (s1)                                     |         *(s1) = 0;
    0x0002df38 lw s3, 0x18(s0)                                   |         s3 = *((s0 + 6));
    0x0002df3c addiu v0, zero, 3                                 |         v0 = 3;
                                                                 |         if (s3 == 0) {
    0x0002df40 beqz s3, 0x2e658                                  |             goto label_46;
                                                                 |         }
    0x0002df44 sw zero, 0x4c(sp)                                 |         *(var_4ch) = 0;
    0x0002df48 sw zero, 0x50(sp)                                 |         *(var_50h) = 0;
    0x0002df4c sh zero, 0x54(sp)                                 |         *(var_54h) = 0;
    0x0002df50 lhu v1, 0x16(s0)                                  |         v1 = *((s0 + 11));
    0x0002df54 lw a3, -0x7fcc(gp)                                |         a3 = *(gp);
                                                                 |         if (v1 != v0) {
    0x0002df58 bne v1, v0, 0x2e680                               |             goto label_47;
                                                                 |         }
    0x0002df5c lw v0, 0xc(s0)                                    |         v0 = *((s0 + 3));
    0x0002df60 lw v1, 8(s0)                                      |         v1 = *((s0 + 2));
    0x0002df64 sltu v1, v1, v0                                   |         v1 = (v1 < v0) ? 1 : 0;
    0x0002df68 lw v1, 0x10(s0)                                   |         v1 = *((s0 + 4));
                                                                 |         if (v1 != 0) {
    0x0002df6c bnel v1, zero, 0x2df94                            |             
                                                                 |             if (v0 == 0) {
    0x0002df70 beql v0, zero, 0x2e808                            |                 goto label_48;
                                                                 |             }
    0x0002df74 lw s5, 0x10(s0)                                   |             s5 = *((s0 + 4));
    0x0002df78 addiu s2, v0, 1                                   |             s2 = v0 + 1;
    0x0002df7c srl s2, s2, 1                                     |             s2 >>= 1;
    0x0002df80 addu s2, s2, v0                                   |             s2 += v0;
    0x0002df84 sltu v1, v0, s2                                   |             v1 = (v0 < s2) ? 1 : 0;
    0x0002df88 lw s5, 0x10(s0)                                   |             s5 = *((s0 + 4));
                                                                 |             if (v1 == 0) {
    0x0002df8c bnel v1, zero, 0x2e6a4                            |                 goto label_49;
                                                                 |             }
                                                                 | label_5:
    0x0002df90 lw v1, 0x10(s0)                                   |             v1 = *((s0 + 4));
                                                                 |         }
    0x0002df94 lw v0, 8(s0)                                      |         v0 = *((s0 + 2));
    0x0002df98 sll v0, v0, 5                                     |         v0 <<= 5;
    0x0002df9c addu v0, v1, v0                                   |         v0 = v1 + v0;
    0x0002dfa0 addiu a1, zero, 6                                 |         a1 = 6;
    0x0002dfa4 sw a1, 0x48(sp)                                   |         *(var_48h) = a1;
    0x0002dfa8 lw a0, -0x7fcc(gp)                                |         a0 = *(gp);
                                                                 |         /* str.method */
    0x0002dfac addiu a0, a0, 0x4a10                              |         a0 += 0x4a10;
    0x0002dfb0 sw a0, 0x50(sp)                                   |         *(var_50h) = a0;
    0x0002dfb4 addiu a2, zero, 0x405                             |         a2 = 0x405;
    0x0002dfb8 sh a2, 0x56(sp)                                   |         *(var_56h) = a2;
    0x0002dfbc sw a1, (v0)                                       |         *(v0) = a1;
    0x0002dfc0 lw a1, 0x4c(sp)                                   |         a1 = *(var_4ch);
    0x0002dfc4 sw a1, 4(v0)                                      |         *((v0 + 1)) = a1;
    0x0002dfc8 sw a0, 8(v0)                                      |         *((v0 + 2)) = a0;
    0x0002dfcc lw a0, 0x54(sp)                                   |         a0 = *(var_54h);
    0x0002dfd0 sw a0, 0xc(v0)                                    |         *((v0 + 3)) = a0;
    0x0002dfd4 lw v0, 8(s0)                                      |         v0 = *((s0 + 2));
    0x0002dfd8 sll v0, v0, 5                                     |         v0 <<= 5;
    0x0002dfdc addu v0, v1, v0                                   |         v0 = v1 + v0;
    0x0002dfe0 lw v1, 0x38(sp)                                   |         v1 = *(var_38h);
    0x0002dfe4 sw v1, 0x10(v0)                                   |         *((v0 + 4)) = v1;
    0x0002dfe8 lw v1, 0x3c(sp)                                   |         v1 = *(var_3ch);
    0x0002dfec sw v1, 0x14(v0)                                   |         *((v0 + 5)) = v1;
    0x0002dff0 lw v1, 0x40(sp)                                   |         v1 = *(var_40h);
    0x0002dff4 sw v1, 0x18(v0)                                   |         *((v0 + 6)) = v1;
    0x0002dff8 lw v1, 0x44(sp)                                   |         v1 = *(var_44h);
    0x0002dffc sw v1, 0x1c(v0)                                   |         *((v0 + 7)) = v1;
    0x0002e000 lw v0, 8(s0)                                      |         v0 = *((s0 + 2));
    0x0002e004 addiu v0, v0, 1                                   |         v0++;
    0x0002e008 sw v0, 8(s0)                                      |         *((s0 + 2)) = v0;
    0x0002e00c lw v1, 0x5c(sp)                                   |         v1 = *(var_5ch);
    0x0002e010 lw v0, -0x736c(gp)                                |         v0 = *((gp - 7387));
    0x0002e014 lw v0, (v0)                                       |         v0 = *(v0);
    0x0002e018 lw ra, 0x7c(sp)                                   |         ra = *(var_7ch);
                                                                 |         if (v1 != v0) {
    0x0002e01c bne v1, v0, 0x2eabc                               |             goto label_50;
                                                                 |         }
    0x0002e020 lw s6, 0x78(sp)                                   |         s6 = *(var_78h);
    0x0002e024 lw s5, 0x74(sp)                                   |         s5 = *(var_74h);
    0x0002e028 lw s4, 0x70(sp)                                   |         s4 = *(var_70h);
    0x0002e02c lw s3, 0x6c(sp)                                   |         s3 = *(var_6ch);
    0x0002e030 lw s2, 0x68(sp)                                   |         s2 = *(var_68h);
    0x0002e034 lw s1, 0x64(sp)                                   |         s1 = *(var_64h);
    0x0002e038 lw s0, 0x60(sp)                                   |         s0 = *(var_60h);
    0x0002e03c addiu sp, sp, 0x80                                |         
    0x0002e040 jr ra                                             |         return v1;
                                                                 | label_29:
    0x0002e044 lw a3, -0x7fcc(gp)                                |         a3 = *(gp);
                                                                 |         /* esilref: 'Allocator& rapidjson::GenericDocument<Encoding, Allocator, StackAllocator>::GetAllocator() [with Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; StackAllocator = rapidjson::CrtAllocator]' */
    0x0002e048 addiu a3, a3, 0x78a4                              |         a3 += 0x78a4;
    0x0002e04c addiu a2, zero, 0x969                             |         a2 = 0x969;
    0x0002e050 lw a1, -0x7fcc(gp)                                |         a1 = *(gp);
                                                                 |         /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0002e054 addiu a1, a1, 0x2aa8                              |         a1 += 0x2aa8;
    0x0002e058 lw a0, -0x7fcc(gp)                                |         a0 = *(gp);
                                                                 |         /* str.allocator_ */
    0x0002e05c addiu a0, a0, 0x2d78                              |         a0 += 0x2d78;
    0x0002e060 lw t9, -0x7644(gp)                                |         t9 = sym.imp.__assert_fail;
    0x0002e064 jalr t9                                           |         t9 ();
    0x0002e068 nop                                               |         
                                                                 | label_30:
    0x0002e06c lw a3, -0x7fcc(gp)                                |         a3 = *(gp);
                                                                 |         /* esilref: 'rapidjson::SizeType rapidjson::GenericStringRef<CharType>::NotNullStrLen(const CharType*) [with CharType = char; rapidjson::SizeType = unsigned int]' */
    0x0002e070 addiu a3, a3, 0x797c                              |         a3 += 0x797c;
    0x0002e074 addiu a2, zero, 0x14b                             |         a2 = 0x14b;
    0x0002e078 lw a1, -0x7fcc(gp)                                |         a1 = *(gp);
                                                                 |         /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0002e07c addiu a1, a1, 0x2aa8                              |         a1 += 0x2aa8;
    0x0002e080 lw a0, -0x7fcc(gp)                                |         a0 = *(gp);
                                                                 |         /* str.str___0 */
    0x0002e084 addiu a0, a0, 0x2b2c                              |         a0 += 0x2b2c;
    0x0002e088 lw t9, -0x7644(gp)                                |         t9 = sym.imp.__assert_fail;
    0x0002e08c jalr t9                                           |         t9 ();
    0x0002e090 nop                                               |         
                                                                 | label_31:
    0x0002e094 addiu v0, zero, 0xc05                             |         v0 = 0xc05;
    0x0002e098 sh v0, 0x26(sp)                                   |         *(var_26h) = v0;
    0x0002e09c sw s2, 0x18(sp)                                   |         *(var_18h) = s2;
    0x0002e0a0 addiu s4, s2, 8                                   |         s4 = s2 + 8;
    0x0002e0a4 addiu v0, zero, -8                                |         v0 = -8;
    0x0002e0a8 lw v1, (s1)                                       |         v1 = *(s1);
    0x0002e0ac and s4, s4, v0                                    |         s4 &= v0;
                                                                 |         if (v1 != 0) {
    0x0002e0b0 beqz v1, 0x2e0cc                                  |             
    0x0002e0b4 lw v0, 4(v1)                                      |             v0 = *((v1 + 1));
    0x0002e0b8 addu v0, s4, v0                                   |             v0 = s4 + v0;
    0x0002e0bc lw v1, (v1)                                       |             v1 = *(v1);
    0x0002e0c0 sltu v0, v1, v0                                   |             v0 = (v1 < v0) ? 1 : 0;
                                                                 |             if (v0 == 0) {
    0x0002e0c4 beql v0, zero, 0x2e120                            |                 goto label_51;
                                                                 |             }
    0x0002e0c8 lw v1, (s1)                                       |             v1 = *(s1);
                                                                 |         }
    0x0002e0cc lw v0, 4(s1)                                      |         v0 = *((s1 + 1));
    0x0002e0d0 sltu s5, v0, s4                                   |         s5 = (v0 < s4) ? 1 : 0;
                                                                 |         if (s5 == 0) {
    0x0002e0d4 movn v0, s4, s5                                   |             v0 = s4;
                                                                 |         }
    0x0002e0d8 move s5, v0                                       |         s5 = v0;
    0x0002e0dc lw v0, 0xc(s1)                                    |         v0 = *((s1 + 3));
    0x0002e0e0 addiu a0, zero, 1                                 |         a0 = 1;
                                                                 |         if (v0 == 0) {
    0x0002e0e4 beqz v0, 0x2e13c                                  |             goto label_52;
                                                                 |         }
                                                                 | label_0:
    0x0002e0e8 addiu a0, s5, 0x10                                |         a0 = s5 + 0x10;
    0x0002e0ec lw t9, -0x73c8(gp)                                |         t9 = sym.imp.malloc;
                                                                 |         if (a0 == 0) {
    0x0002e0f0 beqz a0, 0x2e800                                  |             goto label_53;
                                                                 |         }
    0x0002e0f4 jalr t9                                           |         t9 ();
    0x0002e0f8 nop                                               |         
    0x0002e0fc lw gp, 0x10(sp)                                   |         gp = *(var_10h);
                                                                 |         if (v0 != 0) {
    0x0002e100 beql v0, zero, 0x2e134                            |             
    0x0002e104 move s1, zero                                     |             s1 = 0;
    0x0002e108 sw s5, (v0)                                       |             *(v0) = s5;
    0x0002e10c sw zero, 4(v0)                                    |             *((v0 + 1)) = 0;
    0x0002e110 lw v1, (s1)                                       |             v1 = *(s1);
    0x0002e114 sw v1, 8(v0)                                      |             *((v0 + 2)) = v1;
    0x0002e118 sw v0, (s1)                                       |             *(s1) = v0;
    0x0002e11c lw v1, (s1)                                       |             v1 = *(s1);
                                                                 | label_51:
    0x0002e120 lw a0, 4(v1)                                      |             a0 = *((v1 + 1));
    0x0002e124 addiu v0, a0, 0x10                                |             v0 = a0 + 0x10;
    0x0002e128 addu s1, v1, v0                                   |             s1 = v1 + v0;
    0x0002e12c addu v0, s4, a0                                   |             v0 = s4 + a0;
    0x0002e130 sw v0, 4(v1)                                      |             *((v1 + 1)) = v0;
                                                                 |         }
                                                                 | label_11:
    0x0002e134 sw s1, 0x20(sp)                                   |         *(var_20h) = s1;
    0x0002e138 b 0x2dc4c                                         |         
                                                                 |     } while (1);
                                                                 | label_52:
    0x0002e13c lw t9, -0x7310(gp)                                |     t9 = *((gp - 7364));
    0x0002e140 jalr t9                                           |     t9 ();
    0x0002e144 nop                                               |     
    0x0002e148 lw gp, 0x10(sp)                                   |     gp = *(var_10h);
    0x0002e14c sw v0, 0xc(s1)                                    |     *((s1 + 3)) = v0;
    0x0002e150 sw v0, 0x10(s1)                                   |     *((s1 + 4)) = v0;
    0x0002e154 b 0x2e0e8                                         |     goto label_0;
                                                                 | label_32:
    0x0002e158 lw a3, -0x7fcc(gp)                                |     a3 = *(gp);
                                                                 |     /* esilref: 'Allocator& rapidjson::GenericDocument<Encoding, Allocator, StackAllocator>::GetAllocator() [with Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; StackAllocator = rapidjson::CrtAllocator]' */
    0x0002e15c addiu a3, a3, 0x78a4                              |     a3 += 0x78a4;
    0x0002e160 addiu a2, zero, 0x969                             |     a2 = 0x969;
    0x0002e164 lw a1, -0x7fcc(gp)                                |     a1 = *(gp);
                                                                 |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0002e168 addiu a1, a1, 0x2aa8                              |     a1 += 0x2aa8;
    0x0002e16c lw a0, -0x7fcc(gp)                                |     a0 = *(gp);
                                                                 |     /* str.allocator_ */
    0x0002e170 addiu a0, a0, 0x2d78                              |     a0 += 0x2d78;
    0x0002e174 lw t9, -0x7644(gp)                                |     t9 = sym.imp.__assert_fail;
    0x0002e178 jalr t9                                           |     t9 ();
    0x0002e17c nop                                               |     
                                                                 | label_33:
    0x0002e180 addiu a3, a3, 0x7780                              |     a3 += 0x7780;
    0x0002e184 addiu a2, zero, 0x504                             |     a2 = 0x504;
    0x0002e188 lw a1, -0x7fcc(gp)                                |     a1 = *(gp);
                                                                 |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0002e18c addiu a1, a1, 0x2aa8                              |     a1 += 0x2aa8;
    0x0002e190 lw a0, -0x7fcc(gp)                                |     a0 = *(gp);
                                                                 |     /* str.IsObject__ */
    0x0002e194 addiu a0, a0, 0x2b0c                              |     a0 += 0x2b0c;
    0x0002e198 lw t9, -0x7644(gp)                                |     t9 = sym.imp.__assert_fail;
    0x0002e19c jalr t9                                           |     t9 ();
    0x0002e1a0 nop                                               |     
                                                                 | label_35:
    0x0002e1a4 sll v1, s2, 5                                     |     v1 = s2 << 5;
                                                                 |     if (s6 != 0) {
    0x0002e1a8 bnez s6, 0x2e270                                  |         goto label_54;
                                                                 |     }
                                                                 |     if (v1 == 0) {
    0x0002e1ac beql v1, zero, 0x2e2bc                            |         goto label_28;
                                                                 |     }
    0x0002e1b0 sw s6, 0x10(s0)                                   |     *((s0 + 4)) = s6;
    0x0002e1b4 move s1, v1                                       |     s1 = v1;
    0x0002e1b8 b 0x2e1c4                                         |     goto label_55;
                                                                 | label_23:
    0x0002e1bc addiu v1, zero, 0x200                             |     v1 = aav.0x00000200;
    0x0002e1c0 move s1, v1                                       |     s1 = v1;
                                                                 | label_55:
    0x0002e1c4 lw v1, (s3)                                       |     v1 = *(s3);
                                                                 |     if (v1 != 0) {
    0x0002e1c8 beql v1, zero, 0x2e1ec                            |         
    0x0002e1cc lw v0, 4(s3)                                      |         v0 = *((s3 + 1));
    0x0002e1d0 lw v0, 4(v1)                                      |         v0 = *((v1 + 1));
    0x0002e1d4 addu v0, s1, v0                                   |         v0 = s1 + v0;
    0x0002e1d8 lw v1, (v1)                                       |         v1 = *(v1);
    0x0002e1dc sltu v0, v1, v0                                   |         v0 = (v1 < v0) ? 1 : 0;
                                                                 |         if (v0 == 0) {
    0x0002e1e0 beql v0, zero, 0x2e23c                            |             goto label_56;
                                                                 |         }
    0x0002e1e4 lw v0, (s3)                                       |         v0 = *(s3);
    0x0002e1e8 lw v0, 4(s3)                                      |         v0 = *((s3 + 1));
                                                                 |     }
    0x0002e1ec sltu s4, v0, s1                                   |     s4 = (v0 < s1) ? 1 : 0;
                                                                 |     if (s4 == 0) {
    0x0002e1f0 movn v0, s1, s4                                   |         v0 = s1;
                                                                 |     }
    0x0002e1f4 move s4, v0                                       |     s4 = v0;
    0x0002e1f8 lw v0, 0xc(s3)                                    |     v0 = *((s3 + 3));
    0x0002e1fc addiu a0, zero, 1                                 |     a0 = 1;
    0x0002e200 beqz v0, 0x2e254                                  |     
                                                                 |     while (1) {
    0x0002e204 addiu a0, s4, 0x10                                |         a0 = s4 + 0x10;
    0x0002e208 lw t9, -0x73c8(gp)                                |         t9 = sym.imp.malloc;
                                                                 |         if (a0 == 0) {
    0x0002e20c beqz a0, 0x2e7f0                                  |             goto label_57;
                                                                 |         }
    0x0002e210 jalr t9                                           |         t9 ();
    0x0002e214 nop                                               |         
    0x0002e218 lw gp, 0x10(sp)                                   |         gp = *(var_10h);
                                                                 |         if (v0 == 0) {
    0x0002e21c beql v0, zero, 0x2e2b8                            |             goto label_10;
                                                                 |         }
    0x0002e220 move s6, zero                                     |         s6 = 0;
    0x0002e224 sw s4, (v0)                                       |         *(v0) = s4;
    0x0002e228 sw zero, 4(v0)                                    |         *((v0 + 1)) = 0;
    0x0002e22c lw v1, (s3)                                       |         v1 = *(s3);
    0x0002e230 sw v1, 8(v0)                                      |         *((v0 + 2)) = v1;
    0x0002e234 sw v0, (s3)                                       |         *(s3) = v0;
    0x0002e238 lw v0, (s3)                                       |         v0 = *(s3);
                                                                 | label_56:
    0x0002e23c lw v1, 4(v0)                                      |         v1 = *((v0 + 1));
    0x0002e240 addiu s6, v1, 0x10                                |         s6 = v1 + 0x10;
    0x0002e244 addu s6, v0, s6                                   |         s6 = v0 + s6;
    0x0002e248 addu v1, s1, v1                                   |         v1 = s1 + v1;
    0x0002e24c sw v1, 4(v0)                                      |         *((v0 + 1)) = v1;
    0x0002e250 b 0x2e2b8                                         |         goto label_10;
    0x0002e254 lw t9, -0x7310(gp)                                |         t9 = *((gp - 7364));
    0x0002e258 jalr t9                                           |         t9 ();
    0x0002e25c nop                                               |         
    0x0002e260 lw gp, 0x10(sp)                                   |         gp = *(var_10h);
    0x0002e264 sw v0, 0xc(s3)                                    |         *((s3 + 3)) = v0;
    0x0002e268 sw v0, 0x10(s3)                                   |         *((s3 + 4)) = v0;
    0x0002e26c b 0x2e204                                         |         
                                                                 |     }
                                                                 | label_54:
    0x0002e270 move s5, s6                                       |     s5 = s6;
    0x0002e274 b 0x2e9e0                                         |     goto label_58;
                                                                 | label_25:
    0x0002e278 addu v0, v0, v1                                   |     v0 += v1;
    0x0002e27c lw a2, (a1)                                       |     a2 = *(a1);
    0x0002e280 sltu a2, a2, v0                                   |     a2 = (a2 < v0) ? 1 : 0;
    0x0002e284 addu a0, a0, v1                                   |     a0 += v1;
                                                                 |     if (a2 != 0) {
    0x0002e288 bnez a2, 0x2ea14                                  |         goto label_59;
                                                                 |     }
    0x0002e28c sw v0, 4(a1)                                      |     *((a1 + 1)) = v0;
    0x0002e290 move s6, s5                                       |     s6 = s5;
    0x0002e294 b 0x2e2b8                                         |     goto label_10;
                                                                 | label_26:
    0x0002e298 lw t9, -0x7310(gp)                                |     t9 = *((gp - 7364));
    0x0002e29c jalr t9                                           |     t9 ();
    0x0002e2a0 nop                                               |     
    0x0002e2a4 lw gp, 0x10(sp)                                   |     gp = *(var_10h);
    0x0002e2a8 sw v0, 0xc(s3)                                    |     *((s3 + 3)) = v0;
    0x0002e2ac sw v0, 0x10(s3)                                   |     *((s3 + 4)) = v0;
    0x0002e2b0 b 0x2ea40                                         |     goto label_60;
                                                                 | label_24:
    0x0002e2b4 move s6, zero                                     |     s6 = 0;
                                                                 | label_10:
    0x0002e2b8 sw s6, 0x10(s0)                                   |     *((s0 + 4)) = s6;
                                                                 | label_28:
    0x0002e2bc sw s2, 0xc(s0)                                    |     *((s0 + 3)) = s2;
    0x0002e2c0 b 0x2dcc8                                         |     goto label_1;
                                                                 | label_36:
    0x0002e2c4 lw a3, -0x7fcc(gp)                                |     a3 = *(gp);
                                                                 |     /* esilref: 'Allocator& rapidjson::GenericDocument<Encoding, Allocator, StackAllocator>::GetAllocator() [with Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; StackAllocator = rapidjson::CrtAllocator]' */
    0x0002e2c8 addiu a3, a3, 0x78a4                              |     a3 += 0x78a4;
    0x0002e2cc addiu a2, zero, 0x969                             |     a2 = 0x969;
    0x0002e2d0 lw a1, -0x7fcc(gp)                                |     a1 = *(gp);
                                                                 |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0002e2d4 addiu a1, a1, 0x2aa8                              |     a1 += 0x2aa8;
    0x0002e2d8 lw a0, -0x7fcc(gp)                                |     a0 = *(gp);
                                                                 |     /* str.allocator_ */
    0x0002e2dc addiu a0, a0, 0x2d78                              |     a0 += 0x2d78;
    0x0002e2e0 lw t9, -0x7644(gp)                                |     t9 = sym.imp.__assert_fail;
    0x0002e2e4 jalr t9                                           |     t9 ();
    0x0002e2e8 nop                                               |     
                                                                 | label_37:
    0x0002e2ec lw a3, -0x7fcc(gp)                                |     a3 = *(gp);
                                                                 |     /* esilref: 'rapidjson::SizeType rapidjson::GenericStringRef<CharType>::NotNullStrLen(const CharType*) [with CharType = char; rapidjson::SizeType = unsigned int]' */
    0x0002e2f0 addiu a3, a3, 0x797c                              |     a3 += 0x797c;
    0x0002e2f4 addiu a2, zero, 0x14b                             |     a2 = 0x14b;
    0x0002e2f8 lw a1, -0x7fcc(gp)                                |     a1 = *(gp);
                                                                 |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0002e2fc addiu a1, a1, 0x2aa8                              |     a1 += 0x2aa8;
    0x0002e300 lw a0, -0x7fcc(gp)                                |     a0 = *(gp);
                                                                 |     /* str.str___0 */
    0x0002e304 addiu a0, a0, 0x2b2c                              |     a0 += 0x2b2c;
    0x0002e308 lw t9, -0x7644(gp)                                |     t9 = sym.imp.__assert_fail;
    0x0002e30c jalr t9                                           |     t9 ();
    0x0002e310 nop                                               |     
                                                                 | label_38:
    0x0002e314 addiu v0, zero, 0xc05                             |     v0 = 0xc05;
    0x0002e318 sh v0, 0x36(sp)                                   |     *(var_36h) = v0;
    0x0002e31c sw s2, 0x28(sp)                                   |     *(var_28h) = s2;
    0x0002e320 addiu s4, s2, 8                                   |     s4 = s2 + 8;
    0x0002e324 addiu v0, zero, -8                                |     v0 = -8;
    0x0002e328 lw v1, (s1)                                       |     v1 = *(s1);
    0x0002e32c and s4, s4, v0                                    |     s4 &= v0;
                                                                 |     if (v1 != 0) {
    0x0002e330 beqz v1, 0x2e34c                                  |         
    0x0002e334 lw v0, 4(v1)                                      |         v0 = *((v1 + 1));
    0x0002e338 addu v0, s4, v0                                   |         v0 = s4 + v0;
    0x0002e33c lw v1, (v1)                                       |         v1 = *(v1);
    0x0002e340 sltu v0, v1, v0                                   |         v0 = (v1 < v0) ? 1 : 0;
                                                                 |         if (v0 == 0) {
    0x0002e344 beql v0, zero, 0x2e3a0                            |             goto label_61;
                                                                 |         }
    0x0002e348 lw v1, (s1)                                       |         v1 = *(s1);
                                                                 |     }
    0x0002e34c lw v0, 4(s1)                                      |     v0 = *((s1 + 1));
    0x0002e350 sltu s5, v0, s4                                   |     s5 = (v0 < s4) ? 1 : 0;
                                                                 |     if (s5 == 0) {
    0x0002e354 movn v0, s4, s5                                   |         v0 = s4;
                                                                 |     }
    0x0002e358 move s5, v0                                       |     s5 = v0;
    0x0002e35c lw v0, 0xc(s1)                                    |     v0 = *((s1 + 3));
    0x0002e360 addiu a0, zero, 1                                 |     a0 = 1;
    0x0002e364 beqz v0, 0x2e3bc                                  |     
                                                                 |     while (1) {
    0x0002e368 addiu a0, s5, 0x10                                |         a0 = s5 + 0x10;
    0x0002e36c lw t9, -0x73c8(gp)                                |         t9 = sym.imp.malloc;
                                                                 |         if (a0 == 0) {
    0x0002e370 beqz a0, 0x2e7e8                                  |             goto label_62;
                                                                 |         }
    0x0002e374 jalr t9                                           |         t9 ();
    0x0002e378 nop                                               |         
    0x0002e37c lw gp, 0x10(sp)                                   |         gp = *(var_10h);
                                                                 |         if (v0 != 0) {
    0x0002e380 beql v0, zero, 0x2e3b4                            |             
    0x0002e384 move s1, zero                                     |             s1 = 0;
    0x0002e388 sw s5, (v0)                                       |             *(v0) = s5;
    0x0002e38c sw zero, 4(v0)                                    |             *((v0 + 1)) = 0;
    0x0002e390 lw v1, (s1)                                       |             v1 = *(s1);
    0x0002e394 sw v1, 8(v0)                                      |             *((v0 + 2)) = v1;
    0x0002e398 sw v0, (s1)                                       |             *(s1) = v0;
    0x0002e39c lw v1, (s1)                                       |             v1 = *(s1);
                                                                 | label_61:
    0x0002e3a0 lw a0, 4(v1)                                      |             a0 = *((v1 + 1));
    0x0002e3a4 addiu v0, a0, 0x10                                |             v0 = a0 + 0x10;
    0x0002e3a8 addu s1, v1, v0                                   |             s1 = v1 + v0;
    0x0002e3ac addu v0, s4, a0                                   |             v0 = s4 + a0;
    0x0002e3b0 sw v0, 4(v1)                                      |             *((v1 + 1)) = v0;
                                                                 |         }
                                                                 | label_9:
    0x0002e3b4 sw s1, 0x30(sp)                                   |         *(var_30h) = s1;
    0x0002e3b8 b 0x2ddb0                                         |         goto label_2;
    0x0002e3bc lw t9, -0x7310(gp)                                |         t9 = *((gp - 7364));
    0x0002e3c0 jalr t9                                           |         t9 ();
    0x0002e3c4 nop                                               |         
    0x0002e3c8 lw gp, 0x10(sp)                                   |         gp = *(var_10h);
    0x0002e3cc sw v0, 0xc(s1)                                    |         *((s1 + 3)) = v0;
    0x0002e3d0 sw v0, 0x10(s1)                                   |         *((s1 + 4)) = v0;
    0x0002e3d4 b 0x2e368                                         |         
                                                                 |     }
                                                                 | label_39:
    0x0002e3d8 lw a3, -0x7fcc(gp)                                |     a3 = *(gp);
                                                                 |     /* esilref: 'Allocator& rapidjson::GenericDocument<Encoding, Allocator, StackAllocator>::GetAllocator() [with Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; StackAllocator = rapidjson::CrtAllocator]' */
    0x0002e3dc addiu a3, a3, 0x78a4                              |     a3 += 0x78a4;
    0x0002e3e0 addiu a2, zero, 0x969                             |     a2 = 0x969;
    0x0002e3e4 lw a1, -0x7fcc(gp)                                |     a1 = *(gp);
                                                                 |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0002e3e8 addiu a1, a1, 0x2aa8                              |     a1 += 0x2aa8;
    0x0002e3ec lw a0, -0x7fcc(gp)                                |     a0 = *(gp);
                                                                 |     /* str.allocator_ */
    0x0002e3f0 addiu a0, a0, 0x2d78                              |     a0 += 0x2d78;
    0x0002e3f4 lw t9, -0x7644(gp)                                |     t9 = sym.imp.__assert_fail;
    0x0002e3f8 jalr t9                                           |     t9 ();
    0x0002e3fc nop                                               |     
                                                                 | label_40:
    0x0002e400 addiu a3, a3, 0x7780                              |     a3 += 0x7780;
    0x0002e404 addiu a2, zero, 0x504                             |     a2 = 0x504;
    0x0002e408 lw a1, -0x7fcc(gp)                                |     a1 = *(gp);
                                                                 |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0002e40c addiu a1, a1, 0x2aa8                              |     a1 += 0x2aa8;
    0x0002e410 lw a0, -0x7fcc(gp)                                |     a0 = *(gp);
                                                                 |     /* str.IsObject__ */
    0x0002e414 addiu a0, a0, 0x2b0c                              |     a0 += 0x2b0c;
    0x0002e418 lw t9, -0x7644(gp)                                |     t9 = sym.imp.__assert_fail;
    0x0002e41c jalr t9                                           |     t9 ();
    0x0002e420 nop                                               |     
                                                                 | label_42:
    0x0002e424 sll v1, s2, 5                                     |     v1 = s2 << 5;
                                                                 |     if (s6 != 0) {
    0x0002e428 bnez s6, 0x2e4f0                                  |         goto label_63;
                                                                 |     }
                                                                 |     if (v1 == 0) {
    0x0002e42c beql v1, zero, 0x2e53c                            |         goto label_22;
                                                                 |     }
    0x0002e430 sw s6, 0x10(s0)                                   |     *((s0 + 4)) = s6;
    0x0002e434 move s1, v1                                       |     s1 = v1;
    0x0002e438 b 0x2e444                                         |     goto label_64;
                                                                 | label_17:
    0x0002e43c addiu s2, zero, 0x10                              |     s2 = 0x10;
    0x0002e440 move s1, v1                                       |     s1 = v1;
                                                                 | label_64:
    0x0002e444 lw v1, (s3)                                       |     v1 = *(s3);
                                                                 |     if (v1 != 0) {
    0x0002e448 beql v1, zero, 0x2e46c                            |         
    0x0002e44c lw v0, 4(s3)                                      |         v0 = *((s3 + 1));
    0x0002e450 lw v0, 4(v1)                                      |         v0 = *((v1 + 1));
    0x0002e454 addu v0, s1, v0                                   |         v0 = s1 + v0;
    0x0002e458 lw v1, (v1)                                       |         v1 = *(v1);
    0x0002e45c sltu v0, v1, v0                                   |         v0 = (v1 < v0) ? 1 : 0;
                                                                 |         if (v0 == 0) {
    0x0002e460 beql v0, zero, 0x2e4bc                            |             goto label_65;
                                                                 |         }
    0x0002e464 lw v0, (s3)                                       |         v0 = *(s3);
    0x0002e468 lw v0, 4(s3)                                      |         v0 = *((s3 + 1));
                                                                 |     }
    0x0002e46c sltu s4, v0, s1                                   |     s4 = (v0 < s1) ? 1 : 0;
                                                                 |     if (s4 == 0) {
    0x0002e470 movn v0, s1, s4                                   |         v0 = s1;
                                                                 |     }
    0x0002e474 move s4, v0                                       |     s4 = v0;
    0x0002e478 lw v0, 0xc(s3)                                    |     v0 = *((s3 + 3));
    0x0002e47c addiu a0, zero, 1                                 |     a0 = 1;
    0x0002e480 beqz v0, 0x2e4d4                                  |     
                                                                 |     while (1) {
    0x0002e484 addiu a0, s4, 0x10                                |         a0 = s4 + 0x10;
    0x0002e488 lw t9, -0x73c8(gp)                                |         t9 = sym.imp.malloc;
                                                                 |         if (a0 == 0) {
    0x0002e48c beqz a0, 0x2e7d8                                  |             goto label_66;
                                                                 |         }
    0x0002e490 jalr t9                                           |         t9 ();
    0x0002e494 nop                                               |         
    0x0002e498 lw gp, 0x10(sp)                                   |         gp = *(var_10h);
                                                                 |         if (v0 == 0) {
    0x0002e49c beql v0, zero, 0x2e538                            |             goto label_8;
                                                                 |         }
    0x0002e4a0 move s6, zero                                     |         s6 = 0;
    0x0002e4a4 sw s4, (v0)                                       |         *(v0) = s4;
    0x0002e4a8 sw zero, 4(v0)                                    |         *((v0 + 1)) = 0;
    0x0002e4ac lw v1, (s3)                                       |         v1 = *(s3);
    0x0002e4b0 sw v1, 8(v0)                                      |         *((v0 + 2)) = v1;
    0x0002e4b4 sw v0, (s3)                                       |         *(s3) = v0;
    0x0002e4b8 lw v0, (s3)                                       |         v0 = *(s3);
                                                                 | label_65:
    0x0002e4bc lw v1, 4(v0)                                      |         v1 = *((v0 + 1));
    0x0002e4c0 addiu s6, v1, 0x10                                |         s6 = v1 + 0x10;
    0x0002e4c4 addu s6, v0, s6                                   |         s6 = v0 + s6;
    0x0002e4c8 addu v1, s1, v1                                   |         v1 = s1 + v1;
    0x0002e4cc sw v1, 4(v0)                                      |         *((v0 + 1)) = v1;
    0x0002e4d0 b 0x2e538                                         |         goto label_8;
    0x0002e4d4 lw t9, -0x7310(gp)                                |         t9 = *((gp - 7364));
    0x0002e4d8 jalr t9                                           |         t9 ();
    0x0002e4dc nop                                               |         
    0x0002e4e0 lw gp, 0x10(sp)                                   |         gp = *(var_10h);
    0x0002e4e4 sw v0, 0xc(s3)                                    |         *((s3 + 3)) = v0;
    0x0002e4e8 sw v0, 0x10(s3)                                   |         *((s3 + 4)) = v0;
    0x0002e4ec b 0x2e484                                         |         
                                                                 |     }
                                                                 | label_63:
    0x0002e4f0 move s5, s6                                       |     s5 = s6;
    0x0002e4f4 b 0x2e8f8                                         |     goto label_67;
                                                                 | label_19:
    0x0002e4f8 addu v0, v0, v1                                   |     v0 += v1;
    0x0002e4fc lw a2, (a1)                                       |     a2 = *(a1);
    0x0002e500 sltu a2, a2, v0                                   |     a2 = (a2 < v0) ? 1 : 0;
    0x0002e504 addu a0, a0, v1                                   |     a0 += v1;
                                                                 |     if (a2 != 0) {
    0x0002e508 bnez a2, 0x2e92c                                  |         goto label_68;
                                                                 |     }
    0x0002e50c sw v0, 4(a1)                                      |     *((a1 + 1)) = v0;
    0x0002e510 move s6, s5                                       |     s6 = s5;
    0x0002e514 b 0x2e538                                         |     goto label_8;
                                                                 | label_20:
    0x0002e518 lw t9, -0x7310(gp)                                |     t9 = *((gp - 7364));
    0x0002e51c jalr t9                                           |     t9 ();
    0x0002e520 nop                                               |     
    0x0002e524 lw gp, 0x10(sp)                                   |     gp = *(var_10h);
    0x0002e528 sw v0, 0xc(s3)                                    |     *((s3 + 3)) = v0;
    0x0002e52c sw v0, 0x10(s3)                                   |     *((s3 + 4)) = v0;
    0x0002e530 b 0x2e958                                         |     goto label_69;
                                                                 | label_18:
    0x0002e534 move s6, zero                                     |     s6 = 0;
                                                                 | label_8:
    0x0002e538 sw s6, 0x10(s0)                                   |     *((s0 + 4)) = s6;
                                                                 | label_22:
    0x0002e53c sw s2, 0xc(s0)                                    |     *((s0 + 3)) = s2;
    0x0002e540 b 0x2de2c                                         |     goto label_3;
                                                                 | label_43:
    0x0002e544 lw a3, -0x7fcc(gp)                                |     a3 = *(gp);
                                                                 |     /* esilref: 'Allocator& rapidjson::GenericDocument<Encoding, Allocator, StackAllocator>::GetAllocator() [with Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; StackAllocator = rapidjson::CrtAllocator]' */
    0x0002e548 addiu a3, a3, 0x78a4                              |     a3 += 0x78a4;
    0x0002e54c addiu a2, zero, 0x969                             |     a2 = 0x969;
    0x0002e550 lw a1, -0x7fcc(gp)                                |     a1 = *(gp);
                                                                 |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0002e554 addiu a1, a1, 0x2aa8                              |     a1 += 0x2aa8;
    0x0002e558 lw a0, -0x7fcc(gp)                                |     a0 = *(gp);
                                                                 |     /* str.allocator_ */
    0x0002e55c addiu a0, a0, 0x2d78                              |     a0 += 0x2d78;
    0x0002e560 lw t9, -0x7644(gp)                                |     t9 = sym.imp.__assert_fail;
    0x0002e564 jalr t9                                           |     t9 ();
    0x0002e568 nop                                               |     
                                                                 | label_44:
    0x0002e56c lw a3, -0x7fcc(gp)                                |     a3 = *(gp);
                                                                 |     /* esilref: 'rapidjson::SizeType rapidjson::GenericStringRef<CharType>::NotNullStrLen(const CharType*) [with CharType = char; rapidjson::SizeType = unsigned int]' */
    0x0002e570 addiu a3, a3, 0x797c                              |     a3 += 0x797c;
    0x0002e574 addiu a2, zero, 0x14b                             |     a2 = 0x14b;
    0x0002e578 lw a1, -0x7fcc(gp)                                |     a1 = *(gp);
                                                                 |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0002e57c addiu a1, a1, 0x2aa8                              |     a1 += 0x2aa8;
    0x0002e580 lw a0, -0x7fcc(gp)                                |     a0 = *(gp);
                                                                 |     /* str.str___0 */
    0x0002e584 addiu a0, a0, 0x2b2c                              |     a0 += 0x2b2c;
    0x0002e588 lw t9, -0x7644(gp)                                |     t9 = sym.imp.__assert_fail;
    0x0002e58c jalr t9                                           |     t9 ();
    0x0002e590 nop                                               |     
                                                                 | label_45:
    0x0002e594 addiu v0, zero, 0xc05                             |     v0 = 0xc05;
    0x0002e598 sh v0, 0x46(sp)                                   |     *(var_46h) = v0;
    0x0002e59c sw s2, 0x38(sp)                                   |     *(var_38h) = s2;
    0x0002e5a0 addiu s4, s2, 8                                   |     s4 = s2 + 8;
    0x0002e5a4 addiu v0, zero, -8                                |     v0 = -8;
    0x0002e5a8 lw v1, (s1)                                       |     v1 = *(s1);
    0x0002e5ac and s4, s4, v0                                    |     s4 &= v0;
                                                                 |     if (v1 != 0) {
    0x0002e5b0 beqz v1, 0x2e5cc                                  |         
    0x0002e5b4 lw v0, 4(v1)                                      |         v0 = *((v1 + 1));
    0x0002e5b8 addu v0, s4, v0                                   |         v0 = s4 + v0;
    0x0002e5bc lw v1, (v1)                                       |         v1 = *(v1);
    0x0002e5c0 sltu v0, v1, v0                                   |         v0 = (v1 < v0) ? 1 : 0;
                                                                 |         if (v0 == 0) {
    0x0002e5c4 beql v0, zero, 0x2e620                            |             goto label_70;
                                                                 |         }
    0x0002e5c8 lw v1, (s1)                                       |         v1 = *(s1);
                                                                 |     }
    0x0002e5cc lw v0, 4(s1)                                      |     v0 = *((s1 + 1));
    0x0002e5d0 sltu s5, v0, s4                                   |     s5 = (v0 < s4) ? 1 : 0;
                                                                 |     if (s5 == 0) {
    0x0002e5d4 movn v0, s4, s5                                   |         v0 = s4;
                                                                 |     }
    0x0002e5d8 move s5, v0                                       |     s5 = v0;
    0x0002e5dc lw v0, 0xc(s1)                                    |     v0 = *((s1 + 3));
    0x0002e5e0 addiu a0, zero, 1                                 |     a0 = 1;
    0x0002e5e4 beqz v0, 0x2e63c                                  |     
                                                                 |     while (1) {
    0x0002e5e8 addiu a0, s5, 0x10                                |         a0 = s5 + 0x10;
    0x0002e5ec lw t9, -0x73c8(gp)                                |         t9 = sym.imp.malloc;
                                                                 |         if (a0 == 0) {
    0x0002e5f0 beqz a0, 0x2e7d0                                  |             goto label_71;
                                                                 |         }
    0x0002e5f4 jalr t9                                           |         t9 ();
    0x0002e5f8 nop                                               |         
    0x0002e5fc lw gp, 0x10(sp)                                   |         gp = *(var_10h);
                                                                 |         if (v0 != 0) {
    0x0002e600 beql v0, zero, 0x2e634                            |             
    0x0002e604 move s1, zero                                     |             s1 = 0;
    0x0002e608 sw s5, (v0)                                       |             *(v0) = s5;
    0x0002e60c sw zero, 4(v0)                                    |             *((v0 + 1)) = 0;
    0x0002e610 lw v1, (s1)                                       |             v1 = *(s1);
    0x0002e614 sw v1, 8(v0)                                      |             *((v0 + 2)) = v1;
    0x0002e618 sw v0, (s1)                                       |             *(s1) = v0;
    0x0002e61c lw v1, (s1)                                       |             v1 = *(s1);
                                                                 | label_70:
    0x0002e620 lw a0, 4(v1)                                      |             a0 = *((v1 + 1));
    0x0002e624 addiu v0, a0, 0x10                                |             v0 = a0 + 0x10;
    0x0002e628 addu s1, v1, v0                                   |             s1 = v1 + v0;
    0x0002e62c addu v0, s4, a0                                   |             v0 = s4 + a0;
    0x0002e630 sw v0, 4(v1)                                      |             *((v1 + 1)) = v0;
                                                                 |         }
                                                                 | label_7:
    0x0002e634 sw s1, 0x40(sp)                                   |         *(var_40h) = s1;
    0x0002e638 b 0x2df14                                         |         goto label_4;
    0x0002e63c lw t9, -0x7310(gp)                                |         t9 = *((gp - 7364));
    0x0002e640 jalr t9                                           |         t9 ();
    0x0002e644 nop                                               |         
    0x0002e648 lw gp, 0x10(sp)                                   |         gp = *(var_10h);
    0x0002e64c sw v0, 0xc(s1)                                    |         *((s1 + 3)) = v0;
    0x0002e650 sw v0, 0x10(s1)                                   |         *((s1 + 4)) = v0;
    0x0002e654 b 0x2e5e8                                         |         
                                                                 |     }
                                                                 | label_46:
    0x0002e658 lw a3, -0x7fcc(gp)                                |     a3 = *(gp);
                                                                 |     /* esilref: 'Allocator& rapidjson::GenericDocument<Encoding, Allocator, StackAllocator>::GetAllocator() [with Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; StackAllocator = rapidjson::CrtAllocator]' */
    0x0002e65c addiu a3, a3, 0x78a4                              |     a3 += 0x78a4;
    0x0002e660 addiu a2, zero, 0x969                             |     a2 = 0x969;
    0x0002e664 lw a1, -0x7fcc(gp)                                |     a1 = *(gp);
                                                                 |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0002e668 addiu a1, a1, 0x2aa8                              |     a1 += 0x2aa8;
    0x0002e66c lw a0, -0x7fcc(gp)                                |     a0 = *(gp);
                                                                 |     /* str.allocator_ */
    0x0002e670 addiu a0, a0, 0x2d78                              |     a0 += 0x2d78;
    0x0002e674 lw t9, -0x7644(gp)                                |     t9 = sym.imp.__assert_fail;
    0x0002e678 jalr t9                                           |     t9 ();
    0x0002e67c nop                                               |     
                                                                 | label_47:
    0x0002e680 addiu a3, a3, 0x7780                              |     a3 += 0x7780;
    0x0002e684 addiu a2, zero, 0x504                             |     a2 = 0x504;
    0x0002e688 lw a1, -0x7fcc(gp)                                |     a1 = *(gp);
                                                                 |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0002e68c addiu a1, a1, 0x2aa8                              |     a1 += 0x2aa8;
    0x0002e690 lw a0, -0x7fcc(gp)                                |     a0 = *(gp);
                                                                 |     /* str.IsObject__ */
    0x0002e694 addiu a0, a0, 0x2b0c                              |     a0 += 0x2b0c;
    0x0002e698 lw t9, -0x7644(gp)                                |     t9 = sym.imp.__assert_fail;
    0x0002e69c jalr t9                                           |     t9 ();
    0x0002e6a0 nop                                               |     
                                                                 | label_49:
    0x0002e6a4 sll v1, s2, 5                                     |     v1 = s2 << 5;
                                                                 |     if (s5 != 0) {
    0x0002e6a8 beqz s5, 0x2e6c0                                  |         
    0x0002e6ac move s6, zero                                     |         s6 = 0;
                                                                 |         if (v1 == 0) {
    0x0002e6b0 beqz v1, 0x2e7b4                                  |             goto label_6;
                                                                 |         }
    0x0002e6b4 sll s1, v0, 5                                     |         s1 = v0 << 5;
    0x0002e6b8 b 0x2e818                                         |         goto label_72;
                                                                 | label_12:
    0x0002e6bc addiu s2, zero, 0x10                              |         s2 = 0x10;
                                                                 |     }
    0x0002e6c0 move s1, v1                                       |     s1 = v1;
                                                                 |     if (v1 == 0) {
    0x0002e6c4 beqz v1, 0x2e7b0                                  |         goto label_73;
                                                                 |     }
    0x0002e6c8 lw v1, (s3)                                       |     v1 = *(s3);
                                                                 |     if (v1 != 0) {
    0x0002e6cc beql v1, zero, 0x2e6f0                            |         
    0x0002e6d0 lw v0, 4(s3)                                      |         v0 = *((s3 + 1));
    0x0002e6d4 lw v0, 4(v1)                                      |         v0 = *((v1 + 1));
    0x0002e6d8 addu v0, s1, v0                                   |         v0 = s1 + v0;
    0x0002e6dc lw v1, (v1)                                       |         v1 = *(v1);
    0x0002e6e0 sltu v0, v1, v0                                   |         v0 = (v1 < v0) ? 1 : 0;
                                                                 |         if (v0 == 0) {
    0x0002e6e4 beql v0, zero, 0x2e740                            |             goto label_74;
                                                                 |         }
    0x0002e6e8 lw v0, (s3)                                       |         v0 = *(s3);
    0x0002e6ec lw v0, 4(s3)                                      |         v0 = *((s3 + 1));
                                                                 |     }
    0x0002e6f0 sltu s4, v0, s1                                   |     s4 = (v0 < s1) ? 1 : 0;
                                                                 |     if (s4 == 0) {
    0x0002e6f4 movn v0, s1, s4                                   |         v0 = s1;
                                                                 |     }
    0x0002e6f8 move s4, v0                                       |     s4 = v0;
    0x0002e6fc lw v0, 0xc(s3)                                    |     v0 = *((s3 + 3));
    0x0002e700 addiu a0, zero, 1                                 |     a0 = 1;
    0x0002e704 beqz v0, 0x2e758                                  |     
                                                                 |     while (1) {
    0x0002e708 addiu a0, s4, 0x10                                |         a0 = s4 + 0x10;
    0x0002e70c lw t9, -0x73c8(gp)                                |         t9 = sym.imp.malloc;
                                                                 |         if (a0 == 0) {
    0x0002e710 beqz a0, 0x2e7c0                                  |             goto label_75;
                                                                 |         }
    0x0002e714 jalr t9                                           |         t9 ();
    0x0002e718 nop                                               |         
    0x0002e71c lw gp, 0x10(sp)                                   |         gp = *(var_10h);
                                                                 |         if (v0 == 0) {
    0x0002e720 beql v0, zero, 0x2e7b4                            |             goto label_6;
                                                                 |         }
    0x0002e724 move s6, zero                                     |         s6 = 0;
    0x0002e728 sw s4, (v0)                                       |         *(v0) = s4;
    0x0002e72c sw zero, 4(v0)                                    |         *((v0 + 1)) = 0;
    0x0002e730 lw v1, (s3)                                       |         v1 = *(s3);
    0x0002e734 sw v1, 8(v0)                                      |         *((v0 + 2)) = v1;
    0x0002e738 sw v0, (s3)                                       |         *(s3) = v0;
    0x0002e73c lw v0, (s3)                                       |         v0 = *(s3);
                                                                 | label_74:
    0x0002e740 lw v1, 4(v0)                                      |         v1 = *((v0 + 1));
    0x0002e744 addiu s6, v1, 0x10                                |         s6 = v1 + 0x10;
    0x0002e748 addu s6, v0, s6                                   |         s6 = v0 + s6;
    0x0002e74c addu v1, s1, v1                                   |         v1 = s1 + v1;
    0x0002e750 sw v1, 4(v0)                                      |         *((v0 + 1)) = v1;
    0x0002e754 b 0x2e7b4                                         |         goto label_6;
    0x0002e758 lw t9, -0x7310(gp)                                |         t9 = *((gp - 7364));
    0x0002e75c jalr t9                                           |         t9 ();
    0x0002e760 nop                                               |         
    0x0002e764 lw gp, 0x10(sp)                                   |         gp = *(var_10h);
    0x0002e768 sw v0, 0xc(s3)                                    |         *((s3 + 3)) = v0;
    0x0002e76c sw v0, 0x10(s3)                                   |         *((s3 + 4)) = v0;
    0x0002e770 b 0x2e708                                         |         
                                                                 |     }
                                                                 | label_13:
    0x0002e774 addu v0, v0, v1                                   |     v0 += v1;
    0x0002e778 lw a2, (a1)                                       |     a2 = *(a1);
    0x0002e77c sltu a2, a2, v0                                   |     a2 = (a2 < v0) ? 1 : 0;
    0x0002e780 addu a0, a0, v1                                   |     a0 += v1;
                                                                 |     if (a2 != 0) {
    0x0002e784 bnez a2, 0x2e844                                  |         goto label_76;
                                                                 |     }
    0x0002e788 sw v0, 4(a1)                                      |     *((a1 + 1)) = v0;
    0x0002e78c move s6, s5                                       |     s6 = s5;
    0x0002e790 b 0x2e7b4                                         |     goto label_6;
                                                                 | label_14:
    0x0002e794 lw t9, -0x7310(gp)                                |     t9 = *((gp - 7364));
    0x0002e798 jalr t9                                           |     t9 ();
    0x0002e79c nop                                               |     
    0x0002e7a0 lw gp, 0x10(sp)                                   |     gp = *(var_10h);
    0x0002e7a4 sw v0, 0xc(s3)                                    |     *((s3 + 3)) = v0;
    0x0002e7a8 sw v0, 0x10(s3)                                   |     *((s3 + 4)) = v0;
    0x0002e7ac b 0x2e870                                         |     goto label_77;
                                                                 | label_73:
    0x0002e7b0 move s6, zero                                     |     s6 = 0;
                                                                 |     do {
                                                                 | label_6:
    0x0002e7b4 sw s6, 0x10(s0)                                   |         *((s0 + 4)) = s6;
                                                                 | label_16:
    0x0002e7b8 sw s2, 0xc(s0)                                    |         *((s0 + 3)) = s2;
    0x0002e7bc b 0x2df90                                         |         goto label_5;
                                                                 | label_75:
    0x0002e7c0 move s6, zero                                     |         s6 = 0;
    0x0002e7c4 b 0x2e7b4                                         |         
                                                                 |     } while (1);
                                                                 | label_15:
    0x0002e7c8 move s6, zero                                     |     s6 = 0;
    0x0002e7cc b 0x2e7b4                                         |     goto label_6;
                                                                 | label_71:
    0x0002e7d0 move s1, zero                                     |     s1 = 0;
    0x0002e7d4 b 0x2e634                                         |     goto label_7;
                                                                 | label_66:
    0x0002e7d8 move s6, zero                                     |     s6 = 0;
    0x0002e7dc b 0x2e538                                         |     goto label_8;
                                                                 | label_21:
    0x0002e7e0 move s6, zero                                     |     s6 = 0;
    0x0002e7e4 b 0x2e538                                         |     goto label_8;
                                                                 | label_62:
    0x0002e7e8 move s1, zero                                     |     s1 = 0;
    0x0002e7ec b 0x2e3b4                                         |     goto label_9;
                                                                 | label_57:
    0x0002e7f0 move s6, zero                                     |     s6 = 0;
    0x0002e7f4 b 0x2e2b8                                         |     goto label_10;
                                                                 | label_27:
    0x0002e7f8 move s6, zero                                     |     s6 = 0;
    0x0002e7fc b 0x2e2b8                                         |     goto label_10;
                                                                 | label_53:
    0x0002e800 move s1, zero                                     |     s1 = 0;
    0x0002e804 b 0x2e134                                         |     goto label_11;
                                                                 | label_48:
    0x0002e808 addiu v1, zero, 0x200                             |     v1 = aav.0x00000200;
                                                                 |     if (s5 == 0) {
    0x0002e80c beqz s5, 0x2e6bc                                  |         goto label_12;
                                                                 |     }
    0x0002e810 addiu s2, zero, 0x10                              |     s2 = 0x10;
    0x0002e814 sll s1, v0, 5                                     |     s1 = v0 << 5;
                                                                 | label_72:
    0x0002e818 sltu v0, s1, v1                                   |     v0 = (s1 < v1) ? 1 : 0;
    0x0002e81c move s6, s5                                       |     s6 = s5;
                                                                 |     if (v0 == 0) {
    0x0002e820 beqz v0, 0x2e7b4                                  |         goto label_6;
                                                                 |     }
    0x0002e824 lw a1, (s3)                                       |     a1 = *(s3);
    0x0002e828 lw a0, 4(a1)                                      |     a0 = *((a1 + 1));
    0x0002e82c addiu v0, a0, 0x10                                |     v0 = a0 + 0x10;
    0x0002e830 subu v0, v0, s1                                   |     __asm ("subu v0, v0, s1");
    0x0002e834 addu v0, a1, v0                                   |     v0 = a1 + v0;
    0x0002e838 subu v0, a0, s1                                   |     __asm ("subu v0, a0, s1");
                                                                 |     if (s5 == v0) {
    0x0002e83c beq s5, v0, 0x2e774                               |         goto label_13;
                                                                 |     }
    0x0002e840 addu a0, a0, v1                                   |     a0 += v1;
                                                                 | label_76:
    0x0002e844 lw v0, (a1)                                       |     v0 = *(a1);
    0x0002e848 sltu a0, v0, a0                                   |     a0 = (v0 < a0) ? 1 : 0;
    0x0002e84c move s4, v1                                       |     s4 = v1;
                                                                 |     if (a0 == 0) {
    0x0002e850 beqz a0, 0x2e8a4                                  |         goto label_78;
                                                                 |     }
    0x0002e854 lw v0, 4(s3)                                      |     v0 = *((s3 + 1));
    0x0002e858 sltu s6, v0, v1                                   |     s6 = (v0 < v1) ? 1 : 0;
                                                                 |     if (s6 == 0) {
    0x0002e85c movn v0, v1, s6                                   |         v0 = v1;
                                                                 |     }
    0x0002e860 move s6, v0                                       |     s6 = v0;
    0x0002e864 lw v0, 0xc(s3)                                    |     v0 = *((s3 + 3));
    0x0002e868 addiu a0, zero, 1                                 |     a0 = 1;
                                                                 |     if (v0 == 0) {
    0x0002e86c beqz v0, 0x2e794                                  |         goto label_14;
                                                                 |     }
                                                                 | label_77:
    0x0002e870 addiu a0, s6, 0x10                                |     a0 = s6 + 0x10;
    0x0002e874 lw t9, -0x73c8(gp)                                |     t9 = sym.imp.malloc;
                                                                 |     if (a0 == 0) {
    0x0002e878 beqz a0, 0x2e7c8                                  |         goto label_15;
                                                                 |     }
    0x0002e87c jalr t9                                           |     t9 ();
    0x0002e880 nop                                               |     
    0x0002e884 lw gp, 0x10(sp)                                   |     gp = *(var_10h);
                                                                 |     if (v0 == 0) {
    0x0002e888 beql v0, zero, 0x2e7b4                            |         goto label_6;
                                                                 |     }
    0x0002e88c move s6, zero                                     |     s6 = 0;
    0x0002e890 sw s6, (v0)                                       |     *(v0) = s6;
    0x0002e894 sw zero, 4(v0)                                    |     *((v0 + 1)) = 0;
    0x0002e898 lw v1, (s3)                                       |     v1 = *(s3);
    0x0002e89c sw v1, 8(v0)                                      |     *((v0 + 2)) = v1;
    0x0002e8a0 sw v0, (s3)                                       |     *(s3) = v0;
                                                                 | label_78:
    0x0002e8a4 lw v0, (s3)                                       |     v0 = *(s3);
    0x0002e8a8 lw v1, 4(v0)                                      |     v1 = *((v0 + 1));
    0x0002e8ac addiu s6, v1, 0x10                                |     s6 = v1 + 0x10;
    0x0002e8b0 addu s6, v0, s6                                   |     s6 = v0 + s6;
    0x0002e8b4 addu v1, s4, v1                                   |     v1 = s4 + v1;
    0x0002e8b8 sw v1, 4(v0)                                      |     *((v0 + 1)) = v1;
                                                                 |     if (s6 == 0) {
    0x0002e8bc beqz s6, 0x2e7b4                                  |         goto label_6;
                                                                 |     }
                                                                 |     if (s1 == 0) {
    0x0002e8c0 beql s1, zero, 0x2e7b8                            |         goto label_16;
                                                                 |     }
    0x0002e8c4 sw s6, 0x10(s0)                                   |     *((s0 + 4)) = s6;
    0x0002e8c8 move a2, s1                                       |     a2 = s1;
    0x0002e8cc move a1, s5                                       |     a1 = s5;
    0x0002e8d0 move a0, s6                                       |     a0 = s6;
    0x0002e8d4 lw t9, -0x73b4(gp)                                |     t9 = sym.imp.memcpy;
    0x0002e8d8 jalr t9                                           |     t9 ();
    0x0002e8dc nop                                               |     
    0x0002e8e0 lw gp, 0x10(sp)                                   |     gp = *(var_10h);
    0x0002e8e4 sw s6, 0x10(s0)                                   |     *((s0 + 4)) = s6;
    0x0002e8e8 b 0x2e7b8                                         |     goto label_16;
                                                                 | label_41:
    0x0002e8ec addiu v1, zero, 0x200                             |     v1 = aav.0x00000200;
                                                                 |     if (s5 == 0) {
    0x0002e8f0 beqz s5, 0x2e43c                                  |         goto label_17;
                                                                 |     }
    0x0002e8f4 addiu s2, zero, 0x10                              |     s2 = 0x10;
                                                                 | label_67:
    0x0002e8f8 sll s1, v0, 5                                     |     s1 = v0 << 5;
                                                                 |     if (v1 == 0) {
    0x0002e8fc beqz v1, 0x2e534                                  |         goto label_18;
                                                                 |     }
    0x0002e900 sltu v0, s1, v1                                   |     v0 = (s1 < v1) ? 1 : 0;
    0x0002e904 move s6, s5                                       |     s6 = s5;
                                                                 |     if (v0 == 0) {
    0x0002e908 beqz v0, 0x2e538                                  |         goto label_8;
                                                                 |     }
    0x0002e90c lw a1, (s3)                                       |     a1 = *(s3);
    0x0002e910 lw a0, 4(a1)                                      |     a0 = *((a1 + 1));
    0x0002e914 addiu v0, a0, 0x10                                |     v0 = a0 + 0x10;
    0x0002e918 subu v0, v0, s1                                   |     __asm ("subu v0, v0, s1");
    0x0002e91c addu v0, a1, v0                                   |     v0 = a1 + v0;
    0x0002e920 subu v0, a0, s1                                   |     __asm ("subu v0, a0, s1");
                                                                 |     if (s5 == v0) {
    0x0002e924 beq s5, v0, 0x2e4f8                               |         goto label_19;
                                                                 |     }
    0x0002e928 addu a0, a0, v1                                   |     a0 += v1;
                                                                 | label_68:
    0x0002e92c lw v0, (a1)                                       |     v0 = *(a1);
    0x0002e930 sltu a0, v0, a0                                   |     a0 = (v0 < a0) ? 1 : 0;
    0x0002e934 move s4, v1                                       |     s4 = v1;
                                                                 |     if (a0 == 0) {
    0x0002e938 beqz a0, 0x2e98c                                  |         goto label_79;
                                                                 |     }
    0x0002e93c lw v0, 4(s3)                                      |     v0 = *((s3 + 1));
    0x0002e940 sltu s6, v0, v1                                   |     s6 = (v0 < v1) ? 1 : 0;
                                                                 |     if (s6 == 0) {
    0x0002e944 movn v0, v1, s6                                   |         v0 = v1;
                                                                 |     }
    0x0002e948 move s6, v0                                       |     s6 = v0;
    0x0002e94c lw v0, 0xc(s3)                                    |     v0 = *((s3 + 3));
    0x0002e950 addiu a0, zero, 1                                 |     a0 = 1;
                                                                 |     if (v0 == 0) {
    0x0002e954 beqz v0, 0x2e518                                  |         goto label_20;
                                                                 |     }
                                                                 | label_69:
    0x0002e958 addiu a0, s6, 0x10                                |     a0 = s6 + 0x10;
    0x0002e95c lw t9, -0x73c8(gp)                                |     t9 = sym.imp.malloc;
                                                                 |     if (a0 == 0) {
    0x0002e960 beqz a0, 0x2e7e0                                  |         goto label_21;
                                                                 |     }
    0x0002e964 jalr t9                                           |     t9 ();
    0x0002e968 nop                                               |     
    0x0002e96c lw gp, 0x10(sp)                                   |     gp = *(var_10h);
                                                                 |     if (v0 == 0) {
    0x0002e970 beql v0, zero, 0x2e538                            |         goto label_8;
                                                                 |     }
    0x0002e974 move s6, zero                                     |     s6 = 0;
    0x0002e978 sw s6, (v0)                                       |     *(v0) = s6;
    0x0002e97c sw zero, 4(v0)                                    |     *((v0 + 1)) = 0;
    0x0002e980 lw v1, (s3)                                       |     v1 = *(s3);
    0x0002e984 sw v1, 8(v0)                                      |     *((v0 + 2)) = v1;
    0x0002e988 sw v0, (s3)                                       |     *(s3) = v0;
                                                                 | label_79:
    0x0002e98c lw v0, (s3)                                       |     v0 = *(s3);
    0x0002e990 lw v1, 4(v0)                                      |     v1 = *((v0 + 1));
    0x0002e994 addiu s6, v1, 0x10                                |     s6 = v1 + 0x10;
    0x0002e998 addu s6, v0, s6                                   |     s6 = v0 + s6;
    0x0002e99c addu v1, s4, v1                                   |     v1 = s4 + v1;
    0x0002e9a0 sw v1, 4(v0)                                      |     *((v0 + 1)) = v1;
                                                                 |     if (s6 == 0) {
    0x0002e9a4 beqz s6, 0x2e538                                  |         goto label_8;
                                                                 |     }
                                                                 |     if (s1 == 0) {
    0x0002e9a8 beql s1, zero, 0x2e53c                            |         goto label_22;
                                                                 |     }
    0x0002e9ac sw s6, 0x10(s0)                                   |     *((s0 + 4)) = s6;
    0x0002e9b0 move a2, s1                                       |     a2 = s1;
    0x0002e9b4 move a1, s5                                       |     a1 = s5;
    0x0002e9b8 move a0, s6                                       |     a0 = s6;
    0x0002e9bc lw t9, -0x73b4(gp)                                |     t9 = sym.imp.memcpy;
    0x0002e9c0 jalr t9                                           |     t9 ();
    0x0002e9c4 nop                                               |     
    0x0002e9c8 lw gp, 0x10(sp)                                   |     gp = *(var_10h);
    0x0002e9cc sw s6, 0x10(s0)                                   |     *((s0 + 4)) = s6;
    0x0002e9d0 b 0x2e53c                                         |     goto label_22;
                                                                 | label_34:
    0x0002e9d4 addiu s2, zero, 0x10                              |     s2 = 0x10;
                                                                 |     if (s5 == 0) {
    0x0002e9d8 beqz s5, 0x2e1bc                                  |         goto label_23;
                                                                 |     }
    0x0002e9dc addiu v1, zero, 0x200                             |     v1 = aav.0x00000200;
                                                                 | label_58:
    0x0002e9e0 sll s1, v0, 5                                     |     s1 = v0 << 5;
                                                                 |     if (v1 == 0) {
    0x0002e9e4 beqz v1, 0x2e2b4                                  |         goto label_24;
                                                                 |     }
    0x0002e9e8 sltu v0, s1, v1                                   |     v0 = (s1 < v1) ? 1 : 0;
    0x0002e9ec move s6, s5                                       |     s6 = s5;
                                                                 |     if (v0 == 0) {
    0x0002e9f0 beqz v0, 0x2e2b8                                  |         goto label_10;
                                                                 |     }
    0x0002e9f4 lw a1, (s3)                                       |     a1 = *(s3);
    0x0002e9f8 lw a0, 4(a1)                                      |     a0 = *((a1 + 1));
    0x0002e9fc addiu v0, a0, 0x10                                |     v0 = a0 + 0x10;
    0x0002ea00 subu v0, v0, s1                                   |     __asm ("subu v0, v0, s1");
    0x0002ea04 addu v0, a1, v0                                   |     v0 = a1 + v0;
    0x0002ea08 subu v0, a0, s1                                   |     __asm ("subu v0, a0, s1");
                                                                 |     if (s5 == v0) {
    0x0002ea0c beq s5, v0, 0x2e278                               |         goto label_25;
                                                                 |     }
    0x0002ea10 addu a0, a0, v1                                   |     a0 += v1;
                                                                 | label_59:
    0x0002ea14 lw v0, (a1)                                       |     v0 = *(a1);
    0x0002ea18 sltu a0, v0, a0                                   |     a0 = (v0 < a0) ? 1 : 0;
    0x0002ea1c move s4, v1                                       |     s4 = v1;
                                                                 |     if (a0 == 0) {
    0x0002ea20 beqz a0, 0x2ea74                                  |         goto label_80;
                                                                 |     }
    0x0002ea24 lw v0, 4(s3)                                      |     v0 = *((s3 + 1));
    0x0002ea28 sltu s6, v0, v1                                   |     s6 = (v0 < v1) ? 1 : 0;
                                                                 |     if (s6 == 0) {
    0x0002ea2c movn v0, v1, s6                                   |         v0 = v1;
                                                                 |     }
    0x0002ea30 move s6, v0                                       |     s6 = v0;
    0x0002ea34 lw v0, 0xc(s3)                                    |     v0 = *((s3 + 3));
    0x0002ea38 addiu a0, zero, 1                                 |     a0 = 1;
                                                                 |     if (v0 == 0) {
    0x0002ea3c beqz v0, 0x2e298                                  |         goto label_26;
                                                                 |     }
                                                                 | label_60:
    0x0002ea40 addiu a0, s6, 0x10                                |     a0 = s6 + 0x10;
    0x0002ea44 lw t9, -0x73c8(gp)                                |     t9 = sym.imp.malloc;
                                                                 |     if (a0 == 0) {
    0x0002ea48 beqz a0, 0x2e7f8                                  |         goto label_27;
                                                                 |     }
    0x0002ea4c jalr t9                                           |     t9 ();
    0x0002ea50 nop                                               |     
    0x0002ea54 lw gp, 0x10(sp)                                   |     gp = *(var_10h);
                                                                 |     if (v0 == 0) {
    0x0002ea58 beql v0, zero, 0x2e2b8                            |         goto label_10;
                                                                 |     }
    0x0002ea5c move s6, zero                                     |     s6 = 0;
    0x0002ea60 sw s6, (v0)                                       |     *(v0) = s6;
    0x0002ea64 sw zero, 4(v0)                                    |     *((v0 + 1)) = 0;
    0x0002ea68 lw v1, (s3)                                       |     v1 = *(s3);
    0x0002ea6c sw v1, 8(v0)                                      |     *((v0 + 2)) = v1;
    0x0002ea70 sw v0, (s3)                                       |     *(s3) = v0;
                                                                 | label_80:
    0x0002ea74 lw v0, (s3)                                       |     v0 = *(s3);
    0x0002ea78 lw v1, 4(v0)                                      |     v1 = *((v0 + 1));
    0x0002ea7c addiu s6, v1, 0x10                                |     s6 = v1 + 0x10;
    0x0002ea80 addu s6, v0, s6                                   |     s6 = v0 + s6;
    0x0002ea84 addu v1, s4, v1                                   |     v1 = s4 + v1;
    0x0002ea88 sw v1, 4(v0)                                      |     *((v0 + 1)) = v1;
                                                                 |     if (s6 == 0) {
    0x0002ea8c beqz s6, 0x2e2b8                                  |         goto label_10;
                                                                 |     }
                                                                 |     if (s1 == 0) {
    0x0002ea90 beql s1, zero, 0x2e2bc                            |         goto label_28;
                                                                 |     }
    0x0002ea94 sw s6, 0x10(s0)                                   |     *((s0 + 4)) = s6;
    0x0002ea98 move a2, s1                                       |     a2 = s1;
    0x0002ea9c move a1, s5                                       |     a1 = s5;
    0x0002eaa0 move a0, s6                                       |     a0 = s6;
    0x0002eaa4 lw t9, -0x73b4(gp)                                |     t9 = sym.imp.memcpy;
    0x0002eaa8 jalr t9                                           |     t9 ();
    0x0002eaac nop                                               |     
    0x0002eab0 lw gp, 0x10(sp)                                   |     gp = *(var_10h);
    0x0002eab4 sw s6, 0x10(s0)                                   |     *((s0 + 4)) = s6;
    0x0002eab8 b 0x2e2bc                                         |     goto label_28;
                                                                 | label_50:
    0x0002eabc lw t9, -0x74e8(gp)                                |     t9 = sym.imp.__stack_chk_fail;
    0x0002eac0 jalr t9                                           |     t9 ();
    0x0002eac4 nop                                               |     
                                                                 | }
    ; assembly                                                       | /* r2dec pseudo code output */
                                                                     | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/onscreencontrols @ 0x245d4 */
                                                                     | #include <stdint.h>
                                                                     |  
    ; (fcn) method.FeatureConnectCgi.get_locales_abi:cxx11___ ()     | void method_FeatureConnectCgi_get_locales_abi_cxx11_ () {
                                                                     |     /* FeatureConnectCgi::get_locales[abi:cxx11]() */
    0x000245d4 lui gp, 0xb                                           |     
    0x000245d8 addiu gp, gp, -0x6394                                 |     
    0x000245dc addu gp, gp, t9                                       |     gp += t9;
    0x000245e0 addiu sp, sp, -0xc8                                   |     
    0x000245e4 sw ra, 0xc4(sp)                                       |     *(var_c4h) = ra;
    0x000245e8 sw fp, 0xc0(sp)                                       |     *(var_c0h) = fp;
    0x000245ec sw s7, 0xbc(sp)                                       |     *(var_bch) = s7;
    0x000245f0 sw s6, 0xb8(sp)                                       |     *(var_b8h) = s6;
    0x000245f4 sw s5, 0xb4(sp)                                       |     *(var_b4h) = s5;
    0x000245f8 sw s4, 0xb0(sp)                                       |     *(var_b0h) = s4;
    0x000245fc sw s3, 0xac(sp)                                       |     *(var_ach) = s3;
    0x00024600 sw s2, 0xa8(sp)                                       |     *(var_a8h) = s2;
    0x00024604 sw s1, 0xa4(sp)                                       |     *(var_a4h) = s1;
    0x00024608 sw s0, 0xa0(sp)                                       |     *(var_a0h) = s0;
    0x0002460c sw gp, 0x10(sp)                                       |     *(var_10h) = gp;
    0x00024610 move s7, a0                                           |     s7 = a0;
    0x00024614 lw v0, -0x736c(gp)                                    |     v0 = *((gp - 7387));
    0x00024618 lw v0, (v0)                                           |     v0 = *(v0);
    0x0002461c sw v0, 0x9c(sp)                                       |     *(var_9ch) = v0;
    0x00024620 sw zero, 0x28(sp)                                     |     *(var_28h) = 0;
    0x00024624 sw zero, 0x2c(sp)                                     |     *(var_2ch) = 0;
    0x00024628 sw zero, 0x30(sp)                                     |     *(var_30h) = 0;
    0x0002462c sw zero, 0x34(sp)                                     |     *(var_34h) = 0;
    0x00024630 sw zero, 0x38(sp)                                     |     *(var_38h) = 0;
    0x00024634 sw zero, 0x3c(sp)                                     |     *(var_3ch) = 0;
    0x00024638 sw zero, 0x40(sp)                                     |     *(var_40h) = 0;
    0x0002463c sw zero, 0x44(sp)                                     |     *(var_44h) = 0;
    0x00024640 sw zero, 0x48(sp)                                     |     *(var_48h) = 0;
    0x00024644 sw zero, 0x4c(sp)                                     |     *(var_4ch) = 0;
    0x00024648 sw zero, 0x50(sp)                                     |     *(var_50h) = 0;
    0x0002464c addiu v0, zero, 0x400                                 |     v0 = aav.0x00000400;
    0x00024650 sw v0, 0x54(sp)                                       |     *(var_54h) = v0;
    0x00024654 sw zero, 0x58(sp)                                     |     *(var_58h) = 0;
    0x00024658 sw zero, 0x5c(sp)                                     |     *(var_5ch) = 0;
    0x0002465c addiu a0, zero, 0x14                                  |     a0 = 0x14;
    0x00024660 lw t9, -0x7310(gp)                                    |     t9 = *((gp - 7364));
    0x00024664 jalr t9                                               |     t9 ();
    0x00024668 nop                                                   |     
    0x0002466c lw gp, 0x10(sp)                                       |     gp = *(var_10h);
    0x00024670 sw zero, (v0)                                         |     *(v0) = 0;
    0x00024674 lui v1, 1                                             |     v1 = 0x10000;
    0x00024678 sw v1, 4(v0)                                          |     *((v0 + 1)) = v1;
    0x0002467c sw zero, 8(v0)                                        |     *((v0 + 2)) = 0;
    0x00024680 sw zero, 0xc(v0)                                      |     *((v0 + 3)) = 0;
    0x00024684 sw zero, 0x10(v0)                                     |     *((v0 + 4)) = 0;
    0x00024688 sw v0, 0x38(sp)                                       |     *(var_38h) = v0;
    0x0002468c sw v0, 0x3c(sp)                                       |     *(var_3ch) = v0;
    0x00024690 sw zero, (s7)                                         |     *(s7) = 0;
    0x00024694 sw zero, 4(s7)                                        |     *((s7 + 1)) = 0;
    0x00024698 sw zero, 8(s7)                                        |     *((s7 + 2)) = 0;
    0x0002469c lw a1, -0x7f84(gp)                                    |     a1 = *(gp);
    0x000246a0 addiu a1, a1, -0x3bac                                 |     a1 += -0x3bac;
    0x000246a4 lw a0, -0x7fcc(gp)                                    |     a0 = *(gp);
                                                                     |     /* str._etc_onscreencontrols_lang_languages.json */
    0x000246a8 addiu a0, a0, 0x48a8                                  |     a0 += 0x48a8;
    0x000246ac lw t9, -0x7360(gp)                                    |     t9 = sym.imp.fopen;
    0x000246b0 jalr t9                                               |     t9 ();
    0x000246b4 nop                                                   |     
    0x000246b8 lw gp, 0x10(sp)                                       |     gp = *(var_10h);
    0x000246bc move s0, v0                                           |     s0 = v0;
                                                                     |     if (v0 == 0) {
    0x000246c0 beqz v0, 0x24c6c                                      |         goto label_11;
                                                                     |     }
    0x000246c4 move a0, v0                                           |     a0 = v0;
    0x000246c8 lw t9, -0x7e88(gp)                                    |     t9 = *(gp);
    0x000246cc bal 0x2b340                                           |     method ();
    0x000246d0 nop                                                   |     
    0x000246d4 lw gp, 0x10(sp)                                       |     gp = *(var_10h);
    0x000246d8 move s1, v0                                           |     s1 = v0;
    0x000246dc b 0x24724                                             |     
    0x00024724 sw v0, 0x24(sp)                                       |     *(var_24h_2) = v0;
    0x00024728 move a0, s0                                           |     a0 = s0;
    0x0002472c lw t9, -0x7440(gp)                                    |     t9 = sym.imp.fclose;
    0x00024730 jalr t9                                               |     t9 ();
    0x00024734 nop                                                   |     
    0x00024738 lw gp, 0x10(sp)                                       |     gp = *(var_10h);
    0x0002473c move a1, s1                                           |     a1 = s1;
                                                                     |     if (s1 == 0) {
    0x00024740 beqz s1, 0x24c6c                                      |         goto label_11;
                                                                     |     }
    0x00024744 addiu a0, sp, 0x60                                    |     a0 = sp + 0x60;
    0x00024748 lw t9, -0x7e84(gp)                                    |     t9 = *(gp);
    0x0002474c jalr t9                                               |     t9 ();
    0x00024750 nop                                                   |     
    0x00024754 lw gp, 0x10(sp)                                       |     gp = *(var_10h);
    0x00024758 lw v0, 0x60(sp)                                       |     v0 = *(var_60h);
    0x0002475c sw v0, 0x28(sp)                                       |     *(var_28h) = v0;
    0x00024760 lw v0, 0x64(sp)                                       |     v0 = *(var_64h);
    0x00024764 sw v0, 0x2c(sp)                                       |     *(var_2ch) = v0;
    0x00024768 lw v0, 0x68(sp)                                       |     v0 = *(var_68h);
    0x0002476c sw v0, 0x30(sp)                                       |     *(var_30h) = v0;
    0x00024770 lw v0, 0x6c(sp)                                       |     v0 = *(var_6ch);
    0x00024774 sw v0, 0x34(sp)                                       |     *(var_34h) = v0;
    0x00024778 sh zero, 0x6e(sp)                                     |     *(var_6eh) = 0;
    0x0002477c lw s1, 0x3c(sp)                                       |     s1 = *(var_3ch);
    0x00024780 lw v0, 0x70(sp)                                       |     v0 = *(var_70h);
                                                                     |     if (s1 == 0) {
    0x00024784 beqz s1, 0x24800                                      |         goto label_12;
                                                                     |     }
    0x00024788 lw a0, (s1)                                           |     a0 = *(s1);
    0x0002478c addiu a1, zero, 1                                     |     a1 = 1;
                                                                     |     if (a0 == 0) {
    0x00024790 beqz a0, 0x247d0                                      |         goto label_13;
                                                                     |     }
    0x00024794 lw v0, 8(s1)                                          |     v0 = *((s1 + 2));
                                                                     |     if (a0 == v0) {
    0x00024798 beql a0, v0, 0x247d0                                  |         goto label_13;
                                                                     |     }
    0x0002479c sw zero, 4(v0)                                        |     *((v0 + 1)) = 0;
                                                                     |     do {
    0x000247a0 lw s0, 8(a0)                                          |         s0 = *((a0 + 2));
    0x000247a4 lw t9, -0x7518(gp)                                    |         t9 = sym.imp.free;
    0x000247a8 jalr t9                                               |         t9 ();
    0x000247ac nop                                                   |         
    0x000247b0 lw gp, 0x10(sp)                                       |         gp = *(var_10h);
    0x000247b4 sw s0, (s1)                                           |         *(s1) = s0;
                                                                     |         if (s0 == 0) {
    0x000247b8 beqz s0, 0x247cc                                      |             goto label_14;
                                                                     |         }
    0x000247bc lw v0, 8(s1)                                          |         v0 = *((s1 + 2));
    0x000247c0 move a0, s0                                           |         a0 = s0;
    0x000247c4 bne v0, s0, 0x247a0                                   |         
                                                                     |     } while (v0 != s0);
    0x000247c8 sw zero, 4(v0)                                        |     *((v0 + 1)) = 0;
                                                                     | label_14:
    0x000247cc addiu a1, zero, 1                                     |     a1 = 1;
                                                                     | label_13:
    0x000247d0 lw a0, 0x10(s1)                                       |     a0 = *((s1 + 4));
    0x000247d4 lw t9, -0x7404(gp)                                    |     t9 = sym.imp.operator_delete_void__unsigned_int_;
    0x000247d8 jalr t9                                               |     t9 ();
    0x000247dc nop                                                   |     
    0x000247e0 lw gp, 0x10(sp)                                       |     gp = *(var_10h);
    0x000247e4 addiu a1, zero, 0x14                                  |     a1 = 0x14;
    0x000247e8 move a0, s1                                           |     a0 = s1;
    0x000247ec lw t9, -0x7404(gp)                                    |     t9 = sym.imp.operator_delete_void__unsigned_int_;
    0x000247f0 jalr t9                                               |     t9 ();
    0x000247f4 nop                                                   |     
    0x000247f8 lw gp, 0x10(sp)                                       |     gp = *(var_10h);
    0x000247fc lw v0, 0x70(sp)                                       |     v0 = *(var_70h);
                                                                     | label_12:
    0x00024800 sw v0, 0x38(sp)                                       |     *(var_38h) = v0;
    0x00024804 lw v0, 0x74(sp)                                       |     v0 = *(var_74h);
    0x00024808 sw v0, 0x3c(sp)                                       |     *(var_3ch) = v0;
    0x0002480c lw a0, 0x48(sp)                                       |     a0 = *(var_48h);
    0x00024810 lw t9, -0x7518(gp)                                    |     t9 = sym.imp.free;
    0x00024814 jalr t9                                               |     t9 ();
    0x00024818 nop                                                   |     
    0x0002481c lw gp, 0x10(sp)                                       |     gp = *(var_10h);
    0x00024820 addiu a1, zero, 1                                     |     a1 = 1;
    0x00024824 lw a0, 0x44(sp)                                       |     a0 = *(var_44h);
    0x00024828 lw t9, -0x7404(gp)                                    |     t9 = sym.imp.operator_delete_void__unsigned_int_;
    0x0002482c jalr t9                                               |     t9 ();
    0x00024830 nop                                                   |     
    0x00024834 lw gp, 0x10(sp)                                       |     gp = *(var_10h);
    0x00024838 lw v0, 0x78(sp)                                       |     v0 = *(var_78h);
    0x0002483c sw v0, 0x40(sp)                                       |     *(var_40h) = v0;
    0x00024840 lw v0, 0x7c(sp)                                       |     v0 = *(var_7ch);
    0x00024844 sw v0, 0x44(sp)                                       |     *(var_44h) = v0;
    0x00024848 lw v0, 0x80(sp)                                       |     v0 = *(var_80h);
    0x0002484c sw v0, 0x48(sp)                                       |     *(var_48h) = v0;
    0x00024850 lw v0, 0x84(sp)                                       |     v0 = *(var_84h);
    0x00024854 sw v0, 0x4c(sp)                                       |     *(var_4ch) = v0;
    0x00024858 lw v0, 0x88(sp)                                       |     v0 = *(var_88h);
    0x0002485c sw v0, 0x50(sp)                                       |     *(var_50h) = v0;
    0x00024860 lw v0, 0x8c(sp)                                       |     v0 = *(var_8ch);
    0x00024864 sw v0, 0x54(sp)                                       |     *(var_54h) = v0;
    0x00024868 sw zero, 0x78(sp)                                     |     *(var_78h) = 0;
    0x0002486c sw zero, 0x7c(sp)                                     |     *(var_7ch) = 0;
    0x00024870 sw zero, 0x80(sp)                                     |     *(var_80h) = 0;
    0x00024874 sw zero, 0x84(sp)                                     |     *(var_84h) = 0;
    0x00024878 sw zero, 0x88(sp)                                     |     *(var_88h) = 0;
    0x0002487c sw zero, 0x8c(sp)                                     |     *(var_8ch) = 0;
    0x00024880 lw v0, 0x90(sp)                                       |     v0 = *(var_90h);
    0x00024884 sw v0, 0x58(sp)                                       |     *(var_58h) = v0;
    0x00024888 lw v0, 0x94(sp)                                       |     v0 = *(var_94h);
    0x0002488c sw v0, 0x5c(sp)                                       |     *(var_5ch) = v0;
    0x00024890 sw zero, 0x70(sp)                                     |     *(var_70h) = 0;
    0x00024894 sw zero, 0x74(sp)                                     |     *(var_74h) = 0;
    0x00024898 sw zero, 0x90(sp)                                     |     *(var_90h) = 0;
    0x0002489c sw zero, 0x94(sp)                                     |     *(var_94h) = 0;
    0x000248a0 addiu a1, zero, 1                                     |     a1 = 1;
    0x000248a4 move a0, zero                                         |     a0 = 0;
    0x000248a8 lw t9, -0x7404(gp)                                    |     t9 = sym.imp.operator_delete_void__unsigned_int_;
    0x000248ac jalr t9                                               |     t9 ();
    0x000248b0 nop                                                   |     
    0x000248b4 lw gp, 0x10(sp)                                       |     gp = *(var_10h);
    0x000248b8 lhu v1, 0x36(sp)                                      |     v1 = *(var_36h);
    0x000248bc addiu v0, zero, 4                                     |     v0 = 4;
    0x000248c0 lw v0, 0x28(sp)                                       |     v0 = *(var_28h);
                                                                     |     if (v1 == v0) {
    0x000248c4 bne v1, v0, 0x24900                                   |         
    0x000248c8 sll v0, v0, 4                                         |         v0 <<= 4;
    0x000248cc lw s4, 0x30(sp)                                       |         s4 = *(var_30h);
                                                                     |         if (v0 == 0) {
    0x000248d0 beqz v0, 0x24c58                                      |             goto label_15;
                                                                     |         }
    0x000248d4 lhu v1, 0xe(s4)                                       |         v1 = *((s4 + 7));
    0x000248d8 addiu v0, zero, 3                                     |         v0 = 3;
    0x000248dc lw s5, -0x7fcc(gp)                                    |         s5 = *(gp);
                                                                     |         if (v1 != v0) {
    0x000248e0 bne v1, v0, 0x24950                                   |             goto label_16;
                                                                     |         }
                                                                     |         /* str.locale */
    0x000248e4 addiu s5, s5, 0x48e4                                  |         s5 += 0x48e4;
    0x000248e8 move s6, s5                                           |         s6 = s5;
    0x000248ec addiu v0, sp, 0x60                                    |         v0 = sp + 0x60;
    0x000248f0 sw v0, 0x1c(sp)                                       |         *(var_1ch) = v0;
    0x000248f4 lw v0, -0x7f80(gp)                                    |         v0 = *(gp);
    0x000248f8 sw v0, 0x20(sp)                                       |         *(var_20h) = v0;
    0x000248fc b 0x24c00                                             |         goto label_17;
                                                                     |     }
    0x00024900 lw a3, -0x7fcc(gp)                                    |     a3 = *(gp);
                                                                     |     /* esilref: 'rapidjson::GenericValue<Encoding, Allocator>* rapidjson::GenericValue<Encoding, Allocator>::Begin() [with Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; rapidjson::GenericValue<Encoding, Allocator>::ValueIterator =  */
    0x00024904 addiu a3, a3, 0x5330                                  |     a3 += aav.0x00005330;
    0x00024908 addiu a2, zero, 0x639                                 |     a2 = 0x639;
    0x0002490c lw a1, -0x7fcc(gp)                                    |     a1 = *(gp);
                                                                     |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x00024910 addiu a1, a1, 0x2aa8                                  |     a1 += 0x2aa8;
    0x00024914 lw a0, -0x7fcc(gp)                                    |     a0 = *(gp);
                                                                     |     /* str.IsArray__ */
    0x00024918 addiu a0, a0, 0x2bc8                                  |     a0 += aav.0x00002bc8;
    0x0002491c lw t9, -0x7644(gp)                                    |     t9 = sym.imp.__assert_fail;
    0x00024920 jalr t9                                               |     t9 ();
    0x00024924 nop                                                   |     
                                                                     | label_5:
    0x00024928 lw a3, -0x7fcc(gp)                                    |     a3 = *(gp);
                                                                     |     /* esilref: 'rapidjson::GenericValue<Encoding, Allocator>* rapidjson::GenericValue<Encoding, Allocator>::End() [with Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; rapidjson::GenericValue<Encoding, Allocator>::ValueIterator = ra */
    0x0002492c addiu a3, a3, 0x5210                                  |     a3 += aav.0x00005210;
    0x00024930 addiu a2, zero, 0x63c                                 |     a2 = aav.0x0000063c;
    0x00024934 lw a1, -0x7fcc(gp)                                    |     a1 = *(gp);
                                                                     |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x00024938 addiu a1, a1, 0x2aa8                                  |     a1 += 0x2aa8;
    0x0002493c lw a0, -0x7fcc(gp)                                    |     a0 = *(gp);
                                                                     |     /* str.IsArray__ */
    0x00024940 addiu a0, a0, 0x2bc8                                  |     a0 += aav.0x00002bc8;
    0x00024944 lw t9, -0x7644(gp)                                    |     t9 = sym.imp.__assert_fail;
    0x00024948 jalr t9                                               |     t9 ();
    0x0002494c nop                                                   |     
                                                                     | label_16:
    0x00024950 lw a3, -0x7fcc(gp)                                    |     a3 = *(gp);
                                                                     |     /* esilref: 'rapidjson::GenericValue<Encoding, Allocator>::ConstObject rapidjson::GenericValue<Encoding, Allocator>::GetObject() const [with Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; rapidjson::GenericValue<Encoding, Alloca */
                                                                     | label_6:
    0x00024954 addiu a3, a3, 0x4dd8                                  |     a3 += 0x4dd8;
    0x00024958 addiu a2, zero, 0x60b                                 |     a2 = 0x60b;
    0x0002495c lw a1, -0x7fcc(gp)                                    |     a1 = *(gp);
                                                                     |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x00024960 addiu a1, a1, 0x2aa8                                  |     a1 += 0x2aa8;
    0x00024964 lw a0, -0x7fcc(gp)                                    |     a0 = *(gp);
                                                                     |     /* str.IsObject__ */
    0x00024968 addiu a0, a0, 0x2b0c                                  |     a0 += 0x2b0c;
    0x0002496c lw t9, -0x7644(gp)                                    |     t9 = sym.imp.__assert_fail;
    0x00024970 jalr t9                                               |     t9 ();
    0x00024974 nop                                                   |     
                                                                     | label_8:
    0x00024978 lw a3, -0x7fcc(gp)                                    |     a3 = *(gp);
                                                                     |     do {
                                                                     |         /* esilref: 'bool rapidjson::GenericValue<Encoding, Allocator>::StringEqual(const rapidjson::GenericValue<Encoding, SourceAllocator>&) const [with SourceAllocator = rapidjson::MemoryPoolAllocator<>; Encoding = rapidjson::UTF8<>; Allocator = rapidjson::Memor */
    0x0002497c addiu a3, a3, 0x4f30                                  |         a3 += aav.0x00004f30;
    0x00024980 addiu a2, zero, 0x829                                 |         a2 = 0x829;
    0x00024984 lw a1, -0x7fcc(gp)                                    |         a1 = *(gp);
                                                                     |         /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x00024988 addiu a1, a1, 0x2aa8                                  |         a1 += 0x2aa8;
    0x0002498c lw a0, -0x7fcc(gp)                                    |         a0 = *(gp);
                                                                     |         /* str.rhs.IsString__ */
    0x00024990 addiu a0, a0, 0x48d4                                  |         a0 += 0x48d4;
    0x00024994 lw t9, -0x7644(gp)                                    |         t9 = sym.imp.__assert_fail;
    0x00024998 jalr t9                                               |         t9 ();
    0x0002499c nop                                                   |         
                                                                     | label_0:
    0x000249a0 addiu v0, zero, 6                                     |         v0 = 6;
                                                                     |         if (v1 == v0) {
    0x000249a4 beql v1, v0, 0x249e8                                  |             goto label_18;
                                                                     |         }
    0x000249a8 lw a1, 8(s1)                                          |         a1 = *((s1 + 2));
    0x000249ac addiu s1, s1, 0x20                                    |         s1 += 0x20;
                                                                     | label_1:
    0x000249b0 lhu v1, 0x36(sp)                                      |         v1 = *(var_36h);
                                                                     |         if (s1 == s3) {
    0x000249b4 beq s1, s3, 0x24bd0                                   |             goto label_7;
                                                                     |         }
    0x000249b8 lhu v0, 0xe(s1)                                       |         v0 = *((s1 + 7));
    0x000249bc andi v1, v0, 0x400                                    |         v1 = v0 & aav.0x00000400;
    0x000249c0 lw a3, -0x7fcc(gp)                                    |         a3 = *(gp);
    0x000249c4 beqz v1, 0x2497c                                      |         
                                                                     |     } while (v1 == 0);
                                                                     | label_9:
    0x000249c8 andi v0, v0, 0x1000                                   |     v0 &= aav.0x00001000;
                                                                     |     if (v0 == 0) {
    0x000249cc beql v0, zero, 0x249a0                                |         goto label_0;
                                                                     |     }
    0x000249d0 lw v1, (s1)                                           |     v1 = *(s1);
    0x000249d4 lb v0, 0xd(s1)                                        |     v0 = *((s1 + 13));
    0x000249d8 addiu v1, fp, -6                                      |     v1 = fp + -6;
    0x000249dc addiu s1, s1, 0x20                                    |     s1 += 0x20;
                                                                     |     if (v1 == v0) {
    0x000249e0 bnel v1, v0, 0x249b0                                  |         goto label_1;
                                                                     |     }
    0x000249e4 move a1, s1                                           |     a1 = s1;
                                                                     | label_18:
    0x000249e8 addiu a2, zero, 6                                     |     a2 = 6;
                                                                     |     if (a1 == s5) {
    0x000249ec beq a1, s5, 0x24a0c                                   |         goto label_19;
                                                                     |     }
    0x000249f0 move a0, s6                                           |     a0 = s6;
    0x000249f4 lw t9, -0x7448(gp)                                    |     t9 = sym.imp.memcmp;
    0x000249f8 jalr t9                                               |     t9 ();
    0x000249fc nop                                                   |     
    0x00024a00 lw gp, 0x10(sp)                                       |     gp = *(var_10h);
    0x00024a04 addiu s1, s1, 0x20                                    |     s1 += 0x20;
                                                                     |     if (v0 == 0) {
    0x00024a08 bnel v0, zero, 0x249b0                                |         goto label_1;
                                                                     |     }
                                                                     | label_19:
    0x00024a0c addiu s1, zero, 0xd                                   |     s1 = 0xd;
                                                                     |     if (s1 == s3) {
    0x00024a10 beq s1, s3, 0x24bcc                                   |         goto label_20;
                                                                     |     }
    0x00024a14 andi s2, s2, 0x1000                                   |     s2 &= aav.0x00001000;
    0x00024a18 b 0x24a6c                                             |     goto label_21;
                                                                     |     do {
                                                                     |         /* esilref: 'bool rapidjson::GenericValue<Encoding, Allocator>::StringEqual(const rapidjson::GenericValue<Encoding, SourceAllocator>&) const [with SourceAllocator = rapidjson::MemoryPoolAllocator<>; Encoding = rapidjson::UTF8<>; Allocator = rapidjson::Memor */
    0x00024a1c addiu a3, a3, 0x4f30                                  |         a3 += aav.0x00004f30;
    0x00024a20 addiu a2, zero, 0x829                                 |         a2 = 0x829;
    0x00024a24 lw a1, -0x7fcc(gp)                                    |         a1 = *(gp);
                                                                     |         /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x00024a28 addiu a1, a1, 0x2aa8                                  |         a1 += 0x2aa8;
    0x00024a2c lw a0, -0x7fcc(gp)                                    |         a0 = *(gp);
                                                                     |         /* str.rhs.IsString__ */
    0x00024a30 addiu a0, a0, 0x48d4                                  |         a0 += 0x48d4;
    0x00024a34 lw t9, -0x7644(gp)                                    |         t9 = sym.imp.__assert_fail;
    0x00024a38 jalr t9                                               |         t9 ();
    0x00024a3c nop                                                   |         
                                                                     | label_2:
    0x00024a40 addiu v0, zero, 6                                     |         v0 = 6;
                                                                     |         if (v1 == v0) {
    0x00024a44 beql v1, v0, 0x24a88                                  |             goto label_22;
                                                                     |         }
    0x00024a48 lw a1, 8(s0)                                          |         a1 = *((s0 + 2));
    0x00024a4c addiu s0, s0, 0x20                                    |         s0 += 0x20;
                                                                     | label_3:
    0x00024a50 lw a3, -0x7fcc(gp)                                    |         a3 = *(gp);
                                                                     |         if (s0 == s3) {
    0x00024a54 beq s0, s3, 0x24b14                                   |             goto label_23;
                                                                     |         }
    0x00024a58 lhu s2, 0xe(s0)                                       |         s2 = *((s0 + 7));
    0x00024a5c andi v0, s2, 0x400                                    |         v0 = s2 & aav.0x00000400;
    0x00024a60 lw a3, -0x7fcc(gp)                                    |         a3 = *(gp);
    0x00024a64 beqz v0, 0x24a1c                                      |         
                                                                     |     } while (v0 == 0);
    0x00024a68 andi s2, s2, 0x1000                                   |     s2 &= aav.0x00001000;
                                                                     |     if (s2 == 0) {
                                                                     | label_21:
    0x00024a6c beql s2, zero, 0x24a40                                |         goto label_2;
                                                                     |     }
    0x00024a70 lw v1, (s0)                                           |     v1 = *(s0);
    0x00024a74 lb v0, 0xd(s0)                                        |     v0 = *((s0 + 13));
    0x00024a78 addiu v1, s1, -6                                      |     v1 = s1 + -6;
    0x00024a7c addiu s0, s0, 0x20                                    |     s0 += 0x20;
                                                                     |     if (v1 == v0) {
    0x00024a80 bnel v1, v0, 0x24a50                                  |         goto label_3;
                                                                     |     }
    0x00024a84 move a1, s0                                           |     a1 = s0;
                                                                     | label_22:
    0x00024a88 addiu a2, zero, 6                                     |     a2 = 6;
                                                                     |     if (a1 == s5) {
    0x00024a8c beq a1, s5, 0x24aac                                   |         goto label_24;
                                                                     |     }
    0x00024a90 move a0, s6                                           |     a0 = s6;
    0x00024a94 lw t9, -0x7448(gp)                                    |     t9 = sym.imp.memcmp;
    0x00024a98 jalr t9                                               |     t9 ();
    0x00024a9c nop                                                   |     
    0x00024aa0 lw gp, 0x10(sp)                                       |     gp = *(var_10h);
    0x00024aa4 addiu s0, s0, 0x20                                    |     s0 += 0x20;
                                                                     |     if (v0 == 0) {
    0x00024aa8 bnel v0, zero, 0x24a50                                |         goto label_3;
                                                                     |     }
                                                                     | label_24:
    0x00024aac lw a3, -0x7fcc(gp)                                    |     a3 = *(gp);
                                                                     |     if (s0 == s3) {
    0x00024ab0 beq s0, s3, 0x24b14                                   |         goto label_23;
                                                                     |     }
    0x00024ab4 lhu v0, 0x1e(s0)                                      |     v0 = *((s0 + 15));
    0x00024ab8 andi v1, v0, 0x400                                    |     v1 = v0 & aav.0x00000400;
    0x00024abc andi v0, v0, 0x1000                                   |     v0 &= aav.0x00001000;
                                                                     |     if (v1 == 0) {
    0x00024ac0 beqz v1, 0x24b38                                      |         goto label_25;
                                                                     |     }
                                                                     |     if (v0 == 0) {
    0x00024ac4 beql v0, zero, 0x24b60                                |         goto label_26;
                                                                     |     }
    0x00024ac8 lw s0, 0x18(s0)                                       |     s0 = *((s0 + 6));
    0x00024acc addiu s0, s0, 0x10                                    |     s0 += 0x10;
    0x00024ad0 addiu v0, sp, 0x68                                    |     v0 = sp + 0x68;
    0x00024ad4 sw v0, 0x60(sp)                                       |     *(var_60h) = v0;
                                                                     |     do {
    0x00024ad8 move a0, s0                                           |         a0 = s0;
    0x00024adc lw t9, -0x73cc(gp)                                    |         t9 = sym.imp.strlen;
    0x00024ae0 jalr t9                                               |         t9 ();
    0x00024ae4 nop                                                   |         
    0x00024ae8 lw gp, 0x10(sp)                                       |         gp = *(var_10h);
    0x00024aec addu a2, s0, v0                                       |         a2 = s0 + v0;
                                                                     | label_4:
    0x00024af0 move a3, zero                                         |         a3 = 0;
    0x00024af4 move a1, s0                                           |         a1 = s0;
    0x00024af8 lw a0, 0x1c(sp)                                       |         a0 = *(var_1ch);
    0x00024afc lw t9, 0x20(sp)                                       |         t9 = *(var_20h);
    0x00024b00 jalr t9                                               |         t9 ();
    0x00024b04 nop                                                   |         
    0x00024b08 lw gp, 0x10(sp)                                       |         gp = *(var_10h);
    0x00024b0c lw a0, 4(s7)                                          |         a0 = *((s7 + 1));
    0x00024b10 b 0x24b74                                             |         goto label_27;
                                                                     |         /* esilref: 'rapidjson::GenericValue<Encoding, Allocator>& rapidjson::GenericValue<Encoding, Allocator>::operator[](const rapidjson::GenericValue<Encoding, SourceAllocator>&) [with SourceAllocator = rapidjson::MemoryPoolAllocator<>; Encoding = rapidjson::UT */
                                                                     | label_23:
    0x00024b14 addiu a3, a3, 0x4cb0                                  |         a3 += 0x4cb0;
    0x00024b18 addiu a2, zero, 0x46f                                 |         a2 = 0x46f;
    0x00024b1c lw a1, -0x7fcc(gp)                                    |         a1 = *(gp);
                                                                     |         /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x00024b20 addiu a1, a1, 0x2aa8                                  |         a1 += 0x2aa8;
    0x00024b24 lw a0, -0x7fcc(gp)                                    |         a0 = *(gp);
                                                                     |         /* str.false */
    0x00024b28 addiu a0, a0, 0x48ec                                  |         a0 += 0x48ec;
    0x00024b2c lw t9, -0x7644(gp)                                    |         t9 = sym.imp.__assert_fail;
    0x00024b30 jalr t9                                               |         t9 ();
    0x00024b34 nop                                                   |         
                                                                     | label_25:
    0x00024b38 lw a3, -0x7fcc(gp)                                    |         a3 = *(gp);
                                                                     |         /* esilref: 'const Ch* rapidjson::GenericValue<Encoding, Allocator>::GetString() const [with Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; rapidjson::GenericValue<Encoding, Allocator>::Ch = char]' */
    0x00024b3c addiu a3, a3, 0x4bd8                                  |         a3 += 0x4bd8;
    0x00024b40 addiu a2, zero, 0x6e9                                 |         a2 = 0x6e9;
    0x00024b44 lw a1, -0x7fcc(gp)                                    |         a1 = *(gp);
                                                                     |         /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x00024b48 addiu a1, a1, 0x2aa8                                  |         a1 += 0x2aa8;
    0x00024b4c lw a0, -0x7fcc(gp)                                    |         a0 = *(gp);
                                                                     |         /* esilref: 'IsString()' */
    0x00024b50 addiu a0, a0, 0x2b20                                  |         a0 += 0x2b20;
    0x00024b54 lw t9, -0x7644(gp)                                    |         t9 = sym.imp.__assert_fail;
    0x00024b58 jalr t9                                               |         t9 ();
    0x00024b5c nop                                                   |         
                                                                     | label_26:
    0x00024b60 addiu v0, sp, 0x68                                    |         v0 = sp + 0x68;
    0x00024b64 sw v0, 0x60(sp)                                       |         *(var_60h) = v0;
    0x00024b68 bnez s0, 0x24ad8                                      |         
                                                                     |     } while (s0 != 0);
    0x00024b6c addiu a2, zero, -1                                    |     a2 = -1;
    0x00024b70 b 0x24af0                                             |     goto label_4;
                                                                     | label_27:
    0x00024b74 lw v0, 8(s7)                                          |     v0 = *((s7 + 2));
    0x00024b78 addiu v0, a0, 8                                       |     v0 = a0 + 8;
                                                                     |     if (a0 == v0) {
    0x00024b7c beq a0, v0, 0x24c34                                   |         goto label_28;
                                                                     |     }
    0x00024b80 sw v0, (a0)                                           |     *(a0) = v0;
    0x00024b84 lw a1, 0x60(sp)                                       |     a1 = *(var_60h);
    0x00024b88 move a3, zero                                         |     a3 = 0;
    0x00024b8c lw a2, 0x64(sp)                                       |     a2 = *(var_64h);
    0x00024b90 addu a2, a1, a2                                       |     a2 = a1 + a2;
    0x00024b94 lw t9, -0x7fb8(gp)                                    |     t9 = *(gp);
    0x00024b98 bal 0x1e3f4                                           |     method ();
    0x00024b9c nop                                                   |     
    0x00024ba0 lw gp, 0x10(sp)                                       |     gp = *(var_10h);
    0x00024ba4 lw v0, 4(s7)                                          |     v0 = *((s7 + 1));
    0x00024ba8 addiu v0, v0, 0x18                                    |     v0 += 0x18;
    0x00024bac sw v0, 4(s7)                                          |     *((s7 + 1)) = v0;
    0x00024bb0 lw a0, 0x60(sp)                                       |     a0 = *(var_60h);
                                                                     | label_10:
    0x00024bb4 addiu v0, sp, 0x68                                    |     v0 = sp + 0x68;
    0x00024bb8 lw t9, -0x7488(gp)                                    |     t9 = *((gp - 7458));
                                                                     |     if (a0 != v0) {
    0x00024bbc beq a0, v0, 0x24bcc                                   |         
    0x00024bc0 jalr t9                                               |         t9 ();
    0x00024bc4 nop                                                   |         
    0x00024bc8 lw gp, 0x10(sp)                                       |         gp = *(var_10h);
                                                                     |     }
                                                                     | label_20:
    0x00024bcc lhu v1, 0x36(sp)                                      |     v1 = *(var_36h);
                                                                     | label_7:
    0x00024bd0 addiu v0, zero, 4                                     |     v0 = 4;
    0x00024bd4 addiu s4, s4, 0x10                                    |     s4 += 0x10;
                                                                     |     if (v1 != v0) {
    0x00024bd8 bne v1, v0, 0x24928                                   |         goto label_5;
                                                                     |     }
    0x00024bdc lw v0, 0x28(sp)                                       |     v0 = *(var_28h);
    0x00024be0 sll v1, v0, 4                                         |     v1 = v0 << 4;
    0x00024be4 lw v0, 0x30(sp)                                       |     v0 = *(var_30h);
    0x00024be8 addu v0, v0, v1                                       |     v0 += v1;
    0x00024bec addiu v0, zero, 3                                     |     v0 = 3;
                                                                     |     if (s4 == v0) {
    0x00024bf0 beq s4, v0, 0x24c58                                   |         goto label_15;
                                                                     |     }
    0x00024bf4 lhu v1, 0xe(s4)                                       |     v1 = *((s4 + 7));
    0x00024bf8 lw a3, -0x7fcc(gp)                                    |     a3 = *(gp);
                                                                     |     if (v1 != v0) {
    0x00024bfc bne v1, v0, 0x24954                                   |         goto label_6;
                                                                     |     }
                                                                     | label_17:
    0x00024c00 lw s0, 8(s4)                                          |     s0 = *((s4 + 2));
    0x00024c04 lw s3, (s4)                                           |     s3 = *(s4);
    0x00024c08 sll s3, s3, 5                                         |     s3 <<= 5;
    0x00024c0c addu s3, s0, s3                                       |     s3 = s0 + s3;
    0x00024c10 lhu v1, 0x36(sp)                                      |     v1 = *(var_36h);
                                                                     |     if (s0 == s3) {
    0x00024c14 beq s0, s3, 0x24bd0                                   |         goto label_7;
                                                                     |     }
    0x00024c18 lhu s2, 0xe(s0)                                       |     s2 = *((s0 + 7));
    0x00024c1c andi v0, s2, 0x400                                    |     v0 = s2 & aav.0x00000400;
    0x00024c20 move v0, s2                                           |     v0 = s2;
                                                                     |     if (v0 == 0) {
    0x00024c24 beqz v0, 0x24978                                      |         goto label_8;
                                                                     |     }
    0x00024c28 move s1, s0                                           |     s1 = s0;
    0x00024c2c addiu fp, zero, 0xd                                   |     fp = 0xd;
    0x00024c30 b 0x249c8                                             |     goto label_9;
                                                                     | label_28:
    0x00024c34 lw a2, 0x1c(sp)                                       |     a2 = *(var_1ch);
    0x00024c38 move a1, a0                                           |     a1 = a0;
    0x00024c3c move a0, s7                                           |     a0 = s7;
    0x00024c40 lw t9, -0x7e80(gp)                                    |     t9 = *(gp);
    0x00024c44 bal 0x2a8e8                                           |     method ();
    0x00024c48 nop                                                   |     
    0x00024c4c lw gp, 0x10(sp)                                       |     gp = *(var_10h);
    0x00024c50 lw a0, 0x60(sp)                                       |     a0 = *(var_60h);
    0x00024c54 b 0x24bb4                                             |     goto label_10;
                                                                     | label_15:
    0x00024c58 lw a0, 0x24(sp)                                       |     a0 = *(var_24h_2);
    0x00024c5c lw t9, -0x7518(gp)                                    |     t9 = sym.imp.free;
    0x00024c60 jalr t9                                               |     t9 ();
    0x00024c64 nop                                                   |     
    0x00024c68 lw gp, 0x10(sp)                                       |     gp = *(var_10h);
                                                                     | label_11:
    0x00024c6c lw s1, 0x3c(sp)                                       |     s1 = *(var_3ch);
    0x00024c70 lw a0, 0x48(sp)                                       |     a0 = *(var_48h);
                                                                     |     if (s1 == 0) {
    0x00024c74 beqz s1, 0x24cf0                                      |         goto label_29;
                                                                     |     }
    0x00024c78 lw a0, (s1)                                           |     a0 = *(s1);
    0x00024c7c addiu a1, zero, 1                                     |     a1 = 1;
                                                                     |     if (a0 == 0) {
    0x00024c80 beqz a0, 0x24cc0                                      |         goto label_30;
                                                                     |     }
    0x00024c84 lw v0, 8(s1)                                          |     v0 = *((s1 + 2));
                                                                     |     if (a0 == v0) {
    0x00024c88 beql a0, v0, 0x24cc0                                  |         goto label_30;
                                                                     |     }
    0x00024c8c sw zero, 4(v0)                                        |     *((v0 + 1)) = 0;
                                                                     |     do {
    0x00024c90 lw s0, 8(a0)                                          |         s0 = *((a0 + 2));
    0x00024c94 lw t9, -0x7518(gp)                                    |         t9 = sym.imp.free;
    0x00024c98 jalr t9                                               |         t9 ();
    0x00024c9c nop                                                   |         
    0x00024ca0 lw gp, 0x10(sp)                                       |         gp = *(var_10h);
    0x00024ca4 sw s0, (s1)                                           |         *(s1) = s0;
                                                                     |         if (s0 == 0) {
    0x00024ca8 beqz s0, 0x24cbc                                      |             goto label_31;
                                                                     |         }
    0x00024cac lw v0, 8(s1)                                          |         v0 = *((s1 + 2));
    0x00024cb0 move a0, s0                                           |         a0 = s0;
    0x00024cb4 bne v0, s0, 0x24c90                                   |         
                                                                     |     } while (v0 != s0);
    0x00024cb8 sw zero, 4(v0)                                        |     *((v0 + 1)) = 0;
                                                                     | label_31:
    0x00024cbc addiu a1, zero, 1                                     |     a1 = 1;
                                                                     | label_30:
    0x00024cc0 lw a0, 0x10(s1)                                       |     a0 = *((s1 + 4));
    0x00024cc4 lw t9, -0x7404(gp)                                    |     t9 = sym.imp.operator_delete_void__unsigned_int_;
    0x00024cc8 jalr t9                                               |     t9 ();
    0x00024ccc nop                                                   |     
    0x00024cd0 lw gp, 0x10(sp)                                       |     gp = *(var_10h);
    0x00024cd4 addiu a1, zero, 0x14                                  |     a1 = 0x14;
    0x00024cd8 move a0, s1                                           |     a0 = s1;
    0x00024cdc lw t9, -0x7404(gp)                                    |     t9 = sym.imp.operator_delete_void__unsigned_int_;
    0x00024ce0 jalr t9                                               |     t9 ();
    0x00024ce4 nop                                                   |     
    0x00024ce8 lw gp, 0x10(sp)                                       |     gp = *(var_10h);
    0x00024cec lw a0, 0x48(sp)                                       |     a0 = *(var_48h);
                                                                     | label_29:
    0x00024cf0 lw t9, -0x7518(gp)                                    |     t9 = sym.imp.free;
    0x00024cf4 jalr t9                                               |     t9 ();
    0x00024cf8 nop                                                   |     
    0x00024cfc lw gp, 0x10(sp)                                       |     gp = *(var_10h);
    0x00024d00 addiu a1, zero, 1                                     |     a1 = 1;
    0x00024d04 lw a0, 0x44(sp)                                       |     a0 = *(var_44h);
    0x00024d08 lw t9, -0x7404(gp)                                    |     t9 = sym.imp.operator_delete_void__unsigned_int_;
    0x00024d0c jalr t9                                               |     t9 ();
    0x00024d10 nop                                                   |     
    0x00024d14 lw gp, 0x10(sp)                                       |     gp = *(var_10h);
    0x00024d18 move v0, s7                                           |     v0 = s7;
    0x00024d1c lw a0, 0x9c(sp)                                       |     a0 = *(var_9ch);
    0x00024d20 lw v1, -0x736c(gp)                                    |     v1 = *((gp - 7387));
    0x00024d24 lw v1, (v1)                                           |     v1 = *(v1);
    0x00024d28 lw ra, 0xc4(sp)                                       |     ra = *(var_c4h);
                                                                     |     if (a0 == v1) {
    0x00024d2c bne a0, v1, 0x24e30                                   |         
    0x00024d30 lw fp, 0xc0(sp)                                       |         fp = *(var_c0h);
    0x00024d34 lw s7, 0xbc(sp)                                       |         s7 = *(var_bch);
    0x00024d38 lw s6, 0xb8(sp)                                       |         s6 = *(var_b8h);
    0x00024d3c lw s5, 0xb4(sp)                                       |         s5 = *(var_b4h);
    0x00024d40 lw s4, 0xb0(sp)                                       |         s4 = *(var_b0h);
    0x00024d44 lw s3, 0xac(sp)                                       |         s3 = *(var_ach);
    0x00024d48 lw s2, 0xa8(sp)                                       |         s2 = *(var_a8h);
    0x00024d4c lw s1, 0xa4(sp)                                       |         s1 = *(var_a4h);
    0x00024d50 lw s0, 0xa0(sp)                                       |         s0 = *(var_a0h);
    0x00024d54 addiu sp, sp, 0xc8                                    |         
    0x00024d58 jr ra                                                 |         return v1;
                                                                     |     }
    0x00024e30 lw t9, -0x74e8(gp)                                    |     t9 = sym.imp.__stack_chk_fail;
    0x00024e34 jalr t9                                               |     t9 ();
    0x00024e38 nop                                                   |     
                                                                     | }
    ; assembly                                                       | /* r2dec pseudo code output */
                                                                     | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/onscreencontrols @ 0x32d80 */
                                                                     | #include <stdint.h>
                                                                     |  
    ; (fcn) method.GetAllFeaturesCgiResponse.updateLocales__ ()      | void method_GetAllFeaturesCgiResponse_updateLocales_ () {
                                                                     |     /* GetAllFeaturesCgiResponse::updateLocales() */
    0x00032d80 lui gp, 0xa                                           |     
    0x00032d84 addiu gp, gp, -0x4b40                                 |     
    0x00032d88 addu gp, gp, t9                                       |     gp += t9;
    0x00032d8c addiu sp, sp, -0xb8                                   |     
    0x00032d90 sw ra, 0xb4(sp)                                       |     *(var_b4h) = ra;
    0x00032d94 sw fp, 0xb0(sp)                                       |     *(var_b0h) = fp;
    0x00032d98 sw s7, 0xac(sp)                                       |     *(var_ach) = s7;
    0x00032d9c sw s6, 0xa8(sp)                                       |     *(var_a8h) = s6;
    0x00032da0 sw s5, 0xa4(sp)                                       |     *(var_a4h) = s5;
    0x00032da4 sw s4, 0xa0(sp)                                       |     *(var_a0h) = s4;
    0x00032da8 sw s3, 0x9c(sp)                                       |     *(var_9ch) = s3;
    0x00032dac sw s2, 0x98(sp)                                       |     *(var_98h) = s2;
    0x00032db0 sw s1, 0x94(sp)                                       |     *(var_94h) = s1;
    0x00032db4 sw s0, 0x90(sp)                                       |     *(var_90h) = s0;
    0x00032db8 sw gp, 0x18(sp)                                       |     *(var_18h) = gp;
    0x00032dbc move s5, a0                                           |     s5 = a0;
    0x00032dc0 lw v0, -0x736c(gp)                                    |     v0 = *((gp - 7387));
    0x00032dc4 lw v0, (v0)                                           |     v0 = *(v0);
    0x00032dc8 sw v0, 0x8c(sp)                                       |     *(var_8ch) = v0;
    0x00032dcc lw a1, -0x7f84(gp)                                    |     a1 = *(gp);
    0x00032dd0 addiu a1, a1, -0x3bac                                 |     a1 += -0x3bac;
    0x00032dd4 lw a0, -0x7fcc(gp)                                    |     a0 = *(gp);
                                                                     |     /* str._etc_onscreencontrols_postinst_post_added_features.json */
    0x00032dd8 addiu a0, a0, 0x7b94                                  |     a0 += 0x7b94;
    0x00032ddc lw t9, -0x7360(gp)                                    |     t9 = sym.imp.fopen;
    0x00032de0 jalr t9                                               |     t9 ();
    0x00032de4 nop                                                   |     
    0x00032de8 lw gp, 0x18(sp)                                       |     gp = *(var_18h);
    0x00032dec sw v0, 0x28(sp)                                       |     *(var_28h) = v0;
                                                                     |     if (v0 == 0) {
    0x00032df0 beqz v0, 0x33490                                      |         goto label_14;
                                                                     |     }
    0x00032df4 move s0, v0                                           |     s0 = v0;
    0x00032df8 move a0, v0                                           |     a0 = v0;
    0x00032dfc lw t9, -0x7e88(gp)                                    |     t9 = *(gp);
    0x00032e00 bal 0x2b340                                           |     method ();
    0x00032e04 nop                                                   |     
    0x00032e08 lw gp, 0x18(sp)                                       |     gp = *(var_18h);
    0x00032e0c sw v0, 0x24(sp)                                       |     *(var_24h_2) = v0;
    0x00032e10 move a0, s0                                           |     a0 = s0;
    0x00032e14 lw t9, -0x7440(gp)                                    |     t9 = sym.imp.fclose;
    0x00032e18 jalr t9                                               |     t9 ();
    0x00032e1c nop                                                   |     
    0x00032e20 lw gp, 0x18(sp)                                       |     gp = *(var_18h);
    0x00032e24 lw v0, 0x24(sp)                                       |     v0 = *(var_24h_2);
    0x00032e28 b 0x32e48                                             |     
    0x00032e48 move a1, v0                                           |     a1 = v0;
                                                                     |     if (v0 == 0) {
    0x00032e4c beqz v0, 0x33490                                      |         goto label_14;
                                                                     |     }
    0x00032e50 addiu a0, sp, 0x50                                    |     a0 = sp + 0x50;
    0x00032e54 lw t9, -0x7e84(gp)                                    |     t9 = *(gp);
    0x00032e58 jalr t9                                               |     t9 ();
    0x00032e5c nop                                                   |     
    0x00032e60 lw gp, 0x18(sp)                                       |     gp = *(var_18h);
    0x00032e64 lhu v1, 0x5e(sp)                                      |     v1 = *(var_5eh);
    0x00032e68 addiu v0, zero, 4                                     |     v0 = 4;
    0x00032e6c lw v0, 0x50(sp)                                       |     v0 = *(var_50h);
                                                                     |     if (v1 == v0) {
    0x00032e70 bne v1, v0, 0x32ea4                                   |         
    0x00032e74 sll v0, v0, 4                                         |         v0 <<= 4;
    0x00032e78 lw fp, 0x58(sp)                                       |         fp = *(var_58h);
                                                                     |         if (v0 == 0) {
    0x00032e7c beqz v0, 0x333d0                                      |             goto label_15;
                                                                     |         }
    0x00032e80 lhu v1, 0xe(fp)                                       |         v1 = *(arg_eh);
    0x00032e84 addiu v0, zero, 3                                     |         v0 = 3;
    0x00032e88 lw v0, -0x7fcc(gp)                                    |         v0 = *(gp);
                                                                     |         if (v1 != v0) {
    0x00032e8c bne v1, v0, 0x32ef4                                   |             goto label_16;
                                                                     |         }
    0x00032e90 sw v0, 0x20(sp)                                       |         *(var_20h_2) = v0;
    0x00032e94 lw s6, -0x7fcc(gp)                                    |         s6 = *(gp);
                                                                     |         /* str.locale */
    0x00032e98 addiu s6, s6, 0x48e4                                  |         s6 += 0x48e4;
    0x00032e9c move s7, s6                                           |         s7 = s6;
    0x00032ea0 b 0x3339c                                             |         goto label_17;
                                                                     |     }
    0x00032ea4 lw a3, -0x7f84(gp)                                    |     a3 = *(gp);
                                                                     |     /* esilref: 'rapidjson::GenericValue<Encoding, Allocator>* rapidjson::GenericValue<Encoding, Allocator>::Begin() [with Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; rapidjson::GenericValue<Encoding, Allocator>::ValueIterator =  */
    0x00032ea8 addiu a3, a3, -0x6b08                                 |     a3 += -0x6b08;
    0x00032eac addiu a2, zero, 0x639                                 |     a2 = 0x639;
    0x00032eb0 lw a1, -0x7fcc(gp)                                    |     a1 = *(gp);
                                                                     |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x00032eb4 addiu a1, a1, 0x2aa8                                  |     a1 += 0x2aa8;
    0x00032eb8 lw a0, -0x7fcc(gp)                                    |     a0 = *(gp);
                                                                     |     /* str.IsArray__ */
    0x00032ebc addiu a0, a0, 0x2bc8                                  |     a0 += aav.0x00002bc8;
    0x00032ec0 lw t9, -0x7644(gp)                                    |     t9 = sym.imp.__assert_fail;
    0x00032ec4 jalr t9                                               |     t9 ();
    0x00032ec8 nop                                                   |     
                                                                     | label_9:
    0x00032ecc lw a3, -0x7f84(gp)                                    |     a3 = *(gp);
                                                                     |     /* esilref: 'rapidjson::GenericValue<Encoding, Allocator>* rapidjson::GenericValue<Encoding, Allocator>::End() [with Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; rapidjson::GenericValue<Encoding, Allocator>::ValueIterator = ra */
    0x00032ed0 addiu a3, a3, -0x6c28                                 |     a3 += -0x6c28;
    0x00032ed4 addiu a2, zero, 0x63c                                 |     a2 = aav.0x0000063c;
    0x00032ed8 lw a1, -0x7fcc(gp)                                    |     a1 = *(gp);
                                                                     |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x00032edc addiu a1, a1, 0x2aa8                                  |     a1 += 0x2aa8;
    0x00032ee0 lw a0, -0x7fcc(gp)                                    |     a0 = *(gp);
                                                                     |     /* str.IsArray__ */
    0x00032ee4 addiu a0, a0, 0x2bc8                                  |     a0 += aav.0x00002bc8;
    0x00032ee8 lw t9, -0x7644(gp)                                    |     t9 = sym.imp.__assert_fail;
    0x00032eec jalr t9                                               |     t9 ();
    0x00032ef0 nop                                                   |     
                                                                     | label_16:
    0x00032ef4 lw a3, -0x7f84(gp)                                    |     a3 = *(gp);
                                                                     |     /* esilref: 'rapidjson::GenericValue<Encoding, Allocator>::MemberIterator rapidjson::GenericValue<Encoding, Allocator>::FindMember(const rapidjson::GenericValue<Encoding, SourceAllocator>&) [with SourceAllocator = rapidjson::MemoryPoolAllocator<>; Encoding  */
                                                                     | label_10:
    0x00032ef8 addiu a3, a3, -0x6fc0                                 |     a3 += -0x6fc0;
    0x00032efc addiu a2, zero, 0x4e3                                 |     a2 = 0x4e3;
    0x00032f00 lw a1, -0x7fcc(gp)                                    |     a1 = *(gp);
                                                                     |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x00032f04 addiu a1, a1, 0x2aa8                                  |     a1 += 0x2aa8;
    0x00032f08 lw a0, -0x7fcc(gp)                                    |     a0 = *(gp);
                                                                     |     /* str.IsObject__ */
    0x00032f0c addiu a0, a0, 0x2b0c                                  |     a0 += 0x2b0c;
    0x00032f10 lw t9, -0x7644(gp)                                    |     t9 = sym.imp.__assert_fail;
    0x00032f14 jalr t9                                               |     t9 ();
    0x00032f18 nop                                                   |     
                                                                     | label_12:
    0x00032f1c lw a3, -0x7f84(gp)                                    |     a3 = *(gp);
                                                                     |     do {
                                                                     |         /* esilref: 'bool rapidjson::GenericValue<Encoding, Allocator>::StringEqual(const rapidjson::GenericValue<Encoding, SourceAllocator>&) const [with SourceAllocator = rapidjson::MemoryPoolAllocator<>; Encoding = rapidjson::UTF8<>; Allocator = rapidjson::Memor */
    0x00032f20 addiu a3, a3, -0x70c8                                 |         a3 += -0x70c8;
    0x00032f24 addiu a2, zero, 0x829                                 |         a2 = 0x829;
    0x00032f28 lw a1, -0x7fcc(gp)                                    |         a1 = *(gp);
                                                                     |         /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x00032f2c addiu a1, a1, 0x2aa8                                  |         a1 += 0x2aa8;
    0x00032f30 lw a0, -0x7fcc(gp)                                    |         a0 = *(gp);
                                                                     |         /* str.rhs.IsString__ */
    0x00032f34 addiu a0, a0, 0x48d4                                  |         a0 += 0x48d4;
    0x00032f38 lw t9, -0x7644(gp)                                    |         t9 = sym.imp.__assert_fail;
    0x00032f3c jalr t9                                               |         t9 ();
    0x00032f40 nop                                                   |         
                                                                     | label_0:
    0x00032f44 addiu v0, zero, 7                                     |         v0 = 7;
                                                                     |         if (v1 == v0) {
    0x00032f48 beql v1, v0, 0x32f8c                                  |             goto label_18;
                                                                     |         }
    0x00032f4c lw a1, 8(s2)                                          |         a1 = *((s2 + 2));
    0x00032f50 addiu s2, s2, 0x20                                    |         s2 += 0x20;
                                                                     | label_1:
    0x00032f54 lw a3, -0x7f84(gp)                                    |         a3 = *(gp);
                                                                     |         if (s2 == s0) {
    0x00032f58 beq s2, s0, 0x32ff0                                   |             goto label_11;
                                                                     |         }
    0x00032f5c lhu v0, 0xe(s2)                                       |         v0 = *((s2 + 7));
    0x00032f60 andi v1, v0, 0x400                                    |         v1 = v0 & aav.0x00000400;
    0x00032f64 lw a3, -0x7f84(gp)                                    |         a3 = *(gp);
    0x00032f68 beqz v1, 0x32f20                                      |         
                                                                     |     } while (v1 == 0);
                                                                     | label_13:
    0x00032f6c andi v0, v0, 0x1000                                   |     v0 &= aav.0x00001000;
                                                                     |     if (v0 == 0) {
    0x00032f70 beql v0, zero, 0x32f44                                |         goto label_0;
                                                                     |     }
    0x00032f74 lw v1, (s2)                                           |     v1 = *(s2);
    0x00032f78 lb v0, 0xd(s2)                                        |     v0 = *((s2 + 13));
    0x00032f7c addiu v1, s3, -7                                      |     v1 = s3 + -7;
    0x00032f80 addiu s2, s2, 0x20                                    |     s2 += 0x20;
                                                                     |     if (v1 == v0) {
    0x00032f84 bnel v1, v0, 0x32f54                                  |         goto label_1;
                                                                     |     }
    0x00032f88 move a1, s2                                           |     a1 = s2;
                                                                     | label_18:
    0x00032f8c addiu a2, zero, 7                                     |     a2 = 7;
                                                                     |     if (a1 == s1) {
    0x00032f90 beq a1, s1, 0x32fb0                                   |         goto label_19;
                                                                     |     }
    0x00032f94 move a0, s1                                           |     a0 = s1;
    0x00032f98 lw t9, -0x7448(gp)                                    |     t9 = sym.imp.memcmp;
    0x00032f9c jalr t9                                               |     t9 ();
    0x00032fa0 nop                                                   |     
    0x00032fa4 lw gp, 0x18(sp)                                       |     gp = *(var_18h);
    0x00032fa8 addiu s2, s2, 0x20                                    |     s2 += 0x20;
                                                                     |     if (v0 == 0) {
    0x00032fac bnel v0, zero, 0x32f54                                |         goto label_1;
                                                                     |     }
                                                                     | label_19:
    0x00032fb0 addiu v0, zero, 4                                     |     v0 = 4;
                                                                     |     if (s2 != s0) {
    0x00032fb4 beq s2, s0, 0x32fec                                   |         
    0x00032fb8 lhu v1, 0x1e(s2)                                      |         v1 = *((s2 + 15));
    0x00032fbc lw a3, -0x7f84(gp)                                    |         a3 = *(gp);
                                                                     |         if (v1 != v0) {
    0x00032fc0 bne v1, v0, 0x33014                                   |             goto label_20;
                                                                     |         }
    0x00032fc4 lw v0, 0x10(s2)                                       |         v0 = *((s2 + 4));
    0x00032fc8 sll v0, v0, 4                                         |         v0 <<= 4;
    0x00032fcc lw s3, 0x18(s2)                                       |         s3 = *((s2 + 6));
                                                                     |         if (v0 == 0) {
    0x00032fd0 beqz v0, 0x33368                                      |             goto label_21;
                                                                     |         }
    0x00032fd4 lhu v1, 0xe(s3)                                       |         v1 = *((s3 + 7));
    0x00032fd8 addiu v0, zero, 3                                     |         v0 = 3;
    0x00032fdc addiu s4, zero, 0xd                                   |         s4 = 0xd;
                                                                     |         if (v1 != v0) {
    0x00032fe0 bne v1, v0, 0x33060                                   |             goto label_22;
                                                                     |         }
    0x00032fe4 lw s0, 8(s3)                                          |         s0 = *((s3 + 2));
    0x00032fe8 b 0x33188                                             |         goto label_23;
                                                                     |     }
    0x00032fec lw a3, -0x7f84(gp)                                    |     a3 = *(gp);
                                                                     |     /* esilref: 'rapidjson::GenericValue<Encoding, Allocator>& rapidjson::GenericValue<Encoding, Allocator>::operator[](const rapidjson::GenericValue<Encoding, SourceAllocator>&) [with SourceAllocator = rapidjson::MemoryPoolAllocator<>; Encoding = rapidjson::UT */
                                                                     | label_11:
    0x00032ff0 addiu a3, a3, -0x6de8                                 |     a3 += -0x6de8;
    0x00032ff4 addiu a2, zero, 0x46f                                 |     a2 = 0x46f;
    0x00032ff8 lw a1, -0x7fcc(gp)                                    |     a1 = *(gp);
                                                                     |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x00032ffc addiu a1, a1, 0x2aa8                                  |     a1 += 0x2aa8;
    0x00033000 lw a0, -0x7fcc(gp)                                    |     a0 = *(gp);
                                                                     |     /* str.false */
    0x00033004 addiu a0, a0, 0x48ec                                  |     a0 += 0x48ec;
    0x00033008 lw t9, -0x7644(gp)                                    |     t9 = sym.imp.__assert_fail;
    0x0003300c jalr t9                                               |     t9 ();
    0x00033010 nop                                                   |     
                                                                     | label_20:
    0x00033014 addiu a3, a3, -0x6b08                                 |     a3 += -0x6b08;
    0x00033018 addiu a2, zero, 0x639                                 |     a2 = 0x639;
    0x0003301c lw a1, -0x7fcc(gp)                                    |     a1 = *(gp);
                                                                     |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x00033020 addiu a1, a1, 0x2aa8                                  |     a1 += 0x2aa8;
    0x00033024 lw a0, -0x7fcc(gp)                                    |     a0 = *(gp);
                                                                     |     /* str.IsArray__ */
    0x00033028 addiu a0, a0, 0x2bc8                                  |     a0 += aav.0x00002bc8;
    0x0003302c lw t9, -0x7644(gp)                                    |     t9 = sym.imp.__assert_fail;
    0x00033030 jalr t9                                               |     t9 ();
    0x00033034 nop                                                   |     
                                                                     | label_3:
    0x00033038 lw a3, -0x7f84(gp)                                    |     a3 = *(gp);
                                                                     |     /* esilref: 'rapidjson::GenericValue<Encoding, Allocator>* rapidjson::GenericValue<Encoding, Allocator>::End() [with Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; rapidjson::GenericValue<Encoding, Allocator>::ValueIterator = ra */
    0x0003303c addiu a3, a3, -0x6c28                                 |     a3 += -0x6c28;
    0x00033040 addiu a2, zero, 0x63c                                 |     a2 = aav.0x0000063c;
    0x00033044 lw a1, -0x7fcc(gp)                                    |     a1 = *(gp);
                                                                     |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x00033048 addiu a1, a1, 0x2aa8                                  |     a1 += 0x2aa8;
    0x0003304c lw a0, -0x7fcc(gp)                                    |     a0 = *(gp);
                                                                     |     /* str.IsArray__ */
    0x00033050 addiu a0, a0, 0x2bc8                                  |     a0 += aav.0x00002bc8;
    0x00033054 lw t9, -0x7644(gp)                                    |     t9 = sym.imp.__assert_fail;
    0x00033058 jalr t9                                               |     t9 ();
    0x0003305c nop                                                   |     
                                                                     | label_22:
    0x00033060 lw a3, -0x7f84(gp)                                    |     a3 = *(gp);
                                                                     |     /* esilref: 'rapidjson::GenericValue<Encoding, Allocator>::MemberIterator rapidjson::GenericValue<Encoding, Allocator>::FindMember(const rapidjson::GenericValue<Encoding, SourceAllocator>&) [with SourceAllocator = rapidjson::MemoryPoolAllocator<>; Encoding  */
                                                                     | label_4:
    0x00033064 addiu a3, a3, -0x6fc0                                 |     a3 += -0x6fc0;
    0x00033068 addiu a2, zero, 0x4e3                                 |     a2 = 0x4e3;
    0x0003306c lw a1, -0x7fcc(gp)                                    |     a1 = *(gp);
                                                                     |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x00033070 addiu a1, a1, 0x2aa8                                  |     a1 += 0x2aa8;
    0x00033074 lw a0, -0x7fcc(gp)                                    |     a0 = *(gp);
                                                                     |     /* str.IsObject__ */
    0x00033078 addiu a0, a0, 0x2b0c                                  |     a0 += 0x2b0c;
    0x0003307c lw t9, -0x7644(gp)                                    |     t9 = sym.imp.__assert_fail;
    0x00033080 jalr t9                                               |     t9 ();
    0x00033084 nop                                                   |     
                                                                     |     do {
    0x00033088 addiu v0, zero, 6                                     |         v0 = 6;
                                                                     |         if (v1 == v0) {
    0x0003308c beql v1, v0, 0x330d0                                  |             goto label_24;
                                                                     |         }
    0x00033090 lw a1, 8(s0)                                          |         a1 = *((s0 + 2));
    0x00033094 addiu s0, s0, 0x20                                    |         s0 += 0x20;
                                                                     | label_2:
    0x00033098 lw a3, -0x7f84(gp)                                    |         a3 = *(gp);
                                                                     |         if (s1 == s0) {
    0x0003309c beq s1, s0, 0x331d4                                   |             goto label_25;
                                                                     |         }
    0x000330a0 lhu v0, 0xe(s0)                                       |         v0 = *((s0 + 7));
    0x000330a4 andi v1, v0, 0x400                                    |         v1 = v0 & aav.0x00000400;
    0x000330a8 lw a3, -0x7f84(gp)                                    |         a3 = *(gp);
                                                                     |         if (v1 == 0) {
    0x000330ac beqz v1, 0x331b0                                      |             goto label_26;
                                                                     |         }
    0x000330b0 andi v0, v0, 0x1000                                   |         v0 &= aav.0x00001000;
                                                                     | label_5:
    0x000330b4 beql v0, zero, 0x33088                                |         
                                                                     |     } while (v0 == 0);
    0x000330b8 lw v1, (s0)                                           |     v1 = *(s0);
    0x000330bc lb v0, 0xd(s0)                                        |     v0 = *((s0 + 13));
    0x000330c0 addiu v1, s4, -6                                      |     v1 = s4 + -6;
    0x000330c4 addiu s0, s0, 0x20                                    |     s0 += 0x20;
                                                                     |     if (v1 == v0) {
    0x000330c8 bnel v1, v0, 0x33098                                  |         goto label_2;
                                                                     |     }
    0x000330cc move a1, s0                                           |     a1 = s0;
                                                                     | label_24:
    0x000330d0 addiu a2, zero, 6                                     |     a2 = 6;
                                                                     |     if (a1 == s6) {
    0x000330d4 beq a1, s6, 0x330f4                                   |         goto label_27;
                                                                     |     }
    0x000330d8 move a0, s7                                           |     a0 = s7;
    0x000330dc lw t9, -0x7448(gp)                                    |     t9 = sym.imp.memcmp;
    0x000330e0 jalr t9                                               |     t9 ();
    0x000330e4 nop                                                   |     
    0x000330e8 lw gp, 0x18(sp)                                       |     gp = *(var_18h);
    0x000330ec addiu s0, s0, 0x20                                    |     s0 += 0x20;
                                                                     |     if (v0 == 0) {
    0x000330f0 bnel v0, zero, 0x33098                                |         goto label_2;
                                                                     |     }
                                                                     | label_27:
    0x000330f4 lw a3, -0x7f84(gp)                                    |     a3 = *(gp);
                                                                     |     if (s0 == s1) {
    0x000330f8 beq s0, s1, 0x331d4                                   |         goto label_25;
                                                                     |     }
    0x000330fc lw a1, 0x130(s5)                                      |     a1 = *(s5);
    0x00033100 lhu v0, 0x1e(s0)                                      |     v0 = *((s0 + 15));
    0x00033104 andi v1, v0, 0x400                                    |     v1 = v0 & aav.0x00000400;
    0x00033108 lw a2, 0x134(s5)                                      |     a2 = *(s5);
                                                                     |     if (v1 == 0) {
    0x0003310c beqz v1, 0x331f8                                      |         goto label_28;
                                                                     |     }
    0x00033110 andi v0, v0, 0x1000                                   |     v0 &= aav.0x00001000;
                                                                     |     if (v0 != 0) {
    0x00033114 beql v0, zero, 0x33120                                |         
    0x00033118 lw v0, 0x18(s0)                                       |         v0 = *((s0 + 6));
    0x0003311c addiu v0, s0, 0x10                                    |         v0 = s0 + 0x10;
                                                                     |     }
    0x00033120 sw v0, 0x34(sp)                                       |     *(var_34h) = v0;
    0x00033124 sb zero, 0x10(sp)                                     |     *(var_98h_2) = 0;
    0x00033128 addiu a3, sp, 0x34                                    |     a3 = sp + 0x34;
    0x0003312c addiu a0, sp, 0x2c                                    |     a0 = sp + 0x2c;
    0x00033130 lw t9, -0x7db0(gp)                                    |     t9 = *(gp);
    0x00033134 bal 0x36214                                           |     method ();
    0x00033138 nop                                                   |     
    0x0003313c lw gp, 0x18(sp)                                       |     gp = *(var_18h);
    0x00033140 lw v0, 0x2c(sp)                                       |     v0 = *(var_2ch_2);
    0x00033144 lw v1, 0x134(s5)                                      |     v1 = *(s5);
                                                                     |     if (v1 == v0) {
    0x00033148 beql v1, v0, 0x33220                                  |         goto label_29;
                                                                     |     }
    0x0003314c lhu v0, 0x1e(s0)                                      |     v0 = *((s0 + 15));
                                                                     | label_7:
    0x00033150 lhu v1, 0x1e(s2)                                      |     v1 = *((s2 + 15));
                                                                     | label_8:
    0x00033154 addiu v0, zero, 4                                     |     v0 = 4;
    0x00033158 addiu s3, s3, 0x10                                    |     s3 += 0x10;
                                                                     |     if (v1 != v0) {
    0x0003315c bne v1, v0, 0x33038                                   |         goto label_3;
                                                                     |     }
    0x00033160 lw v0, 0x10(s2)                                       |     v0 = *((s2 + 4));
    0x00033164 sll v1, v0, 4                                         |     v1 = v0 << 4;
    0x00033168 lw v0, 0x18(s2)                                       |     v0 = *((s2 + 6));
    0x0003316c addu v0, v0, v1                                       |     v0 += v1;
    0x00033170 addiu v0, zero, 3                                     |     v0 = 3;
                                                                     |     if (s3 == v0) {
    0x00033174 beq s3, v0, 0x33368                                   |         goto label_21;
                                                                     |     }
    0x00033178 lhu v1, 0xe(s3)                                       |     v1 = *((s3 + 7));
    0x0003317c lw a3, -0x7f84(gp)                                    |     a3 = *(gp);
                                                                     |     if (v1 != v0) {
    0x00033180 bne v1, v0, 0x33064                                   |         goto label_4;
                                                                     |     }
    0x00033184 lw s0, 8(s3)                                          |     s0 = *((s3 + 2));
                                                                     | label_23:
    0x00033188 lw s1, (s3)                                           |     s1 = *(s3);
    0x0003318c sll s1, s1, 5                                         |     s1 <<= 5;
    0x00033190 addu s1, s0, s1                                       |     s1 = s0 + s1;
    0x00033194 lw a3, -0x7f84(gp)                                    |     a3 = *(gp);
                                                                     |     if (s1 == s0) {
    0x00033198 beq s1, s0, 0x331d4                                   |         goto label_25;
                                                                     |     }
    0x0003319c lhu v0, 0xe(s0)                                       |     v0 = *((s0 + 7));
    0x000331a0 andi v1, v0, 0x400                                    |     v1 = v0 & aav.0x00000400;
    0x000331a4 andi v0, v0, 0x1000                                   |     v0 &= aav.0x00001000;
                                                                     |     if (v1 == 0) {
    0x000331a8 bnel v1, zero, 0x330b4                                |         goto label_5;
                                                                     |     }
    0x000331ac lw a3, -0x7f84(gp)                                    |     a3 = *(gp);
                                                                     |     /* esilref: 'bool rapidjson::GenericValue<Encoding, Allocator>::StringEqual(const rapidjson::GenericValue<Encoding, SourceAllocator>&) const [with SourceAllocator = rapidjson::MemoryPoolAllocator<>; Encoding = rapidjson::UTF8<>; Allocator = rapidjson::Memor */
                                                                     | label_26:
    0x000331b0 addiu a3, a3, -0x70c8                                 |     a3 += -0x70c8;
    0x000331b4 addiu a2, zero, 0x829                                 |     a2 = 0x829;
    0x000331b8 lw a1, -0x7fcc(gp)                                    |     a1 = *(gp);
                                                                     |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x000331bc addiu a1, a1, 0x2aa8                                  |     a1 += 0x2aa8;
    0x000331c0 lw a0, -0x7fcc(gp)                                    |     a0 = *(gp);
                                                                     |     /* str.rhs.IsString__ */
    0x000331c4 addiu a0, a0, 0x48d4                                  |     a0 += 0x48d4;
    0x000331c8 lw t9, -0x7644(gp)                                    |     t9 = sym.imp.__assert_fail;
    0x000331cc jalr t9                                               |     t9 ();
    0x000331d0 nop                                                   |     
                                                                     |     /* esilref: 'rapidjson::GenericValue<Encoding, Allocator>& rapidjson::GenericValue<Encoding, Allocator>::operator[](const rapidjson::GenericValue<Encoding, SourceAllocator>&) [with SourceAllocator = rapidjson::MemoryPoolAllocator<>; Encoding = rapidjson::UT */
                                                                     | label_25:
    0x000331d4 addiu a3, a3, -0x6de8                                 |     a3 += -0x6de8;
    0x000331d8 addiu a2, zero, 0x46f                                 |     a2 = 0x46f;
    0x000331dc lw a1, -0x7fcc(gp)                                    |     a1 = *(gp);
                                                                     |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x000331e0 addiu a1, a1, 0x2aa8                                  |     a1 += 0x2aa8;
    0x000331e4 lw a0, -0x7fcc(gp)                                    |     a0 = *(gp);
                                                                     |     /* str.false */
    0x000331e8 addiu a0, a0, 0x48ec                                  |     a0 += 0x48ec;
    0x000331ec lw t9, -0x7644(gp)                                    |     t9 = sym.imp.__assert_fail;
    0x000331f0 jalr t9                                               |     t9 ();
    0x000331f4 nop                                                   |     
                                                                     | label_28:
    0x000331f8 lw a3, -0x7f84(gp)                                    |     a3 = *(gp);
                                                                     |     /* esilref: 'const Ch* rapidjson::GenericValue<Encoding, Allocator>::GetString() const [with Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; rapidjson::GenericValue<Encoding, Allocator>::Ch = char]' */
    0x000331fc addiu a3, a3, -0x71a0                                 |     a3 += -0x71a0;
    0x00033200 addiu a2, zero, 0x6e9                                 |     a2 = 0x6e9;
    0x00033204 lw a1, -0x7fcc(gp)                                    |     a1 = *(gp);
                                                                     |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x00033208 addiu a1, a1, 0x2aa8                                  |     a1 += 0x2aa8;
    0x0003320c lw a0, -0x7fcc(gp)                                    |     a0 = *(gp);
                                                                     |     /* esilref: 'IsString()' */
    0x00033210 addiu a0, a0, 0x2b20                                  |     a0 += 0x2b20;
    0x00033214 lw t9, -0x7644(gp)                                    |     t9 = sym.imp.__assert_fail;
    0x00033218 jalr t9                                               |     t9 ();
    0x0003321c nop                                                   |     
                                                                     | label_29:
    0x00033220 andi v1, v0, 0x400                                    |     v1 = v0 & aav.0x00000400;
    0x00033224 andi v0, v0, 0x1000                                   |     v0 &= aav.0x00001000;
                                                                     |     if (v1 == 0) {
    0x00033228 beqz v1, 0x3327c                                      |         goto label_30;
                                                                     |     }
                                                                     |     if (v0 == 0) {
    0x0003322c beql v0, zero, 0x332a4                                |         goto label_31;
                                                                     |     }
    0x00033230 lw s0, 0x18(s0)                                       |     s0 = *((s0 + 6));
    0x00033234 addiu s0, s0, 0x10                                    |     s0 += 0x10;
    0x00033238 addiu v0, sp, 0x40                                    |     v0 = sp + 0x40;
    0x0003323c sw v0, 0x38(sp)                                       |     *(var_38h) = v0;
                                                                     |     do {
    0x00033240 move a0, s0                                           |         a0 = s0;
    0x00033244 lw t9, -0x73cc(gp)                                    |         t9 = sym.imp.strlen;
    0x00033248 jalr t9                                               |         t9 ();
    0x0003324c nop                                                   |         
    0x00033250 lw gp, 0x18(sp)                                       |         gp = *(var_18h);
    0x00033254 addu a2, s0, v0                                       |         a2 = s0 + v0;
                                                                     | label_6:
    0x00033258 move a3, zero                                         |         a3 = 0;
    0x0003325c move a1, s0                                           |         a1 = s0;
    0x00033260 addiu a0, sp, 0x38                                    |         a0 = sp + 0x38;
    0x00033264 lw t9, -0x7f80(gp)                                    |         t9 = *(gp);
    0x00033268 bal 0x1efd4                                           |         method ();
    0x0003326c nop                                                   |         
    0x00033270 lw gp, 0x18(sp)                                       |         gp = *(var_18h);
    0x00033274 lw a1, 0x134(s5)                                      |         a1 = *(s5);
    0x00033278 b 0x332b8                                             |         goto label_32;
                                                                     | label_30:
    0x0003327c lw a3, -0x7f84(gp)                                    |         a3 = *(gp);
                                                                     |         /* esilref: 'const Ch* rapidjson::GenericValue<Encoding, Allocator>::GetString() const [with Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; rapidjson::GenericValue<Encoding, Allocator>::Ch = char]' */
    0x00033280 addiu a3, a3, -0x71a0                                 |         a3 += -0x71a0;
    0x00033284 addiu a2, zero, 0x6e9                                 |         a2 = 0x6e9;
    0x00033288 lw a1, -0x7fcc(gp)                                    |         a1 = *(gp);
                                                                     |         /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0003328c addiu a1, a1, 0x2aa8                                  |         a1 += 0x2aa8;
    0x00033290 lw a0, -0x7fcc(gp)                                    |         a0 = *(gp);
                                                                     |         /* esilref: 'IsString()' */
    0x00033294 addiu a0, a0, 0x2b20                                  |         a0 += 0x2b20;
    0x00033298 lw t9, -0x7644(gp)                                    |         t9 = sym.imp.__assert_fail;
    0x0003329c jalr t9                                               |         t9 ();
    0x000332a0 nop                                                   |         
                                                                     | label_31:
    0x000332a4 addiu v0, sp, 0x40                                    |         v0 = sp + 0x40;
    0x000332a8 sw v0, 0x38(sp)                                       |         *(var_38h) = v0;
    0x000332ac bnez s0, 0x33240                                      |         
                                                                     |     } while (s0 != 0);
    0x000332b0 addiu a2, zero, -1                                    |     a2 = -1;
    0x000332b4 b 0x33258                                             |     goto label_6;
                                                                     | label_32:
    0x000332b8 lw v0, 0x138(s5)                                      |     v0 = *(s5);
    0x000332bc addiu v0, a1, 8                                       |     v0 = a1 + 8;
                                                                     |     if (a1 == v0) {
    0x000332c0 beq a1, v0, 0x3332c                                   |         goto label_33;
                                                                     |     }
    0x000332c4 sw v0, (a1)                                           |     *(a1) = v0;
    0x000332c8 lw v0, 0x38(sp)                                       |     v0 = *(var_38h);
    0x000332cc addiu v1, sp, 0x40                                    |     v1 = sp + 0x40;
    0x000332d0 lw a2, 0x40(sp)                                       |     a2 = *(var_40h);
                                                                     |     if (v0 == v1) {
    0x000332d4 beq v0, v1, 0x332fc                                   |         goto label_34;
                                                                     |     }
    0x000332d8 sw v0, (a1)                                           |     *(a1) = v0;
    0x000332dc lw v0, 0x40(sp)                                       |     v0 = *(var_40h);
    0x000332e0 sw v0, 8(a1)                                          |     *((a1 + 2)) = v0;
                                                                     |     do {
    0x000332e4 lw v0, 0x3c(sp)                                       |         v0 = *(var_3ch_2);
    0x000332e8 sw v0, 4(a1)                                          |         *((a1 + 1)) = v0;
    0x000332ec lw v0, 0x134(s5)                                      |         v0 = *(s5);
    0x000332f0 addiu v0, v0, 0x18                                    |         v0 += 0x18;
    0x000332f4 sw v0, 0x134(s5)                                      |         *(s5) = v0;
    0x000332f8 b 0x33150                                             |         goto label_7;
                                                                     | label_34:
    0x000332fc lw a0, 0x44(sp)                                       |         a0 = *(var_44h_2);
    0x00033300 lw v1, 0x48(sp)                                       |         v1 = *(var_48h);
    0x00033304 lw v0, 0x4c(sp)                                       |         v0 = *(var_4ch);
    0x00033308 swl a2, 0xb(a1)                                       |         __asm ("swl a2, 0xb(a1)");
    0x0003330c swr a2, 8(a1)                                         |         __asm ("swr a2, 8(a1)");
    0x00033310 swl a0, 0xf(a1)                                       |         __asm ("swl a0, 0xf(a1)");
    0x00033314 swr a0, 0xc(a1)                                       |         __asm ("swr a0, 0xc(a1)");
    0x00033318 swl v1, 0x13(a1)                                      |         __asm ("swl v1, 0x13(a1)");
    0x0003331c swr v1, 0x10(a1)                                      |         __asm ("swr v1, 0x10(a1)");
    0x00033320 swl v0, 0x17(a1)                                      |         __asm ("swl v0, 0x17(a1)");
    0x00033324 swr v0, 0x14(a1)                                      |         __asm ("swr v0, 0x14(a1)");
    0x00033328 b 0x332e4                                             |         
                                                                     |     } while (1);
                                                                     | label_33:
    0x0003332c addiu a2, sp, 0x38                                    |     a2 = sp + 0x38;
    0x00033330 addiu a0, s5, 0x130                                   |     a0 = s5 + aav.0x00000130;
    0x00033334 lw t9, -0x7dac(gp)                                    |     t9 = ;
    0x00033338 bal 0x36410                                           |     sym ();
    0x0003333c nop                                                   |     
    0x00033340 lw gp, 0x18(sp)                                       |     gp = *(var_18h);
    0x00033344 lw a0, 0x38(sp)                                       |     a0 = *(var_38h);
    0x00033348 addiu v0, sp, 0x40                                    |     v0 = sp + 0x40;
    0x0003334c lw t9, -0x7488(gp)                                    |     t9 = *((gp - 7458));
                                                                     |     if (a0 == v0) {
    0x00033350 beq a0, v0, 0x33150                                   |         goto label_7;
                                                                     |     }
    0x00033354 jalr t9                                               |     t9 ();
    0x00033358 nop                                                   |     
    0x0003335c lw gp, 0x18(sp)                                       |     gp = *(var_18h);
    0x00033360 lhu v1, 0x1e(s2)                                      |     v1 = *((s2 + 15));
    0x00033364 b 0x33154                                             |     goto label_8;
                                                                     | label_21:
    0x00033368 lhu v1, 0x5e(sp)                                      |     v1 = *(var_5eh);
    0x0003336c addiu v0, zero, 4                                     |     v0 = 4;
    0x00033370 addiu fp, fp, 0x10                                    |     fp += 0x10;
                                                                     |     if (v1 != v0) {
    0x00033374 bne v1, v0, 0x32ecc                                   |         goto label_9;
                                                                     |     }
    0x00033378 lw v0, 0x50(sp)                                       |     v0 = *(var_50h);
    0x0003337c sll v1, v0, 4                                         |     v1 = v0 << 4;
    0x00033380 lw v0, 0x58(sp)                                       |     v0 = *(var_58h);
    0x00033384 addu v0, v0, v1                                       |     v0 += v1;
    0x00033388 addiu v0, zero, 3                                     |     v0 = 3;
                                                                     |     if (fp == v0) {
    0x0003338c beq fp, v0, 0x333d0                                   |         goto label_15;
                                                                     |     }
    0x00033390 lhu v1, 0xe(fp)                                       |     v1 = *(arg_eh);
    0x00033394 lw a3, -0x7f84(gp)                                    |     a3 = *(gp);
                                                                     |     if (v1 != v0) {
    0x00033398 bne v1, v0, 0x32ef8                                   |         goto label_10;
                                                                     |     }
                                                                     | label_17:
    0x0003339c lw s2, 8(fp)                                          |     s2 = *(arg_8h);
    0x000333a0 lw s0, (fp)                                           |     s0 = *(fp);
    0x000333a4 sll s0, s0, 5                                         |     s0 <<= 5;
    0x000333a8 addu s0, s2, s0                                       |     s0 = s2 + s0;
    0x000333ac lw a3, -0x7f84(gp)                                    |     a3 = *(gp);
                                                                     |     if (s2 == s0) {
    0x000333b0 beq s2, s0, 0x32ff0                                   |         goto label_11;
                                                                     |     }
    0x000333b4 lhu v0, 0xe(s2)                                       |     v0 = *((s2 + 7));
    0x000333b8 andi v1, v0, 0x400                                    |     v1 = v0 & aav.0x00000400;
    0x000333bc lw v1, 0x20(sp)                                       |     v1 = *(var_20h_2);
                                                                     |     if (v1 == 0) {
    0x000333c0 beqz v1, 0x32f1c                                      |         goto label_12;
                                                                     |     }
    0x000333c4 addiu s1, v1, 0x7bcc                                  |     s1 = v1 + 0x7bcc;
    0x000333c8 addiu s3, zero, 0xd                                   |     s3 = 0xd;
    0x000333cc b 0x32f6c                                             |     goto label_13;
                                                                     | label_15:
    0x000333d0 lw s1, 0x64(sp)                                       |     s1 = *(var_64h);
    0x000333d4 lw a0, 0x70(sp)                                       |     a0 = *(var_70h_2);
                                                                     |     if (s1 == 0) {
    0x000333d8 beqz s1, 0x33454                                      |         goto label_35;
                                                                     |     }
    0x000333dc lw a0, (s1)                                           |     a0 = *(s1);
    0x000333e0 addiu a1, zero, 1                                     |     a1 = 1;
                                                                     |     if (a0 == 0) {
    0x000333e4 beqz a0, 0x33424                                      |         goto label_36;
                                                                     |     }
    0x000333e8 lw v0, 8(s1)                                          |     v0 = *((s1 + 2));
                                                                     |     if (a0 == v0) {
    0x000333ec beql a0, v0, 0x33424                                  |         goto label_36;
                                                                     |     }
    0x000333f0 sw zero, 4(v0)                                        |     *((v0 + 1)) = 0;
                                                                     |     do {
    0x000333f4 lw s0, 8(a0)                                          |         s0 = *((a0 + 2));
    0x000333f8 lw t9, -0x7518(gp)                                    |         t9 = sym.imp.free;
    0x000333fc jalr t9                                               |         t9 ();
    0x00033400 nop                                                   |         
    0x00033404 lw gp, 0x18(sp)                                       |         gp = *(var_18h);
    0x00033408 sw s0, (s1)                                           |         *(s1) = s0;
                                                                     |         if (s0 == 0) {
    0x0003340c beqz s0, 0x33420                                      |             goto label_37;
                                                                     |         }
    0x00033410 lw v0, 8(s1)                                          |         v0 = *((s1 + 2));
    0x00033414 move a0, s0                                           |         a0 = s0;
    0x00033418 bne v0, s0, 0x333f4                                   |         
                                                                     |     } while (v0 != s0);
    0x0003341c sw zero, 4(v0)                                        |     *((v0 + 1)) = 0;
                                                                     | label_37:
    0x00033420 addiu a1, zero, 1                                     |     a1 = 1;
                                                                     | label_36:
    0x00033424 lw a0, 0x10(s1)                                       |     a0 = *((s1 + 4));
    0x00033428 lw t9, -0x7404(gp)                                    |     t9 = sym.imp.operator_delete_void__unsigned_int_;
    0x0003342c jalr t9                                               |     t9 ();
    0x00033430 nop                                                   |     
    0x00033434 lw gp, 0x18(sp)                                       |     gp = *(var_18h);
    0x00033438 addiu a1, zero, 0x14                                  |     a1 = 0x14;
    0x0003343c move a0, s1                                           |     a0 = s1;
    0x00033440 lw t9, -0x7404(gp)                                    |     t9 = sym.imp.operator_delete_void__unsigned_int_;
    0x00033444 jalr t9                                               |     t9 ();
    0x00033448 nop                                                   |     
    0x0003344c lw gp, 0x18(sp)                                       |     gp = *(var_18h);
    0x00033450 lw a0, 0x70(sp)                                       |     a0 = *(var_70h_2);
                                                                     | label_35:
    0x00033454 lw t9, -0x7518(gp)                                    |     t9 = sym.imp.free;
    0x00033458 jalr t9                                               |     t9 ();
    0x0003345c nop                                                   |     
    0x00033460 lw gp, 0x18(sp)                                       |     gp = *(var_18h);
    0x00033464 addiu a1, zero, 1                                     |     a1 = 1;
    0x00033468 lw a0, 0x6c(sp)                                       |     a0 = *(var_6ch_2);
    0x0003346c lw t9, -0x7404(gp)                                    |     t9 = sym.imp.operator_delete_void__unsigned_int_;
    0x00033470 jalr t9                                               |     t9 ();
    0x00033474 nop                                                   |     
    0x00033478 lw gp, 0x18(sp)                                       |     gp = *(var_18h);
    0x0003347c lw a0, 0x24(sp)                                       |     a0 = *(var_24h_2);
    0x00033480 lw t9, -0x7518(gp)                                    |     t9 = sym.imp.free;
    0x00033484 jalr t9                                               |     t9 ();
    0x00033488 nop                                                   |     
    0x0003348c lw gp, 0x18(sp)                                       |     gp = *(var_18h);
                                                                     | label_14:
    0x00033490 lw v1, 0x8c(sp)                                       |     v1 = *(var_8ch);
    0x00033494 lw v0, -0x736c(gp)                                    |     v0 = *((gp - 7387));
    0x00033498 lw v0, (v0)                                           |     v0 = *(v0);
    0x0003349c lw ra, 0xb4(sp)                                       |     ra = *(var_b4h);
                                                                     |     if (v1 == v0) {
    0x000334a0 bne v1, v0, 0x335a8                                   |         
    0x000334a4 lw fp, 0xb0(sp)                                       |         fp = *(var_b0h);
    0x000334a8 lw s7, 0xac(sp)                                       |         s7 = *(var_ach);
    0x000334ac lw s6, 0xa8(sp)                                       |         s6 = *(var_a8h);
    0x000334b0 lw s5, 0xa4(sp)                                       |         s5 = *(var_a4h);
    0x000334b4 lw s4, 0xa0(sp)                                       |         s4 = *(var_a0h);
    0x000334b8 lw s3, 0x9c(sp)                                       |         s3 = *(var_9ch);
    0x000334bc lw s2, 0x98(sp)                                       |         s2 = *(var_98h);
    0x000334c0 lw s1, 0x94(sp)                                       |         s1 = *(var_94h);
    0x000334c4 lw s0, 0x90(sp)                                       |         s0 = *(var_90h);
    0x000334c8 addiu sp, sp, 0xb8                                    |         
    0x000334cc jr ra                                                 |         return v1;
                                                                     |     }
    0x000335a8 lw t9, -0x74e8(gp)                                    |     t9 = sym.imp.__stack_chk_fail;
    0x000335ac jalr t9                                               |     t9 ();
    0x000335b0 nop                                                   |     
                                                                     | }
    ; assembly                                                                                                                                           | /* r2dec pseudo code output */
                                                                                                                                                         | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/onscreencontrols @ 0x88750 */
                                                                                                                                                         | #include <stdint.h>
                                                                                                                                                         |  
    ; (fcn) method.GetFeaturesCgiResponse.isLocaleAddedByUser_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____ ()        | void method_GetFeaturesCgiResponse_isLocaleAddedByUser_std::_cxx11::basic_string_char_std::char_traits_char_std::allocator_char_ () {
                                                                                                                                                         |     /* GetFeaturesCgiResponse::isLocaleAddedByUser(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >) */
    0x00088750 lui gp, 4                                                                                                                                 |     
    0x00088754 addiu gp, gp, 0x5af0                                                                                                                      |     
    0x00088758 addu gp, gp, t9                                                                                                                           |     gp += t9;
    0x0008875c addiu sp, sp, -0xb8                                                                                                                       |     
    0x00088760 sw ra, 0xb4(sp)                                                                                                                           |     *(var_b4h) = ra;
    0x00088764 sw fp, 0xb0(sp)                                                                                                                           |     *(var_b0h) = fp;
    0x00088768 sw s7, 0xac(sp)                                                                                                                           |     *(var_ach) = s7;
    0x0008876c sw s6, 0xa8(sp)                                                                                                                           |     *(var_a8h) = s6;
    0x00088770 sw s5, 0xa4(sp)                                                                                                                           |     *(var_a4h) = s5;
    0x00088774 sw s4, 0xa0(sp)                                                                                                                           |     *(var_a0h) = s4;
    0x00088778 sw s3, 0x9c(sp)                                                                                                                           |     *(var_9ch) = s3;
    0x0008877c sw s2, 0x98(sp)                                                                                                                           |     *(var_98h) = s2;
    0x00088780 sw s1, 0x94(sp)                                                                                                                           |     *(var_94h) = s1;
    0x00088784 sw s0, 0x90(sp)                                                                                                                           |     *(var_90h) = s0;
    0x00088788 sw gp, 0x18(sp)                                                                                                                           |     *(var_18h) = gp;
    0x0008878c move s7, a1                                                                                                                               |     s7 = a1;
    0x00088790 lw v0, -0x736c(gp)                                                                                                                        |     v0 = *((gp - 7387));
    0x00088794 lw v0, (v0)                                                                                                                               |     v0 = *(v0);
    0x00088798 sw v0, 0x8c(sp)                                                                                                                           |     *(var_8ch) = v0;
    0x0008879c lw a1, -0x7f84(gp)                                                                                                                        |     a1 = *(gp);
    0x000887a0 addiu a1, a1, -0x3bac                                                                                                                     |     a1 += -0x3bac;
    0x000887a4 lw a0, -0x7fcc(gp)                                                                                                                        |     a0 = *(gp);
                                                                                                                                                         |     /* str._etc_onscreencontrols_postinst_post_added_features.json */
    0x000887a8 addiu a0, a0, 0x7b94                                                                                                                      |     a0 += 0x7b94;
    0x000887ac lw t9, -0x7360(gp)                                                                                                                        |     t9 = sym.imp.fopen;
    0x000887b0 jalr t9                                                                                                                                   |     t9 ();
    0x000887b4 nop                                                                                                                                       |     
    0x000887b8 lw gp, 0x18(sp)                                                                                                                           |     gp = *(var_18h);
    0x000887bc sw v0, 0x2c(sp)                                                                                                                           |     *(var_2ch) = v0;
                                                                                                                                                         |     if (v0 == 0) {
    0x000887c0 beqz v0, 0x88d7c                                                                                                                          |         goto label_13;
                                                                                                                                                         |     }
    0x000887c4 move a0, v0                                                                                                                               |     a0 = v0;
    0x000887c8 lw t9, -0x7e88(gp)                                                                                                                        |     t9 = *(gp);
    0x000887cc jalr t9                                                                                                                                   |     t9 ();
    0x000887d0 nop                                                                                                                                       |     
    0x000887d4 lw gp, 0x18(sp)                                                                                                                           |     gp = *(var_18h);
    0x000887d8 sw v0, 0x28(sp)                                                                                                                           |     *(var_28h) = v0;
                                                                                                                                                         |     if (v0 == 0) {
    0x000887dc beqz v0, 0x88cb0                                                                                                                          |         goto label_14;
                                                                                                                                                         |     }
    0x000887e0 lw a1, 0x28(sp)                                                                                                                           |     a1 = *(var_28h);
    0x000887e4 addiu a0, sp, 0x50                                                                                                                        |     a0 = sp + 0x50;
    0x000887e8 lw t9, -0x7e84(gp)                                                                                                                        |     t9 = *(gp);
    0x000887ec bal 0x7b0a4                                                                                                                               |     method ();
    0x000887f0 nop                                                                                                                                       |     
    0x000887f4 lw gp, 0x18(sp)                                                                                                                           |     gp = *(var_18h);
    0x000887f8 lhu v1, 0x5e(sp)                                                                                                                          |     v1 = *(var_5eh);
    0x000887fc b 0x8881c                                                                                                                                 |     goto label_15;
                                                                                                                                                         | label_12:
    0x00088808 addiu v0, zero, 1                                                                                                                         |     v0 = 1;
                                                                                                                                                         | label_11:
    0x0008880c lw t9, -0x75f8(gp)                                                                                                                        |     t9 = sym.imp._Unwind_Resume;
                                                                                                                                                         |     if (a1 == v0) {
    0x00088810 beq a1, v0, 0x88eb0                                                                                                                       |         goto label_16;
                                                                                                                                                         |     }
    0x00088814 jalr t9                                                                                                                                   |     t9 ();
    0x00088818 nop                                                                                                                                       |     
                                                                                                                                                         | label_15:
    0x0008881c addiu v0, zero, 4                                                                                                                         |     v0 = 4;
    0x00088820 lw v0, 0x50(sp)                                                                                                                           |     v0 = *(var_50h);
                                                                                                                                                         |     if (v1 == v0) {
    0x00088824 bne v1, v0, 0x88858                                                                                                                       |         
    0x00088828 sll v0, v0, 4                                                                                                                             |         v0 <<= 4;
    0x0008882c lw fp, 0x58(sp)                                                                                                                           |         fp = *(var_58h);
                                                                                                                                                         |         if (v0 == 0) {
    0x00088830 beqz v0, 0x88c1c                                                                                                                          |             goto label_17;
                                                                                                                                                         |         }
    0x00088834 lhu v1, 0xe(fp)                                                                                                                           |         v1 = *(arg_eh);
    0x00088838 addiu v0, zero, 3                                                                                                                         |         v0 = 3;
    0x0008883c lw v0, -0x7fcc(gp)                                                                                                                        |         v0 = *(gp);
                                                                                                                                                         |         if (v1 != v0) {
    0x00088840 bne v1, v0, 0x888a8                                                                                                                       |             goto label_18;
                                                                                                                                                         |         }
    0x00088844 sw v0, 0x24(sp)                                                                                                                           |         *(var_24h_4) = v0;
    0x00088848 lw s5, -0x7fcc(gp)                                                                                                                        |         s5 = *(gp);
                                                                                                                                                         |         /* str.locale */
    0x0008884c addiu s5, s5, 0x48e4                                                                                                                      |         s5 += 0x48e4;
    0x00088850 move s6, s5                                                                                                                               |         s6 = s5;
    0x00088854 b 0x88be8                                                                                                                                 |         goto label_19;
                                                                                                                                                         |     }
    0x00088858 lw a3, -0x7710(gp)                                                                                                                        |     a3 = *(gp);
                                                                                                                                                         |     /* str.rapidjson::GenericValue_Encoding__Allocator__rapidjson::GenericValue_Encoding__Allocator_::Begin____with_Encoding__rapidjson::UTF8____Allocator__rapidjson::MemoryPoolAllocator____rapidjson::GenericValue_Encoding__Allocator_::ValueIterator__rapidjson::GenericValue_rapidjson::UTF8_____ */
    0x0008885c addiu a3, a3, -0x7d20                                                                                                                     |     a3 += -0x7d20;
    0x00088860 addiu a2, zero, 0x639                                                                                                                     |     a2 = 0x639;
    0x00088864 lw a1, -0x7fcc(gp)                                                                                                                        |     a1 = *(gp);
                                                                                                                                                         |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x00088868 addiu a1, a1, 0x2aa8                                                                                                                      |     a1 += 0x2aa8;
    0x0008886c lw a0, -0x7fcc(gp)                                                                                                                        |     a0 = *(gp);
                                                                                                                                                         |     /* str.IsArray__ */
    0x00088870 addiu a0, a0, 0x2bc8                                                                                                                      |     a0 += aav.0x00002bc8;
    0x00088874 lw t9, -0x7644(gp)                                                                                                                        |     t9 = sym.imp.__assert_fail;
    0x00088878 jalr t9                                                                                                                                   |     t9 ();
    0x0008887c nop                                                                                                                                       |     
                                                                                                                                                         | label_6:
    0x00088880 lw a3, -0x7710(gp)                                                                                                                        |     a3 = *(gp);
                                                                                                                                                         |     /* str.rapidjson::GenericValue_Encoding__Allocator__rapidjson::GenericValue_Encoding__Allocator_::End____with_Encoding__rapidjson::UTF8____Allocator__rapidjson::MemoryPoolAllocator____rapidjson::GenericValue_Encoding__Allocator_::ValueIterator__rapidjson::GenericValue_rapidjson::UTF8_____ */
    0x00088884 addiu a3, a3, -0x7e40                                                                                                                     |     a3 += -0x7e40;
    0x00088888 addiu a2, zero, 0x63c                                                                                                                     |     a2 = aav.0x0000063c;
    0x0008888c lw a1, -0x7fcc(gp)                                                                                                                        |     a1 = *(gp);
                                                                                                                                                         |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x00088890 addiu a1, a1, 0x2aa8                                                                                                                      |     a1 += 0x2aa8;
    0x00088894 lw a0, -0x7fcc(gp)                                                                                                                        |     a0 = *(gp);
                                                                                                                                                         |     /* str.IsArray__ */
    0x00088898 addiu a0, a0, 0x2bc8                                                                                                                      |     a0 += aav.0x00002bc8;
    0x0008889c lw t9, -0x7644(gp)                                                                                                                        |     t9 = sym.imp.__assert_fail;
    0x000888a0 jalr t9                                                                                                                                   |     t9 ();
    0x000888a4 nop                                                                                                                                       |     
                                                                                                                                                         | label_18:
    0x000888a8 lw a3, -0x7f84(gp)                                                                                                                        |     a3 = *(gp);
                                                                                                                                                         |     /* str.rapidjson::GenericValue_Encoding__Allocator_::MemberIterator_rapidjson::GenericValue_Encoding__Allocator_::FindMember_const_rapidjson::GenericValue_Encoding__SourceAllocator____with_SourceAllocator__rapidjson::MemoryPoolAllocator____Encoding__rapidjson::UTF8____Allocator__rapidjson::MemoryPoolAllocator____rapidjson::GenericValue_Encoding__Allocator_::MemberIterator__rapidjson::GenericMemberIterator_false__rapidjson::UTF8____rapidjson::MemoryPoolAllocator_____ */
                                                                                                                                                         | label_7:
    0x000888ac addiu a3, a3, 0x7e28                                                                                                                      |     a3 += 0x7e28;
    0x000888b0 addiu a2, zero, 0x4e3                                                                                                                     |     a2 = 0x4e3;
    0x000888b4 lw a1, -0x7fcc(gp)                                                                                                                        |     a1 = *(gp);
                                                                                                                                                         |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x000888b8 addiu a1, a1, 0x2aa8                                                                                                                      |     a1 += 0x2aa8;
    0x000888bc lw a0, -0x7fcc(gp)                                                                                                                        |     a0 = *(gp);
                                                                                                                                                         |     /* str.IsObject__ */
    0x000888c0 addiu a0, a0, 0x2b0c                                                                                                                      |     a0 += 0x2b0c;
    0x000888c4 lw t9, -0x7644(gp)                                                                                                                        |     t9 = sym.imp.__assert_fail;
    0x000888c8 jalr t9                                                                                                                                   |     t9 ();
    0x000888cc nop                                                                                                                                       |     
                                                                                                                                                         | label_9:
    0x000888d0 lw a3, -0x7f84(gp)                                                                                                                        |     a3 = *(gp);
                                                                                                                                                         |     do {
                                                                                                                                                         |         /* str.bool_rapidjson::GenericValue_Encoding__Allocator_::StringEqual_const_rapidjson::GenericValue_Encoding__SourceAllocator___const__with_SourceAllocator__rapidjson::MemoryPoolAllocator____Encoding__rapidjson::UTF8____Allocator__rapidjson::MemoryPoolAllocator___ */
    0x000888d4 addiu a3, a3, 0x7bb4                                                                                                                      |         a3 += 0x7bb4;
    0x000888d8 addiu a2, zero, 0x829                                                                                                                     |         a2 = 0x829;
    0x000888dc lw a1, -0x7fcc(gp)                                                                                                                        |         a1 = *(gp);
                                                                                                                                                         |         /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x000888e0 addiu a1, a1, 0x2aa8                                                                                                                      |         a1 += 0x2aa8;
    0x000888e4 lw a0, -0x7fcc(gp)                                                                                                                        |         a0 = *(gp);
                                                                                                                                                         |         /* str.rhs.IsString__ */
    0x000888e8 addiu a0, a0, 0x48d4                                                                                                                      |         a0 += 0x48d4;
    0x000888ec lw t9, -0x7644(gp)                                                                                                                        |         t9 = sym.imp.__assert_fail;
    0x000888f0 jalr t9                                                                                                                                   |         t9 ();
    0x000888f4 nop                                                                                                                                       |         
                                                                                                                                                         | label_0:
    0x000888f8 addiu v0, zero, 7                                                                                                                         |         v0 = 7;
                                                                                                                                                         |         if (v1 == v0) {
    0x000888fc beql v1, v0, 0x88940                                                                                                                      |             goto label_20;
                                                                                                                                                         |         }
    0x00088900 lw a1, 8(s2)                                                                                                                              |         a1 = *((s2 + 2));
    0x00088904 addiu s2, s2, 0x20                                                                                                                        |         s2 += 0x20;
                                                                                                                                                         | label_1:
    0x00088908 lw a3, -0x7710(gp)                                                                                                                        |         a3 = *(gp);
                                                                                                                                                         |         if (s2 == s0) {
    0x0008890c beq s2, s0, 0x889a4                                                                                                                       |             goto label_8;
                                                                                                                                                         |         }
    0x00088910 lhu v0, 0xe(s2)                                                                                                                           |         v0 = *((s2 + 7));
    0x00088914 andi v1, v0, 0x400                                                                                                                        |         v1 = v0 & aav.0x00000400;
    0x00088918 lw a3, -0x7f84(gp)                                                                                                                        |         a3 = *(gp);
    0x0008891c beqz v1, 0x888d4                                                                                                                          |         
                                                                                                                                                         |     } while (v1 == 0);
                                                                                                                                                         | label_10:
    0x00088920 andi v0, v0, 0x1000                                                                                                                       |     v0 &= aav.0x00001000;
                                                                                                                                                         |     if (v0 == 0) {
    0x00088924 beql v0, zero, 0x888f8                                                                                                                    |         goto label_0;
                                                                                                                                                         |     }
    0x00088928 lw v1, (s2)                                                                                                                               |     v1 = *(s2);
    0x0008892c lb v0, 0xd(s2)                                                                                                                            |     v0 = *((s2 + 13));
    0x00088930 addiu v1, s3, -7                                                                                                                          |     v1 = s3 + -7;
    0x00088934 addiu s2, s2, 0x20                                                                                                                        |     s2 += 0x20;
                                                                                                                                                         |     if (v1 == v0) {
    0x00088938 bnel v1, v0, 0x88908                                                                                                                      |         goto label_1;
                                                                                                                                                         |     }
    0x0008893c move a1, s2                                                                                                                               |     a1 = s2;
                                                                                                                                                         | label_20:
    0x00088940 addiu a2, zero, 7                                                                                                                         |     a2 = 7;
                                                                                                                                                         |     if (a1 == s1) {
    0x00088944 beq a1, s1, 0x88964                                                                                                                       |         goto label_21;
                                                                                                                                                         |     }
    0x00088948 move a0, s1                                                                                                                               |     a0 = s1;
    0x0008894c lw t9, -0x7448(gp)                                                                                                                        |     t9 = sym.imp.memcmp;
    0x00088950 jalr t9                                                                                                                                   |     t9 ();
    0x00088954 nop                                                                                                                                       |     
    0x00088958 lw gp, 0x18(sp)                                                                                                                           |     gp = *(var_18h);
    0x0008895c addiu s2, s2, 0x20                                                                                                                        |     s2 += 0x20;
                                                                                                                                                         |     if (v0 == 0) {
    0x00088960 bnel v0, zero, 0x88908                                                                                                                    |         goto label_1;
                                                                                                                                                         |     }
                                                                                                                                                         | label_21:
    0x00088964 addiu v0, zero, 4                                                                                                                         |     v0 = 4;
                                                                                                                                                         |     if (s0 != s2) {
    0x00088968 beq s0, s2, 0x889a0                                                                                                                       |         
    0x0008896c lhu v1, 0x1e(s2)                                                                                                                          |         v1 = *((s2 + 15));
    0x00088970 lw a3, -0x7710(gp)                                                                                                                        |         a3 = *(gp);
                                                                                                                                                         |         if (v1 != v0) {
    0x00088974 bne v1, v0, 0x889c8                                                                                                                       |             goto label_22;
                                                                                                                                                         |         }
    0x00088978 lw v0, 0x10(s2)                                                                                                                           |         v0 = *((s2 + 4));
    0x0008897c sll v0, v0, 4                                                                                                                             |         v0 <<= 4;
    0x00088980 lw s3, 0x18(s2)                                                                                                                           |         s3 = *((s2 + 6));
                                                                                                                                                         |         if (v0 == 0) {
    0x00088984 beqz v0, 0x88bb4                                                                                                                          |             goto label_23;
                                                                                                                                                         |         }
    0x00088988 lhu v1, 0xe(s3)                                                                                                                           |         v1 = *((s3 + 7));
    0x0008898c addiu v0, zero, 3                                                                                                                         |         v0 = 3;
    0x00088990 addiu s4, zero, 0xd                                                                                                                       |         s4 = 0xd;
                                                                                                                                                         |         if (v1 != v0) {
    0x00088994 bne v1, v0, 0x88a14                                                                                                                       |             goto label_24;
                                                                                                                                                         |         }
    0x00088998 lw s0, 8(s3)                                                                                                                              |         s0 = *((s3 + 2));
    0x0008899c b 0x88b1c                                                                                                                                 |         goto label_25;
                                                                                                                                                         |     }
    0x000889a0 lw a3, -0x7710(gp)                                                                                                                        |     a3 = *(gp);
                                                                                                                                                         |     /* str.rapidjson::GenericValue_Encoding__Allocator__rapidjson::GenericValue_Encoding__Allocator_::operator___const_rapidjson::GenericValue_Encoding__SourceAllocator____with_SourceAllocator__rapidjson::MemoryPoolAllocator____Encoding__rapidjson::UTF8____Allocator__rapidjson::MemoryPoolAllocator___ */
                                                                                                                                                         | label_8:
    0x000889a4 addiu a3, a3, -0x8000                                                                                                                     |     a3 += -0x8000;
    0x000889a8 addiu a2, zero, 0x46f                                                                                                                     |     a2 = 0x46f;
    0x000889ac lw a1, -0x7fcc(gp)                                                                                                                        |     a1 = *(gp);
                                                                                                                                                         |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x000889b0 addiu a1, a1, 0x2aa8                                                                                                                      |     a1 += 0x2aa8;
    0x000889b4 lw a0, -0x7fcc(gp)                                                                                                                        |     a0 = *(gp);
                                                                                                                                                         |     /* str.false */
    0x000889b8 addiu a0, a0, 0x48ec                                                                                                                      |     a0 += 0x48ec;
    0x000889bc lw t9, -0x7644(gp)                                                                                                                        |     t9 = sym.imp.__assert_fail;
    0x000889c0 jalr t9                                                                                                                                   |     t9 ();
    0x000889c4 nop                                                                                                                                       |     
                                                                                                                                                         | label_22:
    0x000889c8 addiu a3, a3, -0x7d20                                                                                                                     |     a3 += -0x7d20;
    0x000889cc addiu a2, zero, 0x639                                                                                                                     |     a2 = 0x639;
    0x000889d0 lw a1, -0x7fcc(gp)                                                                                                                        |     a1 = *(gp);
                                                                                                                                                         |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x000889d4 addiu a1, a1, 0x2aa8                                                                                                                      |     a1 += 0x2aa8;
    0x000889d8 lw a0, -0x7fcc(gp)                                                                                                                        |     a0 = *(gp);
                                                                                                                                                         |     /* str.IsArray__ */
    0x000889dc addiu a0, a0, 0x2bc8                                                                                                                      |     a0 += aav.0x00002bc8;
    0x000889e0 lw t9, -0x7644(gp)                                                                                                                        |     t9 = sym.imp.__assert_fail;
    0x000889e4 jalr t9                                                                                                                                   |     t9 ();
    0x000889e8 nop                                                                                                                                       |     
                                                                                                                                                         | label_3:
    0x000889ec lw a3, -0x7710(gp)                                                                                                                        |     a3 = *(gp);
                                                                                                                                                         |     /* str.rapidjson::GenericValue_Encoding__Allocator__rapidjson::GenericValue_Encoding__Allocator_::End____with_Encoding__rapidjson::UTF8____Allocator__rapidjson::MemoryPoolAllocator____rapidjson::GenericValue_Encoding__Allocator_::ValueIterator__rapidjson::GenericValue_rapidjson::UTF8_____ */
    0x000889f0 addiu a3, a3, -0x7e40                                                                                                                     |     a3 += -0x7e40;
    0x000889f4 addiu a2, zero, 0x63c                                                                                                                     |     a2 = aav.0x0000063c;
    0x000889f8 lw a1, -0x7fcc(gp)                                                                                                                        |     a1 = *(gp);
                                                                                                                                                         |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x000889fc addiu a1, a1, 0x2aa8                                                                                                                      |     a1 += 0x2aa8;
    0x00088a00 lw a0, -0x7fcc(gp)                                                                                                                        |     a0 = *(gp);
                                                                                                                                                         |     /* str.IsArray__ */
    0x00088a04 addiu a0, a0, 0x2bc8                                                                                                                      |     a0 += aav.0x00002bc8;
    0x00088a08 lw t9, -0x7644(gp)                                                                                                                        |     t9 = sym.imp.__assert_fail;
    0x00088a0c jalr t9                                                                                                                                   |     t9 ();
    0x00088a10 nop                                                                                                                                       |     
                                                                                                                                                         | label_24:
    0x00088a14 lw a3, -0x7f84(gp)                                                                                                                        |     a3 = *(gp);
                                                                                                                                                         |     /* str.rapidjson::GenericValue_Encoding__Allocator_::MemberIterator_rapidjson::GenericValue_Encoding__Allocator_::FindMember_const_rapidjson::GenericValue_Encoding__SourceAllocator____with_SourceAllocator__rapidjson::MemoryPoolAllocator____Encoding__rapidjson::UTF8____Allocator__rapidjson::MemoryPoolAllocator____rapidjson::GenericValue_Encoding__Allocator_::MemberIterator__rapidjson::GenericMemberIterator_false__rapidjson::UTF8____rapidjson::MemoryPoolAllocator_____ */
                                                                                                                                                         | label_4:
    0x00088a18 addiu a3, a3, 0x7e28                                                                                                                      |     a3 += 0x7e28;
    0x00088a1c addiu a2, zero, 0x4e3                                                                                                                     |     a2 = 0x4e3;
    0x00088a20 lw a1, -0x7fcc(gp)                                                                                                                        |     a1 = *(gp);
                                                                                                                                                         |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x00088a24 addiu a1, a1, 0x2aa8                                                                                                                      |     a1 += 0x2aa8;
    0x00088a28 lw a0, -0x7fcc(gp)                                                                                                                        |     a0 = *(gp);
                                                                                                                                                         |     /* str.IsObject__ */
    0x00088a2c addiu a0, a0, 0x2b0c                                                                                                                      |     a0 += 0x2b0c;
    0x00088a30 lw t9, -0x7644(gp)                                                                                                                        |     t9 = sym.imp.__assert_fail;
    0x00088a34 jalr t9                                                                                                                                   |     t9 ();
    0x00088a38 nop                                                                                                                                       |     
                                                                                                                                                         |     do {
    0x00088a3c addiu v0, zero, 6                                                                                                                         |         v0 = 6;
                                                                                                                                                         |         if (v1 == v0) {
    0x00088a40 beql v1, v0, 0x88a84                                                                                                                      |             goto label_26;
                                                                                                                                                         |         }
    0x00088a44 lw a1, 8(s0)                                                                                                                              |         a1 = *((s0 + 2));
    0x00088a48 addiu s0, s0, 0x20                                                                                                                        |         s0 += 0x20;
                                                                                                                                                         | label_2:
    0x00088a4c lw a3, -0x7710(gp)                                                                                                                        |         a3 = *(gp);
                                                                                                                                                         |         if (s1 == s0) {
    0x00088a50 beq s1, s0, 0x88b68                                                                                                                       |             goto label_27;
                                                                                                                                                         |         }
    0x00088a54 lhu v0, 0xe(s0)                                                                                                                           |         v0 = *((s0 + 7));
    0x00088a58 andi v1, v0, 0x400                                                                                                                        |         v1 = v0 & aav.0x00000400;
    0x00088a5c lw a3, -0x7f84(gp)                                                                                                                        |         a3 = *(gp);
                                                                                                                                                         |         if (v1 == 0) {
    0x00088a60 beqz v1, 0x88b44                                                                                                                          |             goto label_28;
                                                                                                                                                         |         }
    0x00088a64 andi v0, v0, 0x1000                                                                                                                       |         v0 &= aav.0x00001000;
                                                                                                                                                         | label_5:
    0x00088a68 beql v0, zero, 0x88a3c                                                                                                                    |         
                                                                                                                                                         |     } while (v0 == 0);
    0x00088a6c lw v1, (s0)                                                                                                                               |     v1 = *(s0);
    0x00088a70 lb v0, 0xd(s0)                                                                                                                            |     v0 = *((s0 + 13));
    0x00088a74 addiu v1, s4, -6                                                                                                                          |     v1 = s4 + -6;
    0x00088a78 addiu s0, s0, 0x20                                                                                                                        |     s0 += 0x20;
                                                                                                                                                         |     if (v1 == v0) {
    0x00088a7c bnel v1, v0, 0x88a4c                                                                                                                      |         goto label_2;
                                                                                                                                                         |     }
    0x00088a80 move a1, s0                                                                                                                               |     a1 = s0;
                                                                                                                                                         | label_26:
    0x00088a84 addiu a2, zero, 6                                                                                                                         |     a2 = 6;
                                                                                                                                                         |     if (a1 == s5) {
    0x00088a88 beq a1, s5, 0x88aa8                                                                                                                       |         goto label_29;
                                                                                                                                                         |     }
    0x00088a8c move a0, s6                                                                                                                               |     a0 = s6;
    0x00088a90 lw t9, -0x7448(gp)                                                                                                                        |     t9 = sym.imp.memcmp;
    0x00088a94 jalr t9                                                                                                                                   |     t9 ();
    0x00088a98 nop                                                                                                                                       |     
    0x00088a9c lw gp, 0x18(sp)                                                                                                                           |     gp = *(var_18h);
    0x00088aa0 addiu s0, s0, 0x20                                                                                                                        |     s0 += 0x20;
                                                                                                                                                         |     if (v0 == 0) {
    0x00088aa4 bnel v0, zero, 0x88a4c                                                                                                                    |         goto label_2;
                                                                                                                                                         |     }
                                                                                                                                                         | label_29:
    0x00088aa8 lw a3, -0x7710(gp)                                                                                                                        |     a3 = *(gp);
                                                                                                                                                         |     if (s0 == s1) {
    0x00088aac beq s0, s1, 0x88b68                                                                                                                       |         goto label_27;
                                                                                                                                                         |     }
    0x00088ab0 lhu v0, 0x1e(s0)                                                                                                                          |     v0 = *((s0 + 15));
    0x00088ab4 andi v1, v0, 0x400                                                                                                                        |     v1 = v0 & aav.0x00000400;
    0x00088ab8 andi v0, v0, 0x1000                                                                                                                       |     v0 &= aav.0x00001000;
                                                                                                                                                         |     if (v1 == 0) {
    0x00088abc beqz v1, 0x88b8c                                                                                                                          |         goto label_30;
                                                                                                                                                         |     }
                                                                                                                                                         |     if (v0 != 0) {
    0x00088ac0 beql v0, zero, 0x88acc                                                                                                                    |         
    0x00088ac4 lw a1, 0x18(s0)                                                                                                                           |         a1 = *((s0 + 6));
    0x00088ac8 addiu a1, s0, 0x10                                                                                                                        |         a1 = s0 + 0x10;
                                                                                                                                                         |     }
    0x00088acc move a0, s7                                                                                                                               |     a0 = s7;
    0x00088ad0 lw t9, -0x7354(gp)                                                                                                                        |     t9 = *(gp);
    0x00088ad4 jalr t9                                                                                                                                   |     t9 ();
    0x00088ad8 nop                                                                                                                                       |     
    0x00088adc lw gp, 0x18(sp)                                                                                                                           |     gp = *(var_18h);
    0x00088ae0 addiu v0, zero, 4                                                                                                                         |     v0 = 4;
                                                                                                                                                         |     if (v0 == 0) {
    0x00088ae4 beqz v0, 0x88c2c                                                                                                                          |         goto label_31;
                                                                                                                                                         |     }
    0x00088ae8 lhu v1, 0x1e(s2)                                                                                                                          |     v1 = *((s2 + 15));
    0x00088aec addiu s3, s3, 0x10                                                                                                                        |     s3 += 0x10;
                                                                                                                                                         |     if (v1 != v0) {
    0x00088af0 bne v1, v0, 0x889ec                                                                                                                       |         goto label_3;
                                                                                                                                                         |     }
    0x00088af4 lw v0, 0x10(s2)                                                                                                                           |     v0 = *((s2 + 4));
    0x00088af8 sll v1, v0, 4                                                                                                                             |     v1 = v0 << 4;
    0x00088afc lw v0, 0x18(s2)                                                                                                                           |     v0 = *((s2 + 6));
    0x00088b00 addu v0, v0, v1                                                                                                                           |     v0 += v1;
    0x00088b04 addiu v0, zero, 3                                                                                                                         |     v0 = 3;
                                                                                                                                                         |     if (s3 == v0) {
    0x00088b08 beq s3, v0, 0x88bb4                                                                                                                       |         goto label_23;
                                                                                                                                                         |     }
    0x00088b0c lhu v1, 0xe(s3)                                                                                                                           |     v1 = *((s3 + 7));
    0x00088b10 lw a3, -0x7f84(gp)                                                                                                                        |     a3 = *(gp);
                                                                                                                                                         |     if (v1 != v0) {
    0x00088b14 bne v1, v0, 0x88a18                                                                                                                       |         goto label_4;
                                                                                                                                                         |     }
    0x00088b18 lw s0, 8(s3)                                                                                                                              |     s0 = *((s3 + 2));
                                                                                                                                                         | label_25:
    0x00088b1c lw s1, (s3)                                                                                                                               |     s1 = *(s3);
    0x00088b20 sll s1, s1, 5                                                                                                                             |     s1 <<= 5;
    0x00088b24 addu s1, s0, s1                                                                                                                           |     s1 = s0 + s1;
    0x00088b28 lw a3, -0x7710(gp)                                                                                                                        |     a3 = *(gp);
                                                                                                                                                         |     if (s1 == s0) {
    0x00088b2c beq s1, s0, 0x88b68                                                                                                                       |         goto label_27;
                                                                                                                                                         |     }
    0x00088b30 lhu v0, 0xe(s0)                                                                                                                           |     v0 = *((s0 + 7));
    0x00088b34 andi v1, v0, 0x400                                                                                                                        |     v1 = v0 & aav.0x00000400;
    0x00088b38 andi v0, v0, 0x1000                                                                                                                       |     v0 &= aav.0x00001000;
                                                                                                                                                         |     if (v1 != 0) {
    0x00088b3c bnez v1, 0x88a68                                                                                                                          |         goto label_5;
                                                                                                                                                         |     }
    0x00088b40 lw a3, -0x7f84(gp)                                                                                                                        |     a3 = *(gp);
                                                                                                                                                         |     /* str.bool_rapidjson::GenericValue_Encoding__Allocator_::StringEqual_const_rapidjson::GenericValue_Encoding__SourceAllocator___const__with_SourceAllocator__rapidjson::MemoryPoolAllocator____Encoding__rapidjson::UTF8____Allocator__rapidjson::MemoryPoolAllocator___ */
                                                                                                                                                         | label_28:
    0x00088b44 addiu a3, a3, 0x7bb4                                                                                                                      |     a3 += 0x7bb4;
    0x00088b48 addiu a2, zero, 0x829                                                                                                                     |     a2 = 0x829;
    0x00088b4c lw a1, -0x7fcc(gp)                                                                                                                        |     a1 = *(gp);
                                                                                                                                                         |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x00088b50 addiu a1, a1, 0x2aa8                                                                                                                      |     a1 += 0x2aa8;
    0x00088b54 lw a0, -0x7fcc(gp)                                                                                                                        |     a0 = *(gp);
                                                                                                                                                         |     /* str.rhs.IsString__ */
    0x00088b58 addiu a0, a0, 0x48d4                                                                                                                      |     a0 += 0x48d4;
    0x00088b5c lw t9, -0x7644(gp)                                                                                                                        |     t9 = sym.imp.__assert_fail;
    0x00088b60 jalr t9                                                                                                                                   |     t9 ();
    0x00088b64 nop                                                                                                                                       |     
                                                                                                                                                         |     /* str.rapidjson::GenericValue_Encoding__Allocator__rapidjson::GenericValue_Encoding__Allocator_::operator___const_rapidjson::GenericValue_Encoding__SourceAllocator____with_SourceAllocator__rapidjson::MemoryPoolAllocator____Encoding__rapidjson::UTF8____Allocator__rapidjson::MemoryPoolAllocator___ */
                                                                                                                                                         | label_27:
    0x00088b68 addiu a3, a3, -0x8000                                                                                                                     |     a3 += -0x8000;
    0x00088b6c addiu a2, zero, 0x46f                                                                                                                     |     a2 = 0x46f;
    0x00088b70 lw a1, -0x7fcc(gp)                                                                                                                        |     a1 = *(gp);
                                                                                                                                                         |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x00088b74 addiu a1, a1, 0x2aa8                                                                                                                      |     a1 += 0x2aa8;
    0x00088b78 lw a0, -0x7fcc(gp)                                                                                                                        |     a0 = *(gp);
                                                                                                                                                         |     /* str.false */
    0x00088b7c addiu a0, a0, 0x48ec                                                                                                                      |     a0 += 0x48ec;
    0x00088b80 lw t9, -0x7644(gp)                                                                                                                        |     t9 = sym.imp.__assert_fail;
    0x00088b84 jalr t9                                                                                                                                   |     t9 ();
    0x00088b88 nop                                                                                                                                       |     
                                                                                                                                                         | label_30:
    0x00088b8c lw a3, -0x7710(gp)                                                                                                                        |     a3 = *(gp);
                                                                                                                                                         |     /* str.const_Ch_rapidjson::GenericValue_Encoding__Allocator_::GetString___const__with_Encoding__rapidjson::UTF8____Allocator__rapidjson::MemoryPoolAllocator____rapidjson::GenericValue_Encoding__Allocator_::Ch__char_ */
    0x00088b90 addiu a3, a3, -0x7b60                                                                                                                     |     a3 += -0x7b60;
    0x00088b94 addiu a2, zero, 0x6e9                                                                                                                     |     a2 = 0x6e9;
    0x00088b98 lw a1, -0x7fcc(gp)                                                                                                                        |     a1 = *(gp);
                                                                                                                                                         |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x00088b9c addiu a1, a1, 0x2aa8                                                                                                                      |     a1 += 0x2aa8;
    0x00088ba0 lw a0, -0x7fcc(gp)                                                                                                                        |     a0 = *(gp);
                                                                                                                                                         |     /* esilref: 'IsString()' */
    0x00088ba4 addiu a0, a0, 0x2b20                                                                                                                      |     a0 += 0x2b20;
    0x00088ba8 lw t9, -0x7644(gp)                                                                                                                        |     t9 = sym.imp.__assert_fail;
    0x00088bac jalr t9                                                                                                                                   |     t9 ();
    0x00088bb0 nop                                                                                                                                       |     
                                                                                                                                                         | label_23:
    0x00088bb4 lhu v1, 0x5e(sp)                                                                                                                          |     v1 = *(var_5eh);
    0x00088bb8 addiu v0, zero, 4                                                                                                                         |     v0 = 4;
    0x00088bbc addiu fp, fp, 0x10                                                                                                                        |     fp += 0x10;
                                                                                                                                                         |     if (v1 != v0) {
    0x00088bc0 bne v1, v0, 0x88880                                                                                                                       |         goto label_6;
                                                                                                                                                         |     }
    0x00088bc4 lw v0, 0x50(sp)                                                                                                                           |     v0 = *(var_50h);
    0x00088bc8 sll v1, v0, 4                                                                                                                             |     v1 = v0 << 4;
    0x00088bcc lw v0, 0x58(sp)                                                                                                                           |     v0 = *(var_58h);
    0x00088bd0 addu v0, v0, v1                                                                                                                           |     v0 += v1;
    0x00088bd4 addiu v0, zero, 3                                                                                                                         |     v0 = 3;
                                                                                                                                                         |     if (fp == v0) {
    0x00088bd8 beq fp, v0, 0x88c24                                                                                                                       |         goto label_32;
                                                                                                                                                         |     }
    0x00088bdc lhu v1, 0xe(fp)                                                                                                                           |     v1 = *(arg_eh);
    0x00088be0 lw a3, -0x7f84(gp)                                                                                                                        |     a3 = *(gp);
                                                                                                                                                         |     if (v1 == v0) {
    0x00088be4 bnel v1, v0, 0x888ac                                                                                                                      |         goto label_7;
                                                                                                                                                         |     }
                                                                                                                                                         | label_19:
    0x00088be8 lw s2, 8(fp)                                                                                                                              |     s2 = *(arg_8h);
    0x00088bec lw s0, (fp)                                                                                                                               |     s0 = *(fp);
    0x00088bf0 sll s0, s0, 5                                                                                                                             |     s0 <<= 5;
    0x00088bf4 addu s0, s2, s0                                                                                                                           |     s0 = s2 + s0;
                                                                                                                                                         |     if (s2 == s0) {
    0x00088bf8 beql s2, s0, 0x889a4                                                                                                                      |         goto label_8;
                                                                                                                                                         |     }
    0x00088bfc lw a3, -0x7710(gp)                                                                                                                        |     a3 = *(gp);
    0x00088c00 lhu v0, 0xe(s2)                                                                                                                           |     v0 = *((s2 + 7));
    0x00088c04 andi v1, v0, 0x400                                                                                                                        |     v1 = v0 & aav.0x00000400;
    0x00088c08 lw v1, 0x24(sp)                                                                                                                           |     v1 = *(var_24h_4);
                                                                                                                                                         |     if (v1 == 0) {
    0x00088c0c beqz v1, 0x888d0                                                                                                                          |         goto label_9;
                                                                                                                                                         |     }
    0x00088c10 addiu s1, v1, 0x7bcc                                                                                                                      |     s1 = v1 + 0x7bcc;
    0x00088c14 addiu s3, zero, 0xd                                                                                                                       |     s3 = 0xd;
    0x00088c18 b 0x88920                                                                                                                                 |     goto label_10;
                                                                                                                                                         | label_17:
    0x00088c1c move s0, zero                                                                                                                             |     s0 = 0;
    0x00088c20 b 0x88c30                                                                                                                                 |     goto label_33;
                                                                                                                                                         | label_32:
    0x00088c24 move s0, zero                                                                                                                             |     s0 = 0;
    0x00088c28 b 0x88c30                                                                                                                                 |     goto label_33;
                                                                                                                                                         | label_31:
    0x00088c2c addiu s0, zero, 1                                                                                                                         |     s0 = 1;
                                                                                                                                                         | label_33:
    0x00088c30 addiu a0, sp, 0x50                                                                                                                        |     a0 = sp + 0x50;
    0x00088c34 lw t9, -0x7fbc(gp)                                                                                                                        |     t9 = *(gp);
    0x00088c38 jalr t9                                                                                                                                   |     t9 ();
    0x00088c3c nop                                                                                                                                       |     
    0x00088c40 lw gp, 0x18(sp)                                                                                                                           |     gp = *(var_18h);
    0x00088c44 lw a0, 0x2c(sp)                                                                                                                           |     a0 = *(var_2ch);
    0x00088c48 lw t9, -0x7440(gp)                                                                                                                        |     t9 = sym.imp.fclose;
    0x00088c4c jalr t9                                                                                                                                   |     t9 ();
    0x00088c50 nop                                                                                                                                       |     
    0x00088c54 lw gp, 0x18(sp)                                                                                                                           |     gp = *(var_18h);
    0x00088c58 lw a0, 0x28(sp)                                                                                                                           |     a0 = *(var_28h);
    0x00088c5c lw t9, -0x7518(gp)                                                                                                                        |     t9 = sym.imp.free;
    0x00088c60 jalr t9                                                                                                                                   |     t9 ();
    0x00088c64 nop                                                                                                                                       |     
    0x00088c68 lw gp, 0x18(sp)                                                                                                                           |     gp = *(var_18h);
    0x00088c6c move v0, s0                                                                                                                               |     v0 = s0;
    0x00088c70 lw a0, 0x8c(sp)                                                                                                                           |     a0 = *(var_8ch);
    0x00088c74 lw v1, -0x736c(gp)                                                                                                                        |     v1 = *((gp - 7387));
    0x00088c78 lw v1, (v1)                                                                                                                               |     v1 = *(v1);
    0x00088c7c lw ra, 0xb4(sp)                                                                                                                           |     ra = *(var_b4h);
                                                                                                                                                         |     if (a0 != v1) {
    0x00088c80 bne a0, v1, 0x88f94                                                                                                                       |         goto label_34;
                                                                                                                                                         |     }
    0x00088c84 lw fp, 0xb0(sp)                                                                                                                           |     fp = *(var_b0h);
    0x00088c88 lw s7, 0xac(sp)                                                                                                                           |     s7 = *(var_ach);
    0x00088c8c lw s6, 0xa8(sp)                                                                                                                           |     s6 = *(var_a8h);
    0x00088c90 lw s5, 0xa4(sp)                                                                                                                           |     s5 = *(var_a4h);
    0x00088c94 lw s4, 0xa0(sp)                                                                                                                           |     s4 = *(var_a0h);
    0x00088c98 lw s3, 0x9c(sp)                                                                                                                           |     s3 = *(var_9ch);
    0x00088c9c lw s2, 0x98(sp)                                                                                                                           |     s2 = *(var_98h);
    0x00088ca0 lw s1, 0x94(sp)                                                                                                                           |     s1 = *(var_94h);
    0x00088ca4 lw s0, 0x90(sp)                                                                                                                           |     s0 = *(var_90h);
    0x00088ca8 addiu sp, sp, 0xb8                                                                                                                        |     
    0x00088cac jr ra                                                                                                                                     |     return v0;
                                                                                                                                                         | label_14:
    0x00088cb0 addiu a0, zero, 0x38                                                                                                                      |     a0 = 0x38;
    0x00088cb4 lw t9, -0x73ac(gp)                                                                                                                        |     t9 = sym.imp.__cxa_allocate_exception;
    0x00088cb8 jalr t9                                                                                                                                   |     t9 ();
    0x00088cbc nop                                                                                                                                       |     
    0x00088cc0 lw gp, 0x18(sp)                                                                                                                           |     gp = *(var_18h);
    0x00088cc4 move s2, v0                                                                                                                               |     s2 = v0;
    0x00088cc8 addiu a2, sp, 0x34                                                                                                                        |     a2 = sp + 0x34;
    0x00088ccc lw a1, -0x7f84(gp)                                                                                                                        |     a1 = *(gp);
                                                                                                                                                         |     /* str.Out_of_memory */
    0x00088cd0 addiu a1, a1, 0x6108                                                                                                                      |     a1 += 0x6108;
    0x00088cd4 addiu a0, sp, 0x38                                                                                                                        |     a0 = sp + 0x38;
    0x00088cd8 lw t9, -0x753c(gp)                                                                                                                        |     t9 = *(gp);
    0x00088cdc jalr t9                                                                                                                                   |     t9 ();
    0x00088ce0 nop                                                                                                                                       |     
    0x00088ce4 lw gp, 0x18(sp)                                                                                                                           |     gp = *(var_18h);
    0x00088ce8 addiu v0, sp, 0x58                                                                                                                        |     v0 = sp + 0x58;
    0x00088cec sw v0, 0x50(sp)                                                                                                                           |     *(var_50h) = v0;
    0x00088cf0 sw zero, 0x54(sp)                                                                                                                         |     *(var_54h) = 0;
    0x00088cf4 sb zero, 0x58(sp)                                                                                                                         |     *(var_58h) = 0;
    0x00088cf8 addiu v0, sp, 0x50                                                                                                                        |     v0 = sp + 0x50;
    0x00088cfc sw v0, 0x10(sp)                                                                                                                           |     *(var_10h) = v0;
    0x00088d00 move a3, zero                                                                                                                             |     a3 = 0;
    0x00088d04 addiu a2, sp, 0x38                                                                                                                        |     a2 = sp + 0x38;
    0x00088d08 addiu a1, zero, 0x3e9                                                                                                                     |     a1 = 0x3e9;
    0x00088d0c move a0, s2                                                                                                                               |     a0 = s2;
    0x00088d10 lw t9, -0x7f30(gp)                                                                                                                        |     t9 = *(gp);
    0x00088d14 bal 0x83d40                                                                                                                               |     method ();
    0x00088d18 nop                                                                                                                                       |     
    0x00088d1c lw gp, 0x18(sp)                                                                                                                           |     gp = *(var_18h);
    0x00088d20 lw a0, 0x50(sp)                                                                                                                           |     a0 = *(var_50h);
    0x00088d24 addiu v0, sp, 0x58                                                                                                                        |     v0 = sp + 0x58;
    0x00088d28 lw t9, -0x7488(gp)                                                                                                                        |     t9 = *((gp - 7458));
                                                                                                                                                         |     if (a0 != v0) {
    0x00088d2c beq a0, v0, 0x88d3c                                                                                                                       |         
    0x00088d30 jalr t9                                                                                                                                   |         t9 ();
    0x00088d34 nop                                                                                                                                       |         
    0x00088d38 lw gp, 0x18(sp)                                                                                                                           |         gp = *(var_18h);
                                                                                                                                                         |     }
    0x00088d3c lw a0, 0x38(sp)                                                                                                                           |     a0 = *(var_38h);
    0x00088d40 addiu v0, sp, 0x40                                                                                                                        |     v0 = sp + 0x40;
    0x00088d44 lw t9, -0x7488(gp)                                                                                                                        |     t9 = *((gp - 7458));
                                                                                                                                                         |     if (a0 != v0) {
    0x00088d48 beq a0, v0, 0x88d58                                                                                                                       |         
    0x00088d4c jalr t9                                                                                                                                   |         t9 ();
    0x00088d50 nop                                                                                                                                       |         
    0x00088d54 lw gp, 0x18(sp)                                                                                                                           |         gp = *(var_18h);
                                                                                                                                                         |     }
    0x00088d58 lw a2, -0x7f2c(gp)                                                                                                                        |     a2 = *(gp);
    0x00088d5c lw a1, -0x7f28(gp)                                                                                                                        |     a1 = *(gp);
    0x00088d60 move a0, s2                                                                                                                               |     a0 = s2;
    0x00088d64 lw t9, -0x75e0(gp)                                                                                                                        |     t9 = sym.imp.__cxa_throw;
    0x00088d68 jalr t9                                                                                                                                   |     t9 ();
    0x00088d6c nop                                                                                                                                       |     
    0x00088d70 lw gp, 0x18(sp)                                                                                                                           |     gp = *(var_18h);
    0x00088d74 addiu v0, zero, 1                                                                                                                         |     v0 = 1;
    0x00088d78 b 0x8880c                                                                                                                                 |     goto label_11;
                                                                                                                                                         | label_13:
    0x00088d7c addiu a0, zero, 0x38                                                                                                                      |     a0 = 0x38;
    0x00088d80 lw t9, -0x73ac(gp)                                                                                                                        |     t9 = sym.imp.__cxa_allocate_exception;
    0x00088d84 jalr t9                                                                                                                                   |     t9 ();
    0x00088d88 nop                                                                                                                                       |     
    0x00088d8c lw gp, 0x18(sp)                                                                                                                           |     gp = *(var_18h);
    0x00088d90 move s1, v0                                                                                                                               |     s1 = v0;
    0x00088d94 addiu a2, sp, 0x34                                                                                                                        |     a2 = sp + 0x34;
    0x00088d98 lw a1, -0x7f84(gp)                                                                                                                        |     a1 = *(gp);
                                                                                                                                                         |     /* str.Internal_error__getFeatureCgiResponse */
    0x00088d9c addiu a1, a1, 0x6118                                                                                                                      |     a1 += 0x6118;
    0x00088da0 addiu a0, sp, 0x38                                                                                                                        |     a0 = sp + 0x38;
    0x00088da4 lw t9, -0x753c(gp)                                                                                                                        |     t9 = *(gp);
    0x00088da8 jalr t9                                                                                                                                   |     t9 ();
    0x00088dac nop                                                                                                                                       |     
    0x00088db0 lw gp, 0x18(sp)                                                                                                                           |     gp = *(var_18h);
    0x00088db4 addiu v0, sp, 0x58                                                                                                                        |     v0 = sp + 0x58;
    0x00088db8 sw v0, 0x50(sp)                                                                                                                           |     *(var_50h) = v0;
    0x00088dbc sw zero, 0x54(sp)                                                                                                                         |     *(var_54h) = 0;
    0x00088dc0 sb zero, 0x58(sp)                                                                                                                         |     *(var_58h) = 0;
    0x00088dc4 addiu v0, sp, 0x50                                                                                                                        |     v0 = sp + 0x50;
    0x00088dc8 sw v0, 0x10(sp)                                                                                                                           |     *(var_10h) = v0;
    0x00088dcc move a3, zero                                                                                                                             |     a3 = 0;
    0x00088dd0 addiu a2, sp, 0x38                                                                                                                        |     a2 = sp + 0x38;
    0x00088dd4 addiu a1, zero, 0x270f                                                                                                                    |     a1 = 0x270f;
    0x00088dd8 move a0, s1                                                                                                                               |     a0 = s1;
    0x00088ddc lw t9, -0x7f30(gp)                                                                                                                        |     t9 = *(gp);
    0x00088de0 bal 0x83d40                                                                                                                               |     method ();
    0x00088de4 nop                                                                                                                                       |     
    0x00088de8 lw gp, 0x18(sp)                                                                                                                           |     gp = *(var_18h);
    0x00088dec lw a0, 0x50(sp)                                                                                                                           |     a0 = *(var_50h);
    0x00088df0 addiu v0, sp, 0x58                                                                                                                        |     v0 = sp + 0x58;
    0x00088df4 lw t9, -0x7488(gp)                                                                                                                        |     t9 = *((gp - 7458));
                                                                                                                                                         |     if (a0 != v0) {
    0x00088df8 beq a0, v0, 0x88e08                                                                                                                       |         
    0x00088dfc jalr t9                                                                                                                                   |         t9 ();
    0x00088e00 nop                                                                                                                                       |         
    0x00088e04 lw gp, 0x18(sp)                                                                                                                           |         gp = *(var_18h);
                                                                                                                                                         |     }
    0x00088e08 lw a0, 0x38(sp)                                                                                                                           |     a0 = *(var_38h);
    0x00088e0c addiu v0, sp, 0x40                                                                                                                        |     v0 = sp + 0x40;
    0x00088e10 lw t9, -0x7488(gp)                                                                                                                        |     t9 = *((gp - 7458));
                                                                                                                                                         |     if (a0 != v0) {
    0x00088e14 beq a0, v0, 0x88e24                                                                                                                       |         
    0x00088e18 jalr t9                                                                                                                                   |         t9 ();
    0x00088e1c nop                                                                                                                                       |         
    0x00088e20 lw gp, 0x18(sp)                                                                                                                           |         gp = *(var_18h);
                                                                                                                                                         |     }
    0x00088e24 lw a2, -0x7f2c(gp)                                                                                                                        |     a2 = *(gp);
    0x00088e28 lw a1, -0x7f28(gp)                                                                                                                        |     a1 = *(gp);
    0x00088e2c move a0, s1                                                                                                                               |     a0 = s1;
    0x00088e30 lw t9, -0x75e0(gp)                                                                                                                        |     t9 = sym.imp.__cxa_throw;
    0x00088e34 jalr t9                                                                                                                                   |     t9 ();
    0x00088e38 nop                                                                                                                                       |     
    0x00088e3c lw gp, 0x18(sp)                                                                                                                           |     gp = *(var_18h);
    0x00088e40 move s0, a0                                                                                                                               |     s0 = a0;
    0x00088e44 lw a0, 0x50(sp)                                                                                                                           |     a0 = *(var_50h);
    0x00088e48 addiu v0, sp, 0x58                                                                                                                        |     v0 = sp + 0x58;
    0x00088e4c move s1, a1                                                                                                                               |     s1 = a1;
                                                                                                                                                         |     if (a0 != v0) {
    0x00088e50 beq a0, v0, 0x88e64                                                                                                                       |         
    0x00088e54 lw t9, -0x7488(gp)                                                                                                                        |         t9 = *((gp - 7458));
    0x00088e58 jalr t9                                                                                                                                   |         t9 ();
    0x00088e5c nop                                                                                                                                       |         
    0x00088e60 lw gp, 0x18(sp)                                                                                                                           |         gp = *(var_18h);
                                                                                                                                                         |     }
    0x00088e64 lw a0, 0x38(sp)                                                                                                                           |     a0 = *(var_38h);
    0x00088e68 addiu v0, sp, 0x40                                                                                                                        |     v0 = sp + 0x40;
    0x00088e6c lw t9, -0x7488(gp)                                                                                                                        |     t9 = *((gp - 7458));
                                                                                                                                                         |     if (a0 != v0) {
    0x00088e70 beq a0, v0, 0x88e80                                                                                                                       |         
    0x00088e74 jalr t9                                                                                                                                   |         t9 ();
    0x00088e78 nop                                                                                                                                       |         
    0x00088e7c lw gp, 0x18(sp)                                                                                                                           |         gp = *(var_18h);
                                                                                                                                                         |     }
    0x00088e80 move a0, s2                                                                                                                               |     a0 = s2;
    0x00088e84 lw t9, -0x7410(gp)                                                                                                                        |     t9 = *(gp);
    0x00088e88 jalr t9                                                                                                                                   |     t9 ();
    0x00088e8c nop                                                                                                                                       |     
    0x00088e90 lw gp, 0x18(sp)                                                                                                                           |     gp = *(var_18h);
    0x00088e94 move a0, s0                                                                                                                               |     a0 = s0;
    0x00088e98 move a1, s1                                                                                                                               |     a1 = s1;
    0x00088e9c b 0x88808                                                                                                                                 |     goto label_12;
                                                                                                                                                         | label_16:
    0x00088eb0 lw t9, -0x7394(gp)                                                                                                                        |     t9 = sym.imp.__cxa_begin_catch;
    0x00088eb4 jalr t9                                                                                                                                   |     t9 ();
    0x00088eb8 nop                                                                                                                                       |     
    0x00088ebc lw gp, 0x18(sp)                                                                                                                           |     gp = *(var_18h);
    0x00088ec0 lw a0, 0x2c(sp)                                                                                                                           |     a0 = *(var_2ch);
    0x00088ec4 lw t9, -0x7440(gp)                                                                                                                        |     t9 = sym.imp.fclose;
    0x00088ec8 jalr t9                                                                                                                                   |     t9 ();
    0x00088ecc nop                                                                                                                                       |     
    0x00088ed0 lw gp, 0x18(sp)                                                                                                                           |     gp = *(var_18h);
    0x00088ed4 lw v0, 0x28(sp)                                                                                                                           |     v0 = *(var_28h);
    0x00088ed8 move a0, v0                                                                                                                               |     a0 = v0;
                                                                                                                                                         |     if (v0 != 0) {
    0x00088edc beqz v0, 0x88ef0                                                                                                                          |         
    0x00088ee0 lw t9, -0x7518(gp)                                                                                                                        |         t9 = sym.imp.free;
    0x00088ee4 jalr t9                                                                                                                                   |         t9 ();
    0x00088ee8 nop                                                                                                                                       |         
    0x00088eec lw gp, 0x18(sp)                                                                                                                           |         gp = *(var_18h);
                                                                                                                                                         |     }
    0x00088ef0 lw t9, -0x755c(gp)                                                                                                                        |     t9 = sym.imp.__cxa_rethrow;
    0x00088ef4 jalr t9                                                                                                                                   |     t9 ();
    0x00088ef8 nop                                                                                                                                       |     
    0x00088efc lw gp, 0x18(sp)                                                                                                                           |     gp = *(var_18h);
    0x00088f00 move s0, a0                                                                                                                               |     s0 = a0;
    0x00088f04 lw t9, -0x75ac(gp)                                                                                                                        |     t9 = sym.imp.__cxa_end_catch;
    0x00088f08 jalr t9                                                                                                                                   |     t9 ();
    0x00088f0c nop                                                                                                                                       |     
    0x00088f10 lw gp, 0x18(sp)                                                                                                                           |     gp = *(var_18h);
    0x00088f14 move a0, s0                                                                                                                               |     a0 = s0;
    0x00088f18 lw t9, -0x75f8(gp)                                                                                                                        |     t9 = sym.imp._Unwind_Resume;
    0x00088f1c jalr t9                                                                                                                                   |     t9 ();
    0x00088f20 nop                                                                                                                                       |     
    0x00088f24 lw gp, 0x18(sp)                                                                                                                           |     gp = *(var_18h);
    0x00088f28 move s0, a0                                                                                                                               |     s0 = a0;
    0x00088f2c lw a0, 0x50(sp)                                                                                                                           |     a0 = *(var_50h);
    0x00088f30 addiu v0, sp, 0x58                                                                                                                        |     v0 = sp + 0x58;
    0x00088f34 lw t9, -0x7488(gp)                                                                                                                        |     t9 = *((gp - 7458));
                                                                                                                                                         |     if (a0 != v0) {
    0x00088f38 beq a0, v0, 0x88f48                                                                                                                       |         
    0x00088f3c jalr t9                                                                                                                                   |         t9 ();
    0x00088f40 nop                                                                                                                                       |         
    0x00088f44 lw gp, 0x18(sp)                                                                                                                           |         gp = *(var_18h);
                                                                                                                                                         |     }
    0x00088f48 lw a0, 0x38(sp)                                                                                                                           |     a0 = *(var_38h);
    0x00088f4c addiu v0, sp, 0x40                                                                                                                        |     v0 = sp + 0x40;
    0x00088f50 lw t9, -0x7488(gp)                                                                                                                        |     t9 = *((gp - 7458));
                                                                                                                                                         |     if (a0 == v0) {
    0x00088f54 beq a0, v0, 0x88f64                                                                                                                       |         goto label_35;
                                                                                                                                                         |     }
    0x00088f58 jalr t9                                                                                                                                   |     t9 ();
    0x00088f5c nop                                                                                                                                       |     
    0x00088f60 lw gp, 0x18(sp)                                                                                                                           |     gp = *(var_18h);
                                                                                                                                                         |     do {
                                                                                                                                                         | label_35:
    0x00088f64 move a0, s1                                                                                                                               |         a0 = s1;
    0x00088f68 lw t9, -0x7410(gp)                                                                                                                        |         t9 = *(gp);
    0x00088f6c jalr t9                                                                                                                                   |         t9 ();
    0x00088f70 nop                                                                                                                                       |         
    0x00088f74 lw gp, 0x18(sp)                                                                                                                           |         gp = *(var_18h);
    0x00088f78 move a0, s0                                                                                                                               |         a0 = s0;
    0x00088f7c lw t9, -0x75f8(gp)                                                                                                                        |         t9 = sym.imp._Unwind_Resume;
    0x00088f80 jalr t9                                                                                                                                   |         t9 ();
    0x00088f84 nop                                                                                                                                       |         
    0x00088f88 lw gp, 0x18(sp)                                                                                                                           |         gp = *(var_18h);
    0x00088f8c move s0, a0                                                                                                                               |         s0 = a0;
    0x00088f90 b 0x88f64                                                                                                                                 |         
                                                                                                                                                         |     } while (1);
                                                                                                                                                         | label_34:
    0x00088f94 lw t9, -0x74e8(gp)                                                                                                                        |     t9 = sym.imp.__stack_chk_fail;
    0x00088f98 jalr t9                                                                                                                                   |     t9 ();
    0x00088f9c nop                                                                                                                                       |     
                                                                                                                                                         | }
    ; assembly                                                                                                                                                                                               | /* r2dec pseudo code output */
                                                                                                                                                                                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/onscreencontrols @ 0x367b0 */
                                                                                                                                                                                                             | #include <stdint.h>
                                                                                                                                                                                                             |  
    ; (fcn) method.LanguageCgiResponse.includeUserAddedLocales_rapidjson::GenericDocument_rapidjson::UTF8_char___rapidjson::MemoryPoolAllocator_rapidjson::CrtAllocator___rapidjson::CrtAllocator__ ()       | void method_LanguageCgiResponse_includeUserAddedLocales_rapidjson::GenericDocument_rapidjson::UTF8_char_rapidjson::MemoryPoolAllocator_rapidjson::CrtAllocator_rapidjson::CrtAllocator_ () {
                                                                                                                                                                                                             |     /* LanguageCgiResponse::includeUserAddedLocales(rapidjson::GenericDocument<rapidjson::UTF8<char>, rapidjson::MemoryPoolAllocator<rapidjson::CrtAllocator>, rapidjson::CrtAllocator>&) */
    0x000367b0 lui gp, 9                                                                                                                                                                                     |     
    0x000367b4 addiu gp, gp, 0x7a90                                                                                                                                                                          |     
    0x000367b8 addu gp, gp, t9                                                                                                                                                                               |     gp += t9;
    0x000367bc addiu sp, sp, -0xd0                                                                                                                                                                           |     
    0x000367c0 sw ra, 0xcc(sp)                                                                                                                                                                               |     *(var_cch) = ra;
    0x000367c4 sw fp, 0xc8(sp)                                                                                                                                                                               |     *(var_c8h) = fp;
    0x000367c8 sw s7, 0xc4(sp)                                                                                                                                                                               |     *(var_c4h) = s7;
    0x000367cc sw s6, 0xc0(sp)                                                                                                                                                                               |     *(var_c0h) = s6;
    0x000367d0 sw s5, 0xbc(sp)                                                                                                                                                                               |     *(var_bch) = s5;
    0x000367d4 sw s4, 0xb8(sp)                                                                                                                                                                               |     *(var_b8h) = s4;
    0x000367d8 sw s3, 0xb4(sp)                                                                                                                                                                               |     *(var_b4h) = s3;
    0x000367dc sw s2, 0xb0(sp)                                                                                                                                                                               |     *(var_b0h) = s2;
    0x000367e0 sw s1, 0xac(sp)                                                                                                                                                                               |     *(var_ach) = s1;
    0x000367e4 sw s0, 0xa8(sp)                                                                                                                                                                               |     *(var_a8h) = s0;
    0x000367e8 sw gp, 0x18(sp)                                                                                                                                                                               |     *(var_18h) = gp;
    0x000367ec lw v0, -0x736c(gp)                                                                                                                                                                            |     v0 = *((gp - 7387));
    0x000367f0 lw v0, (v0)                                                                                                                                                                                   |     v0 = *(v0);
    0x000367f4 sw v0, 0xa4(sp)                                                                                                                                                                               |     *(var_a4h) = v0;
    0x000367f8 lw v0, 0x10(a1)                                                                                                                                                                               |     v0 = *((a1 + 4));
    0x000367fc sw v0, 0x28(sp)                                                                                                                                                                               |     *(var_28h) = v0;
                                                                                                                                                                                                             |     if (v0 != 0) {
    0x00036800 beqz v0, 0x36854                                                                                                                                                                              |         
    0x00036804 move s5, a0                                                                                                                                                                                   |         s5 = a0;
    0x00036808 move s7, a1                                                                                                                                                                                   |         s7 = a1;
    0x0003680c lw a1, -0x7f84(gp)                                                                                                                                                                            |         a1 = *(gp);
    0x00036810 addiu a1, a1, -0x3bac                                                                                                                                                                         |         a1 += -0x3bac;
    0x00036814 lw a0, -0x7fcc(gp)                                                                                                                                                                            |         a0 = *(gp);
                                                                                                                                                                                                             |         /* str._etc_onscreencontrols_postinst_post_added_features.json */
    0x00036818 addiu a0, a0, 0x7b94                                                                                                                                                                          |         a0 += 0x7b94;
    0x0003681c lw t9, -0x7360(gp)                                                                                                                                                                            |         t9 = sym.imp.fopen;
    0x00036820 jalr t9                                                                                                                                                                                       |         t9 ();
    0x00036824 nop                                                                                                                                                                                           |         
    0x00036828 lw gp, 0x18(sp)                                                                                                                                                                               |         gp = *(var_18h);
    0x0003682c move s0, v0                                                                                                                                                                                   |         s0 = v0;
    0x00036830 sw v0, 0x3c(sp)                                                                                                                                                                               |         *(var_3ch_3) = v0;
                                                                                                                                                                                                             |         if (v0 == 0) {
    0x00036834 beqz v0, 0x375b0                                                                                                                                                                              |             goto label_32;
                                                                                                                                                                                                             |         }
    0x00036838 move a0, v0                                                                                                                                                                                   |         a0 = v0;
    0x0003683c lw t9, -0x7e88(gp)                                                                                                                                                                            |         t9 = *(gp);
    0x00036840 bal 0x2b340                                                                                                                                                                                   |         method ();
    0x00036844 nop                                                                                                                                                                                           |         
    0x00036848 lw gp, 0x18(sp)                                                                                                                                                                               |         gp = *(var_18h);
    0x0003684c sw v0, 0x38(sp)                                                                                                                                                                               |         *(var_38h) = v0;
    0x00036850 b 0x3687c                                                                                                                                                                                     |         
                                                                                                                                                                                                             |     } else {
    0x00036854 lw a3, -0x7f84(gp)                                                                                                                                                                            |         a3 = *(gp);
                                                                                                                                                                                                             |         /* esilref: 'Allocator& rapidjson::GenericDocument<Encoding, Allocator, StackAllocator>::GetAllocator() [with Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; StackAllocator = rapidjson::CrtAllocator]' */
    0x00036858 addiu a3, a3, -0x52f0                                                                                                                                                                         |         a3 += -0x52f0;
    0x0003685c addiu a2, zero, 0x969                                                                                                                                                                         |         a2 = 0x969;
    0x00036860 lw a1, -0x7fcc(gp)                                                                                                                                                                            |         a1 = *(gp);
                                                                                                                                                                                                             |         /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x00036864 addiu a1, a1, 0x2aa8                                                                                                                                                                          |         a1 += 0x2aa8;
    0x00036868 lw a0, -0x7fcc(gp)                                                                                                                                                                            |         a0 = *(gp);
                                                                                                                                                                                                             |         /* str.allocator_ */
    0x0003686c addiu a0, a0, 0x2d78                                                                                                                                                                          |         a0 += 0x2d78;
    0x00036870 lw t9, -0x7644(gp)                                                                                                                                                                            |         t9 = sym.imp.__assert_fail;
    0x00036874 jalr t9                                                                                                                                                                                       |         t9 ();
    0x00036878 nop                                                                                                                                                                                           |         
                                                                                                                                                                                                             |     }
    0x0003687c move a0, s0                                                                                                                                                                                   |     a0 = s0;
    0x00036880 lw t9, -0x7440(gp)                                                                                                                                                                            |     t9 = sym.imp.fclose;
    0x00036884 jalr t9                                                                                                                                                                                       |     t9 ();
    0x00036888 nop                                                                                                                                                                                           |     
    0x0003688c lw gp, 0x18(sp)                                                                                                                                                                               |     gp = *(var_18h);
    0x00036890 lw v0, 0x38(sp)                                                                                                                                                                               |     v0 = *(var_38h);
    0x00036894 b 0x368b4                                                                                                                                                                                     |     
    0x000368b4 move a1, v0                                                                                                                                                                                   |     a1 = v0;
                                                                                                                                                                                                             |     if (v0 == 0) {
    0x000368b8 beqz v0, 0x375b0                                                                                                                                                                              |         goto label_32;
                                                                                                                                                                                                             |     }
    0x000368bc addiu a0, sp, 0x68                                                                                                                                                                            |     a0 = sp + 0x68;
    0x000368c0 lw t9, -0x7e84(gp)                                                                                                                                                                            |     t9 = *(gp);
    0x000368c4 jalr t9                                                                                                                                                                                       |     t9 ();
    0x000368c8 nop                                                                                                                                                                                           |     
    0x000368cc lw gp, 0x18(sp)                                                                                                                                                                               |     gp = *(var_18h);
    0x000368d0 lhu v1, 0x76(sp)                                                                                                                                                                              |     v1 = *(var_76h);
    0x000368d4 addiu v0, zero, 4                                                                                                                                                                             |     v0 = 4;
    0x000368d8 lw v0, 0x68(sp)                                                                                                                                                                               |     v0 = *(var_68h_2);
                                                                                                                                                                                                             |     if (v1 == v0) {
    0x000368dc bne v1, v0, 0x36910                                                                                                                                                                           |         
    0x000368e0 sll v0, v0, 4                                                                                                                                                                                 |         v0 <<= 4;
    0x000368e4 lw fp, 0x70(sp)                                                                                                                                                                               |         fp = *(var_70h_2);
                                                                                                                                                                                                             |         if (v0 == 0) {
    0x000368e8 beqz v0, 0x374f0                                                                                                                                                                              |             goto label_33;
                                                                                                                                                                                                             |         }
    0x000368ec lhu v1, 0xe(fp)                                                                                                                                                                               |         v1 = *(arg_eh);
    0x000368f0 addiu v0, zero, 3                                                                                                                                                                             |         v0 = 3;
    0x000368f4 lw v0, -0x7fcc(gp)                                                                                                                                                                            |         v0 = *(gp);
                                                                                                                                                                                                             |         if (v1 != v0) {
    0x000368f8 bne v1, v0, 0x36960                                                                                                                                                                           |             goto label_34;
                                                                                                                                                                                                             |         }
    0x000368fc sw v0, 0x34(sp)                                                                                                                                                                               |         *(var_34h_2) = v0;
    0x00036900 lw s6, -0x7fcc(gp)                                                                                                                                                                            |         s6 = *(gp);
                                                                                                                                                                                                             |         /* str.locale */
    0x00036904 addiu s6, s6, 0x48e4                                                                                                                                                                          |         s6 += 0x48e4;
    0x00036908 sw s6, 0x24(sp)                                                                                                                                                                               |         *(var_24h_3) = s6;
    0x0003690c b 0x374bc                                                                                                                                                                                     |         goto label_35;
                                                                                                                                                                                                             |     }
    0x00036910 lw a3, -0x7f84(gp)                                                                                                                                                                            |     a3 = *(gp);
                                                                                                                                                                                                             |     /* esilref: 'rapidjson::GenericValue<Encoding, Allocator>* rapidjson::GenericValue<Encoding, Allocator>::Begin() [with Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; rapidjson::GenericValue<Encoding, Allocator>::ValueIterator =  */
    0x00036914 addiu a3, a3, -0x5414                                                                                                                                                                         |     a3 += -0x5414;
    0x00036918 addiu a2, zero, 0x639                                                                                                                                                                         |     a2 = 0x639;
    0x0003691c lw a1, -0x7fcc(gp)                                                                                                                                                                            |     a1 = *(gp);
                                                                                                                                                                                                             |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x00036920 addiu a1, a1, 0x2aa8                                                                                                                                                                          |     a1 += 0x2aa8;
    0x00036924 lw a0, -0x7fcc(gp)                                                                                                                                                                            |     a0 = *(gp);
                                                                                                                                                                                                             |     /* str.IsArray__ */
    0x00036928 addiu a0, a0, 0x2bc8                                                                                                                                                                          |     a0 += aav.0x00002bc8;
    0x0003692c lw t9, -0x7644(gp)                                                                                                                                                                            |     t9 = sym.imp.__assert_fail;
    0x00036930 jalr t9                                                                                                                                                                                       |     t9 ();
    0x00036934 nop                                                                                                                                                                                           |     
                                                                                                                                                                                                             | label_19:
    0x00036938 lw a3, -0x7f84(gp)                                                                                                                                                                            |     a3 = *(gp);
                                                                                                                                                                                                             |     /* esilref: 'rapidjson::GenericValue<Encoding, Allocator>* rapidjson::GenericValue<Encoding, Allocator>::End() [with Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; rapidjson::GenericValue<Encoding, Allocator>::ValueIterator = ra */
    0x0003693c addiu a3, a3, -0x5534                                                                                                                                                                         |     a3 += -0x5534;
    0x00036940 addiu a2, zero, 0x63c                                                                                                                                                                         |     a2 = aav.0x0000063c;
    0x00036944 lw a1, -0x7fcc(gp)                                                                                                                                                                            |     a1 = *(gp);
                                                                                                                                                                                                             |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x00036948 addiu a1, a1, 0x2aa8                                                                                                                                                                          |     a1 += 0x2aa8;
    0x0003694c lw a0, -0x7fcc(gp)                                                                                                                                                                            |     a0 = *(gp);
                                                                                                                                                                                                             |     /* str.IsArray__ */
    0x00036950 addiu a0, a0, 0x2bc8                                                                                                                                                                          |     a0 += aav.0x00002bc8;
    0x00036954 lw t9, -0x7644(gp)                                                                                                                                                                            |     t9 = sym.imp.__assert_fail;
    0x00036958 jalr t9                                                                                                                                                                                       |     t9 ();
    0x0003695c nop                                                                                                                                                                                           |     
                                                                                                                                                                                                             | label_34:
    0x00036960 lw a3, -0x7f84(gp)                                                                                                                                                                            |     a3 = *(gp);
                                                                                                                                                                                                             |     /* esilref: 'rapidjson::GenericValue<Encoding, Allocator>::MemberIterator rapidjson::GenericValue<Encoding, Allocator>::FindMember(const rapidjson::GenericValue<Encoding, SourceAllocator>&) [with SourceAllocator = rapidjson::MemoryPoolAllocator<>; Encoding  */
                                                                                                                                                                                                             | label_20:
    0x00036964 addiu a3, a3, -0x5834                                                                                                                                                                         |     a3 += -0x5834;
    0x00036968 addiu a2, zero, 0x4e3                                                                                                                                                                         |     a2 = 0x4e3;
    0x0003696c lw a1, -0x7fcc(gp)                                                                                                                                                                            |     a1 = *(gp);
                                                                                                                                                                                                             |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x00036970 addiu a1, a1, 0x2aa8                                                                                                                                                                          |     a1 += 0x2aa8;
    0x00036974 lw a0, -0x7fcc(gp)                                                                                                                                                                            |     a0 = *(gp);
                                                                                                                                                                                                             |     /* str.IsObject__ */
    0x00036978 addiu a0, a0, 0x2b0c                                                                                                                                                                          |     a0 += 0x2b0c;
    0x0003697c lw t9, -0x7644(gp)                                                                                                                                                                            |     t9 = sym.imp.__assert_fail;
    0x00036980 jalr t9                                                                                                                                                                                       |     t9 ();
    0x00036984 nop                                                                                                                                                                                           |     
                                                                                                                                                                                                             | label_22:
    0x00036988 lw a3, -0x7f84(gp)                                                                                                                                                                            |     a3 = *(gp);
                                                                                                                                                                                                             |     do {
                                                                                                                                                                                                             |         /* esilref: 'bool rapidjson::GenericValue<Encoding, Allocator>::StringEqual(const rapidjson::GenericValue<Encoding, SourceAllocator>&) const [with SourceAllocator = rapidjson::MemoryPoolAllocator<>; Encoding = rapidjson::UTF8<>; Allocator = rapidjson::Memor */
    0x0003698c addiu a3, a3, -0x593c                                                                                                                                                                         |         a3 += -0x593c;
    0x00036990 addiu a2, zero, 0x829                                                                                                                                                                         |         a2 = 0x829;
    0x00036994 lw a1, -0x7fcc(gp)                                                                                                                                                                            |         a1 = *(gp);
                                                                                                                                                                                                             |         /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x00036998 addiu a1, a1, 0x2aa8                                                                                                                                                                          |         a1 += 0x2aa8;
    0x0003699c lw a0, -0x7fcc(gp)                                                                                                                                                                            |         a0 = *(gp);
                                                                                                                                                                                                             |         /* str.rhs.IsString__ */
    0x000369a0 addiu a0, a0, 0x48d4                                                                                                                                                                          |         a0 += 0x48d4;
    0x000369a4 lw t9, -0x7644(gp)                                                                                                                                                                            |         t9 = sym.imp.__assert_fail;
    0x000369a8 jalr t9                                                                                                                                                                                       |         t9 ();
    0x000369ac nop                                                                                                                                                                                           |         
                                                                                                                                                                                                             | label_0:
    0x000369b0 addiu v0, zero, 7                                                                                                                                                                             |         v0 = 7;
                                                                                                                                                                                                             |         if (v1 == v0) {
    0x000369b4 beql v1, v0, 0x369f8                                                                                                                                                                          |             goto label_36;
                                                                                                                                                                                                             |         }
    0x000369b8 lw a1, 8(s2)                                                                                                                                                                                  |         a1 = *((s2 + 2));
    0x000369bc addiu s2, s2, 0x20                                                                                                                                                                            |         s2 += 0x20;
                                                                                                                                                                                                             | label_1:
    0x000369c0 lw a3, -0x7f84(gp)                                                                                                                                                                            |         a3 = *(gp);
                                                                                                                                                                                                             |         if (s2 == s0) {
    0x000369c4 beq s2, s0, 0x36a5c                                                                                                                                                                           |             goto label_21;
                                                                                                                                                                                                             |         }
    0x000369c8 lhu v0, 0xe(s2)                                                                                                                                                                               |         v0 = *((s2 + 7));
    0x000369cc andi v1, v0, 0x400                                                                                                                                                                            |         v1 = v0 & aav.0x00000400;
    0x000369d0 lw a3, -0x7f84(gp)                                                                                                                                                                            |         a3 = *(gp);
    0x000369d4 beqz v1, 0x3698c                                                                                                                                                                              |         
                                                                                                                                                                                                             |     } while (v1 == 0);
                                                                                                                                                                                                             | label_23:
    0x000369d8 andi v0, v0, 0x1000                                                                                                                                                                           |     v0 &= aav.0x00001000;
                                                                                                                                                                                                             |     if (v0 == 0) {
    0x000369dc beql v0, zero, 0x369b0                                                                                                                                                                        |         goto label_0;
                                                                                                                                                                                                             |     }
    0x000369e0 lw v1, (s2)                                                                                                                                                                                   |     v1 = *(s2);
    0x000369e4 lb v0, 0xd(s2)                                                                                                                                                                                |     v0 = *((s2 + 13));
    0x000369e8 addiu v1, s3, -7                                                                                                                                                                              |     v1 = s3 + -7;
    0x000369ec addiu s2, s2, 0x20                                                                                                                                                                            |     s2 += 0x20;
                                                                                                                                                                                                             |     if (v1 == v0) {
    0x000369f0 bnel v1, v0, 0x369c0                                                                                                                                                                          |         goto label_1;
                                                                                                                                                                                                             |     }
    0x000369f4 move a1, s2                                                                                                                                                                                   |     a1 = s2;
                                                                                                                                                                                                             | label_36:
    0x000369f8 addiu a2, zero, 7                                                                                                                                                                             |     a2 = 7;
                                                                                                                                                                                                             |     if (a1 == s1) {
    0x000369fc beq a1, s1, 0x36a1c                                                                                                                                                                           |         goto label_37;
                                                                                                                                                                                                             |     }
    0x00036a00 move a0, s1                                                                                                                                                                                   |     a0 = s1;
    0x00036a04 lw t9, -0x7448(gp)                                                                                                                                                                            |     t9 = sym.imp.memcmp;
    0x00036a08 jalr t9                                                                                                                                                                                       |     t9 ();
    0x00036a0c nop                                                                                                                                                                                           |     
    0x00036a10 lw gp, 0x18(sp)                                                                                                                                                                               |     gp = *(var_18h);
    0x00036a14 addiu s2, s2, 0x20                                                                                                                                                                            |     s2 += 0x20;
                                                                                                                                                                                                             |     if (v0 == 0) {
    0x00036a18 bnel v0, zero, 0x369c0                                                                                                                                                                        |         goto label_1;
                                                                                                                                                                                                             |     }
                                                                                                                                                                                                             | label_37:
    0x00036a1c addiu v0, zero, 4                                                                                                                                                                             |     v0 = 4;
                                                                                                                                                                                                             |     if (s0 != s2) {
    0x00036a20 beq s0, s2, 0x36a58                                                                                                                                                                           |         
    0x00036a24 lhu v1, 0x1e(s2)                                                                                                                                                                              |         v1 = *((s2 + 15));
    0x00036a28 lw a3, -0x7f84(gp)                                                                                                                                                                            |         a3 = *(gp);
                                                                                                                                                                                                             |         if (v1 != v0) {
    0x00036a2c bne v1, v0, 0x36a80                                                                                                                                                                           |             goto label_38;
                                                                                                                                                                                                             |         }
    0x00036a30 lw v0, 0x10(s2)                                                                                                                                                                               |         v0 = *((s2 + 4));
    0x00036a34 sll v0, v0, 4                                                                                                                                                                                 |         v0 <<= 4;
    0x00036a38 lw s3, 0x18(s2)                                                                                                                                                                               |         s3 = *((s2 + 6));
                                                                                                                                                                                                             |         if (v0 == 0) {
    0x00036a3c beqz v0, 0x37488                                                                                                                                                                              |             goto label_39;
                                                                                                                                                                                                             |         }
    0x00036a40 lhu v1, 0xe(s3)                                                                                                                                                                               |         v1 = *((s3 + 7));
    0x00036a44 addiu v0, zero, 3                                                                                                                                                                             |         v0 = 3;
    0x00036a48 lw v0, -0x7dbc(gp)                                                                                                                                                                            |         v0 = *(gp);
                                                                                                                                                                                                             |         if (v1 != v0) {
    0x00036a4c bne v1, v0, 0x36acc                                                                                                                                                                           |             goto label_40;
                                                                                                                                                                                                             |         }
    0x00036a50 sw v0, 0x2c(sp)                                                                                                                                                                               |         *(var_2ch_3) = v0;
    0x00036a54 b 0x36c18                                                                                                                                                                                     |         goto label_41;
                                                                                                                                                                                                             |     }
    0x00036a58 lw a3, -0x7f84(gp)                                                                                                                                                                            |     a3 = *(gp);
                                                                                                                                                                                                             |     /* esilref: 'rapidjson::GenericValue<Encoding, Allocator>& rapidjson::GenericValue<Encoding, Allocator>::operator[](const rapidjson::GenericValue<Encoding, SourceAllocator>&) [with SourceAllocator = rapidjson::MemoryPoolAllocator<>; Encoding = rapidjson::UT */
                                                                                                                                                                                                             | label_21:
    0x00036a5c addiu a3, a3, -0x565c                                                                                                                                                                         |     a3 += -0x565c;
    0x00036a60 addiu a2, zero, 0x46f                                                                                                                                                                         |     a2 = 0x46f;
    0x00036a64 lw a1, -0x7fcc(gp)                                                                                                                                                                            |     a1 = *(gp);
                                                                                                                                                                                                             |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x00036a68 addiu a1, a1, 0x2aa8                                                                                                                                                                          |     a1 += 0x2aa8;
    0x00036a6c lw a0, -0x7fcc(gp)                                                                                                                                                                            |     a0 = *(gp);
                                                                                                                                                                                                             |     /* str.false */
    0x00036a70 addiu a0, a0, 0x48ec                                                                                                                                                                          |     a0 += 0x48ec;
    0x00036a74 lw t9, -0x7644(gp)                                                                                                                                                                            |     t9 = sym.imp.__assert_fail;
    0x00036a78 jalr t9                                                                                                                                                                                       |     t9 ();
    0x00036a7c nop                                                                                                                                                                                           |     
                                                                                                                                                                                                             | label_38:
    0x00036a80 addiu a3, a3, -0x5414                                                                                                                                                                         |     a3 += -0x5414;
    0x00036a84 addiu a2, zero, 0x639                                                                                                                                                                         |     a2 = 0x639;
    0x00036a88 lw a1, -0x7fcc(gp)                                                                                                                                                                            |     a1 = *(gp);
                                                                                                                                                                                                             |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x00036a8c addiu a1, a1, 0x2aa8                                                                                                                                                                          |     a1 += 0x2aa8;
    0x00036a90 lw a0, -0x7fcc(gp)                                                                                                                                                                            |     a0 = *(gp);
                                                                                                                                                                                                             |     /* str.IsArray__ */
    0x00036a94 addiu a0, a0, 0x2bc8                                                                                                                                                                          |     a0 += aav.0x00002bc8;
    0x00036a98 lw t9, -0x7644(gp)                                                                                                                                                                            |     t9 = sym.imp.__assert_fail;
    0x00036a9c jalr t9                                                                                                                                                                                       |     t9 ();
    0x00036aa0 nop                                                                                                                                                                                           |     
                                                                                                                                                                                                             | label_4:
    0x00036aa4 lw a3, -0x7f84(gp)                                                                                                                                                                            |     a3 = *(gp);
                                                                                                                                                                                                             |     /* esilref: 'rapidjson::GenericValue<Encoding, Allocator>* rapidjson::GenericValue<Encoding, Allocator>::End() [with Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; rapidjson::GenericValue<Encoding, Allocator>::ValueIterator = ra */
    0x00036aa8 addiu a3, a3, -0x5534                                                                                                                                                                         |     a3 += -0x5534;
    0x00036aac addiu a2, zero, 0x63c                                                                                                                                                                         |     a2 = aav.0x0000063c;
    0x00036ab0 lw a1, -0x7fcc(gp)                                                                                                                                                                            |     a1 = *(gp);
                                                                                                                                                                                                             |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x00036ab4 addiu a1, a1, 0x2aa8                                                                                                                                                                          |     a1 += 0x2aa8;
    0x00036ab8 lw a0, -0x7fcc(gp)                                                                                                                                                                            |     a0 = *(gp);
                                                                                                                                                                                                             |     /* str.IsArray__ */
    0x00036abc addiu a0, a0, 0x2bc8                                                                                                                                                                          |     a0 += aav.0x00002bc8;
    0x00036ac0 lw t9, -0x7644(gp)                                                                                                                                                                            |     t9 = sym.imp.__assert_fail;
    0x00036ac4 jalr t9                                                                                                                                                                                       |     t9 ();
    0x00036ac8 nop                                                                                                                                                                                           |     
                                                                                                                                                                                                             | label_40:
    0x00036acc lw a3, -0x7f84(gp)                                                                                                                                                                            |     a3 = *(gp);
                                                                                                                                                                                                             |     /* esilref: 'rapidjson::GenericValue<Encoding, Allocator>::MemberIterator rapidjson::GenericValue<Encoding, Allocator>::FindMember(const rapidjson::GenericValue<Encoding, SourceAllocator>&) [with SourceAllocator = rapidjson::MemoryPoolAllocator<>; Encoding  */
                                                                                                                                                                                                             | label_5:
    0x00036ad0 addiu a3, a3, -0x5834                                                                                                                                                                         |     a3 += -0x5834;
    0x00036ad4 addiu a2, zero, 0x4e3                                                                                                                                                                         |     a2 = 0x4e3;
    0x00036ad8 lw a1, -0x7fcc(gp)                                                                                                                                                                            |     a1 = *(gp);
                                                                                                                                                                                                             |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x00036adc addiu a1, a1, 0x2aa8                                                                                                                                                                          |     a1 += 0x2aa8;
    0x00036ae0 lw a0, -0x7fcc(gp)                                                                                                                                                                            |     a0 = *(gp);
                                                                                                                                                                                                             |     /* str.IsObject__ */
    0x00036ae4 addiu a0, a0, 0x2b0c                                                                                                                                                                          |     a0 += 0x2b0c;
    0x00036ae8 lw t9, -0x7644(gp)                                                                                                                                                                            |     t9 = sym.imp.__assert_fail;
    0x00036aec jalr t9                                                                                                                                                                                       |     t9 ();
    0x00036af0 nop                                                                                                                                                                                           |     
                                                                                                                                                                                                             | label_6:
    0x00036af4 lw a3, -0x7f84(gp)                                                                                                                                                                            |     a3 = *(gp);
                                                                                                                                                                                                             |     do {
                                                                                                                                                                                                             |         /* esilref: 'bool rapidjson::GenericValue<Encoding, Allocator>::StringEqual(const rapidjson::GenericValue<Encoding, SourceAllocator>&) const [with SourceAllocator = rapidjson::MemoryPoolAllocator<>; Encoding = rapidjson::UTF8<>; Allocator = rapidjson::Memor */
    0x00036af8 addiu a3, a3, -0x593c                                                                                                                                                                         |         a3 += -0x593c;
    0x00036afc addiu a2, zero, 0x829                                                                                                                                                                         |         a2 = 0x829;
    0x00036b00 lw a1, -0x7fcc(gp)                                                                                                                                                                            |         a1 = *(gp);
                                                                                                                                                                                                             |         /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x00036b04 addiu a1, a1, 0x2aa8                                                                                                                                                                          |         a1 += 0x2aa8;
    0x00036b08 lw a0, -0x7fcc(gp)                                                                                                                                                                            |         a0 = *(gp);
                                                                                                                                                                                                             |         /* str.rhs.IsString__ */
    0x00036b0c addiu a0, a0, 0x48d4                                                                                                                                                                          |         a0 += 0x48d4;
    0x00036b10 lw t9, -0x7644(gp)                                                                                                                                                                            |         t9 = sym.imp.__assert_fail;
    0x00036b14 jalr t9                                                                                                                                                                                       |         t9 ();
    0x00036b18 nop                                                                                                                                                                                           |         
                                                                                                                                                                                                             | label_2:
    0x00036b1c addiu v0, zero, 6                                                                                                                                                                             |         v0 = 6;
                                                                                                                                                                                                             |         if (v1 == v0) {
    0x00036b20 beql v1, v0, 0x36b64                                                                                                                                                                          |             goto label_42;
                                                                                                                                                                                                             |         }
    0x00036b24 lw a1, 8(s0)                                                                                                                                                                                  |         a1 = *((s0 + 2));
    0x00036b28 addiu s0, s0, 0x20                                                                                                                                                                            |         s0 += 0x20;
                                                                                                                                                                                                             | label_3:
    0x00036b2c lw a3, -0x7f84(gp)                                                                                                                                                                            |         a3 = *(gp);
                                                                                                                                                                                                             |         if (s1 == s0) {
    0x00036b30 beq s1, s0, 0x36c48                                                                                                                                                                           |             goto label_43;
                                                                                                                                                                                                             |         }
    0x00036b34 lhu v0, 0xe(s0)                                                                                                                                                                               |         v0 = *((s0 + 7));
    0x00036b38 andi v1, v0, 0x400                                                                                                                                                                            |         v1 = v0 & aav.0x00000400;
    0x00036b3c lw a3, -0x7f84(gp)                                                                                                                                                                            |         a3 = *(gp);
    0x00036b40 beqz v1, 0x36af8                                                                                                                                                                              |         
                                                                                                                                                                                                             |     } while (v1 == 0);
    0x00036b44 andi v0, v0, 0x1000                                                                                                                                                                           |     v0 &= aav.0x00001000;
                                                                                                                                                                                                             |     if (v0 == 0) {
                                                                                                                                                                                                             | label_7:
    0x00036b48 beql v0, zero, 0x36b1c                                                                                                                                                                        |         goto label_2;
                                                                                                                                                                                                             |     }
    0x00036b4c lw v1, (s0)                                                                                                                                                                                   |     v1 = *(s0);
    0x00036b50 lb v0, 0xd(s0)                                                                                                                                                                                |     v0 = *((s0 + 13));
    0x00036b54 addiu v1, s4, -6                                                                                                                                                                              |     v1 = s4 + -6;
    0x00036b58 addiu s0, s0, 0x20                                                                                                                                                                            |     s0 += 0x20;
                                                                                                                                                                                                             |     if (v1 == v0) {
    0x00036b5c bnel v1, v0, 0x36b2c                                                                                                                                                                          |         goto label_3;
                                                                                                                                                                                                             |     }
    0x00036b60 move a1, s0                                                                                                                                                                                   |     a1 = s0;
                                                                                                                                                                                                             | label_42:
    0x00036b64 addiu a2, zero, 6                                                                                                                                                                             |     a2 = 6;
                                                                                                                                                                                                             |     if (a1 == s6) {
    0x00036b68 beq a1, s6, 0x36b88                                                                                                                                                                           |         goto label_44;
                                                                                                                                                                                                             |     }
    0x00036b6c lw a0, 0x24(sp)                                                                                                                                                                               |     a0 = *(var_24h_3);
    0x00036b70 lw t9, -0x7448(gp)                                                                                                                                                                            |     t9 = sym.imp.memcmp;
    0x00036b74 jalr t9                                                                                                                                                                                       |     t9 ();
    0x00036b78 nop                                                                                                                                                                                           |     
    0x00036b7c lw gp, 0x18(sp)                                                                                                                                                                               |     gp = *(var_18h);
    0x00036b80 addiu s0, s0, 0x20                                                                                                                                                                            |     s0 += 0x20;
                                                                                                                                                                                                             |     if (v0 == 0) {
    0x00036b84 bnel v0, zero, 0x36b2c                                                                                                                                                                        |         goto label_3;
                                                                                                                                                                                                             |     }
                                                                                                                                                                                                             | label_44:
    0x00036b88 lw a3, -0x7f84(gp)                                                                                                                                                                            |     a3 = *(gp);
                                                                                                                                                                                                             |     if (s1 == s0) {
    0x00036b8c beq s1, s0, 0x36c48                                                                                                                                                                           |         goto label_43;
                                                                                                                                                                                                             |     }
    0x00036b90 lw a1, 0x130(s5)                                                                                                                                                                              |     a1 = *(s5);
    0x00036b94 lhu v0, 0x1e(s0)                                                                                                                                                                              |     v0 = *((s0 + 15));
    0x00036b98 andi v1, v0, 0x400                                                                                                                                                                            |     v1 = v0 & aav.0x00000400;
    0x00036b9c lw a2, 0x134(s5)                                                                                                                                                                              |     a2 = *(s5);
                                                                                                                                                                                                             |     if (v1 == 0) {
    0x00036ba0 beqz v1, 0x36c6c                                                                                                                                                                              |         goto label_45;
                                                                                                                                                                                                             |     }
    0x00036ba4 andi v0, v0, 0x1000                                                                                                                                                                           |     v0 &= aav.0x00001000;
                                                                                                                                                                                                             |     if (v0 != 0) {
    0x00036ba8 beql v0, zero, 0x36bb4                                                                                                                                                                        |         
    0x00036bac lw v0, 0x18(s0)                                                                                                                                                                               |         v0 = *((s0 + 6));
    0x00036bb0 addiu v0, s0, 0x10                                                                                                                                                                            |         v0 = s0 + 0x10;
                                                                                                                                                                                                             |     }
    0x00036bb4 sw v0, 0x4c(sp)                                                                                                                                                                               |     *(var_4ch_2) = v0;
    0x00036bb8 sb zero, 0x10(sp)                                                                                                                                                                             |     *(var_10h_3) = 0;
    0x00036bbc addiu a3, sp, 0x4c                                                                                                                                                                            |     a3 = sp + 0x4c;
    0x00036bc0 addiu a0, sp, 0x44                                                                                                                                                                            |     a0 = sp + 0x44;
    0x00036bc4 lw t9, -0x7db0(gp)                                                                                                                                                                            |     t9 = *(gp);
    0x00036bc8 bal 0x36214                                                                                                                                                                                   |     method ();
    0x00036bcc nop                                                                                                                                                                                           |     
    0x00036bd0 lw gp, 0x18(sp)                                                                                                                                                                               |     gp = *(var_18h);
    0x00036bd4 lw v0, 0x44(sp)                                                                                                                                                                               |     v0 = *(var_44h_3);
    0x00036bd8 lw v1, 0x134(s5)                                                                                                                                                                              |     v1 = *(s5);
                                                                                                                                                                                                             |     if (v1 == v0) {
    0x00036bdc beql v1, v0, 0x36c94                                                                                                                                                                          |         goto label_46;
                                                                                                                                                                                                             |     }
    0x00036be0 lhu v0, 0x1e(s0)                                                                                                                                                                              |     v0 = *((s0 + 15));
                                                                                                                                                                                                             | label_12:
    0x00036be4 lhu v1, 0x1e(s2)                                                                                                                                                                              |     v1 = *((s2 + 15));
    0x00036be8 addiu v0, zero, 4                                                                                                                                                                             |     v0 = 4;
    0x00036bec addiu s3, s3, 0x10                                                                                                                                                                            |     s3 += 0x10;
                                                                                                                                                                                                             |     if (v1 != v0) {
    0x00036bf0 bne v1, v0, 0x36aa4                                                                                                                                                                           |         goto label_4;
                                                                                                                                                                                                             |     }
    0x00036bf4 lw v0, 0x10(s2)                                                                                                                                                                               |     v0 = *((s2 + 4));
    0x00036bf8 sll v1, v0, 4                                                                                                                                                                                 |     v1 = v0 << 4;
    0x00036bfc lw v0, 0x18(s2)                                                                                                                                                                               |     v0 = *((s2 + 6));
    0x00036c00 addu v0, v0, v1                                                                                                                                                                               |     v0 += v1;
    0x00036c04 addiu v0, zero, 3                                                                                                                                                                             |     v0 = 3;
                                                                                                                                                                                                             |     if (s3 == v0) {
    0x00036c08 beq s3, v0, 0x37488                                                                                                                                                                           |         goto label_39;
                                                                                                                                                                                                             |     }
    0x00036c0c lhu v1, 0xe(s3)                                                                                                                                                                               |     v1 = *((s3 + 7));
    0x00036c10 lw a3, -0x7f84(gp)                                                                                                                                                                            |     a3 = *(gp);
                                                                                                                                                                                                             |     if (v1 != v0) {
    0x00036c14 bne v1, v0, 0x36ad0                                                                                                                                                                           |         goto label_5;
                                                                                                                                                                                                             |     }
                                                                                                                                                                                                             | label_41:
    0x00036c18 lw s0, 8(s3)                                                                                                                                                                                  |     s0 = *((s3 + 2));
    0x00036c1c lw s1, (s3)                                                                                                                                                                                   |     s1 = *(s3);
    0x00036c20 sll s1, s1, 5                                                                                                                                                                                 |     s1 <<= 5;
    0x00036c24 addu s1, s0, s1                                                                                                                                                                               |     s1 = s0 + s1;
    0x00036c28 lw a3, -0x7f84(gp)                                                                                                                                                                            |     a3 = *(gp);
                                                                                                                                                                                                             |     if (s1 == s0) {
    0x00036c2c beq s1, s0, 0x36c48                                                                                                                                                                           |         goto label_43;
                                                                                                                                                                                                             |     }
    0x00036c30 lhu v0, 0xe(s0)                                                                                                                                                                               |     v0 = *((s0 + 7));
    0x00036c34 andi v1, v0, 0x400                                                                                                                                                                            |     v1 = v0 & aav.0x00000400;
    0x00036c38 addiu s4, zero, 0xd                                                                                                                                                                           |     s4 = 0xd;
                                                                                                                                                                                                             |     if (v1 == 0) {
    0x00036c3c beqz v1, 0x36af4                                                                                                                                                                              |         goto label_6;
                                                                                                                                                                                                             |     }
    0x00036c40 andi v0, v0, 0x1000                                                                                                                                                                           |     v0 &= aav.0x00001000;
    0x00036c44 b 0x36b48                                                                                                                                                                                     |     goto label_7;
                                                                                                                                                                                                             |     /* esilref: 'rapidjson::GenericValue<Encoding, Allocator>& rapidjson::GenericValue<Encoding, Allocator>::operator[](const rapidjson::GenericValue<Encoding, SourceAllocator>&) [with SourceAllocator = rapidjson::MemoryPoolAllocator<>; Encoding = rapidjson::UT */
                                                                                                                                                                                                             | label_43:
    0x00036c48 addiu a3, a3, -0x565c                                                                                                                                                                         |     a3 += -0x565c;
    0x00036c4c addiu a2, zero, 0x46f                                                                                                                                                                         |     a2 = 0x46f;
    0x00036c50 lw a1, -0x7fcc(gp)                                                                                                                                                                            |     a1 = *(gp);
                                                                                                                                                                                                             |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x00036c54 addiu a1, a1, 0x2aa8                                                                                                                                                                          |     a1 += 0x2aa8;
    0x00036c58 lw a0, -0x7fcc(gp)                                                                                                                                                                            |     a0 = *(gp);
                                                                                                                                                                                                             |     /* str.false */
    0x00036c5c addiu a0, a0, 0x48ec                                                                                                                                                                          |     a0 += 0x48ec;
    0x00036c60 lw t9, -0x7644(gp)                                                                                                                                                                            |     t9 = sym.imp.__assert_fail;
    0x00036c64 jalr t9                                                                                                                                                                                       |     t9 ();
    0x00036c68 nop                                                                                                                                                                                           |     
                                                                                                                                                                                                             | label_45:
    0x00036c6c lw a3, -0x7f84(gp)                                                                                                                                                                            |     a3 = *(gp);
                                                                                                                                                                                                             |     /* esilref: 'const Ch* rapidjson::GenericValue<Encoding, Allocator>::GetString() const [with Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; rapidjson::GenericValue<Encoding, Allocator>::Ch = char]' */
    0x00036c70 addiu a3, a3, -0x5a14                                                                                                                                                                         |     a3 += -0x5a14;
    0x00036c74 addiu a2, zero, 0x6e9                                                                                                                                                                         |     a2 = 0x6e9;
    0x00036c78 lw a1, -0x7fcc(gp)                                                                                                                                                                            |     a1 = *(gp);
                                                                                                                                                                                                             |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x00036c7c addiu a1, a1, 0x2aa8                                                                                                                                                                          |     a1 += 0x2aa8;
    0x00036c80 lw a0, -0x7fcc(gp)                                                                                                                                                                            |     a0 = *(gp);
                                                                                                                                                                                                             |     /* esilref: 'IsString()' */
    0x00036c84 addiu a0, a0, 0x2b20                                                                                                                                                                          |     a0 += 0x2b20;
    0x00036c88 lw t9, -0x7644(gp)                                                                                                                                                                            |     t9 = sym.imp.__assert_fail;
    0x00036c8c jalr t9                                                                                                                                                                                       |     t9 ();
    0x00036c90 nop                                                                                                                                                                                           |     
                                                                                                                                                                                                             | label_46:
    0x00036c94 andi v1, v0, 0x400                                                                                                                                                                            |     v1 = v0 & aav.0x00000400;
    0x00036c98 andi v0, v0, 0x1000                                                                                                                                                                           |     v0 &= aav.0x00001000;
                                                                                                                                                                                                             |     if (v1 == 0) {
    0x00036c9c beqz v1, 0x36cf0                                                                                                                                                                              |         goto label_47;
                                                                                                                                                                                                             |     }
                                                                                                                                                                                                             |     if (v0 == 0) {
    0x00036ca0 beql v0, zero, 0x36d18                                                                                                                                                                        |         goto label_48;
                                                                                                                                                                                                             |     }
    0x00036ca4 lw s0, 0x18(s0)                                                                                                                                                                               |     s0 = *((s0 + 6));
    0x00036ca8 addiu s0, s0, 0x10                                                                                                                                                                            |     s0 += 0x10;
    0x00036cac addiu v0, sp, 0x58                                                                                                                                                                            |     v0 = sp + 0x58;
    0x00036cb0 sw v0, 0x50(sp)                                                                                                                                                                               |     *(var_50h_2) = v0;
                                                                                                                                                                                                             |     do {
    0x00036cb4 move a0, s0                                                                                                                                                                                   |         a0 = s0;
    0x00036cb8 lw t9, -0x73cc(gp)                                                                                                                                                                            |         t9 = sym.imp.strlen;
    0x00036cbc jalr t9                                                                                                                                                                                       |         t9 ();
    0x00036cc0 nop                                                                                                                                                                                           |         
    0x00036cc4 lw gp, 0x18(sp)                                                                                                                                                                               |         gp = *(var_18h);
    0x00036cc8 addu a2, s0, v0                                                                                                                                                                               |         a2 = s0 + v0;
                                                                                                                                                                                                             | label_8:
    0x00036ccc move a3, zero                                                                                                                                                                                 |         a3 = 0;
    0x00036cd0 move a1, s0                                                                                                                                                                                   |         a1 = s0;
    0x00036cd4 addiu a0, sp, 0x50                                                                                                                                                                            |         a0 = sp + 0x50;
    0x00036cd8 lw t9, -0x7f80(gp)                                                                                                                                                                            |         t9 = *(gp);
    0x00036cdc bal 0x1efd4                                                                                                                                                                                   |         method ();
    0x00036ce0 nop                                                                                                                                                                                           |         
    0x00036ce4 lw gp, 0x18(sp)                                                                                                                                                                               |         gp = *(var_18h);
    0x00036ce8 lw a1, 0x134(s5)                                                                                                                                                                              |         a1 = *(s5);
    0x00036cec b 0x36d2c                                                                                                                                                                                     |         goto label_49;
                                                                                                                                                                                                             | label_47:
    0x00036cf0 lw a3, -0x7f84(gp)                                                                                                                                                                            |         a3 = *(gp);
                                                                                                                                                                                                             |         /* esilref: 'const Ch* rapidjson::GenericValue<Encoding, Allocator>::GetString() const [with Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; rapidjson::GenericValue<Encoding, Allocator>::Ch = char]' */
    0x00036cf4 addiu a3, a3, -0x5a14                                                                                                                                                                         |         a3 += -0x5a14;
    0x00036cf8 addiu a2, zero, 0x6e9                                                                                                                                                                         |         a2 = 0x6e9;
    0x00036cfc lw a1, -0x7fcc(gp)                                                                                                                                                                            |         a1 = *(gp);
                                                                                                                                                                                                             |         /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x00036d00 addiu a1, a1, 0x2aa8                                                                                                                                                                          |         a1 += 0x2aa8;
    0x00036d04 lw a0, -0x7fcc(gp)                                                                                                                                                                            |         a0 = *(gp);
                                                                                                                                                                                                             |         /* esilref: 'IsString()' */
    0x00036d08 addiu a0, a0, 0x2b20                                                                                                                                                                          |         a0 += 0x2b20;
    0x00036d0c lw t9, -0x7644(gp)                                                                                                                                                                            |         t9 = sym.imp.__assert_fail;
    0x00036d10 jalr t9                                                                                                                                                                                       |         t9 ();
    0x00036d14 nop                                                                                                                                                                                           |         
                                                                                                                                                                                                             | label_48:
    0x00036d18 addiu v0, sp, 0x58                                                                                                                                                                            |         v0 = sp + 0x58;
    0x00036d1c sw v0, 0x50(sp)                                                                                                                                                                               |         *(var_50h_2) = v0;
    0x00036d20 bnez s0, 0x36cb4                                                                                                                                                                              |         
                                                                                                                                                                                                             |     } while (s0 != 0);
    0x00036d24 addiu a2, zero, -1                                                                                                                                                                            |     a2 = -1;
    0x00036d28 b 0x36ccc                                                                                                                                                                                     |     goto label_8;
                                                                                                                                                                                                             | label_49:
    0x00036d2c lw v0, 0x138(s5)                                                                                                                                                                              |     v0 = *(s5);
    0x00036d30 addiu v0, a1, 8                                                                                                                                                                               |     v0 = a1 + 8;
                                                                                                                                                                                                             |     if (a1 == v0) {
    0x00036d34 beq a1, v0, 0x36de8                                                                                                                                                                           |         goto label_50;
                                                                                                                                                                                                             |     }
    0x00036d38 sw v0, (a1)                                                                                                                                                                                   |     *(a1) = v0;
    0x00036d3c lw v0, 0x50(sp)                                                                                                                                                                               |     v0 = *(var_50h_2);
    0x00036d40 addiu v1, sp, 0x58                                                                                                                                                                            |     v1 = sp + 0x58;
    0x00036d44 lw a2, 0x58(sp)                                                                                                                                                                               |     a2 = *(var_58h_2);
                                                                                                                                                                                                             |     if (v0 == v1) {
    0x00036d48 beq v0, v1, 0x36db8                                                                                                                                                                           |         goto label_51;
                                                                                                                                                                                                             |     }
    0x00036d4c sw v0, (a1)                                                                                                                                                                                   |     *(a1) = v0;
    0x00036d50 lw v0, 0x58(sp)                                                                                                                                                                               |     v0 = *(var_58h_2);
    0x00036d54 sw v0, 8(a1)                                                                                                                                                                                  |     *((a1 + 2)) = v0;
                                                                                                                                                                                                             |     do {
    0x00036d58 lw v0, 0x54(sp)                                                                                                                                                                               |         v0 = *(var_54h_3);
    0x00036d5c sw v0, 4(a1)                                                                                                                                                                                  |         *((a1 + 1)) = v0;
    0x00036d60 lw v0, 0x134(s5)                                                                                                                                                                              |         v0 = *(s5);
    0x00036d64 addiu v0, v0, 0x18                                                                                                                                                                            |         v0 += 0x18;
    0x00036d68 sw v0, 0x134(s5)                                                                                                                                                                              |         *(s5) = v0;
                                                                                                                                                                                                             | label_9:
    0x00036d6c lhu v1, 0xe(s3)                                                                                                                                                                               |         v1 = *((s3 + 7));
                                                                                                                                                                                                             | label_10:
    0x00036d70 andi v0, v1, 7                                                                                                                                                                                |         v0 = v1 & 7;
    0x00036d74 addiu a0, zero, 4                                                                                                                                                                             |         a0 = 4;
    0x00036d78 addiu a0, zero, 5                                                                                                                                                                             |         a0 = 5;
                                                                                                                                                                                                             |         if (v0 == a0) {
    0x00036d7c beq v0, a0, 0x37000                                                                                                                                                                           |             goto label_52;
                                                                                                                                                                                                             |         }
                                                                                                                                                                                                             |         if (v0 == a0) {
    0x00036d80 beql v0, a0, 0x37140                                                                                                                                                                          |             goto label_53;
                                                                                                                                                                                                             |         }
    0x00036d84 addiu v0, zero, 0x405                                                                                                                                                                         |         v0 = 0x405;
    0x00036d88 addiu v1, zero, 3                                                                                                                                                                             |         v1 = 3;
                                                                                                                                                                                                             |         if (v0 == v1) {
    0x00036d8c beql v0, v1, 0x36e24                                                                                                                                                                          |             goto label_54;
                                                                                                                                                                                                             |         }
    0x00036d90 lw v0, (s3)                                                                                                                                                                                   |         v0 = *(s3);
    0x00036d94 lw a1, (s3)                                                                                                                                                                                   |         a1 = *(s3);
    0x00036d98 lw a0, 4(s3)                                                                                                                                                                                  |         a0 = *((s3 + 1));
    0x00036d9c lw v1, 8(s3)                                                                                                                                                                                  |         v1 = *((s3 + 2));
    0x00036da0 lw v0, 0xc(s3)                                                                                                                                                                                |         v0 = *((s3 + 3));
    0x00036da4 sw a1, 0x50(sp)                                                                                                                                                                               |         *(var_50h_2) = a1;
    0x00036da8 sw a0, 0x54(sp)                                                                                                                                                                               |         *(var_54h_3) = a0;
    0x00036dac sw v1, 0x58(sp)                                                                                                                                                                               |         *(var_58h_2) = v1;
    0x00036db0 sw v0, 0x5c(sp)                                                                                                                                                                               |         *(var_5ch_3) = v0;
    0x00036db4 b 0x36f80                                                                                                                                                                                     |         goto label_14;
                                                                                                                                                                                                             | label_51:
    0x00036db8 lw a0, 0x5c(sp)                                                                                                                                                                               |         a0 = *(var_5ch_3);
    0x00036dbc lw v1, 0x60(sp)                                                                                                                                                                               |         v1 = *(var_60h_2);
    0x00036dc0 lw v0, 0x64(sp)                                                                                                                                                                               |         v0 = *(var_64h);
    0x00036dc4 swl a2, 0xb(a1)                                                                                                                                                                               |         __asm ("swl a2, 0xb(a1)");
    0x00036dc8 swr a2, 8(a1)                                                                                                                                                                                 |         __asm ("swr a2, 8(a1)");
    0x00036dcc swl a0, 0xf(a1)                                                                                                                                                                               |         __asm ("swl a0, 0xf(a1)");
    0x00036dd0 swr a0, 0xc(a1)                                                                                                                                                                               |         __asm ("swr a0, 0xc(a1)");
    0x00036dd4 swl v1, 0x13(a1)                                                                                                                                                                              |         __asm ("swl v1, 0x13(a1)");
    0x00036dd8 swr v1, 0x10(a1)                                                                                                                                                                              |         __asm ("swr v1, 0x10(a1)");
    0x00036ddc swl v0, 0x17(a1)                                                                                                                                                                              |         __asm ("swl v0, 0x17(a1)");
    0x00036de0 swr v0, 0x14(a1)                                                                                                                                                                              |         __asm ("swr v0, 0x14(a1)");
    0x00036de4 b 0x36d58                                                                                                                                                                                     |         
                                                                                                                                                                                                             |     } while (1);
                                                                                                                                                                                                             | label_50:
    0x00036de8 addiu a2, sp, 0x50                                                                                                                                                                            |     a2 = sp + 0x50;
    0x00036dec addiu a0, s5, 0x130                                                                                                                                                                           |     a0 = s5 + aav.0x00000130;
    0x00036df0 lw t9, -0x7dac(gp)                                                                                                                                                                            |     t9 = ;
    0x00036df4 bal 0x36410                                                                                                                                                                                   |     sym ();
    0x00036df8 nop                                                                                                                                                                                           |     
    0x00036dfc lw gp, 0x18(sp)                                                                                                                                                                               |     gp = *(var_18h);
    0x00036e00 lw a0, 0x50(sp)                                                                                                                                                                               |     a0 = *(var_50h_2);
    0x00036e04 addiu v0, sp, 0x58                                                                                                                                                                            |     v0 = sp + 0x58;
    0x00036e08 lw t9, -0x7488(gp)                                                                                                                                                                            |     t9 = *((gp - 7458));
                                                                                                                                                                                                             |     if (a0 == v0) {
    0x00036e0c beq a0, v0, 0x36d6c                                                                                                                                                                           |         goto label_9;
                                                                                                                                                                                                             |     }
    0x00036e10 jalr t9                                                                                                                                                                                       |     t9 ();
    0x00036e14 nop                                                                                                                                                                                           |     
    0x00036e18 lw gp, 0x18(sp)                                                                                                                                                                               |     gp = *(var_18h);
    0x00036e1c lhu v1, 0xe(s3)                                                                                                                                                                               |     v1 = *((s3 + 7));
    0x00036e20 b 0x36d70                                                                                                                                                                                     |     goto label_10;
                                                                                                                                                                                                             | label_54:
    0x00036e24 sll s0, v0, 5                                                                                                                                                                                 |     s0 = v0 << 5;
    0x00036e28 sw v0, 0x30(sp)                                                                                                                                                                               |     *(var_30h_2) = v0;
                                                                                                                                                                                                             |     if (s0 == 0) {
    0x00036e2c beqz s0, 0x36f04                                                                                                                                                                              |         goto label_55;
                                                                                                                                                                                                             |     }
    0x00036e30 lw v0, 0x28(sp)                                                                                                                                                                               |     v0 = *(var_28h);
    0x00036e34 lw v1, (v0)                                                                                                                                                                                   |     v1 = *(v0);
                                                                                                                                                                                                             |     if (v1 != 0) {
    0x00036e38 beql v1, zero, 0x36e5c                                                                                                                                                                        |         
    0x00036e3c lw v1, 0x28(sp)                                                                                                                                                                               |         v1 = *(var_28h);
    0x00036e40 lw v0, 4(v1)                                                                                                                                                                                  |         v0 = *((v1 + 1));
    0x00036e44 addu v0, s0, v0                                                                                                                                                                               |         v0 = s0 + v0;
    0x00036e48 lw v1, (v1)                                                                                                                                                                                   |         v1 = *(v1);
    0x00036e4c sltu v0, v1, v0                                                                                                                                                                               |         v0 = (v1 < v0) ? 1 : 0;
    0x00036e50 lw v0, 0x28(sp)                                                                                                                                                                               |         v0 = *(var_28h);
                                                                                                                                                                                                             |         if (v0 == 0) {
    0x00036e54 beqz v0, 0x36eb0                                                                                                                                                                              |             goto label_56;
                                                                                                                                                                                                             |         }
    0x00036e58 lw v1, 0x28(sp)                                                                                                                                                                               |         v1 = *(var_28h);
                                                                                                                                                                                                             |     }
    0x00036e5c lw s1, 4(v1)                                                                                                                                                                                  |     s1 = *((v1 + 1));
    0x00036e60 sltu v0, s1, s0                                                                                                                                                                               |     v0 = (s1 < s0) ? 1 : 0;
                                                                                                                                                                                                             |     if (v0 == 0) {
    0x00036e64 movn s1, s0, v0                                                                                                                                                                               |         s1 = s0;
                                                                                                                                                                                                             |     }
    0x00036e68 lw v0, 0xc(v1)                                                                                                                                                                                |     v0 = *((v1 + 3));
    0x00036e6c addiu a0, zero, 1                                                                                                                                                                             |     a0 = 1;
    0x00036e70 beqz v0, 0x36ee4                                                                                                                                                                              |     
                                                                                                                                                                                                             |     while (1) {
    0x00036e74 addiu a0, s1, 0x10                                                                                                                                                                            |         a0 = s1 + 0x10;
    0x00036e78 lw t9, -0x73c8(gp)                                                                                                                                                                            |         t9 = sym.imp.malloc;
                                                                                                                                                                                                             |         if (a0 == 0) {
    0x00036e7c beqz a0, 0x376d8                                                                                                                                                                              |             goto label_57;
                                                                                                                                                                                                             |         }
    0x00036e80 jalr t9                                                                                                                                                                                       |         t9 ();
    0x00036e84 nop                                                                                                                                                                                           |         
    0x00036e88 lw gp, 0x18(sp)                                                                                                                                                                               |         gp = *(var_18h);
                                                                                                                                                                                                             |         if (v0 != 0) {
    0x00036e8c beql v0, zero, 0x36ecc                                                                                                                                                                        |             
    0x00036e90 sw zero, 0x40(sp)                                                                                                                                                                             |             *(var_40h_2) = 0;
    0x00036e94 sw s1, (v0)                                                                                                                                                                                   |             *(v0) = s1;
    0x00036e98 sw zero, 4(v0)                                                                                                                                                                                |             *((v0 + 1)) = 0;
    0x00036e9c lw a0, 0x28(sp)                                                                                                                                                                               |             a0 = *(var_28h);
    0x00036ea0 lw v1, (a0)                                                                                                                                                                                   |             v1 = *(a0);
    0x00036ea4 sw v1, 8(v0)                                                                                                                                                                                  |             *((v0 + 2)) = v1;
    0x00036ea8 sw v0, (a0)                                                                                                                                                                                   |             *(a0) = v0;
    0x00036eac lw v0, 0x28(sp)                                                                                                                                                                               |             v0 = *(var_28h);
                                                                                                                                                                                                             | label_56:
    0x00036eb0 lw v0, (v0)                                                                                                                                                                                   |             v0 = *(v0);
    0x00036eb4 lw v1, 4(v0)                                                                                                                                                                                  |             v1 = *((v0 + 1));
    0x00036eb8 addiu a0, v1, 0x10                                                                                                                                                                            |             a0 = v1 + 0x10;
    0x00036ebc addu a0, v0, a0                                                                                                                                                                               |             a0 = v0 + a0;
    0x00036ec0 sw a0, 0x40(sp)                                                                                                                                                                               |             *(var_40h_2) = a0;
    0x00036ec4 addu s0, s0, v1                                                                                                                                                                               |             s0 += v1;
    0x00036ec8 sw s0, 4(v0)                                                                                                                                                                                  |             *((v0 + 1)) = s0;
                                                                                                                                                                                                             |         }
                                                                                                                                                                                                             | label_11:
    0x00036ecc lw v0, 0x30(sp)                                                                                                                                                                               |         v0 = *(var_30h_2);
    0x00036ed0 lw s1, 0x40(sp)                                                                                                                                                                               |         s1 = *(var_40h_2);
                                                                                                                                                                                                             |         if (v0 == 0) {
    0x00036ed4 beqz v0, 0x36f64                                                                                                                                                                              |             goto label_58;
                                                                                                                                                                                                             |         }
    0x00036ed8 lw s0, 8(s3)                                                                                                                                                                                  |         s0 = *((s3 + 2));
    0x00036edc move s4, zero                                                                                                                                                                                 |         s4 = 0;
    0x00036ee0 b 0x36f3c                                                                                                                                                                                     |         goto label_59;
    0x00036ee4 lw t9, -0x7310(gp)                                                                                                                                                                            |         t9 = *((gp - 7364));
    0x00036ee8 jalr t9                                                                                                                                                                                       |         t9 ();
    0x00036eec nop                                                                                                                                                                                           |         
    0x00036ef0 lw gp, 0x18(sp)                                                                                                                                                                               |         gp = *(var_18h);
    0x00036ef4 lw v1, 0x28(sp)                                                                                                                                                                               |         v1 = *(var_28h);
    0x00036ef8 sw v0, 0xc(v1)                                                                                                                                                                                |         *((v1 + 3)) = v0;
    0x00036efc sw v0, 0x10(v1)                                                                                                                                                                               |         *((v1 + 4)) = v0;
    0x00036f00 b 0x36e74                                                                                                                                                                                     |         
                                                                                                                                                                                                             |     }
                                                                                                                                                                                                             | label_55:
    0x00036f04 sw zero, 0x40(sp)                                                                                                                                                                             |     *(var_40h_2) = 0;
    0x00036f08 b 0x36ecc                                                                                                                                                                                     |     goto label_11;
                                                                                                                                                                                                             |     do {
    0x00036f0c lw a2, 0x28(sp)                                                                                                                                                                               |         a2 = *(var_28h);
    0x00036f10 addiu a1, s0, 0x10                                                                                                                                                                            |         a1 = s0 + 0x10;
    0x00036f14 addiu a0, s1, 0x10                                                                                                                                                                            |         a0 = s1 + 0x10;
    0x00036f18 lw t9, 0x2c(sp)                                                                                                                                                                               |         t9 = *(var_2ch_3);
    0x00036f1c jalr t9                                                                                                                                                                                       |         t9 ();
    0x00036f20 nop                                                                                                                                                                                           |         
    0x00036f24 lw gp, 0x18(sp)                                                                                                                                                                               |         gp = *(var_18h);
    0x00036f28 addiu s4, s4, 1                                                                                                                                                                               |         s4++;
    0x00036f2c addiu s1, s1, 0x20                                                                                                                                                                            |         s1 += 0x20;
    0x00036f30 lw v0, 0x30(sp)                                                                                                                                                                               |         v0 = *(var_30h_2);
    0x00036f34 addiu s0, s0, 0x20                                                                                                                                                                            |         s0 += 0x20;
                                                                                                                                                                                                             |         if (v0 == s4) {
    0x00036f38 beq v0, s4, 0x36f64                                                                                                                                                                           |             goto label_58;
                                                                                                                                                                                                             |         }
                                                                                                                                                                                                             | label_59:
    0x00036f3c move a3, zero                                                                                                                                                                                 |         a3 = 0;
    0x00036f40 lw a2, 0x28(sp)                                                                                                                                                                               |         a2 = *(var_28h);
    0x00036f44 move a1, s0                                                                                                                                                                                   |         a1 = s0;
    0x00036f48 move a0, s1                                                                                                                                                                                   |         a0 = s1;
    0x00036f4c lw t9, 0x2c(sp)                                                                                                                                                                               |         t9 = *(var_2ch_3);
    0x00036f50 jalr t9                                                                                                                                                                                       |         t9 ();
    0x00036f54 nop                                                                                                                                                                                           |         
    0x00036f58 lw gp, 0x18(sp)                                                                                                                                                                               |         gp = *(var_18h);
    0x00036f5c move a3, zero                                                                                                                                                                                 |         a3 = 0;
    0x00036f60 b 0x36f0c                                                                                                                                                                                     |         
                                                                                                                                                                                                             |     } while (1);
                                                                                                                                                                                                             | label_58:
    0x00036f64 addiu v0, zero, 3                                                                                                                                                                             |     v0 = 3;
    0x00036f68 sh v0, 0x5e(sp)                                                                                                                                                                               |     *(var_5eh) = v0;
    0x00036f6c lw v0, 0x30(sp)                                                                                                                                                                               |     v0 = *(var_30h_2);
    0x00036f70 sw v0, 0x54(sp)                                                                                                                                                                               |     *(var_54h_3) = v0;
    0x00036f74 sw v0, 0x50(sp)                                                                                                                                                                               |     *(var_50h_2) = v0;
    0x00036f78 lw v0, 0x40(sp)                                                                                                                                                                               |     v0 = *(var_40h_2);
    0x00036f7c sw v0, 0x58(sp)                                                                                                                                                                               |     *(var_58h_2) = v0;
                                                                                                                                                                                                             | label_14:
    0x00036f80 lhu v1, 0xe(s7)                                                                                                                                                                               |     v1 = *((s7 + 7));
    0x00036f84 addiu v0, zero, 4                                                                                                                                                                             |     v0 = 4;
    0x00036f88 lw a3, -0x7f84(gp)                                                                                                                                                                            |     a3 = *(gp);
                                                                                                                                                                                                             |     if (v1 != v0) {
    0x00036f8c bne v1, v0, 0x37328                                                                                                                                                                           |         goto label_60;
                                                                                                                                                                                                             |     }
    0x00036f90 lw v1, 4(s7)                                                                                                                                                                                  |     v1 = *((s7 + 1));
    0x00036f94 lw v0, (s7)                                                                                                                                                                                   |     v0 = *(s7);
    0x00036f98 sltu v0, v0, v1                                                                                                                                                                               |     v0 = (v0 < v1) ? 1 : 0;
    0x00036f9c lw v0, 8(s7)                                                                                                                                                                                  |     v0 = *((s7 + 2));
                                                                                                                                                                                                             |     if (v0 != 0) {
    0x00036fa0 bnel v0, zero, 0x36fc8                                                                                                                                                                        |         
                                                                                                                                                                                                             |         if (v1 == 0) {
    0x00036fa4 beql v1, zero, 0x376f0                                                                                                                                                                        |             goto label_61;
                                                                                                                                                                                                             |         }
    0x00036fa8 lw s1, 8(s7)                                                                                                                                                                                  |         s1 = *((s7 + 2));
    0x00036fac addiu s0, v1, 1                                                                                                                                                                               |         s0 = v1 + 1;
    0x00036fb0 srl s0, s0, 1                                                                                                                                                                                 |         s0 >>= 1;
    0x00036fb4 addu s0, s0, v1                                                                                                                                                                               |         s0 += v1;
    0x00036fb8 sltu v0, v1, s0                                                                                                                                                                               |         v0 = (v1 < s0) ? 1 : 0;
    0x00036fbc lw s4, 8(s7)                                                                                                                                                                                  |         s4 = *((s7 + 2));
                                                                                                                                                                                                             |         if (v0 == 0) {
    0x00036fc0 bnel v0, zero, 0x3734c                                                                                                                                                                        |             goto label_62;
                                                                                                                                                                                                             |         }
                                                                                                                                                                                                             | label_18:
    0x00036fc4 lw v0, 8(s7)                                                                                                                                                                                  |         v0 = *((s7 + 2));
                                                                                                                                                                                                             |     }
    0x00036fc8 lw v1, (s7)                                                                                                                                                                                   |     v1 = *(s7);
    0x00036fcc addiu a0, v1, 1                                                                                                                                                                               |     a0 = v1 + 1;
    0x00036fd0 sw a0, (s7)                                                                                                                                                                                   |     *(s7) = a0;
    0x00036fd4 sll v1, v1, 4                                                                                                                                                                                 |     v1 <<= 4;
    0x00036fd8 addu v0, v0, v1                                                                                                                                                                               |     v0 += v1;
    0x00036fdc lw a1, 0x54(sp)                                                                                                                                                                               |     a1 = *(var_54h_3);
    0x00036fe0 lw a0, 0x58(sp)                                                                                                                                                                               |     a0 = *(var_58h_2);
    0x00036fe4 lw v1, 0x5c(sp)                                                                                                                                                                               |     v1 = *(var_5ch_3);
    0x00036fe8 lw a2, 0x50(sp)                                                                                                                                                                               |     a2 = *(var_50h_2);
    0x00036fec sw a2, (v0)                                                                                                                                                                                   |     *(v0) = a2;
    0x00036ff0 sw a1, 4(v0)                                                                                                                                                                                  |     *((v0 + 1)) = a1;
    0x00036ff4 sw a0, 8(v0)                                                                                                                                                                                  |     *((v0 + 2)) = a0;
    0x00036ff8 sw v1, 0xc(v0)                                                                                                                                                                                |     *((v0 + 3)) = v1;
    0x00036ffc b 0x36be4                                                                                                                                                                                     |     goto label_12;
                                                                                                                                                                                                             | label_52:
    0x00037000 lw s4, (s3)                                                                                                                                                                                   |     s4 = *(s3);
    0x00037004 sll s0, s4, 4                                                                                                                                                                                 |     s0 = s4 << 4;
    0x00037008 lw v0, 0x28(sp)                                                                                                                                                                               |     v0 = *(var_28h);
                                                                                                                                                                                                             |     if (s0 == 0) {
    0x0003700c beqz s0, 0x370e0                                                                                                                                                                              |         goto label_63;
                                                                                                                                                                                                             |     }
    0x00037010 lw v1, (v0)                                                                                                                                                                                   |     v1 = *(v0);
                                                                                                                                                                                                             |     if (v1 != 0) {
    0x00037014 beql v1, zero, 0x37038                                                                                                                                                                        |         
    0x00037018 lw v1, 0x28(sp)                                                                                                                                                                               |         v1 = *(var_28h);
    0x0003701c lw v0, 4(v1)                                                                                                                                                                                  |         v0 = *((v1 + 1));
    0x00037020 addu v0, s0, v0                                                                                                                                                                               |         v0 = s0 + v0;
    0x00037024 lw v1, (v1)                                                                                                                                                                                   |         v1 = *(v1);
    0x00037028 sltu v0, v1, v0                                                                                                                                                                               |         v0 = (v1 < v0) ? 1 : 0;
    0x0003702c lw v0, 0x28(sp)                                                                                                                                                                               |         v0 = *(var_28h);
                                                                                                                                                                                                             |         if (v0 == 0) {
    0x00037030 beqz v0, 0x3708c                                                                                                                                                                              |             goto label_64;
                                                                                                                                                                                                             |         }
    0x00037034 lw v1, 0x28(sp)                                                                                                                                                                               |         v1 = *(var_28h);
                                                                                                                                                                                                             |     }
    0x00037038 lw s1, 4(v1)                                                                                                                                                                                  |     s1 = *((v1 + 1));
    0x0003703c sltu v0, s1, s0                                                                                                                                                                               |     v0 = (s1 < s0) ? 1 : 0;
                                                                                                                                                                                                             |     if (v0 == 0) {
    0x00037040 movn s1, s0, v0                                                                                                                                                                               |         s1 = s0;
                                                                                                                                                                                                             |     }
    0x00037044 lw v0, 0xc(v1)                                                                                                                                                                                |     v0 = *((v1 + 3));
    0x00037048 addiu a0, zero, 1                                                                                                                                                                             |     a0 = 1;
    0x0003704c beqz v0, 0x370c0                                                                                                                                                                              |     
                                                                                                                                                                                                             |     while (1) {
    0x00037050 addiu a0, s1, 0x10                                                                                                                                                                            |         a0 = s1 + 0x10;
    0x00037054 lw t9, -0x73c8(gp)                                                                                                                                                                            |         t9 = sym.imp.malloc;
                                                                                                                                                                                                             |         if (a0 == 0) {
    0x00037058 beqz a0, 0x376e0                                                                                                                                                                              |             goto label_65;
                                                                                                                                                                                                             |         }
    0x0003705c jalr t9                                                                                                                                                                                       |         t9 ();
    0x00037060 nop                                                                                                                                                                                           |         
    0x00037064 lw gp, 0x18(sp)                                                                                                                                                                               |         gp = *(var_18h);
                                                                                                                                                                                                             |         if (v0 != 0) {
    0x00037068 beql v0, zero, 0x370a8                                                                                                                                                                        |             
    0x0003706c sw zero, 0x40(sp)                                                                                                                                                                             |             *(var_40h_2) = 0;
    0x00037070 sw s1, (v0)                                                                                                                                                                                   |             *(v0) = s1;
    0x00037074 sw zero, 4(v0)                                                                                                                                                                                |             *((v0 + 1)) = 0;
    0x00037078 lw a0, 0x28(sp)                                                                                                                                                                               |             a0 = *(var_28h);
    0x0003707c lw v1, (a0)                                                                                                                                                                                   |             v1 = *(a0);
    0x00037080 sw v1, 8(v0)                                                                                                                                                                                  |             *((v0 + 2)) = v1;
    0x00037084 sw v0, (a0)                                                                                                                                                                                   |             *(a0) = v0;
    0x00037088 lw v0, 0x28(sp)                                                                                                                                                                               |             v0 = *(var_28h);
                                                                                                                                                                                                             | label_64:
    0x0003708c lw v0, (v0)                                                                                                                                                                                   |             v0 = *(v0);
    0x00037090 lw v1, 4(v0)                                                                                                                                                                                  |             v1 = *((v0 + 1));
    0x00037094 addiu a0, v1, 0x10                                                                                                                                                                            |             a0 = v1 + 0x10;
    0x00037098 addu a0, v0, a0                                                                                                                                                                               |             a0 = v0 + a0;
    0x0003709c sw a0, 0x40(sp)                                                                                                                                                                               |             *(var_40h_2) = a0;
    0x000370a0 addu s0, s0, v1                                                                                                                                                                               |             s0 += v1;
    0x000370a4 sw s0, 4(v0)                                                                                                                                                                                  |             *((v0 + 1)) = s0;
                                                                                                                                                                                                             |         }
                                                                                                                                                                                                             | label_13:
    0x000370a8 lw v0, 0x40(sp)                                                                                                                                                                               |         v0 = *(var_40h_2);
                                                                                                                                                                                                             |         if (s4 == 0) {
    0x000370ac beqz s4, 0x37124                                                                                                                                                                              |             goto label_66;
                                                                                                                                                                                                             |         }
    0x000370b0 sw v0, 0x30(sp)                                                                                                                                                                               |         *(var_30h_2) = v0;
    0x000370b4 lw s1, 8(s3)                                                                                                                                                                                  |         s1 = *((s3 + 2));
    0x000370b8 move s0, zero                                                                                                                                                                                 |         s0 = 0;
    0x000370bc b 0x370fc                                                                                                                                                                                     |         goto label_67;
    0x000370c0 lw t9, -0x7310(gp)                                                                                                                                                                            |         t9 = *((gp - 7364));
    0x000370c4 jalr t9                                                                                                                                                                                       |         t9 ();
    0x000370c8 nop                                                                                                                                                                                           |         
    0x000370cc lw gp, 0x18(sp)                                                                                                                                                                               |         gp = *(var_18h);
    0x000370d0 lw v1, 0x28(sp)                                                                                                                                                                               |         v1 = *(var_28h);
    0x000370d4 sw v0, 0xc(v1)                                                                                                                                                                                |         *((v1 + 3)) = v0;
    0x000370d8 sw v0, 0x10(v1)                                                                                                                                                                               |         *((v1 + 4)) = v0;
    0x000370dc b 0x37050                                                                                                                                                                                     |         
                                                                                                                                                                                                             |     }
                                                                                                                                                                                                             | label_63:
    0x000370e0 sw zero, 0x40(sp)                                                                                                                                                                             |     *(var_40h_2) = 0;
    0x000370e4 b 0x370a8                                                                                                                                                                                     |     goto label_13;
                                                                                                                                                                                                             |     do {
    0x000370e8 lw v0, 0x30(sp)                                                                                                                                                                               |         v0 = *(var_30h_2);
    0x000370ec addiu v0, v0, 0x10                                                                                                                                                                            |         v0 += 0x10;
    0x000370f0 sw v0, 0x30(sp)                                                                                                                                                                               |         *(var_30h_2) = v0;
    0x000370f4 addiu s1, s1, 0x10                                                                                                                                                                            |         s1 += 0x10;
                                                                                                                                                                                                             |         if (s4 == s0) {
    0x000370f8 beq s4, s0, 0x37124                                                                                                                                                                           |             goto label_66;
                                                                                                                                                                                                             |         }
                                                                                                                                                                                                             | label_67:
    0x000370fc move a3, zero                                                                                                                                                                                 |         a3 = 0;
    0x00037100 lw a2, 0x28(sp)                                                                                                                                                                               |         a2 = *(var_28h);
    0x00037104 move a1, s1                                                                                                                                                                                   |         a1 = s1;
    0x00037108 lw a0, 0x30(sp)                                                                                                                                                                               |         a0 = *(var_30h_2);
    0x0003710c lw t9, 0x2c(sp)                                                                                                                                                                               |         t9 = *(var_2ch_3);
    0x00037110 jalr t9                                                                                                                                                                                       |         t9 ();
    0x00037114 nop                                                                                                                                                                                           |         
    0x00037118 lw gp, 0x18(sp)                                                                                                                                                                               |         gp = *(var_18h);
    0x0003711c addiu s0, s0, 1                                                                                                                                                                               |         s0++;
    0x00037120 b 0x370e8                                                                                                                                                                                     |         
                                                                                                                                                                                                             |     } while (1);
                                                                                                                                                                                                             | label_66:
    0x00037124 addiu v0, zero, 4                                                                                                                                                                             |     v0 = 4;
    0x00037128 sh v0, 0x5e(sp)                                                                                                                                                                               |     *(var_5eh) = v0;
    0x0003712c sw s4, 0x54(sp)                                                                                                                                                                               |     *(var_54h_3) = s4;
    0x00037130 sw s4, 0x50(sp)                                                                                                                                                                               |     *(var_50h_2) = s4;
    0x00037134 lw v0, 0x40(sp)                                                                                                                                                                               |     v0 = *(var_40h_2);
    0x00037138 sw v0, 0x58(sp)                                                                                                                                                                               |     *(var_58h_2) = v0;
    0x0003713c b 0x36f80                                                                                                                                                                                     |     goto label_14;
                                                                                                                                                                                                             | label_53:
    0x00037140 andi v0, v1, 0x400                                                                                                                                                                            |     v0 = v1 & aav.0x00000400;
                                                                                                                                                                                                             |     if (v1 == v0) {
    0x00037144 bne v1, v0, 0x3716c                                                                                                                                                                           |         
    0x00037148 lw a1, (s3)                                                                                                                                                                                   |         a1 = *(s3);
    0x0003714c lw a0, 4(s3)                                                                                                                                                                                  |         a0 = *((s3 + 1));
    0x00037150 lw v1, 8(s3)                                                                                                                                                                                  |         v1 = *((s3 + 2));
    0x00037154 lw v0, 0xc(s3)                                                                                                                                                                                |         v0 = *((s3 + 3));
    0x00037158 sw a1, 0x50(sp)                                                                                                                                                                               |         *(var_50h_2) = a1;
    0x0003715c sw a0, 0x54(sp)                                                                                                                                                                               |         *(var_54h_3) = a0;
    0x00037160 sw v1, 0x58(sp)                                                                                                                                                                               |         *(var_58h_2) = v1;
    0x00037164 sw v0, 0x5c(sp)                                                                                                                                                                               |         *(var_5ch_3) = v0;
    0x00037168 b 0x36f80                                                                                                                                                                                     |         goto label_14;
                                                                                                                                                                                                             |     }
    0x0003716c andi v1, v1, 0x1000                                                                                                                                                                           |     v1 &= aav.0x00001000;
                                                                                                                                                                                                             |     if (v0 == 0) {
    0x00037170 beqz v0, 0x371d8                                                                                                                                                                              |         goto label_68;
                                                                                                                                                                                                             |     }
                                                                                                                                                                                                             |     if (v1 == 0) {
    0x00037174 beql v1, zero, 0x37200                                                                                                                                                                        |         goto label_69;
                                                                                                                                                                                                             |     }
    0x00037178 lw v0, 8(s3)                                                                                                                                                                                  |     v0 = *((s3 + 2));
    0x0003717c lb s0, 0xd(s3)                                                                                                                                                                                |     s0 = *((s3 + 13));
    0x00037180 addiu v0, zero, 0xd                                                                                                                                                                           |     v0 = 0xd;
    0x00037184 subu s0, v0, s0                                                                                                                                                                               |     __asm ("subu s0, v0, s0");
    0x00037188 sw s3, 0x30(sp)                                                                                                                                                                               |     *(var_30h_2) = s3;
                                                                                                                                                                                                             |     do {
    0x0003718c sltiu v0, s0, 0xe                                                                                                                                                                             |         v0 = (s0 < 0xe) ? 1 : 0;
    0x00037190 addiu v0, zero, 0xc05                                                                                                                                                                         |         v0 = 0xc05;
                                                                                                                                                                                                             |         if (v0 == 0) {
    0x00037194 beqz v0, 0x37244                                                                                                                                                                              |             goto label_70;
                                                                                                                                                                                                             |         }
                                                                                                                                                                                                             | label_15:
    0x00037198 addiu v0, zero, 0x1c05                                                                                                                                                                        |         v0 = 0x1c05;
    0x0003719c sh v0, 0x5e(sp)                                                                                                                                                                               |         *(var_5eh) = v0;
    0x000371a0 addiu v0, zero, 0xd                                                                                                                                                                           |         v0 = 0xd;
    0x000371a4 subu v0, v0, s0                                                                                                                                                                               |         __asm ("subu v0, v0, s0");
    0x000371a8 sb v0, 0x5d(sp)                                                                                                                                                                               |         *(var_5dh) = v0;
    0x000371ac addiu s1, sp, 0x50                                                                                                                                                                            |         s1 = sp + 0x50;
                                                                                                                                                                                                             | label_16:
    0x000371b0 move a2, s0                                                                                                                                                                                   |         a2 = s0;
    0x000371b4 lw a1, 0x30(sp)                                                                                                                                                                               |         a1 = *(var_30h_2);
    0x000371b8 move a0, s1                                                                                                                                                                                   |         a0 = s1;
    0x000371bc lw t9, -0x73b4(gp)                                                                                                                                                                            |         t9 = sym.imp.memcpy;
    0x000371c0 jalr t9                                                                                                                                                                                       |         t9 ();
    0x000371c4 nop                                                                                                                                                                                           |         
    0x000371c8 lw gp, 0x18(sp)                                                                                                                                                                               |         gp = *(var_18h);
    0x000371cc addu s0, s1, s0                                                                                                                                                                               |         s0 = s1 + s0;
    0x000371d0 sb zero, (s0)                                                                                                                                                                                 |         *(s0) = 0;
    0x000371d4 b 0x36f80                                                                                                                                                                                     |         goto label_14;
                                                                                                                                                                                                             | label_68:
    0x000371d8 lw a3, -0x7f84(gp)                                                                                                                                                                            |         a3 = *(gp);
                                                                                                                                                                                                             |         /* esilref: 'const Ch* rapidjson::GenericValue<Encoding, Allocator>::GetString() const [with Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; rapidjson::GenericValue<Encoding, Allocator>::Ch = char]' */
    0x000371dc addiu a3, a3, -0x5a14                                                                                                                                                                         |         a3 += -0x5a14;
    0x000371e0 addiu a2, zero, 0x6e9                                                                                                                                                                         |         a2 = 0x6e9;
    0x000371e4 lw a1, -0x7fcc(gp)                                                                                                                                                                            |         a1 = *(gp);
                                                                                                                                                                                                             |         /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x000371e8 addiu a1, a1, 0x2aa8                                                                                                                                                                          |         a1 += 0x2aa8;
    0x000371ec lw a0, -0x7fcc(gp)                                                                                                                                                                            |         a0 = *(gp);
                                                                                                                                                                                                             |         /* esilref: 'IsString()' */
    0x000371f0 addiu a0, a0, 0x2b20                                                                                                                                                                          |         a0 += 0x2b20;
    0x000371f4 lw t9, -0x7644(gp)                                                                                                                                                                            |         t9 = sym.imp.__assert_fail;
    0x000371f8 jalr t9                                                                                                                                                                                       |         t9 ();
    0x000371fc nop                                                                                                                                                                                           |         
                                                                                                                                                                                                             | label_69:
    0x00037200 sw v0, 0x30(sp)                                                                                                                                                                               |         *(var_30h_2) = v0;
    0x00037204 lw s0, (s3)                                                                                                                                                                                   |         s0 = *(s3);
    0x00037208 bnez v0, 0x3718c                                                                                                                                                                              |         
                                                                                                                                                                                                             |     } while (v0 != 0);
    0x0003720c lw a3, -0x7f84(gp)                                                                                                                                                                            |     a3 = *(gp);
                                                                                                                                                                                                             |     if (s0 == 0) {
    0x00037210 bnez s0, 0x37220                                                                                                                                                                              |         
    0x00037214 lw v0, -0x7db8(gp)                                                                                                                                                                            |         v0 = *(gp);
    0x00037218 sw v0, 0x30(sp)                                                                                                                                                                               |         *(var_30h_2) = v0;
    0x0003721c b 0x37198                                                                                                                                                                                     |         goto label_15;
                                                                                                                                                                                                             |     }
                                                                                                                                                                                                             |     /* esilref: 'rapidjson::GenericStringRef<CharType>::GenericStringRef(const CharType*, rapidjson::SizeType) [with CharType = char; rapidjson::SizeType = unsigned int]' */
    0x00037220 addiu a3, a3, -0x5ab0                                                                                                                                                                         |     a3 += -0x5ab0;
    0x00037224 addiu a2, zero, 0x13f                                                                                                                                                                         |     a2 = 0x13f;
    0x00037228 lw a1, -0x7fcc(gp)                                                                                                                                                                            |     a1 = *(gp);
                                                                                                                                                                                                             |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0003722c addiu a1, a1, 0x2aa8                                                                                                                                                                          |     a1 += 0x2aa8;
    0x00037230 lw a0, -0x7fcc(gp)                                                                                                                                                                            |     a0 = *(gp);
                                                                                                                                                                                                             |     /* str.str___0__len__0u */
    0x00037234 addiu a0, a0, 0x6718                                                                                                                                                                          |     a0 += 0x6718;
    0x00037238 lw t9, -0x7644(gp)                                                                                                                                                                            |     t9 = sym.imp.__assert_fail;
    0x0003723c jalr t9                                                                                                                                                                                       |     t9 ();
    0x00037240 nop                                                                                                                                                                                           |     
                                                                                                                                                                                                             | label_70:
    0x00037244 sh v0, 0x5e(sp)                                                                                                                                                                               |     *(var_5eh) = v0;
    0x00037248 addiu v0, zero, -1                                                                                                                                                                            |     v0 = -1;
    0x0003724c sw s0, 0x50(sp)                                                                                                                                                                               |     *(var_50h_2) = s0;
                                                                                                                                                                                                             |     if (s0 == v0) {
    0x00037250 beq s0, v0, 0x37320                                                                                                                                                                           |         goto label_71;
                                                                                                                                                                                                             |     }
    0x00037254 addiu v1, s0, 8                                                                                                                                                                               |     v1 = s0 + 8;
    0x00037258 addiu v0, zero, -8                                                                                                                                                                            |     v0 = -8;
    0x0003725c and s4, v1, v0                                                                                                                                                                                |     s4 = v1 & v0;
    0x00037260 lw v0, 0x28(sp)                                                                                                                                                                               |     v0 = *(var_28h);
    0x00037264 lw v1, (v0)                                                                                                                                                                                   |     v1 = *(v0);
                                                                                                                                                                                                             |     if (v1 != 0) {
    0x00037268 beql v1, zero, 0x3728c                                                                                                                                                                        |         
    0x0003726c lw v1, 0x28(sp)                                                                                                                                                                               |         v1 = *(var_28h);
    0x00037270 lw v0, 4(v1)                                                                                                                                                                                  |         v0 = *((v1 + 1));
    0x00037274 addu v0, s4, v0                                                                                                                                                                               |         v0 = s4 + v0;
    0x00037278 lw v1, (v1)                                                                                                                                                                                   |         v1 = *(v1);
    0x0003727c sltu v0, v1, v0                                                                                                                                                                               |         v0 = (v1 < v0) ? 1 : 0;
    0x00037280 lw v0, 0x28(sp)                                                                                                                                                                               |         v0 = *(var_28h);
                                                                                                                                                                                                             |         if (v0 == 0) {
    0x00037284 beqz v0, 0x372e0                                                                                                                                                                              |             goto label_72;
                                                                                                                                                                                                             |         }
    0x00037288 lw v1, 0x28(sp)                                                                                                                                                                               |         v1 = *(var_28h);
                                                                                                                                                                                                             |     }
    0x0003728c lw s1, 4(v1)                                                                                                                                                                                  |     s1 = *((v1 + 1));
    0x00037290 sltu v0, s1, s4                                                                                                                                                                               |     v0 = (s1 < s4) ? 1 : 0;
                                                                                                                                                                                                             |     if (v0 == 0) {
    0x00037294 movn s1, s4, v0                                                                                                                                                                               |         s1 = s4;
                                                                                                                                                                                                             |     }
    0x00037298 lw v0, 0xc(v1)                                                                                                                                                                                |     v0 = *((v1 + 3));
    0x0003729c addiu a0, zero, 1                                                                                                                                                                             |     a0 = 1;
    0x000372a0 beqz v0, 0x37300                                                                                                                                                                              |     
                                                                                                                                                                                                             |     while (1) {
    0x000372a4 addiu a0, s1, 0x10                                                                                                                                                                            |         a0 = s1 + 0x10;
    0x000372a8 lw t9, -0x73c8(gp)                                                                                                                                                                            |         t9 = sym.imp.malloc;
                                                                                                                                                                                                             |         if (a0 == 0) {
    0x000372ac beqz a0, 0x376e8                                                                                                                                                                              |             goto label_73;
                                                                                                                                                                                                             |         }
    0x000372b0 jalr t9                                                                                                                                                                                       |         t9 ();
    0x000372b4 nop                                                                                                                                                                                           |         
    0x000372b8 lw gp, 0x18(sp)                                                                                                                                                                               |         gp = *(var_18h);
                                                                                                                                                                                                             |         if (v0 != 0) {
    0x000372bc beql v0, zero, 0x372f8                                                                                                                                                                        |             
    0x000372c0 move s1, zero                                                                                                                                                                                 |             s1 = 0;
    0x000372c4 sw s1, (v0)                                                                                                                                                                                   |             *(v0) = s1;
    0x000372c8 sw zero, 4(v0)                                                                                                                                                                                |             *((v0 + 1)) = 0;
    0x000372cc lw a0, 0x28(sp)                                                                                                                                                                               |             a0 = *(var_28h);
    0x000372d0 lw v1, (a0)                                                                                                                                                                                   |             v1 = *(a0);
    0x000372d4 sw v1, 8(v0)                                                                                                                                                                                  |             *((v0 + 2)) = v1;
    0x000372d8 sw v0, (a0)                                                                                                                                                                                   |             *(a0) = v0;
    0x000372dc lw v0, 0x28(sp)                                                                                                                                                                               |             v0 = *(var_28h);
                                                                                                                                                                                                             | label_72:
    0x000372e0 lw v1, (v0)                                                                                                                                                                                   |             v1 = *(v0);
    0x000372e4 lw v0, 4(v1)                                                                                                                                                                                  |             v0 = *((v1 + 1));
    0x000372e8 addiu s1, v0, 0x10                                                                                                                                                                            |             s1 = v0 + 0x10;
    0x000372ec addu s1, v1, s1                                                                                                                                                                               |             s1 = v1 + s1;
    0x000372f0 addu v0, s4, v0                                                                                                                                                                               |             v0 = s4 + v0;
    0x000372f4 sw v0, 4(v1)                                                                                                                                                                                  |             *((v1 + 1)) = v0;
                                                                                                                                                                                                             |         }
                                                                                                                                                                                                             | label_17:
    0x000372f8 sw s1, 0x58(sp)                                                                                                                                                                               |         *(var_58h_2) = s1;
    0x000372fc b 0x371b0                                                                                                                                                                                     |         goto label_16;
    0x00037300 lw t9, -0x7310(gp)                                                                                                                                                                            |         t9 = *((gp - 7364));
    0x00037304 jalr t9                                                                                                                                                                                       |         t9 ();
    0x00037308 nop                                                                                                                                                                                           |         
    0x0003730c lw gp, 0x18(sp)                                                                                                                                                                               |         gp = *(var_18h);
    0x00037310 lw v1, 0x28(sp)                                                                                                                                                                               |         v1 = *(var_28h);
    0x00037314 sw v0, 0xc(v1)                                                                                                                                                                                |         *((v1 + 3)) = v0;
    0x00037318 sw v0, 0x10(v1)                                                                                                                                                                               |         *((v1 + 4)) = v0;
    0x0003731c b 0x372a4                                                                                                                                                                                     |         
                                                                                                                                                                                                             |     }
                                                                                                                                                                                                             | label_71:
    0x00037320 move s1, zero                                                                                                                                                                                 |     s1 = 0;
    0x00037324 b 0x372f8                                                                                                                                                                                     |     goto label_17;
                                                                                                                                                                                                             |     /* esilref: 'rapidjson::GenericValue<Encoding, Allocator>& rapidjson::GenericValue<Encoding, Allocator>::PushBack(rapidjson::GenericValue<Encoding, Allocator>&, Allocator&) [with Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>]' */
                                                                                                                                                                                                             | label_60:
    0x00037328 addiu a3, a3, -0x5ba4                                                                                                                                                                         |     a3 += -0x5ba4;
    0x0003732c addiu a2, zero, 0x65e                                                                                                                                                                         |     a2 = 0x65e;
    0x00037330 lw a1, -0x7fcc(gp)                                                                                                                                                                            |     a1 = *(gp);
                                                                                                                                                                                                             |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x00037334 addiu a1, a1, 0x2aa8                                                                                                                                                                          |     a1 += 0x2aa8;
    0x00037338 lw a0, -0x7fcc(gp)                                                                                                                                                                            |     a0 = *(gp);
                                                                                                                                                                                                             |     /* str.IsArray__ */
    0x0003733c addiu a0, a0, 0x2bc8                                                                                                                                                                          |     a0 += aav.0x00002bc8;
    0x00037340 lw t9, -0x7644(gp)                                                                                                                                                                            |     t9 = sym.imp.__assert_fail;
    0x00037344 jalr t9                                                                                                                                                                                       |     t9 ();
    0x00037348 nop                                                                                                                                                                                           |     
                                                                                                                                                                                                             | label_62:
    0x0003734c sll v0, s0, 4                                                                                                                                                                                 |     v0 = s0 << 4;
                                                                                                                                                                                                             |     if (s4 != 0) {
    0x00037350 bnez s4, 0x37428                                                                                                                                                                              |         goto label_74;
                                                                                                                                                                                                             |     }
                                                                                                                                                                                                             |     if (v0 == 0) {
    0x00037354 beql v0, zero, 0x37480                                                                                                                                                                        |         goto label_31;
                                                                                                                                                                                                             |     }
    0x00037358 sw s4, 8(s7)                                                                                                                                                                                  |     *((s7 + 2)) = s4;
    0x0003735c move s1, v0                                                                                                                                                                                   |     s1 = v0;
    0x00037360 b 0x3736c                                                                                                                                                                                     |     goto label_75;
                                                                                                                                                                                                             | label_25:
    0x00037364 addiu s0, zero, 0x10                                                                                                                                                                          |     s0 = 0x10;
    0x00037368 move s1, v0                                                                                                                                                                                   |     s1 = v0;
                                                                                                                                                                                                             | label_75:
    0x0003736c lw v0, 0x28(sp)                                                                                                                                                                               |     v0 = *(var_28h);
    0x00037370 lw v1, (v0)                                                                                                                                                                                   |     v1 = *(v0);
                                                                                                                                                                                                             |     if (v1 != 0) {
    0x00037374 beql v1, zero, 0x37398                                                                                                                                                                        |         
    0x00037378 lw v1, 0x28(sp)                                                                                                                                                                               |         v1 = *(var_28h);
    0x0003737c lw v0, 4(v1)                                                                                                                                                                                  |         v0 = *((v1 + 1));
    0x00037380 addu v0, s1, v0                                                                                                                                                                               |         v0 = s1 + v0;
    0x00037384 lw v1, (v1)                                                                                                                                                                                   |         v1 = *(v1);
    0x00037388 sltu v0, v1, v0                                                                                                                                                                               |         v0 = (v1 < v0) ? 1 : 0;
    0x0003738c lw v0, 0x28(sp)                                                                                                                                                                               |         v0 = *(var_28h);
                                                                                                                                                                                                             |         if (v0 == 0) {
    0x00037390 beqz v0, 0x373ec                                                                                                                                                                              |             goto label_76;
                                                                                                                                                                                                             |         }
    0x00037394 lw v1, 0x28(sp)                                                                                                                                                                               |         v1 = *(var_28h);
                                                                                                                                                                                                             |     }
    0x00037398 lw s4, 4(v1)                                                                                                                                                                                  |     s4 = *((v1 + 1));
    0x0003739c sltu v0, s4, s1                                                                                                                                                                               |     v0 = (s4 < s1) ? 1 : 0;
                                                                                                                                                                                                             |     if (v0 == 0) {
    0x000373a0 movn s4, s1, v0                                                                                                                                                                               |         s4 = s1;
                                                                                                                                                                                                             |     }
    0x000373a4 lw v0, 0xc(v1)                                                                                                                                                                                |     v0 = *((v1 + 3));
    0x000373a8 addiu a0, zero, 1                                                                                                                                                                             |     a0 = 1;
    0x000373ac beqz v0, 0x37408                                                                                                                                                                              |     
                                                                                                                                                                                                             |     while (1) {
    0x000373b0 addiu a0, s4, 0x10                                                                                                                                                                            |         a0 = s4 + 0x10;
    0x000373b4 lw t9, -0x73c8(gp)                                                                                                                                                                            |         t9 = sym.imp.malloc;
                                                                                                                                                                                                             |         if (a0 == 0) {
    0x000373b8 beqz a0, 0x376c8                                                                                                                                                                              |             goto label_77;
                                                                                                                                                                                                             |         }
    0x000373bc jalr t9                                                                                                                                                                                       |         t9 ();
    0x000373c0 nop                                                                                                                                                                                           |         
    0x000373c4 lw gp, 0x18(sp)                                                                                                                                                                               |         gp = *(var_18h);
                                                                                                                                                                                                             |         if (v0 == 0) {
    0x000373c8 beql v0, zero, 0x3747c                                                                                                                                                                        |             goto label_24;
                                                                                                                                                                                                             |         }
    0x000373cc move s4, zero                                                                                                                                                                                 |         s4 = 0;
    0x000373d0 sw s4, (v0)                                                                                                                                                                                   |         *(v0) = s4;
    0x000373d4 sw zero, 4(v0)                                                                                                                                                                                |         *((v0 + 1)) = 0;
    0x000373d8 lw a0, 0x28(sp)                                                                                                                                                                               |         a0 = *(var_28h);
    0x000373dc lw v1, (a0)                                                                                                                                                                                   |         v1 = *(a0);
    0x000373e0 sw v1, 8(v0)                                                                                                                                                                                  |         *((v0 + 2)) = v1;
    0x000373e4 sw v0, (a0)                                                                                                                                                                                   |         *(a0) = v0;
    0x000373e8 lw v0, 0x28(sp)                                                                                                                                                                               |         v0 = *(var_28h);
                                                                                                                                                                                                             | label_76:
    0x000373ec lw v0, (v0)                                                                                                                                                                                   |         v0 = *(v0);
    0x000373f0 lw v1, 4(v0)                                                                                                                                                                                  |         v1 = *((v0 + 1));
    0x000373f4 addiu s4, v1, 0x10                                                                                                                                                                            |         s4 = v1 + 0x10;
    0x000373f8 addu s4, v0, s4                                                                                                                                                                               |         s4 = v0 + s4;
    0x000373fc addu s1, s1, v1                                                                                                                                                                               |         s1 += v1;
    0x00037400 sw s1, 4(v0)                                                                                                                                                                                  |         *((v0 + 1)) = s1;
    0x00037404 b 0x3747c                                                                                                                                                                                     |         goto label_24;
    0x00037408 lw t9, -0x7310(gp)                                                                                                                                                                            |         t9 = *((gp - 7364));
    0x0003740c jalr t9                                                                                                                                                                                       |         t9 ();
    0x00037410 nop                                                                                                                                                                                           |         
    0x00037414 lw gp, 0x18(sp)                                                                                                                                                                               |         gp = *(var_18h);
    0x00037418 lw v1, 0x28(sp)                                                                                                                                                                               |         v1 = *(var_28h);
    0x0003741c sw v0, 0xc(v1)                                                                                                                                                                                |         *((v1 + 3)) = v0;
    0x00037420 sw v0, 0x10(v1)                                                                                                                                                                               |         *((v1 + 4)) = v0;
    0x00037424 b 0x373b0                                                                                                                                                                                     |         
                                                                                                                                                                                                             |     }
                                                                                                                                                                                                             | label_74:
    0x00037428 move s1, s4                                                                                                                                                                                   |     s1 = s4;
    0x0003742c b 0x376fc                                                                                                                                                                                     |     goto label_78;
                                                                                                                                                                                                             | label_28:
    0x00037430 addu v1, v1, v0                                                                                                                                                                               |     v1 += v0;
    0x00037434 lw a2, (a1)                                                                                                                                                                                   |     a2 = *(a1);
    0x00037438 sltu a2, a2, v1                                                                                                                                                                               |     a2 = (a2 < v1) ? 1 : 0;
    0x0003743c move a2, v0                                                                                                                                                                                   |     a2 = v0;
                                                                                                                                                                                                             |     if (a2 != 0) {
    0x00037440 bnez a2, 0x37734                                                                                                                                                                              |         goto label_79;
                                                                                                                                                                                                             |     }
    0x00037444 sw v1, 4(a1)                                                                                                                                                                                  |     *((a1 + 1)) = v1;
    0x00037448 move s4, s1                                                                                                                                                                                   |     s4 = s1;
    0x0003744c b 0x3747c                                                                                                                                                                                     |     goto label_24;
                                                                                                                                                                                                             | label_29:
    0x00037450 lw t9, -0x7310(gp)                                                                                                                                                                            |     t9 = *((gp - 7364));
    0x00037454 jalr t9                                                                                                                                                                                       |     t9 ();
    0x00037458 nop                                                                                                                                                                                           |     
    0x0003745c lw gp, 0x18(sp)                                                                                                                                                                               |     gp = *(var_18h);
    0x00037460 lw v1, 0x28(sp)                                                                                                                                                                               |     v1 = *(var_28h);
    0x00037464 sw v0, 0xc(v1)                                                                                                                                                                                |     *((v1 + 3)) = v0;
    0x00037468 sw v0, 0x10(v1)                                                                                                                                                                               |     *((v1 + 4)) = v0;
    0x0003746c b 0x37768                                                                                                                                                                                     |     goto label_80;
                                                                                                                                                                                                             | label_26:
    0x00037470 move s4, zero                                                                                                                                                                                 |     s4 = 0;
    0x00037474 b 0x3747c                                                                                                                                                                                     |     goto label_24;
                                                                                                                                                                                                             | label_27:
    0x00037478 move s4, s1                                                                                                                                                                                   |     s4 = s1;
                                                                                                                                                                                                             | label_24:
    0x0003747c sw s4, 8(s7)                                                                                                                                                                                  |     *((s7 + 2)) = s4;
                                                                                                                                                                                                             | label_31:
    0x00037480 sw s0, 4(s7)                                                                                                                                                                                  |     *((s7 + 1)) = s0;
    0x00037484 b 0x36fc4                                                                                                                                                                                     |     goto label_18;
                                                                                                                                                                                                             | label_39:
    0x00037488 lhu v1, 0x76(sp)                                                                                                                                                                              |     v1 = *(var_76h);
    0x0003748c addiu v0, zero, 4                                                                                                                                                                             |     v0 = 4;
    0x00037490 addiu fp, fp, 0x10                                                                                                                                                                            |     fp += 0x10;
                                                                                                                                                                                                             |     if (v1 != v0) {
    0x00037494 bne v1, v0, 0x36938                                                                                                                                                                           |         goto label_19;
                                                                                                                                                                                                             |     }
    0x00037498 lw v0, 0x68(sp)                                                                                                                                                                               |     v0 = *(var_68h_2);
    0x0003749c sll v1, v0, 4                                                                                                                                                                                 |     v1 = v0 << 4;
    0x000374a0 lw v0, 0x70(sp)                                                                                                                                                                               |     v0 = *(var_70h_2);
    0x000374a4 addu v0, v0, v1                                                                                                                                                                               |     v0 += v1;
    0x000374a8 addiu v0, zero, 3                                                                                                                                                                             |     v0 = 3;
                                                                                                                                                                                                             |     if (fp == v0) {
    0x000374ac beq fp, v0, 0x374f0                                                                                                                                                                           |         goto label_33;
                                                                                                                                                                                                             |     }
    0x000374b0 lhu v1, 0xe(fp)                                                                                                                                                                               |     v1 = *(arg_eh);
    0x000374b4 lw a3, -0x7f84(gp)                                                                                                                                                                            |     a3 = *(gp);
                                                                                                                                                                                                             |     if (v1 != v0) {
    0x000374b8 bne v1, v0, 0x36964                                                                                                                                                                           |         goto label_20;
                                                                                                                                                                                                             |     }
                                                                                                                                                                                                             | label_35:
    0x000374bc lw s2, 8(fp)                                                                                                                                                                                  |     s2 = *(arg_8h);
    0x000374c0 lw s0, (fp)                                                                                                                                                                                   |     s0 = *(fp);
    0x000374c4 sll s0, s0, 5                                                                                                                                                                                 |     s0 <<= 5;
    0x000374c8 addu s0, s2, s0                                                                                                                                                                               |     s0 = s2 + s0;
    0x000374cc lw a3, -0x7f84(gp)                                                                                                                                                                            |     a3 = *(gp);
                                                                                                                                                                                                             |     if (s2 == s0) {
    0x000374d0 beq s2, s0, 0x36a5c                                                                                                                                                                           |         goto label_21;
                                                                                                                                                                                                             |     }
    0x000374d4 lhu v0, 0xe(s2)                                                                                                                                                                               |     v0 = *((s2 + 7));
    0x000374d8 andi v1, v0, 0x400                                                                                                                                                                            |     v1 = v0 & aav.0x00000400;
    0x000374dc lw v1, 0x34(sp)                                                                                                                                                                               |     v1 = *(var_34h_2);
                                                                                                                                                                                                             |     if (v1 == 0) {
    0x000374e0 beqz v1, 0x36988                                                                                                                                                                              |         goto label_22;
                                                                                                                                                                                                             |     }
    0x000374e4 addiu s1, v1, 0x7bcc                                                                                                                                                                          |     s1 = v1 + 0x7bcc;
    0x000374e8 addiu s3, zero, 0xd                                                                                                                                                                           |     s3 = 0xd;
    0x000374ec b 0x369d8                                                                                                                                                                                     |     goto label_23;
                                                                                                                                                                                                             | label_33:
    0x000374f0 lw s1, 0x7c(sp)                                                                                                                                                                               |     s1 = *(var_7ch_3);
    0x000374f4 lw a0, 0x88(sp)                                                                                                                                                                               |     a0 = *(var_88h);
                                                                                                                                                                                                             |     if (s1 == 0) {
    0x000374f8 beqz s1, 0x37574                                                                                                                                                                              |         goto label_81;
                                                                                                                                                                                                             |     }
    0x000374fc lw a0, (s1)                                                                                                                                                                                   |     a0 = *(s1);
    0x00037500 addiu a1, zero, 1                                                                                                                                                                             |     a1 = 1;
                                                                                                                                                                                                             |     if (a0 == 0) {
    0x00037504 beqz a0, 0x37544                                                                                                                                                                              |         goto label_82;
                                                                                                                                                                                                             |     }
    0x00037508 lw v0, 8(s1)                                                                                                                                                                                  |     v0 = *((s1 + 2));
                                                                                                                                                                                                             |     if (v0 == a0) {
    0x0003750c beql v0, a0, 0x37544                                                                                                                                                                          |         goto label_82;
                                                                                                                                                                                                             |     }
    0x00037510 sw zero, 4(v0)                                                                                                                                                                                |     *((v0 + 1)) = 0;
                                                                                                                                                                                                             |     do {
    0x00037514 lw s0, 8(a0)                                                                                                                                                                                  |         s0 = *((a0 + 2));
    0x00037518 lw t9, -0x7518(gp)                                                                                                                                                                            |         t9 = sym.imp.free;
    0x0003751c jalr t9                                                                                                                                                                                       |         t9 ();
    0x00037520 nop                                                                                                                                                                                           |         
    0x00037524 lw gp, 0x18(sp)                                                                                                                                                                               |         gp = *(var_18h);
    0x00037528 sw s0, (s1)                                                                                                                                                                                   |         *(s1) = s0;
                                                                                                                                                                                                             |         if (s0 == 0) {
    0x0003752c beqz s0, 0x37540                                                                                                                                                                              |             goto label_83;
                                                                                                                                                                                                             |         }
    0x00037530 lw v0, 8(s1)                                                                                                                                                                                  |         v0 = *((s1 + 2));
    0x00037534 move a0, s0                                                                                                                                                                                   |         a0 = s0;
    0x00037538 bne v0, s0, 0x37514                                                                                                                                                                           |         
                                                                                                                                                                                                             |     } while (v0 != s0);
    0x0003753c sw zero, 4(v0)                                                                                                                                                                                |     *((v0 + 1)) = 0;
                                                                                                                                                                                                             | label_83:
    0x00037540 addiu a1, zero, 1                                                                                                                                                                             |     a1 = 1;
                                                                                                                                                                                                             | label_82:
    0x00037544 lw a0, 0x10(s1)                                                                                                                                                                               |     a0 = *((s1 + 4));
    0x00037548 lw t9, -0x7404(gp)                                                                                                                                                                            |     t9 = sym.imp.operator_delete_void__unsigned_int_;
    0x0003754c jalr t9                                                                                                                                                                                       |     t9 ();
    0x00037550 nop                                                                                                                                                                                           |     
    0x00037554 lw gp, 0x18(sp)                                                                                                                                                                               |     gp = *(var_18h);
    0x00037558 addiu a1, zero, 0x14                                                                                                                                                                          |     a1 = 0x14;
    0x0003755c move a0, s1                                                                                                                                                                                   |     a0 = s1;
    0x00037560 lw t9, -0x7404(gp)                                                                                                                                                                            |     t9 = sym.imp.operator_delete_void__unsigned_int_;
    0x00037564 jalr t9                                                                                                                                                                                       |     t9 ();
    0x00037568 nop                                                                                                                                                                                           |     
    0x0003756c lw gp, 0x18(sp)                                                                                                                                                                               |     gp = *(var_18h);
    0x00037570 lw a0, 0x88(sp)                                                                                                                                                                               |     a0 = *(var_88h);
                                                                                                                                                                                                             | label_81:
    0x00037574 lw t9, -0x7518(gp)                                                                                                                                                                            |     t9 = sym.imp.free;
    0x00037578 jalr t9                                                                                                                                                                                       |     t9 ();
    0x0003757c nop                                                                                                                                                                                           |     
    0x00037580 lw gp, 0x18(sp)                                                                                                                                                                               |     gp = *(var_18h);
    0x00037584 addiu a1, zero, 1                                                                                                                                                                             |     a1 = 1;
    0x00037588 lw a0, 0x84(sp)                                                                                                                                                                               |     a0 = *(var_84h_2);
    0x0003758c lw t9, -0x7404(gp)                                                                                                                                                                            |     t9 = sym.imp.operator_delete_void__unsigned_int_;
    0x00037590 jalr t9                                                                                                                                                                                       |     t9 ();
    0x00037594 nop                                                                                                                                                                                           |     
    0x00037598 lw gp, 0x18(sp)                                                                                                                                                                               |     gp = *(var_18h);
    0x0003759c lw a0, 0x38(sp)                                                                                                                                                                               |     a0 = *(var_38h);
    0x000375a0 lw t9, -0x7518(gp)                                                                                                                                                                            |     t9 = sym.imp.free;
    0x000375a4 jalr t9                                                                                                                                                                                       |     t9 ();
    0x000375a8 nop                                                                                                                                                                                           |     
    0x000375ac lw gp, 0x18(sp)                                                                                                                                                                               |     gp = *(var_18h);
                                                                                                                                                                                                             | label_32:
    0x000375b0 lw v1, 0xa4(sp)                                                                                                                                                                               |     v1 = *(var_a4h);
    0x000375b4 lw v0, -0x736c(gp)                                                                                                                                                                            |     v0 = *((gp - 7387));
    0x000375b8 lw v0, (v0)                                                                                                                                                                                   |     v0 = *(v0);
    0x000375bc lw ra, 0xcc(sp)                                                                                                                                                                               |     ra = *(var_cch);
                                                                                                                                                                                                             |     if (v1 != v0) {
    0x000375c0 bne v1, v0, 0x377f4                                                                                                                                                                           |         goto label_84;
                                                                                                                                                                                                             |     }
    0x000375c4 lw fp, 0xc8(sp)                                                                                                                                                                               |     fp = *(var_c8h);
    0x000375c8 lw s7, 0xc4(sp)                                                                                                                                                                               |     s7 = *(var_c4h);
    0x000375cc lw s6, 0xc0(sp)                                                                                                                                                                               |     s6 = *(var_c0h);
    0x000375d0 lw s5, 0xbc(sp)                                                                                                                                                                               |     s5 = *(var_bch);
    0x000375d4 lw s4, 0xb8(sp)                                                                                                                                                                               |     s4 = *(var_b8h);
    0x000375d8 lw s3, 0xb4(sp)                                                                                                                                                                               |     s3 = *(var_b4h);
    0x000375dc lw s2, 0xb0(sp)                                                                                                                                                                               |     s2 = *(var_b0h);
    0x000375e0 lw s1, 0xac(sp)                                                                                                                                                                               |     s1 = *(var_ach);
    0x000375e4 lw s0, 0xa8(sp)                                                                                                                                                                               |     s0 = *(var_a8h);
    0x000375e8 addiu sp, sp, 0xd0                                                                                                                                                                            |     
    0x000375ec jr ra                                                                                                                                                                                         |     return v0;
                                                                                                                                                                                                             | label_77:
    0x000376c8 move s4, zero                                                                                                                                                                                 |     s4 = 0;
    0x000376cc b 0x3747c                                                                                                                                                                                     |     goto label_24;
                                                                                                                                                                                                             | label_30:
    0x000376d0 move s4, zero                                                                                                                                                                                 |     s4 = 0;
    0x000376d4 b 0x3747c                                                                                                                                                                                     |     goto label_24;
                                                                                                                                                                                                             | label_57:
    0x000376d8 sw zero, 0x40(sp)                                                                                                                                                                             |     *(var_40h_2) = 0;
    0x000376dc b 0x36ecc                                                                                                                                                                                     |     goto label_11;
                                                                                                                                                                                                             | label_65:
    0x000376e0 sw zero, 0x40(sp)                                                                                                                                                                             |     *(var_40h_2) = 0;
    0x000376e4 b 0x370a8                                                                                                                                                                                     |     goto label_13;
                                                                                                                                                                                                             | label_73:
    0x000376e8 move s1, zero                                                                                                                                                                                 |     s1 = 0;
    0x000376ec b 0x372f8                                                                                                                                                                                     |     goto label_17;
                                                                                                                                                                                                             | label_61:
    0x000376f0 addiu v0, zero, 0x100                                                                                                                                                                         |     v0 = aav.0x00000100;
                                                                                                                                                                                                             |     if (s1 == 0) {
    0x000376f4 beqz s1, 0x37364                                                                                                                                                                              |         goto label_25;
                                                                                                                                                                                                             |     }
    0x000376f8 addiu s0, zero, 0x10                                                                                                                                                                          |     s0 = 0x10;
                                                                                                                                                                                                             | label_78:
    0x000376fc sll a2, v1, 4                                                                                                                                                                                 |     a2 = v1 << 4;
                                                                                                                                                                                                             |     if (v0 == 0) {
    0x00037700 beqz v0, 0x37470                                                                                                                                                                              |         goto label_26;
                                                                                                                                                                                                             |     }
    0x00037704 sltu v1, a2, v0                                                                                                                                                                               |     v1 = (a2 < v0) ? 1 : 0;
    0x00037708 sw a2, 0x30(sp)                                                                                                                                                                               |     *(var_30h_2) = a2;
                                                                                                                                                                                                             |     if (v1 == 0) {
    0x0003770c beqz v1, 0x37478                                                                                                                                                                              |         goto label_27;
                                                                                                                                                                                                             |     }
    0x00037710 lw v1, 0x28(sp)                                                                                                                                                                               |     v1 = *(var_28h);
    0x00037714 lw a1, (v1)                                                                                                                                                                                   |     a1 = *(v1);
    0x00037718 lw a0, 4(a1)                                                                                                                                                                                  |     a0 = *((a1 + 1));
    0x0003771c addiu v1, a0, 0x10                                                                                                                                                                            |     v1 = a0 + 0x10;
    0x00037720 subu v1, v1, a2                                                                                                                                                                               |     __asm ("subu v1, v1, a2");
    0x00037724 addu v1, a1, v1                                                                                                                                                                               |     v1 = a1 + v1;
    0x00037728 subu v1, a0, a2                                                                                                                                                                               |     __asm ("subu v1, a0, a2");
                                                                                                                                                                                                             |     if (s1 == v1) {
    0x0003772c beq s1, v1, 0x37430                                                                                                                                                                           |         goto label_28;
                                                                                                                                                                                                             |     }
    0x00037730 move a2, v0                                                                                                                                                                                   |     a2 = v0;
                                                                                                                                                                                                             | label_79:
    0x00037734 sw v0, 0x40(sp)                                                                                                                                                                               |     *(var_40h_2) = v0;
    0x00037738 addu v0, a0, v0                                                                                                                                                                               |     v0 = a0 + v0;
    0x0003773c lw v1, (a1)                                                                                                                                                                                   |     v1 = *(a1);
    0x00037740 sltu v0, v1, v0                                                                                                                                                                               |     v0 = (v1 < v0) ? 1 : 0;
    0x00037744 lw v0, 0x28(sp)                                                                                                                                                                               |     v0 = *(var_28h);
                                                                                                                                                                                                             |     if (v0 == 0) {
    0x00037748 beqz v0, 0x377a4                                                                                                                                                                              |         goto label_85;
                                                                                                                                                                                                             |     }
    0x0003774c lw v1, 0x28(sp)                                                                                                                                                                               |     v1 = *(var_28h);
    0x00037750 lw s4, 4(v1)                                                                                                                                                                                  |     s4 = *((v1 + 1));
    0x00037754 sltu v0, s4, a2                                                                                                                                                                               |     v0 = (s4 < a2) ? 1 : 0;
                                                                                                                                                                                                             |     if (v0 == 0) {
    0x00037758 movn s4, a2, v0                                                                                                                                                                               |         s4 = a2;
                                                                                                                                                                                                             |     }
    0x0003775c lw v0, 0xc(v1)                                                                                                                                                                                |     v0 = *((v1 + 3));
    0x00037760 addiu a0, zero, 1                                                                                                                                                                             |     a0 = 1;
                                                                                                                                                                                                             |     if (v0 == 0) {
    0x00037764 beqz v0, 0x37450                                                                                                                                                                              |         goto label_29;
                                                                                                                                                                                                             |     }
                                                                                                                                                                                                             | label_80:
    0x00037768 addiu a0, s4, 0x10                                                                                                                                                                            |     a0 = s4 + 0x10;
    0x0003776c lw t9, -0x73c8(gp)                                                                                                                                                                            |     t9 = sym.imp.malloc;
                                                                                                                                                                                                             |     if (a0 == 0) {
    0x00037770 beqz a0, 0x376d0                                                                                                                                                                              |         goto label_30;
                                                                                                                                                                                                             |     }
    0x00037774 jalr t9                                                                                                                                                                                       |     t9 ();
    0x00037778 nop                                                                                                                                                                                           |     
    0x0003777c lw gp, 0x18(sp)                                                                                                                                                                               |     gp = *(var_18h);
                                                                                                                                                                                                             |     if (v0 == 0) {
    0x00037780 beql v0, zero, 0x3747c                                                                                                                                                                        |         goto label_24;
                                                                                                                                                                                                             |     }
    0x00037784 move s4, zero                                                                                                                                                                                 |     s4 = 0;
    0x00037788 sw s4, (v0)                                                                                                                                                                                   |     *(v0) = s4;
    0x0003778c sw zero, 4(v0)                                                                                                                                                                                |     *((v0 + 1)) = 0;
    0x00037790 lw a0, 0x28(sp)                                                                                                                                                                               |     a0 = *(var_28h);
    0x00037794 lw v1, (a0)                                                                                                                                                                                   |     v1 = *(a0);
    0x00037798 sw v1, 8(v0)                                                                                                                                                                                  |     *((v0 + 2)) = v1;
    0x0003779c sw v0, (a0)                                                                                                                                                                                   |     *(a0) = v0;
    0x000377a0 lw v0, 0x28(sp)                                                                                                                                                                               |     v0 = *(var_28h);
                                                                                                                                                                                                             | label_85:
    0x000377a4 lw v1, (v0)                                                                                                                                                                                   |     v1 = *(v0);
    0x000377a8 lw v0, 4(v1)                                                                                                                                                                                  |     v0 = *((v1 + 1));
    0x000377ac addiu s4, v0, 0x10                                                                                                                                                                            |     s4 = v0 + 0x10;
    0x000377b0 addu s4, v1, s4                                                                                                                                                                               |     s4 = v1 + s4;
    0x000377b4 lw a0, 0x40(sp)                                                                                                                                                                               |     a0 = *(var_40h_2);
    0x000377b8 addu v0, a0, v0                                                                                                                                                                               |     v0 = a0 + v0;
    0x000377bc sw v0, 4(v1)                                                                                                                                                                                  |     *((v1 + 1)) = v0;
                                                                                                                                                                                                             |     if (s4 == 0) {
    0x000377c0 beqz s4, 0x3747c                                                                                                                                                                              |         goto label_24;
                                                                                                                                                                                                             |     }
    0x000377c4 lw v0, 0x30(sp)                                                                                                                                                                               |     v0 = *(var_30h_2);
                                                                                                                                                                                                             |     if (v0 == 0) {
    0x000377c8 beql v0, zero, 0x37480                                                                                                                                                                        |         goto label_31;
                                                                                                                                                                                                             |     }
    0x000377cc sw s4, 8(s7)                                                                                                                                                                                  |     *((s7 + 2)) = s4;
    0x000377d0 move a2, v0                                                                                                                                                                                   |     a2 = v0;
    0x000377d4 move a1, s1                                                                                                                                                                                   |     a1 = s1;
    0x000377d8 move a0, s4                                                                                                                                                                                   |     a0 = s4;
    0x000377dc lw t9, -0x73b4(gp)                                                                                                                                                                            |     t9 = sym.imp.memcpy;
    0x000377e0 jalr t9                                                                                                                                                                                       |     t9 ();
    0x000377e4 nop                                                                                                                                                                                           |     
    0x000377e8 lw gp, 0x18(sp)                                                                                                                                                                               |     gp = *(var_18h);
    0x000377ec sw s4, 8(s7)                                                                                                                                                                                  |     *((s7 + 2)) = s4;
    0x000377f0 b 0x37480                                                                                                                                                                                     |     goto label_31;
                                                                                                                                                                                                             | label_84:
    0x000377f4 lw t9, -0x74e8(gp)                                                                                                                                                                            |     t9 = sym.imp.__stack_chk_fail;
    0x000377f8 jalr t9                                                                                                                                                                                       |     t9 ();
    0x000377fc nop                                                                                                                                                                                           |     
                                                                                                                                                                                                             | }
    ; assembly                                                                                                                                                                                                                                           | /* r2dec pseudo code output */
                                                                                                                                                                                                                                                         | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/onscreencontrols @ 0x7bdb0 */
                                                                                                                                                                                                                                                         | #include <stdint.h>
                                                                                                                                                                                                                                                         |  
    ; (fcn) method.PostInstalledFeatures.postInstalledFeatureListRemoveItem_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char_____std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____ ()         | void method_PostInstalledFeatures_postInstalledFeatureListRemoveItem_std::_cxx11::basic_string_char_std::char_traits_char_std::allocator_char_std::_cxx11::basic_string_char_std::char_traits_char_std::allocator_char_ () {
                                                                                                                                                                                                                                                         |     /* PostInstalledFeatures::postInstalledFeatureListRemoveItem(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) */
    0x0007bdb0 lui gp, 5                                                                                                                                                                                                                                 |     
    0x0007bdb4 addiu gp, gp, 0x2490                                                                                                                                                                                                                      |     
    0x0007bdb8 addu gp, gp, t9                                                                                                                                                                                                                           |     gp += t9;
    0x0007bdbc addiu sp, sp, -0x110                                                                                                                                                                                                                      |     
    0x0007bdc0 sw ra, 0x10c(sp)                                                                                                                                                                                                                          |     *(var_10ch) = ra;
    0x0007bdc4 sw fp, 0x108(sp)                                                                                                                                                                                                                          |     *(var_108h) = fp;
    0x0007bdc8 sw s7, 0x104(sp)                                                                                                                                                                                                                          |     *(var_104h) = s7;
    0x0007bdcc sw s6, 0x100(sp)                                                                                                                                                                                                                          |     *(var_100h) = s6;
    0x0007bdd0 sw s5, 0xfc(sp)                                                                                                                                                                                                                           |     *(var_fch) = s5;
    0x0007bdd4 sw s4, 0xf8(sp)                                                                                                                                                                                                                           |     *(var_f8h) = s4;
    0x0007bdd8 sw s3, 0xf4(sp)                                                                                                                                                                                                                           |     *(var_f4h) = s3;
    0x0007bddc sw s2, 0xf0(sp)                                                                                                                                                                                                                           |     *(var_f0h) = s2;
    0x0007bde0 sw s1, 0xec(sp)                                                                                                                                                                                                                           |     *(var_ech) = s1;
    0x0007bde4 sw s0, 0xe8(sp)                                                                                                                                                                                                                           |     *(var_e8h) = s0;
    0x0007bde8 sw gp, 0x18(sp)                                                                                                                                                                                                                           |     *(var_18h) = gp;
    0x0007bdec sw a0, 0x34(sp)                                                                                                                                                                                                                           |     *(var_34h_2) = a0;
    0x0007bdf0 sw a1, 0x30(sp)                                                                                                                                                                                                                           |     *(var_30h_2) = a1;
    0x0007bdf4 move fp, a2                                                                                                                                                                                                                               |     fp = a2;
    0x0007bdf8 lw v0, -0x736c(gp)                                                                                                                                                                                                                        |     v0 = *((gp - 7387));
    0x0007bdfc lw v0, (v0)                                                                                                                                                                                                                               |     v0 = *(v0);
    0x0007be00 sw v0, 0xe4(sp)                                                                                                                                                                                                                           |     *(var_e4h_2) = v0;
    0x0007be04 sw zero, 0x70(sp)                                                                                                                                                                                                                         |     *(var_70h) = 0;
    0x0007be08 sw zero, 0x74(sp)                                                                                                                                                                                                                         |     *(var_74h) = 0;
    0x0007be0c sw zero, 0x78(sp)                                                                                                                                                                                                                         |     *(var_78h_2) = 0;
    0x0007be10 sw zero, 0x7c(sp)                                                                                                                                                                                                                         |     *(var_7ch) = 0;
    0x0007be14 sw zero, 0x80(sp)                                                                                                                                                                                                                         |     *(var_80h) = 0;
    0x0007be18 sw zero, 0x84(sp)                                                                                                                                                                                                                         |     *(var_84h) = 0;
    0x0007be1c sw zero, 0x88(sp)                                                                                                                                                                                                                         |     *(var_88h) = 0;
    0x0007be20 sw zero, 0x8c(sp)                                                                                                                                                                                                                         |     *(var_8ch) = 0;
    0x0007be24 sw zero, 0x90(sp)                                                                                                                                                                                                                         |     *(var_90h) = 0;
    0x0007be28 sw zero, 0x94(sp)                                                                                                                                                                                                                         |     *(var_94h_2) = 0;
    0x0007be2c sw zero, 0x98(sp)                                                                                                                                                                                                                         |     *(var_98h) = 0;
    0x0007be30 addiu v0, zero, 0x400                                                                                                                                                                                                                     |     v0 = aav.0x00000400;
    0x0007be34 sw v0, 0x9c(sp)                                                                                                                                                                                                                           |     *(var_9ch) = v0;
    0x0007be38 sw zero, 0xa0(sp)                                                                                                                                                                                                                         |     *(var_a0h) = 0;
    0x0007be3c sw zero, 0xa4(sp)                                                                                                                                                                                                                         |     *(var_a4h) = 0;
    0x0007be40 addiu a0, zero, 0x14                                                                                                                                                                                                                      |     a0 = 0x14;
    0x0007be44 lw t9, -0x7310(gp)                                                                                                                                                                                                                        |     t9 = *((gp - 7364));
    0x0007be48 jalr t9                                                                                                                                                                                                                                   |     t9 ();
    0x0007be4c nop                                                                                                                                                                                                                                       |     
    0x0007be50 lw gp, 0x18(sp)                                                                                                                                                                                                                           |     gp = *(var_18h);
    0x0007be54 sw zero, (v0)                                                                                                                                                                                                                             |     *(v0) = 0;
    0x0007be58 lui v1, 1                                                                                                                                                                                                                                 |     v1 = 0x10000;
    0x0007be5c sw v1, 4(v0)                                                                                                                                                                                                                              |     *((v0 + 1)) = v1;
    0x0007be60 sw zero, 8(v0)                                                                                                                                                                                                                            |     *((v0 + 2)) = 0;
    0x0007be64 sw zero, 0xc(v0)                                                                                                                                                                                                                          |     *((v0 + 3)) = 0;
    0x0007be68 sw zero, 0x10(v0)                                                                                                                                                                                                                         |     *((v0 + 4)) = 0;
    0x0007be6c sw v0, 0x80(sp)                                                                                                                                                                                                                           |     *(var_80h) = v0;
    0x0007be70 sw v0, 0x84(sp)                                                                                                                                                                                                                           |     *(var_84h) = v0;
    0x0007be74 addiu v0, sp, 0x48                                                                                                                                                                                                                        |     v0 = sp + 0x48;
    0x0007be78 sw v0, 0x40(sp)                                                                                                                                                                                                                           |     *(var_40h_2) = v0;
    0x0007be7c move a3, zero                                                                                                                                                                                                                             |     a3 = 0;
    0x0007be80 lw a2, -0x7fcc(gp)                                                                                                                                                                                                                        |     a2 = *(gp);
    0x0007be84 addiu a2, a2, 0x7bcb                                                                                                                                                                                                                      |     a2 += 0x7bcb;
    0x0007be88 lw a1, -0x7fcc(gp)                                                                                                                                                                                                                        |     a1 = *(gp);
                                                                                                                                                                                                                                                         |     /* str._etc_onscreencontrols_postinst_post_added_features.json */
    0x0007be8c addiu a1, a1, 0x7b94                                                                                                                                                                                                                      |     a1 += 0x7b94;
    0x0007be90 addiu a0, sp, 0x40                                                                                                                                                                                                                        |     a0 = sp + 0x40;
    0x0007be94 lw t9, -0x7f80(gp)                                                                                                                                                                                                                        |     t9 = *(gp);
    0x0007be98 jalr t9                                                                                                                                                                                                                                   |     t9 ();
    0x0007be9c nop                                                                                                                                                                                                                                       |     
    0x0007bea0 lw gp, 0x18(sp)                                                                                                                                                                                                                           |     gp = *(var_18h);
    0x0007bea4 lw a1, -0x7f84(gp)                                                                                                                                                                                                                        |     a1 = *(gp);
    0x0007bea8 addiu a1, a1, -0x3bac                                                                                                                                                                                                                     |     a1 += -0x3bac;
    0x0007beac lw a0, 0x40(sp)                                                                                                                                                                                                                           |     a0 = *(var_40h_2);
    0x0007beb0 lw t9, -0x7360(gp)                                                                                                                                                                                                                        |     t9 = sym.imp.fopen;
    0x0007beb4 jalr t9                                                                                                                                                                                                                                   |     t9 ();
    0x0007beb8 nop                                                                                                                                                                                                                                       |     
    0x0007bebc lw gp, 0x18(sp)                                                                                                                                                                                                                           |     gp = *(var_18h);
    0x0007bec0 move s0, v0                                                                                                                                                                                                                               |     s0 = v0;
    0x0007bec4 b 0x7bf0c                                                                                                                                                                                                                                 |     
    0x0007bf0c move a0, v0                                                                                                                                                                                                                               |     a0 = v0;
                                                                                                                                                                                                                                                         |     if (v0 != 0) {
    0x0007bf10 beqz v0, 0x7c030                                                                                                                                                                                                                          |         
    0x0007bf14 lw t9, -0x7e88(gp)                                                                                                                                                                                                                        |         t9 = *(gp);
    0x0007bf18 jalr t9                                                                                                                                                                                                                                   |         t9 ();
    0x0007bf1c nop                                                                                                                                                                                                                                       |         
    0x0007bf20 lw gp, 0x18(sp)                                                                                                                                                                                                                           |         gp = *(var_18h);
    0x0007bf24 move s1, v0                                                                                                                                                                                                                               |         s1 = v0;
    0x0007bf28 sw v0, 0x2c(sp)                                                                                                                                                                                                                           |         *(var_2ch_2) = v0;
    0x0007bf2c move a0, s0                                                                                                                                                                                                                               |         a0 = s0;
    0x0007bf30 lw t9, -0x7440(gp)                                                                                                                                                                                                                        |         t9 = sym.imp.fclose;
    0x0007bf34 jalr t9                                                                                                                                                                                                                                   |         t9 ();
    0x0007bf38 nop                                                                                                                                                                                                                                       |         
    0x0007bf3c lw gp, 0x18(sp)                                                                                                                                                                                                                           |         gp = *(var_18h);
    0x0007bf40 lw a1, 0x2c(sp)                                                                                                                                                                                                                           |         a1 = *(var_2ch_2);
                                                                                                                                                                                                                                                         |         if (s1 != 0) {
    0x0007bf44 beqz s1, 0x7bf64                                                                                                                                                                                                                          |             
    0x0007bf48 addiu a0, sp, 0xa8                                                                                                                                                                                                                        |             a0 = sp + 0xa8;
    0x0007bf4c lw t9, -0x7e84(gp)                                                                                                                                                                                                                        |             t9 = *(gp);
    0x0007bf50 bal 0x7b0a4                                                                                                                                                                                                                               |             method ();
    0x0007bf54 nop                                                                                                                                                                                                                                       |             
    0x0007bf58 lw gp, 0x18(sp)                                                                                                                                                                                                                           |             gp = *(var_18h);
    0x0007bf5c lw v0, 0xa8(sp)                                                                                                                                                                                                                           |             v0 = *(var_a8h);
    0x0007bf60 b 0x7c0f0                                                                                                                                                                                                                                 |             goto label_14;
                                                                                                                                                                                                                                                         |         }
    0x0007bf64 addiu a0, zero, 0x38                                                                                                                                                                                                                      |         a0 = 0x38;
    0x0007bf68 lw t9, -0x73ac(gp)                                                                                                                                                                                                                        |         t9 = sym.imp.__cxa_allocate_exception;
    0x0007bf6c jalr t9                                                                                                                                                                                                                                   |         t9 ();
    0x0007bf70 nop                                                                                                                                                                                                                                       |         
    0x0007bf74 lw gp, 0x18(sp)                                                                                                                                                                                                                           |         gp = *(var_18h);
    0x0007bf78 move s1, v0                                                                                                                                                                                                                               |         s1 = v0;
    0x0007bf7c addiu a2, sp, 0x3c                                                                                                                                                                                                                        |         a2 = sp + 0x3c;
    0x0007bf80 lw a1, -0x7f84(gp)                                                                                                                                                                                                                        |         a1 = *(gp);
                                                                                                                                                                                                                                                         |         /* str.Database_for_the_post_installed_features_is_empty. */
    0x0007bf84 addiu a1, a1, 0x343c                                                                                                                                                                                                                      |         a1 += 0x343c;
    0x0007bf88 addiu a0, sp, 0x58                                                                                                                                                                                                                        |         a0 = sp + 0x58;
    0x0007bf8c lw t9, -0x753c(gp)                                                                                                                                                                                                                        |         t9 = *(gp);
    0x0007bf90 jalr t9                                                                                                                                                                                                                                   |         t9 ();
    0x0007bf94 nop                                                                                                                                                                                                                                       |         
    0x0007bf98 lw gp, 0x18(sp)                                                                                                                                                                                                                           |         gp = *(var_18h);
    0x0007bf9c addiu v0, sp, 0xb0                                                                                                                                                                                                                        |         v0 = sp + 0xb0;
    0x0007bfa0 sw v0, 0xa8(sp)                                                                                                                                                                                                                           |         *(var_a8h) = v0;
    0x0007bfa4 sw zero, 0xac(sp)                                                                                                                                                                                                                         |         *(var_ach) = 0;
    0x0007bfa8 sb zero, 0xb0(sp)                                                                                                                                                                                                                         |         *(var_b0h) = 0;
    0x0007bfac addiu v0, sp, 0xa8                                                                                                                                                                                                                        |         v0 = sp + 0xa8;
    0x0007bfb0 sw v0, 0x10(sp)                                                                                                                                                                                                                           |         *(var_10h_2) = v0;
    0x0007bfb4 move a3, zero                                                                                                                                                                                                                             |         a3 = 0;
    0x0007bfb8 addiu a2, sp, 0x58                                                                                                                                                                                                                        |         a2 = sp + 0x58;
    0x0007bfbc addiu a1, zero, 0x7d1                                                                                                                                                                                                                     |         a1 = 0x7d1;
    0x0007bfc0 move a0, s1                                                                                                                                                                                                                               |         a0 = s1;
    0x0007bfc4 lw t9, -0x7f30(gp)                                                                                                                                                                                                                        |         t9 = *(gp);
    0x0007bfc8 bal 0x83d40                                                                                                                                                                                                                               |         method ();
    0x0007bfcc nop                                                                                                                                                                                                                                       |         
    0x0007bfd0 lw gp, 0x18(sp)                                                                                                                                                                                                                           |         gp = *(var_18h);
    0x0007bfd4 lw a0, 0xa8(sp)                                                                                                                                                                                                                           |         a0 = *(var_a8h);
    0x0007bfd8 addiu v0, sp, 0xb0                                                                                                                                                                                                                        |         v0 = sp + 0xb0;
    0x0007bfdc lw t9, -0x7488(gp)                                                                                                                                                                                                                        |         t9 = *((gp - 7458));
                                                                                                                                                                                                                                                         |         if (a0 != v0) {
    0x0007bfe0 beq a0, v0, 0x7bff0                                                                                                                                                                                                                       |             
    0x0007bfe4 jalr t9                                                                                                                                                                                                                                   |             t9 ();
    0x0007bfe8 nop                                                                                                                                                                                                                                       |             
    0x0007bfec lw gp, 0x18(sp)                                                                                                                                                                                                                           |             gp = *(var_18h);
                                                                                                                                                                                                                                                         |         }
    0x0007bff0 lw a0, 0x58(sp)                                                                                                                                                                                                                           |         a0 = *(var_58h_2);
    0x0007bff4 addiu v0, sp, 0x60                                                                                                                                                                                                                        |         v0 = sp + 0x60;
    0x0007bff8 lw t9, -0x7488(gp)                                                                                                                                                                                                                        |         t9 = *((gp - 7458));
                                                                                                                                                                                                                                                         |         if (a0 != v0) {
    0x0007bffc beq a0, v0, 0x7c00c                                                                                                                                                                                                                       |             
    0x0007c000 jalr t9                                                                                                                                                                                                                                   |             t9 ();
    0x0007c004 nop                                                                                                                                                                                                                                       |             
    0x0007c008 lw gp, 0x18(sp)                                                                                                                                                                                                                           |             gp = *(var_18h);
                                                                                                                                                                                                                                                         |         }
    0x0007c00c lw a2, -0x7f2c(gp)                                                                                                                                                                                                                        |         a2 = *(gp);
    0x0007c010 lw a1, -0x7f28(gp)                                                                                                                                                                                                                        |         a1 = *(gp);
    0x0007c014 move a0, s1                                                                                                                                                                                                                               |         a0 = s1;
    0x0007c018 lw t9, -0x75e0(gp)                                                                                                                                                                                                                        |         t9 = sym.imp.__cxa_throw;
    0x0007c01c jalr t9                                                                                                                                                                                                                                   |         t9 ();
    0x0007c020 nop                                                                                                                                                                                                                                       |         
    0x0007c024 lw gp, 0x18(sp)                                                                                                                                                                                                                           |         gp = *(var_18h);
    0x0007c028 move s0, a0                                                                                                                                                                                                                               |         s0 = a0;
    0x0007c02c b 0x7cb58                                                                                                                                                                                                                                 |         goto label_15;
                                                                                                                                                                                                                                                         |     }
    0x0007c030 addiu a0, zero, 0x38                                                                                                                                                                                                                      |     a0 = 0x38;
    0x0007c034 lw t9, -0x73ac(gp)                                                                                                                                                                                                                        |     t9 = sym.imp.__cxa_allocate_exception;
    0x0007c038 jalr t9                                                                                                                                                                                                                                   |     t9 ();
    0x0007c03c nop                                                                                                                                                                                                                                       |     
    0x0007c040 lw gp, 0x18(sp)                                                                                                                                                                                                                           |     gp = *(var_18h);
    0x0007c044 move s1, v0                                                                                                                                                                                                                               |     s1 = v0;
    0x0007c048 addiu a2, sp, 0x3c                                                                                                                                                                                                                        |     a2 = sp + 0x3c;
    0x0007c04c lw a1, -0x7f84(gp)                                                                                                                                                                                                                        |     a1 = *(gp);
                                                                                                                                                                                                                                                         |     /* str.Database_for_the_post_installed_features_could_not_be_located. */
    0x0007c050 addiu a1, a1, 0x3470                                                                                                                                                                                                                      |     a1 += 0x3470;
    0x0007c054 addiu a0, sp, 0x58                                                                                                                                                                                                                        |     a0 = sp + 0x58;
    0x0007c058 lw t9, -0x753c(gp)                                                                                                                                                                                                                        |     t9 = *(gp);
    0x0007c05c jalr t9                                                                                                                                                                                                                                   |     t9 ();
    0x0007c060 nop                                                                                                                                                                                                                                       |     
    0x0007c064 lw gp, 0x18(sp)                                                                                                                                                                                                                           |     gp = *(var_18h);
    0x0007c068 addiu v0, sp, 0xb0                                                                                                                                                                                                                        |     v0 = sp + 0xb0;
    0x0007c06c sw v0, 0xa8(sp)                                                                                                                                                                                                                           |     *(var_a8h) = v0;
    0x0007c070 sw zero, 0xac(sp)                                                                                                                                                                                                                         |     *(var_ach) = 0;
    0x0007c074 sb zero, 0xb0(sp)                                                                                                                                                                                                                         |     *(var_b0h) = 0;
    0x0007c078 addiu v0, sp, 0xa8                                                                                                                                                                                                                        |     v0 = sp + 0xa8;
    0x0007c07c sw v0, 0x10(sp)                                                                                                                                                                                                                           |     *(var_10h_2) = v0;
    0x0007c080 move a3, zero                                                                                                                                                                                                                             |     a3 = 0;
    0x0007c084 addiu a2, sp, 0x58                                                                                                                                                                                                                        |     a2 = sp + 0x58;
    0x0007c088 addiu a1, zero, 0x270f                                                                                                                                                                                                                    |     a1 = 0x270f;
    0x0007c08c move a0, s1                                                                                                                                                                                                                               |     a0 = s1;
    0x0007c090 lw t9, -0x7f30(gp)                                                                                                                                                                                                                        |     t9 = *(gp);
    0x0007c094 bal 0x83d40                                                                                                                                                                                                                               |     method ();
    0x0007c098 nop                                                                                                                                                                                                                                       |     
    0x0007c09c lw gp, 0x18(sp)                                                                                                                                                                                                                           |     gp = *(var_18h);
    0x0007c0a0 lw a0, 0xa8(sp)                                                                                                                                                                                                                           |     a0 = *(var_a8h);
    0x0007c0a4 addiu v0, sp, 0xb0                                                                                                                                                                                                                        |     v0 = sp + 0xb0;
    0x0007c0a8 lw t9, -0x7488(gp)                                                                                                                                                                                                                        |     t9 = *((gp - 7458));
                                                                                                                                                                                                                                                         |     if (a0 != v0) {
    0x0007c0ac beq a0, v0, 0x7c0bc                                                                                                                                                                                                                       |         
    0x0007c0b0 jalr t9                                                                                                                                                                                                                                   |         t9 ();
    0x0007c0b4 nop                                                                                                                                                                                                                                       |         
    0x0007c0b8 lw gp, 0x18(sp)                                                                                                                                                                                                                           |         gp = *(var_18h);
                                                                                                                                                                                                                                                         |     }
    0x0007c0bc lw a0, 0x58(sp)                                                                                                                                                                                                                           |     a0 = *(var_58h_2);
    0x0007c0c0 addiu v0, sp, 0x60                                                                                                                                                                                                                        |     v0 = sp + 0x60;
    0x0007c0c4 lw t9, -0x7488(gp)                                                                                                                                                                                                                        |     t9 = *((gp - 7458));
                                                                                                                                                                                                                                                         |     if (a0 != v0) {
    0x0007c0c8 beq a0, v0, 0x7c0d8                                                                                                                                                                                                                       |         
    0x0007c0cc jalr t9                                                                                                                                                                                                                                   |         t9 ();
    0x0007c0d0 nop                                                                                                                                                                                                                                       |         
    0x0007c0d4 lw gp, 0x18(sp)                                                                                                                                                                                                                           |         gp = *(var_18h);
                                                                                                                                                                                                                                                         |     }
    0x0007c0d8 lw a2, -0x7f2c(gp)                                                                                                                                                                                                                        |     a2 = *(gp);
    0x0007c0dc lw a1, -0x7f28(gp)                                                                                                                                                                                                                        |     a1 = *(gp);
    0x0007c0e0 move a0, s1                                                                                                                                                                                                                               |     a0 = s1;
    0x0007c0e4 lw t9, -0x75e0(gp)                                                                                                                                                                                                                        |     t9 = sym.imp.__cxa_throw;
    0x0007c0e8 jalr t9                                                                                                                                                                                                                                   |     t9 ();
    0x0007c0ec nop                                                                                                                                                                                                                                       |     
                                                                                                                                                                                                                                                         | label_14:
    0x0007c0f0 sw v0, 0x70(sp)                                                                                                                                                                                                                           |     *(var_70h) = v0;
    0x0007c0f4 lw v0, 0xac(sp)                                                                                                                                                                                                                           |     v0 = *(var_ach);
    0x0007c0f8 sw v0, 0x74(sp)                                                                                                                                                                                                                           |     *(var_74h) = v0;
    0x0007c0fc lw v0, 0xb0(sp)                                                                                                                                                                                                                           |     v0 = *(var_b0h);
    0x0007c100 sw v0, 0x78(sp)                                                                                                                                                                                                                           |     *(var_78h_2) = v0;
    0x0007c104 lw v0, 0xb4(sp)                                                                                                                                                                                                                           |     v0 = *(var_b4h);
    0x0007c108 sw v0, 0x7c(sp)                                                                                                                                                                                                                           |     *(var_7ch) = v0;
    0x0007c10c sh zero, 0xb6(sp)                                                                                                                                                                                                                         |     *(var_b6h) = 0;
    0x0007c110 lw s1, 0x84(sp)                                                                                                                                                                                                                           |     s1 = *(var_84h);
    0x0007c114 lw v0, 0xb8(sp)                                                                                                                                                                                                                           |     v0 = *(var_b8h);
                                                                                                                                                                                                                                                         |     if (s1 == 0) {
    0x0007c118 beqz s1, 0x7c194                                                                                                                                                                                                                          |         goto label_16;
                                                                                                                                                                                                                                                         |     }
    0x0007c11c lw a0, (s1)                                                                                                                                                                                                                               |     a0 = *(s1);
    0x0007c120 addiu a1, zero, 1                                                                                                                                                                                                                         |     a1 = 1;
                                                                                                                                                                                                                                                         |     if (a0 == 0) {
    0x0007c124 beqz a0, 0x7c164                                                                                                                                                                                                                          |         goto label_17;
                                                                                                                                                                                                                                                         |     }
    0x0007c128 lw v0, 8(s1)                                                                                                                                                                                                                              |     v0 = *((s1 + 2));
                                                                                                                                                                                                                                                         |     if (v0 == a0) {
    0x0007c12c beql v0, a0, 0x7c164                                                                                                                                                                                                                      |         goto label_17;
                                                                                                                                                                                                                                                         |     }
    0x0007c130 sw zero, 4(v0)                                                                                                                                                                                                                            |     *((v0 + 1)) = 0;
                                                                                                                                                                                                                                                         |     do {
    0x0007c134 lw s0, 8(a0)                                                                                                                                                                                                                              |         s0 = *((a0 + 2));
    0x0007c138 lw t9, -0x7518(gp)                                                                                                                                                                                                                        |         t9 = sym.imp.free;
    0x0007c13c jalr t9                                                                                                                                                                                                                                   |         t9 ();
    0x0007c140 nop                                                                                                                                                                                                                                       |         
    0x0007c144 lw gp, 0x18(sp)                                                                                                                                                                                                                           |         gp = *(var_18h);
    0x0007c148 sw s0, (s1)                                                                                                                                                                                                                               |         *(s1) = s0;
                                                                                                                                                                                                                                                         |         if (s0 == 0) {
    0x0007c14c beqz s0, 0x7c160                                                                                                                                                                                                                          |             goto label_18;
                                                                                                                                                                                                                                                         |         }
    0x0007c150 lw v0, 8(s1)                                                                                                                                                                                                                              |         v0 = *((s1 + 2));
    0x0007c154 move a0, s0                                                                                                                                                                                                                               |         a0 = s0;
    0x0007c158 bne v0, s0, 0x7c134                                                                                                                                                                                                                       |         
                                                                                                                                                                                                                                                         |     } while (v0 != s0);
    0x0007c15c sw zero, 4(v0)                                                                                                                                                                                                                            |     *((v0 + 1)) = 0;
                                                                                                                                                                                                                                                         | label_18:
    0x0007c160 addiu a1, zero, 1                                                                                                                                                                                                                         |     a1 = 1;
                                                                                                                                                                                                                                                         | label_17:
    0x0007c164 lw a0, 0x10(s1)                                                                                                                                                                                                                           |     a0 = *((s1 + 4));
    0x0007c168 lw t9, -0x7404(gp)                                                                                                                                                                                                                        |     t9 = sym.imp.operator_delete_void__unsigned_int_;
    0x0007c16c jalr t9                                                                                                                                                                                                                                   |     t9 ();
    0x0007c170 nop                                                                                                                                                                                                                                       |     
    0x0007c174 lw gp, 0x18(sp)                                                                                                                                                                                                                           |     gp = *(var_18h);
    0x0007c178 addiu a1, zero, 0x14                                                                                                                                                                                                                      |     a1 = 0x14;
    0x0007c17c move a0, s1                                                                                                                                                                                                                               |     a0 = s1;
    0x0007c180 lw t9, -0x7404(gp)                                                                                                                                                                                                                        |     t9 = sym.imp.operator_delete_void__unsigned_int_;
    0x0007c184 jalr t9                                                                                                                                                                                                                                   |     t9 ();
    0x0007c188 nop                                                                                                                                                                                                                                       |     
    0x0007c18c lw gp, 0x18(sp)                                                                                                                                                                                                                           |     gp = *(var_18h);
    0x0007c190 lw v0, 0xb8(sp)                                                                                                                                                                                                                           |     v0 = *(var_b8h);
                                                                                                                                                                                                                                                         | label_16:
    0x0007c194 sw v0, 0x80(sp)                                                                                                                                                                                                                           |     *(var_80h) = v0;
    0x0007c198 lw v0, 0xbc(sp)                                                                                                                                                                                                                           |     v0 = *(var_bch);
    0x0007c19c sw v0, 0x84(sp)                                                                                                                                                                                                                           |     *(var_84h) = v0;
    0x0007c1a0 lw a0, 0x90(sp)                                                                                                                                                                                                                           |     a0 = *(var_90h);
    0x0007c1a4 lw t9, -0x7518(gp)                                                                                                                                                                                                                        |     t9 = sym.imp.free;
    0x0007c1a8 jalr t9                                                                                                                                                                                                                                   |     t9 ();
    0x0007c1ac nop                                                                                                                                                                                                                                       |     
    0x0007c1b0 lw gp, 0x18(sp)                                                                                                                                                                                                                           |     gp = *(var_18h);
    0x0007c1b4 addiu a1, zero, 1                                                                                                                                                                                                                         |     a1 = 1;
    0x0007c1b8 lw a0, 0x8c(sp)                                                                                                                                                                                                                           |     a0 = *(var_8ch);
    0x0007c1bc lw t9, -0x7404(gp)                                                                                                                                                                                                                        |     t9 = sym.imp.operator_delete_void__unsigned_int_;
    0x0007c1c0 jalr t9                                                                                                                                                                                                                                   |     t9 ();
    0x0007c1c4 nop                                                                                                                                                                                                                                       |     
    0x0007c1c8 lw gp, 0x18(sp)                                                                                                                                                                                                                           |     gp = *(var_18h);
    0x0007c1cc lw v0, 0xc0(sp)                                                                                                                                                                                                                           |     v0 = *(var_c0h);
    0x0007c1d0 sw v0, 0x88(sp)                                                                                                                                                                                                                           |     *(var_88h) = v0;
    0x0007c1d4 lw v0, 0xc4(sp)                                                                                                                                                                                                                           |     v0 = *(var_c4h);
    0x0007c1d8 sw v0, 0x8c(sp)                                                                                                                                                                                                                           |     *(var_8ch) = v0;
    0x0007c1dc lw v0, 0xc8(sp)                                                                                                                                                                                                                           |     v0 = *(var_c8h);
    0x0007c1e0 sw v0, 0x90(sp)                                                                                                                                                                                                                           |     *(var_90h) = v0;
    0x0007c1e4 lw v0, 0xcc(sp)                                                                                                                                                                                                                           |     v0 = *(var_cch);
    0x0007c1e8 sw v0, 0x94(sp)                                                                                                                                                                                                                           |     *(var_94h_2) = v0;
    0x0007c1ec lw v0, 0xd0(sp)                                                                                                                                                                                                                           |     v0 = *(var_d0h);
    0x0007c1f0 sw v0, 0x98(sp)                                                                                                                                                                                                                           |     *(var_98h) = v0;
    0x0007c1f4 lw v0, 0xd4(sp)                                                                                                                                                                                                                           |     v0 = *(var_d4h);
    0x0007c1f8 sw v0, 0x9c(sp)                                                                                                                                                                                                                           |     *(var_9ch) = v0;
    0x0007c1fc sw zero, 0xc0(sp)                                                                                                                                                                                                                         |     *(var_c0h) = 0;
    0x0007c200 sw zero, 0xc4(sp)                                                                                                                                                                                                                         |     *(var_c4h) = 0;
    0x0007c204 sw zero, 0xc8(sp)                                                                                                                                                                                                                         |     *(var_c8h) = 0;
    0x0007c208 sw zero, 0xcc(sp)                                                                                                                                                                                                                         |     *(var_cch) = 0;
    0x0007c20c sw zero, 0xd0(sp)                                                                                                                                                                                                                         |     *(var_d0h) = 0;
    0x0007c210 sw zero, 0xd4(sp)                                                                                                                                                                                                                         |     *(var_d4h) = 0;
    0x0007c214 lw v0, 0xd8(sp)                                                                                                                                                                                                                           |     v0 = *(var_d8h);
    0x0007c218 sw v0, 0xa0(sp)                                                                                                                                                                                                                           |     *(var_a0h) = v0;
    0x0007c21c lw v0, 0xdc(sp)                                                                                                                                                                                                                           |     v0 = *(var_dch);
    0x0007c220 sw v0, 0xa4(sp)                                                                                                                                                                                                                           |     *(var_a4h) = v0;
    0x0007c224 sw zero, 0xb8(sp)                                                                                                                                                                                                                         |     *(var_b8h) = 0;
    0x0007c228 sw zero, 0xbc(sp)                                                                                                                                                                                                                         |     *(var_bch) = 0;
    0x0007c22c sw zero, 0xd8(sp)                                                                                                                                                                                                                         |     *(var_d8h) = 0;
    0x0007c230 sw zero, 0xdc(sp)                                                                                                                                                                                                                         |     *(var_dch) = 0;
    0x0007c234 addiu a1, zero, 1                                                                                                                                                                                                                         |     a1 = 1;
    0x0007c238 move a0, zero                                                                                                                                                                                                                             |     a0 = 0;
    0x0007c23c lw t9, -0x7404(gp)                                                                                                                                                                                                                        |     t9 = sym.imp.operator_delete_void__unsigned_int_;
    0x0007c240 jalr t9                                                                                                                                                                                                                                   |     t9 ();
    0x0007c244 nop                                                                                                                                                                                                                                       |     
    0x0007c248 lw gp, 0x18(sp)                                                                                                                                                                                                                           |     gp = *(var_18h);
    0x0007c24c lhu v1, 0x7e(sp)                                                                                                                                                                                                                          |     v1 = *(var_7eh);
    0x0007c250 addiu v0, zero, 4                                                                                                                                                                                                                         |     v0 = 4;
    0x0007c254 lw v0, 0x70(sp)                                                                                                                                                                                                                           |     v0 = *(var_70h);
                                                                                                                                                                                                                                                         |     if (v1 == v0) {
    0x0007c258 bne v1, v0, 0x7c294                                                                                                                                                                                                                       |         
    0x0007c25c sll v0, v0, 4                                                                                                                                                                                                                             |         v0 <<= 4;
    0x0007c260 lw s4, 0x78(sp)                                                                                                                                                                                                                           |         s4 = *(var_78h_2);
                                                                                                                                                                                                                                                         |         if (v0 == 0) {
    0x0007c264 beqz v0, 0x7c9e8                                                                                                                                                                                                                          |             goto label_19;
                                                                                                                                                                                                                                                         |         }
    0x0007c268 lhu v1, 0xe(s4)                                                                                                                                                                                                                           |         v1 = *((s4 + 7));
    0x0007c26c addiu v0, zero, 3                                                                                                                                                                                                                         |         v0 = 3;
    0x0007c270 lw s5, -0x7fcc(gp)                                                                                                                                                                                                                        |         s5 = *(gp);
                                                                                                                                                                                                                                                         |         if (v1 != v0) {
    0x0007c274 bne v1, v0, 0x7c2e4                                                                                                                                                                                                                       |             goto label_20;
                                                                                                                                                                                                                                                         |         }
                                                                                                                                                                                                                                                         |         /* str.name */
    0x0007c278 addiu s5, s5, 0x7bf0                                                                                                                                                                                                                      |         s5 += 0x7bf0;
    0x0007c27c move s6, s5                                                                                                                                                                                                                               |         s6 = s5;
    0x0007c280 addiu v0, sp, 0xa8                                                                                                                                                                                                                        |         v0 = sp + 0xa8;
    0x0007c284 sw v0, 0x24(sp)                                                                                                                                                                                                                           |         *(var_24h_2) = v0;
    0x0007c288 lw v0, -0x7f80(gp)                                                                                                                                                                                                                        |         v0 = *(gp);
    0x0007c28c sw v0, 0x28(sp)                                                                                                                                                                                                                           |         *(var_28h_3) = v0;
    0x0007c290 b 0x7c598                                                                                                                                                                                                                                 |         goto label_21;
                                                                                                                                                                                                                                                         |     }
    0x0007c294 lw a3, -0x7f84(gp)                                                                                                                                                                                                                        |     a3 = *(gp);
                                                                                                                                                                                                                                                         |     /* esilref: 'rapidjson::GenericValue<Encoding, Allocator>* rapidjson::GenericValue<Encoding, Allocator>::Begin() [with Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; rapidjson::GenericValue<Encoding, Allocator>::ValueIterator =  */
    0x0007c298 addiu a3, a3, 0x497c                                                                                                                                                                                                                      |     a3 += 0x497c;
    0x0007c29c addiu a2, zero, 0x639                                                                                                                                                                                                                     |     a2 = 0x639;
    0x0007c2a0 lw a1, -0x7fcc(gp)                                                                                                                                                                                                                        |     a1 = *(gp);
                                                                                                                                                                                                                                                         |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0007c2a4 addiu a1, a1, 0x2aa8                                                                                                                                                                                                                      |     a1 += 0x2aa8;
    0x0007c2a8 lw a0, -0x7fcc(gp)                                                                                                                                                                                                                        |     a0 = *(gp);
                                                                                                                                                                                                                                                         |     /* str.IsArray__ */
    0x0007c2ac addiu a0, a0, 0x2bc8                                                                                                                                                                                                                      |     a0 += aav.0x00002bc8;
    0x0007c2b0 lw t9, -0x7644(gp)                                                                                                                                                                                                                        |     t9 = sym.imp.__assert_fail;
    0x0007c2b4 jalr t9                                                                                                                                                                                                                                   |     t9 ();
    0x0007c2b8 nop                                                                                                                                                                                                                                       |     
                                                                                                                                                                                                                                                         | label_5:
    0x0007c2bc lw a3, -0x7f84(gp)                                                                                                                                                                                                                        |     a3 = *(gp);
                                                                                                                                                                                                                                                         |     /* esilref: 'rapidjson::GenericValue<Encoding, Allocator>* rapidjson::GenericValue<Encoding, Allocator>::End() [with Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; rapidjson::GenericValue<Encoding, Allocator>::ValueIterator = ra */
    0x0007c2c0 addiu a3, a3, 0x485c                                                                                                                                                                                                                      |     a3 += 0x485c;
    0x0007c2c4 addiu a2, zero, 0x63c                                                                                                                                                                                                                     |     a2 = aav.0x0000063c;
    0x0007c2c8 lw a1, -0x7fcc(gp)                                                                                                                                                                                                                        |     a1 = *(gp);
                                                                                                                                                                                                                                                         |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0007c2cc addiu a1, a1, 0x2aa8                                                                                                                                                                                                                      |     a1 += 0x2aa8;
    0x0007c2d0 lw a0, -0x7fcc(gp)                                                                                                                                                                                                                        |     a0 = *(gp);
                                                                                                                                                                                                                                                         |     /* str.IsArray__ */
    0x0007c2d4 addiu a0, a0, 0x2bc8                                                                                                                                                                                                                      |     a0 += aav.0x00002bc8;
    0x0007c2d8 lw t9, -0x7644(gp)                                                                                                                                                                                                                        |     t9 = sym.imp.__assert_fail;
    0x0007c2dc jalr t9                                                                                                                                                                                                                                   |     t9 ();
    0x0007c2e0 nop                                                                                                                                                                                                                                       |     
                                                                                                                                                                                                                                                         | label_20:
    0x0007c2e4 lw a3, -0x7f84(gp)                                                                                                                                                                                                                        |     a3 = *(gp);
                                                                                                                                                                                                                                                         |     /* esilref: 'rapidjson::GenericValue<Encoding, Allocator>::Object rapidjson::GenericValue<Encoding, Allocator>::GetObject() [with Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; rapidjson::GenericValue<Encoding, Allocator>::Objec */
                                                                                                                                                                                                                                                         | label_6:
    0x0007c2e8 addiu a3, a3, 0x3d8c                                                                                                                                                                                                                      |     a3 += 0x3d8c;
    0x0007c2ec addiu a2, zero, 0x60a                                                                                                                                                                                                                     |     a2 = 0x60a;
    0x0007c2f0 lw a1, -0x7fcc(gp)                                                                                                                                                                                                                        |     a1 = *(gp);
                                                                                                                                                                                                                                                         |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0007c2f4 addiu a1, a1, 0x2aa8                                                                                                                                                                                                                      |     a1 += 0x2aa8;
    0x0007c2f8 lw a0, -0x7fcc(gp)                                                                                                                                                                                                                        |     a0 = *(gp);
                                                                                                                                                                                                                                                         |     /* str.IsObject__ */
    0x0007c2fc addiu a0, a0, 0x2b0c                                                                                                                                                                                                                      |     a0 += 0x2b0c;
    0x0007c300 lw t9, -0x7644(gp)                                                                                                                                                                                                                        |     t9 = sym.imp.__assert_fail;
    0x0007c304 jalr t9                                                                                                                                                                                                                                   |     t9 ();
    0x0007c308 nop                                                                                                                                                                                                                                       |     
                                                                                                                                                                                                                                                         | label_8:
    0x0007c30c lw a3, -0x7f84(gp)                                                                                                                                                                                                                        |     a3 = *(gp);
                                                                                                                                                                                                                                                         |     do {
                                                                                                                                                                                                                                                         |         /* esilref: 'bool rapidjson::GenericValue<Encoding, Allocator>::StringEqual(const rapidjson::GenericValue<Encoding, SourceAllocator>&) const [with SourceAllocator = rapidjson::MemoryPoolAllocator<>; Encoding = rapidjson::UTF8<>; Allocator = rapidjson::Memor */
    0x0007c310 addiu a3, a3, 0x3ed4                                                                                                                                                                                                                      |         a3 += 0x3ed4;
    0x0007c314 addiu a2, zero, 0x829                                                                                                                                                                                                                     |         a2 = 0x829;
    0x0007c318 lw a1, -0x7fcc(gp)                                                                                                                                                                                                                        |         a1 = *(gp);
                                                                                                                                                                                                                                                         |         /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0007c31c addiu a1, a1, 0x2aa8                                                                                                                                                                                                                      |         a1 += 0x2aa8;
    0x0007c320 lw a0, -0x7fcc(gp)                                                                                                                                                                                                                        |         a0 = *(gp);
                                                                                                                                                                                                                                                         |         /* str.rhs.IsString__ */
    0x0007c324 addiu a0, a0, 0x48d4                                                                                                                                                                                                                      |         a0 += 0x48d4;
    0x0007c328 lw t9, -0x7644(gp)                                                                                                                                                                                                                        |         t9 = sym.imp.__assert_fail;
    0x0007c32c jalr t9                                                                                                                                                                                                                                   |         t9 ();
    0x0007c330 nop                                                                                                                                                                                                                                       |         
                                                                                                                                                                                                                                                         | label_0:
    0x0007c334 addiu v0, zero, 4                                                                                                                                                                                                                         |         v0 = 4;
                                                                                                                                                                                                                                                         |         if (v1 == v0) {
    0x0007c338 beql v1, v0, 0x7c37c                                                                                                                                                                                                                      |             goto label_22;
                                                                                                                                                                                                                                                         |         }
    0x0007c33c lw a1, 8(s1)                                                                                                                                                                                                                              |         a1 = *((s1 + 2));
    0x0007c340 addiu s1, s1, 0x20                                                                                                                                                                                                                        |         s1 += 0x20;
                                                                                                                                                                                                                                                         | label_1:
    0x0007c344 lhu v1, 0x7e(sp)                                                                                                                                                                                                                          |         v1 = *(var_7eh);
                                                                                                                                                                                                                                                         |         if (s1 == s3) {
    0x0007c348 beq s1, s3, 0x7c568                                                                                                                                                                                                                       |             goto label_7;
                                                                                                                                                                                                                                                         |         }
    0x0007c34c lhu v0, 0xe(s1)                                                                                                                                                                                                                           |         v0 = *((s1 + 7));
    0x0007c350 andi v1, v0, 0x400                                                                                                                                                                                                                        |         v1 = v0 & aav.0x00000400;
    0x0007c354 lw a3, -0x7f84(gp)                                                                                                                                                                                                                        |         a3 = *(gp);
    0x0007c358 beqz v1, 0x7c310                                                                                                                                                                                                                          |         
                                                                                                                                                                                                                                                         |     } while (v1 == 0);
                                                                                                                                                                                                                                                         | label_9:
    0x0007c35c andi v0, v0, 0x1000                                                                                                                                                                                                                       |     v0 &= aav.0x00001000;
                                                                                                                                                                                                                                                         |     if (v0 == 0) {
    0x0007c360 beql v0, zero, 0x7c334                                                                                                                                                                                                                    |         goto label_0;
                                                                                                                                                                                                                                                         |     }
    0x0007c364 lw v1, (s1)                                                                                                                                                                                                                               |     v1 = *(s1);
    0x0007c368 lb v0, 0xd(s1)                                                                                                                                                                                                                            |     v0 = *((s1 + 13));
    0x0007c36c addiu v1, s7, -4                                                                                                                                                                                                                          |     v1 = s7 + -4;
    0x0007c370 addiu s1, s1, 0x20                                                                                                                                                                                                                        |     s1 += 0x20;
                                                                                                                                                                                                                                                         |     if (v1 == v0) {
    0x0007c374 bnel v1, v0, 0x7c344                                                                                                                                                                                                                      |         goto label_1;
                                                                                                                                                                                                                                                         |     }
    0x0007c378 move a1, s1                                                                                                                                                                                                                               |     a1 = s1;
                                                                                                                                                                                                                                                         | label_22:
    0x0007c37c addiu a2, zero, 4                                                                                                                                                                                                                         |     a2 = 4;
                                                                                                                                                                                                                                                         |     if (a1 == s5) {
    0x0007c380 beq a1, s5, 0x7c3a0                                                                                                                                                                                                                       |         goto label_23;
                                                                                                                                                                                                                                                         |     }
    0x0007c384 move a0, s6                                                                                                                                                                                                                               |     a0 = s6;
    0x0007c388 lw t9, -0x7448(gp)                                                                                                                                                                                                                        |     t9 = sym.imp.memcmp;
    0x0007c38c jalr t9                                                                                                                                                                                                                                   |     t9 ();
    0x0007c390 nop                                                                                                                                                                                                                                       |     
    0x0007c394 lw gp, 0x18(sp)                                                                                                                                                                                                                           |     gp = *(var_18h);
    0x0007c398 addiu s1, s1, 0x20                                                                                                                                                                                                                        |     s1 += 0x20;
                                                                                                                                                                                                                                                         |     if (v0 == 0) {
    0x0007c39c bnel v0, zero, 0x7c344                                                                                                                                                                                                                    |         goto label_1;
                                                                                                                                                                                                                                                         |     }
                                                                                                                                                                                                                                                         | label_23:
    0x0007c3a0 addiu s1, zero, 0xd                                                                                                                                                                                                                       |     s1 = 0xd;
                                                                                                                                                                                                                                                         |     if (s3 == s1) {
    0x0007c3a4 beq s3, s1, 0x7c564                                                                                                                                                                                                                       |         goto label_24;
                                                                                                                                                                                                                                                         |     }
    0x0007c3a8 andi s2, s2, 0x1000                                                                                                                                                                                                                       |     s2 &= aav.0x00001000;
    0x0007c3ac b 0x7c400                                                                                                                                                                                                                                 |     goto label_25;
                                                                                                                                                                                                                                                         |     do {
                                                                                                                                                                                                                                                         |         /* esilref: 'bool rapidjson::GenericValue<Encoding, Allocator>::StringEqual(const rapidjson::GenericValue<Encoding, SourceAllocator>&) const [with SourceAllocator = rapidjson::MemoryPoolAllocator<>; Encoding = rapidjson::UTF8<>; Allocator = rapidjson::Memor */
    0x0007c3b0 addiu a3, a3, 0x3ed4                                                                                                                                                                                                                      |         a3 += 0x3ed4;
    0x0007c3b4 addiu a2, zero, 0x829                                                                                                                                                                                                                     |         a2 = 0x829;
    0x0007c3b8 lw a1, -0x7fcc(gp)                                                                                                                                                                                                                        |         a1 = *(gp);
                                                                                                                                                                                                                                                         |         /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0007c3bc addiu a1, a1, 0x2aa8                                                                                                                                                                                                                      |         a1 += 0x2aa8;
    0x0007c3c0 lw a0, -0x7fcc(gp)                                                                                                                                                                                                                        |         a0 = *(gp);
                                                                                                                                                                                                                                                         |         /* str.rhs.IsString__ */
    0x0007c3c4 addiu a0, a0, 0x48d4                                                                                                                                                                                                                      |         a0 += 0x48d4;
    0x0007c3c8 lw t9, -0x7644(gp)                                                                                                                                                                                                                        |         t9 = sym.imp.__assert_fail;
    0x0007c3cc jalr t9                                                                                                                                                                                                                                   |         t9 ();
    0x0007c3d0 nop                                                                                                                                                                                                                                       |         
                                                                                                                                                                                                                                                         | label_2:
    0x0007c3d4 addiu v0, zero, 4                                                                                                                                                                                                                         |         v0 = 4;
                                                                                                                                                                                                                                                         |         if (v1 == v0) {
    0x0007c3d8 beql v1, v0, 0x7c41c                                                                                                                                                                                                                      |             goto label_26;
                                                                                                                                                                                                                                                         |         }
    0x0007c3dc lw a1, 8(s0)                                                                                                                                                                                                                              |         a1 = *((s0 + 2));
    0x0007c3e0 addiu s0, s0, 0x20                                                                                                                                                                                                                        |         s0 += 0x20;
                                                                                                                                                                                                                                                         | label_3:
    0x0007c3e4 lw a3, -0x7f84(gp)                                                                                                                                                                                                                        |         a3 = *(gp);
                                                                                                                                                                                                                                                         |         if (s3 == s0) {
    0x0007c3e8 beq s3, s0, 0x7c4a8                                                                                                                                                                                                                       |             goto label_27;
                                                                                                                                                                                                                                                         |         }
    0x0007c3ec lhu s2, 0xe(s0)                                                                                                                                                                                                                           |         s2 = *((s0 + 7));
    0x0007c3f0 andi v0, s2, 0x400                                                                                                                                                                                                                        |         v0 = s2 & aav.0x00000400;
    0x0007c3f4 lw a3, -0x7f84(gp)                                                                                                                                                                                                                        |         a3 = *(gp);
    0x0007c3f8 beqz v0, 0x7c3b0                                                                                                                                                                                                                          |         
                                                                                                                                                                                                                                                         |     } while (v0 == 0);
    0x0007c3fc andi s2, s2, 0x1000                                                                                                                                                                                                                       |     s2 &= aav.0x00001000;
                                                                                                                                                                                                                                                         |     if (s2 == 0) {
                                                                                                                                                                                                                                                         | label_25:
    0x0007c400 beql s2, zero, 0x7c3d4                                                                                                                                                                                                                    |         goto label_2;
                                                                                                                                                                                                                                                         |     }
    0x0007c404 lw v1, (s0)                                                                                                                                                                                                                               |     v1 = *(s0);
    0x0007c408 lb v0, 0xd(s0)                                                                                                                                                                                                                            |     v0 = *((s0 + 13));
    0x0007c40c addiu v1, s1, -4                                                                                                                                                                                                                          |     v1 = s1 + -4;
    0x0007c410 addiu s0, s0, 0x20                                                                                                                                                                                                                        |     s0 += 0x20;
                                                                                                                                                                                                                                                         |     if (v1 == v0) {
    0x0007c414 bnel v1, v0, 0x7c3e4                                                                                                                                                                                                                      |         goto label_3;
                                                                                                                                                                                                                                                         |     }
    0x0007c418 move a1, s0                                                                                                                                                                                                                               |     a1 = s0;
                                                                                                                                                                                                                                                         | label_26:
    0x0007c41c addiu a2, zero, 4                                                                                                                                                                                                                         |     a2 = 4;
                                                                                                                                                                                                                                                         |     if (a1 == s5) {
    0x0007c420 beq a1, s5, 0x7c440                                                                                                                                                                                                                       |         goto label_28;
                                                                                                                                                                                                                                                         |     }
    0x0007c424 move a0, s6                                                                                                                                                                                                                               |     a0 = s6;
    0x0007c428 lw t9, -0x7448(gp)                                                                                                                                                                                                                        |     t9 = sym.imp.memcmp;
    0x0007c42c jalr t9                                                                                                                                                                                                                                   |     t9 ();
    0x0007c430 nop                                                                                                                                                                                                                                       |     
    0x0007c434 lw gp, 0x18(sp)                                                                                                                                                                                                                           |     gp = *(var_18h);
    0x0007c438 addiu s0, s0, 0x20                                                                                                                                                                                                                        |     s0 += 0x20;
                                                                                                                                                                                                                                                         |     if (v0 == 0) {
    0x0007c43c bnel v0, zero, 0x7c3e4                                                                                                                                                                                                                    |         goto label_3;
                                                                                                                                                                                                                                                         |     }
                                                                                                                                                                                                                                                         | label_28:
    0x0007c440 lw a3, -0x7f84(gp)                                                                                                                                                                                                                        |     a3 = *(gp);
                                                                                                                                                                                                                                                         |     if (s3 == s0) {
    0x0007c444 beq s3, s0, 0x7c4a8                                                                                                                                                                                                                       |         goto label_27;
                                                                                                                                                                                                                                                         |     }
    0x0007c448 lhu v0, 0x1e(s0)                                                                                                                                                                                                                          |     v0 = *((s0 + 15));
    0x0007c44c andi v1, v0, 0x400                                                                                                                                                                                                                        |     v1 = v0 & aav.0x00000400;
    0x0007c450 andi v0, v0, 0x1000                                                                                                                                                                                                                       |     v0 &= aav.0x00001000;
                                                                                                                                                                                                                                                         |     if (v1 == 0) {
    0x0007c454 beqz v1, 0x7c4cc                                                                                                                                                                                                                          |         goto label_29;
                                                                                                                                                                                                                                                         |     }
                                                                                                                                                                                                                                                         |     if (v0 == 0) {
    0x0007c458 beql v0, zero, 0x7c4f4                                                                                                                                                                                                                    |         goto label_30;
                                                                                                                                                                                                                                                         |     }
    0x0007c45c lw s0, 0x18(s0)                                                                                                                                                                                                                           |     s0 = *((s0 + 6));
    0x0007c460 addiu s0, s0, 0x10                                                                                                                                                                                                                        |     s0 += 0x10;
    0x0007c464 addiu v0, sp, 0xb0                                                                                                                                                                                                                        |     v0 = sp + 0xb0;
    0x0007c468 sw v0, 0xa8(sp)                                                                                                                                                                                                                           |     *(var_a8h) = v0;
                                                                                                                                                                                                                                                         |     do {
    0x0007c46c move a0, s0                                                                                                                                                                                                                               |         a0 = s0;
    0x0007c470 lw t9, -0x73cc(gp)                                                                                                                                                                                                                        |         t9 = sym.imp.strlen;
    0x0007c474 jalr t9                                                                                                                                                                                                                                   |         t9 ();
    0x0007c478 nop                                                                                                                                                                                                                                       |         
    0x0007c47c lw gp, 0x18(sp)                                                                                                                                                                                                                           |         gp = *(var_18h);
    0x0007c480 addu a2, s0, v0                                                                                                                                                                                                                           |         a2 = s0 + v0;
                                                                                                                                                                                                                                                         | label_4:
    0x0007c484 move a3, zero                                                                                                                                                                                                                             |         a3 = 0;
    0x0007c488 move a1, s0                                                                                                                                                                                                                               |         a1 = s0;
    0x0007c48c lw a0, 0x24(sp)                                                                                                                                                                                                                           |         a0 = *(var_24h_2);
    0x0007c490 lw t9, 0x28(sp)                                                                                                                                                                                                                           |         t9 = *(var_28h_3);
    0x0007c494 jalr t9                                                                                                                                                                                                                                   |         t9 ();
    0x0007c498 nop                                                                                                                                                                                                                                       |         
    0x0007c49c lw gp, 0x18(sp)                                                                                                                                                                                                                           |         gp = *(var_18h);
    0x0007c4a0 lw s1, 0xac(sp)                                                                                                                                                                                                                           |         s1 = *(var_ach);
    0x0007c4a4 b 0x7c508                                                                                                                                                                                                                                 |         goto label_31;
                                                                                                                                                                                                                                                         |         /* esilref: 'rapidjson::GenericValue<Encoding, Allocator>& rapidjson::GenericValue<Encoding, Allocator>::operator[](const rapidjson::GenericValue<Encoding, SourceAllocator>&) [with SourceAllocator = rapidjson::MemoryPoolAllocator<>; Encoding = rapidjson::UT */
                                                                                                                                                                                                                                                         | label_27:
    0x0007c4a8 addiu a3, a3, 0x3c64                                                                                                                                                                                                                      |         a3 += 0x3c64;
    0x0007c4ac addiu a2, zero, 0x46f                                                                                                                                                                                                                     |         a2 = 0x46f;
    0x0007c4b0 lw a1, -0x7fcc(gp)                                                                                                                                                                                                                        |         a1 = *(gp);
                                                                                                                                                                                                                                                         |         /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0007c4b4 addiu a1, a1, 0x2aa8                                                                                                                                                                                                                      |         a1 += 0x2aa8;
    0x0007c4b8 lw a0, -0x7fcc(gp)                                                                                                                                                                                                                        |         a0 = *(gp);
                                                                                                                                                                                                                                                         |         /* str.false */
    0x0007c4bc addiu a0, a0, 0x48ec                                                                                                                                                                                                                      |         a0 += 0x48ec;
    0x0007c4c0 lw t9, -0x7644(gp)                                                                                                                                                                                                                        |         t9 = sym.imp.__assert_fail;
    0x0007c4c4 jalr t9                                                                                                                                                                                                                                   |         t9 ();
    0x0007c4c8 nop                                                                                                                                                                                                                                       |         
                                                                                                                                                                                                                                                         | label_29:
    0x0007c4cc lw a3, -0x7f84(gp)                                                                                                                                                                                                                        |         a3 = *(gp);
                                                                                                                                                                                                                                                         |         /* esilref: 'const Ch* rapidjson::GenericValue<Encoding, Allocator>::GetString() const [with Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; rapidjson::GenericValue<Encoding, Allocator>::Ch = char]' */
    0x0007c4d0 addiu a3, a3, 0x4608                                                                                                                                                                                                                      |         a3 += aav.0x00004608;
    0x0007c4d4 addiu a2, zero, 0x6e9                                                                                                                                                                                                                     |         a2 = 0x6e9;
    0x0007c4d8 lw a1, -0x7fcc(gp)                                                                                                                                                                                                                        |         a1 = *(gp);
                                                                                                                                                                                                                                                         |         /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0007c4dc addiu a1, a1, 0x2aa8                                                                                                                                                                                                                      |         a1 += 0x2aa8;
    0x0007c4e0 lw a0, -0x7fcc(gp)                                                                                                                                                                                                                        |         a0 = *(gp);
                                                                                                                                                                                                                                                         |         /* esilref: 'IsString()' */
    0x0007c4e4 addiu a0, a0, 0x2b20                                                                                                                                                                                                                      |         a0 += 0x2b20;
    0x0007c4e8 lw t9, -0x7644(gp)                                                                                                                                                                                                                        |         t9 = sym.imp.__assert_fail;
    0x0007c4ec jalr t9                                                                                                                                                                                                                                   |         t9 ();
    0x0007c4f0 nop                                                                                                                                                                                                                                       |         
                                                                                                                                                                                                                                                         | label_30:
    0x0007c4f4 addiu v0, sp, 0xb0                                                                                                                                                                                                                        |         v0 = sp + 0xb0;
    0x0007c4f8 sw v0, 0xa8(sp)                                                                                                                                                                                                                           |         *(var_a8h) = v0;
    0x0007c4fc bnez s0, 0x7c46c                                                                                                                                                                                                                          |         
                                                                                                                                                                                                                                                         |     } while (s0 != 0);
    0x0007c500 addiu a2, zero, -1                                                                                                                                                                                                                        |     a2 = -1;
    0x0007c504 b 0x7c484                                                                                                                                                                                                                                 |     goto label_4;
                                                                                                                                                                                                                                                         | label_31:
    0x0007c508 lw s0, 4(fp)                                                                                                                                                                                                                              |     s0 = *(arg_4h);
    0x0007c50c sltu a2, s0, s1                                                                                                                                                                                                                           |     a2 = (s0 < s1) ? 1 : 0;
    0x0007c510 move v0, s0                                                                                                                                                                                                                               |     v0 = s0;
                                                                                                                                                                                                                                                         |     if (a2 != 0) {
    0x0007c514 movz v0, s1, a2                                                                                                                                                                                                                           |         v0 = s1;
                                                                                                                                                                                                                                                         |     }
    0x0007c518 move a2, v0                                                                                                                                                                                                                               |     a2 = v0;
    0x0007c51c lw s2, 0xa8(sp)                                                                                                                                                                                                                           |     s2 = *(var_a8h);
                                                                                                                                                                                                                                                         |     if (v0 != 0) {
    0x0007c520 beqz v0, 0x7c544                                                                                                                                                                                                                          |         
    0x0007c524 lw a1, (fp)                                                                                                                                                                                                                               |         a1 = *(fp);
    0x0007c528 move a0, s2                                                                                                                                                                                                                               |         a0 = s2;
    0x0007c52c lw t9, -0x7448(gp)                                                                                                                                                                                                                        |         t9 = sym.imp.memcmp;
    0x0007c530 jalr t9                                                                                                                                                                                                                                   |         t9 ();
    0x0007c534 nop                                                                                                                                                                                                                                       |         
    0x0007c538 lw gp, 0x18(sp)                                                                                                                                                                                                                           |         gp = *(var_18h);
    0x0007c53c addiu v0, sp, 0xb0                                                                                                                                                                                                                        |         v0 = sp + 0xb0;
                                                                                                                                                                                                                                                         |         if (v0 != 0) {
    0x0007c540 bnez v0, 0x7c54c                                                                                                                                                                                                                          |             goto label_32;
                                                                                                                                                                                                                                                         |         }
                                                                                                                                                                                                                                                         |     }
    0x0007c544 addiu v0, sp, 0xb0                                                                                                                                                                                                                        |     v0 = sp + 0xb0;
                                                                                                                                                                                                                                                         |     if (s1 == s0) {
    0x0007c548 beq s1, s0, 0x7c5cc                                                                                                                                                                                                                       |         goto label_33;
                                                                                                                                                                                                                                                         |     }
                                                                                                                                                                                                                                                         | label_32:
    0x0007c54c move a0, s2                                                                                                                                                                                                                               |     a0 = s2;
                                                                                                                                                                                                                                                         |     if (s2 != v0) {
    0x0007c550 beq s2, v0, 0x7c564                                                                                                                                                                                                                       |         
    0x0007c554 lw t9, -0x7488(gp)                                                                                                                                                                                                                        |         t9 = *((gp - 7458));
    0x0007c558 jalr t9                                                                                                                                                                                                                                   |         t9 ();
    0x0007c55c nop                                                                                                                                                                                                                                       |         
    0x0007c560 lw gp, 0x18(sp)                                                                                                                                                                                                                           |         gp = *(var_18h);
                                                                                                                                                                                                                                                         |     }
                                                                                                                                                                                                                                                         | label_24:
    0x0007c564 lhu v1, 0x7e(sp)                                                                                                                                                                                                                          |     v1 = *(var_7eh);
                                                                                                                                                                                                                                                         | label_7:
    0x0007c568 addiu v0, zero, 4                                                                                                                                                                                                                         |     v0 = 4;
    0x0007c56c addiu s4, s4, 0x10                                                                                                                                                                                                                        |     s4 += 0x10;
                                                                                                                                                                                                                                                         |     if (v1 != v0) {
    0x0007c570 bne v1, v0, 0x7c2bc                                                                                                                                                                                                                       |         goto label_5;
                                                                                                                                                                                                                                                         |     }
    0x0007c574 lw v0, 0x70(sp)                                                                                                                                                                                                                           |     v0 = *(var_70h);
    0x0007c578 sll v1, v0, 4                                                                                                                                                                                                                             |     v1 = v0 << 4;
    0x0007c57c lw v0, 0x78(sp)                                                                                                                                                                                                                           |     v0 = *(var_78h_2);
    0x0007c580 addu v0, v0, v1                                                                                                                                                                                                                           |     v0 += v1;
    0x0007c584 addiu v0, zero, 3                                                                                                                                                                                                                         |     v0 = 3;
                                                                                                                                                                                                                                                         |     if (s4 == v0) {
    0x0007c588 beq s4, v0, 0x7c9e8                                                                                                                                                                                                                       |         goto label_19;
                                                                                                                                                                                                                                                         |     }
    0x0007c58c lhu v1, 0xe(s4)                                                                                                                                                                                                                           |     v1 = *((s4 + 7));
    0x0007c590 lw a3, -0x7f84(gp)                                                                                                                                                                                                                        |     a3 = *(gp);
                                                                                                                                                                                                                                                         |     if (v1 != v0) {
    0x0007c594 bne v1, v0, 0x7c2e8                                                                                                                                                                                                                       |         goto label_6;
                                                                                                                                                                                                                                                         |     }
                                                                                                                                                                                                                                                         | label_21:
    0x0007c598 lw s0, 8(s4)                                                                                                                                                                                                                              |     s0 = *((s4 + 2));
    0x0007c59c lw s3, (s4)                                                                                                                                                                                                                               |     s3 = *(s4);
    0x0007c5a0 sll s3, s3, 5                                                                                                                                                                                                                             |     s3 <<= 5;
    0x0007c5a4 addu s3, s0, s3                                                                                                                                                                                                                           |     s3 = s0 + s3;
    0x0007c5a8 lhu v1, 0x7e(sp)                                                                                                                                                                                                                          |     v1 = *(var_7eh);
                                                                                                                                                                                                                                                         |     if (s0 == s3) {
    0x0007c5ac beq s0, s3, 0x7c568                                                                                                                                                                                                                       |         goto label_7;
                                                                                                                                                                                                                                                         |     }
    0x0007c5b0 lhu s2, 0xe(s0)                                                                                                                                                                                                                           |     s2 = *((s0 + 7));
    0x0007c5b4 andi v0, s2, 0x400                                                                                                                                                                                                                        |     v0 = s2 & aav.0x00000400;
    0x0007c5b8 move v0, s2                                                                                                                                                                                                                               |     v0 = s2;
                                                                                                                                                                                                                                                         |     if (v0 == 0) {
    0x0007c5bc beqz v0, 0x7c30c                                                                                                                                                                                                                          |         goto label_8;
                                                                                                                                                                                                                                                         |     }
    0x0007c5c0 move s1, s0                                                                                                                                                                                                                               |     s1 = s0;
    0x0007c5c4 addiu s7, zero, 0xd                                                                                                                                                                                                                       |     s7 = 0xd;
    0x0007c5c8 b 0x7c35c                                                                                                                                                                                                                                 |     goto label_9;
                                                                                                                                                                                                                                                         | label_33:
    0x0007c5cc lw a1, -0x7fcc(gp)                                                                                                                                                                                                                        |     a1 = *(gp);
                                                                                                                                                                                                                                                         |     /* str.locales */
    0x0007c5d0 addiu a1, a1, 0x7bcc                                                                                                                                                                                                                      |     a1 += 0x7bcc;
    0x0007c5d4 move a0, s4                                                                                                                                                                                                                               |     a0 = s4;
    0x0007c5d8 lw t9, -0x7758(gp)                                                                                                                                                                                                                        |     t9 = *(gp);
    0x0007c5dc bal 0x83330                                                                                                                                                                                                                               |     fcn_00083330 ();
    0x0007c5e0 nop                                                                                                                                                                                                                                       |     
    0x0007c5e4 lw gp, 0x18(sp)                                                                                                                                                                                                                           |     gp = *(var_18h);
    0x0007c5e8 move s5, v0                                                                                                                                                                                                                               |     s5 = v0;
    0x0007c5ec lhu v1, 0xe(v0)                                                                                                                                                                                                                           |     v1 = *((v0 + 7));
    0x0007c5f0 addiu v0, zero, 4                                                                                                                                                                                                                         |     v0 = 4;
    0x0007c5f4 addiu v1, zero, 1                                                                                                                                                                                                                         |     v1 = 1;
                                                                                                                                                                                                                                                         |     if (v1 == v0) {
    0x0007c5f8 bne v1, v0, 0x7c630                                                                                                                                                                                                                       |         
    0x0007c5fc lw v0, (s5)                                                                                                                                                                                                                               |         v0 = *(s5);
    0x0007c600 sll v0, v0, 4                                                                                                                                                                                                                             |         v0 <<= 4;
                                                                                                                                                                                                                                                         |         if (v0 == v1) {
    0x0007c604 beq v0, v1, 0x7c658                                                                                                                                                                                                                       |             goto label_34;
                                                                                                                                                                                                                                                         |         }
    0x0007c608 lw s2, 8(s5)                                                                                                                                                                                                                              |         s2 = *((s5 + 2));
                                                                                                                                                                                                                                                         |         if (v0 == 0) {
    0x0007c60c beqz v0, 0x7c9cc                                                                                                                                                                                                                          |             goto label_35;
                                                                                                                                                                                                                                                         |         }
    0x0007c610 lhu v1, 0xe(s2)                                                                                                                                                                                                                           |         v1 = *((s2 + 7));
    0x0007c614 addiu v0, zero, 3                                                                                                                                                                                                                         |         v0 = 3;
    0x0007c618 lw s4, -0x7fcc(gp)                                                                                                                                                                                                                        |         s4 = *(gp);
                                                                                                                                                                                                                                                         |         if (v1 != v0) {
    0x0007c61c bne v1, v0, 0x7c6a4                                                                                                                                                                                                                       |             goto label_36;
                                                                                                                                                                                                                                                         |         }
                                                                                                                                                                                                                                                         |         /* str.locale */
    0x0007c620 addiu s4, s4, 0x48e4                                                                                                                                                                                                                      |         s4 += 0x48e4;
    0x0007c624 addiu s3, zero, 0xd                                                                                                                                                                                                                       |         s3 = 0xd;
    0x0007c628 move s6, s4                                                                                                                                                                                                                               |         s6 = s4;
    0x0007c62c b 0x7c7a8                                                                                                                                                                                                                                 |         goto label_37;
                                                                                                                                                                                                                                                         |     }
    0x0007c630 lw a3, -0x7f84(gp)                                                                                                                                                                                                                        |     a3 = *(gp);
                                                                                                                                                                                                                                                         |     /* str.rapidjson::SizeType_rapidjson::GenericValue_Encoding__Allocator_::Size___const__with_Encoding__rapidjson::UTF8____Allocator__rapidjson::MemoryPoolAllocator____rapidjson::SizeType__unsigned_int_ */
    0x0007c634 addiu a3, a3, 0x3b9c                                                                                                                                                                                                                      |     a3 += 0x3b9c;
    0x0007c638 addiu a2, zero, 0x617                                                                                                                                                                                                                     |     a2 = 0x617;
    0x0007c63c lw a1, -0x7fcc(gp)                                                                                                                                                                                                                        |     a1 = *(gp);
                                                                                                                                                                                                                                                         |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0007c640 addiu a1, a1, 0x2aa8                                                                                                                                                                                                                      |     a1 += 0x2aa8;
    0x0007c644 lw a0, -0x7fcc(gp)                                                                                                                                                                                                                        |     a0 = *(gp);
                                                                                                                                                                                                                                                         |     /* str.IsArray__ */
    0x0007c648 addiu a0, a0, 0x2bc8                                                                                                                                                                                                                      |     a0 += aav.0x00002bc8;
    0x0007c64c lw t9, -0x7644(gp)                                                                                                                                                                                                                        |     t9 = sym.imp.__assert_fail;
    0x0007c650 jalr t9                                                                                                                                                                                                                                   |     t9 ();
    0x0007c654 nop                                                                                                                                                                                                                                       |     
                                                                                                                                                                                                                                                         | label_34:
    0x0007c658 addiu a2, s4, 0x10                                                                                                                                                                                                                        |     a2 = s4 + 0x10;
    0x0007c65c move a1, s4                                                                                                                                                                                                                               |     a1 = s4;
    0x0007c660 addiu a0, sp, 0x70                                                                                                                                                                                                                        |     a0 = sp + 0x70;
    0x0007c664 lw t9, -0x7754(gp)                                                                                                                                                                                                                        |     t9 = *(gp);
    0x0007c668 bal 0x83b30                                                                                                                                                                                                                               |     fcn_00083b30 ();
    0x0007c66c nop                                                                                                                                                                                                                                       |     
    0x0007c670 lw gp, 0x18(sp)                                                                                                                                                                                                                           |     gp = *(var_18h);
    0x0007c674 addiu a2, sp, 0x40                                                                                                                                                                                                                        |     a2 = sp + 0x40;
    0x0007c678 b 0x7c8c0                                                                                                                                                                                                                                 |     goto label_38;
                                                                                                                                                                                                                                                         | label_11:
    0x0007c67c lw a3, -0x7f84(gp)                                                                                                                                                                                                                        |     a3 = *(gp);
                                                                                                                                                                                                                                                         |     /* esilref: 'rapidjson::GenericValue<Encoding, Allocator>* rapidjson::GenericValue<Encoding, Allocator>::End() [with Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; rapidjson::GenericValue<Encoding, Allocator>::ValueIterator = ra */
    0x0007c680 addiu a3, a3, 0x485c                                                                                                                                                                                                                      |     a3 += 0x485c;
    0x0007c684 addiu a2, zero, 0x63c                                                                                                                                                                                                                     |     a2 = aav.0x0000063c;
    0x0007c688 lw a1, -0x7fcc(gp)                                                                                                                                                                                                                        |     a1 = *(gp);
                                                                                                                                                                                                                                                         |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0007c68c addiu a1, a1, 0x2aa8                                                                                                                                                                                                                      |     a1 += 0x2aa8;
    0x0007c690 lw a0, -0x7fcc(gp)                                                                                                                                                                                                                        |     a0 = *(gp);
                                                                                                                                                                                                                                                         |     /* str.IsArray__ */
    0x0007c694 addiu a0, a0, 0x2bc8                                                                                                                                                                                                                      |     a0 += aav.0x00002bc8;
    0x0007c698 lw t9, -0x7644(gp)                                                                                                                                                                                                                        |     t9 = sym.imp.__assert_fail;
    0x0007c69c jalr t9                                                                                                                                                                                                                                   |     t9 ();
    0x0007c6a0 nop                                                                                                                                                                                                                                       |     
                                                                                                                                                                                                                                                         | label_36:
    0x0007c6a4 lw a3, -0x7f84(gp)                                                                                                                                                                                                                        |     a3 = *(gp);
                                                                                                                                                                                                                                                         |     /* esilref: 'rapidjson::GenericValue<Encoding, Allocator>::MemberIterator rapidjson::GenericValue<Encoding, Allocator>::FindMember(const rapidjson::GenericValue<Encoding, SourceAllocator>&) [with SourceAllocator = rapidjson::MemoryPoolAllocator<>; Encoding  */
                                                                                                                                                                                                                                                         | label_12:
    0x0007c6a8 addiu a3, a3, 0x3fdc                                                                                                                                                                                                                      |     a3 += 0x3fdc;
    0x0007c6ac addiu a2, zero, 0x4e3                                                                                                                                                                                                                     |     a2 = 0x4e3;
    0x0007c6b0 lw a1, -0x7fcc(gp)                                                                                                                                                                                                                        |     a1 = *(gp);
                                                                                                                                                                                                                                                         |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0007c6b4 addiu a1, a1, 0x2aa8                                                                                                                                                                                                                      |     a1 += 0x2aa8;
    0x0007c6b8 lw a0, -0x7fcc(gp)                                                                                                                                                                                                                        |     a0 = *(gp);
                                                                                                                                                                                                                                                         |     /* str.IsObject__ */
    0x0007c6bc addiu a0, a0, 0x2b0c                                                                                                                                                                                                                      |     a0 += 0x2b0c;
    0x0007c6c0 lw t9, -0x7644(gp)                                                                                                                                                                                                                        |     t9 = sym.imp.__assert_fail;
    0x0007c6c4 jalr t9                                                                                                                                                                                                                                   |     t9 ();
    0x0007c6c8 nop                                                                                                                                                                                                                                       |     
                                                                                                                                                                                                                                                         |     do {
    0x0007c6cc addiu v0, zero, 6                                                                                                                                                                                                                         |         v0 = 6;
                                                                                                                                                                                                                                                         |         if (v1 == v0) {
    0x0007c6d0 beql v1, v0, 0x7c714                                                                                                                                                                                                                      |             goto label_39;
                                                                                                                                                                                                                                                         |         }
    0x0007c6d4 lw a1, 8(s0)                                                                                                                                                                                                                              |         a1 = *((s0 + 2));
    0x0007c6d8 addiu s0, s0, 0x20                                                                                                                                                                                                                        |         s0 += 0x20;
                                                                                                                                                                                                                                                         | label_10:
    0x0007c6dc lw a3, -0x7f84(gp)                                                                                                                                                                                                                        |         a3 = *(gp);
                                                                                                                                                                                                                                                         |         if (s0 == s1) {
    0x0007c6e0 beq s0, s1, 0x7c7f8                                                                                                                                                                                                                       |             goto label_40;
                                                                                                                                                                                                                                                         |         }
    0x0007c6e4 lhu v0, 0xe(s0)                                                                                                                                                                                                                           |         v0 = *((s0 + 7));
    0x0007c6e8 andi v1, v0, 0x400                                                                                                                                                                                                                        |         v1 = v0 & aav.0x00000400;
    0x0007c6ec lw a3, -0x7f84(gp)                                                                                                                                                                                                                        |         a3 = *(gp);
                                                                                                                                                                                                                                                         |         if (v1 == 0) {
    0x0007c6f0 beqz v1, 0x7c7d4                                                                                                                                                                                                                          |             goto label_41;
                                                                                                                                                                                                                                                         |         }
    0x0007c6f4 andi v0, v0, 0x1000                                                                                                                                                                                                                       |         v0 &= aav.0x00001000;
                                                                                                                                                                                                                                                         | label_13:
    0x0007c6f8 beql v0, zero, 0x7c6cc                                                                                                                                                                                                                    |         
                                                                                                                                                                                                                                                         |     } while (v0 == 0);
    0x0007c6fc lw v1, (s0)                                                                                                                                                                                                                               |     v1 = *(s0);
    0x0007c700 lb v0, 0xd(s0)                                                                                                                                                                                                                            |     v0 = *((s0 + 13));
    0x0007c704 addiu v1, s3, -6                                                                                                                                                                                                                          |     v1 = s3 + -6;
    0x0007c708 addiu s0, s0, 0x20                                                                                                                                                                                                                        |     s0 += 0x20;
                                                                                                                                                                                                                                                         |     if (v1 == v0) {
    0x0007c70c bnel v1, v0, 0x7c6dc                                                                                                                                                                                                                      |         goto label_10;
                                                                                                                                                                                                                                                         |     }
    0x0007c710 move a1, s0                                                                                                                                                                                                                               |     a1 = s0;
                                                                                                                                                                                                                                                         | label_39:
    0x0007c714 addiu a2, zero, 6                                                                                                                                                                                                                         |     a2 = 6;
                                                                                                                                                                                                                                                         |     if (a1 == s4) {
    0x0007c718 beq a1, s4, 0x7c738                                                                                                                                                                                                                       |         goto label_42;
                                                                                                                                                                                                                                                         |     }
    0x0007c71c move a0, s6                                                                                                                                                                                                                               |     a0 = s6;
    0x0007c720 lw t9, -0x7448(gp)                                                                                                                                                                                                                        |     t9 = sym.imp.memcmp;
    0x0007c724 jalr t9                                                                                                                                                                                                                                   |     t9 ();
    0x0007c728 nop                                                                                                                                                                                                                                       |     
    0x0007c72c lw gp, 0x18(sp)                                                                                                                                                                                                                           |     gp = *(var_18h);
    0x0007c730 addiu s0, s0, 0x20                                                                                                                                                                                                                        |     s0 += 0x20;
                                                                                                                                                                                                                                                         |     if (v0 == 0) {
    0x0007c734 bnel v0, zero, 0x7c6dc                                                                                                                                                                                                                    |         goto label_10;
                                                                                                                                                                                                                                                         |     }
                                                                                                                                                                                                                                                         | label_42:
    0x0007c738 lw a3, -0x7f84(gp)                                                                                                                                                                                                                        |     a3 = *(gp);
                                                                                                                                                                                                                                                         |     if (s0 == s1) {
    0x0007c73c beq s0, s1, 0x7c7f8                                                                                                                                                                                                                       |         goto label_40;
                                                                                                                                                                                                                                                         |     }
    0x0007c740 lhu v0, 0x1e(s0)                                                                                                                                                                                                                          |     v0 = *((s0 + 15));
    0x0007c744 andi v1, v0, 0x400                                                                                                                                                                                                                        |     v1 = v0 & aav.0x00000400;
    0x0007c748 andi v0, v0, 0x1000                                                                                                                                                                                                                       |     v0 &= aav.0x00001000;
                                                                                                                                                                                                                                                         |     if (v1 == 0) {
    0x0007c74c beqz v1, 0x7c81c                                                                                                                                                                                                                          |         goto label_43;
                                                                                                                                                                                                                                                         |     }
                                                                                                                                                                                                                                                         |     if (v0 != 0) {
    0x0007c750 beql v0, zero, 0x7c75c                                                                                                                                                                                                                    |         
    0x0007c754 lw a1, 0x18(s0)                                                                                                                                                                                                                           |         a1 = *((s0 + 6));
    0x0007c758 addiu a1, s0, 0x10                                                                                                                                                                                                                        |         a1 = s0 + 0x10;
                                                                                                                                                                                                                                                         |     }
    0x0007c75c lw a0, 0x30(sp)                                                                                                                                                                                                                           |     a0 = *(var_30h_2);
    0x0007c760 lw t9, -0x7354(gp)                                                                                                                                                                                                                        |     t9 = *(gp);
    0x0007c764 jalr t9                                                                                                                                                                                                                                   |     t9 ();
    0x0007c768 nop                                                                                                                                                                                                                                       |     
    0x0007c76c lw gp, 0x18(sp)                                                                                                                                                                                                                           |     gp = *(var_18h);
    0x0007c770 addiu v0, zero, 4                                                                                                                                                                                                                         |     v0 = 4;
                                                                                                                                                                                                                                                         |     if (v0 == 0) {
    0x0007c774 beqz v0, 0x7c844                                                                                                                                                                                                                          |         goto label_44;
                                                                                                                                                                                                                                                         |     }
    0x0007c778 lhu v1, 0xe(s5)                                                                                                                                                                                                                           |     v1 = *((s5 + 7));
    0x0007c77c addiu s2, s2, 0x10                                                                                                                                                                                                                        |     s2 += 0x10;
                                                                                                                                                                                                                                                         |     if (v1 != v0) {
    0x0007c780 bne v1, v0, 0x7c67c                                                                                                                                                                                                                       |         goto label_11;
                                                                                                                                                                                                                                                         |     }
    0x0007c784 lw v0, (s5)                                                                                                                                                                                                                               |     v0 = *(s5);
    0x0007c788 sll v1, v0, 4                                                                                                                                                                                                                             |     v1 = v0 << 4;
    0x0007c78c lw v0, 8(s5)                                                                                                                                                                                                                              |     v0 = *((s5 + 2));
    0x0007c790 addu v0, v0, v1                                                                                                                                                                                                                           |     v0 += v1;
    0x0007c794 addiu v0, zero, 3                                                                                                                                                                                                                         |     v0 = 3;
                                                                                                                                                                                                                                                         |     if (s2 == v0) {
    0x0007c798 beq s2, v0, 0x7c9cc                                                                                                                                                                                                                       |         goto label_35;
                                                                                                                                                                                                                                                         |     }
    0x0007c79c lhu v1, 0xe(s2)                                                                                                                                                                                                                           |     v1 = *((s2 + 7));
    0x0007c7a0 lw a3, -0x7f84(gp)                                                                                                                                                                                                                        |     a3 = *(gp);
                                                                                                                                                                                                                                                         |     if (v1 != v0) {
    0x0007c7a4 bne v1, v0, 0x7c6a8                                                                                                                                                                                                                       |         goto label_12;
                                                                                                                                                                                                                                                         |     }
                                                                                                                                                                                                                                                         | label_37:
    0x0007c7a8 lw s0, 8(s2)                                                                                                                                                                                                                              |     s0 = *((s2 + 2));
    0x0007c7ac lw s1, (s2)                                                                                                                                                                                                                               |     s1 = *(s2);
    0x0007c7b0 sll s1, s1, 5                                                                                                                                                                                                                             |     s1 <<= 5;
    0x0007c7b4 addu s1, s0, s1                                                                                                                                                                                                                           |     s1 = s0 + s1;
    0x0007c7b8 lw a3, -0x7f84(gp)                                                                                                                                                                                                                        |     a3 = *(gp);
                                                                                                                                                                                                                                                         |     if (s0 == s1) {
    0x0007c7bc beq s0, s1, 0x7c7f8                                                                                                                                                                                                                       |         goto label_40;
                                                                                                                                                                                                                                                         |     }
    0x0007c7c0 lhu v0, 0xe(s0)                                                                                                                                                                                                                           |     v0 = *((s0 + 7));
    0x0007c7c4 andi v1, v0, 0x400                                                                                                                                                                                                                        |     v1 = v0 & aav.0x00000400;
    0x0007c7c8 andi v0, v0, 0x1000                                                                                                                                                                                                                       |     v0 &= aav.0x00001000;
                                                                                                                                                                                                                                                         |     if (v1 != 0) {
    0x0007c7cc bnez v1, 0x7c6f8                                                                                                                                                                                                                          |         goto label_13;
                                                                                                                                                                                                                                                         |     }
    0x0007c7d0 lw a3, -0x7f84(gp)                                                                                                                                                                                                                        |     a3 = *(gp);
                                                                                                                                                                                                                                                         |     /* esilref: 'bool rapidjson::GenericValue<Encoding, Allocator>::StringEqual(const rapidjson::GenericValue<Encoding, SourceAllocator>&) const [with SourceAllocator = rapidjson::MemoryPoolAllocator<>; Encoding = rapidjson::UTF8<>; Allocator = rapidjson::Memor */
                                                                                                                                                                                                                                                         | label_41:
    0x0007c7d4 addiu a3, a3, 0x3ed4                                                                                                                                                                                                                      |     a3 += 0x3ed4;
    0x0007c7d8 addiu a2, zero, 0x829                                                                                                                                                                                                                     |     a2 = 0x829;
    0x0007c7dc lw a1, -0x7fcc(gp)                                                                                                                                                                                                                        |     a1 = *(gp);
                                                                                                                                                                                                                                                         |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0007c7e0 addiu a1, a1, 0x2aa8                                                                                                                                                                                                                      |     a1 += 0x2aa8;
    0x0007c7e4 lw a0, -0x7fcc(gp)                                                                                                                                                                                                                        |     a0 = *(gp);
                                                                                                                                                                                                                                                         |     /* str.rhs.IsString__ */
    0x0007c7e8 addiu a0, a0, 0x48d4                                                                                                                                                                                                                      |     a0 += 0x48d4;
    0x0007c7ec lw t9, -0x7644(gp)                                                                                                                                                                                                                        |     t9 = sym.imp.__assert_fail;
    0x0007c7f0 jalr t9                                                                                                                                                                                                                                   |     t9 ();
    0x0007c7f4 nop                                                                                                                                                                                                                                       |     
                                                                                                                                                                                                                                                         |     /* esilref: 'rapidjson::GenericValue<Encoding, Allocator>& rapidjson::GenericValue<Encoding, Allocator>::operator[](const rapidjson::GenericValue<Encoding, SourceAllocator>&) [with SourceAllocator = rapidjson::MemoryPoolAllocator<>; Encoding = rapidjson::UT */
                                                                                                                                                                                                                                                         | label_40:
    0x0007c7f8 addiu a3, a3, 0x3c64                                                                                                                                                                                                                      |     a3 += 0x3c64;
    0x0007c7fc addiu a2, zero, 0x46f                                                                                                                                                                                                                     |     a2 = 0x46f;
    0x0007c800 lw a1, -0x7fcc(gp)                                                                                                                                                                                                                        |     a1 = *(gp);
                                                                                                                                                                                                                                                         |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0007c804 addiu a1, a1, 0x2aa8                                                                                                                                                                                                                      |     a1 += 0x2aa8;
    0x0007c808 lw a0, -0x7fcc(gp)                                                                                                                                                                                                                        |     a0 = *(gp);
                                                                                                                                                                                                                                                         |     /* str.false */
    0x0007c80c addiu a0, a0, 0x48ec                                                                                                                                                                                                                      |     a0 += 0x48ec;
    0x0007c810 lw t9, -0x7644(gp)                                                                                                                                                                                                                        |     t9 = sym.imp.__assert_fail;
    0x0007c814 jalr t9                                                                                                                                                                                                                                   |     t9 ();
    0x0007c818 nop                                                                                                                                                                                                                                       |     
                                                                                                                                                                                                                                                         | label_43:
    0x0007c81c lw a3, -0x7f84(gp)                                                                                                                                                                                                                        |     a3 = *(gp);
                                                                                                                                                                                                                                                         |     /* esilref: 'const Ch* rapidjson::GenericValue<Encoding, Allocator>::GetString() const [with Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; rapidjson::GenericValue<Encoding, Allocator>::Ch = char]' */
    0x0007c820 addiu a3, a3, 0x4608                                                                                                                                                                                                                      |     a3 += aav.0x00004608;
    0x0007c824 addiu a2, zero, 0x6e9                                                                                                                                                                                                                     |     a2 = 0x6e9;
    0x0007c828 lw a1, -0x7fcc(gp)                                                                                                                                                                                                                        |     a1 = *(gp);
                                                                                                                                                                                                                                                         |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0007c82c addiu a1, a1, 0x2aa8                                                                                                                                                                                                                      |     a1 += 0x2aa8;
    0x0007c830 lw a0, -0x7fcc(gp)                                                                                                                                                                                                                        |     a0 = *(gp);
                                                                                                                                                                                                                                                         |     /* esilref: 'IsString()' */
    0x0007c834 addiu a0, a0, 0x2b20                                                                                                                                                                                                                      |     a0 += 0x2b20;
    0x0007c838 lw t9, -0x7644(gp)                                                                                                                                                                                                                        |     t9 = sym.imp.__assert_fail;
    0x0007c83c jalr t9                                                                                                                                                                                                                                   |     t9 ();
    0x0007c840 nop                                                                                                                                                                                                                                       |     
                                                                                                                                                                                                                                                         | label_44:
    0x0007c844 lhu v1, 0xe(s5)                                                                                                                                                                                                                           |     v1 = *((s5 + 7));
    0x0007c848 addiu a1, s2, 0x10                                                                                                                                                                                                                        |     a1 = s2 + 0x10;
                                                                                                                                                                                                                                                         |     if (v1 == v0) {
    0x0007c84c bne v1, v0, 0x7c8e0                                                                                                                                                                                                                       |         
    0x0007c850 lw v1, (s5)                                                                                                                                                                                                                               |         v1 = *(s5);
                                                                                                                                                                                                                                                         |         if (v1 == 0) {
    0x0007c854 beql v1, zero, 0x7c908                                                                                                                                                                                                                    |             goto label_45;
                                                                                                                                                                                                                                                         |         }
    0x0007c858 lw a3, -0x7f84(gp)                                                                                                                                                                                                                        |         a3 = *(gp);
    0x0007c85c lw v0, 8(s5)                                                                                                                                                                                                                              |         v0 = *((s5 + 2));
    0x0007c860 sltu a0, s2, v0                                                                                                                                                                                                                           |         a0 = (s2 < v0) ? 1 : 0;
                                                                                                                                                                                                                                                         |         if (v0 == 0) {
    0x0007c864 beqz v0, 0x7c92c                                                                                                                                                                                                                          |             goto label_46;
                                                                                                                                                                                                                                                         |         }
    0x0007c868 sll v1, v1, 4                                                                                                                                                                                                                             |         v1 <<= 4;
                                                                                                                                                                                                                                                         |         if (a0 != 0) {
    0x0007c86c bnez a0, 0x7c954                                                                                                                                                                                                                          |             goto label_47;
                                                                                                                                                                                                                                                         |         }
    0x0007c870 addu v0, v0, v1                                                                                                                                                                                                                           |         v0 += v1;
    0x0007c874 sltu v0, v0, a1                                                                                                                                                                                                                           |         v0 = (v0 < a1) ? 1 : 0;
    0x0007c878 addiu v0, zero, 4                                                                                                                                                                                                                         |         v0 = 4;
                                                                                                                                                                                                                                                         |         if (v0 != 0) {
    0x0007c87c bnez v0, 0x7c97c                                                                                                                                                                                                                          |             goto label_48;
                                                                                                                                                                                                                                                         |         }
    0x0007c880 lhu v1, 0xe(s5)                                                                                                                                                                                                                           |         v1 = *((s5 + 7));
    0x0007c884 move a0, s2                                                                                                                                                                                                                               |         a0 = s2;
                                                                                                                                                                                                                                                         |         if (v1 != v0) {
    0x0007c888 bne v1, v0, 0x7c9a4                                                                                                                                                                                                                       |             goto label_49;
                                                                                                                                                                                                                                                         |         }
    0x0007c88c lw v0, (s5)                                                                                                                                                                                                                               |         v0 = *(s5);
    0x0007c890 sll v0, v0, 4                                                                                                                                                                                                                             |         v0 <<= 4;
    0x0007c894 lw a2, 8(s5)                                                                                                                                                                                                                              |         a2 = *((s5 + 2));
    0x0007c898 addu a2, a2, v0                                                                                                                                                                                                                           |         a2 += v0;
    0x0007c89c subu a2, a2, a1                                                                                                                                                                                                                           |         __asm ("subu a2, a2, a1");
    0x0007c8a0 lw t9, -0x760c(gp)                                                                                                                                                                                                                        |         t9 = sym.imp.memmove;
    0x0007c8a4 jalr t9                                                                                                                                                                                                                                   |         t9 ();
    0x0007c8a8 nop                                                                                                                                                                                                                                       |         
    0x0007c8ac lw gp, 0x18(sp)                                                                                                                                                                                                                           |         gp = *(var_18h);
    0x0007c8b0 lw v0, (s5)                                                                                                                                                                                                                               |         v0 = *(s5);
    0x0007c8b4 addiu v0, v0, -1                                                                                                                                                                                                                          |         v0 += -1;
    0x0007c8b8 sw v0, (s5)                                                                                                                                                                                                                               |         *(s5) = v0;
    0x0007c8bc addiu a2, sp, 0x40                                                                                                                                                                                                                        |         a2 = sp + 0x40;
                                                                                                                                                                                                                                                         | label_38:
    0x0007c8c0 addiu a1, sp, 0x70                                                                                                                                                                                                                        |         a1 = sp + 0x70;
    0x0007c8c4 lw a0, 0x34(sp)                                                                                                                                                                                                                           |         a0 = *(var_34h_2);
    0x0007c8c8 lw t9, -0x7750(gp)                                                                                                                                                                                                                        |         t9 = *(gp);
    0x0007c8cc bal 0x7b740                                                                                                                                                                                                                               |         method ();
    0x0007c8d0 nop                                                                                                                                                                                                                                       |         
    0x0007c8d4 lw gp, 0x18(sp)                                                                                                                                                                                                                           |         gp = *(var_18h);
    0x0007c8d8 b 0x7c9cc                                                                                                                                                                                                                                 |         goto label_35;
    0x0007c8dc nop                                                                                                                                                                                                                                       |         
                                                                                                                                                                                                                                                         |     }
    0x0007c8e0 lw a3, -0x7f84(gp)                                                                                                                                                                                                                        |     a3 = *(gp);
                                                                                                                                                                                                                                                         |     /* esilref: 'rapidjson::GenericValue<Encoding, Allocator>* rapidjson::GenericValue<Encoding, Allocator>::Erase(rapidjson::GenericValue<Encoding, Allocator>::ConstValueIterator, rapidjson::GenericValue<Encoding, Allocator>::ConstValueIterator) [with Encoding */
    0x0007c8e4 addiu a3, a3, 0x3980                                                                                                                                                                                                                      |     a3 += aav.0x00003980;
    0x0007c8e8 addiu a2, zero, 0x6af                                                                                                                                                                                                                     |     a2 = 0x6af;
    0x0007c8ec lw a1, -0x7fcc(gp)                                                                                                                                                                                                                        |     a1 = *(gp);
                                                                                                                                                                                                                                                         |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0007c8f0 addiu a1, a1, 0x2aa8                                                                                                                                                                                                                      |     a1 += 0x2aa8;
    0x0007c8f4 lw a0, -0x7fcc(gp)                                                                                                                                                                                                                        |     a0 = *(gp);
                                                                                                                                                                                                                                                         |     /* str.IsArray__ */
    0x0007c8f8 addiu a0, a0, 0x2bc8                                                                                                                                                                                                                      |     a0 += aav.0x00002bc8;
    0x0007c8fc lw t9, -0x7644(gp)                                                                                                                                                                                                                        |     t9 = sym.imp.__assert_fail;
    0x0007c900 jalr t9                                                                                                                                                                                                                                   |     t9 ();
    0x0007c904 nop                                                                                                                                                                                                                                       |     
                                                                                                                                                                                                                                                         | label_45:
    0x0007c908 addiu a3, a3, 0x3980                                                                                                                                                                                                                      |     a3 += aav.0x00003980;
    0x0007c90c addiu a2, zero, 0x6b0                                                                                                                                                                                                                     |     a2 = 0x6b0;
    0x0007c910 lw a1, -0x7fcc(gp)                                                                                                                                                                                                                        |     a1 = *(gp);
                                                                                                                                                                                                                                                         |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0007c914 addiu a1, a1, 0x2aa8                                                                                                                                                                                                                      |     a1 += 0x2aa8;
    0x0007c918 lw a0, -0x7f84(gp)                                                                                                                                                                                                                        |     a0 = *(gp);
                                                                                                                                                                                                                                                         |     /* str.data_.a.size___0 */
    0x0007c91c addiu a0, a0, 0x33d8                                                                                                                                                                                                                      |     a0 += 0x33d8;
    0x0007c920 lw t9, -0x7644(gp)                                                                                                                                                                                                                        |     t9 = sym.imp.__assert_fail;
    0x0007c924 jalr t9                                                                                                                                                                                                                                   |     t9 ();
    0x0007c928 nop                                                                                                                                                                                                                                       |     
                                                                                                                                                                                                                                                         | label_46:
    0x0007c92c lw a3, -0x7f84(gp)                                                                                                                                                                                                                        |     a3 = *(gp);
                                                                                                                                                                                                                                                         |     /* esilref: 'rapidjson::GenericValue<Encoding, Allocator>* rapidjson::GenericValue<Encoding, Allocator>::Erase(rapidjson::GenericValue<Encoding, Allocator>::ConstValueIterator, rapidjson::GenericValue<Encoding, Allocator>::ConstValueIterator) [with Encoding */
    0x0007c930 addiu a3, a3, 0x3980                                                                                                                                                                                                                      |     a3 += aav.0x00003980;
    0x0007c934 addiu a2, zero, 0x6b1                                                                                                                                                                                                                     |     a2 = 0x6b1;
    0x0007c938 lw a1, -0x7fcc(gp)                                                                                                                                                                                                                        |     a1 = *(gp);
                                                                                                                                                                                                                                                         |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0007c93c addiu a1, a1, 0x2aa8                                                                                                                                                                                                                      |     a1 += 0x2aa8;
    0x0007c940 lw a0, -0x7f84(gp)                                                                                                                                                                                                                        |     a0 = *(gp);
                                                                                                                                                                                                                                                         |     /* str.GetElementsPointer_____0 */
    0x0007c944 addiu a0, a0, 0x33ec                                                                                                                                                                                                                      |     a0 += aav.0x000033ec;
    0x0007c948 lw t9, -0x7644(gp)                                                                                                                                                                                                                        |     t9 = sym.imp.__assert_fail;
    0x0007c94c jalr t9                                                                                                                                                                                                                                   |     t9 ();
    0x0007c950 nop                                                                                                                                                                                                                                       |     
                                                                                                                                                                                                                                                         | label_47:
    0x0007c954 lw a3, -0x7f84(gp)                                                                                                                                                                                                                        |     a3 = *(gp);
                                                                                                                                                                                                                                                         |     /* esilref: 'rapidjson::GenericValue<Encoding, Allocator>* rapidjson::GenericValue<Encoding, Allocator>::Erase(rapidjson::GenericValue<Encoding, Allocator>::ConstValueIterator, rapidjson::GenericValue<Encoding, Allocator>::ConstValueIterator) [with Encoding */
    0x0007c958 addiu a3, a3, 0x3980                                                                                                                                                                                                                      |     a3 += aav.0x00003980;
    0x0007c95c addiu a2, zero, 0x6b2                                                                                                                                                                                                                     |     a2 = 0x6b2;
    0x0007c960 lw a1, -0x7fcc(gp)                                                                                                                                                                                                                        |     a1 = *(gp);
                                                                                                                                                                                                                                                         |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0007c964 addiu a1, a1, 0x2aa8                                                                                                                                                                                                                      |     a1 += 0x2aa8;
    0x0007c968 lw a0, -0x7f84(gp)                                                                                                                                                                                                                        |     a0 = *(gp);
                                                                                                                                                                                                                                                         |     /* str.first___Begin__ */
    0x0007c96c addiu a0, a0, 0x3408                                                                                                                                                                                                                      |     a0 += aav.0x00003408;
    0x0007c970 lw t9, -0x7644(gp)                                                                                                                                                                                                                        |     t9 = sym.imp.__assert_fail;
    0x0007c974 jalr t9                                                                                                                                                                                                                                   |     t9 ();
    0x0007c978 nop                                                                                                                                                                                                                                       |     
                                                                                                                                                                                                                                                         | label_48:
    0x0007c97c lw a3, -0x7f84(gp)                                                                                                                                                                                                                        |     a3 = *(gp);
                                                                                                                                                                                                                                                         |     /* esilref: 'rapidjson::GenericValue<Encoding, Allocator>* rapidjson::GenericValue<Encoding, Allocator>::Erase(rapidjson::GenericValue<Encoding, Allocator>::ConstValueIterator, rapidjson::GenericValue<Encoding, Allocator>::ConstValueIterator) [with Encoding */
    0x0007c980 addiu a3, a3, 0x3980                                                                                                                                                                                                                      |     a3 += aav.0x00003980;
    0x0007c984 addiu a2, zero, 0x6b4                                                                                                                                                                                                                     |     a2 = 0x6b4;
    0x0007c988 lw a1, -0x7fcc(gp)                                                                                                                                                                                                                        |     a1 = *(gp);
                                                                                                                                                                                                                                                         |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0007c98c addiu a1, a1, 0x2aa8                                                                                                                                                                                                                      |     a1 += 0x2aa8;
    0x0007c990 lw a0, -0x7f84(gp)                                                                                                                                                                                                                        |     a0 = *(gp);
                                                                                                                                                                                                                                                         |     /* str.last___End__ */
    0x0007c994 addiu a0, a0, 0x342c                                                                                                                                                                                                                      |     a0 += 0x342c;
    0x0007c998 lw t9, -0x7644(gp)                                                                                                                                                                                                                        |     t9 = sym.imp.__assert_fail;
    0x0007c99c jalr t9                                                                                                                                                                                                                                   |     t9 ();
    0x0007c9a0 nop                                                                                                                                                                                                                                       |     
                                                                                                                                                                                                                                                         | label_49:
    0x0007c9a4 lw a3, -0x7f84(gp)                                                                                                                                                                                                                        |     a3 = *(gp);
                                                                                                                                                                                                                                                         |     /* esilref: 'rapidjson::GenericValue<Encoding, Allocator>* rapidjson::GenericValue<Encoding, Allocator>::End() [with Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; rapidjson::GenericValue<Encoding, Allocator>::ValueIterator = ra */
    0x0007c9a8 addiu a3, a3, 0x485c                                                                                                                                                                                                                      |     a3 += 0x485c;
    0x0007c9ac addiu a2, zero, 0x63c                                                                                                                                                                                                                     |     a2 = aav.0x0000063c;
    0x0007c9b0 lw a1, -0x7fcc(gp)                                                                                                                                                                                                                        |     a1 = *(gp);
                                                                                                                                                                                                                                                         |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0007c9b4 addiu a1, a1, 0x2aa8                                                                                                                                                                                                                      |     a1 += 0x2aa8;
    0x0007c9b8 lw a0, -0x7fcc(gp)                                                                                                                                                                                                                        |     a0 = *(gp);
                                                                                                                                                                                                                                                         |     /* str.IsArray__ */
    0x0007c9bc addiu a0, a0, 0x2bc8                                                                                                                                                                                                                      |     a0 += aav.0x00002bc8;
    0x0007c9c0 lw t9, -0x7644(gp)                                                                                                                                                                                                                        |     t9 = sym.imp.__assert_fail;
    0x0007c9c4 jalr t9                                                                                                                                                                                                                                   |     t9 ();
    0x0007c9c8 nop                                                                                                                                                                                                                                       |     
                                                                                                                                                                                                                                                         | label_35:
    0x0007c9cc lw a0, 0xa8(sp)                                                                                                                                                                                                                           |     a0 = *(var_a8h);
    0x0007c9d0 addiu v0, sp, 0xb0                                                                                                                                                                                                                        |     v0 = sp + 0xb0;
    0x0007c9d4 lw t9, -0x7488(gp)                                                                                                                                                                                                                        |     t9 = *((gp - 7458));
                                                                                                                                                                                                                                                         |     if (a0 != v0) {
    0x0007c9d8 beq a0, v0, 0x7c9e8                                                                                                                                                                                                                       |         
    0x0007c9dc jalr t9                                                                                                                                                                                                                                   |         t9 ();
    0x0007c9e0 nop                                                                                                                                                                                                                                       |         
    0x0007c9e4 lw gp, 0x18(sp)                                                                                                                                                                                                                           |         gp = *(var_18h);
                                                                                                                                                                                                                                                         |     }
                                                                                                                                                                                                                                                         | label_19:
    0x0007c9e8 lw a0, 0x2c(sp)                                                                                                                                                                                                                           |     a0 = *(var_2ch_2);
    0x0007c9ec lw t9, -0x7518(gp)                                                                                                                                                                                                                        |     t9 = sym.imp.free;
    0x0007c9f0 jalr t9                                                                                                                                                                                                                                   |     t9 ();
    0x0007c9f4 nop                                                                                                                                                                                                                                       |     
    0x0007c9f8 lw gp, 0x18(sp)                                                                                                                                                                                                                           |     gp = *(var_18h);
    0x0007c9fc lw a0, 0x40(sp)                                                                                                                                                                                                                           |     a0 = *(var_40h_2);
    0x0007ca00 addiu v0, sp, 0x48                                                                                                                                                                                                                        |     v0 = sp + 0x48;
    0x0007ca04 lw t9, -0x7488(gp)                                                                                                                                                                                                                        |     t9 = *((gp - 7458));
                                                                                                                                                                                                                                                         |     if (a0 != v0) {
    0x0007ca08 beq a0, v0, 0x7ca18                                                                                                                                                                                                                       |         
    0x0007ca0c jalr t9                                                                                                                                                                                                                                   |         t9 ();
    0x0007ca10 nop                                                                                                                                                                                                                                       |         
    0x0007ca14 lw gp, 0x18(sp)                                                                                                                                                                                                                           |         gp = *(var_18h);
                                                                                                                                                                                                                                                         |     }
    0x0007ca18 lw s1, 0x84(sp)                                                                                                                                                                                                                           |     s1 = *(var_84h);
    0x0007ca1c lw a0, 0x90(sp)                                                                                                                                                                                                                           |     a0 = *(var_90h);
                                                                                                                                                                                                                                                         |     if (s1 == 0) {
    0x0007ca20 beqz s1, 0x7ca9c                                                                                                                                                                                                                          |         goto label_50;
                                                                                                                                                                                                                                                         |     }
    0x0007ca24 lw a0, (s1)                                                                                                                                                                                                                               |     a0 = *(s1);
    0x0007ca28 addiu a1, zero, 1                                                                                                                                                                                                                         |     a1 = 1;
                                                                                                                                                                                                                                                         |     if (a0 == 0) {
    0x0007ca2c beqz a0, 0x7ca6c                                                                                                                                                                                                                          |         goto label_51;
                                                                                                                                                                                                                                                         |     }
    0x0007ca30 lw v0, 8(s1)                                                                                                                                                                                                                              |     v0 = *((s1 + 2));
                                                                                                                                                                                                                                                         |     if (a0 == v0) {
    0x0007ca34 beql a0, v0, 0x7ca6c                                                                                                                                                                                                                      |         goto label_51;
                                                                                                                                                                                                                                                         |     }
    0x0007ca38 sw zero, 4(v0)                                                                                                                                                                                                                            |     *((v0 + 1)) = 0;
                                                                                                                                                                                                                                                         |     do {
    0x0007ca3c lw s0, 8(a0)                                                                                                                                                                                                                              |         s0 = *((a0 + 2));
    0x0007ca40 lw t9, -0x7518(gp)                                                                                                                                                                                                                        |         t9 = sym.imp.free;
    0x0007ca44 jalr t9                                                                                                                                                                                                                                   |         t9 ();
    0x0007ca48 nop                                                                                                                                                                                                                                       |         
    0x0007ca4c lw gp, 0x18(sp)                                                                                                                                                                                                                           |         gp = *(var_18h);
    0x0007ca50 sw s0, (s1)                                                                                                                                                                                                                               |         *(s1) = s0;
                                                                                                                                                                                                                                                         |         if (s0 == 0) {
    0x0007ca54 beqz s0, 0x7ca68                                                                                                                                                                                                                          |             goto label_52;
                                                                                                                                                                                                                                                         |         }
    0x0007ca58 lw v0, 8(s1)                                                                                                                                                                                                                              |         v0 = *((s1 + 2));
    0x0007ca5c move a0, s0                                                                                                                                                                                                                               |         a0 = s0;
    0x0007ca60 bne v0, s0, 0x7ca3c                                                                                                                                                                                                                       |         
                                                                                                                                                                                                                                                         |     } while (v0 != s0);
    0x0007ca64 sw zero, 4(v0)                                                                                                                                                                                                                            |     *((v0 + 1)) = 0;
                                                                                                                                                                                                                                                         | label_52:
    0x0007ca68 addiu a1, zero, 1                                                                                                                                                                                                                         |     a1 = 1;
                                                                                                                                                                                                                                                         | label_51:
    0x0007ca6c lw a0, 0x10(s1)                                                                                                                                                                                                                           |     a0 = *((s1 + 4));
    0x0007ca70 lw t9, -0x7404(gp)                                                                                                                                                                                                                        |     t9 = sym.imp.operator_delete_void__unsigned_int_;
    0x0007ca74 jalr t9                                                                                                                                                                                                                                   |     t9 ();
    0x0007ca78 nop                                                                                                                                                                                                                                       |     
    0x0007ca7c lw gp, 0x18(sp)                                                                                                                                                                                                                           |     gp = *(var_18h);
    0x0007ca80 addiu a1, zero, 0x14                                                                                                                                                                                                                      |     a1 = 0x14;
    0x0007ca84 move a0, s1                                                                                                                                                                                                                               |     a0 = s1;
    0x0007ca88 lw t9, -0x7404(gp)                                                                                                                                                                                                                        |     t9 = sym.imp.operator_delete_void__unsigned_int_;
    0x0007ca8c jalr t9                                                                                                                                                                                                                                   |     t9 ();
    0x0007ca90 nop                                                                                                                                                                                                                                       |     
    0x0007ca94 lw gp, 0x18(sp)                                                                                                                                                                                                                           |     gp = *(var_18h);
    0x0007ca98 lw a0, 0x90(sp)                                                                                                                                                                                                                           |     a0 = *(var_90h);
                                                                                                                                                                                                                                                         | label_50:
    0x0007ca9c lw t9, -0x7518(gp)                                                                                                                                                                                                                        |     t9 = sym.imp.free;
    0x0007caa0 jalr t9                                                                                                                                                                                                                                   |     t9 ();
    0x0007caa4 nop                                                                                                                                                                                                                                       |     
    0x0007caa8 lw gp, 0x18(sp)                                                                                                                                                                                                                           |     gp = *(var_18h);
    0x0007caac addiu a1, zero, 1                                                                                                                                                                                                                         |     a1 = 1;
    0x0007cab0 lw a0, 0x8c(sp)                                                                                                                                                                                                                           |     a0 = *(var_8ch);
    0x0007cab4 lw t9, -0x7404(gp)                                                                                                                                                                                                                        |     t9 = sym.imp.operator_delete_void__unsigned_int_;
    0x0007cab8 jalr t9                                                                                                                                                                                                                                   |     t9 ();
    0x0007cabc nop                                                                                                                                                                                                                                       |     
    0x0007cac0 lw gp, 0x18(sp)                                                                                                                                                                                                                           |     gp = *(var_18h);
    0x0007cac4 lw v1, 0xe4(sp)                                                                                                                                                                                                                           |     v1 = *(var_e4h_2);
    0x0007cac8 lw v0, -0x736c(gp)                                                                                                                                                                                                                        |     v0 = *((gp - 7387));
    0x0007cacc lw v0, (v0)                                                                                                                                                                                                                               |     v0 = *(v0);
    0x0007cad0 lw ra, 0x10c(sp)                                                                                                                                                                                                                          |     ra = *(var_10ch);
                                                                                                                                                                                                                                                         |     if (v1 != v0) {
    0x0007cad4 bne v1, v0, 0x7ccb0                                                                                                                                                                                                                       |         goto label_53;
                                                                                                                                                                                                                                                         |     }
    0x0007cad8 lw fp, 0x108(sp)                                                                                                                                                                                                                          |     fp = *(var_108h);
    0x0007cadc lw s7, 0x104(sp)                                                                                                                                                                                                                          |     s7 = *(var_104h);
    0x0007cae0 lw s6, 0x100(sp)                                                                                                                                                                                                                          |     s6 = *(var_100h);
    0x0007cae4 lw s5, 0xfc(sp)                                                                                                                                                                                                                           |     s5 = *(var_fch);
    0x0007cae8 lw s4, 0xf8(sp)                                                                                                                                                                                                                           |     s4 = *(var_f8h);
    0x0007caec lw s3, 0xf4(sp)                                                                                                                                                                                                                           |     s3 = *(var_f4h);
    0x0007caf0 lw s2, 0xf0(sp)                                                                                                                                                                                                                           |     s2 = *(var_f0h);
    0x0007caf4 lw s1, 0xec(sp)                                                                                                                                                                                                                           |     s1 = *(var_ech);
    0x0007caf8 lw s0, 0xe8(sp)                                                                                                                                                                                                                           |     s0 = *(var_e8h);
    0x0007cafc addiu sp, sp, 0x110                                                                                                                                                                                                                       |     
    0x0007cb00 jr ra                                                                                                                                                                                                                                     |     return v0;
                                                                                                                                                                                                                                                         |     do {
    0x0007cb44 move a0, s1                                                                                                                                                                                                                               |         a0 = s1;
    0x0007cb48 lw t9, -0x7410(gp)                                                                                                                                                                                                                        |         t9 = *(gp);
    0x0007cb4c jalr t9                                                                                                                                                                                                                                   |         t9 ();
    0x0007cb50 nop                                                                                                                                                                                                                                       |         
    0x0007cb54 lw gp, 0x18(sp)                                                                                                                                                                                                                           |         gp = *(var_18h);
                                                                                                                                                                                                                                                         | label_15:
    0x0007cb58 lw a0, 0x40(sp)                                                                                                                                                                                                                           |         a0 = *(var_40h_2);
    0x0007cb5c addiu v0, sp, 0x48                                                                                                                                                                                                                        |         v0 = sp + 0x48;
    0x0007cb60 lw t9, -0x7488(gp)                                                                                                                                                                                                                        |         t9 = *((gp - 7458));
                                                                                                                                                                                                                                                         |         if (a0 != v0) {
    0x0007cb64 beq a0, v0, 0x7cb74                                                                                                                                                                                                                       |             
    0x0007cb68 jalr t9                                                                                                                                                                                                                                   |             t9 ();
    0x0007cb6c nop                                                                                                                                                                                                                                       |             
    0x0007cb70 lw gp, 0x18(sp)                                                                                                                                                                                                                           |             gp = *(var_18h);
                                                                                                                                                                                                                                                         |         }
    0x0007cb74 addiu a0, sp, 0x70                                                                                                                                                                                                                        |         a0 = sp + 0x70;
    0x0007cb78 lw t9, -0x7fbc(gp)                                                                                                                                                                                                                        |         t9 = *(gp);
    0x0007cb7c jalr t9                                                                                                                                                                                                                                   |         t9 ();
    0x0007cb80 nop                                                                                                                                                                                                                                       |         
    0x0007cb84 lw gp, 0x18(sp)                                                                                                                                                                                                                           |         gp = *(var_18h);
    0x0007cb88 move a0, s0                                                                                                                                                                                                                               |         a0 = s0;
    0x0007cb8c lw t9, -0x75f8(gp)                                                                                                                                                                                                                        |         t9 = sym.imp._Unwind_Resume;
    0x0007cb90 jalr t9                                                                                                                                                                                                                                   |         t9 ();
    0x0007cb94 nop                                                                                                                                                                                                                                       |         
    0x0007cb98 lw gp, 0x18(sp)                                                                                                                                                                                                                           |         gp = *(var_18h);
    0x0007cb9c move s0, a0                                                                                                                                                                                                                               |         s0 = a0;
    0x0007cba0 b 0x7cb44                                                                                                                                                                                                                                 |         
                                                                                                                                                                                                                                                         |     } while (1);
                                                                                                                                                                                                                                                         | label_53:
    0x0007ccb0 lw t9, -0x74e8(gp)                                                                                                                                                                                                                        |     t9 = sym.imp.__stack_chk_fail;
    0x0007ccb4 jalr t9                                                                                                                                                                                                                                   |     t9 ();
    0x0007ccb8 nop                                                                                                                                                                                                                                       |     
                                                                                                                                                                                                                                                         | }
    ; assembly                                                                                                                                                                                                                                                                   | /* r2dec pseudo code output */
                                                                                                                                                                                                                                                                                 | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/onscreencontrols @ 0x7ccbc */
                                                                                                                                                                                                                                                                                 | #include <stdint.h>
                                                                                                                                                                                                                                                                                 |  
    ; (fcn) method.PostInstalledFeatures.postInstalledFeatureListUpdate_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char_____std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char_____std::__cxx11::basic_string_cha ()      | void method_PostInstalledFeatures_postInstalledFeatureListUpdate_std::_cxx11::basic_string_char_std::char_traits_char_std::allocator_char_std::_cxx11::basic_string_char_std::char_traits_char_std::allocator_char_std::_cxx11::basic_string_cha () {
                                                                                                                                                                                                                                                                                 |     /* PostInstalledFeatures::postInstalledFeatureListUpdate(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) */
    0x0007ccbc lui gp, 5                                                                                                                                                                                                                                                         |     
    0x0007ccc0 addiu gp, gp, 0x1584                                                                                                                                                                                                                                              |     
    0x0007ccc4 addu gp, gp, t9                                                                                                                                                                                                                                                   |     gp += t9;
    0x0007ccc8 addiu sp, sp, -0x1b8                                                                                                                                                                                                                                              |     
    0x0007cccc sw ra, 0x1b4(sp)                                                                                                                                                                                                                                                  |     *(var_1b4h) = ra;
    0x0007ccd0 sw fp, 0x1b0(sp)                                                                                                                                                                                                                                                  |     *(var_1b0h) = fp;
    0x0007ccd4 sw s7, 0x1ac(sp)                                                                                                                                                                                                                                                  |     *(var_1ach) = s7;
    0x0007ccd8 sw s6, 0x1a8(sp)                                                                                                                                                                                                                                                  |     *(var_1a8h) = s6;
    0x0007ccdc sw s5, 0x1a4(sp)                                                                                                                                                                                                                                                  |     *(var_1a4h) = s5;
    0x0007cce0 sw s4, 0x1a0(sp)                                                                                                                                                                                                                                                  |     *(var_1a0h) = s4;
    0x0007cce4 sw s3, 0x19c(sp)                                                                                                                                                                                                                                                  |     *(var_19ch) = s3;
    0x0007cce8 sw s2, 0x198(sp)                                                                                                                                                                                                                                                  |     *(var_198h) = s2;
    0x0007ccec sw s1, 0x194(sp)                                                                                                                                                                                                                                                  |     *(var_194h) = s1;
    0x0007ccf0 sw s0, 0x190(sp)                                                                                                                                                                                                                                                  |     *(var_190h) = s0;
    0x0007ccf4 sw gp, 0x18(sp)                                                                                                                                                                                                                                                   |     *(var_18h) = gp;
    0x0007ccf8 sw a0, 0x30(sp)                                                                                                                                                                                                                                                   |     *(var_30h) = a0;
    0x0007ccfc sw a1, 0x28(sp)                                                                                                                                                                                                                                                   |     *(var_28h) = a1;
    0x0007cd00 sw a2, 0x34(sp)                                                                                                                                                                                                                                                   |     *(var_34h) = a2;
    0x0007cd04 move fp, a3                                                                                                                                                                                                                                                       |     fp = a3;
    0x0007cd08 lw v0, -0x736c(gp)                                                                                                                                                                                                                                                |     v0 = *((gp - 7387));
    0x0007cd0c lw v0, (v0)                                                                                                                                                                                                                                                       |     v0 = *(v0);
    0x0007cd10 sw v0, 0x18c(sp)                                                                                                                                                                                                                                                  |     *(var_18ch) = v0;
    0x0007cd14 sw zero, 0xe0(sp)                                                                                                                                                                                                                                                 |     *(var_e0h) = 0;
    0x0007cd18 sw zero, 0xe4(sp)                                                                                                                                                                                                                                                 |     *(var_e4h) = 0;
    0x0007cd1c sw zero, 0xe8(sp)                                                                                                                                                                                                                                                 |     *(var_e8h) = 0;
    0x0007cd20 sw zero, 0xec(sp)                                                                                                                                                                                                                                                 |     *(var_ech) = 0;
    0x0007cd24 sw zero, 0xf0(sp)                                                                                                                                                                                                                                                 |     *(var_f0h) = 0;
    0x0007cd28 sw zero, 0xf4(sp)                                                                                                                                                                                                                                                 |     *(var_f4h) = 0;
    0x0007cd2c sw zero, 0xf8(sp)                                                                                                                                                                                                                                                 |     *(var_f8h) = 0;
    0x0007cd30 sw zero, 0xfc(sp)                                                                                                                                                                                                                                                 |     *(var_fch) = 0;
    0x0007cd34 sw zero, 0x100(sp)                                                                                                                                                                                                                                                |     *(var_100h) = 0;
    0x0007cd38 sw zero, 0x104(sp)                                                                                                                                                                                                                                                |     *(var_104h) = 0;
    0x0007cd3c sw zero, 0x108(sp)                                                                                                                                                                                                                                                |     *(var_108h) = 0;
    0x0007cd40 addiu v0, zero, 0x400                                                                                                                                                                                                                                             |     v0 = aav.0x00000400;
    0x0007cd44 sw v0, 0x10c(sp)                                                                                                                                                                                                                                                  |     *(var_10ch) = v0;
    0x0007cd48 sw zero, 0x110(sp)                                                                                                                                                                                                                                                |     *(var_110h) = 0;
    0x0007cd4c sw zero, 0x114(sp)                                                                                                                                                                                                                                                |     *(var_114h) = 0;
    0x0007cd50 addiu a0, zero, 0x14                                                                                                                                                                                                                                              |     a0 = 0x14;
    0x0007cd54 lw t9, -0x7310(gp)                                                                                                                                                                                                                                                |     t9 = *((gp - 7364));
    0x0007cd58 jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007cd5c nop                                                                                                                                                                                                                                                               |     
    0x0007cd60 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |     gp = *(var_18h);
    0x0007cd64 sw zero, (v0)                                                                                                                                                                                                                                                     |     *(v0) = 0;
    0x0007cd68 lui v1, 1                                                                                                                                                                                                                                                         |     v1 = 0x10000;
    0x0007cd6c sw v1, 4(v0)                                                                                                                                                                                                                                                      |     *((v0 + 1)) = v1;
    0x0007cd70 sw zero, 8(v0)                                                                                                                                                                                                                                                    |     *((v0 + 2)) = 0;
    0x0007cd74 sw zero, 0xc(v0)                                                                                                                                                                                                                                                  |     *((v0 + 3)) = 0;
    0x0007cd78 sw zero, 0x10(v0)                                                                                                                                                                                                                                                 |     *((v0 + 4)) = 0;
    0x0007cd7c sw v0, 0xf0(sp)                                                                                                                                                                                                                                                   |     *(var_f0h) = v0;
    0x0007cd80 sw v0, 0xf4(sp)                                                                                                                                                                                                                                                   |     *(var_f4h) = v0;
    0x0007cd84 sw zero, 0x118(sp)                                                                                                                                                                                                                                                |     *(var_118h) = 0;
    0x0007cd88 sw zero, 0x11c(sp)                                                                                                                                                                                                                                                |     *(var_11ch) = 0;
    0x0007cd8c sw zero, 0x120(sp)                                                                                                                                                                                                                                                |     *(var_120h) = 0;
    0x0007cd90 sh zero, 0x124(sp)                                                                                                                                                                                                                                                |     *(var_124h) = 0;
    0x0007cd94 addiu v0, zero, 3                                                                                                                                                                                                                                                 |     v0 = 3;
    0x0007cd98 sh v0, 0x126(sp)                                                                                                                                                                                                                                                  |     *(var_126h) = v0;
    0x0007cd9c sw zero, 0x128(sp)                                                                                                                                                                                                                                                |     *(var_128h) = 0;
    0x0007cda0 sw zero, 0x12c(sp)                                                                                                                                                                                                                                                |     *(var_12ch) = 0;
    0x0007cda4 sw zero, 0x130(sp)                                                                                                                                                                                                                                                |     *(var_130h) = 0;
    0x0007cda8 sw zero, 0x134(sp)                                                                                                                                                                                                                                                |     *(var_134h) = 0;
    0x0007cdac sw zero, 0x138(sp)                                                                                                                                                                                                                                                |     *(var_138h) = 0;
    0x0007cdb0 sw zero, 0x13c(sp)                                                                                                                                                                                                                                                |     *(var_13ch) = 0;
    0x0007cdb4 sw zero, 0x140(sp)                                                                                                                                                                                                                                                |     *(var_140h) = 0;
    0x0007cdb8 addiu v0, zero, 0x400                                                                                                                                                                                                                                             |     v0 = aav.0x00000400;
    0x0007cdbc sw v0, 0x144(sp)                                                                                                                                                                                                                                                  |     *(var_144h) = v0;
    0x0007cdc0 sw zero, 0x148(sp)                                                                                                                                                                                                                                                |     *(var_148h) = 0;
    0x0007cdc4 sw zero, 0x14c(sp)                                                                                                                                                                                                                                                |     *(var_14ch) = 0;
    0x0007cdc8 addiu a0, zero, 0x14                                                                                                                                                                                                                                              |     a0 = 0x14;
    0x0007cdcc lw t9, -0x7310(gp)                                                                                                                                                                                                                                                |     t9 = *((gp - 7364));
    0x0007cdd0 jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007cdd4 nop                                                                                                                                                                                                                                                               |     
    0x0007cdd8 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |     gp = *(var_18h);
    0x0007cddc sw zero, (v0)                                                                                                                                                                                                                                                     |     *(v0) = 0;
    0x0007cde0 lui v1, 1                                                                                                                                                                                                                                                         |     v1 = 0x10000;
    0x0007cde4 sw v1, 4(v0)                                                                                                                                                                                                                                                      |     *((v0 + 1)) = v1;
    0x0007cde8 sw zero, 8(v0)                                                                                                                                                                                                                                                    |     *((v0 + 2)) = 0;
    0x0007cdec sw zero, 0xc(v0)                                                                                                                                                                                                                                                  |     *((v0 + 3)) = 0;
    0x0007cdf0 sw zero, 0x10(v0)                                                                                                                                                                                                                                                 |     *((v0 + 4)) = 0;
    0x0007cdf4 sw v0, 0x128(sp)                                                                                                                                                                                                                                                  |     *(var_128h) = v0;
    0x0007cdf8 sw v0, 0x12c(sp)                                                                                                                                                                                                                                                  |     *(var_12ch) = v0;
    0x0007cdfc addiu v0, sp, 0xb8                                                                                                                                                                                                                                                |     v0 = sp + 0xb8;
    0x0007ce00 sw v0, 0xb0(sp)                                                                                                                                                                                                                                                   |     *(var_b0h) = v0;
    0x0007ce04 move a3, zero                                                                                                                                                                                                                                                     |     a3 = 0;
    0x0007ce08 lw a2, -0x7fcc(gp)                                                                                                                                                                                                                                                |     a2 = *(gp);
    0x0007ce0c addiu a2, a2, 0x7bcb                                                                                                                                                                                                                                              |     a2 += 0x7bcb;
    0x0007ce10 lw a1, -0x7fcc(gp)                                                                                                                                                                                                                                                |     a1 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* str._etc_onscreencontrols_postinst_post_added_features.json */
    0x0007ce14 addiu a1, a1, 0x7b94                                                                                                                                                                                                                                              |     a1 += 0x7b94;
    0x0007ce18 addiu a0, sp, 0xb0                                                                                                                                                                                                                                                |     a0 = sp + 0xb0;
    0x0007ce1c lw t9, -0x7f80(gp)                                                                                                                                                                                                                                                |     t9 = *(gp);
    0x0007ce20 jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007ce24 nop                                                                                                                                                                                                                                                               |     
    0x0007ce28 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |     gp = *(var_18h);
    0x0007ce2c lw a1, -0x7f84(gp)                                                                                                                                                                                                                                                |     a1 = *(gp);
    0x0007ce30 b 0x7ce78                                                                                                                                                                                                                                                         |     
    0x0007ce78 addiu a1, a1, -0x3bac                                                                                                                                                                                                                                             |     a1 += -0x3bac;
    0x0007ce7c lw a0, 0xb0(sp)                                                                                                                                                                                                                                                   |     a0 = *(var_b0h);
    0x0007ce80 lw t9, -0x7360(gp)                                                                                                                                                                                                                                                |     t9 = sym.imp.fopen;
    0x0007ce84 jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007ce88 nop                                                                                                                                                                                                                                                               |     
    0x0007ce8c lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |     gp = *(var_18h);
    0x0007ce90 move s0, v0                                                                                                                                                                                                                                                       |     s0 = v0;
    0x0007ce94 b 0x7cef0                                                                                                                                                                                                                                                         |     goto label_50;
                                                                                                                                                                                                                                                                                 | label_21:
    0x0007ced0 lw t9, -0x7fbc(gp)                                                                                                                                                                                                                                                |     t9 = *(gp);
    0x0007ced4 jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007ced8 nop                                                                                                                                                                                                                                                               |     
    0x0007cedc lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |     gp = *(var_18h);
    0x0007cee0 move a0, s0                                                                                                                                                                                                                                                       |     a0 = s0;
    0x0007cee4 lw t9, -0x75f8(gp)                                                                                                                                                                                                                                                |     t9 = sym.imp._Unwind_Resume;
    0x0007cee8 jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007ceec nop                                                                                                                                                                                                                                                               |     
                                                                                                                                                                                                                                                                                 | label_50:
    0x0007cef0 move a0, v0                                                                                                                                                                                                                                                       |     a0 = v0;
                                                                                                                                                                                                                                                                                 |     if (v0 != 0) {
    0x0007cef4 beqz v0, 0x7d028                                                                                                                                                                                                                                                  |         
    0x0007cef8 lw t9, -0x7e88(gp)                                                                                                                                                                                                                                                |         t9 = *(gp);
    0x0007cefc jalr t9                                                                                                                                                                                                                                                           |         t9 ();
    0x0007cf00 nop                                                                                                                                                                                                                                                               |         
    0x0007cf04 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |         gp = *(var_18h);
    0x0007cf08 sw v0, 0x2c(sp)                                                                                                                                                                                                                                                   |         *(var_2ch) = v0;
                                                                                                                                                                                                                                                                                 |         if (v0 != 0) {
    0x0007cf0c beqz v0, 0x7cf2c                                                                                                                                                                                                                                                  |             
    0x0007cf10 move a0, s0                                                                                                                                                                                                                                                       |             a0 = s0;
    0x0007cf14 lw t9, -0x7440(gp)                                                                                                                                                                                                                                                |             t9 = sym.imp.fclose;
    0x0007cf18 jalr t9                                                                                                                                                                                                                                                           |             t9 ();
    0x0007cf1c nop                                                                                                                                                                                                                                                               |             
    0x0007cf20 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |             gp = *(var_18h);
    0x0007cf24 lw a1, 0x2c(sp)                                                                                                                                                                                                                                                   |             a1 = *(var_2ch);
    0x0007cf28 b 0x7d00c                                                                                                                                                                                                                                                         |             
                                                                                                                                                                                                                                                                                 |         } else {
    0x0007cf2c move a0, s0                                                                                                                                                                                                                                                       |             a0 = s0;
    0x0007cf30 lw t9, -0x7440(gp)                                                                                                                                                                                                                                                |             t9 = sym.imp.fclose;
    0x0007cf34 jalr t9                                                                                                                                                                                                                                                           |             t9 ();
    0x0007cf38 nop                                                                                                                                                                                                                                                               |             
    0x0007cf3c lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |             gp = *(var_18h);
    0x0007cf40 addiu a0, zero, 0x38                                                                                                                                                                                                                                              |             a0 = 0x38;
    0x0007cf44 lw t9, -0x73ac(gp)                                                                                                                                                                                                                                                |             t9 = sym.imp.__cxa_allocate_exception;
    0x0007cf48 jalr t9                                                                                                                                                                                                                                                           |             t9 ();
    0x0007cf4c nop                                                                                                                                                                                                                                                               |             
    0x0007cf50 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |             gp = *(var_18h);
    0x0007cf54 move s1, v0                                                                                                                                                                                                                                                       |             s1 = v0;
    0x0007cf58 addiu a2, sp, 0x3c                                                                                                                                                                                                                                                |             a2 = sp + 0x3c;
    0x0007cf5c lw a1, -0x7f84(gp)                                                                                                                                                                                                                                                |             a1 = *(gp);
                                                                                                                                                                                                                                                                                 |             /* str.Database_for_the_post_installed_features_could_not_be_foundd. */
    0x0007cf60 addiu a1, a1, 0x34b0                                                                                                                                                                                                                                              |             a1 += aav.0x000034b0;
    0x0007cf64 addiu a0, sp, 0xc8                                                                                                                                                                                                                                                |             a0 = sp + 0xc8;
    0x0007cf68 lw t9, -0x753c(gp)                                                                                                                                                                                                                                                |             t9 = *(gp);
    0x0007cf6c jalr t9                                                                                                                                                                                                                                                           |             t9 ();
    0x0007cf70 nop                                                                                                                                                                                                                                                               |             
    0x0007cf74 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |             gp = *(var_18h);
    0x0007cf78 addiu v0, sp, 0x158                                                                                                                                                                                                                                               |             v0 = sp + aav.0x00000158;
    0x0007cf7c sw v0, 0x150(sp)                                                                                                                                                                                                                                                  |             *(var_150h) = v0;
    0x0007cf80 sw zero, 0x154(sp)                                                                                                                                                                                                                                                |             *(var_154h) = 0;
    0x0007cf84 sb zero, 0x158(sp)                                                                                                                                                                                                                                                |             *(var_158h) = 0;
    0x0007cf88 addiu v0, sp, 0x150                                                                                                                                                                                                                                               |             v0 = sp + aav.0x00000150;
    0x0007cf8c sw v0, 0x10(sp)                                                                                                                                                                                                                                                   |             *(var_10h) = v0;
    0x0007cf90 move a3, zero                                                                                                                                                                                                                                                     |             a3 = 0;
    0x0007cf94 addiu a2, sp, 0xc8                                                                                                                                                                                                                                                |             a2 = sp + 0xc8;
    0x0007cf98 addiu a1, zero, 0x7d1                                                                                                                                                                                                                                             |             a1 = 0x7d1;
    0x0007cf9c move a0, s1                                                                                                                                                                                                                                                       |             a0 = s1;
    0x0007cfa0 lw t9, -0x7f30(gp)                                                                                                                                                                                                                                                |             t9 = *(gp);
    0x0007cfa4 bal 0x83d40                                                                                                                                                                                                                                                       |             method ();
    0x0007cfa8 nop                                                                                                                                                                                                                                                               |             
    0x0007cfac lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |             gp = *(var_18h);
    0x0007cfb0 lw a0, 0x150(sp)                                                                                                                                                                                                                                                  |             a0 = *(var_150h);
    0x0007cfb4 addiu v0, sp, 0x158                                                                                                                                                                                                                                               |             v0 = sp + aav.0x00000158;
    0x0007cfb8 lw t9, -0x7488(gp)                                                                                                                                                                                                                                                |             t9 = *((gp - 7458));
                                                                                                                                                                                                                                                                                 |             if (a0 != v0) {
    0x0007cfbc beq a0, v0, 0x7cfcc                                                                                                                                                                                                                                               |                 
    0x0007cfc0 jalr t9                                                                                                                                                                                                                                                           |                 t9 ();
    0x0007cfc4 nop                                                                                                                                                                                                                                                               |                 
    0x0007cfc8 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |                 gp = *(var_18h);
                                                                                                                                                                                                                                                                                 |             }
    0x0007cfcc lw a0, 0xc8(sp)                                                                                                                                                                                                                                                   |             a0 = *(var_c8h);
    0x0007cfd0 addiu v0, sp, 0xd0                                                                                                                                                                                                                                                |             v0 = sp + 0xd0;
    0x0007cfd4 lw t9, -0x7488(gp)                                                                                                                                                                                                                                                |             t9 = *((gp - 7458));
                                                                                                                                                                                                                                                                                 |             if (a0 != v0) {
    0x0007cfd8 beq a0, v0, 0x7cfe8                                                                                                                                                                                                                                               |                 
    0x0007cfdc jalr t9                                                                                                                                                                                                                                                           |                 t9 ();
    0x0007cfe0 nop                                                                                                                                                                                                                                                               |                 
    0x0007cfe4 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |                 gp = *(var_18h);
                                                                                                                                                                                                                                                                                 |             }
    0x0007cfe8 lw a2, -0x7f2c(gp)                                                                                                                                                                                                                                                |             a2 = *(gp);
    0x0007cfec lw a1, -0x7f28(gp)                                                                                                                                                                                                                                                |             a1 = *(gp);
    0x0007cff0 move a0, s1                                                                                                                                                                                                                                                       |             a0 = s1;
    0x0007cff4 lw t9, -0x75e0(gp)                                                                                                                                                                                                                                                |             t9 = sym.imp.__cxa_throw;
    0x0007cff8 jalr t9                                                                                                                                                                                                                                                           |             t9 ();
    0x0007cffc nop                                                                                                                                                                                                                                                               |             
    0x0007d000 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |             gp = *(var_18h);
    0x0007d004 move s0, a0                                                                                                                                                                                                                                                       |             s0 = a0;
    0x0007d008 b 0x7eae4                                                                                                                                                                                                                                                         |             goto label_51;
                                                                                                                                                                                                                                                                                 |         }
    0x0007d00c addiu a0, sp, 0x150                                                                                                                                                                                                                                               |         a0 = sp + aav.0x00000150;
    0x0007d010 lw t9, -0x7e84(gp)                                                                                                                                                                                                                                                |         t9 = *(gp);
    0x0007d014 bal 0x7b0a4                                                                                                                                                                                                                                                       |         method ();
    0x0007d018 nop                                                                                                                                                                                                                                                               |         
    0x0007d01c lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |         gp = *(var_18h);
    0x0007d020 lw v0, 0x150(sp)                                                                                                                                                                                                                                                  |         v0 = *(var_150h);
    0x0007d024 b 0x7d0e8                                                                                                                                                                                                                                                         |         
                                                                                                                                                                                                                                                                                 |     } else {
    0x0007d028 addiu a0, zero, 0x38                                                                                                                                                                                                                                              |         a0 = 0x38;
    0x0007d02c lw t9, -0x73ac(gp)                                                                                                                                                                                                                                                |         t9 = sym.imp.__cxa_allocate_exception;
    0x0007d030 jalr t9                                                                                                                                                                                                                                                           |         t9 ();
    0x0007d034 nop                                                                                                                                                                                                                                                               |         
    0x0007d038 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |         gp = *(var_18h);
    0x0007d03c move s1, v0                                                                                                                                                                                                                                                       |         s1 = v0;
    0x0007d040 addiu a2, sp, 0x3c                                                                                                                                                                                                                                                |         a2 = sp + 0x3c;
    0x0007d044 lw a1, -0x7f84(gp)                                                                                                                                                                                                                                                |         a1 = *(gp);
                                                                                                                                                                                                                                                                                 |         /* str.Database_for_the_post_installed_features_could_not_be_found. */
    0x0007d048 addiu a1, a1, 0x34f0                                                                                                                                                                                                                                              |         a1 += 0x34f0;
    0x0007d04c addiu a0, sp, 0xc8                                                                                                                                                                                                                                                |         a0 = sp + 0xc8;
    0x0007d050 lw t9, -0x753c(gp)                                                                                                                                                                                                                                                |         t9 = *(gp);
    0x0007d054 jalr t9                                                                                                                                                                                                                                                           |         t9 ();
    0x0007d058 nop                                                                                                                                                                                                                                                               |         
    0x0007d05c lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |         gp = *(var_18h);
    0x0007d060 addiu v0, sp, 0x158                                                                                                                                                                                                                                               |         v0 = sp + aav.0x00000158;
    0x0007d064 sw v0, 0x150(sp)                                                                                                                                                                                                                                                  |         *(var_150h) = v0;
    0x0007d068 sw zero, 0x154(sp)                                                                                                                                                                                                                                                |         *(var_154h) = 0;
    0x0007d06c sb zero, 0x158(sp)                                                                                                                                                                                                                                                |         *(var_158h) = 0;
    0x0007d070 addiu v0, sp, 0x150                                                                                                                                                                                                                                               |         v0 = sp + aav.0x00000150;
    0x0007d074 sw v0, 0x10(sp)                                                                                                                                                                                                                                                   |         *(var_10h) = v0;
    0x0007d078 move a3, zero                                                                                                                                                                                                                                                     |         a3 = 0;
    0x0007d07c addiu a2, sp, 0xc8                                                                                                                                                                                                                                                |         a2 = sp + 0xc8;
    0x0007d080 addiu a1, zero, 0x270f                                                                                                                                                                                                                                            |         a1 = 0x270f;
    0x0007d084 move a0, s1                                                                                                                                                                                                                                                       |         a0 = s1;
    0x0007d088 lw t9, -0x7f30(gp)                                                                                                                                                                                                                                                |         t9 = *(gp);
    0x0007d08c bal 0x83d40                                                                                                                                                                                                                                                       |         method ();
    0x0007d090 nop                                                                                                                                                                                                                                                               |         
    0x0007d094 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |         gp = *(var_18h);
    0x0007d098 lw a0, 0x150(sp)                                                                                                                                                                                                                                                  |         a0 = *(var_150h);
    0x0007d09c addiu v0, sp, 0x158                                                                                                                                                                                                                                               |         v0 = sp + aav.0x00000158;
    0x0007d0a0 lw t9, -0x7488(gp)                                                                                                                                                                                                                                                |         t9 = *((gp - 7458));
                                                                                                                                                                                                                                                                                 |         if (a0 != v0) {
    0x0007d0a4 beq a0, v0, 0x7d0b4                                                                                                                                                                                                                                               |             
    0x0007d0a8 jalr t9                                                                                                                                                                                                                                                           |             t9 ();
    0x0007d0ac nop                                                                                                                                                                                                                                                               |             
    0x0007d0b0 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |             gp = *(var_18h);
                                                                                                                                                                                                                                                                                 |         }
    0x0007d0b4 lw a0, 0xc8(sp)                                                                                                                                                                                                                                                   |         a0 = *(var_c8h);
    0x0007d0b8 addiu v0, sp, 0xd0                                                                                                                                                                                                                                                |         v0 = sp + 0xd0;
    0x0007d0bc lw t9, -0x7488(gp)                                                                                                                                                                                                                                                |         t9 = *((gp - 7458));
                                                                                                                                                                                                                                                                                 |         if (a0 != v0) {
    0x0007d0c0 beq a0, v0, 0x7d0d0                                                                                                                                                                                                                                               |             
    0x0007d0c4 jalr t9                                                                                                                                                                                                                                                           |             t9 ();
    0x0007d0c8 nop                                                                                                                                                                                                                                                               |             
    0x0007d0cc lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |             gp = *(var_18h);
                                                                                                                                                                                                                                                                                 |         }
    0x0007d0d0 lw a2, -0x7f2c(gp)                                                                                                                                                                                                                                                |         a2 = *(gp);
    0x0007d0d4 lw a1, -0x7f28(gp)                                                                                                                                                                                                                                                |         a1 = *(gp);
    0x0007d0d8 move a0, s1                                                                                                                                                                                                                                                       |         a0 = s1;
    0x0007d0dc lw t9, -0x75e0(gp)                                                                                                                                                                                                                                                |         t9 = sym.imp.__cxa_throw;
    0x0007d0e0 jalr t9                                                                                                                                                                                                                                                           |         t9 ();
    0x0007d0e4 nop                                                                                                                                                                                                                                                               |         
                                                                                                                                                                                                                                                                                 |     }
    0x0007d0e8 sw v0, 0xe0(sp)                                                                                                                                                                                                                                                   |     *(var_e0h) = v0;
    0x0007d0ec lw v0, 0x154(sp)                                                                                                                                                                                                                                                  |     v0 = *(var_154h);
    0x0007d0f0 sw v0, 0xe4(sp)                                                                                                                                                                                                                                                   |     *(var_e4h) = v0;
    0x0007d0f4 lw v0, 0x158(sp)                                                                                                                                                                                                                                                  |     v0 = *(var_158h);
    0x0007d0f8 sw v0, 0xe8(sp)                                                                                                                                                                                                                                                   |     *(var_e8h) = v0;
    0x0007d0fc lw v0, 0x15c(sp)                                                                                                                                                                                                                                                  |     v0 = *(var_15ch);
    0x0007d100 sw v0, 0xec(sp)                                                                                                                                                                                                                                                   |     *(var_ech) = v0;
    0x0007d104 sh zero, 0x15e(sp)                                                                                                                                                                                                                                                |     *(var_15eh) = 0;
    0x0007d108 lw s1, 0xf4(sp)                                                                                                                                                                                                                                                   |     s1 = *(var_f4h);
    0x0007d10c lw v0, 0x160(sp)                                                                                                                                                                                                                                                  |     v0 = *(var_160h);
                                                                                                                                                                                                                                                                                 |     if (s1 == 0) {
    0x0007d110 beqz s1, 0x7d18c                                                                                                                                                                                                                                                  |         goto label_52;
                                                                                                                                                                                                                                                                                 |     }
    0x0007d114 lw a0, (s1)                                                                                                                                                                                                                                                       |     a0 = *(s1);
    0x0007d118 addiu a1, zero, 1                                                                                                                                                                                                                                                 |     a1 = 1;
                                                                                                                                                                                                                                                                                 |     if (a0 == 0) {
    0x0007d11c beqz a0, 0x7d15c                                                                                                                                                                                                                                                  |         goto label_53;
                                                                                                                                                                                                                                                                                 |     }
    0x0007d120 lw v0, 8(s1)                                                                                                                                                                                                                                                      |     v0 = *((s1 + 2));
                                                                                                                                                                                                                                                                                 |     if (v0 == a0) {
    0x0007d124 beql v0, a0, 0x7d15c                                                                                                                                                                                                                                              |         goto label_53;
                                                                                                                                                                                                                                                                                 |     }
    0x0007d128 sw zero, 4(v0)                                                                                                                                                                                                                                                    |     *((v0 + 1)) = 0;
                                                                                                                                                                                                                                                                                 |     do {
    0x0007d12c lw s0, 8(a0)                                                                                                                                                                                                                                                      |         s0 = *((a0 + 2));
    0x0007d130 lw t9, -0x7518(gp)                                                                                                                                                                                                                                                |         t9 = sym.imp.free;
    0x0007d134 jalr t9                                                                                                                                                                                                                                                           |         t9 ();
    0x0007d138 nop                                                                                                                                                                                                                                                               |         
    0x0007d13c lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |         gp = *(var_18h);
    0x0007d140 sw s0, (s1)                                                                                                                                                                                                                                                       |         *(s1) = s0;
                                                                                                                                                                                                                                                                                 |         if (s0 == 0) {
    0x0007d144 beqz s0, 0x7d158                                                                                                                                                                                                                                                  |             goto label_54;
                                                                                                                                                                                                                                                                                 |         }
    0x0007d148 lw v0, 8(s1)                                                                                                                                                                                                                                                      |         v0 = *((s1 + 2));
    0x0007d14c move a0, s0                                                                                                                                                                                                                                                       |         a0 = s0;
    0x0007d150 bne v0, s0, 0x7d12c                                                                                                                                                                                                                                               |         
                                                                                                                                                                                                                                                                                 |     } while (v0 != s0);
    0x0007d154 sw zero, 4(v0)                                                                                                                                                                                                                                                    |     *((v0 + 1)) = 0;
                                                                                                                                                                                                                                                                                 | label_54:
    0x0007d158 addiu a1, zero, 1                                                                                                                                                                                                                                                 |     a1 = 1;
                                                                                                                                                                                                                                                                                 | label_53:
    0x0007d15c lw a0, 0x10(s1)                                                                                                                                                                                                                                                   |     a0 = *((s1 + 4));
    0x0007d160 lw t9, -0x7404(gp)                                                                                                                                                                                                                                                |     t9 = sym.imp.operator_delete_void__unsigned_int_;
    0x0007d164 jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007d168 nop                                                                                                                                                                                                                                                               |     
    0x0007d16c lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |     gp = *(var_18h);
    0x0007d170 addiu a1, zero, 0x14                                                                                                                                                                                                                                              |     a1 = 0x14;
    0x0007d174 move a0, s1                                                                                                                                                                                                                                                       |     a0 = s1;
    0x0007d178 lw t9, -0x7404(gp)                                                                                                                                                                                                                                                |     t9 = sym.imp.operator_delete_void__unsigned_int_;
    0x0007d17c jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007d180 nop                                                                                                                                                                                                                                                               |     
    0x0007d184 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |     gp = *(var_18h);
    0x0007d188 lw v0, 0x160(sp)                                                                                                                                                                                                                                                  |     v0 = *(var_160h);
                                                                                                                                                                                                                                                                                 | label_52:
    0x0007d18c sw v0, 0xf0(sp)                                                                                                                                                                                                                                                   |     *(var_f0h) = v0;
    0x0007d190 lw v0, 0x164(sp)                                                                                                                                                                                                                                                  |     v0 = *(var_164h);
    0x0007d194 sw v0, 0xf4(sp)                                                                                                                                                                                                                                                   |     *(var_f4h) = v0;
    0x0007d198 lw a0, 0x100(sp)                                                                                                                                                                                                                                                  |     a0 = *(var_100h);
    0x0007d19c lw t9, -0x7518(gp)                                                                                                                                                                                                                                                |     t9 = sym.imp.free;
    0x0007d1a0 jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007d1a4 nop                                                                                                                                                                                                                                                               |     
    0x0007d1a8 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |     gp = *(var_18h);
    0x0007d1ac addiu a1, zero, 1                                                                                                                                                                                                                                                 |     a1 = 1;
    0x0007d1b0 lw a0, 0xfc(sp)                                                                                                                                                                                                                                                   |     a0 = *(var_fch);
    0x0007d1b4 lw t9, -0x7404(gp)                                                                                                                                                                                                                                                |     t9 = sym.imp.operator_delete_void__unsigned_int_;
    0x0007d1b8 jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007d1bc nop                                                                                                                                                                                                                                                               |     
    0x0007d1c0 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |     gp = *(var_18h);
    0x0007d1c4 lw v0, 0x168(sp)                                                                                                                                                                                                                                                  |     v0 = *(var_168h);
    0x0007d1c8 sw v0, 0xf8(sp)                                                                                                                                                                                                                                                   |     *(var_f8h) = v0;
    0x0007d1cc lw v0, 0x16c(sp)                                                                                                                                                                                                                                                  |     v0 = *(var_16ch);
    0x0007d1d0 sw v0, 0xfc(sp)                                                                                                                                                                                                                                                   |     *(var_fch) = v0;
    0x0007d1d4 lw v0, 0x170(sp)                                                                                                                                                                                                                                                  |     v0 = *(var_170h);
    0x0007d1d8 sw v0, 0x100(sp)                                                                                                                                                                                                                                                  |     *(var_100h) = v0;
    0x0007d1dc lw v0, 0x174(sp)                                                                                                                                                                                                                                                  |     v0 = *(var_174h);
    0x0007d1e0 sw v0, 0x104(sp)                                                                                                                                                                                                                                                  |     *(var_104h) = v0;
    0x0007d1e4 lw v0, 0x178(sp)                                                                                                                                                                                                                                                  |     v0 = *(var_178h);
    0x0007d1e8 sw v0, 0x108(sp)                                                                                                                                                                                                                                                  |     *(var_108h) = v0;
    0x0007d1ec lw v0, 0x17c(sp)                                                                                                                                                                                                                                                  |     v0 = *(var_17ch);
    0x0007d1f0 sw v0, 0x10c(sp)                                                                                                                                                                                                                                                  |     *(var_10ch) = v0;
    0x0007d1f4 sw zero, 0x168(sp)                                                                                                                                                                                                                                                |     *(var_168h) = 0;
    0x0007d1f8 sw zero, 0x16c(sp)                                                                                                                                                                                                                                                |     *(var_16ch) = 0;
    0x0007d1fc sw zero, 0x170(sp)                                                                                                                                                                                                                                                |     *(var_170h) = 0;
    0x0007d200 sw zero, 0x174(sp)                                                                                                                                                                                                                                                |     *(var_174h) = 0;
    0x0007d204 sw zero, 0x178(sp)                                                                                                                                                                                                                                                |     *(var_178h) = 0;
    0x0007d208 sw zero, 0x17c(sp)                                                                                                                                                                                                                                                |     *(var_17ch) = 0;
    0x0007d20c lw v0, 0x180(sp)                                                                                                                                                                                                                                                  |     v0 = *(var_180h);
    0x0007d210 sw v0, 0x110(sp)                                                                                                                                                                                                                                                  |     *(var_110h) = v0;
    0x0007d214 lw v0, 0x184(sp)                                                                                                                                                                                                                                                  |     v0 = *(var_184h);
    0x0007d218 sw v0, 0x114(sp)                                                                                                                                                                                                                                                  |     *(var_114h) = v0;
    0x0007d21c sw zero, 0x160(sp)                                                                                                                                                                                                                                                |     *(var_160h) = 0;
    0x0007d220 sw zero, 0x164(sp)                                                                                                                                                                                                                                                |     *(var_164h) = 0;
    0x0007d224 sw zero, 0x180(sp)                                                                                                                                                                                                                                                |     *(var_180h) = 0;
    0x0007d228 sw zero, 0x184(sp)                                                                                                                                                                                                                                                |     *(var_184h) = 0;
    0x0007d22c addiu a1, zero, 1                                                                                                                                                                                                                                                 |     a1 = 1;
    0x0007d230 move a0, zero                                                                                                                                                                                                                                                     |     a0 = 0;
    0x0007d234 lw t9, -0x7404(gp)                                                                                                                                                                                                                                                |     t9 = sym.imp.operator_delete_void__unsigned_int_;
    0x0007d238 jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007d23c nop                                                                                                                                                                                                                                                               |     
    0x0007d240 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |     gp = *(var_18h);
    0x0007d244 lhu v1, 0xee(sp)                                                                                                                                                                                                                                                  |     v1 = *(var_eeh);
    0x0007d248 addiu v0, zero, 4                                                                                                                                                                                                                                                 |     v0 = 4;
    0x0007d24c lw v0, 0xe0(sp)                                                                                                                                                                                                                                                   |     v0 = *(var_e0h);
                                                                                                                                                                                                                                                                                 |     if (v1 == v0) {
    0x0007d250 bne v1, v0, 0x7d28c                                                                                                                                                                                                                                               |         
    0x0007d254 sll v0, v0, 4                                                                                                                                                                                                                                                     |         v0 <<= 4;
    0x0007d258 lw s4, 0xe8(sp)                                                                                                                                                                                                                                                   |         s4 = *(var_e8h);
                                                                                                                                                                                                                                                                                 |         if (v0 == 0) {
    0x0007d25c beqz v0, 0x7dd34                                                                                                                                                                                                                                                  |             goto label_55;
                                                                                                                                                                                                                                                                                 |         }
    0x0007d260 lhu v1, 0xe(s4)                                                                                                                                                                                                                                                   |         v1 = *((s4 + 7));
    0x0007d264 addiu v0, zero, 3                                                                                                                                                                                                                                                 |         v0 = 3;
    0x0007d268 lw s5, -0x7fcc(gp)                                                                                                                                                                                                                                                |         s5 = *(gp);
                                                                                                                                                                                                                                                                                 |         if (v1 != v0) {
    0x0007d26c bne v1, v0, 0x7d2dc                                                                                                                                                                                                                                               |             goto label_56;
                                                                                                                                                                                                                                                                                 |         }
                                                                                                                                                                                                                                                                                 |         /* str.name */
    0x0007d270 addiu s5, s5, 0x7bf0                                                                                                                                                                                                                                              |         s5 += 0x7bf0;
    0x0007d274 move s6, s5                                                                                                                                                                                                                                                       |         s6 = s5;
    0x0007d278 addiu v0, sp, 0x150                                                                                                                                                                                                                                               |         v0 = sp + aav.0x00000150;
    0x0007d27c sw v0, 0x20(sp)                                                                                                                                                                                                                                                   |         *(var_20h) = v0;
    0x0007d280 lw v0, -0x7f80(gp)                                                                                                                                                                                                                                                |         v0 = *(gp);
    0x0007d284 sw v0, 0x24(sp)                                                                                                                                                                                                                                                   |         *(var_24h_2) = v0;
    0x0007d288 b 0x7d590                                                                                                                                                                                                                                                         |         goto label_57;
                                                                                                                                                                                                                                                                                 |     }
    0x0007d28c lw a3, -0x7f84(gp)                                                                                                                                                                                                                                                |     a3 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* esilref: 'rapidjson::GenericValue<Encoding, Allocator>* rapidjson::GenericValue<Encoding, Allocator>::Begin() [with Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; rapidjson::GenericValue<Encoding, Allocator>::ValueIterator =  */
    0x0007d290 addiu a3, a3, 0x497c                                                                                                                                                                                                                                              |     a3 += 0x497c;
    0x0007d294 addiu a2, zero, 0x639                                                                                                                                                                                                                                             |     a2 = 0x639;
    0x0007d298 lw a1, -0x7fcc(gp)                                                                                                                                                                                                                                                |     a1 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0007d29c addiu a1, a1, 0x2aa8                                                                                                                                                                                                                                              |     a1 += 0x2aa8;
    0x0007d2a0 lw a0, -0x7fcc(gp)                                                                                                                                                                                                                                                |     a0 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* str.IsArray__ */
    0x0007d2a4 addiu a0, a0, 0x2bc8                                                                                                                                                                                                                                              |     a0 += aav.0x00002bc8;
    0x0007d2a8 lw t9, -0x7644(gp)                                                                                                                                                                                                                                                |     t9 = sym.imp.__assert_fail;
    0x0007d2ac jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007d2b0 nop                                                                                                                                                                                                                                                               |     
                                                                                                                                                                                                                                                                                 | label_5:
    0x0007d2b4 lw a3, -0x7f84(gp)                                                                                                                                                                                                                                                |     a3 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* esilref: 'rapidjson::GenericValue<Encoding, Allocator>* rapidjson::GenericValue<Encoding, Allocator>::End() [with Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; rapidjson::GenericValue<Encoding, Allocator>::ValueIterator = ra */
    0x0007d2b8 addiu a3, a3, 0x485c                                                                                                                                                                                                                                              |     a3 += 0x485c;
    0x0007d2bc addiu a2, zero, 0x63c                                                                                                                                                                                                                                             |     a2 = aav.0x0000063c;
    0x0007d2c0 lw a1, -0x7fcc(gp)                                                                                                                                                                                                                                                |     a1 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0007d2c4 addiu a1, a1, 0x2aa8                                                                                                                                                                                                                                              |     a1 += 0x2aa8;
    0x0007d2c8 lw a0, -0x7fcc(gp)                                                                                                                                                                                                                                                |     a0 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* str.IsArray__ */
    0x0007d2cc addiu a0, a0, 0x2bc8                                                                                                                                                                                                                                              |     a0 += aav.0x00002bc8;
    0x0007d2d0 lw t9, -0x7644(gp)                                                                                                                                                                                                                                                |     t9 = sym.imp.__assert_fail;
    0x0007d2d4 jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007d2d8 nop                                                                                                                                                                                                                                                               |     
                                                                                                                                                                                                                                                                                 | label_56:
    0x0007d2dc lw a3, -0x7f84(gp)                                                                                                                                                                                                                                                |     a3 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* esilref: 'rapidjson::GenericValue<Encoding, Allocator>::Object rapidjson::GenericValue<Encoding, Allocator>::GetObject() [with Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; rapidjson::GenericValue<Encoding, Allocator>::Objec */
                                                                                                                                                                                                                                                                                 | label_6:
    0x0007d2e0 addiu a3, a3, 0x3d8c                                                                                                                                                                                                                                              |     a3 += 0x3d8c;
    0x0007d2e4 addiu a2, zero, 0x60a                                                                                                                                                                                                                                             |     a2 = 0x60a;
    0x0007d2e8 lw a1, -0x7fcc(gp)                                                                                                                                                                                                                                                |     a1 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0007d2ec addiu a1, a1, 0x2aa8                                                                                                                                                                                                                                              |     a1 += 0x2aa8;
    0x0007d2f0 lw a0, -0x7fcc(gp)                                                                                                                                                                                                                                                |     a0 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* str.IsObject__ */
    0x0007d2f4 addiu a0, a0, 0x2b0c                                                                                                                                                                                                                                              |     a0 += 0x2b0c;
    0x0007d2f8 lw t9, -0x7644(gp)                                                                                                                                                                                                                                                |     t9 = sym.imp.__assert_fail;
    0x0007d2fc jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007d300 nop                                                                                                                                                                                                                                                               |     
                                                                                                                                                                                                                                                                                 | label_8:
    0x0007d304 lw a3, -0x7f84(gp)                                                                                                                                                                                                                                                |     a3 = *(gp);
                                                                                                                                                                                                                                                                                 |     do {
                                                                                                                                                                                                                                                                                 |         /* esilref: 'bool rapidjson::GenericValue<Encoding, Allocator>::StringEqual(const rapidjson::GenericValue<Encoding, SourceAllocator>&) const [with SourceAllocator = rapidjson::MemoryPoolAllocator<>; Encoding = rapidjson::UTF8<>; Allocator = rapidjson::Memor */
    0x0007d308 addiu a3, a3, 0x3ed4                                                                                                                                                                                                                                              |         a3 += 0x3ed4;
    0x0007d30c addiu a2, zero, 0x829                                                                                                                                                                                                                                             |         a2 = 0x829;
    0x0007d310 lw a1, -0x7fcc(gp)                                                                                                                                                                                                                                                |         a1 = *(gp);
                                                                                                                                                                                                                                                                                 |         /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0007d314 addiu a1, a1, 0x2aa8                                                                                                                                                                                                                                              |         a1 += 0x2aa8;
    0x0007d318 lw a0, -0x7fcc(gp)                                                                                                                                                                                                                                                |         a0 = *(gp);
                                                                                                                                                                                                                                                                                 |         /* str.rhs.IsString__ */
    0x0007d31c addiu a0, a0, 0x48d4                                                                                                                                                                                                                                              |         a0 += 0x48d4;
    0x0007d320 lw t9, -0x7644(gp)                                                                                                                                                                                                                                                |         t9 = sym.imp.__assert_fail;
    0x0007d324 jalr t9                                                                                                                                                                                                                                                           |         t9 ();
    0x0007d328 nop                                                                                                                                                                                                                                                               |         
                                                                                                                                                                                                                                                                                 | label_0:
    0x0007d32c addiu v0, zero, 4                                                                                                                                                                                                                                                 |         v0 = 4;
                                                                                                                                                                                                                                                                                 |         if (v1 == v0) {
    0x0007d330 beql v1, v0, 0x7d374                                                                                                                                                                                                                                              |             goto label_58;
                                                                                                                                                                                                                                                                                 |         }
    0x0007d334 lw a1, 8(s1)                                                                                                                                                                                                                                                      |         a1 = *((s1 + 2));
    0x0007d338 addiu s1, s1, 0x20                                                                                                                                                                                                                                                |         s1 += 0x20;
                                                                                                                                                                                                                                                                                 | label_1:
    0x0007d33c lhu v1, 0xee(sp)                                                                                                                                                                                                                                                  |         v1 = *(var_eeh);
                                                                                                                                                                                                                                                                                 |         if (s3 == s1) {
    0x0007d340 beq s3, s1, 0x7d560                                                                                                                                                                                                                                               |             goto label_7;
                                                                                                                                                                                                                                                                                 |         }
    0x0007d344 lhu v0, 0xe(s1)                                                                                                                                                                                                                                                   |         v0 = *((s1 + 7));
    0x0007d348 andi v1, v0, 0x400                                                                                                                                                                                                                                                |         v1 = v0 & aav.0x00000400;
    0x0007d34c lw a3, -0x7f84(gp)                                                                                                                                                                                                                                                |         a3 = *(gp);
    0x0007d350 beqz v1, 0x7d308                                                                                                                                                                                                                                                  |         
                                                                                                                                                                                                                                                                                 |     } while (v1 == 0);
                                                                                                                                                                                                                                                                                 | label_9:
    0x0007d354 andi v0, v0, 0x1000                                                                                                                                                                                                                                               |     v0 &= aav.0x00001000;
                                                                                                                                                                                                                                                                                 |     if (v0 == 0) {
    0x0007d358 beql v0, zero, 0x7d32c                                                                                                                                                                                                                                            |         goto label_0;
                                                                                                                                                                                                                                                                                 |     }
    0x0007d35c lw v1, (s1)                                                                                                                                                                                                                                                       |     v1 = *(s1);
    0x0007d360 lb v0, 0xd(s1)                                                                                                                                                                                                                                                    |     v0 = *((s1 + 13));
    0x0007d364 addiu v1, s7, -4                                                                                                                                                                                                                                                  |     v1 = s7 + -4;
    0x0007d368 addiu s1, s1, 0x20                                                                                                                                                                                                                                                |     s1 += 0x20;
                                                                                                                                                                                                                                                                                 |     if (v1 == v0) {
    0x0007d36c bnel v1, v0, 0x7d33c                                                                                                                                                                                                                                              |         goto label_1;
                                                                                                                                                                                                                                                                                 |     }
    0x0007d370 move a1, s1                                                                                                                                                                                                                                                       |     a1 = s1;
                                                                                                                                                                                                                                                                                 | label_58:
    0x0007d374 addiu a2, zero, 4                                                                                                                                                                                                                                                 |     a2 = 4;
                                                                                                                                                                                                                                                                                 |     if (a1 == s5) {
    0x0007d378 beq a1, s5, 0x7d398                                                                                                                                                                                                                                               |         goto label_59;
                                                                                                                                                                                                                                                                                 |     }
    0x0007d37c move a0, s6                                                                                                                                                                                                                                                       |     a0 = s6;
    0x0007d380 lw t9, -0x7448(gp)                                                                                                                                                                                                                                                |     t9 = sym.imp.memcmp;
    0x0007d384 jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007d388 nop                                                                                                                                                                                                                                                               |     
    0x0007d38c lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |     gp = *(var_18h);
    0x0007d390 addiu s1, s1, 0x20                                                                                                                                                                                                                                                |     s1 += 0x20;
                                                                                                                                                                                                                                                                                 |     if (v0 == 0) {
    0x0007d394 bnel v0, zero, 0x7d33c                                                                                                                                                                                                                                            |         goto label_1;
                                                                                                                                                                                                                                                                                 |     }
                                                                                                                                                                                                                                                                                 | label_59:
    0x0007d398 addiu s1, zero, 0xd                                                                                                                                                                                                                                               |     s1 = 0xd;
                                                                                                                                                                                                                                                                                 |     if (s3 == s1) {
    0x0007d39c beq s3, s1, 0x7d55c                                                                                                                                                                                                                                               |         goto label_60;
                                                                                                                                                                                                                                                                                 |     }
    0x0007d3a0 andi s2, s2, 0x1000                                                                                                                                                                                                                                               |     s2 &= aav.0x00001000;
    0x0007d3a4 b 0x7d3f8                                                                                                                                                                                                                                                         |     goto label_61;
                                                                                                                                                                                                                                                                                 |     do {
                                                                                                                                                                                                                                                                                 |         /* esilref: 'bool rapidjson::GenericValue<Encoding, Allocator>::StringEqual(const rapidjson::GenericValue<Encoding, SourceAllocator>&) const [with SourceAllocator = rapidjson::MemoryPoolAllocator<>; Encoding = rapidjson::UTF8<>; Allocator = rapidjson::Memor */
    0x0007d3a8 addiu a3, a3, 0x3ed4                                                                                                                                                                                                                                              |         a3 += 0x3ed4;
    0x0007d3ac addiu a2, zero, 0x829                                                                                                                                                                                                                                             |         a2 = 0x829;
    0x0007d3b0 lw a1, -0x7fcc(gp)                                                                                                                                                                                                                                                |         a1 = *(gp);
                                                                                                                                                                                                                                                                                 |         /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0007d3b4 addiu a1, a1, 0x2aa8                                                                                                                                                                                                                                              |         a1 += 0x2aa8;
    0x0007d3b8 lw a0, -0x7fcc(gp)                                                                                                                                                                                                                                                |         a0 = *(gp);
                                                                                                                                                                                                                                                                                 |         /* str.rhs.IsString__ */
    0x0007d3bc addiu a0, a0, 0x48d4                                                                                                                                                                                                                                              |         a0 += 0x48d4;
    0x0007d3c0 lw t9, -0x7644(gp)                                                                                                                                                                                                                                                |         t9 = sym.imp.__assert_fail;
    0x0007d3c4 jalr t9                                                                                                                                                                                                                                                           |         t9 ();
    0x0007d3c8 nop                                                                                                                                                                                                                                                               |         
                                                                                                                                                                                                                                                                                 | label_2:
    0x0007d3cc addiu v0, zero, 4                                                                                                                                                                                                                                                 |         v0 = 4;
                                                                                                                                                                                                                                                                                 |         if (v1 == v0) {
    0x0007d3d0 beql v1, v0, 0x7d414                                                                                                                                                                                                                                              |             goto label_62;
                                                                                                                                                                                                                                                                                 |         }
    0x0007d3d4 lw a1, 8(s0)                                                                                                                                                                                                                                                      |         a1 = *((s0 + 2));
    0x0007d3d8 addiu s0, s0, 0x20                                                                                                                                                                                                                                                |         s0 += 0x20;
                                                                                                                                                                                                                                                                                 | label_3:
    0x0007d3dc lw a3, -0x7f84(gp)                                                                                                                                                                                                                                                |         a3 = *(gp);
                                                                                                                                                                                                                                                                                 |         if (s3 == s0) {
    0x0007d3e0 beq s3, s0, 0x7d4a0                                                                                                                                                                                                                                               |             goto label_63;
                                                                                                                                                                                                                                                                                 |         }
    0x0007d3e4 lhu s2, 0xe(s0)                                                                                                                                                                                                                                                   |         s2 = *((s0 + 7));
    0x0007d3e8 andi v0, s2, 0x400                                                                                                                                                                                                                                                |         v0 = s2 & aav.0x00000400;
    0x0007d3ec lw a3, -0x7f84(gp)                                                                                                                                                                                                                                                |         a3 = *(gp);
    0x0007d3f0 beqz v0, 0x7d3a8                                                                                                                                                                                                                                                  |         
                                                                                                                                                                                                                                                                                 |     } while (v0 == 0);
    0x0007d3f4 andi s2, s2, 0x1000                                                                                                                                                                                                                                               |     s2 &= aav.0x00001000;
                                                                                                                                                                                                                                                                                 |     if (s2 == 0) {
                                                                                                                                                                                                                                                                                 | label_61:
    0x0007d3f8 beql s2, zero, 0x7d3cc                                                                                                                                                                                                                                            |         goto label_2;
                                                                                                                                                                                                                                                                                 |     }
    0x0007d3fc lw v1, (s0)                                                                                                                                                                                                                                                       |     v1 = *(s0);
    0x0007d400 lb v0, 0xd(s0)                                                                                                                                                                                                                                                    |     v0 = *((s0 + 13));
    0x0007d404 addiu v1, s1, -4                                                                                                                                                                                                                                                  |     v1 = s1 + -4;
    0x0007d408 addiu s0, s0, 0x20                                                                                                                                                                                                                                                |     s0 += 0x20;
                                                                                                                                                                                                                                                                                 |     if (v1 == v0) {
    0x0007d40c bnel v1, v0, 0x7d3dc                                                                                                                                                                                                                                              |         goto label_3;
                                                                                                                                                                                                                                                                                 |     }
    0x0007d410 move a1, s0                                                                                                                                                                                                                                                       |     a1 = s0;
                                                                                                                                                                                                                                                                                 | label_62:
    0x0007d414 addiu a2, zero, 4                                                                                                                                                                                                                                                 |     a2 = 4;
                                                                                                                                                                                                                                                                                 |     if (a1 == s5) {
    0x0007d418 beq a1, s5, 0x7d438                                                                                                                                                                                                                                               |         goto label_64;
                                                                                                                                                                                                                                                                                 |     }
    0x0007d41c move a0, s6                                                                                                                                                                                                                                                       |     a0 = s6;
    0x0007d420 lw t9, -0x7448(gp)                                                                                                                                                                                                                                                |     t9 = sym.imp.memcmp;
    0x0007d424 jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007d428 nop                                                                                                                                                                                                                                                               |     
    0x0007d42c lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |     gp = *(var_18h);
    0x0007d430 addiu s0, s0, 0x20                                                                                                                                                                                                                                                |     s0 += 0x20;
                                                                                                                                                                                                                                                                                 |     if (v0 == 0) {
    0x0007d434 bnel v0, zero, 0x7d3dc                                                                                                                                                                                                                                            |         goto label_3;
                                                                                                                                                                                                                                                                                 |     }
                                                                                                                                                                                                                                                                                 | label_64:
    0x0007d438 lw a3, -0x7f84(gp)                                                                                                                                                                                                                                                |     a3 = *(gp);
                                                                                                                                                                                                                                                                                 |     if (s3 == s0) {
    0x0007d43c beq s3, s0, 0x7d4a0                                                                                                                                                                                                                                               |         goto label_63;
                                                                                                                                                                                                                                                                                 |     }
    0x0007d440 lhu v0, 0x1e(s0)                                                                                                                                                                                                                                                  |     v0 = *((s0 + 15));
    0x0007d444 andi v1, v0, 0x400                                                                                                                                                                                                                                                |     v1 = v0 & aav.0x00000400;
    0x0007d448 andi v0, v0, 0x1000                                                                                                                                                                                                                                               |     v0 &= aav.0x00001000;
                                                                                                                                                                                                                                                                                 |     if (v1 == 0) {
    0x0007d44c beqz v1, 0x7d4c4                                                                                                                                                                                                                                                  |         goto label_65;
                                                                                                                                                                                                                                                                                 |     }
                                                                                                                                                                                                                                                                                 |     if (v0 == 0) {
    0x0007d450 beql v0, zero, 0x7d4ec                                                                                                                                                                                                                                            |         goto label_66;
                                                                                                                                                                                                                                                                                 |     }
    0x0007d454 lw s0, 0x18(s0)                                                                                                                                                                                                                                                   |     s0 = *((s0 + 6));
    0x0007d458 addiu s0, s0, 0x10                                                                                                                                                                                                                                                |     s0 += 0x10;
    0x0007d45c addiu v0, sp, 0x158                                                                                                                                                                                                                                               |     v0 = sp + aav.0x00000158;
    0x0007d460 sw v0, 0x150(sp)                                                                                                                                                                                                                                                  |     *(var_150h) = v0;
                                                                                                                                                                                                                                                                                 |     do {
    0x0007d464 move a0, s0                                                                                                                                                                                                                                                       |         a0 = s0;
    0x0007d468 lw t9, -0x73cc(gp)                                                                                                                                                                                                                                                |         t9 = sym.imp.strlen;
    0x0007d46c jalr t9                                                                                                                                                                                                                                                           |         t9 ();
    0x0007d470 nop                                                                                                                                                                                                                                                               |         
    0x0007d474 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |         gp = *(var_18h);
    0x0007d478 addu a2, s0, v0                                                                                                                                                                                                                                                   |         a2 = s0 + v0;
                                                                                                                                                                                                                                                                                 | label_4:
    0x0007d47c move a3, zero                                                                                                                                                                                                                                                     |         a3 = 0;
    0x0007d480 move a1, s0                                                                                                                                                                                                                                                       |         a1 = s0;
    0x0007d484 lw a0, 0x20(sp)                                                                                                                                                                                                                                                   |         a0 = *(var_20h);
    0x0007d488 lw t9, 0x24(sp)                                                                                                                                                                                                                                                   |         t9 = *(var_24h_2);
    0x0007d48c jalr t9                                                                                                                                                                                                                                                           |         t9 ();
    0x0007d490 nop                                                                                                                                                                                                                                                               |         
    0x0007d494 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |         gp = *(var_18h);
    0x0007d498 lw s1, 0x154(sp)                                                                                                                                                                                                                                                  |         s1 = *(var_154h);
    0x0007d49c b 0x7d500                                                                                                                                                                                                                                                         |         goto label_67;
                                                                                                                                                                                                                                                                                 |         /* esilref: 'rapidjson::GenericValue<Encoding, Allocator>& rapidjson::GenericValue<Encoding, Allocator>::operator[](const rapidjson::GenericValue<Encoding, SourceAllocator>&) [with SourceAllocator = rapidjson::MemoryPoolAllocator<>; Encoding = rapidjson::UT */
                                                                                                                                                                                                                                                                                 | label_63:
    0x0007d4a0 addiu a3, a3, 0x3c64                                                                                                                                                                                                                                              |         a3 += 0x3c64;
    0x0007d4a4 addiu a2, zero, 0x46f                                                                                                                                                                                                                                             |         a2 = 0x46f;
    0x0007d4a8 lw a1, -0x7fcc(gp)                                                                                                                                                                                                                                                |         a1 = *(gp);
                                                                                                                                                                                                                                                                                 |         /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0007d4ac addiu a1, a1, 0x2aa8                                                                                                                                                                                                                                              |         a1 += 0x2aa8;
    0x0007d4b0 lw a0, -0x7fcc(gp)                                                                                                                                                                                                                                                |         a0 = *(gp);
                                                                                                                                                                                                                                                                                 |         /* str.false */
    0x0007d4b4 addiu a0, a0, 0x48ec                                                                                                                                                                                                                                              |         a0 += 0x48ec;
    0x0007d4b8 lw t9, -0x7644(gp)                                                                                                                                                                                                                                                |         t9 = sym.imp.__assert_fail;
    0x0007d4bc jalr t9                                                                                                                                                                                                                                                           |         t9 ();
    0x0007d4c0 nop                                                                                                                                                                                                                                                               |         
                                                                                                                                                                                                                                                                                 | label_65:
    0x0007d4c4 lw a3, -0x7f84(gp)                                                                                                                                                                                                                                                |         a3 = *(gp);
                                                                                                                                                                                                                                                                                 |         /* esilref: 'const Ch* rapidjson::GenericValue<Encoding, Allocator>::GetString() const [with Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; rapidjson::GenericValue<Encoding, Allocator>::Ch = char]' */
    0x0007d4c8 addiu a3, a3, 0x4608                                                                                                                                                                                                                                              |         a3 += aav.0x00004608;
    0x0007d4cc addiu a2, zero, 0x6e9                                                                                                                                                                                                                                             |         a2 = 0x6e9;
    0x0007d4d0 lw a1, -0x7fcc(gp)                                                                                                                                                                                                                                                |         a1 = *(gp);
                                                                                                                                                                                                                                                                                 |         /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0007d4d4 addiu a1, a1, 0x2aa8                                                                                                                                                                                                                                              |         a1 += 0x2aa8;
    0x0007d4d8 lw a0, -0x7fcc(gp)                                                                                                                                                                                                                                                |         a0 = *(gp);
                                                                                                                                                                                                                                                                                 |         /* esilref: 'IsString()' */
    0x0007d4dc addiu a0, a0, 0x2b20                                                                                                                                                                                                                                              |         a0 += 0x2b20;
    0x0007d4e0 lw t9, -0x7644(gp)                                                                                                                                                                                                                                                |         t9 = sym.imp.__assert_fail;
    0x0007d4e4 jalr t9                                                                                                                                                                                                                                                           |         t9 ();
    0x0007d4e8 nop                                                                                                                                                                                                                                                               |         
                                                                                                                                                                                                                                                                                 | label_66:
    0x0007d4ec addiu v0, sp, 0x158                                                                                                                                                                                                                                               |         v0 = sp + aav.0x00000158;
    0x0007d4f0 sw v0, 0x150(sp)                                                                                                                                                                                                                                                  |         *(var_150h) = v0;
    0x0007d4f4 bnez s0, 0x7d464                                                                                                                                                                                                                                                  |         
                                                                                                                                                                                                                                                                                 |     } while (s0 != 0);
    0x0007d4f8 addiu a2, zero, -1                                                                                                                                                                                                                                                |     a2 = -1;
    0x0007d4fc b 0x7d47c                                                                                                                                                                                                                                                         |     goto label_4;
                                                                                                                                                                                                                                                                                 | label_67:
    0x0007d500 lw s0, 4(fp)                                                                                                                                                                                                                                                      |     s0 = *(arg_4h);
    0x0007d504 sltu a2, s0, s1                                                                                                                                                                                                                                                   |     a2 = (s0 < s1) ? 1 : 0;
    0x0007d508 move v0, s0                                                                                                                                                                                                                                                       |     v0 = s0;
                                                                                                                                                                                                                                                                                 |     if (a2 != 0) {
    0x0007d50c movz v0, s1, a2                                                                                                                                                                                                                                                   |         v0 = s1;
                                                                                                                                                                                                                                                                                 |     }
    0x0007d510 move a2, v0                                                                                                                                                                                                                                                       |     a2 = v0;
    0x0007d514 lw s2, 0x150(sp)                                                                                                                                                                                                                                                  |     s2 = *(var_150h);
                                                                                                                                                                                                                                                                                 |     if (v0 != 0) {
    0x0007d518 beqz v0, 0x7d53c                                                                                                                                                                                                                                                  |         
    0x0007d51c lw a1, (fp)                                                                                                                                                                                                                                                       |         a1 = *(fp);
    0x0007d520 move a0, s2                                                                                                                                                                                                                                                       |         a0 = s2;
    0x0007d524 lw t9, -0x7448(gp)                                                                                                                                                                                                                                                |         t9 = sym.imp.memcmp;
    0x0007d528 jalr t9                                                                                                                                                                                                                                                           |         t9 ();
    0x0007d52c nop                                                                                                                                                                                                                                                               |         
    0x0007d530 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |         gp = *(var_18h);
    0x0007d534 addiu v0, sp, 0x158                                                                                                                                                                                                                                               |         v0 = sp + aav.0x00000158;
                                                                                                                                                                                                                                                                                 |         if (v0 != 0) {
    0x0007d538 bnez v0, 0x7d544                                                                                                                                                                                                                                                  |             goto label_68;
                                                                                                                                                                                                                                                                                 |         }
                                                                                                                                                                                                                                                                                 |     }
    0x0007d53c addiu v0, sp, 0x158                                                                                                                                                                                                                                               |     v0 = sp + aav.0x00000158;
                                                                                                                                                                                                                                                                                 |     if (s1 == s0) {
    0x0007d540 beq s1, s0, 0x7d5c4                                                                                                                                                                                                                                               |         goto label_69;
                                                                                                                                                                                                                                                                                 |     }
                                                                                                                                                                                                                                                                                 | label_68:
    0x0007d544 move a0, s2                                                                                                                                                                                                                                                       |     a0 = s2;
                                                                                                                                                                                                                                                                                 |     if (s2 != v0) {
    0x0007d548 beq s2, v0, 0x7d55c                                                                                                                                                                                                                                               |         
    0x0007d54c lw t9, -0x7488(gp)                                                                                                                                                                                                                                                |         t9 = *((gp - 7458));
    0x0007d550 jalr t9                                                                                                                                                                                                                                                           |         t9 ();
    0x0007d554 nop                                                                                                                                                                                                                                                               |         
    0x0007d558 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |         gp = *(var_18h);
                                                                                                                                                                                                                                                                                 |     }
                                                                                                                                                                                                                                                                                 | label_60:
    0x0007d55c lhu v1, 0xee(sp)                                                                                                                                                                                                                                                  |     v1 = *(var_eeh);
                                                                                                                                                                                                                                                                                 | label_7:
    0x0007d560 addiu v0, zero, 4                                                                                                                                                                                                                                                 |     v0 = 4;
    0x0007d564 addiu s4, s4, 0x10                                                                                                                                                                                                                                                |     s4 += 0x10;
                                                                                                                                                                                                                                                                                 |     if (v1 != v0) {
    0x0007d568 bne v1, v0, 0x7d2b4                                                                                                                                                                                                                                               |         goto label_5;
                                                                                                                                                                                                                                                                                 |     }
    0x0007d56c lw v0, 0xe0(sp)                                                                                                                                                                                                                                                   |     v0 = *(var_e0h);
    0x0007d570 sll v1, v0, 4                                                                                                                                                                                                                                                     |     v1 = v0 << 4;
    0x0007d574 lw v0, 0xe8(sp)                                                                                                                                                                                                                                                   |     v0 = *(var_e8h);
    0x0007d578 addu v0, v0, v1                                                                                                                                                                                                                                                   |     v0 += v1;
    0x0007d57c addiu v0, zero, 3                                                                                                                                                                                                                                                 |     v0 = 3;
                                                                                                                                                                                                                                                                                 |     if (s4 == v0) {
    0x0007d580 beq s4, v0, 0x7dd34                                                                                                                                                                                                                                               |         goto label_55;
                                                                                                                                                                                                                                                                                 |     }
    0x0007d584 lhu v1, 0xe(s4)                                                                                                                                                                                                                                                   |     v1 = *((s4 + 7));
    0x0007d588 lw a3, -0x7f84(gp)                                                                                                                                                                                                                                                |     a3 = *(gp);
                                                                                                                                                                                                                                                                                 |     if (v1 != v0) {
    0x0007d58c bne v1, v0, 0x7d2e0                                                                                                                                                                                                                                               |         goto label_6;
                                                                                                                                                                                                                                                                                 |     }
                                                                                                                                                                                                                                                                                 | label_57:
    0x0007d590 lw s0, 8(s4)                                                                                                                                                                                                                                                      |     s0 = *((s4 + 2));
    0x0007d594 lw s3, (s4)                                                                                                                                                                                                                                                       |     s3 = *(s4);
    0x0007d598 sll s3, s3, 5                                                                                                                                                                                                                                                     |     s3 <<= 5;
    0x0007d59c addu s3, s0, s3                                                                                                                                                                                                                                                   |     s3 = s0 + s3;
    0x0007d5a0 lhu v1, 0xee(sp)                                                                                                                                                                                                                                                  |     v1 = *(var_eeh);
                                                                                                                                                                                                                                                                                 |     if (s3 == s0) {
    0x0007d5a4 beq s3, s0, 0x7d560                                                                                                                                                                                                                                               |         goto label_7;
                                                                                                                                                                                                                                                                                 |     }
    0x0007d5a8 lhu s2, 0xe(s0)                                                                                                                                                                                                                                                   |     s2 = *((s0 + 7));
    0x0007d5ac andi v0, s2, 0x400                                                                                                                                                                                                                                                |     v0 = s2 & aav.0x00000400;
    0x0007d5b0 move v0, s2                                                                                                                                                                                                                                                       |     v0 = s2;
                                                                                                                                                                                                                                                                                 |     if (v0 == 0) {
    0x0007d5b4 beqz v0, 0x7d304                                                                                                                                                                                                                                                  |         goto label_8;
                                                                                                                                                                                                                                                                                 |     }
    0x0007d5b8 move s1, s0                                                                                                                                                                                                                                                       |     s1 = s0;
    0x0007d5bc addiu s7, zero, 0xd                                                                                                                                                                                                                                               |     s7 = 0xd;
    0x0007d5c0 b 0x7d354                                                                                                                                                                                                                                                         |     goto label_9;
                                                                                                                                                                                                                                                                                 | label_69:
    0x0007d5c4 lw a1, -0x7fcc(gp)                                                                                                                                                                                                                                                |     a1 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* str.locales */
    0x0007d5c8 addiu a1, a1, 0x7bcc                                                                                                                                                                                                                                              |     a1 += 0x7bcc;
    0x0007d5cc move a0, s4                                                                                                                                                                                                                                                       |     a0 = s4;
    0x0007d5d0 lw t9, -0x7758(gp)                                                                                                                                                                                                                                                |     t9 = *(gp);
    0x0007d5d4 bal 0x83330                                                                                                                                                                                                                                                       |     fcn_00083330 ();
    0x0007d5d8 nop                                                                                                                                                                                                                                                               |     
    0x0007d5dc lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |     gp = *(var_18h);
    0x0007d5e0 move s4, v0                                                                                                                                                                                                                                                       |     s4 = v0;
    0x0007d5e4 lhu v1, 0xe(v0)                                                                                                                                                                                                                                                   |     v1 = *((v0 + 7));
    0x0007d5e8 addiu v0, zero, 4                                                                                                                                                                                                                                                 |     v0 = 4;
    0x0007d5ec lw a3, -0x7f84(gp)                                                                                                                                                                                                                                                |     a3 = *(gp);
                                                                                                                                                                                                                                                                                 |     if (v1 == v0) {
    0x0007d5f0 bne v1, v0, 0x7d624                                                                                                                                                                                                                                               |         
    0x0007d5f4 lw v0, (s4)                                                                                                                                                                                                                                                       |         v0 = *(s4);
    0x0007d5f8 sll v0, v0, 4                                                                                                                                                                                                                                                     |         v0 <<= 4;
    0x0007d5fc lw s2, 8(s4)                                                                                                                                                                                                                                                      |         s2 = *((s4 + 2));
                                                                                                                                                                                                                                                                                 |         if (v0 == 0) {
    0x0007d600 beqz v0, 0x7d840                                                                                                                                                                                                                                                  |             goto label_70;
                                                                                                                                                                                                                                                                                 |         }
    0x0007d604 lhu v1, 0xe(s2)                                                                                                                                                                                                                                                   |         v1 = *((s2 + 7));
    0x0007d608 addiu v0, zero, 3                                                                                                                                                                                                                                                 |         v0 = 3;
    0x0007d60c lw s5, -0x7fcc(gp)                                                                                                                                                                                                                                                |         s5 = *(gp);
                                                                                                                                                                                                                                                                                 |         if (v1 != v0) {
    0x0007d610 bne v1, v0, 0x7d670                                                                                                                                                                                                                                               |             goto label_71;
                                                                                                                                                                                                                                                                                 |         }
                                                                                                                                                                                                                                                                                 |         /* str.locale */
    0x0007d614 addiu s5, s5, 0x48e4                                                                                                                                                                                                                                              |         s5 += 0x48e4;
    0x0007d618 addiu s3, zero, 0xd                                                                                                                                                                                                                                               |         s3 = 0xd;
    0x0007d61c move s6, s5                                                                                                                                                                                                                                                       |         s6 = s5;
    0x0007d620 b 0x7d774                                                                                                                                                                                                                                                         |         goto label_72;
                                                                                                                                                                                                                                                                                 |     }
                                                                                                                                                                                                                                                                                 |     /* esilref: 'rapidjson::GenericValue<Encoding, Allocator>* rapidjson::GenericValue<Encoding, Allocator>::Begin() [with Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; rapidjson::GenericValue<Encoding, Allocator>::ValueIterator =  */
    0x0007d624 addiu a3, a3, 0x497c                                                                                                                                                                                                                                              |     a3 += 0x497c;
    0x0007d628 addiu a2, zero, 0x639                                                                                                                                                                                                                                             |     a2 = 0x639;
    0x0007d62c lw a1, -0x7fcc(gp)                                                                                                                                                                                                                                                |     a1 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0007d630 addiu a1, a1, 0x2aa8                                                                                                                                                                                                                                              |     a1 += 0x2aa8;
    0x0007d634 lw a0, -0x7fcc(gp)                                                                                                                                                                                                                                                |     a0 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* str.IsArray__ */
    0x0007d638 addiu a0, a0, 0x2bc8                                                                                                                                                                                                                                              |     a0 += aav.0x00002bc8;
    0x0007d63c lw t9, -0x7644(gp)                                                                                                                                                                                                                                                |     t9 = sym.imp.__assert_fail;
    0x0007d640 jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007d644 nop                                                                                                                                                                                                                                                               |     
                                                                                                                                                                                                                                                                                 | label_11:
    0x0007d648 lw a3, -0x7f84(gp)                                                                                                                                                                                                                                                |     a3 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* esilref: 'rapidjson::GenericValue<Encoding, Allocator>* rapidjson::GenericValue<Encoding, Allocator>::End() [with Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; rapidjson::GenericValue<Encoding, Allocator>::ValueIterator = ra */
    0x0007d64c addiu a3, a3, 0x485c                                                                                                                                                                                                                                              |     a3 += 0x485c;
    0x0007d650 addiu a2, zero, 0x63c                                                                                                                                                                                                                                             |     a2 = aav.0x0000063c;
    0x0007d654 lw a1, -0x7fcc(gp)                                                                                                                                                                                                                                                |     a1 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0007d658 addiu a1, a1, 0x2aa8                                                                                                                                                                                                                                              |     a1 += 0x2aa8;
    0x0007d65c lw a0, -0x7fcc(gp)                                                                                                                                                                                                                                                |     a0 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* str.IsArray__ */
    0x0007d660 addiu a0, a0, 0x2bc8                                                                                                                                                                                                                                              |     a0 += aav.0x00002bc8;
    0x0007d664 lw t9, -0x7644(gp)                                                                                                                                                                                                                                                |     t9 = sym.imp.__assert_fail;
    0x0007d668 jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007d66c nop                                                                                                                                                                                                                                                               |     
                                                                                                                                                                                                                                                                                 | label_71:
    0x0007d670 lw a3, -0x7f84(gp)                                                                                                                                                                                                                                                |     a3 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* esilref: 'rapidjson::GenericValue<Encoding, Allocator>::MemberIterator rapidjson::GenericValue<Encoding, Allocator>::FindMember(const rapidjson::GenericValue<Encoding, SourceAllocator>&) [with SourceAllocator = rapidjson::MemoryPoolAllocator<>; Encoding  */
                                                                                                                                                                                                                                                                                 | label_12:
    0x0007d674 addiu a3, a3, 0x3fdc                                                                                                                                                                                                                                              |     a3 += 0x3fdc;
    0x0007d678 addiu a2, zero, 0x4e3                                                                                                                                                                                                                                             |     a2 = 0x4e3;
    0x0007d67c lw a1, -0x7fcc(gp)                                                                                                                                                                                                                                                |     a1 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0007d680 addiu a1, a1, 0x2aa8                                                                                                                                                                                                                                              |     a1 += 0x2aa8;
    0x0007d684 lw a0, -0x7fcc(gp)                                                                                                                                                                                                                                                |     a0 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* str.IsObject__ */
    0x0007d688 addiu a0, a0, 0x2b0c                                                                                                                                                                                                                                              |     a0 += 0x2b0c;
    0x0007d68c lw t9, -0x7644(gp)                                                                                                                                                                                                                                                |     t9 = sym.imp.__assert_fail;
    0x0007d690 jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007d694 nop                                                                                                                                                                                                                                                               |     
                                                                                                                                                                                                                                                                                 |     do {
    0x0007d698 addiu v0, zero, 6                                                                                                                                                                                                                                                 |         v0 = 6;
                                                                                                                                                                                                                                                                                 |         if (v1 == v0) {
    0x0007d69c beql v1, v0, 0x7d6e0                                                                                                                                                                                                                                              |             goto label_73;
                                                                                                                                                                                                                                                                                 |         }
    0x0007d6a0 lw a1, 8(s0)                                                                                                                                                                                                                                                      |         a1 = *((s0 + 2));
    0x0007d6a4 addiu s0, s0, 0x20                                                                                                                                                                                                                                                |         s0 += 0x20;
                                                                                                                                                                                                                                                                                 | label_10:
    0x0007d6a8 lw a3, -0x7f84(gp)                                                                                                                                                                                                                                                |         a3 = *(gp);
                                                                                                                                                                                                                                                                                 |         if (s1 == s0) {
    0x0007d6ac beq s1, s0, 0x7d7c4                                                                                                                                                                                                                                               |             goto label_74;
                                                                                                                                                                                                                                                                                 |         }
    0x0007d6b0 lhu v0, 0xe(s0)                                                                                                                                                                                                                                                   |         v0 = *((s0 + 7));
    0x0007d6b4 andi v1, v0, 0x400                                                                                                                                                                                                                                                |         v1 = v0 & aav.0x00000400;
    0x0007d6b8 lw a3, -0x7f84(gp)                                                                                                                                                                                                                                                |         a3 = *(gp);
                                                                                                                                                                                                                                                                                 |         if (v1 == 0) {
    0x0007d6bc beqz v1, 0x7d7a0                                                                                                                                                                                                                                                  |             goto label_75;
                                                                                                                                                                                                                                                                                 |         }
    0x0007d6c0 andi v0, v0, 0x1000                                                                                                                                                                                                                                               |         v0 &= aav.0x00001000;
                                                                                                                                                                                                                                                                                 | label_13:
    0x0007d6c4 beql v0, zero, 0x7d698                                                                                                                                                                                                                                            |         
                                                                                                                                                                                                                                                                                 |     } while (v0 == 0);
    0x0007d6c8 lw v1, (s0)                                                                                                                                                                                                                                                       |     v1 = *(s0);
    0x0007d6cc lb v0, 0xd(s0)                                                                                                                                                                                                                                                    |     v0 = *((s0 + 13));
    0x0007d6d0 addiu v1, s3, -6                                                                                                                                                                                                                                                  |     v1 = s3 + -6;
    0x0007d6d4 addiu s0, s0, 0x20                                                                                                                                                                                                                                                |     s0 += 0x20;
                                                                                                                                                                                                                                                                                 |     if (v1 == v0) {
    0x0007d6d8 bnel v1, v0, 0x7d6a8                                                                                                                                                                                                                                              |         goto label_10;
                                                                                                                                                                                                                                                                                 |     }
    0x0007d6dc move a1, s0                                                                                                                                                                                                                                                       |     a1 = s0;
                                                                                                                                                                                                                                                                                 | label_73:
    0x0007d6e0 addiu a2, zero, 6                                                                                                                                                                                                                                                 |     a2 = 6;
                                                                                                                                                                                                                                                                                 |     if (a1 == s5) {
    0x0007d6e4 beq a1, s5, 0x7d704                                                                                                                                                                                                                                               |         goto label_76;
                                                                                                                                                                                                                                                                                 |     }
    0x0007d6e8 move a0, s6                                                                                                                                                                                                                                                       |     a0 = s6;
    0x0007d6ec lw t9, -0x7448(gp)                                                                                                                                                                                                                                                |     t9 = sym.imp.memcmp;
    0x0007d6f0 jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007d6f4 nop                                                                                                                                                                                                                                                               |     
    0x0007d6f8 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |     gp = *(var_18h);
    0x0007d6fc addiu s0, s0, 0x20                                                                                                                                                                                                                                                |     s0 += 0x20;
                                                                                                                                                                                                                                                                                 |     if (v0 == 0) {
    0x0007d700 bnel v0, zero, 0x7d6a8                                                                                                                                                                                                                                            |         goto label_10;
                                                                                                                                                                                                                                                                                 |     }
                                                                                                                                                                                                                                                                                 | label_76:
    0x0007d704 lw a3, -0x7f84(gp)                                                                                                                                                                                                                                                |     a3 = *(gp);
                                                                                                                                                                                                                                                                                 |     if (s1 == s0) {
    0x0007d708 beq s1, s0, 0x7d7c4                                                                                                                                                                                                                                               |         goto label_74;
                                                                                                                                                                                                                                                                                 |     }
    0x0007d70c lhu v0, 0x1e(s0)                                                                                                                                                                                                                                                  |     v0 = *((s0 + 15));
    0x0007d710 andi v1, v0, 0x400                                                                                                                                                                                                                                                |     v1 = v0 & aav.0x00000400;
    0x0007d714 andi v0, v0, 0x1000                                                                                                                                                                                                                                               |     v0 &= aav.0x00001000;
                                                                                                                                                                                                                                                                                 |     if (v1 == 0) {
    0x0007d718 beqz v1, 0x7d7e8                                                                                                                                                                                                                                                  |         goto label_77;
                                                                                                                                                                                                                                                                                 |     }
                                                                                                                                                                                                                                                                                 |     if (v0 != 0) {
    0x0007d71c beql v0, zero, 0x7d728                                                                                                                                                                                                                                            |         
    0x0007d720 lw a1, 0x18(s0)                                                                                                                                                                                                                                                   |         a1 = *((s0 + 6));
    0x0007d724 addiu a1, s0, 0x10                                                                                                                                                                                                                                                |         a1 = s0 + 0x10;
                                                                                                                                                                                                                                                                                 |     }
    0x0007d728 lw a0, 0x28(sp)                                                                                                                                                                                                                                                   |     a0 = *(var_28h);
    0x0007d72c lw t9, -0x7354(gp)                                                                                                                                                                                                                                                |     t9 = *(gp);
    0x0007d730 jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007d734 nop                                                                                                                                                                                                                                                               |     
    0x0007d738 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |     gp = *(var_18h);
    0x0007d73c addiu v0, zero, 4                                                                                                                                                                                                                                                 |     v0 = 4;
                                                                                                                                                                                                                                                                                 |     if (v0 == 0) {
    0x0007d740 beqz v0, 0x7d810                                                                                                                                                                                                                                                  |         goto label_78;
                                                                                                                                                                                                                                                                                 |     }
    0x0007d744 lhu v1, 0xe(s4)                                                                                                                                                                                                                                                   |     v1 = *((s4 + 7));
    0x0007d748 addiu s2, s2, 0x10                                                                                                                                                                                                                                                |     s2 += 0x10;
                                                                                                                                                                                                                                                                                 |     if (v1 != v0) {
    0x0007d74c bne v1, v0, 0x7d648                                                                                                                                                                                                                                               |         goto label_11;
                                                                                                                                                                                                                                                                                 |     }
    0x0007d750 lw v0, (s4)                                                                                                                                                                                                                                                       |     v0 = *(s4);
    0x0007d754 sll v1, v0, 4                                                                                                                                                                                                                                                     |     v1 = v0 << 4;
    0x0007d758 lw v0, 8(s4)                                                                                                                                                                                                                                                      |     v0 = *((s4 + 2));
    0x0007d75c addu v0, v0, v1                                                                                                                                                                                                                                                   |     v0 += v1;
    0x0007d760 addiu v0, zero, 3                                                                                                                                                                                                                                                 |     v0 = 3;
                                                                                                                                                                                                                                                                                 |     if (s2 == v0) {
    0x0007d764 beq s2, v0, 0x7d840                                                                                                                                                                                                                                               |         goto label_70;
                                                                                                                                                                                                                                                                                 |     }
    0x0007d768 lhu v1, 0xe(s2)                                                                                                                                                                                                                                                   |     v1 = *((s2 + 7));
    0x0007d76c lw a3, -0x7f84(gp)                                                                                                                                                                                                                                                |     a3 = *(gp);
                                                                                                                                                                                                                                                                                 |     if (v1 != v0) {
    0x0007d770 bne v1, v0, 0x7d674                                                                                                                                                                                                                                               |         goto label_12;
                                                                                                                                                                                                                                                                                 |     }
                                                                                                                                                                                                                                                                                 | label_72:
    0x0007d774 lw s0, 8(s2)                                                                                                                                                                                                                                                      |     s0 = *((s2 + 2));
    0x0007d778 lw s1, (s2)                                                                                                                                                                                                                                                       |     s1 = *(s2);
    0x0007d77c sll s1, s1, 5                                                                                                                                                                                                                                                     |     s1 <<= 5;
    0x0007d780 addu s1, s0, s1                                                                                                                                                                                                                                                   |     s1 = s0 + s1;
    0x0007d784 lw a3, -0x7f84(gp)                                                                                                                                                                                                                                                |     a3 = *(gp);
                                                                                                                                                                                                                                                                                 |     if (s1 == s0) {
    0x0007d788 beq s1, s0, 0x7d7c4                                                                                                                                                                                                                                               |         goto label_74;
                                                                                                                                                                                                                                                                                 |     }
    0x0007d78c lhu v0, 0xe(s0)                                                                                                                                                                                                                                                   |     v0 = *((s0 + 7));
    0x0007d790 andi v1, v0, 0x400                                                                                                                                                                                                                                                |     v1 = v0 & aav.0x00000400;
    0x0007d794 andi v0, v0, 0x1000                                                                                                                                                                                                                                               |     v0 &= aav.0x00001000;
                                                                                                                                                                                                                                                                                 |     if (v1 != 0) {
    0x0007d798 bnez v1, 0x7d6c4                                                                                                                                                                                                                                                  |         goto label_13;
                                                                                                                                                                                                                                                                                 |     }
    0x0007d79c lw a3, -0x7f84(gp)                                                                                                                                                                                                                                                |     a3 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* esilref: 'bool rapidjson::GenericValue<Encoding, Allocator>::StringEqual(const rapidjson::GenericValue<Encoding, SourceAllocator>&) const [with SourceAllocator = rapidjson::MemoryPoolAllocator<>; Encoding = rapidjson::UTF8<>; Allocator = rapidjson::Memor */
                                                                                                                                                                                                                                                                                 | label_75:
    0x0007d7a0 addiu a3, a3, 0x3ed4                                                                                                                                                                                                                                              |     a3 += 0x3ed4;
    0x0007d7a4 addiu a2, zero, 0x829                                                                                                                                                                                                                                             |     a2 = 0x829;
    0x0007d7a8 lw a1, -0x7fcc(gp)                                                                                                                                                                                                                                                |     a1 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0007d7ac addiu a1, a1, 0x2aa8                                                                                                                                                                                                                                              |     a1 += 0x2aa8;
    0x0007d7b0 lw a0, -0x7fcc(gp)                                                                                                                                                                                                                                                |     a0 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* str.rhs.IsString__ */
    0x0007d7b4 addiu a0, a0, 0x48d4                                                                                                                                                                                                                                              |     a0 += 0x48d4;
    0x0007d7b8 lw t9, -0x7644(gp)                                                                                                                                                                                                                                                |     t9 = sym.imp.__assert_fail;
    0x0007d7bc jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007d7c0 nop                                                                                                                                                                                                                                                               |     
                                                                                                                                                                                                                                                                                 |     /* esilref: 'rapidjson::GenericValue<Encoding, Allocator>& rapidjson::GenericValue<Encoding, Allocator>::operator[](const rapidjson::GenericValue<Encoding, SourceAllocator>&) [with SourceAllocator = rapidjson::MemoryPoolAllocator<>; Encoding = rapidjson::UT */
                                                                                                                                                                                                                                                                                 | label_74:
    0x0007d7c4 addiu a3, a3, 0x3c64                                                                                                                                                                                                                                              |     a3 += 0x3c64;
    0x0007d7c8 addiu a2, zero, 0x46f                                                                                                                                                                                                                                             |     a2 = 0x46f;
    0x0007d7cc lw a1, -0x7fcc(gp)                                                                                                                                                                                                                                                |     a1 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0007d7d0 addiu a1, a1, 0x2aa8                                                                                                                                                                                                                                              |     a1 += 0x2aa8;
    0x0007d7d4 lw a0, -0x7fcc(gp)                                                                                                                                                                                                                                                |     a0 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* str.false */
    0x0007d7d8 addiu a0, a0, 0x48ec                                                                                                                                                                                                                                              |     a0 += 0x48ec;
    0x0007d7dc lw t9, -0x7644(gp)                                                                                                                                                                                                                                                |     t9 = sym.imp.__assert_fail;
    0x0007d7e0 jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007d7e4 nop                                                                                                                                                                                                                                                               |     
                                                                                                                                                                                                                                                                                 | label_77:
    0x0007d7e8 lw a3, -0x7f84(gp)                                                                                                                                                                                                                                                |     a3 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* esilref: 'const Ch* rapidjson::GenericValue<Encoding, Allocator>::GetString() const [with Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; rapidjson::GenericValue<Encoding, Allocator>::Ch = char]' */
    0x0007d7ec addiu a3, a3, 0x4608                                                                                                                                                                                                                                              |     a3 += aav.0x00004608;
    0x0007d7f0 addiu a2, zero, 0x6e9                                                                                                                                                                                                                                             |     a2 = 0x6e9;
    0x0007d7f4 lw a1, -0x7fcc(gp)                                                                                                                                                                                                                                                |     a1 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0007d7f8 addiu a1, a1, 0x2aa8                                                                                                                                                                                                                                              |     a1 += 0x2aa8;
    0x0007d7fc lw a0, -0x7fcc(gp)                                                                                                                                                                                                                                                |     a0 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* esilref: 'IsString()' */
    0x0007d800 addiu a0, a0, 0x2b20                                                                                                                                                                                                                                              |     a0 += 0x2b20;
    0x0007d804 lw t9, -0x7644(gp)                                                                                                                                                                                                                                                |     t9 = sym.imp.__assert_fail;
    0x0007d808 jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007d80c nop                                                                                                                                                                                                                                                               |     
                                                                                                                                                                                                                                                                                 | label_78:
    0x0007d810 lw v0, 0x28(sp)                                                                                                                                                                                                                                                   |     v0 = *(var_28h);
    0x0007d814 lw a3, (v0)                                                                                                                                                                                                                                                       |     a3 = *(v0);
    0x0007d818 lw a2, -0x7f84(gp)                                                                                                                                                                                                                                                |     a2 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* str._s_already_exist_in_the_table. */
    0x0007d81c addiu a2, a2, 0x3530                                                                                                                                                                                                                                              |     a2 += 0x3530;
    0x0007d820 addiu a1, zero, 1                                                                                                                                                                                                                                                 |     a1 = 1;
    0x0007d824 addiu a0, zero, 6                                                                                                                                                                                                                                                 |     a0 = 6;
    0x0007d828 lw t9, -0x74e4(gp)                                                                                                                                                                                                                                                |     t9 = sym.imp.__syslog_chk;
    0x0007d82c jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007d830 nop                                                                                                                                                                                                                                                               |     
    0x0007d834 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |     gp = *(var_18h);
    0x0007d838 lw a0, 0x150(sp)                                                                                                                                                                                                                                                  |     a0 = *(var_150h);
    0x0007d83c b 0x7dd14                                                                                                                                                                                                                                                         |     goto label_79;
                                                                                                                                                                                                                                                                                 | label_70:
    0x0007d840 sw zero, 0xc8(sp)                                                                                                                                                                                                                                                 |     *(var_c8h) = 0;
    0x0007d844 sw zero, 0xcc(sp)                                                                                                                                                                                                                                                 |     *(var_cch) = 0;
    0x0007d848 sw zero, 0xd0(sp)                                                                                                                                                                                                                                                 |     *(var_d0h) = 0;
    0x0007d84c sh zero, 0xd4(sp)                                                                                                                                                                                                                                                 |     *(var_d4h) = 0;
    0x0007d850 addiu v0, zero, 3                                                                                                                                                                                                                                                 |     v0 = 3;
    0x0007d854 sh v0, 0xd6(sp)                                                                                                                                                                                                                                                   |     *(var_d6h) = v0;
    0x0007d858 lw v0, 0x28(sp)                                                                                                                                                                                                                                                   |     v0 = *(var_28h);
    0x0007d85c lw s0, (v0)                                                                                                                                                                                                                                                       |     s0 = *(v0);
    0x0007d860 move a0, s0                                                                                                                                                                                                                                                       |     a0 = s0;
                                                                                                                                                                                                                                                                                 |     if (s0 == 0) {
    0x0007d864 beqz s0, 0x7dad0                                                                                                                                                                                                                                                  |         goto label_80;
                                                                                                                                                                                                                                                                                 |     }
    0x0007d868 lw t9, -0x73cc(gp)                                                                                                                                                                                                                                                |     t9 = sym.imp.strlen;
    0x0007d86c jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007d870 nop                                                                                                                                                                                                                                                               |     
    0x0007d874 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |     gp = *(var_18h);
    0x0007d878 lw s2, 0xf0(sp)                                                                                                                                                                                                                                                   |     s2 = *(var_f0h);
    0x0007d87c move s1, v0                                                                                                                                                                                                                                                       |     s1 = v0;
                                                                                                                                                                                                                                                                                 |     if (s2 == 0) {
    0x0007d880 beqz s2, 0x7daf8                                                                                                                                                                                                                                                  |         goto label_81;
                                                                                                                                                                                                                                                                                 |     }
    0x0007d884 sw zero, 0x44(sp)                                                                                                                                                                                                                                                 |     *(var_44h_2) = 0;
    0x0007d888 sw zero, 0x48(sp)                                                                                                                                                                                                                                                 |     *(var_48h) = 0;
    0x0007d88c sh zero, 0x4c(sp)                                                                                                                                                                                                                                                 |     *(var_4ch) = 0;
    0x0007d890 sw zero, 0x54(sp)                                                                                                                                                                                                                                                 |     *(var_54h_2) = 0;
    0x0007d894 sw zero, 0x58(sp)                                                                                                                                                                                                                                                 |     *(var_58h) = 0;
    0x0007d898 sh zero, 0x5c(sp)                                                                                                                                                                                                                                                 |     *(var_5ch_2) = 0;
    0x0007d89c lw v0, (s2)                                                                                                                                                                                                                                                       |     v0 = *(s2);
                                                                                                                                                                                                                                                                                 |     if (v0 != 0) {
    0x0007d8a0 beql v0, zero, 0x7d8c4                                                                                                                                                                                                                                            |         
    0x0007d8a4 lw v0, 4(s2)                                                                                                                                                                                                                                                      |         v0 = *((s2 + 1));
    0x0007d8a8 lw v1, 4(v0)                                                                                                                                                                                                                                                      |         v1 = *((v0 + 1));
    0x0007d8ac addiu v1, v1, 0x200                                                                                                                                                                                                                                               |         v1 += aav.0x00000200;
    0x0007d8b0 lw v0, (v0)                                                                                                                                                                                                                                                       |         v0 = *(v0);
    0x0007d8b4 sltu v0, v0, v1                                                                                                                                                                                                                                                   |         v0 = (v0 < v1) ? 1 : 0;
                                                                                                                                                                                                                                                                                 |         if (v0 == 0) {
    0x0007d8b8 beql v0, zero, 0x7d914                                                                                                                                                                                                                                            |             goto label_82;
                                                                                                                                                                                                                                                                                 |         }
    0x0007d8bc lw a0, (s2)                                                                                                                                                                                                                                                       |         a0 = *(s2);
    0x0007d8c0 lw v0, 4(s2)                                                                                                                                                                                                                                                      |         v0 = *((s2 + 1));
                                                                                                                                                                                                                                                                                 |     }
    0x0007d8c4 sltiu s3, v0, 0x200                                                                                                                                                                                                                                               |     s3 = (v0 < aav.0x00000200) ? 1 : 0;
    0x0007d8c8 addiu v1, zero, 0x200                                                                                                                                                                                                                                             |     v1 = aav.0x00000200;
                                                                                                                                                                                                                                                                                 |     if (s3 != 0) {
    0x0007d8cc movz v1, v0, s3                                                                                                                                                                                                                                                   |         v1 = v0;
                                                                                                                                                                                                                                                                                 |     }
    0x0007d8d0 lw v0, 0xc(s2)                                                                                                                                                                                                                                                    |     v0 = *((s2 + 3));
    0x0007d8d4 move s3, v1                                                                                                                                                                                                                                                       |     s3 = v1;
    0x0007d8d8 beqz v0, 0x7db20                                                                                                                                                                                                                                                  |     
                                                                                                                                                                                                                                                                                 |     while (1) {
    0x0007d8dc addiu a0, s3, 0x10                                                                                                                                                                                                                                                |         a0 = s3 + 0x10;
    0x0007d8e0 lw t9, -0x73c8(gp)                                                                                                                                                                                                                                                |         t9 = sym.imp.malloc;
                                                                                                                                                                                                                                                                                 |         if (a0 == 0) {
    0x0007d8e4 beqz a0, 0x7ec44                                                                                                                                                                                                                                                  |             goto label_83;
                                                                                                                                                                                                                                                                                 |         }
    0x0007d8e8 jalr t9                                                                                                                                                                                                                                                           |         t9 ();
    0x0007d8ec nop                                                                                                                                                                                                                                                               |         
    0x0007d8f0 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |         gp = *(var_18h);
                                                                                                                                                                                                                                                                                 |         if (v0 != 0) {
    0x0007d8f4 beql v0, zero, 0x7d928                                                                                                                                                                                                                                            |             
    0x0007d8f8 move v0, zero                                                                                                                                                                                                                                                     |             v0 = 0;
    0x0007d8fc sw s3, (v0)                                                                                                                                                                                                                                                       |             *(v0) = s3;
    0x0007d900 sw zero, 4(v0)                                                                                                                                                                                                                                                    |             *((v0 + 1)) = 0;
    0x0007d904 lw v1, (s2)                                                                                                                                                                                                                                                       |             v1 = *(s2);
    0x0007d908 sw v1, 8(v0)                                                                                                                                                                                                                                                      |             *((v0 + 2)) = v1;
    0x0007d90c sw v0, (s2)                                                                                                                                                                                                                                                       |             *(s2) = v0;
    0x0007d910 lw a0, (s2)                                                                                                                                                                                                                                                       |             a0 = *(s2);
                                                                                                                                                                                                                                                                                 | label_82:
    0x0007d914 lw v1, 4(a0)                                                                                                                                                                                                                                                      |             v1 = *((a0 + 1));
    0x0007d918 addiu v0, v1, 0x10                                                                                                                                                                                                                                                |             v0 = v1 + 0x10;
    0x0007d91c addu v0, a0, v0                                                                                                                                                                                                                                                   |             v0 = a0 + v0;
    0x0007d920 addiu v1, v1, 0x200                                                                                                                                                                                                                                               |             v1 += aav.0x00000200;
    0x0007d924 sw v1, 4(a0)                                                                                                                                                                                                                                                      |             *((a0 + 1)) = v1;
                                                                                                                                                                                                                                                                                 |         }
                                                                                                                                                                                                                                                                                 | label_23:
    0x0007d928 sw v0, 0xd0(sp)                                                                                                                                                                                                                                                   |         *(var_d0h) = v0;
    0x0007d92c addiu v1, zero, 0x10                                                                                                                                                                                                                                              |         v1 = 0x10;
    0x0007d930 sw v1, 0xcc(sp)                                                                                                                                                                                                                                                   |         *(var_cch) = v1;
    0x0007d934 lw v1, 0xc8(sp)                                                                                                                                                                                                                                                   |         v1 = *(var_c8h);
    0x0007d938 sll v1, v1, 5                                                                                                                                                                                                                                                     |         v1 <<= 5;
    0x0007d93c addu v1, v0, v1                                                                                                                                                                                                                                                   |         v1 = v0 + v1;
    0x0007d940 addiu a2, zero, 6                                                                                                                                                                                                                                                 |         a2 = 6;
    0x0007d944 sw a2, 0x50(sp)                                                                                                                                                                                                                                                   |         *(var_50h) = a2;
    0x0007d948 lw a0, -0x7fcc(gp)                                                                                                                                                                                                                                                |         a0 = *(gp);
                                                                                                                                                                                                                                                                                 |         /* str.locale */
    0x0007d94c addiu a0, a0, 0x48e4                                                                                                                                                                                                                                              |         a0 += 0x48e4;
    0x0007d950 sw a0, 0x58(sp)                                                                                                                                                                                                                                                   |         *(var_58h) = a0;
    0x0007d954 addiu a1, zero, 0x405                                                                                                                                                                                                                                             |         a1 = 0x405;
    0x0007d958 sh a1, 0x5e(sp)                                                                                                                                                                                                                                                   |         *(var_5eh) = a1;
    0x0007d95c sw a2, (v1)                                                                                                                                                                                                                                                       |         *(v1) = a2;
    0x0007d960 lw a2, 0x54(sp)                                                                                                                                                                                                                                                   |         a2 = *(var_54h_2);
    0x0007d964 sw a2, 4(v1)                                                                                                                                                                                                                                                      |         *((v1 + 1)) = a2;
    0x0007d968 sw a0, 8(v1)                                                                                                                                                                                                                                                      |         *((v1 + 2)) = a0;
    0x0007d96c lw a0, 0x5c(sp)                                                                                                                                                                                                                                                   |         a0 = *(var_5ch_2);
    0x0007d970 sw a0, 0xc(v1)                                                                                                                                                                                                                                                    |         *((v1 + 3)) = a0;
    0x0007d974 lw s3, 0xc8(sp)                                                                                                                                                                                                                                                   |         s3 = *(var_c8h);
    0x0007d978 sw s1, 0x40(sp)                                                                                                                                                                                                                                                   |         *(var_40h) = s1;
    0x0007d97c sw s0, 0x48(sp)                                                                                                                                                                                                                                                   |         *(var_48h) = s0;
    0x0007d980 sh a1, 0x4e(sp)                                                                                                                                                                                                                                                   |         *(var_4eh) = a1;
    0x0007d984 sll v1, s3, 5                                                                                                                                                                                                                                                     |         v1 = s3 << 5;
    0x0007d988 addu v0, v0, v1                                                                                                                                                                                                                                                   |         v0 += v1;
    0x0007d98c sw s1, 0x10(v0)                                                                                                                                                                                                                                                   |         *((v0 + 4)) = s1;
    0x0007d990 lw v1, 0x44(sp)                                                                                                                                                                                                                                                   |         v1 = *(var_44h_2);
    0x0007d994 sw v1, 0x14(v0)                                                                                                                                                                                                                                                   |         *((v0 + 5)) = v1;
    0x0007d998 sw s0, 0x18(v0)                                                                                                                                                                                                                                                   |         *((v0 + 6)) = s0;
    0x0007d99c lw v1, 0x4c(sp)                                                                                                                                                                                                                                                   |         v1 = *(var_4ch);
    0x0007d9a0 sw v1, 0x1c(v0)                                                                                                                                                                                                                                                   |         *((v0 + 7)) = v1;
    0x0007d9a4 addiu s3, s3, 1                                                                                                                                                                                                                                                   |         s3++;
    0x0007d9a8 sw s3, 0xc8(sp)                                                                                                                                                                                                                                                   |         *(var_c8h) = s3;
    0x0007d9ac lw v0, 0x34(sp)                                                                                                                                                                                                                                                   |         v0 = *(var_34h);
    0x0007d9b0 lw s2, (v0)                                                                                                                                                                                                                                                       |         s2 = *(v0);
    0x0007d9b4 move a0, s2                                                                                                                                                                                                                                                       |         a0 = s2;
                                                                                                                                                                                                                                                                                 |         if (s2 == 0) {
    0x0007d9b8 beqz s2, 0x7db40                                                                                                                                                                                                                                                  |             goto label_84;
                                                                                                                                                                                                                                                                                 |         }
    0x0007d9bc lw t9, -0x73cc(gp)                                                                                                                                                                                                                                                |         t9 = sym.imp.strlen;
    0x0007d9c0 jalr t9                                                                                                                                                                                                                                                           |         t9 ();
    0x0007d9c4 nop                                                                                                                                                                                                                                                               |         
    0x0007d9c8 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |         gp = *(var_18h);
    0x0007d9cc lw s0, 0xf0(sp)                                                                                                                                                                                                                                                   |         s0 = *(var_f0h);
    0x0007d9d0 move s5, v0                                                                                                                                                                                                                                                       |         s5 = v0;
                                                                                                                                                                                                                                                                                 |         if (s0 == 0) {
    0x0007d9d4 beqz s0, 0x7db68                                                                                                                                                                                                                                                  |             goto label_85;
                                                                                                                                                                                                                                                                                 |         }
    0x0007d9d8 sw zero, 0x64(sp)                                                                                                                                                                                                                                                 |         *(var_64h) = 0;
    0x0007d9dc sw zero, 0x68(sp)                                                                                                                                                                                                                                                 |         *(var_68h) = 0;
    0x0007d9e0 sh zero, 0x6c(sp)                                                                                                                                                                                                                                                 |         *(var_6ch_2) = 0;
    0x0007d9e4 sw zero, 0x74(sp)                                                                                                                                                                                                                                                 |         *(var_74h) = 0;
    0x0007d9e8 sw zero, 0x78(sp)                                                                                                                                                                                                                                                 |         *(var_78h) = 0;
    0x0007d9ec sh zero, 0x7c(sp)                                                                                                                                                                                                                                                 |         *(var_7ch) = 0;
    0x0007d9f0 lhu v1, 0xd6(sp)                                                                                                                                                                                                                                                  |         v1 = *(var_d6h);
    0x0007d9f4 addiu v0, zero, 3                                                                                                                                                                                                                                                 |         v0 = 3;
    0x0007d9f8 lw s1, 0xcc(sp)                                                                                                                                                                                                                                                   |         s1 = *(var_cch);
                                                                                                                                                                                                                                                                                 |         if (v1 != v0) {
    0x0007d9fc bne v1, v0, 0x7db90                                                                                                                                                                                                                                               |             goto label_86;
                                                                                                                                                                                                                                                                                 |         }
    0x0007da00 sltu s3, s3, s1                                                                                                                                                                                                                                                   |         s3 = (s3 < s1) ? 1 : 0;
    0x0007da04 lw v1, 0xd0(sp)                                                                                                                                                                                                                                                   |         v1 = *(var_d0h);
                                                                                                                                                                                                                                                                                 |         if (s3 != 0) {
    0x0007da08 bnel s3, zero, 0x7da30                                                                                                                                                                                                                                            |             
    0x0007da0c lw s6, 0xd0(sp)                                                                                                                                                                                                                                                   |             s6 = *(var_d0h);
                                                                                                                                                                                                                                                                                 |             if (s1 == 0) {
    0x0007da10 beqz s1, 0x7ef3c                                                                                                                                                                                                                                                  |                 goto label_87;
                                                                                                                                                                                                                                                                                 |             }
    0x0007da14 addiu s7, s1, 1                                                                                                                                                                                                                                                   |             s7 = s1 + 1;
    0x0007da18 srl s7, s7, 1                                                                                                                                                                                                                                                     |             s7 >>= 1;
    0x0007da1c addu s7, s7, s1                                                                                                                                                                                                                                                   |             s7 += s1;
    0x0007da20 sltu v0, s1, s7                                                                                                                                                                                                                                                   |             v0 = (s1 < s7) ? 1 : 0;
                                                                                                                                                                                                                                                                                 |             if (v0 != 0) {
    0x0007da24 bnez v0, 0x7dbb8                                                                                                                                                                                                                                                  |                 goto label_88;
                                                                                                                                                                                                                                                                                 |             }
    0x0007da28 nop                                                                                                                                                                                                                                                               |             
                                                                                                                                                                                                                                                                                 | label_14:
    0x0007da2c lw v1, 0xd0(sp)                                                                                                                                                                                                                                                   |             v1 = *(var_d0h);
                                                                                                                                                                                                                                                                                 |         }
    0x0007da30 lw v0, 0xc8(sp)                                                                                                                                                                                                                                                   |         v0 = *(var_c8h);
    0x0007da34 sll v0, v0, 5                                                                                                                                                                                                                                                     |         v0 <<= 5;
    0x0007da38 addu v0, v1, v0                                                                                                                                                                                                                                                   |         v0 = v1 + v0;
    0x0007da3c addiu a2, zero, 8                                                                                                                                                                                                                                                 |         a2 = 8;
    0x0007da40 sw a2, 0x70(sp)                                                                                                                                                                                                                                                   |         *(var_70h) = a2;
    0x0007da44 lw a0, -0x7f84(gp)                                                                                                                                                                                                                                                |         a0 = *(gp);
                                                                                                                                                                                                                                                                                 |         /* str.language */
    0x0007da48 addiu a0, a0, 0x3550                                                                                                                                                                                                                                              |         a0 += 0x3550;
    0x0007da4c sw a0, 0x78(sp)                                                                                                                                                                                                                                                   |         *(var_78h) = a0;
    0x0007da50 addiu a1, zero, 0x405                                                                                                                                                                                                                                             |         a1 = 0x405;
    0x0007da54 sh a1, 0x7e(sp)                                                                                                                                                                                                                                                   |         *(var_7eh) = a1;
    0x0007da58 sw a2, (v0)                                                                                                                                                                                                                                                       |         *(v0) = a2;
    0x0007da5c lw a2, 0x74(sp)                                                                                                                                                                                                                                                   |         a2 = *(var_74h);
    0x0007da60 sw a2, 4(v0)                                                                                                                                                                                                                                                      |         *((v0 + 1)) = a2;
    0x0007da64 sw a0, 8(v0)                                                                                                                                                                                                                                                      |         *((v0 + 2)) = a0;
    0x0007da68 lw a0, 0x7c(sp)                                                                                                                                                                                                                                                   |         a0 = *(var_7ch);
    0x0007da6c sw a0, 0xc(v0)                                                                                                                                                                                                                                                    |         *((v0 + 3)) = a0;
    0x0007da70 lw a0, 0xc8(sp)                                                                                                                                                                                                                                                   |         a0 = *(var_c8h);
    0x0007da74 sw s5, 0x60(sp)                                                                                                                                                                                                                                                   |         *(var_60h) = s5;
    0x0007da78 sw s2, 0x68(sp)                                                                                                                                                                                                                                                   |         *(var_68h) = s2;
    0x0007da7c sh a1, 0x6e(sp)                                                                                                                                                                                                                                                   |         *(var_6eh) = a1;
    0x0007da80 sll v0, a0, 5                                                                                                                                                                                                                                                     |         v0 = a0 << 5;
    0x0007da84 addu v0, v1, v0                                                                                                                                                                                                                                                   |         v0 = v1 + v0;
    0x0007da88 sw s5, 0x10(v0)                                                                                                                                                                                                                                                   |         *((v0 + 4)) = s5;
    0x0007da8c lw v1, 0x64(sp)                                                                                                                                                                                                                                                   |         v1 = *(var_64h);
    0x0007da90 sw v1, 0x14(v0)                                                                                                                                                                                                                                                   |         *((v0 + 5)) = v1;
    0x0007da94 sw s2, 0x18(v0)                                                                                                                                                                                                                                                   |         *((v0 + 6)) = s2;
    0x0007da98 lw v1, 0x6c(sp)                                                                                                                                                                                                                                                   |         v1 = *(var_6ch_2);
    0x0007da9c sw v1, 0x1c(v0)                                                                                                                                                                                                                                                   |         *((v0 + 7)) = v1;
    0x0007daa0 addiu a0, a0, 1                                                                                                                                                                                                                                                   |         a0++;
    0x0007daa4 sw a0, 0xc8(sp)                                                                                                                                                                                                                                                   |         *(var_c8h) = a0;
    0x0007daa8 lw a2, 0xf0(sp)                                                                                                                                                                                                                                                   |         a2 = *(var_f0h);
    0x0007daac addiu a1, sp, 0xc8                                                                                                                                                                                                                                                |         a1 = sp + 0xc8;
                                                                                                                                                                                                                                                                                 |         if (a2 == 0) {
    0x0007dab0 beqz a2, 0x7dcd0                                                                                                                                                                                                                                                  |             goto label_89;
                                                                                                                                                                                                                                                                                 |         }
    0x0007dab4 move a0, s4                                                                                                                                                                                                                                                       |         a0 = s4;
    0x0007dab8 lw t9, -0x774c(gp)                                                                                                                                                                                                                                                |         t9 = *(gp);
    0x0007dabc bal 0x834e4                                                                                                                                                                                                                                                       |         fcn_000834e4 ();
    0x0007dac0 nop                                                                                                                                                                                                                                                               |         
    0x0007dac4 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |         gp = *(var_18h);
    0x0007dac8 addiu a2, sp, 0xb0                                                                                                                                                                                                                                                |         a2 = sp + 0xb0;
    0x0007dacc b 0x7dcf8                                                                                                                                                                                                                                                         |         goto label_90;
                                                                                                                                                                                                                                                                                 | label_80:
    0x0007dad0 lw a3, -0x7f84(gp)                                                                                                                                                                                                                                                |         a3 = *(gp);
                                                                                                                                                                                                                                                                                 |         /* esilref: 'rapidjson::SizeType rapidjson::GenericStringRef<CharType>::NotNullStrLen(const CharType*) [with CharType = char; rapidjson::SizeType = unsigned int]' */
    0x0007dad4 addiu a3, a3, 0x41b4                                                                                                                                                                                                                                              |         a3 += 0x41b4;
    0x0007dad8 addiu a2, zero, 0x14b                                                                                                                                                                                                                                             |         a2 = 0x14b;
    0x0007dadc lw a1, -0x7fcc(gp)                                                                                                                                                                                                                                                |         a1 = *(gp);
                                                                                                                                                                                                                                                                                 |         /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0007dae0 addiu a1, a1, 0x2aa8                                                                                                                                                                                                                                              |         a1 += 0x2aa8;
    0x0007dae4 lw a0, -0x7fcc(gp)                                                                                                                                                                                                                                                |         a0 = *(gp);
                                                                                                                                                                                                                                                                                 |         /* str.str___0 */
    0x0007dae8 addiu a0, a0, 0x2b2c                                                                                                                                                                                                                                              |         a0 += 0x2b2c;
    0x0007daec lw t9, -0x7644(gp)                                                                                                                                                                                                                                                |         t9 = sym.imp.__assert_fail;
    0x0007daf0 jalr t9                                                                                                                                                                                                                                                           |         t9 ();
    0x0007daf4 nop                                                                                                                                                                                                                                                               |         
                                                                                                                                                                                                                                                                                 | label_81:
    0x0007daf8 lw a3, -0x7f84(gp)                                                                                                                                                                                                                                                |         a3 = *(gp);
                                                                                                                                                                                                                                                                                 |         /* esilref: 'Allocator& rapidjson::GenericDocument<Encoding, Allocator, StackAllocator>::GetAllocator() [with Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; StackAllocator = rapidjson::CrtAllocator]' */
    0x0007dafc addiu a3, a3, 0x3784                                                                                                                                                                                                                                              |         a3 += aav.0x00003784;
    0x0007db00 addiu a2, zero, 0x969                                                                                                                                                                                                                                             |         a2 = 0x969;
    0x0007db04 lw a1, -0x7fcc(gp)                                                                                                                                                                                                                                                |         a1 = *(gp);
                                                                                                                                                                                                                                                                                 |         /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0007db08 addiu a1, a1, 0x2aa8                                                                                                                                                                                                                                              |         a1 += 0x2aa8;
    0x0007db0c lw a0, -0x7fcc(gp)                                                                                                                                                                                                                                                |         a0 = *(gp);
                                                                                                                                                                                                                                                                                 |         /* str.allocator_ */
    0x0007db10 addiu a0, a0, 0x2d78                                                                                                                                                                                                                                              |         a0 += 0x2d78;
    0x0007db14 lw t9, -0x7644(gp)                                                                                                                                                                                                                                                |         t9 = sym.imp.__assert_fail;
    0x0007db18 jalr t9                                                                                                                                                                                                                                                           |         t9 ();
    0x0007db1c nop                                                                                                                                                                                                                                                               |         
    0x0007db20 addiu a0, zero, 1                                                                                                                                                                                                                                                 |         a0 = 1;
    0x0007db24 lw t9, -0x7310(gp)                                                                                                                                                                                                                                                |         t9 = *((gp - 7364));
    0x0007db28 jalr t9                                                                                                                                                                                                                                                           |         t9 ();
    0x0007db2c nop                                                                                                                                                                                                                                                               |         
    0x0007db30 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |         gp = *(var_18h);
    0x0007db34 sw v0, 0xc(s2)                                                                                                                                                                                                                                                    |         *((s2 + 3)) = v0;
    0x0007db38 sw v0, 0x10(s2)                                                                                                                                                                                                                                                   |         *((s2 + 4)) = v0;
    0x0007db3c b 0x7d8dc                                                                                                                                                                                                                                                         |         
                                                                                                                                                                                                                                                                                 |     }
                                                                                                                                                                                                                                                                                 | label_84:
    0x0007db40 lw a3, -0x7f84(gp)                                                                                                                                                                                                                                                |     a3 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* esilref: 'rapidjson::SizeType rapidjson::GenericStringRef<CharType>::NotNullStrLen(const CharType*) [with CharType = char; rapidjson::SizeType = unsigned int]' */
    0x0007db44 addiu a3, a3, 0x41b4                                                                                                                                                                                                                                              |     a3 += 0x41b4;
    0x0007db48 addiu a2, zero, 0x14b                                                                                                                                                                                                                                             |     a2 = 0x14b;
    0x0007db4c lw a1, -0x7fcc(gp)                                                                                                                                                                                                                                                |     a1 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0007db50 addiu a1, a1, 0x2aa8                                                                                                                                                                                                                                              |     a1 += 0x2aa8;
    0x0007db54 lw a0, -0x7fcc(gp)                                                                                                                                                                                                                                                |     a0 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* str.str___0 */
    0x0007db58 addiu a0, a0, 0x2b2c                                                                                                                                                                                                                                              |     a0 += 0x2b2c;
    0x0007db5c lw t9, -0x7644(gp)                                                                                                                                                                                                                                                |     t9 = sym.imp.__assert_fail;
    0x0007db60 jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007db64 nop                                                                                                                                                                                                                                                               |     
                                                                                                                                                                                                                                                                                 | label_85:
    0x0007db68 lw a3, -0x7f84(gp)                                                                                                                                                                                                                                                |     a3 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* esilref: 'Allocator& rapidjson::GenericDocument<Encoding, Allocator, StackAllocator>::GetAllocator() [with Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; StackAllocator = rapidjson::CrtAllocator]' */
    0x0007db6c addiu a3, a3, 0x3784                                                                                                                                                                                                                                              |     a3 += aav.0x00003784;
    0x0007db70 addiu a2, zero, 0x969                                                                                                                                                                                                                                             |     a2 = 0x969;
    0x0007db74 lw a1, -0x7fcc(gp)                                                                                                                                                                                                                                                |     a1 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0007db78 addiu a1, a1, 0x2aa8                                                                                                                                                                                                                                              |     a1 += 0x2aa8;
    0x0007db7c lw a0, -0x7fcc(gp)                                                                                                                                                                                                                                                |     a0 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* str.allocator_ */
    0x0007db80 addiu a0, a0, 0x2d78                                                                                                                                                                                                                                              |     a0 += 0x2d78;
    0x0007db84 lw t9, -0x7644(gp)                                                                                                                                                                                                                                                |     t9 = sym.imp.__assert_fail;
    0x0007db88 jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007db8c nop                                                                                                                                                                                                                                                               |     
                                                                                                                                                                                                                                                                                 | label_86:
    0x0007db90 lw a3, -0x7f84(gp)                                                                                                                                                                                                                                                |     a3 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* esilref: 'rapidjson::GenericValue<Encoding, Allocator>& rapidjson::GenericValue<Encoding, Allocator>::AddMember(rapidjson::GenericValue<Encoding, Allocator>&, rapidjson::GenericValue<Encoding, Allocator>&, Allocator&) [with Encoding = rapidjson::UTF8<>;  */
    0x0007db94 addiu a3, a3, 0x385c                                                                                                                                                                                                                                              |     a3 += aav.0x0000385c;
    0x0007db98 addiu a2, zero, 0x504                                                                                                                                                                                                                                             |     a2 = 0x504;
    0x0007db9c lw a1, -0x7fcc(gp)                                                                                                                                                                                                                                                |     a1 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0007dba0 addiu a1, a1, 0x2aa8                                                                                                                                                                                                                                              |     a1 += 0x2aa8;
    0x0007dba4 lw a0, -0x7fcc(gp)                                                                                                                                                                                                                                                |     a0 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* str.IsObject__ */
    0x0007dba8 addiu a0, a0, 0x2b0c                                                                                                                                                                                                                                              |     a0 += 0x2b0c;
    0x0007dbac lw t9, -0x7644(gp)                                                                                                                                                                                                                                                |     t9 = sym.imp.__assert_fail;
    0x0007dbb0 jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007dbb4 nop                                                                                                                                                                                                                                                               |     
                                                                                                                                                                                                                                                                                 | label_88:
    0x0007dbb8 sll v0, s7, 5                                                                                                                                                                                                                                                     |     v0 = s7 << 5;
                                                                                                                                                                                                                                                                                 |     if (s6 != 0) {
    0x0007dbbc bnez s6, 0x7ef48                                                                                                                                                                                                                                                  |         goto label_91;
                                                                                                                                                                                                                                                                                 |     }
    0x0007dbc0 move s3, s6                                                                                                                                                                                                                                                       |     s3 = s6;
                                                                                                                                                                                                                                                                                 |     if (v0 == 0) {
    0x0007dbc4 beqz v0, 0x7dcc4                                                                                                                                                                                                                                                  |         goto label_22;
                                                                                                                                                                                                                                                                                 |     }
    0x0007dbc8 move s1, v0                                                                                                                                                                                                                                                       |     s1 = v0;
    0x0007dbcc b 0x7dbd8                                                                                                                                                                                                                                                         |     goto label_92;
                                                                                                                                                                                                                                                                                 | label_45:
    0x0007dbd0 addiu v0, zero, 0x200                                                                                                                                                                                                                                             |     v0 = aav.0x00000200;
    0x0007dbd4 move s1, v0                                                                                                                                                                                                                                                       |     s1 = v0;
                                                                                                                                                                                                                                                                                 | label_92:
    0x0007dbd8 lw v1, (s0)                                                                                                                                                                                                                                                       |     v1 = *(s0);
                                                                                                                                                                                                                                                                                 |     if (v1 != 0) {
    0x0007dbdc beql v1, zero, 0x7dc00                                                                                                                                                                                                                                            |         
    0x0007dbe0 lw v0, 4(s0)                                                                                                                                                                                                                                                      |         v0 = *((s0 + 1));
    0x0007dbe4 lw v0, 4(v1)                                                                                                                                                                                                                                                      |         v0 = *((v1 + 1));
    0x0007dbe8 addu v0, s1, v0                                                                                                                                                                                                                                                   |         v0 = s1 + v0;
    0x0007dbec lw v1, (v1)                                                                                                                                                                                                                                                       |         v1 = *(v1);
    0x0007dbf0 sltu v0, v1, v0                                                                                                                                                                                                                                                   |         v0 = (v1 < v0) ? 1 : 0;
                                                                                                                                                                                                                                                                                 |         if (v0 == 0) {
    0x0007dbf4 beql v0, zero, 0x7dc50                                                                                                                                                                                                                                            |             goto label_93;
                                                                                                                                                                                                                                                                                 |         }
    0x0007dbf8 lw v1, (s0)                                                                                                                                                                                                                                                       |         v1 = *(s0);
    0x0007dbfc lw v0, 4(s0)                                                                                                                                                                                                                                                      |         v0 = *((s0 + 1));
                                                                                                                                                                                                                                                                                 |     }
    0x0007dc00 sltu s3, v0, s1                                                                                                                                                                                                                                                   |     s3 = (v0 < s1) ? 1 : 0;
                                                                                                                                                                                                                                                                                 |     if (s3 == 0) {
    0x0007dc04 movn v0, s1, s3                                                                                                                                                                                                                                                   |         v0 = s1;
                                                                                                                                                                                                                                                                                 |     }
    0x0007dc08 move s3, v0                                                                                                                                                                                                                                                       |     s3 = v0;
    0x0007dc0c lw v0, 0xc(s0)                                                                                                                                                                                                                                                    |     v0 = *((s0 + 3));
    0x0007dc10 addiu a0, zero, 1                                                                                                                                                                                                                                                 |     a0 = 1;
    0x0007dc14 beqz v0, 0x7dc68                                                                                                                                                                                                                                                  |     
                                                                                                                                                                                                                                                                                 |     while (1) {
    0x0007dc18 addiu a0, s3, 0x10                                                                                                                                                                                                                                                |         a0 = s3 + 0x10;
    0x0007dc1c lw t9, -0x73c8(gp)                                                                                                                                                                                                                                                |         t9 = sym.imp.malloc;
                                                                                                                                                                                                                                                                                 |         if (a0 == 0) {
    0x0007dc20 beqz a0, 0x7ec34                                                                                                                                                                                                                                                  |             goto label_94;
                                                                                                                                                                                                                                                                                 |         }
    0x0007dc24 jalr t9                                                                                                                                                                                                                                                           |         t9 ();
    0x0007dc28 nop                                                                                                                                                                                                                                                               |         
    0x0007dc2c lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |         gp = *(var_18h);
                                                                                                                                                                                                                                                                                 |         if (v0 == 0) {
    0x0007dc30 beql v0, zero, 0x7dcc4                                                                                                                                                                                                                                            |             goto label_22;
                                                                                                                                                                                                                                                                                 |         }
    0x0007dc34 move s3, zero                                                                                                                                                                                                                                                     |         s3 = 0;
    0x0007dc38 sw s3, (v0)                                                                                                                                                                                                                                                       |         *(v0) = s3;
    0x0007dc3c sw zero, 4(v0)                                                                                                                                                                                                                                                    |         *((v0 + 1)) = 0;
    0x0007dc40 lw v1, (s0)                                                                                                                                                                                                                                                       |         v1 = *(s0);
    0x0007dc44 sw v1, 8(v0)                                                                                                                                                                                                                                                      |         *((v0 + 2)) = v1;
    0x0007dc48 sw v0, (s0)                                                                                                                                                                                                                                                       |         *(s0) = v0;
    0x0007dc4c lw v1, (s0)                                                                                                                                                                                                                                                       |         v1 = *(s0);
                                                                                                                                                                                                                                                                                 | label_93:
    0x0007dc50 lw v0, 4(v1)                                                                                                                                                                                                                                                      |         v0 = *((v1 + 1));
    0x0007dc54 addiu s3, v0, 0x10                                                                                                                                                                                                                                                |         s3 = v0 + 0x10;
    0x0007dc58 addu s3, v1, s3                                                                                                                                                                                                                                                   |         s3 = v1 + s3;
    0x0007dc5c addu v0, s1, v0                                                                                                                                                                                                                                                   |         v0 = s1 + v0;
    0x0007dc60 sw v0, 4(v1)                                                                                                                                                                                                                                                      |         *((v1 + 1)) = v0;
    0x0007dc64 b 0x7dcc4                                                                                                                                                                                                                                                         |         goto label_22;
    0x0007dc68 lw t9, -0x7310(gp)                                                                                                                                                                                                                                                |         t9 = *((gp - 7364));
    0x0007dc6c jalr t9                                                                                                                                                                                                                                                           |         t9 ();
    0x0007dc70 nop                                                                                                                                                                                                                                                               |         
    0x0007dc74 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |         gp = *(var_18h);
    0x0007dc78 sw v0, 0xc(s0)                                                                                                                                                                                                                                                    |         *((s0 + 3)) = v0;
    0x0007dc7c sw v0, 0x10(s0)                                                                                                                                                                                                                                                   |         *((s0 + 4)) = v0;
    0x0007dc80 b 0x7dc18                                                                                                                                                                                                                                                         |         
                                                                                                                                                                                                                                                                                 |     }
                                                                                                                                                                                                                                                                                 | label_46:
    0x0007dc84 subu a1, v1, s1                                                                                                                                                                                                                                                   |     __asm ("subu a1, v1, s1");
    0x0007dc88 addu a1, a1, v0                                                                                                                                                                                                                                                   |     a1 += v0;
    0x0007dc8c lw a2, (a0)                                                                                                                                                                                                                                                       |     a2 = *(a0);
    0x0007dc90 sltu a2, a2, a1                                                                                                                                                                                                                                                   |     a2 = (a2 < a1) ? 1 : 0;
    0x0007dc94 addu v0, v1, v0                                                                                                                                                                                                                                                   |     v0 = v1 + v0;
                                                                                                                                                                                                                                                                                 |     if (a2 != 0) {
    0x0007dc98 bnez a2, 0x7ef80                                                                                                                                                                                                                                                  |         goto label_95;
                                                                                                                                                                                                                                                                                 |     }
    0x0007dc9c sw a1, 4(a0)                                                                                                                                                                                                                                                      |     *((a0 + 1)) = a1;
    0x0007dca0 move s3, s6                                                                                                                                                                                                                                                       |     s3 = s6;
    0x0007dca4 b 0x7dcc4                                                                                                                                                                                                                                                         |     goto label_22;
                                                                                                                                                                                                                                                                                 | label_47:
    0x0007dca8 lw t9, -0x7310(gp)                                                                                                                                                                                                                                                |     t9 = *((gp - 7364));
    0x0007dcac jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007dcb0 nop                                                                                                                                                                                                                                                               |     
    0x0007dcb4 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |     gp = *(var_18h);
    0x0007dcb8 sw v0, 0xc(s0)                                                                                                                                                                                                                                                    |     *((s0 + 3)) = v0;
    0x0007dcbc sw v0, 0x10(s0)                                                                                                                                                                                                                                                   |     *((s0 + 4)) = v0;
    0x0007dcc0 b 0x7efa8                                                                                                                                                                                                                                                         |     goto label_96;
                                                                                                                                                                                                                                                                                 | label_22:
    0x0007dcc4 sw s3, 0xd0(sp)                                                                                                                                                                                                                                                   |     *(var_d0h) = s3;
                                                                                                                                                                                                                                                                                 | label_49:
    0x0007dcc8 sw s7, 0xcc(sp)                                                                                                                                                                                                                                                   |     *(var_cch) = s7;
    0x0007dccc b 0x7da2c                                                                                                                                                                                                                                                         |     goto label_14;
                                                                                                                                                                                                                                                                                 | label_89:
    0x0007dcd0 lw a3, -0x7f84(gp)                                                                                                                                                                                                                                                |     a3 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* esilref: 'Allocator& rapidjson::GenericDocument<Encoding, Allocator, StackAllocator>::GetAllocator() [with Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; StackAllocator = rapidjson::CrtAllocator]' */
    0x0007dcd4 addiu a3, a3, 0x3784                                                                                                                                                                                                                                              |     a3 += aav.0x00003784;
    0x0007dcd8 addiu a2, zero, 0x969                                                                                                                                                                                                                                             |     a2 = 0x969;
    0x0007dcdc lw a1, -0x7fcc(gp)                                                                                                                                                                                                                                                |     a1 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0007dce0 addiu a1, a1, 0x2aa8                                                                                                                                                                                                                                              |     a1 += 0x2aa8;
    0x0007dce4 lw a0, -0x7fcc(gp)                                                                                                                                                                                                                                                |     a0 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* str.allocator_ */
    0x0007dce8 addiu a0, a0, 0x2d78                                                                                                                                                                                                                                              |     a0 += 0x2d78;
    0x0007dcec lw t9, -0x7644(gp)                                                                                                                                                                                                                                                |     t9 = sym.imp.__assert_fail;
    0x0007dcf0 jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007dcf4 nop                                                                                                                                                                                                                                                               |     
                                                                                                                                                                                                                                                                                 | label_90:
    0x0007dcf8 addiu a1, sp, 0xe0                                                                                                                                                                                                                                                |     a1 = sp + 0xe0;
    0x0007dcfc lw a0, 0x30(sp)                                                                                                                                                                                                                                                   |     a0 = *(var_30h);
    0x0007dd00 lw t9, -0x7750(gp)                                                                                                                                                                                                                                                |     t9 = *(gp);
    0x0007dd04 bal 0x7b740                                                                                                                                                                                                                                                       |     method ();
    0x0007dd08 nop                                                                                                                                                                                                                                                               |     
    0x0007dd0c lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |     gp = *(var_18h);
    0x0007dd10 lw a0, 0x150(sp)                                                                                                                                                                                                                                                  |     a0 = *(var_150h);
                                                                                                                                                                                                                                                                                 | label_79:
    0x0007dd14 addiu v0, sp, 0x158                                                                                                                                                                                                                                               |     v0 = sp + aav.0x00000158;
    0x0007dd18 lw t9, -0x7488(gp)                                                                                                                                                                                                                                                |     t9 = *((gp - 7458));
                                                                                                                                                                                                                                                                                 |     if (a0 == v0) {
    0x0007dd1c beq a0, v0, 0x7e8c8                                                                                                                                                                                                                                               |         goto label_97;
                                                                                                                                                                                                                                                                                 |     }
    0x0007dd20 jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007dd24 nop                                                                                                                                                                                                                                                               |     
    0x0007dd28 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |     gp = *(var_18h);
    0x0007dd2c lw a0, 0x2c(sp)                                                                                                                                                                                                                                                   |     a0 = *(var_2ch);
    0x0007dd30 b 0x7e8cc                                                                                                                                                                                                                                                         |     goto label_98;
                                                                                                                                                                                                                                                                                 | label_55:
    0x0007dd34 sw zero, 0x70(sp)                                                                                                                                                                                                                                                 |     *(var_70h) = 0;
    0x0007dd38 sw zero, 0x74(sp)                                                                                                                                                                                                                                                 |     *(var_74h) = 0;
    0x0007dd3c sw zero, 0x78(sp)                                                                                                                                                                                                                                                 |     *(var_78h) = 0;
    0x0007dd40 sh zero, 0x7c(sp)                                                                                                                                                                                                                                                 |     *(var_7ch) = 0;
    0x0007dd44 addiu v0, zero, 0x1c05                                                                                                                                                                                                                                            |     v0 = 0x1c05;
    0x0007dd48 sh v0, 0x7e(sp)                                                                                                                                                                                                                                                   |     *(var_7eh) = v0;
    0x0007dd4c addiu v0, zero, 0xd                                                                                                                                                                                                                                               |     v0 = 0xd;
    0x0007dd50 sb v0, 0x7d(sp)                                                                                                                                                                                                                                                   |     *(var_7dh) = v0;
    0x0007dd54 lw s0, 0xf0(sp)                                                                                                                                                                                                                                                   |     s0 = *(var_f0h);
    0x0007dd58 lw s2, (fp)                                                                                                                                                                                                                                                       |     s2 = *(fp);
                                                                                                                                                                                                                                                                                 |     if (s0 == 0) {
    0x0007dd5c beqz s0, 0x7e290                                                                                                                                                                                                                                                  |         goto label_99;
                                                                                                                                                                                                                                                                                 |     }
    0x0007dd60 move a0, s2                                                                                                                                                                                                                                                       |     a0 = s2;
                                                                                                                                                                                                                                                                                 |     if (s2 == 0) {
    0x0007dd64 beqz s2, 0x7e2b8                                                                                                                                                                                                                                                  |         goto label_100;
                                                                                                                                                                                                                                                                                 |     }
    0x0007dd68 lw t9, -0x73cc(gp)                                                                                                                                                                                                                                                |     t9 = sym.imp.strlen;
    0x0007dd6c jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007dd70 nop                                                                                                                                                                                                                                                               |     
    0x0007dd74 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |     gp = *(var_18h);
    0x0007dd78 move s1, v0                                                                                                                                                                                                                                                       |     s1 = v0;
    0x0007dd7c sltiu v0, v0, 0xe                                                                                                                                                                                                                                                 |     v0 = (v0 < 0xe) ? 1 : 0;
    0x0007dd80 addiu v0, zero, 0x1c05                                                                                                                                                                                                                                            |     v0 = 0x1c05;
                                                                                                                                                                                                                                                                                 |     if (v0 == 0) {
    0x0007dd84 beqz v0, 0x7e2e0                                                                                                                                                                                                                                                  |         goto label_101;
                                                                                                                                                                                                                                                                                 |     }
    0x0007dd88 sh v0, 0x7e(sp)                                                                                                                                                                                                                                                   |     *(var_7eh) = v0;
    0x0007dd8c addiu v0, zero, 0xd                                                                                                                                                                                                                                               |     v0 = 0xd;
    0x0007dd90 subu v0, v0, s1                                                                                                                                                                                                                                                   |     __asm ("subu v0, v0, s1");
    0x0007dd94 sb v0, 0x7d(sp)                                                                                                                                                                                                                                                   |     *(var_7dh) = v0;
    0x0007dd98 addiu s0, sp, 0x70                                                                                                                                                                                                                                                |     s0 = sp + 0x70;
                                                                                                                                                                                                                                                                                 |     do {
    0x0007dd9c move a2, s1                                                                                                                                                                                                                                                       |         a2 = s1;
    0x0007dda0 move a1, s2                                                                                                                                                                                                                                                       |         a1 = s2;
    0x0007dda4 move a0, s0                                                                                                                                                                                                                                                       |         a0 = s0;
    0x0007dda8 lw t9, -0x73b4(gp)                                                                                                                                                                                                                                                |         t9 = sym.imp.memcpy;
    0x0007ddac jalr t9                                                                                                                                                                                                                                                           |         t9 ();
    0x0007ddb0 nop                                                                                                                                                                                                                                                               |         
    0x0007ddb4 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |         gp = *(var_18h);
    0x0007ddb8 addu s0, s0, s1                                                                                                                                                                                                                                                   |         s0 += s1;
    0x0007ddbc sb zero, (s0)                                                                                                                                                                                                                                                     |         *(s0) = 0;
    0x0007ddc0 lw s1, 0xf0(sp)                                                                                                                                                                                                                                                   |         s1 = *(var_f0h);
    0x0007ddc4 addiu v0, zero, 3                                                                                                                                                                                                                                                 |         v0 = 3;
                                                                                                                                                                                                                                                                                 |         if (s1 == 0) {
    0x0007ddc8 beqz s1, 0x7e3a4                                                                                                                                                                                                                                                  |             goto label_102;
                                                                                                                                                                                                                                                                                 |         }
    0x0007ddcc sw zero, 0x84(sp)                                                                                                                                                                                                                                                 |         *(var_84h) = 0;
    0x0007ddd0 sw zero, 0x88(sp)                                                                                                                                                                                                                                                 |         *(var_88h) = 0;
    0x0007ddd4 sh zero, 0x8c(sp)                                                                                                                                                                                                                                                 |         *(var_8ch) = 0;
    0x0007ddd8 lhu v1, 0x126(sp)                                                                                                                                                                                                                                                 |         v1 = *(var_126h);
    0x0007dddc lw s0, 0x11c(sp)                                                                                                                                                                                                                                                  |         s0 = *(var_11ch);
                                                                                                                                                                                                                                                                                 |         if (v1 != v0) {
    0x0007dde0 bne v1, v0, 0x7e3cc                                                                                                                                                                                                                                               |             goto label_103;
                                                                                                                                                                                                                                                                                 |         }
    0x0007dde4 lw v0, 0x118(sp)                                                                                                                                                                                                                                                  |         v0 = *(var_118h);
    0x0007dde8 sltu v0, v0, s0                                                                                                                                                                                                                                                   |         v0 = (v0 < s0) ? 1 : 0;
    0x0007ddec lw v1, 0x120(sp)                                                                                                                                                                                                                                                  |         v1 = *(var_120h);
                                                                                                                                                                                                                                                                                 |         if (v0 != 0) {
    0x0007ddf0 bnel v0, zero, 0x7de18                                                                                                                                                                                                                                            |             
    0x0007ddf4 lw s4, 0x120(sp)                                                                                                                                                                                                                                                  |             s4 = *(var_120h);
                                                                                                                                                                                                                                                                                 |             if (s0 == 0) {
    0x0007ddf8 beqz s0, 0x7ee5c                                                                                                                                                                                                                                                  |                 goto label_104;
                                                                                                                                                                                                                                                                                 |             }
    0x0007ddfc addiu s2, s0, 1                                                                                                                                                                                                                                                   |             s2 = s0 + 1;
    0x0007de00 srl s2, s2, 1                                                                                                                                                                                                                                                     |             s2 >>= 1;
    0x0007de04 addu s2, s2, s0                                                                                                                                                                                                                                                   |             s2 += s0;
    0x0007de08 sltu v0, s0, s2                                                                                                                                                                                                                                                   |             v0 = (s0 < s2) ? 1 : 0;
                                                                                                                                                                                                                                                                                 |             if (v0 != 0) {
    0x0007de0c bnez v0, 0x7e3f4                                                                                                                                                                                                                                                  |                 goto label_105;
                                                                                                                                                                                                                                                                                 |             }
    0x0007de10 nop                                                                                                                                                                                                                                                               |             
                                                                                                                                                                                                                                                                                 | label_16:
    0x0007de14 lw v1, 0x120(sp)                                                                                                                                                                                                                                                  |             v1 = *(var_120h);
                                                                                                                                                                                                                                                                                 |         }
    0x0007de18 lw v0, 0x118(sp)                                                                                                                                                                                                                                                  |         v0 = *(var_118h);
    0x0007de1c sll v0, v0, 5                                                                                                                                                                                                                                                     |         v0 <<= 5;
    0x0007de20 addu v0, v1, v0                                                                                                                                                                                                                                                   |         v0 = v1 + v0;
    0x0007de24 addiu a0, zero, 0x405                                                                                                                                                                                                                                             |         a0 = 0x405;
    0x0007de28 sh a0, 0x8e(sp)                                                                                                                                                                                                                                                   |         *(var_8eh) = a0;
    0x0007de2c addiu a0, zero, 4                                                                                                                                                                                                                                                 |         a0 = 4;
    0x0007de30 sw a0, (v0)                                                                                                                                                                                                                                                       |         *(v0) = a0;
    0x0007de34 lw a0, 0x84(sp)                                                                                                                                                                                                                                                   |         a0 = *(var_84h);
    0x0007de38 sw a0, 4(v0)                                                                                                                                                                                                                                                      |         *((v0 + 1)) = a0;
    0x0007de3c lw a0, -0x7fcc(gp)                                                                                                                                                                                                                                                |         a0 = *(gp);
                                                                                                                                                                                                                                                                                 |         /* str.name */
    0x0007de40 addiu a0, a0, 0x7bf0                                                                                                                                                                                                                                              |         a0 += 0x7bf0;
    0x0007de44 sw a0, 8(v0)                                                                                                                                                                                                                                                      |         *((v0 + 2)) = a0;
    0x0007de48 lw a0, 0x8c(sp)                                                                                                                                                                                                                                                   |         a0 = *(var_8ch);
    0x0007de4c sw a0, 0xc(v0)                                                                                                                                                                                                                                                    |         *((v0 + 3)) = a0;
    0x0007de50 lw a0, 0x118(sp)                                                                                                                                                                                                                                                  |         a0 = *(var_118h);
    0x0007de54 sll v0, a0, 5                                                                                                                                                                                                                                                     |         v0 = a0 << 5;
    0x0007de58 addu v0, v1, v0                                                                                                                                                                                                                                                   |         v0 = v1 + v0;
    0x0007de5c lw v1, 0x70(sp)                                                                                                                                                                                                                                                   |         v1 = *(var_70h);
    0x0007de60 sw v1, 0x10(v0)                                                                                                                                                                                                                                                   |         *((v0 + 4)) = v1;
    0x0007de64 lw v1, 0x74(sp)                                                                                                                                                                                                                                                   |         v1 = *(var_74h);
    0x0007de68 sw v1, 0x14(v0)                                                                                                                                                                                                                                                   |         *((v0 + 5)) = v1;
    0x0007de6c lw v1, 0x78(sp)                                                                                                                                                                                                                                                   |         v1 = *(var_78h);
    0x0007de70 sw v1, 0x18(v0)                                                                                                                                                                                                                                                   |         *((v0 + 6)) = v1;
    0x0007de74 lw v1, 0x7c(sp)                                                                                                                                                                                                                                                   |         v1 = *(var_7ch);
    0x0007de78 sw v1, 0x1c(v0)                                                                                                                                                                                                                                                   |         *((v0 + 7)) = v1;
    0x0007de7c sh zero, 0x7e(sp)                                                                                                                                                                                                                                                 |         *(var_7eh) = 0;
    0x0007de80 addiu a0, a0, 1                                                                                                                                                                                                                                                   |         a0++;
    0x0007de84 sw a0, 0x118(sp)                                                                                                                                                                                                                                                  |         *(var_118h) = a0;
    0x0007de88 sw zero, 0x80(sp)                                                                                                                                                                                                                                                 |         *(var_80h) = 0;
    0x0007de8c sw zero, 0x84(sp)                                                                                                                                                                                                                                                 |         *(var_84h) = 0;
    0x0007de90 sw zero, 0x88(sp)                                                                                                                                                                                                                                                 |         *(var_88h) = 0;
    0x0007de94 sh zero, 0x8c(sp)                                                                                                                                                                                                                                                 |         *(var_8ch) = 0;
    0x0007de98 lw v0, 0x28(sp)                                                                                                                                                                                                                                                   |         v0 = *(var_28h);
    0x0007de9c lw s1, (v0)                                                                                                                                                                                                                                                       |         s1 = *(v0);
    0x0007dea0 move a0, s1                                                                                                                                                                                                                                                       |         a0 = s1;
                                                                                                                                                                                                                                                                                 |         if (s1 == 0) {
    0x0007dea4 beqz s1, 0x7e510                                                                                                                                                                                                                                                  |             goto label_106;
                                                                                                                                                                                                                                                                                 |         }
    0x0007dea8 lw t9, -0x73cc(gp)                                                                                                                                                                                                                                                |         t9 = sym.imp.strlen;
    0x0007deac jalr t9                                                                                                                                                                                                                                                           |         t9 ();
    0x0007deb0 nop                                                                                                                                                                                                                                                               |         
    0x0007deb4 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |         gp = *(var_18h);
    0x0007deb8 lw s0, 0xf0(sp)                                                                                                                                                                                                                                                   |         s0 = *(var_f0h);
    0x0007debc move s2, v0                                                                                                                                                                                                                                                       |         s2 = v0;
                                                                                                                                                                                                                                                                                 |         if (s0 == 0) {
    0x0007dec0 beqz s0, 0x7e538                                                                                                                                                                                                                                                  |             goto label_107;
                                                                                                                                                                                                                                                                                 |         }
    0x0007dec4 sw zero, 0x94(sp)                                                                                                                                                                                                                                                 |         *(var_94h) = 0;
    0x0007dec8 sw zero, 0x98(sp)                                                                                                                                                                                                                                                 |         *(var_98h) = 0;
    0x0007decc sh zero, 0x9c(sp)                                                                                                                                                                                                                                                 |         *(var_9ch) = 0;
    0x0007ded0 sw zero, 0xa4(sp)                                                                                                                                                                                                                                                 |         *(var_a4h) = 0;
    0x0007ded4 sw zero, 0xa8(sp)                                                                                                                                                                                                                                                 |         *(var_a8h) = 0;
    0x0007ded8 sh zero, 0xac(sp)                                                                                                                                                                                                                                                 |         *(var_ach) = 0;
    0x0007dedc lw v0, (s0)                                                                                                                                                                                                                                                       |         v0 = *(s0);
                                                                                                                                                                                                                                                                                 |         if (v0 != 0) {
    0x0007dee0 beql v0, zero, 0x7df04                                                                                                                                                                                                                                            |             
    0x0007dee4 lw v0, 4(s0)                                                                                                                                                                                                                                                      |             v0 = *((s0 + 1));
    0x0007dee8 lw v1, 4(v0)                                                                                                                                                                                                                                                      |             v1 = *((v0 + 1));
    0x0007deec addiu v1, v1, 0x200                                                                                                                                                                                                                                               |             v1 += aav.0x00000200;
    0x0007def0 lw v0, (v0)                                                                                                                                                                                                                                                       |             v0 = *(v0);
    0x0007def4 sltu v0, v0, v1                                                                                                                                                                                                                                                   |             v0 = (v0 < v1) ? 1 : 0;
                                                                                                                                                                                                                                                                                 |             if (v0 == 0) {
    0x0007def8 beql v0, zero, 0x7df54                                                                                                                                                                                                                                            |                 goto label_108;
                                                                                                                                                                                                                                                                                 |             }
    0x0007defc lw v1, (s0)                                                                                                                                                                                                                                                       |             v1 = *(s0);
    0x0007df00 lw v0, 4(s0)                                                                                                                                                                                                                                                      |             v0 = *((s0 + 1));
                                                                                                                                                                                                                                                                                 |         }
    0x0007df04 sltiu s3, v0, 0x200                                                                                                                                                                                                                                               |         s3 = (v0 < aav.0x00000200) ? 1 : 0;
    0x0007df08 addiu v1, zero, 0x200                                                                                                                                                                                                                                             |         v1 = aav.0x00000200;
                                                                                                                                                                                                                                                                                 |         if (s3 != 0) {
    0x0007df0c movz v1, v0, s3                                                                                                                                                                                                                                                   |             v1 = v0;
                                                                                                                                                                                                                                                                                 |         }
    0x0007df10 lw v0, 0xc(s0)                                                                                                                                                                                                                                                    |         v0 = *((s0 + 3));
    0x0007df14 move s3, v1                                                                                                                                                                                                                                                       |         s3 = v1;
                                                                                                                                                                                                                                                                                 |         if (v0 == 0) {
    0x0007df18 beqz v0, 0x7e560                                                                                                                                                                                                                                                  |             goto label_109;
                                                                                                                                                                                                                                                                                 |         }
                                                                                                                                                                                                                                                                                 | label_17:
    0x0007df1c addiu a0, s3, 0x10                                                                                                                                                                                                                                                |         a0 = s3 + 0x10;
    0x0007df20 lw t9, -0x73c8(gp)                                                                                                                                                                                                                                                |         t9 = sym.imp.malloc;
                                                                                                                                                                                                                                                                                 |         if (a0 == 0) {
    0x0007df24 beqz a0, 0x7ec74                                                                                                                                                                                                                                                  |             goto label_110;
                                                                                                                                                                                                                                                                                 |         }
    0x0007df28 jalr t9                                                                                                                                                                                                                                                           |         t9 ();
    0x0007df2c nop                                                                                                                                                                                                                                                               |         
    0x0007df30 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |         gp = *(var_18h);
                                                                                                                                                                                                                                                                                 |         if (v0 != 0) {
    0x0007df34 beql v0, zero, 0x7df68                                                                                                                                                                                                                                            |             
    0x0007df38 move s0, zero                                                                                                                                                                                                                                                     |             s0 = 0;
    0x0007df3c sw s3, (v0)                                                                                                                                                                                                                                                       |             *(v0) = s3;
    0x0007df40 sw zero, 4(v0)                                                                                                                                                                                                                                                    |             *((v0 + 1)) = 0;
    0x0007df44 lw v1, (s0)                                                                                                                                                                                                                                                       |             v1 = *(s0);
    0x0007df48 sw v1, 8(v0)                                                                                                                                                                                                                                                      |             *((v0 + 2)) = v1;
    0x0007df4c sw v0, (s0)                                                                                                                                                                                                                                                       |             *(s0) = v0;
    0x0007df50 lw v1, (s0)                                                                                                                                                                                                                                                       |             v1 = *(s0);
                                                                                                                                                                                                                                                                                 | label_108:
    0x0007df54 lw v0, 4(v1)                                                                                                                                                                                                                                                      |             v0 = *((v1 + 1));
    0x0007df58 addiu s0, v0, 0x10                                                                                                                                                                                                                                                |             s0 = v0 + 0x10;
    0x0007df5c addu s0, v1, s0                                                                                                                                                                                                                                                   |             s0 = v1 + s0;
    0x0007df60 addiu v0, v0, 0x200                                                                                                                                                                                                                                               |             v0 += aav.0x00000200;
    0x0007df64 sw v0, 4(v1)                                                                                                                                                                                                                                                      |             *((v1 + 1)) = v0;
                                                                                                                                                                                                                                                                                 |         }
                                                                                                                                                                                                                                                                                 | label_27:
    0x0007df68 addiu a0, zero, 6                                                                                                                                                                                                                                                 |         a0 = 6;
    0x0007df6c sw a0, 0xa0(sp)                                                                                                                                                                                                                                                   |         *(var_a0h) = a0;
    0x0007df70 lw v0, -0x7fcc(gp)                                                                                                                                                                                                                                                |         v0 = *(gp);
                                                                                                                                                                                                                                                                                 |         /* str.locale */
    0x0007df74 addiu v0, v0, 0x48e4                                                                                                                                                                                                                                              |         v0 += 0x48e4;
    0x0007df78 sw v0, 0xa8(sp)                                                                                                                                                                                                                                                   |         *(var_a8h) = v0;
    0x0007df7c addiu v1, zero, 0x405                                                                                                                                                                                                                                             |         v1 = 0x405;
    0x0007df80 sh v1, 0xae(sp)                                                                                                                                                                                                                                                   |         *(var_aeh) = v1;
    0x0007df84 sw a0, (s0)                                                                                                                                                                                                                                                       |         *(s0) = a0;
    0x0007df88 lw a0, 0xa4(sp)                                                                                                                                                                                                                                                   |         a0 = *(var_a4h);
    0x0007df8c sw a0, 4(s0)                                                                                                                                                                                                                                                      |         *((s0 + 1)) = a0;
    0x0007df90 sw v0, 8(s0)                                                                                                                                                                                                                                                      |         *((s0 + 2)) = v0;
    0x0007df94 lw v0, 0xac(sp)                                                                                                                                                                                                                                                   |         v0 = *(var_ach);
    0x0007df98 sw v0, 0xc(s0)                                                                                                                                                                                                                                                    |         *((s0 + 3)) = v0;
    0x0007df9c sw s2, 0x90(sp)                                                                                                                                                                                                                                                   |         *(var_90h) = s2;
    0x0007dfa0 sw s1, 0x98(sp)                                                                                                                                                                                                                                                   |         *(var_98h) = s1;
    0x0007dfa4 sh v1, 0x9e(sp)                                                                                                                                                                                                                                                   |         *(var_9eh) = v1;
    0x0007dfa8 sw s2, 0x10(s0)                                                                                                                                                                                                                                                   |         *((s0 + 4)) = s2;
    0x0007dfac lw v0, 0x94(sp)                                                                                                                                                                                                                                                   |         v0 = *(var_94h);
    0x0007dfb0 sw v0, 0x14(s0)                                                                                                                                                                                                                                                   |         *((s0 + 5)) = v0;
    0x0007dfb4 sw s1, 0x18(s0)                                                                                                                                                                                                                                                   |         *((s0 + 6)) = s1;
    0x0007dfb8 lw v0, 0x9c(sp)                                                                                                                                                                                                                                                   |         v0 = *(var_9ch);
    0x0007dfbc sw v0, 0x1c(s0)                                                                                                                                                                                                                                                   |         *((s0 + 7)) = v0;
    0x0007dfc0 lw v0, 0x34(sp)                                                                                                                                                                                                                                                   |         v0 = *(var_34h);
    0x0007dfc4 lw s1, (v0)                                                                                                                                                                                                                                                       |         s1 = *(v0);
    0x0007dfc8 move a0, s1                                                                                                                                                                                                                                                       |         a0 = s1;
                                                                                                                                                                                                                                                                                 |         if (s1 == 0) {
    0x0007dfcc beqz s1, 0x7e580                                                                                                                                                                                                                                                  |             goto label_111;
                                                                                                                                                                                                                                                                                 |         }
    0x0007dfd0 lw t9, -0x73cc(gp)                                                                                                                                                                                                                                                |         t9 = sym.imp.strlen;
    0x0007dfd4 jalr t9                                                                                                                                                                                                                                                           |         t9 ();
    0x0007dfd8 nop                                                                                                                                                                                                                                                               |         
    0x0007dfdc lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |         gp = *(var_18h);
    0x0007dfe0 lw s2, 0xf0(sp)                                                                                                                                                                                                                                                   |         s2 = *(var_f0h);
    0x0007dfe4 addiu a0, zero, 0x405                                                                                                                                                                                                                                             |         a0 = 0x405;
                                                                                                                                                                                                                                                                                 |         if (s2 == 0) {
    0x0007dfe8 beqz s2, 0x7e5a8                                                                                                                                                                                                                                                  |             goto label_112;
                                                                                                                                                                                                                                                                                 |         }
    0x0007dfec sw zero, 0xcc(sp)                                                                                                                                                                                                                                                 |         *(var_cch) = 0;
    0x0007dff0 sh zero, 0xd4(sp)                                                                                                                                                                                                                                                 |         *(var_d4h) = 0;
    0x0007dff4 sh zero, 0x15c(sp)                                                                                                                                                                                                                                                |         *(var_15ch) = 0;
    0x0007dff8 sh a0, 0x15e(sp)                                                                                                                                                                                                                                                  |         *(var_15eh) = a0;
    0x0007dffc lw a1, 0x15c(sp)                                                                                                                                                                                                                                                  |         a1 = *(var_15ch);
    0x0007e000 addiu v1, zero, 8                                                                                                                                                                                                                                                 |         v1 = 8;
    0x0007e004 sw v1, 0x20(s0)                                                                                                                                                                                                                                                   |         *((s0 + 8)) = v1;
    0x0007e008 sw zero, 0x24(s0)                                                                                                                                                                                                                                                 |         *((s0 + 9)) = 0;
    0x0007e00c lw v1, -0x7f84(gp)                                                                                                                                                                                                                                                |         v1 = *(gp);
                                                                                                                                                                                                                                                                                 |         /* str.language */
    0x0007e010 addiu v1, v1, 0x3550                                                                                                                                                                                                                                              |         v1 += 0x3550;
    0x0007e014 sw v1, 0x28(s0)                                                                                                                                                                                                                                                   |         *((s0 + 10)) = v1;
    0x0007e018 sw a1, 0x2c(s0)                                                                                                                                                                                                                                                   |         *((s0 + 11)) = a1;
    0x0007e01c sw v0, 0xc8(sp)                                                                                                                                                                                                                                                   |         *(var_c8h) = v0;
    0x0007e020 sw s1, 0xd0(sp)                                                                                                                                                                                                                                                   |         *(var_d0h) = s1;
    0x0007e024 sh a0, 0xd6(sp)                                                                                                                                                                                                                                                   |         *(var_d6h) = a0;
    0x0007e028 lw a0, 0xcc(sp)                                                                                                                                                                                                                                                   |         a0 = *(var_cch);
    0x0007e02c lw v1, 0xd4(sp)                                                                                                                                                                                                                                                   |         v1 = *(var_d4h);
    0x0007e030 sw v0, 0x30(s0)                                                                                                                                                                                                                                                   |         *((s0 + 12)) = v0;
    0x0007e034 sw a0, 0x34(s0)                                                                                                                                                                                                                                                   |         *((s0 + 13)) = a0;
    0x0007e038 sw s1, 0x38(s0)                                                                                                                                                                                                                                                   |         *((s0 + 14)) = s1;
    0x0007e03c sw v1, 0x3c(s0)                                                                                                                                                                                                                                                   |         *((s0 + 15)) = v1;
    0x0007e040 sw zero, 0x150(sp)                                                                                                                                                                                                                                                |         *(var_150h) = 0;
    0x0007e044 sw zero, 0x154(sp)                                                                                                                                                                                                                                                |         *(var_154h) = 0;
    0x0007e048 sw zero, 0x158(sp)                                                                                                                                                                                                                                                |         *(var_158h) = 0;
    0x0007e04c sh zero, 0x15c(sp)                                                                                                                                                                                                                                                |         *(var_15ch) = 0;
    0x0007e050 lw v0, (s2)                                                                                                                                                                                                                                                       |         v0 = *(s2);
                                                                                                                                                                                                                                                                                 |         if (v0 != 0) {
    0x0007e054 beql v0, zero, 0x7e078                                                                                                                                                                                                                                            |             
    0x0007e058 lw v0, 4(s2)                                                                                                                                                                                                                                                      |             v0 = *((s2 + 1));
    0x0007e05c lw v1, 4(v0)                                                                                                                                                                                                                                                      |             v1 = *((v0 + 1));
    0x0007e060 addiu v1, v1, 0x100                                                                                                                                                                                                                                               |             v1 += aav.0x00000100;
    0x0007e064 lw v0, (v0)                                                                                                                                                                                                                                                       |             v0 = *(v0);
    0x0007e068 sltu v0, v0, v1                                                                                                                                                                                                                                                   |             v0 = (v0 < v1) ? 1 : 0;
                                                                                                                                                                                                                                                                                 |             if (v0 == 0) {
    0x0007e06c beql v0, zero, 0x7e0c8                                                                                                                                                                                                                                            |                 goto label_113;
                                                                                                                                                                                                                                                                                 |             }
    0x0007e070 lw v1, (s2)                                                                                                                                                                                                                                                       |             v1 = *(s2);
    0x0007e074 lw v0, 4(s2)                                                                                                                                                                                                                                                      |             v0 = *((s2 + 1));
                                                                                                                                                                                                                                                                                 |         }
    0x0007e078 sltiu s1, v0, 0x100                                                                                                                                                                                                                                               |         s1 = (v0 < aav.0x00000100) ? 1 : 0;
    0x0007e07c addiu v1, zero, 0x100                                                                                                                                                                                                                                             |         v1 = aav.0x00000100;
                                                                                                                                                                                                                                                                                 |         if (s1 != 0) {
    0x0007e080 movz v1, v0, s1                                                                                                                                                                                                                                                   |             v1 = v0;
                                                                                                                                                                                                                                                                                 |         }
    0x0007e084 lw v0, 0xc(s2)                                                                                                                                                                                                                                                    |         v0 = *((s2 + 3));
    0x0007e088 move s1, v1                                                                                                                                                                                                                                                       |         s1 = v1;
                                                                                                                                                                                                                                                                                 |         if (v0 == 0) {
    0x0007e08c beqz v0, 0x7e5d0                                                                                                                                                                                                                                                  |             goto label_114;
                                                                                                                                                                                                                                                                                 |         }
                                                                                                                                                                                                                                                                                 | label_18:
    0x0007e090 addiu a0, s1, 0x10                                                                                                                                                                                                                                                |         a0 = s1 + 0x10;
    0x0007e094 lw t9, -0x73c8(gp)                                                                                                                                                                                                                                                |         t9 = sym.imp.malloc;
                                                                                                                                                                                                                                                                                 |         if (a0 == 0) {
    0x0007e098 beqz a0, 0x7ec6c                                                                                                                                                                                                                                                  |             goto label_115;
                                                                                                                                                                                                                                                                                 |         }
    0x0007e09c jalr t9                                                                                                                                                                                                                                                           |         t9 ();
    0x0007e0a0 nop                                                                                                                                                                                                                                                               |         
    0x0007e0a4 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |         gp = *(var_18h);
                                                                                                                                                                                                                                                                                 |         if (v0 != 0) {
    0x0007e0a8 beql v0, zero, 0x7e0dc                                                                                                                                                                                                                                            |             
    0x0007e0ac move s1, zero                                                                                                                                                                                                                                                     |             s1 = 0;
    0x0007e0b0 sw s1, (v0)                                                                                                                                                                                                                                                       |             *(v0) = s1;
    0x0007e0b4 sw zero, 4(v0)                                                                                                                                                                                                                                                    |             *((v0 + 1)) = 0;
    0x0007e0b8 lw v1, (s2)                                                                                                                                                                                                                                                       |             v1 = *(s2);
    0x0007e0bc sw v1, 8(v0)                                                                                                                                                                                                                                                      |             *((v0 + 2)) = v1;
    0x0007e0c0 sw v0, (s2)                                                                                                                                                                                                                                                       |             *(s2) = v0;
    0x0007e0c4 lw v1, (s2)                                                                                                                                                                                                                                                       |             v1 = *(s2);
                                                                                                                                                                                                                                                                                 | label_113:
    0x0007e0c8 lw v0, 4(v1)                                                                                                                                                                                                                                                      |             v0 = *((v1 + 1));
    0x0007e0cc addiu s1, v0, 0x10                                                                                                                                                                                                                                                |             s1 = v0 + 0x10;
    0x0007e0d0 addu s1, v1, s1                                                                                                                                                                                                                                                   |             s1 = v1 + s1;
    0x0007e0d4 addiu v0, v0, 0x100                                                                                                                                                                                                                                               |             v0 += aav.0x00000100;
    0x0007e0d8 sw v0, 4(v1)                                                                                                                                                                                                                                                      |             *((v1 + 1)) = v0;
                                                                                                                                                                                                                                                                                 |         }
                                                                                                                                                                                                                                                                                 | label_26:
    0x0007e0dc addiu v1, zero, 2                                                                                                                                                                                                                                                 |         v1 = 2;
    0x0007e0e0 sw v1, 0x80(sp)                                                                                                                                                                                                                                                   |         *(var_80h) = v1;
    0x0007e0e4 addiu v0, zero, 0x10                                                                                                                                                                                                                                              |         v0 = 0x10;
    0x0007e0e8 sw v0, 0x84(sp)                                                                                                                                                                                                                                                   |         *(var_84h) = v0;
    0x0007e0ec sw s0, 0x88(sp)                                                                                                                                                                                                                                                   |         *(var_88h) = s0;
    0x0007e0f0 addiu a0, zero, 3                                                                                                                                                                                                                                                 |         a0 = 3;
    0x0007e0f4 sh a0, 0x8e(sp)                                                                                                                                                                                                                                                   |         *(var_8eh) = a0;
    0x0007e0f8 sw v1, (s1)                                                                                                                                                                                                                                                       |         *(s1) = v1;
    0x0007e0fc sw v0, 4(s1)                                                                                                                                                                                                                                                      |         *((s1 + 1)) = v0;
    0x0007e100 sw s0, 8(s1)                                                                                                                                                                                                                                                      |         *((s1 + 2)) = s0;
    0x0007e104 lw v0, 0x8c(sp)                                                                                                                                                                                                                                                   |         v0 = *(var_8ch);
    0x0007e108 sw v0, 0xc(s1)                                                                                                                                                                                                                                                    |         *((s1 + 3)) = v0;
    0x0007e10c lw s2, 0xf0(sp)                                                                                                                                                                                                                                                   |         s2 = *(var_f0h);
    0x0007e110 addiu v0, zero, 3                                                                                                                                                                                                                                                 |         v0 = 3;
                                                                                                                                                                                                                                                                                 |         if (s2 == 0) {
    0x0007e114 beqz s2, 0x7e5f0                                                                                                                                                                                                                                                  |             goto label_116;
                                                                                                                                                                                                                                                                                 |         }
    0x0007e118 sw zero, 0xcc(sp)                                                                                                                                                                                                                                                 |         *(var_cch) = 0;
    0x0007e11c sw zero, 0xd0(sp)                                                                                                                                                                                                                                                 |         *(var_d0h) = 0;
    0x0007e120 sh zero, 0xd4(sp)                                                                                                                                                                                                                                                 |         *(var_d4h) = 0;
    0x0007e124 lhu v1, 0x126(sp)                                                                                                                                                                                                                                                 |         v1 = *(var_126h);
    0x0007e128 lw v1, 0x11c(sp)                                                                                                                                                                                                                                                  |         v1 = *(var_11ch);
                                                                                                                                                                                                                                                                                 |         if (v1 != v0) {
    0x0007e12c bne v1, v0, 0x7e618                                                                                                                                                                                                                                               |             goto label_117;
                                                                                                                                                                                                                                                                                 |         }
    0x0007e130 lw v0, 0x118(sp)                                                                                                                                                                                                                                                  |         v0 = *(var_118h);
    0x0007e134 sltu v0, v0, v1                                                                                                                                                                                                                                                   |         v0 = (v0 < v1) ? 1 : 0;
    0x0007e138 lw v1, 0x120(sp)                                                                                                                                                                                                                                                  |         v1 = *(var_120h);
                                                                                                                                                                                                                                                                                 |         if (v0 != 0) {
    0x0007e13c bnel v0, zero, 0x7e164                                                                                                                                                                                                                                            |             
    0x0007e140 lw s5, 0x120(sp)                                                                                                                                                                                                                                                  |             s5 = *(var_120h);
                                                                                                                                                                                                                                                                                 |             if (v1 == 0) {
    0x0007e144 beqz v1, 0x7ed78                                                                                                                                                                                                                                                  |                 goto label_118;
                                                                                                                                                                                                                                                                                 |             }
    0x0007e148 addiu s3, v1, 1                                                                                                                                                                                                                                                   |             s3 = v1 + 1;
    0x0007e14c srl s3, s3, 1                                                                                                                                                                                                                                                     |             s3 >>= 1;
    0x0007e150 addu s3, s3, v1                                                                                                                                                                                                                                                   |             s3 += v1;
    0x0007e154 sltu v0, v1, s3                                                                                                                                                                                                                                                   |             v0 = (v1 < s3) ? 1 : 0;
                                                                                                                                                                                                                                                                                 |             if (v0 != 0) {
    0x0007e158 bnez v0, 0x7e640                                                                                                                                                                                                                                                  |                 goto label_119;
                                                                                                                                                                                                                                                                                 |             }
    0x0007e15c nop                                                                                                                                                                                                                                                               |             
                                                                                                                                                                                                                                                                                 | label_19:
    0x0007e160 lw v1, 0x120(sp)                                                                                                                                                                                                                                                  |             v1 = *(var_120h);
                                                                                                                                                                                                                                                                                 |         }
    0x0007e164 lw v0, 0x118(sp)                                                                                                                                                                                                                                                  |         v0 = *(var_118h);
    0x0007e168 sll v0, v0, 5                                                                                                                                                                                                                                                     |         v0 <<= 5;
    0x0007e16c addu v0, v1, v0                                                                                                                                                                                                                                                   |         v0 = v1 + v0;
    0x0007e170 addiu a1, zero, 7                                                                                                                                                                                                                                                 |         a1 = 7;
    0x0007e174 sw a1, 0xc8(sp)                                                                                                                                                                                                                                                   |         *(var_c8h) = a1;
    0x0007e178 lw a0, -0x7fcc(gp)                                                                                                                                                                                                                                                |         a0 = *(gp);
                                                                                                                                                                                                                                                                                 |         /* str.locales */
    0x0007e17c addiu a0, a0, 0x7bcc                                                                                                                                                                                                                                              |         a0 += 0x7bcc;
    0x0007e180 sw a0, 0xd0(sp)                                                                                                                                                                                                                                                   |         *(var_d0h) = a0;
    0x0007e184 addiu a2, zero, 0x405                                                                                                                                                                                                                                             |         a2 = 0x405;
    0x0007e188 sh a2, 0xd6(sp)                                                                                                                                                                                                                                                   |         *(var_d6h) = a2;
    0x0007e18c lw a3, 0xcc(sp)                                                                                                                                                                                                                                                   |         a3 = *(var_cch);
    0x0007e190 lw a2, 0xd4(sp)                                                                                                                                                                                                                                                   |         a2 = *(var_d4h);
    0x0007e194 sw a1, (v0)                                                                                                                                                                                                                                                       |         *(v0) = a1;
    0x0007e198 sw a3, 4(v0)                                                                                                                                                                                                                                                      |         *((v0 + 1)) = a3;
    0x0007e19c sw a0, 8(v0)                                                                                                                                                                                                                                                      |         *((v0 + 2)) = a0;
    0x0007e1a0 sw a2, 0xc(v0)                                                                                                                                                                                                                                                    |         *((v0 + 3)) = a2;
    0x0007e1a4 lw a0, 0x118(sp)                                                                                                                                                                                                                                                  |         a0 = *(var_118h);
    0x0007e1a8 addiu a2, zero, 1                                                                                                                                                                                                                                                 |         a2 = 1;
    0x0007e1ac sw a2, 0x150(sp)                                                                                                                                                                                                                                                  |         *(var_150h) = a2;
    0x0007e1b0 addiu a1, zero, 0x10                                                                                                                                                                                                                                              |         a1 = 0x10;
    0x0007e1b4 sw a1, 0x154(sp)                                                                                                                                                                                                                                                  |         *(var_154h) = a1;
    0x0007e1b8 sw s1, 0x158(sp)                                                                                                                                                                                                                                                  |         *(var_158h) = s1;
    0x0007e1bc addiu v0, zero, 4                                                                                                                                                                                                                                                 |         v0 = 4;
    0x0007e1c0 sh v0, 0x15e(sp)                                                                                                                                                                                                                                                  |         *(var_15eh) = v0;
    0x0007e1c4 sll v0, a0, 5                                                                                                                                                                                                                                                     |         v0 = a0 << 5;
    0x0007e1c8 addu v0, v1, v0                                                                                                                                                                                                                                                   |         v0 = v1 + v0;
    0x0007e1cc lw v1, 0x15c(sp)                                                                                                                                                                                                                                                  |         v1 = *(var_15ch);
    0x0007e1d0 sw a2, 0x10(v0)                                                                                                                                                                                                                                                   |         *((v0 + 4)) = a2;
    0x0007e1d4 sw a1, 0x14(v0)                                                                                                                                                                                                                                                   |         *((v0 + 5)) = a1;
    0x0007e1d8 sw s1, 0x18(v0)                                                                                                                                                                                                                                                   |         *((v0 + 6)) = s1;
    0x0007e1dc sw v1, 0x1c(v0)                                                                                                                                                                                                                                                   |         *((v0 + 7)) = v1;
    0x0007e1e0 addiu a0, a0, 1                                                                                                                                                                                                                                                   |         a0++;
    0x0007e1e4 sw a0, 0x118(sp)                                                                                                                                                                                                                                                  |         *(var_118h) = a0;
    0x0007e1e8 lw s1, 0xf0(sp)                                                                                                                                                                                                                                                   |         s1 = *(var_f0h);
    0x0007e1ec lhu v1, 0xee(sp)                                                                                                                                                                                                                                                  |         v1 = *(var_eeh);
                                                                                                                                                                                                                                                                                 |         if (s1 == 0) {
    0x0007e1f0 beqz s1, 0x7e75c                                                                                                                                                                                                                                                  |             goto label_120;
                                                                                                                                                                                                                                                                                 |         }
    0x0007e1f4 addiu v0, zero, 4                                                                                                                                                                                                                                                 |         v0 = 4;
    0x0007e1f8 lw v1, 0xe4(sp)                                                                                                                                                                                                                                                   |         v1 = *(var_e4h);
                                                                                                                                                                                                                                                                                 |         if (v1 != v0) {
    0x0007e1fc bne v1, v0, 0x7e784                                                                                                                                                                                                                                               |             goto label_121;
                                                                                                                                                                                                                                                                                 |         }
    0x0007e200 lw v0, 0xe0(sp)                                                                                                                                                                                                                                                   |         v0 = *(var_e0h);
    0x0007e204 sltu v0, v0, v1                                                                                                                                                                                                                                                   |         v0 = (v0 < v1) ? 1 : 0;
    0x0007e208 lw v0, 0xe0(sp)                                                                                                                                                                                                                                                   |         v0 = *(var_e0h);
                                                                                                                                                                                                                                                                                 |         if (v0 == 0) {
    0x0007e20c bnez v0, 0x7e234                                                                                                                                                                                                                                                  |             
                                                                                                                                                                                                                                                                                 |             if (v1 == 0) {
    0x0007e210 beql v1, zero, 0x7ec94                                                                                                                                                                                                                                            |                 goto label_122;
                                                                                                                                                                                                                                                                                 |             }
    0x0007e214 lw s4, 0xe8(sp)                                                                                                                                                                                                                                                   |             s4 = *(var_e8h);
    0x0007e218 addiu s2, v1, 1                                                                                                                                                                                                                                                   |             s2 = v1 + 1;
    0x0007e21c srl s2, s2, 1                                                                                                                                                                                                                                                     |             s2 >>= 1;
    0x0007e220 addu s2, s2, v1                                                                                                                                                                                                                                                   |             s2 += v1;
    0x0007e224 sltu v0, v1, s2                                                                                                                                                                                                                                                   |             v0 = (v1 < s2) ? 1 : 0;
    0x0007e228 lw s4, 0xe8(sp)                                                                                                                                                                                                                                                   |             s4 = *(var_e8h);
                                                                                                                                                                                                                                                                                 |             if (v0 == 0) {
    0x0007e22c bnel v0, zero, 0x7e7ac                                                                                                                                                                                                                                            |                 goto label_123;
                                                                                                                                                                                                                                                                                 |             }
                                                                                                                                                                                                                                                                                 | label_20:
    0x0007e230 lw v0, 0xe0(sp)                                                                                                                                                                                                                                                   |             v0 = *(var_e0h);
                                                                                                                                                                                                                                                                                 |         }
    0x0007e234 addiu v1, v0, 1                                                                                                                                                                                                                                                   |         v1 = v0 + 1;
    0x0007e238 sw v1, 0xe0(sp)                                                                                                                                                                                                                                                   |         *(var_e0h) = v1;
    0x0007e23c sll v1, v0, 4                                                                                                                                                                                                                                                     |         v1 = v0 << 4;
    0x0007e240 lw v0, 0xe8(sp)                                                                                                                                                                                                                                                   |         v0 = *(var_e8h);
    0x0007e244 addu v0, v0, v1                                                                                                                                                                                                                                                   |         v0 += v1;
    0x0007e248 lw a1, 0x11c(sp)                                                                                                                                                                                                                                                  |         a1 = *(var_11ch);
    0x0007e24c lw a0, 0x120(sp)                                                                                                                                                                                                                                                  |         a0 = *(var_120h);
    0x0007e250 lw v1, 0x124(sp)                                                                                                                                                                                                                                                  |         v1 = *(var_124h);
    0x0007e254 lw a2, 0x118(sp)                                                                                                                                                                                                                                                  |         a2 = *(var_118h);
    0x0007e258 sw a2, (v0)                                                                                                                                                                                                                                                       |         *(v0) = a2;
    0x0007e25c sw a1, 4(v0)                                                                                                                                                                                                                                                      |         *((v0 + 1)) = a1;
    0x0007e260 sw a0, 8(v0)                                                                                                                                                                                                                                                      |         *((v0 + 2)) = a0;
    0x0007e264 sw v1, 0xc(v0)                                                                                                                                                                                                                                                    |         *((v0 + 3)) = v1;
    0x0007e268 sh zero, 0x126(sp)                                                                                                                                                                                                                                                |         *(var_126h) = 0;
    0x0007e26c addiu a2, sp, 0xb0                                                                                                                                                                                                                                                |         a2 = sp + 0xb0;
    0x0007e270 addiu a1, sp, 0xe0                                                                                                                                                                                                                                                |         a1 = sp + 0xe0;
    0x0007e274 lw a0, 0x30(sp)                                                                                                                                                                                                                                                   |         a0 = *(var_30h);
    0x0007e278 lw t9, -0x7750(gp)                                                                                                                                                                                                                                                |         t9 = *(gp);
    0x0007e27c bal 0x7b740                                                                                                                                                                                                                                                       |         method ();
    0x0007e280 nop                                                                                                                                                                                                                                                               |         
    0x0007e284 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |         gp = *(var_18h);
    0x0007e288 b 0x7e8c8                                                                                                                                                                                                                                                         |         goto label_97;
    0x0007e28c nop                                                                                                                                                                                                                                                               |         
                                                                                                                                                                                                                                                                                 | label_99:
    0x0007e290 lw a3, -0x7f84(gp)                                                                                                                                                                                                                                                |         a3 = *(gp);
                                                                                                                                                                                                                                                                                 |         /* esilref: 'Allocator& rapidjson::GenericDocument<Encoding, Allocator, StackAllocator>::GetAllocator() [with Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; StackAllocator = rapidjson::CrtAllocator]' */
    0x0007e294 addiu a3, a3, 0x3784                                                                                                                                                                                                                                              |         a3 += aav.0x00003784;
    0x0007e298 addiu a2, zero, 0x969                                                                                                                                                                                                                                             |         a2 = 0x969;
    0x0007e29c lw a1, -0x7fcc(gp)                                                                                                                                                                                                                                                |         a1 = *(gp);
                                                                                                                                                                                                                                                                                 |         /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0007e2a0 addiu a1, a1, 0x2aa8                                                                                                                                                                                                                                              |         a1 += 0x2aa8;
    0x0007e2a4 lw a0, -0x7fcc(gp)                                                                                                                                                                                                                                                |         a0 = *(gp);
                                                                                                                                                                                                                                                                                 |         /* str.allocator_ */
    0x0007e2a8 addiu a0, a0, 0x2d78                                                                                                                                                                                                                                              |         a0 += 0x2d78;
    0x0007e2ac lw t9, -0x7644(gp)                                                                                                                                                                                                                                                |         t9 = sym.imp.__assert_fail;
    0x0007e2b0 jalr t9                                                                                                                                                                                                                                                           |         t9 ();
    0x0007e2b4 nop                                                                                                                                                                                                                                                               |         
                                                                                                                                                                                                                                                                                 | label_100:
    0x0007e2b8 lw a3, -0x7f84(gp)                                                                                                                                                                                                                                                |         a3 = *(gp);
                                                                                                                                                                                                                                                                                 |         /* esilref: 'rapidjson::SizeType rapidjson::GenericStringRef<CharType>::NotNullStrLen(const CharType*) [with CharType = char; rapidjson::SizeType = unsigned int]' */
    0x0007e2bc addiu a3, a3, 0x41b4                                                                                                                                                                                                                                              |         a3 += 0x41b4;
    0x0007e2c0 addiu a2, zero, 0x14b                                                                                                                                                                                                                                             |         a2 = 0x14b;
    0x0007e2c4 lw a1, -0x7fcc(gp)                                                                                                                                                                                                                                                |         a1 = *(gp);
                                                                                                                                                                                                                                                                                 |         /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0007e2c8 addiu a1, a1, 0x2aa8                                                                                                                                                                                                                                              |         a1 += 0x2aa8;
    0x0007e2cc lw a0, -0x7fcc(gp)                                                                                                                                                                                                                                                |         a0 = *(gp);
                                                                                                                                                                                                                                                                                 |         /* str.str___0 */
    0x0007e2d0 addiu a0, a0, 0x2b2c                                                                                                                                                                                                                                              |         a0 += 0x2b2c;
    0x0007e2d4 lw t9, -0x7644(gp)                                                                                                                                                                                                                                                |         t9 = sym.imp.__assert_fail;
    0x0007e2d8 jalr t9                                                                                                                                                                                                                                                           |         t9 ();
    0x0007e2dc nop                                                                                                                                                                                                                                                               |         
                                                                                                                                                                                                                                                                                 | label_101:
    0x0007e2e0 addiu v0, zero, 0xc05                                                                                                                                                                                                                                             |         v0 = 0xc05;
    0x0007e2e4 sh v0, 0x7e(sp)                                                                                                                                                                                                                                                   |         *(var_7eh) = v0;
    0x0007e2e8 sw s1, 0x70(sp)                                                                                                                                                                                                                                                   |         *(var_70h) = s1;
    0x0007e2ec addiu s3, s1, 8                                                                                                                                                                                                                                                   |         s3 = s1 + 8;
    0x0007e2f0 addiu v0, zero, -8                                                                                                                                                                                                                                                |         v0 = -8;
    0x0007e2f4 lw v1, (s0)                                                                                                                                                                                                                                                       |         v1 = *(s0);
    0x0007e2f8 and s3, s3, v0                                                                                                                                                                                                                                                    |         s3 &= v0;
                                                                                                                                                                                                                                                                                 |         if (v1 != 0) {
    0x0007e2fc beqz v1, 0x7e318                                                                                                                                                                                                                                                  |             
    0x0007e300 lw v0, 4(v1)                                                                                                                                                                                                                                                      |             v0 = *((v1 + 1));
    0x0007e304 addu v0, s3, v0                                                                                                                                                                                                                                                   |             v0 = s3 + v0;
    0x0007e308 lw v1, (v1)                                                                                                                                                                                                                                                       |             v1 = *(v1);
    0x0007e30c sltu v0, v1, v0                                                                                                                                                                                                                                                   |             v0 = (v1 < v0) ? 1 : 0;
                                                                                                                                                                                                                                                                                 |             if (v0 == 0) {
    0x0007e310 beql v0, zero, 0x7e36c                                                                                                                                                                                                                                            |                 goto label_124;
                                                                                                                                                                                                                                                                                 |             }
    0x0007e314 lw v0, (s0)                                                                                                                                                                                                                                                       |             v0 = *(s0);
                                                                                                                                                                                                                                                                                 |         }
    0x0007e318 lw v0, 4(s0)                                                                                                                                                                                                                                                      |         v0 = *((s0 + 1));
    0x0007e31c sltu s4, v0, s3                                                                                                                                                                                                                                                   |         s4 = (v0 < s3) ? 1 : 0;
                                                                                                                                                                                                                                                                                 |         if (s4 == 0) {
    0x0007e320 movn v0, s3, s4                                                                                                                                                                                                                                                   |             v0 = s3;
                                                                                                                                                                                                                                                                                 |         }
    0x0007e324 move s4, v0                                                                                                                                                                                                                                                       |         s4 = v0;
    0x0007e328 lw v0, 0xc(s0)                                                                                                                                                                                                                                                    |         v0 = *((s0 + 3));
    0x0007e32c addiu a0, zero, 1                                                                                                                                                                                                                                                 |         a0 = 1;
                                                                                                                                                                                                                                                                                 |         if (v0 == 0) {
    0x0007e330 beqz v0, 0x7e388                                                                                                                                                                                                                                                  |             goto label_125;
                                                                                                                                                                                                                                                                                 |         }
                                                                                                                                                                                                                                                                                 | label_15:
    0x0007e334 addiu a0, s4, 0x10                                                                                                                                                                                                                                                |         a0 = s4 + 0x10;
    0x0007e338 lw t9, -0x73c8(gp)                                                                                                                                                                                                                                                |         t9 = sym.imp.malloc;
                                                                                                                                                                                                                                                                                 |         if (a0 == 0) {
    0x0007e33c beqz a0, 0x7ec8c                                                                                                                                                                                                                                                  |             goto label_126;
                                                                                                                                                                                                                                                                                 |         }
    0x0007e340 jalr t9                                                                                                                                                                                                                                                           |         t9 ();
    0x0007e344 nop                                                                                                                                                                                                                                                               |         
    0x0007e348 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |         gp = *(var_18h);
                                                                                                                                                                                                                                                                                 |         if (v0 != 0) {
    0x0007e34c beql v0, zero, 0x7e380                                                                                                                                                                                                                                            |             
    0x0007e350 move s0, zero                                                                                                                                                                                                                                                     |             s0 = 0;
    0x0007e354 sw s4, (v0)                                                                                                                                                                                                                                                       |             *(v0) = s4;
    0x0007e358 sw zero, 4(v0)                                                                                                                                                                                                                                                    |             *((v0 + 1)) = 0;
    0x0007e35c lw v1, (s0)                                                                                                                                                                                                                                                       |             v1 = *(s0);
    0x0007e360 sw v1, 8(v0)                                                                                                                                                                                                                                                      |             *((v0 + 2)) = v1;
    0x0007e364 sw v0, (s0)                                                                                                                                                                                                                                                       |             *(s0) = v0;
    0x0007e368 lw v0, (s0)                                                                                                                                                                                                                                                       |             v0 = *(s0);
                                                                                                                                                                                                                                                                                 | label_124:
    0x0007e36c lw v1, 4(v0)                                                                                                                                                                                                                                                      |             v1 = *((v0 + 1));
    0x0007e370 addiu s0, v1, 0x10                                                                                                                                                                                                                                                |             s0 = v1 + 0x10;
    0x0007e374 addu s0, v0, s0                                                                                                                                                                                                                                                   |             s0 = v0 + s0;
    0x0007e378 addu s3, s3, v1                                                                                                                                                                                                                                                   |             s3 += v1;
    0x0007e37c sw s3, 4(v0)                                                                                                                                                                                                                                                      |             *((v0 + 1)) = s3;
                                                                                                                                                                                                                                                                                 |         }
                                                                                                                                                                                                                                                                                 | label_29:
    0x0007e380 sw s0, 0x78(sp)                                                                                                                                                                                                                                                   |         *(var_78h) = s0;
    0x0007e384 b 0x7dd9c                                                                                                                                                                                                                                                         |         
                                                                                                                                                                                                                                                                                 |     } while (1);
                                                                                                                                                                                                                                                                                 | label_125:
    0x0007e388 lw t9, -0x7310(gp)                                                                                                                                                                                                                                                |     t9 = *((gp - 7364));
    0x0007e38c jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007e390 nop                                                                                                                                                                                                                                                               |     
    0x0007e394 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |     gp = *(var_18h);
    0x0007e398 sw v0, 0xc(s0)                                                                                                                                                                                                                                                    |     *((s0 + 3)) = v0;
    0x0007e39c sw v0, 0x10(s0)                                                                                                                                                                                                                                                   |     *((s0 + 4)) = v0;
    0x0007e3a0 b 0x7e334                                                                                                                                                                                                                                                         |     goto label_15;
                                                                                                                                                                                                                                                                                 | label_102:
    0x0007e3a4 lw a3, -0x7f84(gp)                                                                                                                                                                                                                                                |     a3 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* esilref: 'Allocator& rapidjson::GenericDocument<Encoding, Allocator, StackAllocator>::GetAllocator() [with Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; StackAllocator = rapidjson::CrtAllocator]' */
    0x0007e3a8 addiu a3, a3, 0x3784                                                                                                                                                                                                                                              |     a3 += aav.0x00003784;
    0x0007e3ac addiu a2, zero, 0x969                                                                                                                                                                                                                                             |     a2 = 0x969;
    0x0007e3b0 lw a1, -0x7fcc(gp)                                                                                                                                                                                                                                                |     a1 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0007e3b4 addiu a1, a1, 0x2aa8                                                                                                                                                                                                                                              |     a1 += 0x2aa8;
    0x0007e3b8 lw a0, -0x7fcc(gp)                                                                                                                                                                                                                                                |     a0 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* str.allocator_ */
    0x0007e3bc addiu a0, a0, 0x2d78                                                                                                                                                                                                                                              |     a0 += 0x2d78;
    0x0007e3c0 lw t9, -0x7644(gp)                                                                                                                                                                                                                                                |     t9 = sym.imp.__assert_fail;
    0x0007e3c4 jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007e3c8 nop                                                                                                                                                                                                                                                               |     
                                                                                                                                                                                                                                                                                 | label_103:
    0x0007e3cc lw a3, -0x7f84(gp)                                                                                                                                                                                                                                                |     a3 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* esilref: 'rapidjson::GenericValue<Encoding, Allocator>& rapidjson::GenericValue<Encoding, Allocator>::AddMember(rapidjson::GenericValue<Encoding, Allocator>&, rapidjson::GenericValue<Encoding, Allocator>&, Allocator&) [with Encoding = rapidjson::UTF8<>;  */
    0x0007e3d0 addiu a3, a3, 0x385c                                                                                                                                                                                                                                              |     a3 += aav.0x0000385c;
    0x0007e3d4 addiu a2, zero, 0x504                                                                                                                                                                                                                                             |     a2 = 0x504;
    0x0007e3d8 lw a1, -0x7fcc(gp)                                                                                                                                                                                                                                                |     a1 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0007e3dc addiu a1, a1, 0x2aa8                                                                                                                                                                                                                                              |     a1 += 0x2aa8;
    0x0007e3e0 lw a0, -0x7fcc(gp)                                                                                                                                                                                                                                                |     a0 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* str.IsObject__ */
    0x0007e3e4 addiu a0, a0, 0x2b0c                                                                                                                                                                                                                                              |     a0 += 0x2b0c;
    0x0007e3e8 lw t9, -0x7644(gp)                                                                                                                                                                                                                                                |     t9 = sym.imp.__assert_fail;
    0x0007e3ec jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007e3f0 nop                                                                                                                                                                                                                                                               |     
                                                                                                                                                                                                                                                                                 | label_105:
    0x0007e3f4 sll v0, s2, 5                                                                                                                                                                                                                                                     |     v0 = s2 << 5;
                                                                                                                                                                                                                                                                                 |     if (s4 != 0) {
    0x0007e3f8 beqz s4, 0x7e410                                                                                                                                                                                                                                                  |         
    0x0007e3fc move s3, zero                                                                                                                                                                                                                                                     |         s3 = 0;
                                                                                                                                                                                                                                                                                 |         if (v0 == 0) {
    0x0007e400 beqz v0, 0x7e504                                                                                                                                                                                                                                                  |             goto label_28;
                                                                                                                                                                                                                                                                                 |         }
    0x0007e404 sll s0, s0, 5                                                                                                                                                                                                                                                     |         s0 <<= 5;
    0x0007e408 b 0x7ee6c                                                                                                                                                                                                                                                         |         goto label_127;
                                                                                                                                                                                                                                                                                 | label_40:
    0x0007e40c addiu v0, zero, 0x200                                                                                                                                                                                                                                             |         v0 = aav.0x00000200;
                                                                                                                                                                                                                                                                                 |     }
    0x0007e410 move s3, zero                                                                                                                                                                                                                                                     |     s3 = 0;
                                                                                                                                                                                                                                                                                 |     if (v0 == 0) {
    0x0007e414 beqz v0, 0x7e504                                                                                                                                                                                                                                                  |         goto label_28;
                                                                                                                                                                                                                                                                                 |     }
    0x0007e418 lw v1, (s1)                                                                                                                                                                                                                                                       |     v1 = *(s1);
    0x0007e41c move s0, v0                                                                                                                                                                                                                                                       |     s0 = v0;
                                                                                                                                                                                                                                                                                 |     if (v1 != 0) {
    0x0007e420 beqz v1, 0x7e43c                                                                                                                                                                                                                                                  |         
    0x0007e424 lw v0, 4(v1)                                                                                                                                                                                                                                                      |         v0 = *((v1 + 1));
    0x0007e428 addu v0, s0, v0                                                                                                                                                                                                                                                   |         v0 = s0 + v0;
    0x0007e42c lw v1, (v1)                                                                                                                                                                                                                                                       |         v1 = *(v1);
    0x0007e430 sltu v0, v1, v0                                                                                                                                                                                                                                                   |         v0 = (v1 < v0) ? 1 : 0;
                                                                                                                                                                                                                                                                                 |         if (v0 == 0) {
    0x0007e434 beql v0, zero, 0x7e490                                                                                                                                                                                                                                            |             goto label_128;
                                                                                                                                                                                                                                                                                 |         }
    0x0007e438 lw v1, (s1)                                                                                                                                                                                                                                                       |         v1 = *(s1);
                                                                                                                                                                                                                                                                                 |     }
    0x0007e43c lw v0, 4(s1)                                                                                                                                                                                                                                                      |     v0 = *((s1 + 1));
    0x0007e440 sltu s3, v0, s0                                                                                                                                                                                                                                                   |     s3 = (v0 < s0) ? 1 : 0;
                                                                                                                                                                                                                                                                                 |     if (s3 == 0) {
    0x0007e444 movn v0, s0, s3                                                                                                                                                                                                                                                   |         v0 = s0;
                                                                                                                                                                                                                                                                                 |     }
    0x0007e448 move s3, v0                                                                                                                                                                                                                                                       |     s3 = v0;
    0x0007e44c lw v0, 0xc(s1)                                                                                                                                                                                                                                                    |     v0 = *((s1 + 3));
    0x0007e450 addiu a0, zero, 1                                                                                                                                                                                                                                                 |     a0 = 1;
    0x0007e454 beqz v0, 0x7e4a8                                                                                                                                                                                                                                                  |     
                                                                                                                                                                                                                                                                                 |     while (1) {
    0x0007e458 addiu a0, s3, 0x10                                                                                                                                                                                                                                                |         a0 = s3 + 0x10;
    0x0007e45c lw t9, -0x73c8(gp)                                                                                                                                                                                                                                                |         t9 = sym.imp.malloc;
                                                                                                                                                                                                                                                                                 |         if (a0 == 0) {
    0x0007e460 beqz a0, 0x7ec7c                                                                                                                                                                                                                                                  |             goto label_129;
                                                                                                                                                                                                                                                                                 |         }
    0x0007e464 jalr t9                                                                                                                                                                                                                                                           |         t9 ();
    0x0007e468 nop                                                                                                                                                                                                                                                               |         
    0x0007e46c lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |         gp = *(var_18h);
                                                                                                                                                                                                                                                                                 |         if (v0 == 0) {
    0x0007e470 beql v0, zero, 0x7e504                                                                                                                                                                                                                                            |             goto label_28;
                                                                                                                                                                                                                                                                                 |         }
    0x0007e474 move s3, zero                                                                                                                                                                                                                                                     |         s3 = 0;
    0x0007e478 sw s3, (v0)                                                                                                                                                                                                                                                       |         *(v0) = s3;
    0x0007e47c sw zero, 4(v0)                                                                                                                                                                                                                                                    |         *((v0 + 1)) = 0;
    0x0007e480 lw v1, (s1)                                                                                                                                                                                                                                                       |         v1 = *(s1);
    0x0007e484 sw v1, 8(v0)                                                                                                                                                                                                                                                      |         *((v0 + 2)) = v1;
    0x0007e488 sw v0, (s1)                                                                                                                                                                                                                                                       |         *(s1) = v0;
    0x0007e48c lw v1, (s1)                                                                                                                                                                                                                                                       |         v1 = *(s1);
                                                                                                                                                                                                                                                                                 | label_128:
    0x0007e490 lw v0, 4(v1)                                                                                                                                                                                                                                                      |         v0 = *((v1 + 1));
    0x0007e494 addiu s3, v0, 0x10                                                                                                                                                                                                                                                |         s3 = v0 + 0x10;
    0x0007e498 addu s3, v1, s3                                                                                                                                                                                                                                                   |         s3 = v1 + s3;
    0x0007e49c addu v0, s0, v0                                                                                                                                                                                                                                                   |         v0 = s0 + v0;
    0x0007e4a0 sw v0, 4(v1)                                                                                                                                                                                                                                                      |         *((v1 + 1)) = v0;
    0x0007e4a4 b 0x7e504                                                                                                                                                                                                                                                         |         goto label_28;
    0x0007e4a8 lw t9, -0x7310(gp)                                                                                                                                                                                                                                                |         t9 = *((gp - 7364));
    0x0007e4ac jalr t9                                                                                                                                                                                                                                                           |         t9 ();
    0x0007e4b0 nop                                                                                                                                                                                                                                                               |         
    0x0007e4b4 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |         gp = *(var_18h);
    0x0007e4b8 sw v0, 0xc(s1)                                                                                                                                                                                                                                                    |         *((s1 + 3)) = v0;
    0x0007e4bc sw v0, 0x10(s1)                                                                                                                                                                                                                                                   |         *((s1 + 4)) = v0;
    0x0007e4c0 b 0x7e458                                                                                                                                                                                                                                                         |         
                                                                                                                                                                                                                                                                                 |     }
                                                                                                                                                                                                                                                                                 | label_41:
    0x0007e4c4 subu a1, v1, s0                                                                                                                                                                                                                                                   |     __asm ("subu a1, v1, s0");
    0x0007e4c8 addu a1, a1, v0                                                                                                                                                                                                                                                   |     a1 += v0;
    0x0007e4cc lw a2, (a0)                                                                                                                                                                                                                                                       |     a2 = *(a0);
    0x0007e4d0 sltu a2, a2, a1                                                                                                                                                                                                                                                   |     a2 = (a2 < a1) ? 1 : 0;
    0x0007e4d4 addu v0, v1, v0                                                                                                                                                                                                                                                   |     v0 = v1 + v0;
                                                                                                                                                                                                                                                                                 |     if (a2 != 0) {
    0x0007e4d8 bnez a2, 0x7ee98                                                                                                                                                                                                                                                  |         goto label_130;
                                                                                                                                                                                                                                                                                 |     }
    0x0007e4dc sw a1, 4(a0)                                                                                                                                                                                                                                                      |     *((a0 + 1)) = a1;
    0x0007e4e0 move s3, s4                                                                                                                                                                                                                                                       |     s3 = s4;
    0x0007e4e4 b 0x7e504                                                                                                                                                                                                                                                         |     goto label_28;
                                                                                                                                                                                                                                                                                 | label_42:
    0x0007e4e8 lw t9, -0x7310(gp)                                                                                                                                                                                                                                                |     t9 = *((gp - 7364));
    0x0007e4ec jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007e4f0 nop                                                                                                                                                                                                                                                               |     
    0x0007e4f4 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |     gp = *(var_18h);
    0x0007e4f8 sw v0, 0xc(s1)                                                                                                                                                                                                                                                    |     *((s1 + 3)) = v0;
    0x0007e4fc sw v0, 0x10(s1)                                                                                                                                                                                                                                                   |     *((s1 + 4)) = v0;
    0x0007e500 b 0x7eec0                                                                                                                                                                                                                                                         |     goto label_131;
                                                                                                                                                                                                                                                                                 | label_28:
    0x0007e504 sw s3, 0x120(sp)                                                                                                                                                                                                                                                  |     *(var_120h) = s3;
                                                                                                                                                                                                                                                                                 | label_44:
    0x0007e508 sw s2, 0x11c(sp)                                                                                                                                                                                                                                                  |     *(var_11ch) = s2;
    0x0007e50c b 0x7de14                                                                                                                                                                                                                                                         |     goto label_16;
                                                                                                                                                                                                                                                                                 | label_106:
    0x0007e510 lw a3, -0x7f84(gp)                                                                                                                                                                                                                                                |     a3 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* esilref: 'rapidjson::SizeType rapidjson::GenericStringRef<CharType>::NotNullStrLen(const CharType*) [with CharType = char; rapidjson::SizeType = unsigned int]' */
    0x0007e514 addiu a3, a3, 0x41b4                                                                                                                                                                                                                                              |     a3 += 0x41b4;
    0x0007e518 addiu a2, zero, 0x14b                                                                                                                                                                                                                                             |     a2 = 0x14b;
    0x0007e51c lw a1, -0x7fcc(gp)                                                                                                                                                                                                                                                |     a1 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0007e520 addiu a1, a1, 0x2aa8                                                                                                                                                                                                                                              |     a1 += 0x2aa8;
    0x0007e524 lw a0, -0x7fcc(gp)                                                                                                                                                                                                                                                |     a0 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* str.str___0 */
    0x0007e528 addiu a0, a0, 0x2b2c                                                                                                                                                                                                                                              |     a0 += 0x2b2c;
    0x0007e52c lw t9, -0x7644(gp)                                                                                                                                                                                                                                                |     t9 = sym.imp.__assert_fail;
    0x0007e530 jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007e534 nop                                                                                                                                                                                                                                                               |     
                                                                                                                                                                                                                                                                                 | label_107:
    0x0007e538 lw a3, -0x7f84(gp)                                                                                                                                                                                                                                                |     a3 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* esilref: 'Allocator& rapidjson::GenericDocument<Encoding, Allocator, StackAllocator>::GetAllocator() [with Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; StackAllocator = rapidjson::CrtAllocator]' */
    0x0007e53c addiu a3, a3, 0x3784                                                                                                                                                                                                                                              |     a3 += aav.0x00003784;
    0x0007e540 addiu a2, zero, 0x969                                                                                                                                                                                                                                             |     a2 = 0x969;
    0x0007e544 lw a1, -0x7fcc(gp)                                                                                                                                                                                                                                                |     a1 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0007e548 addiu a1, a1, 0x2aa8                                                                                                                                                                                                                                              |     a1 += 0x2aa8;
    0x0007e54c lw a0, -0x7fcc(gp)                                                                                                                                                                                                                                                |     a0 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* str.allocator_ */
    0x0007e550 addiu a0, a0, 0x2d78                                                                                                                                                                                                                                              |     a0 += 0x2d78;
    0x0007e554 lw t9, -0x7644(gp)                                                                                                                                                                                                                                                |     t9 = sym.imp.__assert_fail;
    0x0007e558 jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007e55c nop                                                                                                                                                                                                                                                               |     
                                                                                                                                                                                                                                                                                 | label_109:
    0x0007e560 addiu a0, zero, 1                                                                                                                                                                                                                                                 |     a0 = 1;
    0x0007e564 lw t9, -0x7310(gp)                                                                                                                                                                                                                                                |     t9 = *((gp - 7364));
    0x0007e568 jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007e56c nop                                                                                                                                                                                                                                                               |     
    0x0007e570 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |     gp = *(var_18h);
    0x0007e574 sw v0, 0xc(s0)                                                                                                                                                                                                                                                    |     *((s0 + 3)) = v0;
    0x0007e578 sw v0, 0x10(s0)                                                                                                                                                                                                                                                   |     *((s0 + 4)) = v0;
    0x0007e57c b 0x7df1c                                                                                                                                                                                                                                                         |     goto label_17;
                                                                                                                                                                                                                                                                                 | label_111:
    0x0007e580 lw a3, -0x7f84(gp)                                                                                                                                                                                                                                                |     a3 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* esilref: 'rapidjson::SizeType rapidjson::GenericStringRef<CharType>::NotNullStrLen(const CharType*) [with CharType = char; rapidjson::SizeType = unsigned int]' */
    0x0007e584 addiu a3, a3, 0x41b4                                                                                                                                                                                                                                              |     a3 += 0x41b4;
    0x0007e588 addiu a2, zero, 0x14b                                                                                                                                                                                                                                             |     a2 = 0x14b;
    0x0007e58c lw a1, -0x7fcc(gp)                                                                                                                                                                                                                                                |     a1 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0007e590 addiu a1, a1, 0x2aa8                                                                                                                                                                                                                                              |     a1 += 0x2aa8;
    0x0007e594 lw a0, -0x7fcc(gp)                                                                                                                                                                                                                                                |     a0 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* str.str___0 */
    0x0007e598 addiu a0, a0, 0x2b2c                                                                                                                                                                                                                                              |     a0 += 0x2b2c;
    0x0007e59c lw t9, -0x7644(gp)                                                                                                                                                                                                                                                |     t9 = sym.imp.__assert_fail;
    0x0007e5a0 jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007e5a4 nop                                                                                                                                                                                                                                                               |     
                                                                                                                                                                                                                                                                                 | label_112:
    0x0007e5a8 lw a3, -0x7f84(gp)                                                                                                                                                                                                                                                |     a3 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* esilref: 'Allocator& rapidjson::GenericDocument<Encoding, Allocator, StackAllocator>::GetAllocator() [with Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; StackAllocator = rapidjson::CrtAllocator]' */
    0x0007e5ac addiu a3, a3, 0x3784                                                                                                                                                                                                                                              |     a3 += aav.0x00003784;
    0x0007e5b0 addiu a2, zero, 0x969                                                                                                                                                                                                                                             |     a2 = 0x969;
    0x0007e5b4 lw a1, -0x7fcc(gp)                                                                                                                                                                                                                                                |     a1 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0007e5b8 addiu a1, a1, 0x2aa8                                                                                                                                                                                                                                              |     a1 += 0x2aa8;
    0x0007e5bc lw a0, -0x7fcc(gp)                                                                                                                                                                                                                                                |     a0 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* str.allocator_ */
    0x0007e5c0 addiu a0, a0, 0x2d78                                                                                                                                                                                                                                              |     a0 += 0x2d78;
    0x0007e5c4 lw t9, -0x7644(gp)                                                                                                                                                                                                                                                |     t9 = sym.imp.__assert_fail;
    0x0007e5c8 jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007e5cc nop                                                                                                                                                                                                                                                               |     
                                                                                                                                                                                                                                                                                 | label_114:
    0x0007e5d0 addiu a0, zero, 1                                                                                                                                                                                                                                                 |     a0 = 1;
    0x0007e5d4 lw t9, -0x7310(gp)                                                                                                                                                                                                                                                |     t9 = *((gp - 7364));
    0x0007e5d8 jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007e5dc nop                                                                                                                                                                                                                                                               |     
    0x0007e5e0 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |     gp = *(var_18h);
    0x0007e5e4 sw v0, 0xc(s2)                                                                                                                                                                                                                                                    |     *((s2 + 3)) = v0;
    0x0007e5e8 sw v0, 0x10(s2)                                                                                                                                                                                                                                                   |     *((s2 + 4)) = v0;
    0x0007e5ec b 0x7e090                                                                                                                                                                                                                                                         |     goto label_18;
                                                                                                                                                                                                                                                                                 | label_116:
    0x0007e5f0 lw a3, -0x7f84(gp)                                                                                                                                                                                                                                                |     a3 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* esilref: 'Allocator& rapidjson::GenericDocument<Encoding, Allocator, StackAllocator>::GetAllocator() [with Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; StackAllocator = rapidjson::CrtAllocator]' */
    0x0007e5f4 addiu a3, a3, 0x3784                                                                                                                                                                                                                                              |     a3 += aav.0x00003784;
    0x0007e5f8 addiu a2, zero, 0x969                                                                                                                                                                                                                                             |     a2 = 0x969;
    0x0007e5fc lw a1, -0x7fcc(gp)                                                                                                                                                                                                                                                |     a1 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0007e600 addiu a1, a1, 0x2aa8                                                                                                                                                                                                                                              |     a1 += 0x2aa8;
    0x0007e604 lw a0, -0x7fcc(gp)                                                                                                                                                                                                                                                |     a0 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* str.allocator_ */
    0x0007e608 addiu a0, a0, 0x2d78                                                                                                                                                                                                                                              |     a0 += 0x2d78;
    0x0007e60c lw t9, -0x7644(gp)                                                                                                                                                                                                                                                |     t9 = sym.imp.__assert_fail;
    0x0007e610 jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007e614 nop                                                                                                                                                                                                                                                               |     
                                                                                                                                                                                                                                                                                 | label_117:
    0x0007e618 lw a3, -0x7f84(gp)                                                                                                                                                                                                                                                |     a3 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* esilref: 'rapidjson::GenericValue<Encoding, Allocator>& rapidjson::GenericValue<Encoding, Allocator>::AddMember(rapidjson::GenericValue<Encoding, Allocator>&, rapidjson::GenericValue<Encoding, Allocator>&, Allocator&) [with Encoding = rapidjson::UTF8<>;  */
    0x0007e61c addiu a3, a3, 0x385c                                                                                                                                                                                                                                              |     a3 += aav.0x0000385c;
    0x0007e620 addiu a2, zero, 0x504                                                                                                                                                                                                                                             |     a2 = 0x504;
    0x0007e624 lw a1, -0x7fcc(gp)                                                                                                                                                                                                                                                |     a1 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0007e628 addiu a1, a1, 0x2aa8                                                                                                                                                                                                                                              |     a1 += 0x2aa8;
    0x0007e62c lw a0, -0x7fcc(gp)                                                                                                                                                                                                                                                |     a0 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* str.IsObject__ */
    0x0007e630 addiu a0, a0, 0x2b0c                                                                                                                                                                                                                                              |     a0 += 0x2b0c;
    0x0007e634 lw t9, -0x7644(gp)                                                                                                                                                                                                                                                |     t9 = sym.imp.__assert_fail;
    0x0007e638 jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007e63c nop                                                                                                                                                                                                                                                               |     
                                                                                                                                                                                                                                                                                 | label_119:
    0x0007e640 sll v0, s3, 5                                                                                                                                                                                                                                                     |     v0 = s3 << 5;
                                                                                                                                                                                                                                                                                 |     if (s5 != 0) {
    0x0007e644 beqz s5, 0x7e65c                                                                                                                                                                                                                                                  |         
    0x0007e648 move s4, zero                                                                                                                                                                                                                                                     |         s4 = 0;
                                                                                                                                                                                                                                                                                 |         if (v0 == 0) {
    0x0007e64c beqz v0, 0x7e750                                                                                                                                                                                                                                                  |             goto label_25;
                                                                                                                                                                                                                                                                                 |         }
    0x0007e650 sll s0, v1, 5                                                                                                                                                                                                                                                     |         s0 = v1 << 5;
    0x0007e654 b 0x7ed88                                                                                                                                                                                                                                                         |         goto label_132;
                                                                                                                                                                                                                                                                                 | label_35:
    0x0007e658 addiu s3, zero, 0x10                                                                                                                                                                                                                                              |         s3 = 0x10;
                                                                                                                                                                                                                                                                                 |     }
    0x0007e65c move s4, zero                                                                                                                                                                                                                                                     |     s4 = 0;
                                                                                                                                                                                                                                                                                 |     if (v0 == 0) {
    0x0007e660 beqz v0, 0x7e750                                                                                                                                                                                                                                                  |         goto label_25;
                                                                                                                                                                                                                                                                                 |     }
    0x0007e664 lw v1, (s2)                                                                                                                                                                                                                                                       |     v1 = *(s2);
    0x0007e668 move s0, v0                                                                                                                                                                                                                                                       |     s0 = v0;
                                                                                                                                                                                                                                                                                 |     if (v1 != 0) {
    0x0007e66c beqz v1, 0x7e688                                                                                                                                                                                                                                                  |         
    0x0007e670 lw v0, 4(v1)                                                                                                                                                                                                                                                      |         v0 = *((v1 + 1));
    0x0007e674 addu v0, s0, v0                                                                                                                                                                                                                                                   |         v0 = s0 + v0;
    0x0007e678 lw v1, (v1)                                                                                                                                                                                                                                                       |         v1 = *(v1);
    0x0007e67c sltu v0, v1, v0                                                                                                                                                                                                                                                   |         v0 = (v1 < v0) ? 1 : 0;
                                                                                                                                                                                                                                                                                 |         if (v0 == 0) {
    0x0007e680 beql v0, zero, 0x7e6dc                                                                                                                                                                                                                                            |             goto label_133;
                                                                                                                                                                                                                                                                                 |         }
    0x0007e684 lw v1, (s2)                                                                                                                                                                                                                                                       |         v1 = *(s2);
                                                                                                                                                                                                                                                                                 |     }
    0x0007e688 lw v0, 4(s2)                                                                                                                                                                                                                                                      |     v0 = *((s2 + 1));
    0x0007e68c sltu s4, v0, s0                                                                                                                                                                                                                                                   |     s4 = (v0 < s0) ? 1 : 0;
                                                                                                                                                                                                                                                                                 |     if (s4 == 0) {
    0x0007e690 movn v0, s0, s4                                                                                                                                                                                                                                                   |         v0 = s0;
                                                                                                                                                                                                                                                                                 |     }
    0x0007e694 move s4, v0                                                                                                                                                                                                                                                       |     s4 = v0;
    0x0007e698 lw v0, 0xc(s2)                                                                                                                                                                                                                                                    |     v0 = *((s2 + 3));
    0x0007e69c addiu a0, zero, 1                                                                                                                                                                                                                                                 |     a0 = 1;
    0x0007e6a0 beqz v0, 0x7e6f4                                                                                                                                                                                                                                                  |     
                                                                                                                                                                                                                                                                                 |     while (1) {
    0x0007e6a4 addiu a0, s4, 0x10                                                                                                                                                                                                                                                |         a0 = s4 + 0x10;
    0x0007e6a8 lw t9, -0x73c8(gp)                                                                                                                                                                                                                                                |         t9 = sym.imp.malloc;
                                                                                                                                                                                                                                                                                 |         if (a0 == 0) {
    0x0007e6ac beqz a0, 0x7ec5c                                                                                                                                                                                                                                                  |             goto label_134;
                                                                                                                                                                                                                                                                                 |         }
    0x0007e6b0 jalr t9                                                                                                                                                                                                                                                           |         t9 ();
    0x0007e6b4 nop                                                                                                                                                                                                                                                               |         
    0x0007e6b8 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |         gp = *(var_18h);
                                                                                                                                                                                                                                                                                 |         if (v0 == 0) {
    0x0007e6bc beql v0, zero, 0x7e750                                                                                                                                                                                                                                            |             goto label_25;
                                                                                                                                                                                                                                                                                 |         }
    0x0007e6c0 move s4, zero                                                                                                                                                                                                                                                     |         s4 = 0;
    0x0007e6c4 sw s4, (v0)                                                                                                                                                                                                                                                       |         *(v0) = s4;
    0x0007e6c8 sw zero, 4(v0)                                                                                                                                                                                                                                                    |         *((v0 + 1)) = 0;
    0x0007e6cc lw v1, (s2)                                                                                                                                                                                                                                                       |         v1 = *(s2);
    0x0007e6d0 sw v1, 8(v0)                                                                                                                                                                                                                                                      |         *((v0 + 2)) = v1;
    0x0007e6d4 sw v0, (s2)                                                                                                                                                                                                                                                       |         *(s2) = v0;
    0x0007e6d8 lw v1, (s2)                                                                                                                                                                                                                                                       |         v1 = *(s2);
                                                                                                                                                                                                                                                                                 | label_133:
    0x0007e6dc lw v0, 4(v1)                                                                                                                                                                                                                                                      |         v0 = *((v1 + 1));
    0x0007e6e0 addiu s4, v0, 0x10                                                                                                                                                                                                                                                |         s4 = v0 + 0x10;
    0x0007e6e4 addu s4, v1, s4                                                                                                                                                                                                                                                   |         s4 = v1 + s4;
    0x0007e6e8 addu v0, s0, v0                                                                                                                                                                                                                                                   |         v0 = s0 + v0;
    0x0007e6ec sw v0, 4(v1)                                                                                                                                                                                                                                                      |         *((v1 + 1)) = v0;
    0x0007e6f0 b 0x7e750                                                                                                                                                                                                                                                         |         goto label_25;
    0x0007e6f4 lw t9, -0x7310(gp)                                                                                                                                                                                                                                                |         t9 = *((gp - 7364));
    0x0007e6f8 jalr t9                                                                                                                                                                                                                                                           |         t9 ();
    0x0007e6fc nop                                                                                                                                                                                                                                                               |         
    0x0007e700 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |         gp = *(var_18h);
    0x0007e704 sw v0, 0xc(s2)                                                                                                                                                                                                                                                    |         *((s2 + 3)) = v0;
    0x0007e708 sw v0, 0x10(s2)                                                                                                                                                                                                                                                   |         *((s2 + 4)) = v0;
    0x0007e70c b 0x7e6a4                                                                                                                                                                                                                                                         |         
                                                                                                                                                                                                                                                                                 |     }
                                                                                                                                                                                                                                                                                 | label_36:
    0x0007e710 subu a1, v1, s0                                                                                                                                                                                                                                                   |     __asm ("subu a1, v1, s0");
    0x0007e714 addu a1, a1, v0                                                                                                                                                                                                                                                   |     a1 += v0;
    0x0007e718 lw a2, (a0)                                                                                                                                                                                                                                                       |     a2 = *(a0);
    0x0007e71c sltu a2, a2, a1                                                                                                                                                                                                                                                   |     a2 = (a2 < a1) ? 1 : 0;
    0x0007e720 addu v0, v1, v0                                                                                                                                                                                                                                                   |     v0 = v1 + v0;
                                                                                                                                                                                                                                                                                 |     if (a2 != 0) {
    0x0007e724 bnez a2, 0x7edb4                                                                                                                                                                                                                                                  |         goto label_135;
                                                                                                                                                                                                                                                                                 |     }
    0x0007e728 sw a1, 4(a0)                                                                                                                                                                                                                                                      |     *((a0 + 1)) = a1;
    0x0007e72c move s4, s5                                                                                                                                                                                                                                                       |     s4 = s5;
    0x0007e730 b 0x7e750                                                                                                                                                                                                                                                         |     goto label_25;
                                                                                                                                                                                                                                                                                 | label_37:
    0x0007e734 lw t9, -0x7310(gp)                                                                                                                                                                                                                                                |     t9 = *((gp - 7364));
    0x0007e738 jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007e73c nop                                                                                                                                                                                                                                                               |     
    0x0007e740 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |     gp = *(var_18h);
    0x0007e744 sw v0, 0xc(s2)                                                                                                                                                                                                                                                    |     *((s2 + 3)) = v0;
    0x0007e748 sw v0, 0x10(s2)                                                                                                                                                                                                                                                   |     *((s2 + 4)) = v0;
    0x0007e74c b 0x7ede0                                                                                                                                                                                                                                                         |     goto label_136;
                                                                                                                                                                                                                                                                                 | label_25:
    0x0007e750 sw s4, 0x120(sp)                                                                                                                                                                                                                                                  |     *(var_120h) = s4;
                                                                                                                                                                                                                                                                                 | label_39:
    0x0007e754 sw s3, 0x11c(sp)                                                                                                                                                                                                                                                  |     *(var_11ch) = s3;
    0x0007e758 b 0x7e160                                                                                                                                                                                                                                                         |     goto label_19;
                                                                                                                                                                                                                                                                                 | label_120:
    0x0007e75c lw a3, -0x7f84(gp)                                                                                                                                                                                                                                                |     a3 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* esilref: 'Allocator& rapidjson::GenericDocument<Encoding, Allocator, StackAllocator>::GetAllocator() [with Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; StackAllocator = rapidjson::CrtAllocator]' */
    0x0007e760 addiu a3, a3, 0x3784                                                                                                                                                                                                                                              |     a3 += aav.0x00003784;
    0x0007e764 addiu a2, zero, 0x969                                                                                                                                                                                                                                             |     a2 = 0x969;
    0x0007e768 lw a1, -0x7fcc(gp)                                                                                                                                                                                                                                                |     a1 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0007e76c addiu a1, a1, 0x2aa8                                                                                                                                                                                                                                              |     a1 += 0x2aa8;
    0x0007e770 lw a0, -0x7fcc(gp)                                                                                                                                                                                                                                                |     a0 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* str.allocator_ */
    0x0007e774 addiu a0, a0, 0x2d78                                                                                                                                                                                                                                              |     a0 += 0x2d78;
    0x0007e778 lw t9, -0x7644(gp)                                                                                                                                                                                                                                                |     t9 = sym.imp.__assert_fail;
    0x0007e77c jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007e780 nop                                                                                                                                                                                                                                                               |     
                                                                                                                                                                                                                                                                                 | label_121:
    0x0007e784 lw a3, -0x7f84(gp)                                                                                                                                                                                                                                                |     a3 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* esilref: 'rapidjson::GenericValue<Encoding, Allocator>& rapidjson::GenericValue<Encoding, Allocator>::PushBack(rapidjson::GenericValue<Encoding, Allocator>&, Allocator&) [with Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>]' */
    0x0007e788 addiu a3, a3, 0x3690                                                                                                                                                                                                                                              |     a3 += 0x3690;
    0x0007e78c addiu a2, zero, 0x65e                                                                                                                                                                                                                                             |     a2 = 0x65e;
    0x0007e790 lw a1, -0x7fcc(gp)                                                                                                                                                                                                                                                |     a1 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* str._usr_src_debug_onscreencontrols_0.2.3maint1_r0_recipe_sysroot_usr_include_rapidjson_document.h */
    0x0007e794 addiu a1, a1, 0x2aa8                                                                                                                                                                                                                                              |     a1 += 0x2aa8;
    0x0007e798 lw a0, -0x7fcc(gp)                                                                                                                                                                                                                                                |     a0 = *(gp);
                                                                                                                                                                                                                                                                                 |     /* str.IsArray__ */
    0x0007e79c addiu a0, a0, 0x2bc8                                                                                                                                                                                                                                              |     a0 += aav.0x00002bc8;
    0x0007e7a0 lw t9, -0x7644(gp)                                                                                                                                                                                                                                                |     t9 = sym.imp.__assert_fail;
    0x0007e7a4 jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007e7a8 nop                                                                                                                                                                                                                                                               |     
                                                                                                                                                                                                                                                                                 | label_123:
    0x0007e7ac sll v0, s2, 4                                                                                                                                                                                                                                                     |     v0 = s2 << 4;
                                                                                                                                                                                                                                                                                 |     if (s4 != 0) {
    0x0007e7b0 beqz s4, 0x7e7c8                                                                                                                                                                                                                                                  |         
    0x0007e7b4 move s3, zero                                                                                                                                                                                                                                                     |         s3 = 0;
                                                                                                                                                                                                                                                                                 |         if (v0 == 0) {
    0x0007e7b8 beqz v0, 0x7e8bc                                                                                                                                                                                                                                                  |             goto label_24;
                                                                                                                                                                                                                                                                                 |         }
    0x0007e7bc sll s0, v1, 4                                                                                                                                                                                                                                                     |         s0 = v1 << 4;
    0x0007e7c0 b 0x7eca4                                                                                                                                                                                                                                                         |         goto label_137;
                                                                                                                                                                                                                                                                                 | label_30:
    0x0007e7c4 addiu s2, zero, 0x10                                                                                                                                                                                                                                              |         s2 = 0x10;
                                                                                                                                                                                                                                                                                 |     }
    0x0007e7c8 move s3, zero                                                                                                                                                                                                                                                     |     s3 = 0;
                                                                                                                                                                                                                                                                                 |     if (v0 == 0) {
    0x0007e7cc beqz v0, 0x7e8bc                                                                                                                                                                                                                                                  |         goto label_24;
                                                                                                                                                                                                                                                                                 |     }
    0x0007e7d0 lw v1, (s1)                                                                                                                                                                                                                                                       |     v1 = *(s1);
    0x0007e7d4 move s0, v0                                                                                                                                                                                                                                                       |     s0 = v0;
                                                                                                                                                                                                                                                                                 |     if (v1 != 0) {
    0x0007e7d8 beqz v1, 0x7e7f4                                                                                                                                                                                                                                                  |         
    0x0007e7dc lw v0, 4(v1)                                                                                                                                                                                                                                                      |         v0 = *((v1 + 1));
    0x0007e7e0 addu v0, s0, v0                                                                                                                                                                                                                                                   |         v0 = s0 + v0;
    0x0007e7e4 lw v1, (v1)                                                                                                                                                                                                                                                       |         v1 = *(v1);
    0x0007e7e8 sltu v0, v1, v0                                                                                                                                                                                                                                                   |         v0 = (v1 < v0) ? 1 : 0;
                                                                                                                                                                                                                                                                                 |         if (v0 == 0) {
    0x0007e7ec beql v0, zero, 0x7e848                                                                                                                                                                                                                                            |             goto label_138;
                                                                                                                                                                                                                                                                                 |         }
    0x0007e7f0 lw v1, (s1)                                                                                                                                                                                                                                                       |         v1 = *(s1);
                                                                                                                                                                                                                                                                                 |     }
    0x0007e7f4 lw v0, 4(s1)                                                                                                                                                                                                                                                      |     v0 = *((s1 + 1));
    0x0007e7f8 sltu s3, v0, s0                                                                                                                                                                                                                                                   |     s3 = (v0 < s0) ? 1 : 0;
                                                                                                                                                                                                                                                                                 |     if (s3 == 0) {
    0x0007e7fc movn v0, s0, s3                                                                                                                                                                                                                                                   |         v0 = s0;
                                                                                                                                                                                                                                                                                 |     }
    0x0007e800 move s3, v0                                                                                                                                                                                                                                                       |     s3 = v0;
    0x0007e804 lw v0, 0xc(s1)                                                                                                                                                                                                                                                    |     v0 = *((s1 + 3));
    0x0007e808 addiu a0, zero, 1                                                                                                                                                                                                                                                 |     a0 = 1;
    0x0007e80c beqz v0, 0x7e860                                                                                                                                                                                                                                                  |     
                                                                                                                                                                                                                                                                                 |     while (1) {
    0x0007e810 addiu a0, s3, 0x10                                                                                                                                                                                                                                                |         a0 = s3 + 0x10;
    0x0007e814 lw t9, -0x73c8(gp)                                                                                                                                                                                                                                                |         t9 = sym.imp.malloc;
                                                                                                                                                                                                                                                                                 |         if (a0 == 0) {
    0x0007e818 beqz a0, 0x7ec4c                                                                                                                                                                                                                                                  |             goto label_139;
                                                                                                                                                                                                                                                                                 |         }
    0x0007e81c jalr t9                                                                                                                                                                                                                                                           |         t9 ();
    0x0007e820 nop                                                                                                                                                                                                                                                               |         
    0x0007e824 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |         gp = *(var_18h);
                                                                                                                                                                                                                                                                                 |         if (v0 == 0) {
    0x0007e828 beql v0, zero, 0x7e8bc                                                                                                                                                                                                                                            |             goto label_24;
                                                                                                                                                                                                                                                                                 |         }
    0x0007e82c move s3, zero                                                                                                                                                                                                                                                     |         s3 = 0;
    0x0007e830 sw s3, (v0)                                                                                                                                                                                                                                                       |         *(v0) = s3;
    0x0007e834 sw zero, 4(v0)                                                                                                                                                                                                                                                    |         *((v0 + 1)) = 0;
    0x0007e838 lw v1, (s1)                                                                                                                                                                                                                                                       |         v1 = *(s1);
    0x0007e83c sw v1, 8(v0)                                                                                                                                                                                                                                                      |         *((v0 + 2)) = v1;
    0x0007e840 sw v0, (s1)                                                                                                                                                                                                                                                       |         *(s1) = v0;
    0x0007e844 lw v1, (s1)                                                                                                                                                                                                                                                       |         v1 = *(s1);
                                                                                                                                                                                                                                                                                 | label_138:
    0x0007e848 lw v0, 4(v1)                                                                                                                                                                                                                                                      |         v0 = *((v1 + 1));
    0x0007e84c addiu s3, v0, 0x10                                                                                                                                                                                                                                                |         s3 = v0 + 0x10;
    0x0007e850 addu s3, v1, s3                                                                                                                                                                                                                                                   |         s3 = v1 + s3;
    0x0007e854 addu v0, s0, v0                                                                                                                                                                                                                                                   |         v0 = s0 + v0;
    0x0007e858 sw v0, 4(v1)                                                                                                                                                                                                                                                      |         *((v1 + 1)) = v0;
    0x0007e85c b 0x7e8bc                                                                                                                                                                                                                                                         |         goto label_24;
    0x0007e860 lw t9, -0x7310(gp)                                                                                                                                                                                                                                                |         t9 = *((gp - 7364));
    0x0007e864 jalr t9                                                                                                                                                                                                                                                           |         t9 ();
    0x0007e868 nop                                                                                                                                                                                                                                                               |         
    0x0007e86c lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |         gp = *(var_18h);
    0x0007e870 sw v0, 0xc(s1)                                                                                                                                                                                                                                                    |         *((s1 + 3)) = v0;
    0x0007e874 sw v0, 0x10(s1)                                                                                                                                                                                                                                                   |         *((s1 + 4)) = v0;
    0x0007e878 b 0x7e810                                                                                                                                                                                                                                                         |         
                                                                                                                                                                                                                                                                                 |     }
                                                                                                                                                                                                                                                                                 | label_31:
    0x0007e87c subu a1, v1, s0                                                                                                                                                                                                                                                   |     __asm ("subu a1, v1, s0");
    0x0007e880 addu a1, a1, v0                                                                                                                                                                                                                                                   |     a1 += v0;
    0x0007e884 lw a2, (a0)                                                                                                                                                                                                                                                       |     a2 = *(a0);
    0x0007e888 sltu a2, a2, a1                                                                                                                                                                                                                                                   |     a2 = (a2 < a1) ? 1 : 0;
    0x0007e88c move s5, v0                                                                                                                                                                                                                                                       |     s5 = v0;
                                                                                                                                                                                                                                                                                 |     if (a2 == 0) {
    0x0007e890 bnel a2, zero, 0x7eccc                                                                                                                                                                                                                                            |         goto label_140;
                                                                                                                                                                                                                                                                                 |     }
    0x0007e894 sw a1, 4(a0)                                                                                                                                                                                                                                                      |     *((a0 + 1)) = a1;
    0x0007e898 move s3, s4                                                                                                                                                                                                                                                       |     s3 = s4;
    0x0007e89c b 0x7e8bc                                                                                                                                                                                                                                                         |     goto label_24;
                                                                                                                                                                                                                                                                                 | label_32:
    0x0007e8a0 lw t9, -0x7310(gp)                                                                                                                                                                                                                                                |     t9 = *((gp - 7364));
    0x0007e8a4 jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007e8a8 nop                                                                                                                                                                                                                                                               |     
    0x0007e8ac lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |     gp = *(var_18h);
    0x0007e8b0 sw v0, 0xc(s1)                                                                                                                                                                                                                                                    |     *((s1 + 3)) = v0;
    0x0007e8b4 sw v0, 0x10(s1)                                                                                                                                                                                                                                                   |     *((s1 + 4)) = v0;
    0x0007e8b8 b 0x7ecfc                                                                                                                                                                                                                                                         |     goto label_141;
                                                                                                                                                                                                                                                                                 | label_24:
    0x0007e8bc sw s3, 0xe8(sp)                                                                                                                                                                                                                                                   |     *(var_e8h) = s3;
                                                                                                                                                                                                                                                                                 | label_34:
    0x0007e8c0 sw s2, 0xe4(sp)                                                                                                                                                                                                                                                   |     *(var_e4h) = s2;
    0x0007e8c4 b 0x7e230                                                                                                                                                                                                                                                         |     goto label_20;
                                                                                                                                                                                                                                                                                 | label_97:
    0x0007e8c8 lw a0, 0x2c(sp)                                                                                                                                                                                                                                                   |     a0 = *(var_2ch);
                                                                                                                                                                                                                                                                                 | label_98:
    0x0007e8cc lw t9, -0x7518(gp)                                                                                                                                                                                                                                                |     t9 = sym.imp.free;
    0x0007e8d0 jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007e8d4 nop                                                                                                                                                                                                                                                               |     
    0x0007e8d8 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |     gp = *(var_18h);
    0x0007e8dc lw a0, 0xb0(sp)                                                                                                                                                                                                                                                   |     a0 = *(var_b0h);
    0x0007e8e0 addiu v0, sp, 0xb8                                                                                                                                                                                                                                                |     v0 = sp + 0xb8;
    0x0007e8e4 lw t9, -0x7488(gp)                                                                                                                                                                                                                                                |     t9 = *((gp - 7458));
                                                                                                                                                                                                                                                                                 |     if (a0 != v0) {
    0x0007e8e8 beq a0, v0, 0x7e8f8                                                                                                                                                                                                                                               |         
    0x0007e8ec jalr t9                                                                                                                                                                                                                                                           |         t9 ();
    0x0007e8f0 nop                                                                                                                                                                                                                                                               |         
    0x0007e8f4 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |         gp = *(var_18h);
                                                                                                                                                                                                                                                                                 |     }
    0x0007e8f8 lw s1, 0x12c(sp)                                                                                                                                                                                                                                                  |     s1 = *(var_12ch);
    0x0007e8fc lw a0, 0x138(sp)                                                                                                                                                                                                                                                  |     a0 = *(var_138h);
                                                                                                                                                                                                                                                                                 |     if (s1 == 0) {
    0x0007e900 beqz s1, 0x7e97c                                                                                                                                                                                                                                                  |         goto label_142;
                                                                                                                                                                                                                                                                                 |     }
    0x0007e904 lw a0, (s1)                                                                                                                                                                                                                                                       |     a0 = *(s1);
    0x0007e908 addiu a1, zero, 1                                                                                                                                                                                                                                                 |     a1 = 1;
                                                                                                                                                                                                                                                                                 |     if (a0 == 0) {
    0x0007e90c beqz a0, 0x7e94c                                                                                                                                                                                                                                                  |         goto label_143;
                                                                                                                                                                                                                                                                                 |     }
    0x0007e910 lw v0, 8(s1)                                                                                                                                                                                                                                                      |     v0 = *((s1 + 2));
                                                                                                                                                                                                                                                                                 |     if (v0 == a0) {
    0x0007e914 beql v0, a0, 0x7e94c                                                                                                                                                                                                                                              |         goto label_143;
                                                                                                                                                                                                                                                                                 |     }
    0x0007e918 sw zero, 4(v0)                                                                                                                                                                                                                                                    |     *((v0 + 1)) = 0;
                                                                                                                                                                                                                                                                                 |     do {
    0x0007e91c lw s0, 8(a0)                                                                                                                                                                                                                                                      |         s0 = *((a0 + 2));
    0x0007e920 lw t9, -0x7518(gp)                                                                                                                                                                                                                                                |         t9 = sym.imp.free;
    0x0007e924 jalr t9                                                                                                                                                                                                                                                           |         t9 ();
    0x0007e928 nop                                                                                                                                                                                                                                                               |         
    0x0007e92c lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |         gp = *(var_18h);
    0x0007e930 sw s0, (s1)                                                                                                                                                                                                                                                       |         *(s1) = s0;
                                                                                                                                                                                                                                                                                 |         if (s0 == 0) {
    0x0007e934 beqz s0, 0x7e948                                                                                                                                                                                                                                                  |             goto label_144;
                                                                                                                                                                                                                                                                                 |         }
    0x0007e938 lw v0, 8(s1)                                                                                                                                                                                                                                                      |         v0 = *((s1 + 2));
    0x0007e93c move a0, s0                                                                                                                                                                                                                                                       |         a0 = s0;
    0x0007e940 bne v0, s0, 0x7e91c                                                                                                                                                                                                                                               |         
                                                                                                                                                                                                                                                                                 |     } while (v0 != s0);
    0x0007e944 sw zero, 4(v0)                                                                                                                                                                                                                                                    |     *((v0 + 1)) = 0;
                                                                                                                                                                                                                                                                                 | label_144:
    0x0007e948 addiu a1, zero, 1                                                                                                                                                                                                                                                 |     a1 = 1;
                                                                                                                                                                                                                                                                                 | label_143:
    0x0007e94c lw a0, 0x10(s1)                                                                                                                                                                                                                                                   |     a0 = *((s1 + 4));
    0x0007e950 lw t9, -0x7404(gp)                                                                                                                                                                                                                                                |     t9 = sym.imp.operator_delete_void__unsigned_int_;
    0x0007e954 jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007e958 nop                                                                                                                                                                                                                                                               |     
    0x0007e95c lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |     gp = *(var_18h);
    0x0007e960 addiu a1, zero, 0x14                                                                                                                                                                                                                                              |     a1 = 0x14;
    0x0007e964 move a0, s1                                                                                                                                                                                                                                                       |     a0 = s1;
    0x0007e968 lw t9, -0x7404(gp)                                                                                                                                                                                                                                                |     t9 = sym.imp.operator_delete_void__unsigned_int_;
    0x0007e96c jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007e970 nop                                                                                                                                                                                                                                                               |     
    0x0007e974 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |     gp = *(var_18h);
    0x0007e978 lw a0, 0x138(sp)                                                                                                                                                                                                                                                  |     a0 = *(var_138h);
                                                                                                                                                                                                                                                                                 | label_142:
    0x0007e97c lw t9, -0x7518(gp)                                                                                                                                                                                                                                                |     t9 = sym.imp.free;
    0x0007e980 jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007e984 nop                                                                                                                                                                                                                                                               |     
    0x0007e988 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |     gp = *(var_18h);
    0x0007e98c addiu a1, zero, 1                                                                                                                                                                                                                                                 |     a1 = 1;
    0x0007e990 lw a0, 0x134(sp)                                                                                                                                                                                                                                                  |     a0 = *(var_134h);
    0x0007e994 lw t9, -0x7404(gp)                                                                                                                                                                                                                                                |     t9 = sym.imp.operator_delete_void__unsigned_int_;
    0x0007e998 jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007e99c nop                                                                                                                                                                                                                                                               |     
    0x0007e9a0 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |     gp = *(var_18h);
    0x0007e9a4 lw s1, 0xf4(sp)                                                                                                                                                                                                                                                   |     s1 = *(var_f4h);
    0x0007e9a8 lw a0, 0x100(sp)                                                                                                                                                                                                                                                  |     a0 = *(var_100h);
                                                                                                                                                                                                                                                                                 |     if (s1 == 0) {
    0x0007e9ac beqz s1, 0x7ea28                                                                                                                                                                                                                                                  |         goto label_145;
                                                                                                                                                                                                                                                                                 |     }
    0x0007e9b0 lw a0, (s1)                                                                                                                                                                                                                                                       |     a0 = *(s1);
    0x0007e9b4 addiu a1, zero, 1                                                                                                                                                                                                                                                 |     a1 = 1;
                                                                                                                                                                                                                                                                                 |     if (a0 == 0) {
    0x0007e9b8 beqz a0, 0x7e9f8                                                                                                                                                                                                                                                  |         goto label_146;
                                                                                                                                                                                                                                                                                 |     }
    0x0007e9bc lw v0, 8(s1)                                                                                                                                                                                                                                                      |     v0 = *((s1 + 2));
                                                                                                                                                                                                                                                                                 |     if (v0 == a0) {
    0x0007e9c0 beql v0, a0, 0x7e9f8                                                                                                                                                                                                                                              |         goto label_146;
                                                                                                                                                                                                                                                                                 |     }
    0x0007e9c4 sw zero, 4(v0)                                                                                                                                                                                                                                                    |     *((v0 + 1)) = 0;
                                                                                                                                                                                                                                                                                 |     do {
    0x0007e9c8 lw s0, 8(a0)                                                                                                                                                                                                                                                      |         s0 = *((a0 + 2));
    0x0007e9cc lw t9, -0x7518(gp)                                                                                                                                                                                                                                                |         t9 = sym.imp.free;
    0x0007e9d0 jalr t9                                                                                                                                                                                                                                                           |         t9 ();
    0x0007e9d4 nop                                                                                                                                                                                                                                                               |         
    0x0007e9d8 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |         gp = *(var_18h);
    0x0007e9dc sw s0, (s1)                                                                                                                                                                                                                                                       |         *(s1) = s0;
                                                                                                                                                                                                                                                                                 |         if (s0 == 0) {
    0x0007e9e0 beqz s0, 0x7e9f4                                                                                                                                                                                                                                                  |             goto label_147;
                                                                                                                                                                                                                                                                                 |         }
    0x0007e9e4 lw v0, 8(s1)                                                                                                                                                                                                                                                      |         v0 = *((s1 + 2));
    0x0007e9e8 move a0, s0                                                                                                                                                                                                                                                       |         a0 = s0;
    0x0007e9ec bne v0, s0, 0x7e9c8                                                                                                                                                                                                                                               |         
                                                                                                                                                                                                                                                                                 |     } while (v0 != s0);
    0x0007e9f0 sw zero, 4(v0)                                                                                                                                                                                                                                                    |     *((v0 + 1)) = 0;
                                                                                                                                                                                                                                                                                 | label_147:
    0x0007e9f4 addiu a1, zero, 1                                                                                                                                                                                                                                                 |     a1 = 1;
                                                                                                                                                                                                                                                                                 | label_146:
    0x0007e9f8 lw a0, 0x10(s1)                                                                                                                                                                                                                                                   |     a0 = *((s1 + 4));
    0x0007e9fc lw t9, -0x7404(gp)                                                                                                                                                                                                                                                |     t9 = sym.imp.operator_delete_void__unsigned_int_;
    0x0007ea00 jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007ea04 nop                                                                                                                                                                                                                                                               |     
    0x0007ea08 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |     gp = *(var_18h);
    0x0007ea0c addiu a1, zero, 0x14                                                                                                                                                                                                                                              |     a1 = 0x14;
    0x0007ea10 move a0, s1                                                                                                                                                                                                                                                       |     a0 = s1;
    0x0007ea14 lw t9, -0x7404(gp)                                                                                                                                                                                                                                                |     t9 = sym.imp.operator_delete_void__unsigned_int_;
    0x0007ea18 jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007ea1c nop                                                                                                                                                                                                                                                               |     
    0x0007ea20 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |     gp = *(var_18h);
    0x0007ea24 lw a0, 0x100(sp)                                                                                                                                                                                                                                                  |     a0 = *(var_100h);
                                                                                                                                                                                                                                                                                 | label_145:
    0x0007ea28 lw t9, -0x7518(gp)                                                                                                                                                                                                                                                |     t9 = sym.imp.free;
    0x0007ea2c jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007ea30 nop                                                                                                                                                                                                                                                               |     
    0x0007ea34 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |     gp = *(var_18h);
    0x0007ea38 addiu a1, zero, 1                                                                                                                                                                                                                                                 |     a1 = 1;
    0x0007ea3c lw a0, 0xfc(sp)                                                                                                                                                                                                                                                   |     a0 = *(var_fch);
    0x0007ea40 lw t9, -0x7404(gp)                                                                                                                                                                                                                                                |     t9 = sym.imp.operator_delete_void__unsigned_int_;
    0x0007ea44 jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007ea48 nop                                                                                                                                                                                                                                                               |     
    0x0007ea4c lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |     gp = *(var_18h);
    0x0007ea50 lw v1, 0x18c(sp)                                                                                                                                                                                                                                                  |     v1 = *(var_18ch);
    0x0007ea54 lw v0, -0x736c(gp)                                                                                                                                                                                                                                                |     v0 = *((gp - 7387));
    0x0007ea58 lw v0, (v0)                                                                                                                                                                                                                                                       |     v0 = *(v0);
    0x0007ea5c lw ra, 0x1b4(sp)                                                                                                                                                                                                                                                  |     ra = *(var_1b4h);
                                                                                                                                                                                                                                                                                 |     if (v1 != v0) {
    0x0007ea60 bne v1, v0, 0x7f024                                                                                                                                                                                                                                               |         goto label_148;
                                                                                                                                                                                                                                                                                 |     }
    0x0007ea64 lw fp, 0x1b0(sp)                                                                                                                                                                                                                                                  |     fp = *(var_1b0h);
    0x0007ea68 lw s7, 0x1ac(sp)                                                                                                                                                                                                                                                  |     s7 = *(var_1ach);
    0x0007ea6c lw s6, 0x1a8(sp)                                                                                                                                                                                                                                                  |     s6 = *(var_1a8h);
    0x0007ea70 lw s5, 0x1a4(sp)                                                                                                                                                                                                                                                  |     s5 = *(var_1a4h);
    0x0007ea74 lw s4, 0x1a0(sp)                                                                                                                                                                                                                                                  |     s4 = *(var_1a0h);
    0x0007ea78 lw s3, 0x19c(sp)                                                                                                                                                                                                                                                  |     s3 = *(var_19ch);
    0x0007ea7c lw s2, 0x198(sp)                                                                                                                                                                                                                                                  |     s2 = *(var_198h);
    0x0007ea80 lw s1, 0x194(sp)                                                                                                                                                                                                                                                  |     s1 = *(var_194h);
    0x0007ea84 lw s0, 0x190(sp)                                                                                                                                                                                                                                                  |     s0 = *(var_190h);
    0x0007ea88 addiu sp, sp, 0x1b8                                                                                                                                                                                                                                               |     
    0x0007ea8c jr ra                                                                                                                                                                                                                                                             |     return v1;
                                                                                                                                                                                                                                                                                 | label_51:
    0x0007eae4 lw a0, 0xb0(sp)                                                                                                                                                                                                                                                   |     a0 = *(var_b0h);
    0x0007eae8 addiu v0, sp, 0xb8                                                                                                                                                                                                                                                |     v0 = sp + 0xb8;
    0x0007eaec lw t9, -0x7488(gp)                                                                                                                                                                                                                                                |     t9 = *((gp - 7458));
                                                                                                                                                                                                                                                                                 |     if (a0 != v0) {
    0x0007eaf0 beq a0, v0, 0x7eb00                                                                                                                                                                                                                                               |         
    0x0007eaf4 jalr t9                                                                                                                                                                                                                                                           |         t9 ();
    0x0007eaf8 nop                                                                                                                                                                                                                                                               |         
    0x0007eafc lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |         gp = *(var_18h);
                                                                                                                                                                                                                                                                                 |     }
    0x0007eb00 addiu a0, sp, 0x118                                                                                                                                                                                                                                               |     a0 = sp + aav.0x00000118;
    0x0007eb04 lw t9, -0x7fbc(gp)                                                                                                                                                                                                                                                |     t9 = *(gp);
    0x0007eb08 jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007eb0c nop                                                                                                                                                                                                                                                               |     
    0x0007eb10 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |     gp = *(var_18h);
    0x0007eb14 addiu a0, sp, 0xe0                                                                                                                                                                                                                                                |     a0 = sp + 0xe0;
    0x0007eb18 b 0x7ced0                                                                                                                                                                                                                                                         |     goto label_21;
                                                                                                                                                                                                                                                                                 | label_94:
    0x0007ec34 move s3, zero                                                                                                                                                                                                                                                     |     s3 = 0;
    0x0007ec38 b 0x7dcc4                                                                                                                                                                                                                                                         |     goto label_22;
                                                                                                                                                                                                                                                                                 | label_48:
    0x0007ec3c move s3, zero                                                                                                                                                                                                                                                     |     s3 = 0;
    0x0007ec40 b 0x7dcc4                                                                                                                                                                                                                                                         |     goto label_22;
                                                                                                                                                                                                                                                                                 | label_83:
    0x0007ec44 move v0, zero                                                                                                                                                                                                                                                     |     v0 = 0;
    0x0007ec48 b 0x7d928                                                                                                                                                                                                                                                         |     goto label_23;
                                                                                                                                                                                                                                                                                 | label_139:
    0x0007ec4c move s3, zero                                                                                                                                                                                                                                                     |     s3 = 0;
    0x0007ec50 b 0x7e8bc                                                                                                                                                                                                                                                         |     goto label_24;
                                                                                                                                                                                                                                                                                 | label_33:
    0x0007ec54 move s3, zero                                                                                                                                                                                                                                                     |     s3 = 0;
    0x0007ec58 b 0x7e8bc                                                                                                                                                                                                                                                         |     goto label_24;
                                                                                                                                                                                                                                                                                 | label_134:
    0x0007ec5c move s4, zero                                                                                                                                                                                                                                                     |     s4 = 0;
    0x0007ec60 b 0x7e750                                                                                                                                                                                                                                                         |     goto label_25;
                                                                                                                                                                                                                                                                                 | label_38:
    0x0007ec64 move s4, zero                                                                                                                                                                                                                                                     |     s4 = 0;
    0x0007ec68 b 0x7e750                                                                                                                                                                                                                                                         |     goto label_25;
                                                                                                                                                                                                                                                                                 | label_115:
    0x0007ec6c move s1, zero                                                                                                                                                                                                                                                     |     s1 = 0;
    0x0007ec70 b 0x7e0dc                                                                                                                                                                                                                                                         |     goto label_26;
                                                                                                                                                                                                                                                                                 | label_110:
    0x0007ec74 move s0, zero                                                                                                                                                                                                                                                     |     s0 = 0;
    0x0007ec78 b 0x7df68                                                                                                                                                                                                                                                         |     goto label_27;
                                                                                                                                                                                                                                                                                 | label_129:
    0x0007ec7c move s3, zero                                                                                                                                                                                                                                                     |     s3 = 0;
    0x0007ec80 b 0x7e504                                                                                                                                                                                                                                                         |     goto label_28;
                                                                                                                                                                                                                                                                                 | label_43:
    0x0007ec84 move s3, zero                                                                                                                                                                                                                                                     |     s3 = 0;
    0x0007ec88 b 0x7e504                                                                                                                                                                                                                                                         |     goto label_28;
                                                                                                                                                                                                                                                                                 | label_126:
    0x0007ec8c move s0, zero                                                                                                                                                                                                                                                     |     s0 = 0;
    0x0007ec90 b 0x7e380                                                                                                                                                                                                                                                         |     goto label_29;
                                                                                                                                                                                                                                                                                 | label_122:
    0x0007ec94 addiu v0, zero, 0x100                                                                                                                                                                                                                                             |     v0 = aav.0x00000100;
                                                                                                                                                                                                                                                                                 |     if (s4 == 0) {
    0x0007ec98 beqz s4, 0x7e7c4                                                                                                                                                                                                                                                  |         goto label_30;
                                                                                                                                                                                                                                                                                 |     }
    0x0007ec9c addiu s2, zero, 0x10                                                                                                                                                                                                                                              |     s2 = 0x10;
    0x0007eca0 sll s0, v1, 4                                                                                                                                                                                                                                                     |     s0 = v1 << 4;
                                                                                                                                                                                                                                                                                 | label_137:
    0x0007eca4 sltu v1, s0, v0                                                                                                                                                                                                                                                   |     v1 = (s0 < v0) ? 1 : 0;
    0x0007eca8 move s3, s4                                                                                                                                                                                                                                                       |     s3 = s4;
                                                                                                                                                                                                                                                                                 |     if (v1 == 0) {
    0x0007ecac beqz v1, 0x7e8bc                                                                                                                                                                                                                                                  |         goto label_24;
                                                                                                                                                                                                                                                                                 |     }
    0x0007ecb0 lw a0, (s1)                                                                                                                                                                                                                                                       |     a0 = *(s1);
    0x0007ecb4 lw v1, 4(a0)                                                                                                                                                                                                                                                      |     v1 = *((a0 + 1));
    0x0007ecb8 addiu a1, v1, 0x10                                                                                                                                                                                                                                                |     a1 = v1 + 0x10;
    0x0007ecbc subu a1, a1, s0                                                                                                                                                                                                                                                   |     __asm ("subu a1, a1, s0");
    0x0007ecc0 addu a1, a0, a1                                                                                                                                                                                                                                                   |     a1 = a0 + a1;
    0x0007ecc4 move s5, v0                                                                                                                                                                                                                                                       |     s5 = v0;
                                                                                                                                                                                                                                                                                 |     if (s4 == a1) {
    0x0007ecc8 beq s4, a1, 0x7e87c                                                                                                                                                                                                                                               |         goto label_31;
                                                                                                                                                                                                                                                                                 |     }
                                                                                                                                                                                                                                                                                 | label_140:
    0x0007eccc addu v0, v1, v0                                                                                                                                                                                                                                                   |     v0 = v1 + v0;
    0x0007ecd0 lw v1, (a0)                                                                                                                                                                                                                                                       |     v1 = *(a0);
    0x0007ecd4 sltu v0, v1, v0                                                                                                                                                                                                                                                   |     v0 = (v1 < v0) ? 1 : 0;
                                                                                                                                                                                                                                                                                 |     if (v0 == 0) {
    0x0007ecd8 beql v0, zero, 0x7ed34                                                                                                                                                                                                                                            |         goto label_149;
                                                                                                                                                                                                                                                                                 |     }
    0x0007ecdc lw v0, (s1)                                                                                                                                                                                                                                                       |     v0 = *(s1);
    0x0007ece0 lw v0, 4(s1)                                                                                                                                                                                                                                                      |     v0 = *((s1 + 1));
    0x0007ece4 sltu s3, v0, s5                                                                                                                                                                                                                                                   |     s3 = (v0 < s5) ? 1 : 0;
                                                                                                                                                                                                                                                                                 |     if (s3 == 0) {
    0x0007ece8 movn v0, s5, s3                                                                                                                                                                                                                                                   |         v0 = s5;
                                                                                                                                                                                                                                                                                 |     }
    0x0007ecec move s3, v0                                                                                                                                                                                                                                                       |     s3 = v0;
    0x0007ecf0 lw v0, 0xc(s1)                                                                                                                                                                                                                                                    |     v0 = *((s1 + 3));
    0x0007ecf4 addiu a0, zero, 1                                                                                                                                                                                                                                                 |     a0 = 1;
                                                                                                                                                                                                                                                                                 |     if (v0 == 0) {
    0x0007ecf8 beqz v0, 0x7e8a0                                                                                                                                                                                                                                                  |         goto label_32;
                                                                                                                                                                                                                                                                                 |     }
                                                                                                                                                                                                                                                                                 | label_141:
    0x0007ecfc addiu a0, s3, 0x10                                                                                                                                                                                                                                                |     a0 = s3 + 0x10;
    0x0007ed00 lw t9, -0x73c8(gp)                                                                                                                                                                                                                                                |     t9 = sym.imp.malloc;
                                                                                                                                                                                                                                                                                 |     if (a0 == 0) {
    0x0007ed04 beqz a0, 0x7ec54                                                                                                                                                                                                                                                  |         goto label_33;
                                                                                                                                                                                                                                                                                 |     }
    0x0007ed08 jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007ed0c nop                                                                                                                                                                                                                                                               |     
    0x0007ed10 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |     gp = *(var_18h);
                                                                                                                                                                                                                                                                                 |     if (v0 == 0) {
    0x0007ed14 beql v0, zero, 0x7e8bc                                                                                                                                                                                                                                            |         goto label_24;
                                                                                                                                                                                                                                                                                 |     }
    0x0007ed18 move s3, zero                                                                                                                                                                                                                                                     |     s3 = 0;
    0x0007ed1c sw s3, (v0)                                                                                                                                                                                                                                                       |     *(v0) = s3;
    0x0007ed20 sw zero, 4(v0)                                                                                                                                                                                                                                                    |     *((v0 + 1)) = 0;
    0x0007ed24 lw v1, (s1)                                                                                                                                                                                                                                                       |     v1 = *(s1);
    0x0007ed28 sw v1, 8(v0)                                                                                                                                                                                                                                                      |     *((v0 + 2)) = v1;
    0x0007ed2c sw v0, (s1)                                                                                                                                                                                                                                                       |     *(s1) = v0;
    0x0007ed30 lw v0, (s1)                                                                                                                                                                                                                                                       |     v0 = *(s1);
                                                                                                                                                                                                                                                                                 | label_149:
    0x0007ed34 lw v1, 4(v0)                                                                                                                                                                                                                                                      |     v1 = *((v0 + 1));
    0x0007ed38 addiu s3, v1, 0x10                                                                                                                                                                                                                                                |     s3 = v1 + 0x10;
    0x0007ed3c addu s3, v0, s3                                                                                                                                                                                                                                                   |     s3 = v0 + s3;
    0x0007ed40 addu s5, s5, v1                                                                                                                                                                                                                                                   |     s5 += v1;
    0x0007ed44 sw s5, 4(v0)                                                                                                                                                                                                                                                      |     *((v0 + 1)) = s5;
                                                                                                                                                                                                                                                                                 |     if (s3 == 0) {
    0x0007ed48 beqz s3, 0x7e8bc                                                                                                                                                                                                                                                  |         goto label_24;
                                                                                                                                                                                                                                                                                 |     }
                                                                                                                                                                                                                                                                                 |     if (s0 == 0) {
    0x0007ed4c beql s0, zero, 0x7e8c0                                                                                                                                                                                                                                            |         goto label_34;
                                                                                                                                                                                                                                                                                 |     }
    0x0007ed50 sw s3, 0xe8(sp)                                                                                                                                                                                                                                                   |     *(var_e8h) = s3;
    0x0007ed54 move a2, s0                                                                                                                                                                                                                                                       |     a2 = s0;
    0x0007ed58 move a1, s4                                                                                                                                                                                                                                                       |     a1 = s4;
    0x0007ed5c move a0, s3                                                                                                                                                                                                                                                       |     a0 = s3;
    0x0007ed60 lw t9, -0x73b4(gp)                                                                                                                                                                                                                                                |     t9 = sym.imp.memcpy;
    0x0007ed64 jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007ed68 nop                                                                                                                                                                                                                                                               |     
    0x0007ed6c lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |     gp = *(var_18h);
    0x0007ed70 sw s3, 0xe8(sp)                                                                                                                                                                                                                                                   |     *(var_e8h) = s3;
    0x0007ed74 b 0x7e8c0                                                                                                                                                                                                                                                         |     goto label_34;
                                                                                                                                                                                                                                                                                 | label_118:
    0x0007ed78 addiu v0, zero, 0x200                                                                                                                                                                                                                                             |     v0 = aav.0x00000200;
                                                                                                                                                                                                                                                                                 |     if (s5 == 0) {
    0x0007ed7c beqz s5, 0x7e658                                                                                                                                                                                                                                                  |         goto label_35;
                                                                                                                                                                                                                                                                                 |     }
    0x0007ed80 addiu s3, zero, 0x10                                                                                                                                                                                                                                              |     s3 = 0x10;
    0x0007ed84 sll s0, v1, 5                                                                                                                                                                                                                                                     |     s0 = v1 << 5;
                                                                                                                                                                                                                                                                                 | label_132:
    0x0007ed88 sltu v1, s0, v0                                                                                                                                                                                                                                                   |     v1 = (s0 < v0) ? 1 : 0;
    0x0007ed8c move s4, s5                                                                                                                                                                                                                                                       |     s4 = s5;
                                                                                                                                                                                                                                                                                 |     if (v1 == 0) {
    0x0007ed90 beqz v1, 0x7e750                                                                                                                                                                                                                                                  |         goto label_25;
                                                                                                                                                                                                                                                                                 |     }
    0x0007ed94 lw a0, (s2)                                                                                                                                                                                                                                                       |     a0 = *(s2);
    0x0007ed98 lw v1, 4(a0)                                                                                                                                                                                                                                                      |     v1 = *((a0 + 1));
    0x0007ed9c addiu a1, v1, 0x10                                                                                                                                                                                                                                                |     a1 = v1 + 0x10;
    0x0007eda0 subu a1, a1, s0                                                                                                                                                                                                                                                   |     __asm ("subu a1, a1, s0");
    0x0007eda4 addu a1, a0, a1                                                                                                                                                                                                                                                   |     a1 = a0 + a1;
    0x0007eda8 move s6, v0                                                                                                                                                                                                                                                       |     s6 = v0;
                                                                                                                                                                                                                                                                                 |     if (s5 == a1) {
    0x0007edac beq s5, a1, 0x7e710                                                                                                                                                                                                                                               |         goto label_36;
                                                                                                                                                                                                                                                                                 |     }
    0x0007edb0 addu v0, v1, v0                                                                                                                                                                                                                                                   |     v0 = v1 + v0;
                                                                                                                                                                                                                                                                                 | label_135:
    0x0007edb4 lw v1, (a0)                                                                                                                                                                                                                                                       |     v1 = *(a0);
    0x0007edb8 sltu v0, v1, v0                                                                                                                                                                                                                                                   |     v0 = (v1 < v0) ? 1 : 0;
                                                                                                                                                                                                                                                                                 |     if (v0 == 0) {
    0x0007edbc beql v0, zero, 0x7ee18                                                                                                                                                                                                                                            |         goto label_150;
                                                                                                                                                                                                                                                                                 |     }
    0x0007edc0 lw v0, (s2)                                                                                                                                                                                                                                                       |     v0 = *(s2);
    0x0007edc4 lw v0, 4(s2)                                                                                                                                                                                                                                                      |     v0 = *((s2 + 1));
    0x0007edc8 sltu s4, v0, s6                                                                                                                                                                                                                                                   |     s4 = (v0 < s6) ? 1 : 0;
                                                                                                                                                                                                                                                                                 |     if (s4 == 0) {
    0x0007edcc movn v0, s6, s4                                                                                                                                                                                                                                                   |         v0 = s6;
                                                                                                                                                                                                                                                                                 |     }
    0x0007edd0 move s4, v0                                                                                                                                                                                                                                                       |     s4 = v0;
    0x0007edd4 lw v0, 0xc(s2)                                                                                                                                                                                                                                                    |     v0 = *((s2 + 3));
    0x0007edd8 addiu a0, zero, 1                                                                                                                                                                                                                                                 |     a0 = 1;
                                                                                                                                                                                                                                                                                 |     if (v0 == 0) {
    0x0007eddc beqz v0, 0x7e734                                                                                                                                                                                                                                                  |         goto label_37;
                                                                                                                                                                                                                                                                                 |     }
                                                                                                                                                                                                                                                                                 | label_136:
    0x0007ede0 addiu a0, s4, 0x10                                                                                                                                                                                                                                                |     a0 = s4 + 0x10;
    0x0007ede4 lw t9, -0x73c8(gp)                                                                                                                                                                                                                                                |     t9 = sym.imp.malloc;
                                                                                                                                                                                                                                                                                 |     if (a0 == 0) {
    0x0007ede8 beqz a0, 0x7ec64                                                                                                                                                                                                                                                  |         goto label_38;
                                                                                                                                                                                                                                                                                 |     }
    0x0007edec jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007edf0 nop                                                                                                                                                                                                                                                               |     
    0x0007edf4 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |     gp = *(var_18h);
                                                                                                                                                                                                                                                                                 |     if (v0 == 0) {
    0x0007edf8 beql v0, zero, 0x7e750                                                                                                                                                                                                                                            |         goto label_25;
                                                                                                                                                                                                                                                                                 |     }
    0x0007edfc move s4, zero                                                                                                                                                                                                                                                     |     s4 = 0;
    0x0007ee00 sw s4, (v0)                                                                                                                                                                                                                                                       |     *(v0) = s4;
    0x0007ee04 sw zero, 4(v0)                                                                                                                                                                                                                                                    |     *((v0 + 1)) = 0;
    0x0007ee08 lw v1, (s2)                                                                                                                                                                                                                                                       |     v1 = *(s2);
    0x0007ee0c sw v1, 8(v0)                                                                                                                                                                                                                                                      |     *((v0 + 2)) = v1;
    0x0007ee10 sw v0, (s2)                                                                                                                                                                                                                                                       |     *(s2) = v0;
    0x0007ee14 lw v0, (s2)                                                                                                                                                                                                                                                       |     v0 = *(s2);
                                                                                                                                                                                                                                                                                 | label_150:
    0x0007ee18 lw v1, 4(v0)                                                                                                                                                                                                                                                      |     v1 = *((v0 + 1));
    0x0007ee1c addiu s4, v1, 0x10                                                                                                                                                                                                                                                |     s4 = v1 + 0x10;
    0x0007ee20 addu s4, v0, s4                                                                                                                                                                                                                                                   |     s4 = v0 + s4;
    0x0007ee24 addu s6, s6, v1                                                                                                                                                                                                                                                   |     s6 += v1;
    0x0007ee28 sw s6, 4(v0)                                                                                                                                                                                                                                                      |     *((v0 + 1)) = s6;
                                                                                                                                                                                                                                                                                 |     if (s4 == 0) {
    0x0007ee2c beqz s4, 0x7e750                                                                                                                                                                                                                                                  |         goto label_25;
                                                                                                                                                                                                                                                                                 |     }
                                                                                                                                                                                                                                                                                 |     if (s0 == 0) {
    0x0007ee30 beql s0, zero, 0x7e754                                                                                                                                                                                                                                            |         goto label_39;
                                                                                                                                                                                                                                                                                 |     }
    0x0007ee34 sw s4, 0x120(sp)                                                                                                                                                                                                                                                  |     *(var_120h) = s4;
    0x0007ee38 move a2, s0                                                                                                                                                                                                                                                       |     a2 = s0;
    0x0007ee3c move a1, s5                                                                                                                                                                                                                                                       |     a1 = s5;
    0x0007ee40 move a0, s4                                                                                                                                                                                                                                                       |     a0 = s4;
    0x0007ee44 lw t9, -0x73b4(gp)                                                                                                                                                                                                                                                |     t9 = sym.imp.memcpy;
    0x0007ee48 jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007ee4c nop                                                                                                                                                                                                                                                               |     
    0x0007ee50 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |     gp = *(var_18h);
    0x0007ee54 sw s4, 0x120(sp)                                                                                                                                                                                                                                                  |     *(var_120h) = s4;
    0x0007ee58 b 0x7e754                                                                                                                                                                                                                                                         |     goto label_39;
                                                                                                                                                                                                                                                                                 | label_104:
    0x0007ee5c addiu s2, zero, 0x10                                                                                                                                                                                                                                              |     s2 = 0x10;
                                                                                                                                                                                                                                                                                 |     if (s4 == 0) {
    0x0007ee60 beqz s4, 0x7e40c                                                                                                                                                                                                                                                  |         goto label_40;
                                                                                                                                                                                                                                                                                 |     }
    0x0007ee64 addiu v0, zero, 0x200                                                                                                                                                                                                                                             |     v0 = aav.0x00000200;
    0x0007ee68 sll s0, s0, 5                                                                                                                                                                                                                                                     |     s0 <<= 5;
                                                                                                                                                                                                                                                                                 | label_127:
    0x0007ee6c sltu v1, s0, v0                                                                                                                                                                                                                                                   |     v1 = (s0 < v0) ? 1 : 0;
    0x0007ee70 move s3, s4                                                                                                                                                                                                                                                       |     s3 = s4;
                                                                                                                                                                                                                                                                                 |     if (v1 == 0) {
    0x0007ee74 beqz v1, 0x7e504                                                                                                                                                                                                                                                  |         goto label_28;
                                                                                                                                                                                                                                                                                 |     }
    0x0007ee78 lw a0, (s1)                                                                                                                                                                                                                                                       |     a0 = *(s1);
    0x0007ee7c lw v1, 4(a0)                                                                                                                                                                                                                                                      |     v1 = *((a0 + 1));
    0x0007ee80 addiu a1, v1, 0x10                                                                                                                                                                                                                                                |     a1 = v1 + 0x10;
    0x0007ee84 subu a1, a1, s0                                                                                                                                                                                                                                                   |     __asm ("subu a1, a1, s0");
    0x0007ee88 addu a1, a0, a1                                                                                                                                                                                                                                                   |     a1 = a0 + a1;
    0x0007ee8c move s5, v0                                                                                                                                                                                                                                                       |     s5 = v0;
                                                                                                                                                                                                                                                                                 |     if (s4 == a1) {
    0x0007ee90 beq s4, a1, 0x7e4c4                                                                                                                                                                                                                                               |         goto label_41;
                                                                                                                                                                                                                                                                                 |     }
    0x0007ee94 addu v0, v1, v0                                                                                                                                                                                                                                                   |     v0 = v1 + v0;
                                                                                                                                                                                                                                                                                 | label_130:
    0x0007ee98 lw v1, (a0)                                                                                                                                                                                                                                                       |     v1 = *(a0);
    0x0007ee9c sltu v0, v1, v0                                                                                                                                                                                                                                                   |     v0 = (v1 < v0) ? 1 : 0;
                                                                                                                                                                                                                                                                                 |     if (v0 == 0) {
    0x0007eea0 beql v0, zero, 0x7eef8                                                                                                                                                                                                                                            |         goto label_151;
                                                                                                                                                                                                                                                                                 |     }
    0x0007eea4 lw v0, (s1)                                                                                                                                                                                                                                                       |     v0 = *(s1);
    0x0007eea8 lw s3, 4(s1)                                                                                                                                                                                                                                                      |     s3 = *((s1 + 1));
    0x0007eeac sltu v0, s3, s5                                                                                                                                                                                                                                                   |     v0 = (s3 < s5) ? 1 : 0;
                                                                                                                                                                                                                                                                                 |     if (v0 == 0) {
    0x0007eeb0 movn s3, s5, v0                                                                                                                                                                                                                                                   |         s3 = s5;
                                                                                                                                                                                                                                                                                 |     }
    0x0007eeb4 lw v0, 0xc(s1)                                                                                                                                                                                                                                                    |     v0 = *((s1 + 3));
    0x0007eeb8 addiu a0, zero, 1                                                                                                                                                                                                                                                 |     a0 = 1;
                                                                                                                                                                                                                                                                                 |     if (v0 == 0) {
    0x0007eebc beqz v0, 0x7e4e8                                                                                                                                                                                                                                                  |         goto label_42;
                                                                                                                                                                                                                                                                                 |     }
                                                                                                                                                                                                                                                                                 | label_131:
    0x0007eec0 addiu a0, s3, 0x10                                                                                                                                                                                                                                                |     a0 = s3 + 0x10;
    0x0007eec4 lw t9, -0x73c8(gp)                                                                                                                                                                                                                                                |     t9 = sym.imp.malloc;
                                                                                                                                                                                                                                                                                 |     if (a0 == 0) {
    0x0007eec8 beqz a0, 0x7ec84                                                                                                                                                                                                                                                  |         goto label_43;
                                                                                                                                                                                                                                                                                 |     }
    0x0007eecc jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007eed0 nop                                                                                                                                                                                                                                                               |     
    0x0007eed4 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |     gp = *(var_18h);
                                                                                                                                                                                                                                                                                 |     if (v0 == 0) {
    0x0007eed8 beql v0, zero, 0x7e504                                                                                                                                                                                                                                            |         goto label_28;
                                                                                                                                                                                                                                                                                 |     }
    0x0007eedc move s3, zero                                                                                                                                                                                                                                                     |     s3 = 0;
    0x0007eee0 sw s3, (v0)                                                                                                                                                                                                                                                       |     *(v0) = s3;
    0x0007eee4 sw zero, 4(v0)                                                                                                                                                                                                                                                    |     *((v0 + 1)) = 0;
    0x0007eee8 lw v1, (s1)                                                                                                                                                                                                                                                       |     v1 = *(s1);
    0x0007eeec sw v1, 8(v0)                                                                                                                                                                                                                                                      |     *((v0 + 2)) = v1;
    0x0007eef0 sw v0, (s1)                                                                                                                                                                                                                                                       |     *(s1) = v0;
    0x0007eef4 lw v0, (s1)                                                                                                                                                                                                                                                       |     v0 = *(s1);
                                                                                                                                                                                                                                                                                 | label_151:
    0x0007eef8 lw v1, 4(v0)                                                                                                                                                                                                                                                      |     v1 = *((v0 + 1));
    0x0007eefc addiu s3, v1, 0x10                                                                                                                                                                                                                                                |     s3 = v1 + 0x10;
    0x0007ef00 addu s3, v0, s3                                                                                                                                                                                                                                                   |     s3 = v0 + s3;
    0x0007ef04 addu s5, s5, v1                                                                                                                                                                                                                                                   |     s5 += v1;
    0x0007ef08 sw s5, 4(v0)                                                                                                                                                                                                                                                      |     *((v0 + 1)) = s5;
                                                                                                                                                                                                                                                                                 |     if (s3 == 0) {
    0x0007ef0c beqz s3, 0x7e504                                                                                                                                                                                                                                                  |         goto label_28;
                                                                                                                                                                                                                                                                                 |     }
                                                                                                                                                                                                                                                                                 |     if (s0 == 0) {
    0x0007ef10 beql s0, zero, 0x7e508                                                                                                                                                                                                                                            |         goto label_44;
                                                                                                                                                                                                                                                                                 |     }
    0x0007ef14 sw s3, 0x120(sp)                                                                                                                                                                                                                                                  |     *(var_120h) = s3;
    0x0007ef18 move a2, s0                                                                                                                                                                                                                                                       |     a2 = s0;
    0x0007ef1c move a1, s4                                                                                                                                                                                                                                                       |     a1 = s4;
    0x0007ef20 move a0, s3                                                                                                                                                                                                                                                       |     a0 = s3;
    0x0007ef24 lw t9, -0x73b4(gp)                                                                                                                                                                                                                                                |     t9 = sym.imp.memcpy;
    0x0007ef28 jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007ef2c nop                                                                                                                                                                                                                                                               |     
    0x0007ef30 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |     gp = *(var_18h);
    0x0007ef34 sw s3, 0x120(sp)                                                                                                                                                                                                                                                  |     *(var_120h) = s3;
    0x0007ef38 b 0x7e508                                                                                                                                                                                                                                                         |     goto label_44;
                                                                                                                                                                                                                                                                                 | label_87:
    0x0007ef3c addiu s7, zero, 0x10                                                                                                                                                                                                                                              |     s7 = 0x10;
                                                                                                                                                                                                                                                                                 |     if (s6 == 0) {
    0x0007ef40 beqz s6, 0x7dbd0                                                                                                                                                                                                                                                  |         goto label_45;
                                                                                                                                                                                                                                                                                 |     }
    0x0007ef44 addiu v0, zero, 0x200                                                                                                                                                                                                                                             |     v0 = aav.0x00000200;
                                                                                                                                                                                                                                                                                 | label_91:
    0x0007ef48 move s3, zero                                                                                                                                                                                                                                                     |     s3 = 0;
                                                                                                                                                                                                                                                                                 |     if (v0 == 0) {
    0x0007ef4c beqz v0, 0x7dcc4                                                                                                                                                                                                                                                  |         goto label_22;
                                                                                                                                                                                                                                                                                 |     }
    0x0007ef50 sll s1, s1, 5                                                                                                                                                                                                                                                     |     s1 <<= 5;
    0x0007ef54 sltu v1, s1, v0                                                                                                                                                                                                                                                   |     v1 = (s1 < v0) ? 1 : 0;
    0x0007ef58 move s3, s6                                                                                                                                                                                                                                                       |     s3 = s6;
                                                                                                                                                                                                                                                                                 |     if (v1 == 0) {
    0x0007ef5c beqz v1, 0x7dcc4                                                                                                                                                                                                                                                  |         goto label_22;
                                                                                                                                                                                                                                                                                 |     }
    0x0007ef60 lw a0, (s0)                                                                                                                                                                                                                                                       |     a0 = *(s0);
    0x0007ef64 lw v1, 4(a0)                                                                                                                                                                                                                                                      |     v1 = *((a0 + 1));
    0x0007ef68 addiu a1, v1, 0x10                                                                                                                                                                                                                                                |     a1 = v1 + 0x10;
    0x0007ef6c subu a1, a1, s1                                                                                                                                                                                                                                                   |     __asm ("subu a1, a1, s1");
    0x0007ef70 addu a1, a0, a1                                                                                                                                                                                                                                                   |     a1 = a0 + a1;
    0x0007ef74 move fp, v0                                                                                                                                                                                                                                                       |     fp = v0;
                                                                                                                                                                                                                                                                                 |     if (s6 == a1) {
    0x0007ef78 beq s6, a1, 0x7dc84                                                                                                                                                                                                                                               |         goto label_46;
                                                                                                                                                                                                                                                                                 |     }
    0x0007ef7c addu v0, v1, v0                                                                                                                                                                                                                                                   |     v0 = v1 + v0;
                                                                                                                                                                                                                                                                                 | label_95:
    0x0007ef80 lw v1, (a0)                                                                                                                                                                                                                                                       |     v1 = *(a0);
    0x0007ef84 sltu v0, v1, v0                                                                                                                                                                                                                                                   |     v0 = (v1 < v0) ? 1 : 0;
                                                                                                                                                                                                                                                                                 |     if (v0 == 0) {
    0x0007ef88 beql v0, zero, 0x7efe0                                                                                                                                                                                                                                            |         goto label_152;
                                                                                                                                                                                                                                                                                 |     }
    0x0007ef8c lw v0, (s0)                                                                                                                                                                                                                                                       |     v0 = *(s0);
    0x0007ef90 lw s3, 4(s0)                                                                                                                                                                                                                                                      |     s3 = *((s0 + 1));
    0x0007ef94 sltu v0, s3, fp                                                                                                                                                                                                                                                   |     v0 = (s3 < fp) ? 1 : 0;
                                                                                                                                                                                                                                                                                 |     if (v0 == 0) {
    0x0007ef98 movn s3, fp, v0                                                                                                                                                                                                                                                   |         s3 = fp;
                                                                                                                                                                                                                                                                                 |     }
    0x0007ef9c lw v0, 0xc(s0)                                                                                                                                                                                                                                                    |     v0 = *((s0 + 3));
    0x0007efa0 addiu a0, zero, 1                                                                                                                                                                                                                                                 |     a0 = 1;
                                                                                                                                                                                                                                                                                 |     if (v0 == 0) {
    0x0007efa4 beqz v0, 0x7dca8                                                                                                                                                                                                                                                  |         goto label_47;
                                                                                                                                                                                                                                                                                 |     }
                                                                                                                                                                                                                                                                                 | label_96:
    0x0007efa8 addiu a0, s3, 0x10                                                                                                                                                                                                                                                |     a0 = s3 + 0x10;
    0x0007efac lw t9, -0x73c8(gp)                                                                                                                                                                                                                                                |     t9 = sym.imp.malloc;
                                                                                                                                                                                                                                                                                 |     if (a0 == 0) {
    0x0007efb0 beqz a0, 0x7ec3c                                                                                                                                                                                                                                                  |         goto label_48;
                                                                                                                                                                                                                                                                                 |     }
    0x0007efb4 jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007efb8 nop                                                                                                                                                                                                                                                               |     
    0x0007efbc lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |     gp = *(var_18h);
                                                                                                                                                                                                                                                                                 |     if (v0 == 0) {
    0x0007efc0 beql v0, zero, 0x7dcc4                                                                                                                                                                                                                                            |         goto label_22;
                                                                                                                                                                                                                                                                                 |     }
    0x0007efc4 move s3, zero                                                                                                                                                                                                                                                     |     s3 = 0;
    0x0007efc8 sw s3, (v0)                                                                                                                                                                                                                                                       |     *(v0) = s3;
    0x0007efcc sw zero, 4(v0)                                                                                                                                                                                                                                                    |     *((v0 + 1)) = 0;
    0x0007efd0 lw v1, (s0)                                                                                                                                                                                                                                                       |     v1 = *(s0);
    0x0007efd4 sw v1, 8(v0)                                                                                                                                                                                                                                                      |     *((v0 + 2)) = v1;
    0x0007efd8 sw v0, (s0)                                                                                                                                                                                                                                                       |     *(s0) = v0;
    0x0007efdc lw v0, (s0)                                                                                                                                                                                                                                                       |     v0 = *(s0);
                                                                                                                                                                                                                                                                                 | label_152:
    0x0007efe0 lw v1, 4(v0)                                                                                                                                                                                                                                                      |     v1 = *((v0 + 1));
    0x0007efe4 addiu s3, v1, 0x10                                                                                                                                                                                                                                                |     s3 = v1 + 0x10;
    0x0007efe8 addu s3, v0, s3                                                                                                                                                                                                                                                   |     s3 = v0 + s3;
    0x0007efec addu fp, fp, v1                                                                                                                                                                                                                                                   |     fp += v1;
    0x0007eff0 sw fp, 4(v0)                                                                                                                                                                                                                                                      |     *((v0 + 1)) = fp;
                                                                                                                                                                                                                                                                                 |     if (s3 == 0) {
    0x0007eff4 beqz s3, 0x7dcc4                                                                                                                                                                                                                                                  |         goto label_22;
                                                                                                                                                                                                                                                                                 |     }
                                                                                                                                                                                                                                                                                 |     if (s1 == 0) {
    0x0007eff8 beql s1, zero, 0x7dcc8                                                                                                                                                                                                                                            |         goto label_49;
                                                                                                                                                                                                                                                                                 |     }
    0x0007effc sw s3, 0xd0(sp)                                                                                                                                                                                                                                                   |     *(var_d0h) = s3;
    0x0007f000 move a2, s1                                                                                                                                                                                                                                                       |     a2 = s1;
    0x0007f004 move a1, s6                                                                                                                                                                                                                                                       |     a1 = s6;
    0x0007f008 move a0, s3                                                                                                                                                                                                                                                       |     a0 = s3;
    0x0007f00c lw t9, -0x73b4(gp)                                                                                                                                                                                                                                                |     t9 = sym.imp.memcpy;
    0x0007f010 jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007f014 nop                                                                                                                                                                                                                                                               |     
    0x0007f018 lw gp, 0x18(sp)                                                                                                                                                                                                                                                   |     gp = *(var_18h);
    0x0007f01c sw s3, 0xd0(sp)                                                                                                                                                                                                                                                   |     *(var_d0h) = s3;
    0x0007f020 b 0x7dcc8                                                                                                                                                                                                                                                         |     goto label_49;
                                                                                                                                                                                                                                                                                 | label_148:
    0x0007f024 lw t9, -0x74e8(gp)                                                                                                                                                                                                                                                |     t9 = sym.imp.__stack_chk_fail;
    0x0007f028 jalr t9                                                                                                                                                                                                                                                           |     t9 ();
    0x0007f02c nop                                                                                                                                                                                                                                                               |     
                                                                                                                                                                                                                                                                                 | }

[*] Function mmap used 1 times onscreencontrols