[*] Binary protection state of libsyslog-ng-3.19.so.0.0.0

  
  	Full RELRO     Canary found      NX disabled  DSO          No RPATH     No RUNPATH   No Symbols


[*] Function popen tear down of libsyslog-ng-3.19.so.0.0.0

    ; assembly                           | /* r2dec pseudo code output */
                                         | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/lib/libsyslog-ng-3.19.so.0.0.0 @ 0x25774 */
                                         | #include <stdint.h>
                                         |  
    ; (fcn) fcn.00025774 ()              | void fcn_00025774 () {
                                         | label_1:
    0x00025774 lui gp, 0xb               |     
    0x00025778 addiu gp, gp, -0x1b04     |     
    0x0002577c addu gp, gp, t9           |     gp += t9;
    0x00025780 addiu sp, sp, -0x48       |     
    0x00025784 sw s2, 0x3c(sp)           |     *(var_3ch) = s2;
    0x00025788 lw s2, -0x6a60(gp)        |     s2 = *((gp - 6808));
    0x0002578c sw gp, 0x18(sp)           |     *(var_18h) = gp;
    0x00025790 sw s3, 0x40(sp)           |     *(var_40h) = s3;
    0x00025794 lw v0, (s2)               |     v0 = *(s2);
    0x00025798 sw s1, 0x38(sp)           |     *(var_38h) = s1;
    0x0002579c sw ra, 0x44(sp)           |     *(var_44h) = ra;
    0x000257a0 sw s0, 0x34(sp)           |     *(var_34h) = s0;
    0x000257a4 move s3, a1               |     s3 = a1;
    0x000257a8 move s1, a2               |     s1 = a2;
    0x000257ac sw v0, 0x2c(sp)           |     *(var_2ch) = v0;
    0x000257b0 lw t9, -0x6a10(gp)        |     t9 = *((gp - 6788));
                                         |     if (a0 == 0) {
    0x000257b4 beqz a0, 0x258fc          |         goto label_3;
                                         |     }
    0x000257b8 lw v0, 4(a0)              |     v0 = *((a0 + 1));
    0x000257bc andi v1, v0, 1            |     v1 = v0 & 1;
    0x000257c0 move s0, a0               |     s0 = a0;
                                         |     if (v1 == 0) {
    0x000257c4 beqz v1, 0x25864          |         goto label_4;
                                         |     }
    0x000257c8 lw v1, -0x7068(gp)        |     v1 = *((gp - 7194));
    0x000257cc lw t9, (v1)               |     t9 = *(v1);
    0x000257d0 andi v0, v0, 0x20         |     v0 &= 0x20;
                                         |     if (t9 != 0) {
    0x000257d4 beqz t9, 0x257f0          |         
    0x000257d8 jalr t9                   |         t9 ();
    0x000257dc nop                       |         
    0x000257e0 lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         |         if (v0 == 0) {
    0x000257e4 beqz v0, 0x258f8          |             goto label_5;
                                         |         }
    0x000257e8 lw v0, 4(s0)              |         v0 = *((s0 + 1));
    0x000257ec andi v0, v0, 0x20         |         v0 &= 0x20;
                                         |     }
    0x000257f0 lw v0, -0x68f4(gp)        |     v0 = *((gp - 6717));
    0x000257f4 bnez v0, 0x25890          |     
                                         |     while (1) {
    0x000257f8 lw t9, 8(s0)              |         t9 = *((s0 + 2));
    0x000257fc move a2, s1               |         a2 = s1;
                                         |         if (t9 == 0) {
    0x00025800 beqz t9, 0x2591c          |             goto label_6;
                                         |         }
    0x00025804 move a1, s3               |         a1 = s3;
    0x00025808 move a0, s0               |         a0 = s0;
    0x0002580c jalr t9                   |         t9 ();
    0x00025810 lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         | label_2:
    0x00025814 lw v0, 8(s1)              |         v0 = *((s1 + 2));
                                         |         if (v0 != 0) {
    0x00025818 beqz v0, 0x2583c          |             
    0x0002581c nop                       |             
    0x00025820 lw v1, (v0)               |             v1 = *(v0);
                                         |             if (v1 != 0) {
    0x00025824 bnez v1, 0x2583c          |                 goto label_0;
                                         |             }
    0x00025828 nop                       |             
    0x0002582c lw v1, 4(s0)              |             v1 = *((s0 + 1));
    0x00025830 andi v1, v1, 0x10         |             v1 &= 0x10;
    0x00025834 addiu v1, zero, 1         |             v1 = 1;
                                         |             if (v1 != 0) {
    0x00025838 bnez v1, 0x25914          |                 goto label_7;
                                         |             }
                                         |         }
                                         | label_0:
    0x0002583c lw v1, 0x2c(sp)           |         v1 = *(var_2ch);
    0x00025840 lw v0, (s2)               |         v0 = *(s2);
    0x00025844 lw ra, 0x44(sp)           |         ra = *(var_44h);
                                         |         if (v1 != v0) {
    0x00025848 bne v1, v0, 0x25938       |             goto label_8;
                                         |         }
    0x0002584c lw s3, 0x40(sp)           |         s3 = *(var_40h);
    0x00025850 lw s2, 0x3c(sp)           |         s2 = *(var_3ch);
    0x00025854 lw s1, 0x38(sp)           |         s1 = *(var_38h);
    0x00025858 lw s0, 0x34(sp)           |         s0 = *(var_34h);
    0x0002585c addiu sp, sp, 0x48        |         
    0x00025860 jr ra                     |         return v0;
                                         | label_4:
    0x00025864 lw v0, -0x7fd0(gp)        |         v0 = *((gp - 8180));
    0x00025868 lw a3, -0x7fd0(gp)        |         a3 = *((gp - 8180));
    0x0002586c lw a1, -0x7fe8(gp)        |         a1 = *((gp - 8186));
    0x00025870 addiu v0, v0, -0x7b50     |         v0 += -0x7b50;
    0x00025874 lw t9, -0x7cc4(gp)        |         t9 = *((gp - 7985));
    0x00025878 sw v0, 0x10(sp)           |         *(var_10h_2) = v0;
    0x0002587c addiu a3, a3, -0x79e0     |         a3 += -0x79e0;
    0x00025880 addiu a2, zero, 0x153     |         a2 = 0x153;
    0x00025884 addiu a1, a1, 0x7f4c      |         a1 += 0x7f4c;
    0x00025888 move a0, zero             |         a0 = 0;
    0x0002588c jalr t9                   |         t9 ();
    0x00025890 lw v1, 8(s1)              |         v1 = *((s1 + 2));
    0x00025894 lw a0, (s1)               |         a0 = *(s1);
    0x00025898 lw v0, (v0)               |         v0 = *(v0);
    0x0002589c sw v1, 0x28(sp)           |         *(var_28h) = v1;
    0x000258a0 addiu v1, zero, 1         |         v1 = 1;
    0x000258a4 sw a0, 0x20(sp)           |         *(var_20h) = a0;
    0x000258a8 sw v1, 0x24(sp)           |         *(var_24h_2) = v1;
                                         |         if (v0 != 0) {
    0x000258ac beqz v0, 0x258f0          |             
    0x000258b0 lw t9, -0x76f4(gp)        |             t9 = *((gp - 7613));
    0x000258b4 move a0, s0               |             a0 = s0;
    0x000258b8 jalr t9                   |             t9 ();
    0x000258bc lw gp, 0x18(sp)           |             gp = *(var_18h);
    0x000258c0 move a3, zero             |             a3 = 0;
    0x000258c4 move a2, v0               |             a2 = v0;
    0x000258c8 lw a1, -0x7fd0(gp)        |             a1 = *((gp - 8180));
    0x000258cc lw t9, -0x673c(gp)        |             t9 = *(gp);
    0x000258d0 addiu a1, a1, -0x7b2c     |             a1 += -0x7b2c;
    0x000258d4 addiu a0, zero, 7         |             a0 = 7;
    0x000258d8 jalr t9                   |             t9 ();
    0x000258dc lw gp, 0x18(sp)           |             gp = *(var_18h);
    0x000258e0 lw t9, -0x7bcc(gp)        |             t9 = *((gp - 7923));
    0x000258e4 move a0, v0               |             a0 = v0;
    0x000258e8 jalr t9                   |             t9 ();
    0x000258ec lw gp, 0x18(sp)           |             gp = *(var_18h);
                                         |         }
    0x000258f0 addiu s1, sp, 0x20        |         s1 = sp + 0x20;
    0x000258f4 b 0x257f8                 |         
                                         |     }
                                         | label_5:
    0x000258f8 lw t9, -0x6a10(gp)        |     t9 = *((gp - 6788));
                                         | label_3:
    0x000258fc addiu a2, zero, 1         |     a2 = 1;
    0x00025900 move a1, s1               |     a1 = s1;
    0x00025904 move a0, s3               |     a0 = s3;
    0x00025908 jalr t9                   |     t9 ();
    0x0002590c lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00025910 b 0x2583c                 |     goto label_0;
                                         | label_7:
    0x00025914 sw v1, (v0)               |     *(v0) = v1;
    0x00025918 b 0x2583c                 |     goto label_0;
                                         | label_6:
    0x0002591c lw t9, -0x7fd4(gp)        |     t9 = *((gp - 8181));
    0x00025920 lw a0, 0x14(s0)           |     a0 = *((s0 + 5));
    0x00025924 addiu t9, t9, 0x5774      |     t9 += 0x5774;
    0x00025928 move a1, s3               |     a1 = s3;
    0x0002592c bal 0x25774               |     fcn_00025774 ();
                                         |     goto label_1;
    0x00025930 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00025934 b 0x25814                 |     goto label_2;
                                         | label_8:
    0x00025938 lw t9, -0x7454(gp)        |     t9 = *(gp);
    0x0002593c jalr t9                   |     t9 ();
    0x00025940 nop                       |     
    0x00025944 lui gp, 0xb               |     
    0x00025948 addiu gp, gp, -0x1cd4     |     
    0x0002594c addu gp, gp, t9           |     gp += t9;
                                         |     if (a0 == 0) {
    0x00025950 beqz a0, 0x25998          |         goto label_9;
                                         |     }
    0x00025954 nop                       |     
    0x00025958 sync                      |     __asm ("sync");
    0x0002595c lw a1, 4(a0)              |     a1 = *((a0 + 1));
    0x00025960 move v0, a0               |     v0 = a0;
    0x00025964 addiu v1, a0, 4           |     v1 = a0 + 4;
    0x00025968 sync                      |     __asm ("sync");
    0x0002596c addiu a1, zero, 1         |     a1 = 1;
                                         |     if (a1 <= 0) {
    0x00025970 blez a1, 0x259a0          |         goto label_10;
                                         |     }
    0x00025974 sync                      |     __asm ("sync");
                                         |     do {
    0x00025978 ll a2, (v1)               |         __asm ("ll a2, (v1)");
    0x0002597c addiu at, a2, -1          |         at = a2 + -1;
    0x00025980 sc at, (v1)               |         __asm ("sc at, (v1)");
    0x00025984 beqz at, 0x25978          |         
                                         |     } while (at == 0);
    0x00025988 nop                       |     
    0x0002598c sync                      |     __asm ("sync");
                                         |     if (a2 == a1) {
    0x00025990 beql a2, a1, 0x259d8      |         goto label_11;
                                         |     }
    0x00025994 lw t9, 0x88(v0)           |     t9 = *((v0 + 34));
                                         |     do {
                                         | label_9:
    0x00025998 jr ra                     |         return v0;
    0x0002599c nop                       |         
                                         | label_10:
    0x000259a0 lw v0, -0x7fe8(gp)        |         v0 = *((gp - 8186));
    0x000259a4 addiu sp, sp, -0x28       |         
    0x000259a8 lw a3, -0x7fd0(gp)        |         a3 = *((gp - 8180));
    0x000259ac lw a1, -0x7fd0(gp)        |         a1 = *((gp - 8180));
    0x000259b0 addiu v0, v0, 0x7da4      |         v0 += 0x7da4;
    0x000259b4 lw t9, -0x7cc4(gp)        |         t9 = *((gp - 7985));
    0x000259b8 addiu a3, a3, -0x7a20     |         a3 += -0x7a20;
    0x000259bc sw gp, 0x18(sp)           |         *(var_18h_2) = gp;
    0x000259c0 sw ra, 0x24(sp)           |         *(var_24h) = ra;
    0x000259c4 sw v0, 0x10(sp)           |         *(var_10h) = v0;
    0x000259c8 addiu a2, zero, 0xb4      |         a2 = 0xb4;
    0x000259cc addiu a1, a1, -0x7b14     |         a1 += -0x7b14;
    0x000259d0 move a0, zero             |         a0 = 0;
    0x000259d4 jalr t9                   |         t9 ();
                                         | label_11:
    0x000259d8 beqz t9, 0x25998          |         
                                         |     } while (t9 == 0);
    0x000259dc nop                       |     
    0x000259e0 jr t9                     |     t9 ();
    0x000259e4 nop                       |     
                                         | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/lib/libsyslog-ng-3.19.so.0.0.0 @ 0x2d92c */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.0002d92c ()                  | void fcn_0002d92c () {
                                             | label_1:
    0x0002d92c lui gp, 0xa                   |     
    0x0002d930 addiu gp, gp, 0x6344          |     
    0x0002d934 addu gp, gp, t9               |     gp += t9;
    0x0002d938 addiu sp, sp, -0x48           |     
    0x0002d93c lw v0, 4(a0)                  |     v0 = *((a0 + 1));
    0x0002d940 sw s2, 0x3c(sp)               |     *(var_3ch) = s2;
    0x0002d944 lw s2, -0x6a60(gp)            |     s2 = *((gp - 6808));
    0x0002d948 sw gp, 0x18(sp)               |     *(var_18h) = gp;
    0x0002d94c andi v1, v0, 1                |     v1 = v0 & 1;
    0x0002d950 lw a3, (s2)                   |     a3 = *(s2);
    0x0002d954 sw ra, 0x44(sp)               |     *(var_44h) = ra;
    0x0002d958 sw s3, 0x40(sp)               |     *(var_40h) = s3;
    0x0002d95c sw s1, 0x38(sp)               |     *(var_38h) = s1;
    0x0002d960 sw s0, 0x34(sp)               |     *(var_34h) = s0;
    0x0002d964 sw a3, 0x2c(sp)               |     *(var_2ch) = a3;
    0x0002d968 lw v1, -0x7068(gp)            |     v1 = *((gp - 7194));
                                             |     if (v1 == 0) {
    0x0002d96c bnez v1, 0x2d99c              |         
    0x0002d970 lw v0, -0x7fd0(gp)            |         v0 = *((gp - 8180));
    0x0002d974 lw a3, -0x7fd0(gp)            |         a3 = *((gp - 8180));
    0x0002d978 lw a1, -0x7fe8(gp)            |         a1 = *((gp - 8186));
    0x0002d97c addiu v0, v0, -0x7b50         |         v0 += -0x7b50;
    0x0002d980 lw t9, -0x7cc4(gp)            |         t9 = *((gp - 7985));
    0x0002d984 sw v0, 0x10(sp)               |         *(var_10h_2) = v0;
    0x0002d988 addiu a3, a3, -0x67d0         |         a3 += -0x67d0;
    0x0002d98c addiu a2, zero, 0x153         |         a2 = 0x153;
    0x0002d990 addiu a1, a1, 0x7f4c          |         a1 += 0x7f4c;
    0x0002d994 move a0, zero                 |         a0 = 0;
    0x0002d998 jalr t9                       |         t9 ();
                                             |     }
    0x0002d99c move s0, a0                   |     s0 = a0;
    0x0002d9a0 move s3, a1                   |     s3 = a1;
    0x0002d9a4 lw t9, (v1)                   |     t9 = *(v1);
    0x0002d9a8 move s1, a2                   |     s1 = a2;
                                             |     if (t9 != 0) {
    0x0002d9ac beqz t9, 0x2d9c4              |         
    0x0002d9b0 jalr t9                       |         t9 ();
    0x0002d9b4 nop                           |         
    0x0002d9b8 lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             |         if (v0 == 0) {
    0x0002d9bc beqz v0, 0x2dae8              |             goto label_31;
                                             |         }
    0x0002d9c0 lw v0, 4(s0)                  |         v0 = *((s0 + 1));
                                             |     }
    0x0002d9c4 andi v0, v0, 0x20             |     v0 &= 0x20;
    0x0002d9c8 lw v0, -0x68f4(gp)            |     v0 = *((gp - 6717));
    0x0002d9cc bnez v0, 0x2da2c              |     
                                             |     while (1) {
    0x0002d9d0 lw t9, 8(s0)                  |         t9 = *((s0 + 2));
    0x0002d9d4 move a2, s1                   |         a2 = s1;
                                             |         if (t9 == 0) {
    0x0002d9d8 beqz t9, 0x2daa8              |             goto label_32;
                                             |         }
    0x0002d9dc move a1, s3                   |         a1 = s3;
    0x0002d9e0 move a0, s0                   |         a0 = s0;
    0x0002d9e4 jalr t9                       |         t9 ();
    0x0002d9e8 lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             | label_2:
    0x0002d9ec lw v0, 8(s1)                  |         v0 = *((s1 + 2));
                                             |         if (v0 != 0) {
    0x0002d9f0 beqz v0, 0x2da04              |             
    0x0002d9f4 nop                           |             
    0x0002d9f8 lw v1, (v0)                   |             v1 = *(v0);
                                             |             if (v1 == 0) {
    0x0002d9fc beql v1, zero, 0x2da94        |                 goto label_33;
                                             |             }
    0x0002da00 lw v1, 4(s0)                  |             v1 = *((s0 + 1));
                                             |         }
                                             | label_0:
    0x0002da04 lw v1, 0x2c(sp)               |         v1 = *(var_2ch);
    0x0002da08 lw v0, (s2)                   |         v0 = *(s2);
    0x0002da0c lw ra, 0x44(sp)               |         ra = *(var_44h);
                                             |         if (v1 != v0) {
    0x0002da10 bne v1, v0, 0x2db04           |             goto label_34;
                                             |         }
    0x0002da14 lw s3, 0x40(sp)               |         s3 = *(var_40h);
    0x0002da18 lw s2, 0x3c(sp)               |         s2 = *(var_3ch);
    0x0002da1c lw s1, 0x38(sp)               |         s1 = *(var_38h);
    0x0002da20 lw s0, 0x34(sp)               |         s0 = *(var_34h);
    0x0002da24 addiu sp, sp, 0x48            |         
    0x0002da28 jr ra                         |         return v0;
    0x0002da2c lw v1, 8(s1)                  |         v1 = *((s1 + 2));
    0x0002da30 lw a0, (s1)                   |         a0 = *(s1);
    0x0002da34 lw v0, (v0)                   |         v0 = *(v0);
    0x0002da38 sw v1, 0x28(sp)               |         *(var_28h) = v1;
    0x0002da3c addiu v1, zero, 1             |         v1 = 1;
    0x0002da40 sw a0, 0x20(sp)               |         *(var_20h) = a0;
    0x0002da44 sw v1, 0x24(sp)               |         *(var_24h) = v1;
                                             |         if (v0 != 0) {
    0x0002da48 beqz v0, 0x2da8c              |             
    0x0002da4c lw t9, -0x76f4(gp)            |             t9 = *((gp - 7613));
    0x0002da50 move a0, s0                   |             a0 = s0;
    0x0002da54 jalr t9                       |             t9 ();
    0x0002da58 lw gp, 0x18(sp)               |             gp = *(var_18h);
    0x0002da5c move a3, zero                 |             a3 = 0;
    0x0002da60 move a2, v0                   |             a2 = v0;
    0x0002da64 lw a1, -0x7fd0(gp)            |             a1 = *((gp - 8180));
    0x0002da68 lw t9, -0x673c(gp)            |             t9 = *(gp);
    0x0002da6c addiu a1, a1, -0x7b2c         |             a1 += -0x7b2c;
    0x0002da70 addiu a0, zero, 7             |             a0 = 7;
    0x0002da74 jalr t9                       |             t9 ();
    0x0002da78 lw gp, 0x18(sp)               |             gp = *(var_18h);
    0x0002da7c lw t9, -0x7bcc(gp)            |             t9 = *((gp - 7923));
    0x0002da80 move a0, v0                   |             a0 = v0;
    0x0002da84 jalr t9                       |             t9 ();
    0x0002da88 lw gp, 0x18(sp)               |             gp = *(var_18h);
                                             |         }
    0x0002da8c addiu s1, sp, 0x20            |         s1 = sp + 0x20;
    0x0002da90 b 0x2d9d0                     |         
                                             |     }
                                             | label_33:
    0x0002da94 andi v1, v1, 0x10             |     v1 &= 0x10;
    0x0002da98 addiu v1, zero, 1             |     v1 = 1;
                                             |     if (v1 == 0) {
    0x0002da9c beqz v1, 0x2da04              |         goto label_0;
                                             |     }
    0x0002daa0 sw v1, (v0)                   |     *(v0) = v1;
    0x0002daa4 b 0x2da04                     |     goto label_0;
                                             | label_32:
    0x0002daa8 lw a0, 0x14(s0)               |     a0 = *((s0 + 5));
    0x0002daac lw t9, -0x7fcc(gp)            |     t9 = *((gp - 8179));
                                             |     if (a0 != 0) {
    0x0002dab0 beqz a0, 0x2dacc              |         
    0x0002dab4 move a2, s1                   |         a2 = s1;
    0x0002dab8 addiu t9, t9, -0x26d4         |         t9 += -0x26d4;
    0x0002dabc move a1, s3                   |         a1 = s3;
    0x0002dac0 bal 0x2d92c                   |         fcn_0002d92c ();
                                             |         goto label_1;
    0x0002dac4 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x0002dac8 b 0x2d9ec                     |         goto label_2;
                                             |     }
    0x0002dacc lw t9, -0x6a10(gp)            |     t9 = *((gp - 6788));
    0x0002dad0 addiu a2, zero, 1             |     a2 = 1;
    0x0002dad4 move a1, s1                   |     a1 = s1;
    0x0002dad8 move a0, s3                   |     a0 = s3;
    0x0002dadc jalr t9                       |     t9 ();
    0x0002dae0 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0002dae4 b 0x2d9ec                     |     goto label_2;
                                             | label_31:
    0x0002dae8 lw t9, -0x6a10(gp)            |     t9 = *((gp - 6788));
    0x0002daec addiu a2, zero, 1             |     a2 = 1;
    0x0002daf0 move a1, s1                   |     a1 = s1;
    0x0002daf4 move a0, s3                   |     a0 = s3;
    0x0002daf8 jalr t9                       |     t9 ();
    0x0002dafc lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0002db00 b 0x2da04                     |     goto label_0;
                                             | label_34:
    0x0002db04 lw t9, -0x7454(gp)            |     t9 = *(gp);
    0x0002db08 jalr t9                       |     t9 ();
    0x0002db0c nop                           |     
    0x0002db10 lui gp, 0xa                   |     
    0x0002db14 addiu gp, gp, 0x6160          |     
    0x0002db18 addu gp, gp, t9               |     gp += t9;
    0x0002db1c addiu sp, sp, -0x108          |     
    0x0002db20 lw v0, -0x6a60(gp)            |     v0 = *((gp - 6808));
    0x0002db24 sw s0, 0xe0(sp)               |     *(var_e0h) = s0;
    0x0002db28 sw a0, 0x20(sp)               |     *(var_20h_2) = a0;
    0x0002db2c move s0, a0                   |     s0 = a0;
    0x0002db30 lw a0, 0x44(a0)               |     a0 = *((a0 + 17));
    0x0002db34 lw t0, (v0)                   |     t0 = *(v0);
    0x0002db38 sw v0, 0x50(sp)               |     *(var_50h) = v0;
    0x0002db3c lw v0, 4(a0)                  |     v0 = *((a0 + 1));
    0x0002db40 lw a3, (a2)                   |     a3 = *(a2);
    0x0002db44 sw a2, 0x2c(sp)               |     *(var_2ch_2) = a2;
    0x0002db48 lw a2, 4(a2)                  |     a2 = *((a2 + 1));
    0x0002db4c sw s2, 0xe8(sp)               |     *(var_e8h) = s2;
    0x0002db50 sw gp, 0x18(sp)               |     *(var_18h_2) = gp;
    0x0002db54 move s2, a1                   |     s2 = a1;
    0x0002db58 sltiu v1, v0, 2               |     v1 = (v0 < 2) ? 1 : 0;
    0x0002db5c addiu a1, sp, 0x60            |     a1 = sp + 0x60;
    0x0002db60 sw ra, 0x104(sp)              |     *(var_104h) = ra;
    0x0002db64 sw fp, 0x100(sp)              |     *(var_100h) = fp;
    0x0002db68 sw s7, 0xfc(sp)               |     *(var_fch) = s7;
    0x0002db6c sw s6, 0xf8(sp)               |     *(var_f8h) = s6;
    0x0002db70 sw s5, 0xf4(sp)               |     *(var_f4h) = s5;
    0x0002db74 sw s4, 0xf0(sp)               |     *(var_f0h) = s4;
    0x0002db78 sw s3, 0xec(sp)               |     *(var_ech) = s3;
    0x0002db7c sw s1, 0xe4(sp)               |     *(var_e4h) = s1;
    0x0002db80 sw t0, 0xdc(sp)               |     *(var_dch) = t0;
    0x0002db84 sw a3, 0x64(sp)               |     *(var_64h) = a3;
    0x0002db88 sw a2, 0x68(sp)               |     *(var_68h) = a2;
    0x0002db8c sw a1, 0x6c(sp)               |     *(var_6ch) = a1;
                                             |     if (v1 == 0) {
    0x0002db90 bnez v1, 0x2dbac              |         
    0x0002db94 lw t9, -0x714c(gp)            |         t9 = *((gp - 7251));
    0x0002db98 move a0, s2                   |         a0 = s2;
    0x0002db9c jalr t9                       |         t9 ();
    0x0002dba0 lw a0, 0x44(s0)               |         a0 = *((s0 + 17));
    0x0002dba4 lw gp, 0x18(sp)               |         gp = *(var_18h_2);
    0x0002dba8 lw v0, 4(a0)                  |         v0 = *((a0 + 1));
                                             |     }
    0x0002dbac lw v1, -0x7fcc(gp)            |     v1 = *((gp - 8179));
    0x0002dbb0 move s4, zero                 |     s4 = 0;
    0x0002dbb4 addiu v1, v1, -0x26d4         |     v1 += -0x26d4;
    0x0002dbb8 sw v1, 0x54(sp)               |     *(var_54h) = v1;
    0x0002dbbc lw v1, -0x7fd0(gp)            |     v1 = *((gp - 8180));
    0x0002dbc0 addiu v1, v1, -0x7b2c         |     v1 += -0x7b2c;
    0x0002dbc4 sw v1, 0x34(sp)               |     *(var_34h_2) = v1;
                                             | label_9:
    0x0002dbc8 move s1, zero                 |     s1 = 0;
                                             |     if (v0 == 0) {
    0x0002dbcc beqz v0, 0x2de88              |         goto label_35;
                                             |     }
    0x0002dbd0 sw zero, 0x24(sp)             |     *(var_24h_2) = 0;
    0x0002dbd4 move s0, zero                 |     s0 = 0;
    0x0002dbd8 addiu fp, sp, 0x64            |     fp = sp + 0x64;
    0x0002dbdc lw v1, (a0)                   |     v1 = *(a0);
                                             |     do {
                                             | label_4:
    0x0002dbe0 sll v0, s0, 2                 |         v0 = s0 << 2;
    0x0002dbe4 lwx s7, v0(v1)                |         __asm ("lwx s7, v0(v1)");
    0x0002dbe8 lw v0, 4(s7)                  |         v0 = *((s7 + 1));
    0x0002dbec andi v0, v0, 8                |         v0 &= 8;
                                             |         if (s4 == 0) {
    0x0002dbf0 beqz s4, 0x2dd78              |             goto label_36;
                                             |         }
                                             |         if (v0 != 0) {
    0x0002dbf4 beql v0, zero, 0x2dd60        |             
    0x0002dbf8 lw v0, 4(a0)                  |             v0 = *((a0 + 1));
    0x0002dbfc lw t9, -0x73a8(gp)            |             t9 = *((gp - 7402));
                                             | label_3:
    0x0002dc00 addiu v0, zero, 1             |             v0 = 1;
    0x0002dc04 move a1, fp                   |             a1 = fp;
    0x0002dc08 move a0, s2                   |             a0 = s2;
    0x0002dc0c sw v0, 0x60(sp)               |             *(var_60h) = v0;
    0x0002dc10 jalr t9                       |             t9 ();
    0x0002dc14 lw gp, 0x18(sp)               |             gp = *(var_18h_2);
    0x0002dc18 lw t9, -0x7258(gp)            |             t9 = *((gp - 7318));
    0x0002dc1c move a0, s2                   |             a0 = s2;
    0x0002dc20 jalr t9                       |             t9 ();
    0x0002dc24 lw a0, 4(s7)                  |             a0 = *((s7 + 1));
    0x0002dc28 lw gp, 0x18(sp)               |             gp = *(var_18h_2);
    0x0002dc2c andi s1, a0, 1                |             s1 = a0 & 1;
    0x0002dc30 move s6, v0                   |             s6 = v0;
                                             |             if (s1 == 0) {
    0x0002dc34 bnez s1, 0x2dc64              |                 
    0x0002dc38 lw v0, -0x7fd0(gp)            |                 v0 = *((gp - 8180));
                                             | label_6:
    0x0002dc3c lw a3, -0x7fd0(gp)            |                 a3 = *((gp - 8180));
    0x0002dc40 lw a1, -0x7fe8(gp)            |                 a1 = *((gp - 8186));
    0x0002dc44 addiu v0, v0, -0x7b50         |                 v0 += -0x7b50;
    0x0002dc48 lw t9, -0x7cc4(gp)            |                 t9 = *((gp - 7985));
    0x0002dc4c sw v0, 0x10(sp)               |                 *(var_10h) = v0;
    0x0002dc50 addiu a3, a3, -0x67d0         |                 a3 += -0x67d0;
    0x0002dc54 addiu a2, zero, 0x153         |                 a2 = 0x153;
    0x0002dc58 addiu a1, a1, 0x7f4c          |                 a1 += 0x7f4c;
    0x0002dc5c move a0, zero                 |                 a0 = 0;
    0x0002dc60 jalr t9                       |                 t9 ();
                                             |             }
    0x0002dc64 lw s5, -0x7068(gp)            |             s5 = *((gp - 7194));
    0x0002dc68 lw t9, (s5)                   |             t9 = *(s5);
    0x0002dc6c move a2, fp                   |             a2 = fp;
                                             |             if (t9 != 0) {
    0x0002dc70 beqz t9, 0x2dc8c              |                 
    0x0002dc74 move a1, v0                   |                 a1 = v0;
    0x0002dc78 move a0, s7                   |                 a0 = s7;
    0x0002dc7c jalr t9                       |                 t9 ();
    0x0002dc80 lw gp, 0x18(sp)               |                 gp = *(var_18h_2);
                                             |                 if (v0 == 0) {
    0x0002dc84 beqz v0, 0x2e028              |                     goto label_37;
                                             |                 }
    0x0002dc88 lw a0, 4(s7)                  |                 a0 = *((s7 + 1));
                                             |             }
    0x0002dc8c andi a0, a0, 0x20             |             a0 &= 0x20;
                                             |             if (a0 == 0) {
    0x0002dc90 beql a0, zero, 0x2ddcc        |                 goto label_38;
                                             |             }
    0x0002dc94 lw t9, 8(s7)                  |             t9 = *((s7 + 2));
    0x0002dc98 lw a0, 0x64(sp)               |             a0 = *(var_64h);
    0x0002dc9c lw v0, -0x68f4(gp)            |             v0 = *((gp - 6717));
    0x0002dca0 sw a0, 0x70(sp)               |             *(var_70h) = a0;
    0x0002dca4 lw a0, 0x6c(sp)               |             a0 = *(var_6ch);
    0x0002dca8 lw v0, (v0)                   |             v0 = *(v0);
    0x0002dcac sw a0, 0x78(sp)               |             *(var_78h) = a0;
    0x0002dcb0 addiu a0, zero, 1             |             a0 = 1;
    0x0002dcb4 sw a0, 0x74(sp)               |             *(var_74h) = a0;
                                             |             if (v0 != 0) {
    0x0002dcb8 beqz v0, 0x2dcf8              |                 
    0x0002dcbc lw t9, -0x76f4(gp)            |                 t9 = *((gp - 7613));
    0x0002dcc0 move a0, s7                   |                 a0 = s7;
    0x0002dcc4 jalr t9                       |                 t9 ();
    0x0002dcc8 lw gp, 0x18(sp)               |                 gp = *(var_18h_2);
    0x0002dccc lw a1, 0x34(sp)               |                 a1 = *(var_34h_2);
    0x0002dcd0 move a3, zero                 |                 a3 = 0;
    0x0002dcd4 lw t9, -0x673c(gp)            |                 t9 = *(gp);
    0x0002dcd8 move a2, v0                   |                 a2 = v0;
    0x0002dcdc addiu a0, zero, 7             |                 a0 = 7;
    0x0002dce0 jalr t9                       |                 t9 ();
    0x0002dce4 lw gp, 0x18(sp)               |                 gp = *(var_18h_2);
    0x0002dce8 lw t9, -0x7bcc(gp)            |                 t9 = *((gp - 7923));
    0x0002dcec move a0, v0                   |                 a0 = v0;
    0x0002dcf0 jalr t9                       |                 t9 ();
    0x0002dcf4 lw gp, 0x18(sp)               |                 gp = *(var_18h_2);
                                             |             }
    0x0002dcf8 lw t9, 8(s7)                  |             t9 = *((s7 + 2));
    0x0002dcfc addiu s3, sp, 0x70            |             s3 = sp + 0x70;
                                             |             if (t9 == 0) {
    0x0002dd00 beqz t9, 0x2ddd4              |                 goto label_39;
                                             |             }
                                             | label_5:
    0x0002dd04 move a2, s3                   |             a2 = s3;
    0x0002dd08 move a1, s6                   |             a1 = s6;
    0x0002dd0c move a0, s7                   |             a0 = s7;
    0x0002dd10 jalr t9                       |             t9 ();
    0x0002dd14 lw gp, 0x18(sp)               |             gp = *(var_18h_2);
                                             | label_8:
    0x0002dd18 lw v0, 8(s3)                  |             v0 = *((s3 + 2));
                                             |             if (v0 != 0) {
                                             | label_7:
    0x0002dd1c beql v0, zero, 0x2dd4c        |                 
    0x0002dd20 lw v0, 0x60(sp)               |                 v0 = *(var_60h);
    0x0002dd24 lw a0, (v0)                   |                 a0 = *(v0);
    0x0002dd28 lw v0, 0x60(sp)               |                 v0 = *(var_60h);
                                             |                 if (a0 == 0) {
    0x0002dd2c bnel a0, zero, 0x2dd4c        |                     goto label_40;
                                             |                 }
    0x0002dd30 lw a0, 4(s7)                  |                 a0 = *((s7 + 1));
    0x0002dd34 andi a0, a0, 0x10             |                 a0 &= 0x10;
                                             |                 if (a0 == 0) {
    0x0002dd38 beql a0, zero, 0x2dd4c        |                     goto label_40;
                                             |                 }
    0x0002dd3c lw v0, 0x60(sp)               |                 v0 = *(var_60h);
    0x0002dd40 addiu a0, zero, 1             |                 a0 = 1;
    0x0002dd44 sw a0, (v0)                   |                 *(v0) = a0;
                                             | label_11:
    0x0002dd48 lw v0, 0x60(sp)               |                 v0 = *(var_60h);
                                             |             }
                                             | label_40:
    0x0002dd4c lw v0, 4(s7)                  |             v0 = *((s7 + 1));
                                             |             if (v0 == 0) {
    0x0002dd50 bnel v0, zero, 0x2dd9c        |                 goto label_41;
                                             |             }
    0x0002dd54 lw v0, 0x20(sp)               |             v0 = *(var_20h_2);
    0x0002dd58 lw a0, 0x44(v0)               |             a0 = *((v0 + 17));
    0x0002dd5c lw v0, 4(a0)                  |             v0 = *((a0 + 1));
                                             |         }
    0x0002dd60 addiu s0, s0, 1               |         s0++;
    0x0002dd64 sltu v1, s0, v0               |         v1 = (s0 < v0) ? 1 : 0;
    0x0002dd68 lw v1, (a0)                   |         v1 = *(a0);
    0x0002dd6c bnel v1, zero, 0x2dbe0        |         
                                             |     } while (v1 == 0);
    0x0002dd70 lw s1, 0x24(sp)               |     s1 = *(var_24h_2);
    0x0002dd74 b 0x2de88                     |     goto label_35;
                                             | label_36:
    0x0002dd78 lw t9, -0x73a8(gp)            |     t9 = *((gp - 7402));
                                             |     if (v0 == 0) {
    0x0002dd7c beqz v0, 0x2dc00              |         goto label_3;
                                             |     }
    0x0002dd80 lw v0, 4(a0)                  |     v0 = *((a0 + 1));
    0x0002dd84 addiu s0, s0, 1               |     s0++;
    0x0002dd88 sltu v1, s0, v0               |     v1 = (s0 < v0) ? 1 : 0;
    0x0002dd8c lw v1, (a0)                   |     v1 = *(a0);
                                             |     if (v1 == 0) {
    0x0002dd90 bnel v1, zero, 0x2dbe0        |         goto label_4;
                                             |     }
    0x0002dd94 lw s1, 0x24(sp)               |     s1 = *(var_24h_2);
    0x0002dd98 b 0x2de88                     |     goto label_35;
                                             | label_41:
    0x0002dd9c andi v0, v0, 4                |     v0 &= 4;
    0x0002dda0 lw v0, 0x20(sp)               |     v0 = *(var_20h_2);
                                             |     if (v0 != 0) {
    0x0002dda4 bnez v0, 0x2de80              |         goto label_42;
                                             |     }
    0x0002dda8 addiu s0, s0, 1               |     s0++;
    0x0002ddac sw s1, 0x24(sp)               |     *(var_24h_2) = s1;
    0x0002ddb0 lw a0, 0x44(v0)               |     a0 = *((v0 + 17));
    0x0002ddb4 lw v0, 4(a0)                  |     v0 = *((a0 + 1));
    0x0002ddb8 sltu v1, s0, v0               |     v1 = (s0 < v0) ? 1 : 0;
    0x0002ddbc lw v1, (a0)                   |     v1 = *(a0);
                                             |     if (v1 == 0) {
    0x0002ddc0 bnel v1, zero, 0x2dbe0        |         goto label_4;
                                             |     }
    0x0002ddc4 lw s1, 0x24(sp)               |     s1 = *(var_24h_2);
    0x0002ddc8 b 0x2de88                     |     goto label_35;
                                             | label_38:
    0x0002ddcc move s3, fp                   |     s3 = fp;
                                             |     if (t9 != 0) {
    0x0002ddd0 bnez t9, 0x2dd04              |         goto label_5;
                                             |     }
                                             | label_39:
    0x0002ddd4 lw v1, 0x14(s7)               |     v1 = *((s7 + 5));
    0x0002ddd8 sw v1, 0x28(sp)               |     *(var_28h_2) = v1;
                                             |     if (v1 == 0) {
    0x0002dddc beqz v1, 0x2e00c              |         goto label_43;
                                             |     }
    0x0002dde0 lw v0, 4(v1)                  |     v0 = *((v1 + 1));
    0x0002dde4 andi a0, v0, 1                |     a0 = v0 & 1;
                                             |     if (a0 == 0) {
    0x0002dde8 beql a0, zero, 0x2dc3c        |         goto label_6;
                                             |     }
    0x0002ddec lw v0, -0x7fd0(gp)            |     v0 = *((gp - 8180));
    0x0002ddf0 lw t9, (s5)                   |     t9 = *(s5);
    0x0002ddf4 move a2, s3                   |     a2 = s3;
                                             |     if (t9 != 0) {
    0x0002ddf8 beqz t9, 0x2de18              |         
    0x0002ddfc move a1, s6                   |         a1 = s6;
    0x0002de00 move a0, v1                   |         a0 = v1;
    0x0002de04 jalr t9                       |         t9 ();
    0x0002de08 lw gp, 0x18(sp)               |         gp = *(var_18h_2);
                                             |         if (v0 == 0) {
    0x0002de0c beqz v0, 0x2e00c              |             goto label_43;
                                             |         }
    0x0002de10 lw v1, 0x28(sp)               |         v1 = *(var_28h_2);
    0x0002de14 lw v0, 4(v1)                  |         v0 = *((v1 + 1));
                                             |     }
    0x0002de18 andi v0, v0, 0x20             |     v0 &= 0x20;
    0x0002de1c lw v0, -0x68f4(gp)            |     v0 = *((gp - 6717));
                                             |     if (v0 != 0) {
    0x0002de20 bnez v0, 0x2dfa4              |         goto label_44;
                                             |     }
    0x0002de24 sw s3, 0x30(sp)               |     *(var_30h) = s3;
                                             | label_10:
    0x0002de28 lw a0, 0x28(sp)               |     a0 = *(var_28h_2);
    0x0002de2c lw t9, 8(a0)                  |     t9 = *((a0 + 2));
    0x0002de30 lw a2, 0x30(sp)               |     a2 = *(var_30h);
                                             |     if (t9 == 0) {
    0x0002de34 beqz t9, 0x2e044              |         goto label_45;
                                             |     }
    0x0002de38 move a1, s6                   |     a1 = s6;
    0x0002de3c jalr t9                       |     t9 ();
    0x0002de40 lw gp, 0x18(sp)               |     gp = *(var_18h_2);
                                             | label_13:
    0x0002de44 lw v0, 0x30(sp)               |     v0 = *(var_30h);
                                             | label_12:
    0x0002de48 lw v0, 8(v0)                  |     v0 = *((v0 + 2));
                                             |     if (v0 == 0) {
    0x0002de4c beql v0, zero, 0x2dd1c        |         goto label_7;
                                             |     }
    0x0002de50 lw v0, 8(s3)                  |     v0 = *((s3 + 2));
    0x0002de54 lw a0, (v0)                   |     a0 = *(v0);
    0x0002de58 lw v0, 8(s3)                  |     v0 = *((s3 + 2));
                                             |     if (a0 == 0) {
    0x0002de5c bnel a0, zero, 0x2dd1c        |         goto label_7;
                                             |     }
    0x0002de60 lw v1, 0x28(sp)               |     v1 = *(var_28h_2);
    0x0002de64 lw a0, 4(v1)                  |     a0 = *((v1 + 1));
    0x0002de68 andi a0, a0, 0x10             |     a0 &= 0x10;
                                             |     if (a0 == 0) {
    0x0002de6c beql a0, zero, 0x2dd1c        |         goto label_7;
                                             |     }
    0x0002de70 lw v0, 8(s3)                  |     v0 = *((s3 + 2));
    0x0002de74 addiu a0, zero, 1             |     a0 = 1;
    0x0002de78 sw a0, (v0)                   |     *(v0) = a0;
    0x0002de7c b 0x2dd18                     |     goto label_8;
                                             | label_42:
    0x0002de80 lw a0, 0x44(v0)               |     a0 = *((v0 + 17));
    0x0002de84 lw v0, 4(a0)                  |     v0 = *((a0 + 1));
                                             | label_35:
    0x0002de88 lw v1, 0x20(sp)               |     v1 = *(var_20h_2);
                                             |     if (s4 != 0) {
    0x0002de8c bnez s4, 0x2dea4              |         goto label_46;
                                             |     }
    0x0002de90 lw v1, 0x48(v1)               |     v1 = *((v1 + 18));
                                             |     if (v1 == 0) {
    0x0002de94 beql v1, zero, 0x2dea8        |         goto label_47;
                                             |     }
    0x0002de98 sltiu v0, v0, 2               |     v0 = (v0 < 2) ? 1 : 0;
    0x0002de9c addiu s4, zero, 1             |     s4 = 1;
                                             |     if (s1 == 0) {
    0x0002dea0 beqz s1, 0x2dbc8              |         goto label_9;
                                             |     }
                                             | label_46:
    0x0002dea4 sltiu v0, v0, 2               |     v0 = (v0 < 2) ? 1 : 0;
                                             | label_47:
    0x0002dea8 lw v0, 0x20(sp)               |     v0 = *(var_20h_2);
                                             |     if (v0 == 0) {
    0x0002deac bnez v0, 0x2dec4              |         
    0x0002deb0 lw t9, -0x7ee0(gp)            |         t9 = *((gp - 8120));
    0x0002deb4 move a0, s2                   |         a0 = s2;
    0x0002deb8 jalr t9                       |         t9 ();
    0x0002debc lw gp, 0x18(sp)               |         gp = *(var_18h_2);
    0x0002dec0 lw v0, 0x20(sp)               |         v0 = *(var_20h_2);
                                             |     }
    0x0002dec4 lw s0, 0x14(v0)               |     s0 = *((v0 + 5));
                                             |     if (s0 == 0) {
    0x0002dec8 beqz s0, 0x2e1d0              |         goto label_48;
                                             |     }
    0x0002decc nop                           |     
    0x0002ded0 lw v0, 4(s0)                  |     v0 = *((s0 + 1));
    0x0002ded4 andi v1, v0, 1                |     v1 = v0 & 1;
                                             |     if (v1 == 0) {
    0x0002ded8 beql v1, zero, 0x2dc3c        |         goto label_6;
                                             |     }
    0x0002dedc lw v0, -0x7fd0(gp)            |     v0 = *((gp - 8180));
    0x0002dee0 lw s5, -0x7068(gp)            |     s5 = *((gp - 7194));
    0x0002dee4 lw t9, (s5)                   |     t9 = *(s5);
    0x0002dee8 lw a2, 0x2c(sp)               |     a2 = *(var_2ch_2);
                                             |     if (t9 != 0) {
    0x0002deec beqz t9, 0x2df08              |         
    0x0002def0 move a1, s2                   |         a1 = s2;
    0x0002def4 move a0, s0                   |         a0 = s0;
    0x0002def8 jalr t9                       |         t9 ();
    0x0002defc lw gp, 0x18(sp)               |         gp = *(var_18h_2);
                                             |         if (v0 == 0) {
    0x0002df00 beqz v0, 0x2e1e8              |             goto label_49;
                                             |         }
    0x0002df04 lw v0, 4(s0)                  |         v0 = *((s0 + 1));
                                             |     }
    0x0002df08 andi v0, v0, 0x20             |     v0 &= 0x20;
    0x0002df0c lw v0, 0x2c(sp)               |     v0 = *(var_2ch_2);
                                             |     if (v0 != 0) {
    0x0002df10 bnez v0, 0x2e160              |         goto label_50;
                                             |     }
                                             | label_15:
    0x0002df14 lw t9, 8(s0)                  |     t9 = *((s0 + 2));
    0x0002df18 lw a2, 0x2c(sp)               |     a2 = *(var_2ch_2);
                                             |     if (t9 == 0) {
    0x0002df1c beqz t9, 0x2e220              |         goto label_51;
                                             |     }
    0x0002df20 move a1, s2                   |     a1 = s2;
    0x0002df24 move a0, s0                   |     a0 = s0;
    0x0002df28 jalr t9                       |     t9 ();
    0x0002df2c lw gp, 0x18(sp)               |     gp = *(var_18h_2);
                                             | label_18:
    0x0002df30 lw v0, 0x2c(sp)               |     v0 = *(var_2ch_2);
                                             | label_17:
    0x0002df34 lw v0, 8(v0)                  |     v0 = *((v0 + 2));
                                             |     if (v0 != 0) {
    0x0002df38 beql v0, zero, 0x2df68        |         
    0x0002df3c lw v0, 0x50(sp)               |         v0 = *(var_50h);
    0x0002df40 lw v1, (v0)                   |         v1 = *(v0);
    0x0002df44 lw v0, 0x50(sp)               |         v0 = *(var_50h);
                                             |         if (v1 == 0) {
    0x0002df48 bnel v1, zero, 0x2df68        |             goto label_52;
                                             |         }
    0x0002df4c lw v1, 4(s0)                  |         v1 = *((s0 + 1));
    0x0002df50 andi v1, v1, 0x10             |         v1 &= 0x10;
                                             |         if (v1 == 0) {
    0x0002df54 beql v1, zero, 0x2df68        |             goto label_52;
                                             |         }
    0x0002df58 lw v0, 0x50(sp)               |         v0 = *(var_50h);
    0x0002df5c addiu v1, zero, 1             |         v1 = 1;
    0x0002df60 sw v1, (v0)                   |         *(v0) = v1;
                                             | label_16:
    0x0002df64 lw v0, 0x50(sp)               |         v0 = *(var_50h);
                                             |     }
                                             | label_52:
    0x0002df68 lw v1, 0xdc(sp)               |     v1 = *(var_dch);
    0x0002df6c lw v0, (v0)                   |     v0 = *(v0);
    0x0002df70 lw ra, 0x104(sp)              |     ra = *(var_104h);
                                             |     if (v1 != v0) {
    0x0002df74 bne v1, v0, 0x2e870           |         goto label_53;
                                             |     }
    0x0002df78 lw fp, 0x100(sp)              |     fp = *(var_100h);
    0x0002df7c lw s7, 0xfc(sp)               |     s7 = *(var_fch);
    0x0002df80 lw s6, 0xf8(sp)               |     s6 = *(var_f8h);
    0x0002df84 lw s5, 0xf4(sp)               |     s5 = *(var_f4h);
    0x0002df88 lw s4, 0xf0(sp)               |     s4 = *(var_f0h);
    0x0002df8c lw s3, 0xec(sp)               |     s3 = *(var_ech);
    0x0002df90 lw s2, 0xe8(sp)               |     s2 = *(var_e8h);
    0x0002df94 lw s1, 0xe4(sp)               |     s1 = *(var_e4h);
    0x0002df98 lw s0, 0xe0(sp)               |     s0 = *(var_e0h);
    0x0002df9c addiu sp, sp, 0x108           |     
    0x0002dfa0 jr ra                         |     return v0;
                                             | label_44:
    0x0002dfa4 lw a0, 8(s3)                  |     a0 = *((s3 + 2));
    0x0002dfa8 lw a1, (s3)                   |     a1 = *(s3);
    0x0002dfac lw v0, (v0)                   |     v0 = *(v0);
    0x0002dfb0 sw a0, 0x84(sp)               |     *(var_84h) = a0;
    0x0002dfb4 addiu a0, zero, 1             |     a0 = 1;
    0x0002dfb8 sw a1, 0x7c(sp)               |     *(var_7ch) = a1;
    0x0002dfbc sw a0, 0x80(sp)               |     *(var_80h) = a0;
                                             |     if (v0 != 0) {
    0x0002dfc0 beqz v0, 0x2e000              |         
    0x0002dfc4 lw t9, -0x76f4(gp)            |         t9 = *((gp - 7613));
    0x0002dfc8 lw a0, 0x28(sp)               |         a0 = *(var_28h_2);
    0x0002dfcc jalr t9                       |         t9 ();
    0x0002dfd0 lw gp, 0x18(sp)               |         gp = *(var_18h_2);
    0x0002dfd4 lw a1, 0x34(sp)               |         a1 = *(var_34h_2);
    0x0002dfd8 move a3, zero                 |         a3 = 0;
    0x0002dfdc lw t9, -0x673c(gp)            |         t9 = *(gp);
    0x0002dfe0 move a2, v0                   |         a2 = v0;
    0x0002dfe4 addiu a0, zero, 7             |         a0 = 7;
    0x0002dfe8 jalr t9                       |         t9 ();
    0x0002dfec lw gp, 0x18(sp)               |         gp = *(var_18h_2);
    0x0002dff0 lw t9, -0x7bcc(gp)            |         t9 = *((gp - 7923));
    0x0002dff4 move a0, v0                   |         a0 = v0;
    0x0002dff8 jalr t9                       |         t9 ();
    0x0002dffc lw gp, 0x18(sp)               |         gp = *(var_18h_2);
                                             |     }
    0x0002e000 addiu v0, sp, 0x7c            |     v0 = sp + 0x7c;
    0x0002e004 sw v0, 0x30(sp)               |     *(var_30h) = v0;
    0x0002e008 b 0x2de28                     |     goto label_10;
                                             | label_43:
    0x0002e00c lw t9, -0x6a10(gp)            |     t9 = *((gp - 6788));
    0x0002e010 addiu a2, zero, 1             |     a2 = 1;
    0x0002e014 move a1, s3                   |     a1 = s3;
    0x0002e018 move a0, s6                   |     a0 = s6;
    0x0002e01c jalr t9                       |     t9 ();
    0x0002e020 lw gp, 0x18(sp)               |     gp = *(var_18h_2);
    0x0002e024 b 0x2dd18                     |     goto label_8;
                                             | label_37:
    0x0002e028 lw t9, -0x6a10(gp)            |     t9 = *((gp - 6788));
    0x0002e02c addiu a2, zero, 1             |     a2 = 1;
    0x0002e030 move a1, fp                   |     a1 = fp;
    0x0002e034 move a0, s6                   |     a0 = s6;
    0x0002e038 jalr t9                       |     t9 ();
    0x0002e03c lw gp, 0x18(sp)               |     gp = *(var_18h_2);
    0x0002e040 b 0x2dd48                     |     goto label_11;
                                             | label_45:
    0x0002e044 lw v0, 0x28(sp)               |     v0 = *(var_28h_2);
    0x0002e048 lw v1, 0x14(v0)               |     v1 = *((v0 + 5));
    0x0002e04c sw v1, 0x44(sp)               |     *(var_44h_2) = v1;
                                             |     if (v1 == 0) {
    0x0002e050 beqz v1, 0x2e204              |         goto label_54;
                                             |     }
    0x0002e054 lw v0, 4(v1)                  |     v0 = *((v1 + 1));
    0x0002e058 andi a0, v0, 1                |     a0 = v0 & 1;
                                             |     if (a0 == 0) {
    0x0002e05c beql a0, zero, 0x2dc3c        |         goto label_6;
                                             |     }
    0x0002e060 lw v0, -0x7fd0(gp)            |     v0 = *((gp - 8180));
    0x0002e064 lw t9, (s5)                   |     t9 = *(s5);
    0x0002e068 lw a2, 0x30(sp)               |     a2 = *(var_30h);
                                             |     if (t9 != 0) {
    0x0002e06c beqz t9, 0x2e08c              |         
    0x0002e070 move a1, s6                   |         a1 = s6;
    0x0002e074 move a0, v1                   |         a0 = v1;
    0x0002e078 jalr t9                       |         t9 ();
    0x0002e07c lw gp, 0x18(sp)               |         gp = *(var_18h_2);
                                             |         if (v0 == 0) {
    0x0002e080 beqz v0, 0x2e204              |             goto label_54;
                                             |         }
    0x0002e084 lw v1, 0x44(sp)               |         v1 = *(var_44h_2);
    0x0002e088 lw v0, 4(v1)                  |         v0 = *((v1 + 1));
                                             |     }
    0x0002e08c andi v0, v0, 0x20             |     v0 &= 0x20;
    0x0002e090 lw v0, 0x30(sp)               |     v0 = *(var_30h);
                                             |     if (v0 != 0) {
    0x0002e094 bnez v0, 0x2e0f4              |         goto label_55;
                                             |     }
    0x0002e098 sw v0, 0x38(sp)               |     *(var_38h_2) = v0;
                                             | label_14:
    0x0002e09c lw a0, 0x44(sp)               |     a0 = *(var_44h_2);
    0x0002e0a0 lw t9, 8(a0)                  |     t9 = *((a0 + 2));
    0x0002e0a4 lw a2, 0x38(sp)               |     a2 = *(var_38h_2);
                                             |     if (t9 == 0) {
    0x0002e0a8 beqz t9, 0x2e32c              |         goto label_56;
                                             |     }
    0x0002e0ac move a1, s6                   |     a1 = s6;
    0x0002e0b0 jalr t9                       |     t9 ();
    0x0002e0b4 lw gp, 0x18(sp)               |     gp = *(var_18h_2);
                                             | label_20:
    0x0002e0b8 lw v0, 0x38(sp)               |     v0 = *(var_38h_2);
                                             | label_19:
    0x0002e0bc lw v0, 8(v0)                  |     v0 = *((v0 + 2));
                                             |     if (v0 == 0) {
    0x0002e0c0 beql v0, zero, 0x2de48        |         goto label_12;
                                             |     }
    0x0002e0c4 lw v0, 0x30(sp)               |     v0 = *(var_30h);
    0x0002e0c8 lw a0, (v0)                   |     a0 = *(v0);
    0x0002e0cc lw v0, 0x30(sp)               |     v0 = *(var_30h);
                                             |     if (a0 == 0) {
    0x0002e0d0 bnel a0, zero, 0x2de48        |         goto label_12;
                                             |     }
    0x0002e0d4 lw v1, 0x44(sp)               |     v1 = *(var_44h_2);
    0x0002e0d8 lw a0, 4(v1)                  |     a0 = *((v1 + 1));
    0x0002e0dc andi a0, a0, 0x10             |     a0 &= 0x10;
                                             |     if (a0 == 0) {
    0x0002e0e0 beql a0, zero, 0x2de48        |         goto label_12;
                                             |     }
    0x0002e0e4 lw v0, 0x30(sp)               |     v0 = *(var_30h);
    0x0002e0e8 addiu a0, zero, 1             |     a0 = 1;
    0x0002e0ec sw a0, (v0)                   |     *(v0) = a0;
    0x0002e0f0 b 0x2de44                     |     goto label_13;
                                             | label_55:
    0x0002e0f4 lw a0, 8(v0)                  |     a0 = *((v0 + 2));
    0x0002e0f8 lw a1, (v0)                   |     a1 = *(v0);
    0x0002e0fc lw v0, -0x68f4(gp)            |     v0 = *((gp - 6717));
    0x0002e100 sw a0, 0x90(sp)               |     *(var_90h) = a0;
    0x0002e104 addiu a0, zero, 1             |     a0 = 1;
    0x0002e108 lw v0, (v0)                   |     v0 = *(v0);
    0x0002e10c sw a1, 0x88(sp)               |     *(var_88h) = a1;
    0x0002e110 sw a0, 0x8c(sp)               |     *(var_8ch) = a0;
                                             |     if (v0 != 0) {
    0x0002e114 beqz v0, 0x2e154              |         
    0x0002e118 lw t9, -0x76f4(gp)            |         t9 = *((gp - 7613));
    0x0002e11c lw a0, 0x44(sp)               |         a0 = *(var_44h_2);
    0x0002e120 jalr t9                       |         t9 ();
    0x0002e124 lw gp, 0x18(sp)               |         gp = *(var_18h_2);
    0x0002e128 lw a1, 0x34(sp)               |         a1 = *(var_34h_2);
    0x0002e12c move a3, zero                 |         a3 = 0;
    0x0002e130 lw t9, -0x673c(gp)            |         t9 = *(gp);
    0x0002e134 move a2, v0                   |         a2 = v0;
    0x0002e138 addiu a0, zero, 7             |         a0 = 7;
    0x0002e13c jalr t9                       |         t9 ();
    0x0002e140 lw gp, 0x18(sp)               |         gp = *(var_18h_2);
    0x0002e144 lw t9, -0x7bcc(gp)            |         t9 = *((gp - 7923));
    0x0002e148 move a0, v0                   |         a0 = v0;
    0x0002e14c jalr t9                       |         t9 ();
    0x0002e150 lw gp, 0x18(sp)               |         gp = *(var_18h_2);
                                             |     }
    0x0002e154 addiu v0, sp, 0x88            |     v0 = sp + 0x88;
    0x0002e158 sw v0, 0x38(sp)               |     *(var_38h_2) = v0;
    0x0002e15c b 0x2e09c                     |     goto label_14;
                                             | label_50:
    0x0002e160 lw v1, 8(v0)                  |     v1 = *((v0 + 2));
    0x0002e164 lw a0, (v0)                   |     a0 = *(v0);
    0x0002e168 lw v0, -0x68f4(gp)            |     v0 = *((gp - 6717));
    0x0002e16c sw v1, 0xc0(sp)               |     *(var_c0h) = v1;
    0x0002e170 addiu v1, zero, 1             |     v1 = 1;
    0x0002e174 lw v0, (v0)                   |     v0 = *(v0);
    0x0002e178 sw a0, 0xb8(sp)               |     *(var_b8h) = a0;
    0x0002e17c sw v1, 0xbc(sp)               |     *(var_bch) = v1;
                                             |     if (v0 != 0) {
    0x0002e180 beqz v0, 0x2e1c4              |         
    0x0002e184 lw t9, -0x76f4(gp)            |         t9 = *((gp - 7613));
    0x0002e188 move a0, s0                   |         a0 = s0;
    0x0002e18c jalr t9                       |         t9 ();
    0x0002e190 lw gp, 0x18(sp)               |         gp = *(var_18h_2);
    0x0002e194 move a3, zero                 |         a3 = 0;
    0x0002e198 move a2, v0                   |         a2 = v0;
    0x0002e19c lw a1, -0x7fd0(gp)            |         a1 = *((gp - 8180));
    0x0002e1a0 lw t9, -0x673c(gp)            |         t9 = *(gp);
    0x0002e1a4 addiu a1, a1, -0x7b2c         |         a1 += -0x7b2c;
    0x0002e1a8 addiu a0, zero, 7             |         a0 = 7;
    0x0002e1ac jalr t9                       |         t9 ();
    0x0002e1b0 lw gp, 0x18(sp)               |         gp = *(var_18h_2);
    0x0002e1b4 lw t9, -0x7bcc(gp)            |         t9 = *((gp - 7923));
    0x0002e1b8 move a0, v0                   |         a0 = v0;
    0x0002e1bc jalr t9                       |         t9 ();
    0x0002e1c0 lw gp, 0x18(sp)               |         gp = *(var_18h_2);
                                             |     }
    0x0002e1c4 addiu v0, sp, 0xb8            |     v0 = sp + 0xb8;
    0x0002e1c8 sw v0, 0x2c(sp)               |     *(var_2ch_2) = v0;
    0x0002e1cc b 0x2df14                     |     goto label_15;
                                             | label_48:
    0x0002e1d0 lw t9, -0x6a10(gp)            |     t9 = *((gp - 6788));
                                             |     if (s1 == 0) {
    0x0002e1d4 bnez s1, 0x2e1ec              |         
    0x0002e1d8 lw v0, 0x2c(sp)               |         v0 = *(var_2ch_2);
    0x0002e1dc lw v0, 8(v0)                  |         v0 = *((v0 + 2));
    0x0002e1e0 sw zero, (v0)                 |         *(v0) = 0;
                                             |         if (v0 == 0) {
    0x0002e1e4 bnel v0, zero, 0x2e1ec        |             goto label_57;
                                             |         }
                                             | label_49:
    0x0002e1e8 lw t9, -0x6a10(gp)            |         t9 = *((gp - 6788));
                                             |     }
                                             | label_57:
    0x0002e1ec lw a1, 0x2c(sp)               |     a1 = *(var_2ch_2);
    0x0002e1f0 addiu a2, zero, 1             |     a2 = 1;
    0x0002e1f4 move a0, s2                   |     a0 = s2;
    0x0002e1f8 jalr t9                       |     t9 ();
    0x0002e1fc lw gp, 0x18(sp)               |     gp = *(var_18h_2);
    0x0002e200 b 0x2df64                     |     goto label_16;
                                             | label_54:
    0x0002e204 lw t9, -0x6a10(gp)            |     t9 = *((gp - 6788));
    0x0002e208 lw a1, 0x30(sp)               |     a1 = *(var_30h);
    0x0002e20c addiu a2, zero, 1             |     a2 = 1;
    0x0002e210 move a0, s6                   |     a0 = s6;
    0x0002e214 jalr t9                       |     t9 ();
    0x0002e218 lw gp, 0x18(sp)               |     gp = *(var_18h_2);
    0x0002e21c b 0x2de44                     |     goto label_13;
                                             | label_51:
    0x0002e220 lw s1, 0x14(s0)               |     s1 = *((s0 + 5));
    0x0002e224 lw t9, -0x6a10(gp)            |     t9 = *((gp - 6788));
                                             |     if (s1 == 0) {
    0x0002e228 beqz s1, 0x2e710              |         goto label_58;
                                             |     }
    0x0002e22c lw v0, 4(s1)                  |     v0 = *((s1 + 1));
    0x0002e230 andi v1, v0, 1                |     v1 = v0 & 1;
                                             |     if (v1 == 0) {
    0x0002e234 beql v1, zero, 0x2dc3c        |         goto label_6;
                                             |     }
    0x0002e238 lw v0, -0x7fd0(gp)            |     v0 = *((gp - 8180));
    0x0002e23c lw t9, (s5)                   |     t9 = *(s5);
    0x0002e240 lw a2, 0x2c(sp)               |     a2 = *(var_2ch_2);
                                             |     if (t9 != 0) {
    0x0002e244 beqz t9, 0x2e260              |         
    0x0002e248 move a1, s2                   |         a1 = s2;
    0x0002e24c move a0, s1                   |         a0 = s1;
    0x0002e250 jalr t9                       |         t9 ();
    0x0002e254 lw gp, 0x18(sp)               |         gp = *(var_18h_2);
                                             |         if (v0 == 0) {
    0x0002e258 beqz v0, 0x2e70c              |             goto label_59;
                                             |         }
    0x0002e25c lw v0, 4(s1)                  |         v0 = *((s1 + 1));
                                             |     }
    0x0002e260 andi v0, v0, 0x20             |     v0 &= 0x20;
    0x0002e264 lw s3, 0x2c(sp)               |     s3 = *(var_2ch_2);
                                             |     if (v0 != 0) {
    0x0002e268 beqz v0, 0x2e2d8              |         
    0x0002e26c lw v0, 0x2c(sp)               |         v0 = *(var_2ch_2);
    0x0002e270 lw v1, 8(v0)                  |         v1 = *((v0 + 2));
    0x0002e274 lw a0, (v0)                   |         a0 = *(v0);
    0x0002e278 lw v0, -0x68f4(gp)            |         v0 = *((gp - 6717));
    0x0002e27c sw v1, 0xcc(sp)               |         *(var_cch) = v1;
    0x0002e280 addiu v1, zero, 1             |         v1 = 1;
    0x0002e284 lw v0, (v0)                   |         v0 = *(v0);
    0x0002e288 sw a0, 0xc4(sp)               |         *(var_c4h) = a0;
    0x0002e28c sw v1, 0xc8(sp)               |         *(var_c8h) = v1;
                                             |         if (v0 != 0) {
    0x0002e290 beqz v0, 0x2e2d4              |             
    0x0002e294 lw t9, -0x76f4(gp)            |             t9 = *((gp - 7613));
    0x0002e298 move a0, s1                   |             a0 = s1;
    0x0002e29c jalr t9                       |             t9 ();
    0x0002e2a0 lw gp, 0x18(sp)               |             gp = *(var_18h_2);
    0x0002e2a4 move a3, zero                 |             a3 = 0;
    0x0002e2a8 move a2, v0                   |             a2 = v0;
    0x0002e2ac lw a1, -0x7fd0(gp)            |             a1 = *((gp - 8180));
    0x0002e2b0 lw t9, -0x673c(gp)            |             t9 = *(gp);
    0x0002e2b4 addiu a1, a1, -0x7b2c         |             a1 += -0x7b2c;
    0x0002e2b8 addiu a0, zero, 7             |             a0 = 7;
    0x0002e2bc jalr t9                       |             t9 ();
    0x0002e2c0 lw gp, 0x18(sp)               |             gp = *(var_18h_2);
    0x0002e2c4 lw t9, -0x7bcc(gp)            |             t9 = *((gp - 7923));
    0x0002e2c8 move a0, v0                   |             a0 = v0;
    0x0002e2cc jalr t9                       |             t9 ();
    0x0002e2d0 lw gp, 0x18(sp)               |             gp = *(var_18h_2);
                                             |         }
    0x0002e2d4 addiu s3, sp, 0xc4            |         s3 = sp + 0xc4;
                                             |     }
    0x0002e2d8 lw t9, 8(s1)                  |     t9 = *((s1 + 2));
                                             |     if (t9 == 0) {
    0x0002e2dc beql t9, zero, 0x2e728        |         goto label_60;
                                             |     }
    0x0002e2e0 lw s4, 0x14(s1)               |     s4 = *((s1 + 5));
    0x0002e2e4 move a2, s3                   |     a2 = s3;
    0x0002e2e8 move a1, s2                   |     a1 = s2;
    0x0002e2ec move a0, s1                   |     a0 = s1;
    0x0002e2f0 jalr t9                       |     t9 ();
    0x0002e2f4 lw gp, 0x18(sp)               |     gp = *(var_18h_2);
                                             | label_28:
    0x0002e2f8 lw v0, 8(s3)                  |     v0 = *((s3 + 2));
                                             |     if (v0 == 0) {
                                             | label_27:
    0x0002e2fc beql v0, zero, 0x2df34        |         goto label_17;
                                             |     }
    0x0002e300 lw v0, 0x2c(sp)               |     v0 = *(var_2ch_2);
    0x0002e304 lw v1, (v0)                   |     v1 = *(v0);
    0x0002e308 lw v0, 0x2c(sp)               |     v0 = *(var_2ch_2);
                                             |     if (v1 == 0) {
    0x0002e30c bnel v1, zero, 0x2df34        |         goto label_17;
                                             |     }
    0x0002e310 lw v1, 4(s1)                  |     v1 = *((s1 + 1));
    0x0002e314 andi v1, v1, 0x10             |     v1 &= 0x10;
                                             |     if (v1 == 0) {
    0x0002e318 beql v1, zero, 0x2df34        |         goto label_17;
                                             |     }
    0x0002e31c lw v0, 0x2c(sp)               |     v0 = *(var_2ch_2);
    0x0002e320 addiu v1, zero, 1             |     v1 = 1;
    0x0002e324 sw v1, (v0)                   |     *(v0) = v1;
    0x0002e328 b 0x2df30                     |     goto label_18;
                                             | label_56:
    0x0002e32c lw v0, 0x44(sp)               |     v0 = *(var_44h_2);
    0x0002e330 lw v1, 0x14(v0)               |     v1 = *((v0 + 5));
    0x0002e334 sw v1, 0x48(sp)               |     *(var_48h) = v1;
                                             |     if (v1 == 0) {
    0x0002e338 beqz v1, 0x2e440              |         goto label_61;
                                             |     }
    0x0002e33c lw v0, 4(v1)                  |     v0 = *((v1 + 1));
    0x0002e340 andi a0, v0, 1                |     a0 = v0 & 1;
                                             |     if (a0 == 0) {
    0x0002e344 beql a0, zero, 0x2dc3c        |         goto label_6;
                                             |     }
    0x0002e348 lw v0, -0x7fd0(gp)            |     v0 = *((gp - 8180));
    0x0002e34c lw t9, (s5)                   |     t9 = *(s5);
    0x0002e350 lw a2, 0x38(sp)               |     a2 = *(var_38h_2);
                                             |     if (t9 != 0) {
    0x0002e354 beqz t9, 0x2e374              |         
    0x0002e358 move a1, s6                   |         a1 = s6;
    0x0002e35c move a0, v1                   |         a0 = v1;
    0x0002e360 jalr t9                       |         t9 ();
    0x0002e364 lw gp, 0x18(sp)               |         gp = *(var_18h_2);
                                             |         if (v0 == 0) {
    0x0002e368 beqz v0, 0x2e440              |             goto label_61;
                                             |         }
    0x0002e36c lw v1, 0x48(sp)               |         v1 = *(var_48h);
    0x0002e370 lw v0, 4(v1)                  |         v0 = *((v1 + 1));
                                             |     }
    0x0002e374 andi v0, v0, 0x20             |     v0 &= 0x20;
    0x0002e378 lw v0, 0x38(sp)               |     v0 = *(var_38h_2);
                                             |     if (v0 == 0) {
    0x0002e37c beqz v0, 0x2e45c              |         goto label_62;
                                             |     }
    0x0002e380 lw a0, 8(v0)                  |     a0 = *((v0 + 2));
    0x0002e384 lw a1, (v0)                   |     a1 = *(v0);
    0x0002e388 lw v0, -0x68f4(gp)            |     v0 = *((gp - 6717));
    0x0002e38c sw a0, 0x9c(sp)               |     *(var_9ch) = a0;
    0x0002e390 addiu a0, zero, 1             |     a0 = 1;
    0x0002e394 lw v0, (v0)                   |     v0 = *(v0);
    0x0002e398 sw a1, 0x94(sp)               |     *(var_94h) = a1;
    0x0002e39c sw a0, 0x98(sp)               |     *(var_98h) = a0;
                                             |     if (v0 != 0) {
    0x0002e3a0 beqz v0, 0x2e3e0              |         
    0x0002e3a4 lw t9, -0x76f4(gp)            |         t9 = *((gp - 7613));
    0x0002e3a8 lw a0, 0x48(sp)               |         a0 = *(var_48h);
    0x0002e3ac jalr t9                       |         t9 ();
    0x0002e3b0 lw gp, 0x18(sp)               |         gp = *(var_18h_2);
    0x0002e3b4 lw a1, 0x34(sp)               |         a1 = *(var_34h_2);
    0x0002e3b8 move a3, zero                 |         a3 = 0;
    0x0002e3bc lw t9, -0x673c(gp)            |         t9 = *(gp);
    0x0002e3c0 move a2, v0                   |         a2 = v0;
    0x0002e3c4 addiu a0, zero, 7             |         a0 = 7;
    0x0002e3c8 jalr t9                       |         t9 ();
    0x0002e3cc lw gp, 0x18(sp)               |         gp = *(var_18h_2);
    0x0002e3d0 lw t9, -0x7bcc(gp)            |         t9 = *((gp - 7923));
    0x0002e3d4 move a0, v0                   |         a0 = v0;
    0x0002e3d8 jalr t9                       |         t9 ();
    0x0002e3dc lw gp, 0x18(sp)               |         gp = *(var_18h_2);
                                             |     }
    0x0002e3e0 addiu v0, sp, 0x94            |     v0 = sp + 0x94;
    0x0002e3e4 sw v0, 0x3c(sp)               |     *(var_3ch_2) = v0;
                                             | label_21:
    0x0002e3e8 lw a0, 0x48(sp)               |     a0 = *(var_48h);
    0x0002e3ec lw t9, 8(a0)                  |     t9 = *((a0 + 2));
    0x0002e3f0 lw a2, 0x3c(sp)               |     a2 = *(var_3ch_2);
                                             |     if (t9 == 0) {
    0x0002e3f4 beqz t9, 0x2e464              |         goto label_63;
                                             |     }
    0x0002e3f8 move a1, s6                   |     a1 = s6;
    0x0002e3fc jalr t9                       |     t9 ();
    0x0002e400 lw gp, 0x18(sp)               |     gp = *(var_18h_2);
                                             | label_23:
    0x0002e404 lw v0, 0x3c(sp)               |     v0 = *(var_3ch_2);
                                             | label_22:
    0x0002e408 lw v0, 8(v0)                  |     v0 = *((v0 + 2));
                                             |     if (v0 == 0) {
    0x0002e40c beql v0, zero, 0x2e0bc        |         goto label_19;
                                             |     }
    0x0002e410 lw v0, 0x38(sp)               |     v0 = *(var_38h_2);
    0x0002e414 lw a0, (v0)                   |     a0 = *(v0);
    0x0002e418 lw v0, 0x38(sp)               |     v0 = *(var_38h_2);
                                             |     if (a0 == 0) {
    0x0002e41c bnel a0, zero, 0x2e0bc        |         goto label_19;
                                             |     }
    0x0002e420 lw v1, 0x48(sp)               |     v1 = *(var_48h);
    0x0002e424 lw a0, 4(v1)                  |     a0 = *((v1 + 1));
    0x0002e428 andi a0, a0, 0x10             |     a0 &= 0x10;
                                             |     if (a0 == 0) {
    0x0002e42c beql a0, zero, 0x2e0bc        |         goto label_19;
                                             |     }
    0x0002e430 lw v0, 0x38(sp)               |     v0 = *(var_38h_2);
    0x0002e434 addiu a0, zero, 1             |     a0 = 1;
    0x0002e438 sw a0, (v0)                   |     *(v0) = a0;
    0x0002e43c b 0x2e0b8                     |     goto label_20;
                                             | label_61:
    0x0002e440 lw t9, -0x6a10(gp)            |     t9 = *((gp - 6788));
    0x0002e444 lw a1, 0x38(sp)               |     a1 = *(var_38h_2);
    0x0002e448 addiu a2, zero, 1             |     a2 = 1;
    0x0002e44c move a0, s6                   |     a0 = s6;
    0x0002e450 jalr t9                       |     t9 ();
    0x0002e454 lw gp, 0x18(sp)               |     gp = *(var_18h_2);
    0x0002e458 b 0x2e0b8                     |     goto label_20;
                                             | label_62:
    0x0002e45c sw v0, 0x3c(sp)               |     *(var_3ch_2) = v0;
    0x0002e460 b 0x2e3e8                     |     goto label_21;
                                             | label_63:
    0x0002e464 lw v0, 0x48(sp)               |     v0 = *(var_48h);
    0x0002e468 lw v1, 0x14(v0)               |     v1 = *((v0 + 5));
    0x0002e46c sw v1, 0x4c(sp)               |     *(var_4ch) = v1;
                                             |     if (v1 == 0) {
    0x0002e470 beqz v1, 0x2e578              |         goto label_64;
                                             |     }
    0x0002e474 lw v0, 4(v1)                  |     v0 = *((v1 + 1));
    0x0002e478 andi a0, v0, 1                |     a0 = v0 & 1;
                                             |     if (a0 == 0) {
    0x0002e47c beql a0, zero, 0x2dc3c        |         goto label_6;
                                             |     }
    0x0002e480 lw v0, -0x7fd0(gp)            |     v0 = *((gp - 8180));
    0x0002e484 lw t9, (s5)                   |     t9 = *(s5);
    0x0002e488 lw a2, 0x3c(sp)               |     a2 = *(var_3ch_2);
                                             |     if (t9 != 0) {
    0x0002e48c beqz t9, 0x2e4ac              |         
    0x0002e490 move a1, s6                   |         a1 = s6;
    0x0002e494 move a0, v1                   |         a0 = v1;
    0x0002e498 jalr t9                       |         t9 ();
    0x0002e49c lw gp, 0x18(sp)               |         gp = *(var_18h_2);
                                             |         if (v0 == 0) {
    0x0002e4a0 beqz v0, 0x2e578              |             goto label_64;
                                             |         }
    0x0002e4a4 lw v1, 0x4c(sp)               |         v1 = *(var_4ch);
    0x0002e4a8 lw v0, 4(v1)                  |         v0 = *((v1 + 1));
                                             |     }
    0x0002e4ac andi v0, v0, 0x20             |     v0 &= 0x20;
    0x0002e4b0 lw v0, 0x3c(sp)               |     v0 = *(var_3ch_2);
                                             |     if (v0 == 0) {
    0x0002e4b4 beqz v0, 0x2e594              |         goto label_65;
                                             |     }
    0x0002e4b8 lw a0, 8(v0)                  |     a0 = *((v0 + 2));
    0x0002e4bc lw a1, (v0)                   |     a1 = *(v0);
    0x0002e4c0 lw v0, -0x68f4(gp)            |     v0 = *((gp - 6717));
    0x0002e4c4 sw a0, 0xa8(sp)               |     *(var_a8h) = a0;
    0x0002e4c8 addiu a0, zero, 1             |     a0 = 1;
    0x0002e4cc lw v0, (v0)                   |     v0 = *(v0);
    0x0002e4d0 sw a1, 0xa0(sp)               |     *(var_a0h) = a1;
    0x0002e4d4 sw a0, 0xa4(sp)               |     *(var_a4h) = a0;
                                             |     if (v0 != 0) {
    0x0002e4d8 beqz v0, 0x2e518              |         
    0x0002e4dc lw t9, -0x76f4(gp)            |         t9 = *((gp - 7613));
    0x0002e4e0 lw a0, 0x4c(sp)               |         a0 = *(var_4ch);
    0x0002e4e4 jalr t9                       |         t9 ();
    0x0002e4e8 lw gp, 0x18(sp)               |         gp = *(var_18h_2);
    0x0002e4ec lw a1, 0x34(sp)               |         a1 = *(var_34h_2);
    0x0002e4f0 move a3, zero                 |         a3 = 0;
    0x0002e4f4 lw t9, -0x673c(gp)            |         t9 = *(gp);
    0x0002e4f8 move a2, v0                   |         a2 = v0;
    0x0002e4fc addiu a0, zero, 7             |         a0 = 7;
    0x0002e500 jalr t9                       |         t9 ();
    0x0002e504 lw gp, 0x18(sp)               |         gp = *(var_18h_2);
    0x0002e508 lw t9, -0x7bcc(gp)            |         t9 = *((gp - 7923));
    0x0002e50c move a0, v0                   |         a0 = v0;
    0x0002e510 jalr t9                       |         t9 ();
    0x0002e514 lw gp, 0x18(sp)               |         gp = *(var_18h_2);
                                             |     }
    0x0002e518 addiu v0, sp, 0xa0            |     v0 = sp + 0xa0;
    0x0002e51c sw v0, 0x40(sp)               |     *(var_40h_2) = v0;
                                             | label_24:
    0x0002e520 lw a0, 0x4c(sp)               |     a0 = *(var_4ch);
    0x0002e524 lw t9, 8(a0)                  |     t9 = *((a0 + 2));
    0x0002e528 lw a2, 0x40(sp)               |     a2 = *(var_40h_2);
                                             |     if (t9 == 0) {
    0x0002e52c beqz t9, 0x2e59c              |         goto label_66;
                                             |     }
    0x0002e530 move a1, s6                   |     a1 = s6;
    0x0002e534 jalr t9                       |     t9 ();
    0x0002e538 lw gp, 0x18(sp)               |     gp = *(var_18h_2);
                                             | label_26:
    0x0002e53c lw v0, 0x40(sp)               |     v0 = *(var_40h_2);
                                             | label_25:
    0x0002e540 lw v0, 8(v0)                  |     v0 = *((v0 + 2));
                                             |     if (v0 == 0) {
    0x0002e544 beql v0, zero, 0x2e408        |         goto label_22;
                                             |     }
    0x0002e548 lw v0, 0x3c(sp)               |     v0 = *(var_3ch_2);
    0x0002e54c lw a0, (v0)                   |     a0 = *(v0);
    0x0002e550 lw v0, 0x3c(sp)               |     v0 = *(var_3ch_2);
                                             |     if (a0 == 0) {
    0x0002e554 bnel a0, zero, 0x2e408        |         goto label_22;
                                             |     }
    0x0002e558 lw v1, 0x4c(sp)               |     v1 = *(var_4ch);
    0x0002e55c lw a0, 4(v1)                  |     a0 = *((v1 + 1));
    0x0002e560 andi a0, a0, 0x10             |     a0 &= 0x10;
                                             |     if (a0 == 0) {
    0x0002e564 beql a0, zero, 0x2e408        |         goto label_22;
                                             |     }
    0x0002e568 lw v0, 0x3c(sp)               |     v0 = *(var_3ch_2);
                                             | label_64:
    0x0002e578 lw t9, -0x6a10(gp)            |     t9 = *((gp - 6788));
    0x0002e57c lw a1, 0x3c(sp)               |     a1 = *(var_3ch_2);
    0x0002e580 addiu a2, zero, 1             |     a2 = 1;
    0x0002e584 move a0, s6                   |     a0 = s6;
    0x0002e588 jalr t9                       |     t9 ();
    0x0002e58c lw gp, 0x18(sp)               |     gp = *(var_18h_2);
    0x0002e590 b 0x2e404                     |     goto label_23;
                                             | label_65:
    0x0002e594 sw v0, 0x40(sp)               |     *(var_40h_2) = v0;
    0x0002e598 b 0x2e520                     |     goto label_24;
                                             | label_66:
    0x0002e59c lw v0, 0x4c(sp)               |     v0 = *(var_4ch);
    0x0002e5a0 lw t2, 0x14(v0)               |     t2 = *((v0 + 5));
    0x0002e5a4 lw t9, -0x6a10(gp)            |     t9 = *((gp - 6788));
                                             |     if (t2 == 0) {
    0x0002e5a8 beqz t2, 0x2e6c4              |         goto label_67;
                                             |     }
    0x0002e5ac lw v0, 4(t2)                  |     v0 = *((t2 + 1));
    0x0002e5b0 andi a0, v0, 1                |     a0 = v0 & 1;
                                             |     if (a0 == 0) {
    0x0002e5b4 beql a0, zero, 0x2dc3c        |         goto label_6;
                                             |     }
    0x0002e5b8 lw v0, -0x7fd0(gp)            |     v0 = *((gp - 8180));
    0x0002e5bc lw t9, (s5)                   |     t9 = *(s5);
    0x0002e5c0 lw a2, 0x40(sp)               |     a2 = *(var_40h_2);
                                             |     if (t9 == 0) {
    0x0002e5c4 beqz t9, 0x2e5e8              |         void (*0x2e5e8)() ();
                                             |     }
                                             | label_30:
    0x0002e68c lw v0, 8(v0)                  |     v0 = *((v0 + 2));
                                             |     if (v0 == 0) {
    0x0002e690 beql v0, zero, 0x2e540        |         goto label_25;
                                             |     }
    0x0002e694 lw v0, 0x40(sp)               |     v0 = *(var_40h_2);
    0x0002e698 lw a0, (v0)                   |     a0 = *(v0);
    0x0002e69c lw v0, 0x40(sp)               |     v0 = *(var_40h_2);
                                             |     if (a0 == 0) {
    0x0002e6a0 bnel a0, zero, 0x2e540        |         goto label_25;
                                             |     }
    0x0002e6a4 lw a0, 4(t2)                  |     a0 = *((t2 + 1));
    0x0002e6a8 andi a0, a0, 0x10             |     a0 &= 0x10;
                                             |     if (a0 == 0) {
    0x0002e6ac beql a0, zero, 0x2e540        |         goto label_25;
                                             |     }
    0x0002e6b0 lw v0, 0x40(sp)               |     v0 = *(var_40h_2);
    0x0002e6b4 addiu a0, zero, 1             |     a0 = 1;
    0x0002e6b8 sw a0, (v0)                   |     *(v0) = a0;
    0x0002e6bc b 0x2e53c                     |     goto label_26;
                                             | label_67:
    0x0002e6c4 lw a1, 0x40(sp)               |     a1 = *(var_40h_2);
    0x0002e6c8 addiu a2, zero, 1             |     a2 = 1;
    0x0002e6cc move a0, s6                   |     a0 = s6;
    0x0002e6d0 jalr t9                       |     t9 ();
    0x0002e6d4 lw gp, 0x18(sp)               |     gp = *(var_18h_2);
    0x0002e6d8 b 0x2e53c                     |     goto label_26;
                                             | label_59:
    0x0002e70c lw t9, -0x6a10(gp)            |     t9 = *((gp - 6788));
                                             | label_58:
    0x0002e710 lw a1, 0x2c(sp)               |     a1 = *(var_2ch_2);
    0x0002e714 addiu a2, zero, 1             |     a2 = 1;
    0x0002e718 move a0, s2                   |     a0 = s2;
    0x0002e71c jalr t9                       |     t9 ();
    0x0002e720 lw gp, 0x18(sp)               |     gp = *(var_18h_2);
    0x0002e724 b 0x2df30                     |     goto label_18;
                                             | label_60:
    0x0002e728 lw t9, -0x6a10(gp)            |     t9 = *((gp - 6788));
                                             |     if (s4 == 0) {
    0x0002e72c beqz s4, 0x2e830              |         goto label_68;
                                             |     }
    0x0002e730 lw v0, 4(s4)                  |     v0 = *((s4 + 1));
    0x0002e734 andi v1, v0, 1                |     v1 = v0 & 1;
                                             |     if (v1 == 0) {
    0x0002e738 beql v1, zero, 0x2dc3c        |         goto label_6;
                                             |     }
    0x0002e73c lw v0, -0x7fd0(gp)            |     v0 = *((gp - 8180));
    0x0002e740 lw t9, (s5)                   |     t9 = *(s5);
    0x0002e744 andi v0, v0, 0x20             |     v0 &= 0x20;
                                             |     if (t9 != 0) {
    0x0002e748 beqz t9, 0x2e76c              |         
    0x0002e74c move a2, s3                   |         a2 = s3;
    0x0002e750 move a1, s2                   |         a1 = s2;
    0x0002e754 move a0, s4                   |         a0 = s4;
    0x0002e758 jalr t9                       |         t9 ();
    0x0002e75c lw gp, 0x18(sp)               |         gp = *(var_18h_2);
                                             |         if (v0 == 0) {
    0x0002e760 beqz v0, 0x2e82c              |             goto label_69;
                                             |         }
    0x0002e764 lw v0, 4(s4)                  |         v0 = *((s4 + 1));
    0x0002e768 andi v0, v0, 0x20             |         v0 &= 0x20;
                                             |     }
    0x0002e76c move s5, s3                   |     s5 = s3;
                                             |     if (v0 != 0) {
    0x0002e770 beqz v0, 0x2e7dc              |         
    0x0002e774 lw v0, -0x68f4(gp)            |         v0 = *((gp - 6717));
    0x0002e778 lw v1, 8(s3)                  |         v1 = *((s3 + 2));
    0x0002e77c lw a0, (s3)                   |         a0 = *(s3);
    0x0002e780 lw v0, (v0)                   |         v0 = *(v0);
    0x0002e784 sw v1, 0xd8(sp)               |         *(var_d8h) = v1;
    0x0002e788 addiu v1, zero, 1             |         v1 = 1;
    0x0002e78c sw a0, 0xd0(sp)               |         *(var_d0h) = a0;
    0x0002e790 sw v1, 0xd4(sp)               |         *(var_d4h) = v1;
                                             |         if (v0 != 0) {
    0x0002e794 beqz v0, 0x2e7d8              |             
    0x0002e798 lw t9, -0x76f4(gp)            |             t9 = *((gp - 7613));
    0x0002e79c move a0, s4                   |             a0 = s4;
    0x0002e7a0 jalr t9                       |             t9 ();
    0x0002e7a4 lw gp, 0x18(sp)               |             gp = *(var_18h_2);
    0x0002e7a8 move a3, zero                 |             a3 = 0;
    0x0002e7ac move a2, v0                   |             a2 = v0;
    0x0002e7b0 lw a1, -0x7fd0(gp)            |             a1 = *((gp - 8180));
    0x0002e7b4 lw t9, -0x673c(gp)            |             t9 = *(gp);
    0x0002e7b8 addiu a1, a1, -0x7b2c         |             a1 += -0x7b2c;
    0x0002e7bc addiu a0, zero, 7             |             a0 = 7;
    0x0002e7c0 jalr t9                       |             t9 ();
    0x0002e7c4 lw gp, 0x18(sp)               |             gp = *(var_18h_2);
    0x0002e7c8 lw t9, -0x7bcc(gp)            |             t9 = *((gp - 7923));
    0x0002e7cc move a0, v0                   |             a0 = v0;
    0x0002e7d0 jalr t9                       |             t9 ();
    0x0002e7d4 lw gp, 0x18(sp)               |             gp = *(var_18h_2);
                                             |         }
    0x0002e7d8 addiu s5, sp, 0xd0            |         s5 = sp + 0xd0;
                                             |     }
    0x0002e7dc lw t9, 8(s4)                  |     t9 = *((s4 + 2));
    0x0002e7e0 move a2, s5                   |     a2 = s5;
                                             |     if (t9 == 0) {
    0x0002e7e4 beqz t9, 0x2e848              |         goto label_70;
                                             |     }
    0x0002e7e8 move a1, s2                   |     a1 = s2;
    0x0002e7ec move a0, s4                   |     a0 = s4;
    0x0002e7f0 jalr t9                       |     t9 ();
    0x0002e7f4 lw gp, 0x18(sp)               |     gp = *(var_18h_2);
                                             | label_29:
    0x0002e7f8 lw v0, 8(s5)                  |     v0 = *((s5 + 2));
                                             |     if (v0 == 0) {
    0x0002e7fc beql v0, zero, 0x2e2fc        |         goto label_27;
                                             |     }
    0x0002e800 lw v0, 8(s3)                  |     v0 = *((s3 + 2));
    0x0002e804 lw v1, (v0)                   |     v1 = *(v0);
    0x0002e808 lw v0, 8(s3)                  |     v0 = *((s3 + 2));
                                             |     if (v1 == 0) {
    0x0002e80c bnel v1, zero, 0x2e2fc        |         goto label_27;
                                             |     }
    0x0002e810 lw v1, 4(s4)                  |     v1 = *((s4 + 1));
    0x0002e814 andi v1, v1, 0x10             |     v1 &= 0x10;
                                             |     if (v1 == 0) {
    0x0002e818 beql v1, zero, 0x2e2fc        |         goto label_27;
                                             |     }
    0x0002e81c lw v0, 8(s3)                  |     v0 = *((s3 + 2));
    0x0002e820 addiu v1, zero, 1             |     v1 = 1;
    0x0002e824 sw v1, (v0)                   |     *(v0) = v1;
    0x0002e828 b 0x2e2f8                     |     goto label_28;
                                             | label_69:
    0x0002e82c lw t9, -0x6a10(gp)            |     t9 = *((gp - 6788));
                                             | label_68:
    0x0002e830 addiu a2, zero, 1             |     a2 = 1;
    0x0002e834 move a1, s3                   |     a1 = s3;
    0x0002e838 move a0, s2                   |     a0 = s2;
    0x0002e83c jalr t9                       |     t9 ();
    0x0002e840 lw gp, 0x18(sp)               |     gp = *(var_18h_2);
    0x0002e844 b 0x2e2f8                     |     goto label_28;
                                             | label_70:
    0x0002e848 lw a0, 0x14(s4)               |     a0 = *((s4 + 5));
                                             |     if (a0 != 0) {
    0x0002e84c beql a0, zero, 0x2e8a4        |         
    0x0002e850 lw t9, -0x6a10(gp)            |         t9 = *((gp - 6788));
    0x0002e854 lw t9, -0x7fcc(gp)            |         t9 = *((gp - 8179));
    0x0002e858 move a2, s5                   |         a2 = s5;
    0x0002e85c addiu t9, t9, -0x26d4         |         t9 += -0x26d4;
    0x0002e860 move a1, s2                   |         a1 = s2;
    0x0002e864 bal 0x2d92c                   |         fcn_0002d92c ();
                                             |         goto label_1;
    0x0002e868 lw gp, 0x18(sp)               |         gp = *(var_18h_2);
    0x0002e86c b 0x2e7f8                     |         goto label_29;
                                             | label_53:
    0x0002e870 lw t9, -0x7454(gp)            |         t9 = *(gp);
    0x0002e874 jalr t9                       |         t9 ();
    0x0002e878 nop                           |         
    0x0002e87c lw t9, -0x6a10(gp)            |         t9 = *((gp - 6788));
    0x0002e880 move a1, v0                   |         a1 = v0;
    0x0002e884 sw v0, 0x58(sp)               |         *(var_58h) = v0;
    0x0002e888 addiu a2, zero, 1             |         a2 = 1;
    0x0002e88c move a0, s6                   |         a0 = s6;
    0x0002e890 jalr t9                       |         t9 ();
    0x0002e894 lw gp, 0x18(sp)               |         gp = *(var_18h_2);
    0x0002e898 lw t2, 0x5c(sp)               |         t2 = *(var_5ch);
    0x0002e89c lw v0, 0x58(sp)               |         v0 = *(var_58h);
    0x0002e8a0 b 0x2e68c                     |         goto label_30;
                                             |     }
    0x0002e8a4 addiu a2, zero, 1             |     a2 = 1;
    0x0002e8a8 move a1, s5                   |     a1 = s5;
    0x0002e8ac move a0, s2                   |     a0 = s2;
    0x0002e8b0 jalr t9                       |     t9 ();
    0x0002e8b4 lw gp, 0x18(sp)               |     gp = *(var_18h_2);
    0x0002e8b8 b 0x2e7f8                     |     goto label_29;
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/lib/libsyslog-ng-3.19.so.0.0.0 @ 0x3247c */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.0003247c ()                  | void fcn_0003247c () {
                                             | label_1:
    0x0003247c lui gp, 0xa                   |     
    0x00032480 addiu gp, gp, 0x17f4          |     
    0x00032484 addu gp, gp, t9               |     gp += t9;
    0x00032488 addiu sp, sp, -0x48           |     
    0x0003248c lw v0, 4(a0)                  |     v0 = *((a0 + 1));
    0x00032490 sw s2, 0x3c(sp)               |     *(var_3ch) = s2;
    0x00032494 lw s2, -0x6a60(gp)            |     s2 = *((gp - 6808));
    0x00032498 sw gp, 0x18(sp)               |     *(var_18h) = gp;
    0x0003249c andi v1, v0, 1                |     v1 = v0 & 1;
    0x000324a0 lw a3, (s2)                   |     a3 = *(s2);
    0x000324a4 sw ra, 0x44(sp)               |     *(var_44h) = ra;
    0x000324a8 sw s3, 0x40(sp)               |     *(var_40h) = s3;
    0x000324ac sw s1, 0x38(sp)               |     *(var_38h) = s1;
    0x000324b0 sw s0, 0x34(sp)               |     *(var_34h) = s0;
    0x000324b4 sw a3, 0x2c(sp)               |     *(var_2ch) = a3;
    0x000324b8 lw v1, -0x7068(gp)            |     v1 = *((gp - 7194));
                                             |     if (v1 == 0) {
    0x000324bc bnez v1, 0x324ec              |         
    0x000324c0 lw v0, -0x7fd0(gp)            |         v0 = *((gp - 8180));
    0x000324c4 lw a3, -0x7fd0(gp)            |         a3 = *((gp - 8180));
    0x000324c8 lw a1, -0x7fe8(gp)            |         a1 = *((gp - 8186));
    0x000324cc addiu v0, v0, -0x7b50         |         v0 += -0x7b50;
    0x000324d0 lw t9, -0x7cc4(gp)            |         t9 = *((gp - 7985));
    0x000324d4 sw v0, 0x10(sp)               |         *(var_10h_2) = v0;
    0x000324d8 addiu a3, a3, -0x622c         |         a3 += -0x622c;
    0x000324dc addiu a2, zero, 0x153         |         a2 = 0x153;
    0x000324e0 addiu a1, a1, 0x7f4c          |         a1 += 0x7f4c;
    0x000324e4 move a0, zero                 |         a0 = 0;
    0x000324e8 jalr t9                       |         t9 ();
                                             |     }
    0x000324ec move s0, a0                   |     s0 = a0;
    0x000324f0 move s3, a1                   |     s3 = a1;
    0x000324f4 lw t9, (v1)                   |     t9 = *(v1);
    0x000324f8 move s1, a2                   |     s1 = a2;
                                             |     if (t9 != 0) {
    0x000324fc beqz t9, 0x32514              |         
    0x00032500 jalr t9                       |         t9 ();
    0x00032504 nop                           |         
    0x00032508 lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             |         if (v0 == 0) {
    0x0003250c beqz v0, 0x32638              |             goto label_3;
                                             |         }
    0x00032510 lw v0, 4(s0)                  |         v0 = *((s0 + 1));
                                             |     }
    0x00032514 andi v0, v0, 0x20             |     v0 &= 0x20;
    0x00032518 lw v0, -0x68f4(gp)            |     v0 = *((gp - 6717));
    0x0003251c bnez v0, 0x3257c              |     
                                             |     while (1) {
    0x00032520 lw t9, 8(s0)                  |         t9 = *((s0 + 2));
    0x00032524 move a2, s1                   |         a2 = s1;
                                             |         if (t9 == 0) {
    0x00032528 beqz t9, 0x325f8              |             goto label_4;
                                             |         }
    0x0003252c move a1, s3                   |         a1 = s3;
    0x00032530 move a0, s0                   |         a0 = s0;
    0x00032534 jalr t9                       |         t9 ();
    0x00032538 lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             | label_2:
    0x0003253c lw v0, 8(s1)                  |         v0 = *((s1 + 2));
                                             |         if (v0 != 0) {
    0x00032540 beqz v0, 0x32554              |             
    0x00032544 nop                           |             
    0x00032548 lw v1, (v0)                   |             v1 = *(v0);
                                             |             if (v1 == 0) {
    0x0003254c beql v1, zero, 0x325e4        |                 goto label_5;
                                             |             }
    0x00032550 lw v1, 4(s0)                  |             v1 = *((s0 + 1));
                                             |         }
                                             | label_0:
    0x00032554 lw v1, 0x2c(sp)               |         v1 = *(var_2ch);
    0x00032558 lw v0, (s2)                   |         v0 = *(s2);
    0x0003255c lw ra, 0x44(sp)               |         ra = *(var_44h);
                                             |         if (v1 != v0) {
    0x00032560 bne v1, v0, 0x32654           |             goto label_6;
                                             |         }
    0x00032564 lw s3, 0x40(sp)               |         s3 = *(var_40h);
    0x00032568 lw s2, 0x3c(sp)               |         s2 = *(var_3ch);
    0x0003256c lw s1, 0x38(sp)               |         s1 = *(var_38h);
    0x00032570 lw s0, 0x34(sp)               |         s0 = *(var_34h);
    0x00032574 addiu sp, sp, 0x48            |         
    0x00032578 jr ra                         |         return v1;
    0x0003257c lw v1, 8(s1)                  |         v1 = *((s1 + 2));
    0x00032580 lw a0, (s1)                   |         a0 = *(s1);
    0x00032584 lw v0, (v0)                   |         v0 = *(v0);
    0x00032588 sw v1, 0x28(sp)               |         *(var_28h) = v1;
    0x0003258c addiu v1, zero, 1             |         v1 = 1;
    0x00032590 sw a0, 0x20(sp)               |         *(var_20h) = a0;
    0x00032594 sw v1, 0x24(sp)               |         *(var_24h) = v1;
                                             |         if (v0 != 0) {
    0x00032598 beqz v0, 0x325dc              |             
    0x0003259c lw t9, -0x76f4(gp)            |             t9 = *((gp - 7613));
    0x000325a0 move a0, s0                   |             a0 = s0;
    0x000325a4 jalr t9                       |             t9 ();
    0x000325a8 lw gp, 0x18(sp)               |             gp = *(var_18h);
    0x000325ac move a3, zero                 |             a3 = 0;
    0x000325b0 move a2, v0                   |             a2 = v0;
    0x000325b4 lw a1, -0x7fd0(gp)            |             a1 = *((gp - 8180));
    0x000325b8 lw t9, -0x673c(gp)            |             t9 = *(gp);
    0x000325bc addiu a1, a1, -0x7b2c         |             a1 += -0x7b2c;
    0x000325c0 addiu a0, zero, 7             |             a0 = 7;
    0x000325c4 jalr t9                       |             t9 ();
    0x000325c8 lw gp, 0x18(sp)               |             gp = *(var_18h);
    0x000325cc lw t9, -0x7bcc(gp)            |             t9 = *((gp - 7923));
    0x000325d0 move a0, v0                   |             a0 = v0;
    0x000325d4 jalr t9                       |             t9 ();
    0x000325d8 lw gp, 0x18(sp)               |             gp = *(var_18h);
                                             |         }
    0x000325dc addiu s1, sp, 0x20            |         s1 = sp + 0x20;
    0x000325e0 b 0x32520                     |         
                                             |     }
                                             | label_5:
    0x000325e4 andi v1, v1, 0x10             |     v1 &= 0x10;
    0x000325e8 addiu v1, zero, 1             |     v1 = 1;
                                             |     if (v1 == 0) {
    0x000325ec beqz v1, 0x32554              |         goto label_0;
                                             |     }
    0x000325f0 sw v1, (v0)                   |     *(v0) = v1;
    0x000325f4 b 0x32554                     |     goto label_0;
                                             | label_4:
    0x000325f8 lw a0, 0x14(s0)               |     a0 = *((s0 + 5));
    0x000325fc lw t9, -0x7fcc(gp)            |     t9 = *((gp - 8179));
                                             |     if (a0 != 0) {
    0x00032600 beqz a0, 0x3261c              |         
    0x00032604 move a2, s1                   |         a2 = s1;
    0x00032608 addiu t9, t9, 0x247c          |         t9 += 0x247c;
    0x0003260c move a1, s3                   |         a1 = s3;
    0x00032610 bal 0x3247c                   |         fcn_0003247c ();
                                             |         goto label_1;
    0x00032614 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x00032618 b 0x3253c                     |         goto label_2;
                                             |     }
    0x0003261c lw t9, -0x6a10(gp)            |     t9 = *((gp - 6788));
    0x00032620 addiu a2, zero, 1             |     a2 = 1;
    0x00032624 move a1, s1                   |     a1 = s1;
    0x00032628 move a0, s3                   |     a0 = s3;
    0x0003262c jalr t9                       |     t9 ();
    0x00032630 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x00032634 b 0x3253c                     |     goto label_2;
                                             | label_3:
    0x00032638 lw t9, -0x6a10(gp)            |     t9 = *((gp - 6788));
    0x0003263c addiu a2, zero, 1             |     a2 = 1;
    0x00032640 move a1, s1                   |     a1 = s1;
    0x00032644 move a0, s3                   |     a0 = s3;
    0x00032648 jalr t9                       |     t9 ();
    0x0003264c lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x00032650 b 0x32554                     |     goto label_0;
                                             | label_6:
    0x00032654 lw t9, -0x7454(gp)            |     t9 = *(gp);
    0x00032658 jalr t9                       |     t9 ();
    0x0003265c nop                           |     
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/lib/libsyslog-ng-3.19.so.0.0.0 @ 0x665d8 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.000665d8 ()                  | void fcn_000665d8 () {
                                             | label_1:
    0x000665d8 lui gp, 7                     |     
    0x000665dc addiu gp, gp, -0x2968         |     
    0x000665e0 addu gp, gp, t9               |     gp += t9;
    0x000665e4 addiu sp, sp, -0x48           |     
    0x000665e8 lw v0, 4(a0)                  |     v0 = *((a0 + 1));
    0x000665ec sw s2, 0x3c(sp)               |     *(var_3ch) = s2;
    0x000665f0 lw s2, -0x6a60(gp)            |     s2 = *((gp - 6808));
    0x000665f4 sw gp, 0x18(sp)               |     *(var_18h) = gp;
    0x000665f8 andi v1, v0, 1                |     v1 = v0 & 1;
    0x000665fc lw a3, (s2)                   |     a3 = *(s2);
    0x00066600 sw ra, 0x44(sp)               |     *(var_44h) = ra;
    0x00066604 sw s3, 0x40(sp)               |     *(var_40h) = s3;
    0x00066608 sw s1, 0x38(sp)               |     *(var_38h) = s1;
    0x0006660c sw s0, 0x34(sp)               |     *(var_34h) = s0;
    0x00066610 sw a3, 0x2c(sp)               |     *(var_2ch) = a3;
    0x00066614 lw v1, -0x7068(gp)            |     v1 = *((gp - 7194));
                                             |     if (v1 == 0) {
    0x00066618 bnez v1, 0x66648              |         
    0x0006661c lw v0, -0x7fd0(gp)            |         v0 = *((gp - 8180));
    0x00066620 lw a3, -0x7fe4(gp)            |         a3 = *((gp - 8185));
    0x00066624 lw a1, -0x7fe8(gp)            |         a1 = *((gp - 8186));
    0x00066628 addiu v0, v0, -0x7b50         |         v0 += -0x7b50;
    0x0006662c lw t9, -0x7cc4(gp)            |         t9 = *((gp - 7985));
    0x00066630 sw v0, 0x10(sp)               |         *(var_10h_2) = v0;
    0x00066634 addiu a3, a3, -0x5dc0         |         a3 += -0x5dc0;
    0x00066638 addiu a2, zero, 0x153         |         a2 = 0x153;
    0x0006663c addiu a1, a1, 0x7f4c          |         a1 += 0x7f4c;
    0x00066640 move a0, zero                 |         a0 = 0;
    0x00066644 jalr t9                       |         t9 ();
                                             |     }
    0x00066648 move s0, a0                   |     s0 = a0;
    0x0006664c move s3, a1                   |     s3 = a1;
    0x00066650 lw t9, (v1)                   |     t9 = *(v1);
    0x00066654 move s1, a2                   |     s1 = a2;
                                             |     if (t9 != 0) {
    0x00066658 beqz t9, 0x66670              |         
    0x0006665c jalr t9                       |         t9 ();
    0x00066660 nop                           |         
    0x00066664 lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             |         if (v0 == 0) {
    0x00066668 beqz v0, 0x66794              |             goto label_11;
                                             |         }
    0x0006666c lw v0, 4(s0)                  |         v0 = *((s0 + 1));
                                             |     }
    0x00066670 andi v0, v0, 0x20             |     v0 &= 0x20;
    0x00066674 lw v0, -0x68f4(gp)            |     v0 = *((gp - 6717));
    0x00066678 bnez v0, 0x666d8              |     
                                             |     while (1) {
    0x0006667c lw t9, 8(s0)                  |         t9 = *((s0 + 2));
    0x00066680 move a2, s1                   |         a2 = s1;
                                             |         if (t9 == 0) {
    0x00066684 beqz t9, 0x66754              |             goto label_12;
                                             |         }
    0x00066688 move a1, s3                   |         a1 = s3;
    0x0006668c move a0, s0                   |         a0 = s0;
    0x00066690 jalr t9                       |         t9 ();
    0x00066694 lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             | label_2:
    0x00066698 lw v0, 8(s1)                  |         v0 = *((s1 + 2));
                                             |         if (v0 != 0) {
    0x0006669c beqz v0, 0x666b0              |             
    0x000666a0 nop                           |             
    0x000666a4 lw v1, (v0)                   |             v1 = *(v0);
                                             |             if (v1 == 0) {
    0x000666a8 beql v1, zero, 0x66740        |                 goto label_13;
                                             |             }
    0x000666ac lw v1, 4(s0)                  |             v1 = *((s0 + 1));
                                             |         }
                                             | label_0:
    0x000666b0 lw v1, 0x2c(sp)               |         v1 = *(var_2ch);
    0x000666b4 lw v0, (s2)                   |         v0 = *(s2);
    0x000666b8 lw ra, 0x44(sp)               |         ra = *(var_44h);
                                             |         if (v1 != v0) {
    0x000666bc bne v1, v0, 0x667b0           |             goto label_14;
                                             |         }
    0x000666c0 lw s3, 0x40(sp)               |         s3 = *(var_40h);
    0x000666c4 lw s2, 0x3c(sp)               |         s2 = *(var_3ch);
    0x000666c8 lw s1, 0x38(sp)               |         s1 = *(var_38h);
    0x000666cc lw s0, 0x34(sp)               |         s0 = *(var_34h);
    0x000666d0 addiu sp, sp, 0x48            |         
    0x000666d4 jr ra                         |         return v1;
    0x000666d8 lw v1, 8(s1)                  |         v1 = *((s1 + 2));
    0x000666dc lw a0, (s1)                   |         a0 = *(s1);
    0x000666e0 lw v0, (v0)                   |         v0 = *(v0);
    0x000666e4 sw v1, 0x28(sp)               |         *(var_28h) = v1;
    0x000666e8 addiu v1, zero, 1             |         v1 = 1;
    0x000666ec sw a0, 0x20(sp)               |         *(var_20h) = a0;
    0x000666f0 sw v1, 0x24(sp)               |         *(var_24h) = v1;
                                             |         if (v0 != 0) {
    0x000666f4 beqz v0, 0x66738              |             
    0x000666f8 lw t9, -0x76f4(gp)            |             t9 = *((gp - 7613));
    0x000666fc move a0, s0                   |             a0 = s0;
    0x00066700 jalr t9                       |             t9 ();
    0x00066704 lw gp, 0x18(sp)               |             gp = *(var_18h);
    0x00066708 move a3, zero                 |             a3 = 0;
    0x0006670c move a2, v0                   |             a2 = v0;
    0x00066710 lw a1, -0x7fd0(gp)            |             a1 = *((gp - 8180));
    0x00066714 lw t9, -0x673c(gp)            |             t9 = *(gp);
    0x00066718 addiu a1, a1, -0x7b2c         |             a1 += -0x7b2c;
    0x0006671c addiu a0, zero, 7             |             a0 = 7;
    0x00066720 jalr t9                       |             t9 ();
    0x00066724 lw gp, 0x18(sp)               |             gp = *(var_18h);
    0x00066728 lw t9, -0x7bcc(gp)            |             t9 = *((gp - 7923));
    0x0006672c move a0, v0                   |             a0 = v0;
    0x00066730 jalr t9                       |             t9 ();
    0x00066734 lw gp, 0x18(sp)               |             gp = *(var_18h);
                                             |         }
    0x00066738 addiu s1, sp, 0x20            |         s1 = sp + 0x20;
    0x0006673c b 0x6667c                     |         
                                             |     }
                                             | label_13:
    0x00066740 andi v1, v1, 0x10             |     v1 &= 0x10;
    0x00066744 addiu v1, zero, 1             |     v1 = 1;
                                             |     if (v1 == 0) {
    0x00066748 beqz v1, 0x666b0              |         goto label_0;
                                             |     }
    0x0006674c sw v1, (v0)                   |     *(v0) = v1;
    0x00066750 b 0x666b0                     |     goto label_0;
                                             | label_12:
    0x00066754 lw a0, 0x14(s0)               |     a0 = *((s0 + 5));
    0x00066758 lw t9, -0x7f98(gp)            |     t9 = *((gp - 8166));
                                             |     if (a0 != 0) {
    0x0006675c beqz a0, 0x66778              |         
    0x00066760 move a2, s1                   |         a2 = s1;
    0x00066764 addiu t9, t9, 0x65d8          |         t9 += 0x65d8;
    0x00066768 move a1, s3                   |         a1 = s3;
    0x0006676c bal 0x665d8                   |         fcn_000665d8 ();
                                             |         goto label_1;
    0x00066770 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x00066774 b 0x66698                     |         goto label_2;
                                             |     }
    0x00066778 lw t9, -0x6a10(gp)            |     t9 = *((gp - 6788));
    0x0006677c addiu a2, zero, 1             |     a2 = 1;
    0x00066780 move a1, s1                   |     a1 = s1;
    0x00066784 move a0, s3                   |     a0 = s3;
    0x00066788 jalr t9                       |     t9 ();
    0x0006678c lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x00066790 b 0x66698                     |     goto label_2;
                                             | label_11:
    0x00066794 lw t9, -0x6a10(gp)            |     t9 = *((gp - 6788));
    0x00066798 addiu a2, zero, 1             |     a2 = 1;
    0x0006679c move a1, s1                   |     a1 = s1;
    0x000667a0 move a0, s3                   |     a0 = s3;
    0x000667a4 jalr t9                       |     t9 ();
    0x000667a8 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x000667ac b 0x666b0                     |     goto label_0;
                                             | label_14:
    0x000667b0 lw t9, -0x7454(gp)            |     t9 = *(gp);
    0x000667b4 jalr t9                       |     t9 ();
    0x000667b8 nop                           |     
    0x000667bc lui gp, 7                     |     
    0x000667c0 addiu gp, gp, -0x2b4c         |     
    0x000667c4 addu gp, gp, t9               |     gp += t9;
    0x000667c8 addiu sp, sp, -0x80           |     
    0x000667cc sw s3, 0x64(sp)               |     *(var_64h) = s3;
    0x000667d0 sw s2, 0x60(sp)               |     *(var_60h) = s2;
    0x000667d4 lw s3, -0x6a60(gp)            |     s3 = *((gp - 6808));
    0x000667d8 lw s2, -0x68f4(gp)            |     s2 = *((gp - 6717));
    0x000667dc sw gp, 0x20(sp)               |     *(var_20h_2) = gp;
    0x000667e0 lw v1, (s3)                   |     v1 = *(s3);
    0x000667e4 lw v0, (s2)                   |     v0 = *(s2);
    0x000667e8 sw s1, 0x5c(sp)               |     *(var_5ch) = s1;
    0x000667ec sw s0, 0x58(sp)               |     *(var_58h) = s0;
    0x000667f0 sw ra, 0x7c(sp)               |     *(var_7ch) = ra;
    0x000667f4 sw fp, 0x78(sp)               |     *(var_78h) = fp;
    0x000667f8 sw s7, 0x74(sp)               |     *(var_74h) = s7;
    0x000667fc sw s6, 0x70(sp)               |     *(var_70h) = s6;
    0x00066800 sw s5, 0x6c(sp)               |     *(var_6ch) = s5;
    0x00066804 sw s4, 0x68(sp)               |     *(var_68h) = s4;
    0x00066808 move s0, a0                   |     s0 = a0;
    0x0006680c sw a1, 0x2c(sp)               |     *(var_2ch_2) = a1;
    0x00066810 invalid                       |     
    0x00066814 invalid                       |     
    0x00066818 lw t9, -0x6a84(gp)            |     t9 = *((gp - 6817));
                                             |     if (v0 != 0) {
    0x0006681c beqz v0, 0x668ac              |         
    0x00066820 lw a1, 0x48(a0)               |         a1 = *((a0 + 18));
    0x00066824 lw a0, -0x7fe4(gp)            |         a0 = *((gp - 8185));
    0x00066828 lw t9, -0x7528(gp)            |         t9 = *((gp - 7498));
    0x0006682c addiu a0, a0, -0x5fa8         |         a0 += -0x5fa8;
    0x00066830 jalr t9                       |         t9 ();
    0x00066834 lw gp, 0x20(sp)               |         gp = *(var_20h_2);
    0x00066838 move a0, s0                   |         a0 = s0;
    0x0006683c lw t9, -0x76f4(gp)            |         t9 = *((gp - 7613));
    0x00066840 move s4, v0                   |         s4 = v0;
    0x00066844 jalr t9                       |         t9 ();
    0x00066848 lw gp, 0x20(sp)               |         gp = *(var_20h_2);
    0x0006684c lw a2, 0x2c(sp)               |         a2 = *(var_2ch_2);
    0x00066850 move s5, v0                   |         s5 = v0;
    0x00066854 lw a1, -0x7fd0(gp)            |         a1 = *((gp - 8180));
    0x00066858 lw a0, -0x7fd0(gp)            |         a0 = *((gp - 8180));
    0x0006685c lw t9, -0x73a4(gp)            |         t9 = *((gp - 7401));
    0x00066860 addiu a1, a1, -0x6398         |         a1 += -0x6398;
    0x00066864 addiu a0, a0, -0x55a0         |         a0 += -aav.0x000055a0;
    0x00066868 jalr t9                       |         t9 ();
    0x0006686c lw gp, 0x20(sp)               |         gp = *(var_20h_2);
    0x00066870 move a3, s5                   |         a3 = s5;
    0x00066874 move a2, s4                   |         a2 = s4;
    0x00066878 lw a1, -0x7fe4(gp)            |         a1 = *((gp - 8185));
    0x0006687c lw t9, -0x673c(gp)            |         t9 = *(gp);
    0x00066880 addiu a1, a1, -0x5e18         |         a1 += -0x5e18;
    0x00066884 addiu a0, zero, 7             |         a0 = 7;
    0x00066888 sw zero, 0x14(sp)             |         *(var_14h) = 0;
    0x0006688c sw v0, 0x10(sp)               |         *(var_10h) = v0;
    0x00066890 jalr t9                       |         t9 ();
    0x00066894 lw gp, 0x20(sp)               |         gp = *(var_20h_2);
    0x00066898 lw t9, -0x7bcc(gp)            |         t9 = *((gp - 7923));
    0x0006689c move a0, v0                   |         a0 = v0;
    0x000668a0 jalr t9                       |         t9 ();
    0x000668a4 lw gp, 0x20(sp)               |         gp = *(var_20h_2);
    0x000668a8 lw t9, -0x6a84(gp)            |         t9 = *((gp - 6817));
                                             |     }
    0x000668ac lw a0, 0x44(s0)               |     a0 = *((s0 + 17));
    0x000668b0 move a2, s1                   |     a2 = s1;
    0x000668b4 addiu a1, sp, 0x2c            |     a1 = sp + 0x2c;
    0x000668b8 jalr t9                       |     t9 ();
    0x000668bc lw gp, 0x20(sp)               |     gp = *(var_20h_2);
                                             |     if (v0 != 0) {
    0x000668c0 bnez v0, 0x66a08              |         goto label_15;
                                             |     }
    0x000668c4 lw v0, 8(s1)                  |     v0 = *((s1 + 2));
    0x000668c8 sw zero, (v0)                 |     *(v0) = 0;
                                             |     if (v0 != 0) {
    0x000668cc bnel v0, zero, 0x668d0        |         
                                             |     }
    0x000668d0 lw t9, -0x6a10(gp)            |     t9 = *((gp - 6788));
    0x000668d4 lw a0, 0x2c(sp)               |     a0 = *(var_2ch_2);
    0x000668d8 addiu a2, zero, 1             |     a2 = 1;
    0x000668dc move a1, s1                   |     a1 = s1;
    0x000668e0 jalr t9                       |     t9 ();
    0x000668e4 lw v0, 0x50(s0)               |     v0 = *((s0 + 20));
    0x000668e8 lw gp, 0x20(sp)               |     gp = *(var_20h_2);
                                             |     if (v0 == 0) {
    0x000668ec beqz v0, 0x669fc              |         goto label_16;
                                             |     }
    0x000668f0 sync                          |     __asm ("sync");
                                             |     do {
    0x000668f4 ll at, (v0)                   |         __asm ("ll at, (v0)");
    0x000668f8 addiu at, at, 1               |         at++;
    0x000668fc sc at, (v0)                   |         __asm ("sc at, (v0)");
    0x00066900 beqz at, 0x668f4              |         
                                             |     } while (at == 0);
    0x00066904 nop                           |     
    0x00066908 sync                          |     __asm ("sync");
    0x0006690c lw a1, -0x7fe4(gp)            |     a1 = *((gp - 8185));
    0x00066910 addiu a1, a1, -0x5e44         |     a1 += -0x5e44;
                                             |     do {
                                             | label_3:
    0x00066914 lw v0, (s2)                   |         v0 = *(s2);
    0x00066918 lw t9, -0x7528(gp)            |         t9 = *((gp - 7498));
                                             |         if (v0 != 0) {
    0x0006691c beqz v0, 0x669c0              |             
    0x00066920 lw a0, -0x7fe4(gp)            |             a0 = *((gp - 8185));
    0x00066924 addiu a0, a0, -0x5df4         |             a0 += -0x5df4;
    0x00066928 jalr t9                       |             t9 ();
    0x0006692c lw gp, 0x20(sp)               |             gp = *(var_20h_2);
    0x00066930 lw a1, 0x48(s0)               |             a1 = *((s0 + 18));
    0x00066934 move s1, v0                   |             s1 = v0;
    0x00066938 lw a0, -0x7fe4(gp)            |             a0 = *((gp - 8185));
    0x0006693c lw t9, -0x7528(gp)            |             t9 = *((gp - 7498));
    0x00066940 addiu a0, a0, -0x5fa8         |             a0 += -0x5fa8;
    0x00066944 jalr t9                       |             t9 ();
    0x00066948 lw gp, 0x20(sp)               |             gp = *(var_20h_2);
    0x0006694c move a0, s0                   |             a0 = s0;
    0x00066950 lw t9, -0x76f4(gp)            |             t9 = *((gp - 7613));
    0x00066954 move s2, v0                   |             s2 = v0;
    0x00066958 jalr t9                       |             t9 ();
    0x0006695c lw gp, 0x20(sp)               |             gp = *(var_20h_2);
    0x00066960 lw a2, 0x2c(sp)               |             a2 = *(var_2ch_2);
    0x00066964 move s0, v0                   |             s0 = v0;
    0x00066968 lw a1, -0x7fd0(gp)            |             a1 = *((gp - 8180));
    0x0006696c lw a0, -0x7fd0(gp)            |             a0 = *((gp - 8180));
    0x00066970 lw t9, -0x73a4(gp)            |             t9 = *((gp - 7401));
    0x00066974 addiu a1, a1, -0x6398         |             a1 += -0x6398;
    0x00066978 addiu a0, a0, -0x55a0         |             a0 += -aav.0x000055a0;
    0x0006697c jalr t9                       |             t9 ();
    0x00066980 lw gp, 0x20(sp)               |             gp = *(var_20h_2);
    0x00066984 move a3, s2                   |             a3 = s2;
    0x00066988 move a2, s1                   |             a2 = s1;
    0x0006698c lw a1, -0x7fe4(gp)            |             a1 = *((gp - 8185));
    0x00066990 lw t9, -0x673c(gp)            |             t9 = *(gp);
    0x00066994 addiu a1, a1, -0x5dec         |             a1 += -0x5dec;
    0x00066998 addiu a0, zero, 7             |             a0 = 7;
    0x0006699c sw zero, 0x18(sp)             |             *(var_18h_2) = 0;
    0x000669a0 sw v0, 0x14(sp)               |             *(var_14h) = v0;
    0x000669a4 sw s0, 0x10(sp)               |             *(var_10h) = s0;
    0x000669a8 jalr t9                       |             t9 ();
    0x000669ac lw gp, 0x20(sp)               |             gp = *(var_20h_2);
    0x000669b0 lw t9, -0x7bcc(gp)            |             t9 = *((gp - 7923));
    0x000669b4 move a0, v0                   |             a0 = v0;
    0x000669b8 jalr t9                       |             t9 ();
    0x000669bc lw gp, 0x20(sp)               |             gp = *(var_20h_2);
                                             |         }
    0x000669c0 lw v1, 0x54(sp)               |         v1 = *(var_54h);
    0x000669c4 lw v0, (s3)                   |         v0 = *(s3);
    0x000669c8 lw ra, 0x7c(sp)               |         ra = *(var_7ch);
                                             |         if (v1 != v0) {
    0x000669cc bne v1, v0, 0x66e08           |             goto label_17;
                                             |         }
    0x000669d0 lw fp, 0x78(sp)               |         fp = *(var_78h);
    0x000669d4 lw s7, 0x74(sp)               |         s7 = *(var_74h);
    0x000669d8 lw s6, 0x70(sp)               |         s6 = *(var_70h);
    0x000669dc lw s5, 0x6c(sp)               |         s5 = *(var_6ch);
    0x000669e0 lw s4, 0x68(sp)               |         s4 = *(var_68h);
    0x000669e4 lw s3, 0x64(sp)               |         s3 = *(var_64h);
    0x000669e8 lw s2, 0x60(sp)               |         s2 = *(var_60h);
    0x000669ec lw s1, 0x5c(sp)               |         s1 = *(var_5ch);
    0x000669f0 lw s0, 0x58(sp)               |         s0 = *(var_58h);
    0x000669f4 addiu sp, sp, 0x80            |         
    0x000669f8 jr ra                         |         return v1;
                                             | label_16:
    0x000669fc lw a1, -0x7fe4(gp)            |         a1 = *((gp - 8185));
    0x00066a00 addiu a1, a1, -0x5e44         |         a1 += -0x5e44;
    0x00066a04 b 0x66914                     |         
                                             |     } while (1);
                                             | label_15:
    0x00066a08 lw s4, 0x14(s0)               |     s4 = *((s0 + 5));
    0x00066a0c lw s5, 0x2c(sp)               |     s5 = *(var_2ch_2);
                                             |     if (s4 == 0) {
    0x00066a10 beqz s4, 0x66b64              |         goto label_18;
                                             |     }
    0x00066a14 lw v0, 4(s4)                  |     v0 = *((s4 + 1));
    0x00066a18 andi v1, v0, 1                |     v1 = v0 & 1;
                                             |     if (v1 == 0) {
    0x00066a1c beql v1, zero, 0x66b34        |         goto label_7;
                                             |     }
    0x00066a20 lw v0, -0x7fd0(gp)            |     v0 = *((gp - 8180));
    0x00066a24 lw s6, -0x7068(gp)            |     s6 = *((gp - 7194));
    0x00066a28 lw t9, (s6)                   |     t9 = *(s6);
    0x00066a2c move a2, s1                   |     a2 = s1;
                                             |     if (t9 != 0) {
    0x00066a30 beqz t9, 0x66a4c              |         
    0x00066a34 move a1, s5                   |         a1 = s5;
    0x00066a38 move a0, s4                   |         a0 = s4;
    0x00066a3c jalr t9                       |         t9 ();
    0x00066a40 lw gp, 0x20(sp)               |         gp = *(var_20h_2);
                                             |         if (v0 == 0) {
    0x00066a44 beqz v0, 0x66b64              |             goto label_18;
                                             |         }
    0x00066a48 lw v0, 4(s4)                  |         v0 = *((s4 + 1));
                                             |     }
    0x00066a4c andi v0, v0, 0x20             |     v0 &= 0x20;
                                             |     if (v0 != 0) {
    0x00066a50 beql v0, zero, 0x66ac0        |         
    0x00066a54 lw t9, 8(s4)                  |         t9 = *((s4 + 2));
    0x00066a58 lw v1, 8(s1)                  |         v1 = *((s1 + 2));
    0x00066a5c lw a0, (s1)                   |         a0 = *(s1);
    0x00066a60 lw v0, (s2)                   |         v0 = *(s2);
    0x00066a64 sw v1, 0x38(sp)               |         *(var_38h_2) = v1;
    0x00066a68 addiu v1, zero, 1             |         v1 = 1;
    0x00066a6c sw a0, 0x30(sp)               |         *(var_30h) = a0;
    0x00066a70 sw v1, 0x34(sp)               |         *(var_34h_2) = v1;
                                             |         if (v0 != 0) {
    0x00066a74 beqz v0, 0x66ab8              |             
    0x00066a78 lw t9, -0x76f4(gp)            |             t9 = *((gp - 7613));
    0x00066a7c move a0, s4                   |             a0 = s4;
    0x00066a80 jalr t9                       |             t9 ();
    0x00066a84 lw gp, 0x20(sp)               |             gp = *(var_20h_2);
    0x00066a88 move a3, zero                 |             a3 = 0;
    0x00066a8c move a2, v0                   |             a2 = v0;
    0x00066a90 lw a1, -0x7fd0(gp)            |             a1 = *((gp - 8180));
    0x00066a94 lw t9, -0x673c(gp)            |             t9 = *(gp);
    0x00066a98 addiu a1, a1, -0x7b2c         |             a1 += -0x7b2c;
    0x00066a9c addiu a0, zero, 7             |             a0 = 7;
    0x00066aa0 jalr t9                       |             t9 ();
    0x00066aa4 lw gp, 0x20(sp)               |             gp = *(var_20h_2);
    0x00066aa8 lw t9, -0x7bcc(gp)            |             t9 = *((gp - 7923));
    0x00066aac move a0, v0                   |             a0 = v0;
    0x00066ab0 jalr t9                       |             t9 ();
    0x00066ab4 lw gp, 0x20(sp)               |             gp = *(var_20h_2);
                                             |         }
    0x00066ab8 addiu s1, sp, 0x30            |         s1 = sp + 0x30;
    0x00066abc lw t9, 8(s4)                  |         t9 = *((s4 + 2));
                                             |     }
    0x00066ac0 move a2, s1                   |     a2 = s1;
                                             |     if (t9 == 0) {
    0x00066ac4 beqz t9, 0x66b80              |         goto label_19;
                                             |     }
    0x00066ac8 move a1, s5                   |     a1 = s5;
    0x00066acc move a0, s4                   |     a0 = s4;
    0x00066ad0 jalr t9                       |     t9 ();
    0x00066ad4 lw gp, 0x20(sp)               |     gp = *(var_20h_2);
                                             | label_6:
    0x00066ad8 lw v0, 8(s1)                  |     v0 = *((s1 + 2));
                                             |     if (v0 != 0) {
                                             | label_5:
    0x00066adc beql v0, zero, 0x66b04        |         
    0x00066ae0 lw v0, 0x4c(s0)               |         v0 = *((s0 + 19));
    0x00066ae4 lw v1, (v0)                   |         v1 = *(v0);
    0x00066ae8 lw v0, 0x4c(s0)               |         v0 = *((s0 + 19));
                                             |         if (v1 == 0) {
    0x00066aec bnel v1, zero, 0x66b04        |             goto label_20;
                                             |         }
    0x00066af0 lw v1, 4(s4)                  |         v1 = *((s4 + 1));
    0x00066af4 andi v1, v1, 0x10             |         v1 &= 0x10;
    0x00066af8 addiu v1, zero, 1             |         v1 = 1;
                                             |         if (v1 != 0) {
    0x00066afc bnez v1, 0x66c84              |             goto label_21;
                                             |         }
                                             | label_4:
    0x00066b00 lw v0, 0x4c(s0)               |         v0 = *((s0 + 19));
                                             |     }
                                             |     if (v0 == 0) {
                                             | label_20:
    0x00066b04 beql v0, zero, 0x66b5c        |         goto label_22;
                                             |     }
    0x00066b08 lw a1, -0x7fe4(gp)            |     a1 = *((gp - 8185));
    0x00066b0c sync                          |     __asm ("sync");
                                             |     do {
    0x00066b10 ll at, (v0)                   |         __asm ("ll at, (v0)");
    0x00066b14 addiu at, at, 1               |         at++;
    0x00066b18 sc at, (v0)                   |         __asm ("sc at, (v0)");
    0x00066b1c beqz at, 0x66b10              |         
                                             |     } while (at == 0);
    0x00066b20 nop                           |     
    0x00066b24 sync                          |     __asm ("sync");
    0x00066b28 lw a1, -0x7fe4(gp)            |     a1 = *((gp - 8185));
    0x00066b2c addiu a1, a1, -0x5e74         |     a1 += -aav.0x00005e74;
    0x00066b30 b 0x66914                     |     goto label_3;
                                             |     do {
                                             | label_7:
    0x00066b34 lw a3, -0x7fe4(gp)            |         a3 = *((gp - 8185));
    0x00066b38 lw a1, -0x7fe8(gp)            |         a1 = *((gp - 8186));
    0x00066b3c addiu v0, v0, -0x7b50         |         v0 += -0x7b50;
    0x00066b40 lw t9, -0x7cc4(gp)            |         t9 = *((gp - 7985));
    0x00066b44 sw v0, 0x10(sp)               |         *(var_10h) = v0;
    0x00066b48 addiu a3, a3, -0x5dc0         |         a3 += -0x5dc0;
    0x00066b4c addiu a2, zero, 0x153         |         a2 = 0x153;
    0x00066b50 addiu a1, a1, 0x7f4c          |         a1 += 0x7f4c;
    0x00066b54 move a0, zero                 |         a0 = 0;
    0x00066b58 jalr t9                       |         t9 ();
                                             | label_22:
    0x00066b5c addiu a1, a1, -0x5e74         |         a1 += -aav.0x00005e74;
    0x00066b60 b 0x66914                     |         goto label_3;
                                             | label_18:
    0x00066b64 lw t9, -0x6a10(gp)            |         t9 = *((gp - 6788));
    0x00066b68 addiu a2, zero, 1             |         a2 = 1;
    0x00066b6c move a1, s1                   |         a1 = s1;
    0x00066b70 move a0, s5                   |         a0 = s5;
    0x00066b74 jalr t9                       |         t9 ();
    0x00066b78 lw gp, 0x20(sp)               |         gp = *(var_20h_2);
    0x00066b7c b 0x66b00                     |         goto label_4;
                                             | label_19:
    0x00066b80 lw s7, 0x14(s4)               |         s7 = *((s4 + 5));
    0x00066b84 lw t9, -0x6a10(gp)            |         t9 = *((gp - 6788));
                                             |         if (s7 == 0) {
    0x00066b88 beqz s7, 0x66c90              |             goto label_23;
                                             |         }
    0x00066b8c lw v0, 4(s7)                  |         v0 = *((s7 + 1));
    0x00066b90 andi v1, v0, 1                |         v1 = v0 & 1;
    0x00066b94 beql v1, zero, 0x66b34        |         
                                             |     } while (v1 == 0);
    0x00066b98 lw v0, -0x7fd0(gp)            |     v0 = *((gp - 8180));
    0x00066b9c lw t9, (s6)                   |     t9 = *(s6);
    0x00066ba0 move a2, s1                   |     a2 = s1;
                                             |     if (t9 != 0) {
    0x00066ba4 beqz t9, 0x66bc0              |         
    0x00066ba8 move a1, s5                   |         a1 = s5;
    0x00066bac move a0, s7                   |         a0 = s7;
    0x00066bb0 jalr t9                       |         t9 ();
    0x00066bb4 lw gp, 0x20(sp)               |         gp = *(var_20h_2);
                                             |         if (v0 == 0) {
    0x00066bb8 beqz v0, 0x66c8c              |             goto label_24;
                                             |         }
    0x00066bbc lw v0, 4(s7)                  |         v0 = *((s7 + 1));
                                             |     }
    0x00066bc0 andi v0, v0, 0x20             |     v0 &= 0x20;
    0x00066bc4 move fp, s1                   |     fp = s1;
                                             |     if (v0 != 0) {
    0x00066bc8 beqz v0, 0x66c30              |         
    0x00066bcc lw v1, 8(s1)                  |         v1 = *((s1 + 2));
    0x00066bd0 lw a0, (s1)                   |         a0 = *(s1);
    0x00066bd4 lw v0, (s2)                   |         v0 = *(s2);
    0x00066bd8 sw v1, 0x44(sp)               |         *(var_44h_2) = v1;
    0x00066bdc addiu v1, zero, 1             |         v1 = 1;
    0x00066be0 sw a0, 0x3c(sp)               |         *(var_3ch_2) = a0;
    0x00066be4 sw v1, 0x40(sp)               |         *(var_40h_2) = v1;
                                             |         if (v0 != 0) {
    0x00066be8 beqz v0, 0x66c2c              |             
    0x00066bec lw t9, -0x76f4(gp)            |             t9 = *((gp - 7613));
    0x00066bf0 move a0, s7                   |             a0 = s7;
    0x00066bf4 jalr t9                       |             t9 ();
    0x00066bf8 lw gp, 0x20(sp)               |             gp = *(var_20h_2);
    0x00066bfc move a3, zero                 |             a3 = 0;
    0x00066c00 move a2, v0                   |             a2 = v0;
    0x00066c04 lw a1, -0x7fd0(gp)            |             a1 = *((gp - 8180));
    0x00066c08 lw t9, -0x673c(gp)            |             t9 = *(gp);
    0x00066c0c addiu a1, a1, -0x7b2c         |             a1 += -0x7b2c;
    0x00066c10 addiu a0, zero, 7             |             a0 = 7;
    0x00066c14 jalr t9                       |             t9 ();
    0x00066c18 lw gp, 0x20(sp)               |             gp = *(var_20h_2);
    0x00066c1c lw t9, -0x7bcc(gp)            |             t9 = *((gp - 7923));
    0x00066c20 move a0, v0                   |             a0 = v0;
    0x00066c24 jalr t9                       |             t9 ();
    0x00066c28 lw gp, 0x20(sp)               |             gp = *(var_20h_2);
                                             |         }
    0x00066c2c addiu fp, sp, 0x3c            |         fp = sp + 0x3c;
                                             |     }
    0x00066c30 lw t9, 8(s7)                  |     t9 = *((s7 + 2));
                                             |     if (t9 == 0) {
    0x00066c34 beql t9, zero, 0x66ca8        |         goto label_25;
                                             |     }
    0x00066c38 lw v1, 0x14(s7)               |     v1 = *((s7 + 5));
    0x00066c3c move a2, fp                   |     a2 = fp;
    0x00066c40 move a1, s5                   |     a1 = s5;
    0x00066c44 move a0, s7                   |     a0 = s7;
    0x00066c48 jalr t9                       |     t9 ();
    0x00066c4c lw gp, 0x20(sp)               |     gp = *(var_20h_2);
                                             | label_9:
    0x00066c50 lw v0, 8(fp)                  |     v0 = *(arg_8h);
                                             |     if (v0 == 0) {
                                             | label_8:
    0x00066c54 beql v0, zero, 0x66adc        |         goto label_5;
                                             |     }
    0x00066c58 lw v0, 8(s1)                  |     v0 = *((s1 + 2));
    0x00066c5c lw v1, (v0)                   |     v1 = *(v0);
    0x00066c60 lw v0, 8(s1)                  |     v0 = *((s1 + 2));
                                             |     if (v1 == 0) {
    0x00066c64 bnel v1, zero, 0x66adc        |         goto label_5;
                                             |     }
    0x00066c68 lw v1, 4(s7)                  |     v1 = *((s7 + 1));
    0x00066c6c andi v1, v1, 0x10             |     v1 &= 0x10;
                                             |     if (v1 == 0) {
    0x00066c70 beql v1, zero, 0x66adc        |         goto label_5;
                                             |     }
    0x00066c74 lw v0, 8(s1)                  |     v0 = *((s1 + 2));
    0x00066c78 addiu v1, zero, 1             |     v1 = 1;
    0x00066c7c sw v1, (v0)                   |     *(v0) = v1;
    0x00066c80 b 0x66ad8                     |     goto label_6;
                                             | label_21:
    0x00066c84 sw v1, (v0)                   |     *(v0) = v1;
    0x00066c88 b 0x66b00                     |     goto label_4;
                                             | label_24:
    0x00066c8c lw t9, -0x6a10(gp)            |     t9 = *((gp - 6788));
                                             | label_23:
    0x00066c90 addiu a2, zero, 1             |     a2 = 1;
    0x00066c94 move a1, s1                   |     a1 = s1;
    0x00066c98 move a0, s5                   |     a0 = s5;
    0x00066c9c jalr t9                       |     t9 ();
    0x00066ca0 lw gp, 0x20(sp)               |     gp = *(var_20h_2);
    0x00066ca4 b 0x66ad8                     |     goto label_6;
                                             | label_25:
    0x00066ca8 lw t9, -0x6a10(gp)            |     t9 = *((gp - 6788));
                                             |     if (v1 == 0) {
    0x00066cac beqz v1, 0x66dc4              |         goto label_26;
                                             |     }
    0x00066cb0 lw v0, 4(v1)                  |     v0 = *((v1 + 1));
    0x00066cb4 andi a0, v0, 1                |     a0 = v0 & 1;
                                             |     if (a0 == 0) {
    0x00066cb8 beql a0, zero, 0x66b34        |         goto label_7;
                                             |     }
    0x00066cbc lw v0, -0x7fd0(gp)            |     v0 = *((gp - 8180));
    0x00066cc0 lw t9, (s6)                   |     t9 = *(s6);
    0x00066cc4 andi v0, v0, 0x20             |     v0 &= 0x20;
                                             |     if (t9 != 0) {
    0x00066cc8 beqz t9, 0x66cf4              |         
    0x00066ccc move a2, fp                   |         a2 = fp;
    0x00066cd0 move a1, s5                   |         a1 = s5;
    0x00066cd4 move a0, v1                   |         a0 = v1;
    0x00066cd8 sw v1, 0x28(sp)               |         *(var_28h_2) = v1;
    0x00066cdc jalr t9                       |         t9 ();
    0x00066ce0 lw gp, 0x20(sp)               |         gp = *(var_20h_2);
                                             |         if (v0 == 0) {
    0x00066ce4 beqz v0, 0x66dc0              |             goto label_27;
                                             |         }
    0x00066ce8 lw v1, 0x28(sp)               |         v1 = *(var_28h_2);
    0x00066cec lw v0, 4(v1)                  |         v0 = *((v1 + 1));
    0x00066cf0 andi v0, v0, 0x20             |         v0 &= 0x20;
                                             |     }
    0x00066cf4 move s6, fp                   |     s6 = fp;
                                             |     if (v0 != 0) {
    0x00066cf8 beqz v0, 0x66d68              |         
    0x00066cfc lw a0, 8(fp)                  |         a0 = *(arg_8h);
    0x00066d00 lw a1, (fp)                   |         a1 = *(fp);
    0x00066d04 lw v0, (s2)                   |         v0 = *(s2);
    0x00066d08 sw a0, 0x50(sp)               |         *(var_50h) = a0;
    0x00066d0c addiu a0, zero, 1             |         a0 = 1;
    0x00066d10 sw a1, 0x48(sp)               |         *(var_48h) = a1;
    0x00066d14 sw a0, 0x4c(sp)               |         *(var_4ch) = a0;
                                             |         if (v0 != 0) {
    0x00066d18 beqz v0, 0x66d64              |             
    0x00066d1c lw t9, -0x76f4(gp)            |             t9 = *((gp - 7613));
    0x00066d20 move a0, v1                   |             a0 = v1;
    0x00066d24 sw v1, 0x28(sp)               |             *(var_28h_2) = v1;
    0x00066d28 jalr t9                       |             t9 ();
    0x00066d2c lw gp, 0x20(sp)               |             gp = *(var_20h_2);
    0x00066d30 move a3, zero                 |             a3 = 0;
    0x00066d34 move a2, v0                   |             a2 = v0;
    0x00066d38 lw a1, -0x7fd0(gp)            |             a1 = *((gp - 8180));
    0x00066d3c lw t9, -0x673c(gp)            |             t9 = *(gp);
    0x00066d40 addiu a1, a1, -0x7b2c         |             a1 += -0x7b2c;
    0x00066d44 addiu a0, zero, 7             |             a0 = 7;
    0x00066d48 jalr t9                       |             t9 ();
    0x00066d4c lw gp, 0x20(sp)               |             gp = *(var_20h_2);
    0x00066d50 lw t9, -0x7bcc(gp)            |             t9 = *((gp - 7923));
    0x00066d54 move a0, v0                   |             a0 = v0;
    0x00066d58 jalr t9                       |             t9 ();
    0x00066d5c lw gp, 0x20(sp)               |             gp = *(var_20h_2);
    0x00066d60 lw v1, 0x28(sp)               |             v1 = *(var_28h_2);
                                             |         }
    0x00066d64 addiu s6, sp, 0x48            |         s6 = sp + 0x48;
                                             |     }
    0x00066d68 lw t9, 8(v1)                  |     t9 = *((v1 + 2));
    0x00066d6c move a0, v1                   |     a0 = v1;
                                             |     if (t9 == 0) {
    0x00066d70 beqz t9, 0x66ddc              |         goto label_28;
                                             |     }
    0x00066d74 sw v1, 0x28(sp)               |     *(var_28h_2) = v1;
    0x00066d78 move a2, s6                   |     a2 = s6;
    0x00066d7c move a1, s5                   |     a1 = s5;
    0x00066d80 jalr t9                       |     t9 ();
    0x00066d84 lw gp, 0x20(sp)               |     gp = *(var_20h_2);
    0x00066d88 lw v1, 0x28(sp)               |     v1 = *(var_28h_2);
                                             | label_10:
    0x00066d8c lw v0, 8(s6)                  |     v0 = *((s6 + 2));
                                             |     if (v0 == 0) {
    0x00066d90 beql v0, zero, 0x66c54        |         goto label_8;
                                             |     }
    0x00066d94 lw v0, 8(fp)                  |     v0 = *(arg_8h);
    0x00066d98 lw a0, (v0)                   |     a0 = *(v0);
    0x00066d9c lw v0, 8(fp)                  |     v0 = *(arg_8h);
                                             |     if (a0 == 0) {
    0x00066da0 bnel a0, zero, 0x66c54        |         goto label_8;
                                             |     }
    0x00066da4 lw v1, 4(v1)                  |     v1 = *((v1 + 1));
    0x00066da8 andi v1, v1, 0x10             |     v1 &= 0x10;
                                             |     if (v1 == 0) {
    0x00066dac beql v1, zero, 0x66c54        |         goto label_8;
                                             |     }
    0x00066db0 lw v0, 8(fp)                  |     v0 = *(arg_8h);
    0x00066db4 addiu v1, zero, 1             |     v1 = 1;
    0x00066db8 sw v1, (v0)                   |     *(v0) = v1;
    0x00066dbc b 0x66c50                     |     goto label_9;
                                             | label_27:
    0x00066dc0 lw t9, -0x6a10(gp)            |     t9 = *((gp - 6788));
                                             | label_26:
    0x00066dc4 addiu a2, zero, 1             |     a2 = 1;
    0x00066dc8 move a1, fp                   |     a1 = fp;
    0x00066dcc move a0, s5                   |     a0 = s5;
    0x00066dd0 jalr t9                       |     t9 ();
    0x00066dd4 lw gp, 0x20(sp)               |     gp = *(var_20h_2);
    0x00066dd8 b 0x66c50                     |     goto label_9;
                                             | label_28:
    0x00066ddc lw a0, 0x14(v1)               |     a0 = *((v1 + 5));
    0x00066de0 sw v1, 0x28(sp)               |     *(var_28h_2) = v1;
                                             |     if (a0 != 0) {
    0x00066de4 beqz a0, 0x66e14              |         
    0x00066de8 lw t9, -0x7f98(gp)            |         t9 = *((gp - 8166));
    0x00066dec move a2, s6                   |         a2 = s6;
    0x00066df0 addiu t9, t9, 0x65d8          |         t9 += 0x65d8;
    0x00066df4 move a1, s5                   |         a1 = s5;
    0x00066df8 bal 0x665d8                   |         fcn_000665d8 ();
                                             |         goto label_1;
    0x00066dfc lw gp, 0x20(sp)               |         gp = *(var_20h_2);
    0x00066e00 lw v1, 0x28(sp)               |         v1 = *(var_28h_2);
    0x00066e04 b 0x66d8c                     |         goto label_10;
                                             | label_17:
    0x00066e08 lw t9, -0x7454(gp)            |         t9 = *(gp);
    0x00066e0c jalr t9                       |         t9 ();
    0x00066e10 nop                           |         
                                             |     }
    0x00066e14 lw t9, -0x6a10(gp)            |     t9 = *((gp - 6788));
    0x00066e18 addiu a2, zero, 1             |     a2 = 1;
    0x00066e1c move a1, s6                   |     a1 = s6;
    0x00066e20 move a0, s5                   |     a0 = s5;
    0x00066e24 jalr t9                       |     t9 ();
    0x00066e28 lw gp, 0x20(sp)               |     gp = *(var_20h_2);
    0x00066e2c lw v1, 0x28(sp)               |     v1 = *(var_28h_2);
    0x00066e30 b 0x66d8c                     |     goto label_10;
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/lib/libsyslog-ng-3.19.so.0.0.0 @ 0x68f80 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.00068f80 ()                  | void fcn_00068f80 () {
                                             | label_1:
    0x00068f80 lui gp, 7                     |     
    0x00068f84 addiu gp, gp, -0x5310         |     
    0x00068f88 addu gp, gp, t9               |     gp += t9;
    0x00068f8c addiu sp, sp, -0x48           |     
    0x00068f90 lw v0, 4(a0)                  |     v0 = *((a0 + 1));
    0x00068f94 sw s2, 0x3c(sp)               |     *(var_3ch_3) = s2;
    0x00068f98 lw s2, -0x6a60(gp)            |     s2 = *((gp - 6808));
    0x00068f9c sw gp, 0x18(sp)               |     *(var_18h) = gp;
    0x00068fa0 andi v1, v0, 1                |     v1 = v0 & 1;
    0x00068fa4 lw a3, (s2)                   |     a3 = *(s2);
    0x00068fa8 sw ra, 0x44(sp)               |     *(var_44h_3) = ra;
    0x00068fac sw s3, 0x40(sp)               |     *(var_40h_3) = s3;
    0x00068fb0 sw s1, 0x38(sp)               |     *(var_38h_3) = s1;
    0x00068fb4 sw s0, 0x34(sp)               |     *(var_34h_3) = s0;
    0x00068fb8 sw a3, 0x2c(sp)               |     *(var_2ch) = a3;
    0x00068fbc lw v1, -0x7068(gp)            |     v1 = *((gp - 7194));
                                             |     if (v1 == 0) {
    0x00068fc0 bnez v1, 0x68ff0              |         
    0x00068fc4 lw v0, -0x7fd0(gp)            |         v0 = *((gp - 8180));
    0x00068fc8 lw a3, -0x7fe4(gp)            |         a3 = *((gp - 8185));
    0x00068fcc lw a1, -0x7fe8(gp)            |         a1 = *((gp - 8186));
    0x00068fd0 addiu v0, v0, -0x7b50         |         v0 += -0x7b50;
    0x00068fd4 lw t9, -0x7cc4(gp)            |         t9 = *((gp - 7985));
    0x00068fd8 sw v0, 0x10(sp)               |         *(var_10h_4) = v0;
    0x00068fdc addiu a3, a3, -0x2900         |         a3 += -0x2900;
    0x00068fe0 addiu a2, zero, 0x153         |         a2 = 0x153;
    0x00068fe4 addiu a1, a1, 0x7f4c          |         a1 += 0x7f4c;
    0x00068fe8 move a0, zero                 |         a0 = 0;
    0x00068fec jalr t9                       |         t9 ();
                                             |     }
    0x00068ff0 move s0, a0                   |     s0 = a0;
    0x00068ff4 move s3, a1                   |     s3 = a1;
    0x00068ff8 lw t9, (v1)                   |     t9 = *(v1);
    0x00068ffc move s1, a2                   |     s1 = a2;
                                             |     if (t9 != 0) {
    0x00069000 beqz t9, 0x69018              |         
    0x00069004 jalr t9                       |         t9 ();
    0x00069008 nop                           |         
    0x0006900c lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             |         if (v0 == 0) {
    0x00069010 beqz v0, 0x6913c              |             goto label_3;
                                             |         }
    0x00069014 lw v0, 4(s0)                  |         v0 = *((s0 + 1));
                                             |     }
    0x00069018 andi v0, v0, 0x20             |     v0 &= 0x20;
    0x0006901c lw v0, -0x68f4(gp)            |     v0 = *((gp - 6717));
    0x00069020 bnez v0, 0x69080              |     
                                             |     while (1) {
    0x00069024 lw t9, 8(s0)                  |         t9 = *((s0 + 2));
    0x00069028 move a2, s1                   |         a2 = s1;
                                             |         if (t9 == 0) {
    0x0006902c beqz t9, 0x690fc              |             goto label_4;
                                             |         }
    0x00069030 move a1, s3                   |         a1 = s3;
    0x00069034 move a0, s0                   |         a0 = s0;
    0x00069038 jalr t9                       |         t9 ();
    0x0006903c lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             | label_2:
    0x00069040 lw v0, 8(s1)                  |         v0 = *((s1 + 2));
                                             |         if (v0 != 0) {
    0x00069044 beqz v0, 0x69058              |             
    0x00069048 nop                           |             
    0x0006904c lw v1, (v0)                   |             v1 = *(v0);
                                             |             if (v1 == 0) {
    0x00069050 beql v1, zero, 0x690e8        |                 goto label_5;
                                             |             }
    0x00069054 lw v1, 4(s0)                  |             v1 = *((s0 + 1));
                                             |         }
                                             | label_0:
    0x00069058 lw v1, 0x2c(sp)               |         v1 = *(var_2ch);
    0x0006905c lw v0, (s2)                   |         v0 = *(s2);
    0x00069060 lw ra, 0x44(sp)               |         ra = *(var_44h_3);
                                             |         if (v1 != v0) {
    0x00069064 bne v1, v0, 0x69158           |             goto label_6;
                                             |         }
    0x00069068 lw s3, 0x40(sp)               |         s3 = *(var_40h_3);
    0x0006906c lw s2, 0x3c(sp)               |         s2 = *(var_3ch_3);
    0x00069070 lw s1, 0x38(sp)               |         s1 = *(var_38h_3);
    0x00069074 lw s0, 0x34(sp)               |         s0 = *(var_34h_3);
    0x00069078 addiu sp, sp, 0x48            |         
    0x0006907c jr ra                         |         return v1;
    0x00069080 lw v1, 8(s1)                  |         v1 = *((s1 + 2));
    0x00069084 lw a0, (s1)                   |         a0 = *(s1);
    0x00069088 lw v0, (v0)                   |         v0 = *(v0);
    0x0006908c sw v1, 0x28(sp)               |         *(var_28h) = v1;
    0x00069090 addiu v1, zero, 1             |         v1 = 1;
    0x00069094 sw a0, 0x20(sp)               |         *(var_20h) = a0;
    0x00069098 sw v1, 0x24(sp)               |         *(var_24h) = v1;
                                             |         if (v0 != 0) {
    0x0006909c beqz v0, 0x690e0              |             
    0x000690a0 lw t9, -0x76f4(gp)            |             t9 = *((gp - 7613));
    0x000690a4 move a0, s0                   |             a0 = s0;
    0x000690a8 jalr t9                       |             t9 ();
    0x000690ac lw gp, 0x18(sp)               |             gp = *(var_18h);
    0x000690b0 move a3, zero                 |             a3 = 0;
    0x000690b4 move a2, v0                   |             a2 = v0;
    0x000690b8 lw a1, -0x7fd0(gp)            |             a1 = *((gp - 8180));
    0x000690bc lw t9, -0x673c(gp)            |             t9 = *(gp);
    0x000690c0 addiu a1, a1, -0x7b2c         |             a1 += -0x7b2c;
    0x000690c4 addiu a0, zero, 7             |             a0 = 7;
    0x000690c8 jalr t9                       |             t9 ();
    0x000690cc lw gp, 0x18(sp)               |             gp = *(var_18h);
    0x000690d0 lw t9, -0x7bcc(gp)            |             t9 = *((gp - 7923));
    0x000690d4 move a0, v0                   |             a0 = v0;
    0x000690d8 jalr t9                       |             t9 ();
    0x000690dc lw gp, 0x18(sp)               |             gp = *(var_18h);
                                             |         }
    0x000690e0 addiu s1, sp, 0x20            |         s1 = sp + 0x20;
    0x000690e4 b 0x69024                     |         
                                             |     }
                                             | label_5:
    0x000690e8 andi v1, v1, 0x10             |     v1 &= 0x10;
    0x000690ec addiu v1, zero, 1             |     v1 = 1;
                                             |     if (v1 == 0) {
    0x000690f0 beqz v1, 0x69058              |         goto label_0;
                                             |     }
    0x000690f4 sw v1, (v0)                   |     *(v0) = v1;
    0x000690f8 b 0x69058                     |     goto label_0;
                                             | label_4:
    0x000690fc lw a0, 0x14(s0)               |     a0 = *((s0 + 5));
    0x00069100 lw t9, -0x7f94(gp)            |     t9 = *((gp - 8165));
                                             |     if (a0 != 0) {
    0x00069104 beqz a0, 0x69120              |         
    0x00069108 move a2, s1                   |         a2 = s1;
    0x0006910c addiu t9, t9, -0x7080         |         t9 += -0x7080;
    0x00069110 move a1, s3                   |         a1 = s3;
    0x00069114 bal 0x68f80                   |         fcn_00068f80 ();
                                             |         goto label_1;
    0x00069118 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x0006911c b 0x69040                     |         goto label_2;
                                             |     }
    0x00069120 lw t9, -0x6a10(gp)            |     t9 = *((gp - 6788));
    0x00069124 addiu a2, zero, 1             |     a2 = 1;
    0x00069128 move a1, s1                   |     a1 = s1;
    0x0006912c move a0, s3                   |     a0 = s3;
    0x00069130 jalr t9                       |     t9 ();
    0x00069134 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x00069138 b 0x69040                     |     goto label_2;
                                             | label_3:
    0x0006913c lw t9, -0x6a10(gp)            |     t9 = *((gp - 6788));
    0x00069140 addiu a2, zero, 1             |     a2 = 1;
    0x00069144 move a1, s1                   |     a1 = s1;
    0x00069148 move a0, s3                   |     a0 = s3;
    0x0006914c jalr t9                       |     t9 ();
    0x00069150 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x00069154 b 0x69058                     |     goto label_0;
                                             | label_6:
    0x00069158 lw t9, -0x7454(gp)            |     t9 = *(gp);
    0x0006915c jalr t9                       |     t9 ();
    0x00069160 nop                           |     
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/lib/libsyslog-ng-3.19.so.0.0.0 @ 0x6b3e8 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.0006b3e8 ()                  | void fcn_0006b3e8 () {
                                             | label_1:
    0x0006b3e8 lui gp, 7                     |     
    0x0006b3ec addiu gp, gp, -0x7778         |     
    0x0006b3f0 addu gp, gp, t9               |     gp += t9;
    0x0006b3f4 addiu sp, sp, -0x48           |     
    0x0006b3f8 lw v0, 4(a0)                  |     v0 = *((a0 + 1));
    0x0006b3fc sw s2, 0x3c(sp)               |     *(var_3ch) = s2;
    0x0006b400 lw s2, -0x6a60(gp)            |     s2 = *((gp - 6808));
    0x0006b404 sw gp, 0x18(sp)               |     *(var_18h) = gp;
    0x0006b408 andi v1, v0, 1                |     v1 = v0 & 1;
    0x0006b40c lw a3, (s2)                   |     a3 = *(s2);
    0x0006b410 sw ra, 0x44(sp)               |     *(var_44h) = ra;
    0x0006b414 sw s3, 0x40(sp)               |     *(var_40h) = s3;
    0x0006b418 sw s1, 0x38(sp)               |     *(var_38h) = s1;
    0x0006b41c sw s0, 0x34(sp)               |     *(var_34h) = s0;
    0x0006b420 sw a3, 0x2c(sp)               |     *(var_2ch) = a3;
    0x0006b424 lw v1, -0x7068(gp)            |     v1 = *((gp - 7194));
                                             |     if (v1 == 0) {
    0x0006b428 bnez v1, 0x6b458              |         
    0x0006b42c lw v0, -0x7fd0(gp)            |         v0 = *((gp - 8180));
    0x0006b430 lw a3, -0x7fe4(gp)            |         a3 = *((gp - 8185));
    0x0006b434 lw a1, -0x7fe8(gp)            |         a1 = *((gp - 8186));
    0x0006b438 addiu v0, v0, -0x7b50         |         v0 += -0x7b50;
    0x0006b43c lw t9, -0x7cc4(gp)            |         t9 = *((gp - 7985));
    0x0006b440 sw v0, 0x10(sp)               |         *(var_10h_2) = v0;
    0x0006b444 addiu a3, a3, 0xa10           |         a3 += 0xa10;
    0x0006b448 addiu a2, zero, 0x153         |         a2 = 0x153;
    0x0006b44c addiu a1, a1, 0x7f4c          |         a1 += 0x7f4c;
    0x0006b450 move a0, zero                 |         a0 = 0;
    0x0006b454 jalr t9                       |         t9 ();
                                             |     }
    0x0006b458 move s0, a0                   |     s0 = a0;
    0x0006b45c move s3, a1                   |     s3 = a1;
    0x0006b460 lw t9, (v1)                   |     t9 = *(v1);
    0x0006b464 move s1, a2                   |     s1 = a2;
                                             |     if (t9 != 0) {
    0x0006b468 beqz t9, 0x6b480              |         
    0x0006b46c jalr t9                       |         t9 ();
    0x0006b470 nop                           |         
    0x0006b474 lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             |         if (v0 == 0) {
    0x0006b478 beqz v0, 0x6b5a4              |             goto label_14;
                                             |         }
    0x0006b47c lw v0, 4(s0)                  |         v0 = *((s0 + 1));
                                             |     }
    0x0006b480 andi v0, v0, 0x20             |     v0 &= 0x20;
    0x0006b484 lw v0, -0x68f4(gp)            |     v0 = *((gp - 6717));
    0x0006b488 bnez v0, 0x6b4e8              |     
                                             |     while (1) {
    0x0006b48c lw t9, 8(s0)                  |         t9 = *((s0 + 2));
    0x0006b490 move a2, s1                   |         a2 = s1;
                                             |         if (t9 == 0) {
    0x0006b494 beqz t9, 0x6b564              |             goto label_15;
                                             |         }
    0x0006b498 move a1, s3                   |         a1 = s3;
    0x0006b49c move a0, s0                   |         a0 = s0;
    0x0006b4a0 jalr t9                       |         t9 ();
    0x0006b4a4 lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             | label_2:
    0x0006b4a8 lw v0, 8(s1)                  |         v0 = *((s1 + 2));
                                             |         if (v0 != 0) {
    0x0006b4ac beqz v0, 0x6b4c0              |             
    0x0006b4b0 nop                           |             
    0x0006b4b4 lw v1, (v0)                   |             v1 = *(v0);
                                             |             if (v1 == 0) {
    0x0006b4b8 beql v1, zero, 0x6b550        |                 goto label_16;
                                             |             }
    0x0006b4bc lw v1, 4(s0)                  |             v1 = *((s0 + 1));
                                             |         }
                                             | label_0:
    0x0006b4c0 lw v1, 0x2c(sp)               |         v1 = *(var_2ch);
    0x0006b4c4 lw v0, (s2)                   |         v0 = *(s2);
    0x0006b4c8 lw ra, 0x44(sp)               |         ra = *(var_44h);
                                             |         if (v1 != v0) {
    0x0006b4cc bne v1, v0, 0x6b5c0           |             goto label_17;
                                             |         }
    0x0006b4d0 lw s3, 0x40(sp)               |         s3 = *(var_40h);
    0x0006b4d4 lw s2, 0x3c(sp)               |         s2 = *(var_3ch);
    0x0006b4d8 lw s1, 0x38(sp)               |         s1 = *(var_38h);
    0x0006b4dc lw s0, 0x34(sp)               |         s0 = *(var_34h);
    0x0006b4e0 addiu sp, sp, 0x48            |         
    0x0006b4e4 jr ra                         |         return v1;
    0x0006b4e8 lw v1, 8(s1)                  |         v1 = *((s1 + 2));
    0x0006b4ec lw a0, (s1)                   |         a0 = *(s1);
    0x0006b4f0 lw v0, (v0)                   |         v0 = *(v0);
    0x0006b4f4 sw v1, 0x28(sp)               |         *(var_28h) = v1;
    0x0006b4f8 addiu v1, zero, 1             |         v1 = 1;
    0x0006b4fc sw a0, 0x20(sp)               |         *(var_20h) = a0;
    0x0006b500 sw v1, 0x24(sp)               |         *(var_24h) = v1;
                                             |         if (v0 != 0) {
    0x0006b504 beqz v0, 0x6b548              |             
    0x0006b508 lw t9, -0x76f4(gp)            |             t9 = *((gp - 7613));
    0x0006b50c move a0, s0                   |             a0 = s0;
    0x0006b510 jalr t9                       |             t9 ();
    0x0006b514 lw gp, 0x18(sp)               |             gp = *(var_18h);
    0x0006b518 move a3, zero                 |             a3 = 0;
    0x0006b51c move a2, v0                   |             a2 = v0;
    0x0006b520 lw a1, -0x7fd0(gp)            |             a1 = *((gp - 8180));
    0x0006b524 lw t9, -0x673c(gp)            |             t9 = *(gp);
    0x0006b528 addiu a1, a1, -0x7b2c         |             a1 += -0x7b2c;
    0x0006b52c addiu a0, zero, 7             |             a0 = 7;
    0x0006b530 jalr t9                       |             t9 ();
    0x0006b534 lw gp, 0x18(sp)               |             gp = *(var_18h);
    0x0006b538 lw t9, -0x7bcc(gp)            |             t9 = *((gp - 7923));
    0x0006b53c move a0, v0                   |             a0 = v0;
    0x0006b540 jalr t9                       |             t9 ();
    0x0006b544 lw gp, 0x18(sp)               |             gp = *(var_18h);
                                             |         }
    0x0006b548 addiu s1, sp, 0x20            |         s1 = sp + 0x20;
    0x0006b54c b 0x6b48c                     |         
                                             |     }
                                             | label_16:
    0x0006b550 andi v1, v1, 0x10             |     v1 &= 0x10;
    0x0006b554 addiu v1, zero, 1             |     v1 = 1;
                                             |     if (v1 == 0) {
    0x0006b558 beqz v1, 0x6b4c0              |         goto label_0;
                                             |     }
    0x0006b55c sw v1, (v0)                   |     *(v0) = v1;
    0x0006b560 b 0x6b4c0                     |     goto label_0;
                                             | label_15:
    0x0006b564 lw a0, 0x14(s0)               |     a0 = *((s0 + 5));
    0x0006b568 lw t9, -0x7f94(gp)            |     t9 = *((gp - 8165));
                                             |     if (a0 != 0) {
    0x0006b56c beqz a0, 0x6b588              |         
    0x0006b570 move a2, s1                   |         a2 = s1;
    0x0006b574 addiu t9, t9, -0x4c18         |         t9 += -0x4c18;
    0x0006b578 move a1, s3                   |         a1 = s3;
    0x0006b57c bal 0x6b3e8                   |         fcn_0006b3e8 ();
                                             |         goto label_1;
    0x0006b580 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x0006b584 b 0x6b4a8                     |         goto label_2;
                                             |     }
    0x0006b588 lw t9, -0x6a10(gp)            |     t9 = *((gp - 6788));
    0x0006b58c addiu a2, zero, 1             |     a2 = 1;
    0x0006b590 move a1, s1                   |     a1 = s1;
    0x0006b594 move a0, s3                   |     a0 = s3;
    0x0006b598 jalr t9                       |     t9 ();
    0x0006b59c lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0006b5a0 b 0x6b4a8                     |     goto label_2;
                                             | label_14:
    0x0006b5a4 lw t9, -0x6a10(gp)            |     t9 = *((gp - 6788));
    0x0006b5a8 addiu a2, zero, 1             |     a2 = 1;
    0x0006b5ac move a1, s1                   |     a1 = s1;
    0x0006b5b0 move a0, s3                   |     a0 = s3;
    0x0006b5b4 jalr t9                       |     t9 ();
    0x0006b5b8 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0006b5bc b 0x6b4c0                     |     goto label_0;
                                             | label_17:
    0x0006b5c0 lw t9, -0x7454(gp)            |     t9 = *(gp);
    0x0006b5c4 jalr t9                       |     t9 ();
    0x0006b5c8 nop                           |     
    0x0006b5cc lui gp, 7                     |     
    0x0006b5d0 addiu gp, gp, -0x795c         |     
    0x0006b5d4 addu gp, gp, t9               |     gp += t9;
    0x0006b5d8 addiu sp, sp, -0x80           |     
    0x0006b5dc sw s3, 0x64(sp)               |     *(var_64h) = s3;
    0x0006b5e0 sw s2, 0x60(sp)               |     *(var_60h) = s2;
    0x0006b5e4 lw s3, -0x6a60(gp)            |     s3 = *((gp - 6808));
    0x0006b5e8 lw s2, -0x68f4(gp)            |     s2 = *((gp - 6717));
    0x0006b5ec sw gp, 0x20(sp)               |     *(var_20h_2) = gp;
    0x0006b5f0 lw v1, (s3)                   |     v1 = *(s3);
    0x0006b5f4 lw v0, (s2)                   |     v0 = *(s2);
    0x0006b5f8 sw s1, 0x5c(sp)               |     *(var_5ch) = s1;
    0x0006b5fc sw s0, 0x58(sp)               |     *(var_58h) = s0;
    0x0006b600 sw ra, 0x7c(sp)               |     *(var_7ch) = ra;
    0x0006b604 sw fp, 0x78(sp)               |     *(var_78h) = fp;
    0x0006b608 sw s7, 0x74(sp)               |     *(var_74h) = s7;
    0x0006b60c sw s6, 0x70(sp)               |     *(var_70h) = s6;
    0x0006b610 sw s5, 0x6c(sp)               |     *(var_6ch) = s5;
    0x0006b614 sw s4, 0x68(sp)               |     *(var_68h) = s4;
    0x0006b618 move s0, a0                   |     s0 = a0;
    0x0006b61c sw a1, 0x2c(sp)               |     *(var_2ch_2) = a1;
    0x0006b620 move s1, a2                   |     s1 = a2;
    0x0006b624 sw v1, 0x54(sp)               |     *(var_54h) = v1;
                                             |     if (v0 != 0) {
    0x0006b628 beql v0, zero, 0x6b6bc        |         
    0x0006b62c lw a0, 0x48(s0)               |         a0 = *((s0 + 18));
    0x0006b630 lw a1, 0x50(a0)               |         a1 = *((arg_4h + 1.25));
    0x0006b634 lw a0, -0x7fe4(gp)            |         a0 = *((gp - 8185));
    0x0006b638 lw t9, -0x7528(gp)            |         t9 = *((gp - 7498));
    0x0006b63c addiu a0, a0, -0x5fa8         |         a0 += -0x5fa8;
    0x0006b640 jalr t9                       |         t9 ();
    0x0006b644 lw gp, 0x20(sp)               |         gp = *(var_20h_2);
    0x0006b648 move a0, s0                   |         a0 = s0;
    0x0006b64c lw t9, -0x76f4(gp)            |         t9 = *((gp - 7613));
    0x0006b650 move s4, v0                   |         s4 = v0;
    0x0006b654 jalr t9                       |         t9 ();
    0x0006b658 lw gp, 0x20(sp)               |         gp = *(var_20h_2);
    0x0006b65c lw a2, 0x2c(sp)               |         a2 = *(var_2ch_2);
    0x0006b660 move s5, v0                   |         s5 = v0;
    0x0006b664 lw a1, -0x7fd0(gp)            |         a1 = *((gp - 8180));
    0x0006b668 lw a0, -0x7fd0(gp)            |         a0 = *((gp - 8180));
    0x0006b66c lw t9, -0x73a4(gp)            |         t9 = *((gp - 7401));
    0x0006b670 addiu a1, a1, -0x6398         |         a1 += -0x6398;
    0x0006b674 addiu a0, a0, -0x55a0         |         a0 += -aav.0x000055a0;
    0x0006b678 jalr t9                       |         t9 ();
    0x0006b67c lw gp, 0x20(sp)               |         gp = *(var_20h_2);
    0x0006b680 move a3, s5                   |         a3 = s5;
    0x0006b684 move a2, s4                   |         a2 = s4;
    0x0006b688 lw a1, -0x7fe4(gp)            |         a1 = *((gp - 8185));
    0x0006b68c lw t9, -0x673c(gp)            |         t9 = *(gp);
    0x0006b690 addiu a1, a1, 0x990           |         a1 += 0x990;
    0x0006b694 addiu a0, zero, 7             |         a0 = 7;
    0x0006b698 sw zero, 0x14(sp)             |         *(var_14h) = 0;
    0x0006b69c sw v0, 0x10(sp)               |         *(var_10h) = v0;
    0x0006b6a0 jalr t9                       |         t9 ();
    0x0006b6a4 lw gp, 0x20(sp)               |         gp = *(var_20h_2);
    0x0006b6a8 lw t9, -0x7bcc(gp)            |         t9 = *((gp - 7923));
    0x0006b6ac move a0, v0                   |         a0 = v0;
    0x0006b6b0 jalr t9                       |         t9 ();
    0x0006b6b4 lw gp, 0x20(sp)               |         gp = *(var_20h_2);
    0x0006b6b8 lw a0, 0x48(s0)               |         a0 = *((s0 + 18));
                                             |     }
    0x0006b6bc lw t9, -0x6a84(gp)            |     t9 = *((gp - 6817));
                                             |     if (a0 == 0) {
    0x0006b6c0 beqz a0, 0x6b948              |         goto label_18;
                                             |     }
    0x0006b6c4 addiu s4, sp, 0x2c            |     s4 = sp + 0x2c;
    0x0006b6c8 move a2, s1                   |     a2 = s1;
    0x0006b6cc move a1, s4                   |     a1 = s4;
    0x0006b6d0 jalr t9                       |     t9 ();
    0x0006b6d4 lw gp, 0x20(sp)               |     gp = *(var_20h_2);
                                             |     if (v0 == 0) {
    0x0006b6d8 beqz v0, 0x6b900              |         goto label_19;
                                             |     }
                                             | label_4:
    0x0006b6dc lw t9, 0x4c(s0)               |     t9 = *((s0 + 19));
    0x0006b6e0 move a2, s1                   |     a2 = s1;
    0x0006b6e4 move a1, s4                   |     a1 = s4;
    0x0006b6e8 move a0, s0                   |     a0 = s0;
    0x0006b6ec jalr t9                       |     t9 ();
    0x0006b6f0 lw gp, 0x20(sp)               |     gp = *(var_20h_2);
                                             | label_8:
    0x0006b6f4 lw v0, (s2)                   |     v0 = *(s2);
    0x0006b6f8 lw t9, -0x7528(gp)            |     t9 = *((gp - 7498));
                                             |     if (v0 != 0) {
    0x0006b6fc beqz v0, 0x6b784              |         
    0x0006b700 lw a0, -0x7fe4(gp)            |         a0 = *((gp - 8185));
    0x0006b704 lw a1, 0x50(s0)               |         a1 = *((s0 + 20));
    0x0006b708 addiu a0, a0, -0x5fa8         |         a0 += -0x5fa8;
    0x0006b70c jalr t9                       |         t9 ();
    0x0006b710 lw gp, 0x20(sp)               |         gp = *(var_20h_2);
    0x0006b714 move a0, s0                   |         a0 = s0;
    0x0006b718 lw t9, -0x76f4(gp)            |         t9 = *((gp - 7613));
    0x0006b71c move s4, v0                   |         s4 = v0;
    0x0006b720 jalr t9                       |         t9 ();
    0x0006b724 lw gp, 0x20(sp)               |         gp = *(var_20h_2);
    0x0006b728 lw a2, 0x2c(sp)               |         a2 = *(var_2ch_2);
    0x0006b72c move s5, v0                   |         s5 = v0;
    0x0006b730 lw a1, -0x7fd0(gp)            |         a1 = *((gp - 8180));
    0x0006b734 lw a0, -0x7fd0(gp)            |         a0 = *((gp - 8180));
    0x0006b738 lw t9, -0x73a4(gp)            |         t9 = *((gp - 7401));
    0x0006b73c addiu a1, a1, -0x6398         |         a1 += -0x6398;
    0x0006b740 addiu a0, a0, -0x55a0         |         a0 += -aav.0x000055a0;
    0x0006b744 jalr t9                       |         t9 ();
    0x0006b748 lw gp, 0x20(sp)               |         gp = *(var_20h_2);
    0x0006b74c move a3, s5                   |         a3 = s5;
    0x0006b750 move a2, s4                   |         a2 = s4;
    0x0006b754 lw a1, -0x7fe4(gp)            |         a1 = *((gp - 8185));
    0x0006b758 lw t9, -0x673c(gp)            |         t9 = *(gp);
    0x0006b75c addiu a1, a1, 0x9e8           |         a1 += 0x9e8;
    0x0006b760 addiu a0, zero, 7             |         a0 = 7;
    0x0006b764 sw zero, 0x14(sp)             |         *(var_14h) = 0;
    0x0006b768 sw v0, 0x10(sp)               |         *(var_10h) = v0;
    0x0006b76c jalr t9                       |         t9 ();
    0x0006b770 lw gp, 0x20(sp)               |         gp = *(var_20h_2);
    0x0006b774 lw t9, -0x7bcc(gp)            |         t9 = *((gp - 7923));
    0x0006b778 move a0, v0                   |         a0 = v0;
    0x0006b77c jalr t9                       |         t9 ();
    0x0006b780 lw gp, 0x20(sp)               |         gp = *(var_20h_2);
                                             |     }
    0x0006b784 lw s0, 0x14(s0)               |     s0 = *((s0 + 5));
                                             | label_3:
    0x0006b788 lw s4, 0x2c(sp)               |     s4 = *(var_2ch_2);
                                             |     if (s0 == 0) {
    0x0006b78c beqz s0, 0x6b950              |         goto label_20;
                                             |     }
    0x0006b790 lw v0, 4(s0)                  |     v0 = *((s0 + 1));
    0x0006b794 andi v1, v0, 1                |     v1 = v0 & 1;
                                             |     if (v1 == 0) {
    0x0006b798 beql v1, zero, 0x6b874        |         goto label_10;
                                             |     }
    0x0006b79c lw v0, -0x7fd0(gp)            |     v0 = *((gp - 8180));
    0x0006b7a0 lw s5, -0x7068(gp)            |     s5 = *((gp - 7194));
    0x0006b7a4 lw t9, (s5)                   |     t9 = *(s5);
    0x0006b7a8 move a2, s1                   |     a2 = s1;
                                             |     if (t9 != 0) {
    0x0006b7ac beqz t9, 0x6b7c8              |         
    0x0006b7b0 move a1, s4                   |         a1 = s4;
    0x0006b7b4 move a0, s0                   |         a0 = s0;
    0x0006b7b8 jalr t9                       |         t9 ();
    0x0006b7bc lw gp, 0x20(sp)               |         gp = *(var_20h_2);
                                             |         if (v0 == 0) {
    0x0006b7c0 beqz v0, 0x6b950              |             goto label_20;
                                             |         }
    0x0006b7c4 lw v0, 4(s0)                  |         v0 = *((s0 + 1));
                                             |     }
    0x0006b7c8 andi v0, v0, 0x20             |     v0 &= 0x20;
    0x0006b7cc lw v1, 8(s1)                  |     v1 = *((s1 + 2));
    0x0006b7d0 bnel v0, zero, 0x6b89c        |     
                                             |     while (1) {
    0x0006b7d4 lw t9, 8(s0)                  |         t9 = *((s0 + 2));
    0x0006b7d8 move a2, s1                   |         a2 = s1;
                                             |         if (t9 != 0) {
    0x0006b7dc beqz t9, 0x6b854              |             
    0x0006b7e0 move a1, s4                   |             a1 = s4;
    0x0006b7e4 move a0, s0                   |             a0 = s0;
    0x0006b7e8 jalr t9                       |             t9 ();
    0x0006b7ec lw gp, 0x20(sp)               |             gp = *(var_20h_2);
                                             | label_7:
    0x0006b7f0 lw v0, 8(s1)                  |             v0 = *((s1 + 2));
                                             |             if (v0 != 0) {
                                             | label_6:
    0x0006b7f4 beqz v0, 0x6b818              |                 
    0x0006b7f8 nop                           |                 
    0x0006b7fc lw v1, (v0)                   |                 v1 = *(v0);
                                             |                 if (v1 != 0) {
    0x0006b800 bnez v1, 0x6b818              |                     goto label_5;
                                             |                 }
    0x0006b804 nop                           |                 
    0x0006b808 lw v1, 4(s0)                  |                 v1 = *((s0 + 1));
    0x0006b80c andi v1, v1, 0x10             |                 v1 &= 0x10;
    0x0006b810 addiu v1, zero, 1             |                 v1 = 1;
                                             |                 if (v1 != 0) {
    0x0006b814 bnez v1, 0x6b96c              |                     goto label_21;
                                             |                 }
                                             |             }
                                             | label_5:
    0x0006b818 lw v1, 0x54(sp)               |             v1 = *(var_54h);
    0x0006b81c lw v0, (s3)                   |             v0 = *(s3);
    0x0006b820 lw ra, 0x7c(sp)               |             ra = *(var_7ch);
                                             |             if (v1 != v0) {
    0x0006b824 bne v1, v0, 0x6bc68           |                 goto label_22;
                                             |             }
    0x0006b828 lw fp, 0x78(sp)               |             fp = *(var_78h);
    0x0006b82c lw s7, 0x74(sp)               |             s7 = *(var_74h);
    0x0006b830 lw s6, 0x70(sp)               |             s6 = *(var_70h);
    0x0006b834 lw s5, 0x6c(sp)               |             s5 = *(var_6ch);
    0x0006b838 lw s4, 0x68(sp)               |             s4 = *(var_68h);
    0x0006b83c lw s3, 0x64(sp)               |             s3 = *(var_64h);
    0x0006b840 lw s2, 0x60(sp)               |             s2 = *(var_60h);
    0x0006b844 lw s1, 0x5c(sp)               |             s1 = *(var_5ch);
    0x0006b848 lw s0, 0x58(sp)               |             s0 = *(var_58h);
    0x0006b84c addiu sp, sp, 0x80            |             
    0x0006b850 jr ra                         |             return v1;
                                             |         }
    0x0006b854 lw s6, 0x14(s0)               |         s6 = *((s0 + 5));
    0x0006b858 lw t9, -0x6a10(gp)            |         t9 = *((gp - 6788));
                                             |         if (s6 == 0) {
    0x0006b85c beqz s6, 0x6bb10              |             goto label_23;
                                             |         }
    0x0006b860 lw v0, 4(s6)                  |         v0 = *((s6 + 1));
    0x0006b864 andi v1, v0, 1                |         v1 = v0 & 1;
    0x0006b868 lw t9, (s5)                   |         t9 = *(s5);
                                             |         if (v1 == 0) {
    0x0006b86c bnel v1, zero, 0x6b974        |             goto label_24;
                                             |         }
    0x0006b870 lw v0, -0x7fd0(gp)            |         v0 = *((gp - 8180));
                                             | label_10:
    0x0006b874 lw a3, -0x7fe4(gp)            |         a3 = *((gp - 8185));
    0x0006b878 lw a1, -0x7fe8(gp)            |         a1 = *((gp - 8186));
    0x0006b87c addiu v0, v0, -0x7b50         |         v0 += -0x7b50;
    0x0006b880 lw t9, -0x7cc4(gp)            |         t9 = *((gp - 7985));
    0x0006b884 sw v0, 0x10(sp)               |         *(var_10h) = v0;
    0x0006b888 addiu a3, a3, 0xa10           |         a3 += 0xa10;
    0x0006b88c addiu a2, zero, 0x153         |         a2 = 0x153;
    0x0006b890 addiu a1, a1, 0x7f4c          |         a1 += 0x7f4c;
    0x0006b894 move a0, zero                 |         a0 = 0;
    0x0006b898 jalr t9                       |         t9 ();
    0x0006b89c lw a0, (s1)                   |         a0 = *(s1);
    0x0006b8a0 lw v0, (s2)                   |         v0 = *(s2);
    0x0006b8a4 sw v1, 0x38(sp)               |         *(var_38h_2) = v1;
    0x0006b8a8 addiu v1, zero, 1             |         v1 = 1;
    0x0006b8ac sw a0, 0x30(sp)               |         *(var_30h) = a0;
    0x0006b8b0 sw v1, 0x34(sp)               |         *(var_34h_2) = v1;
                                             |         if (v0 != 0) {
    0x0006b8b4 beqz v0, 0x6b8f8              |             
    0x0006b8b8 lw t9, -0x76f4(gp)            |             t9 = *((gp - 7613));
    0x0006b8bc move a0, s0                   |             a0 = s0;
    0x0006b8c0 jalr t9                       |             t9 ();
    0x0006b8c4 lw gp, 0x20(sp)               |             gp = *(var_20h_2);
    0x0006b8c8 move a3, zero                 |             a3 = 0;
    0x0006b8cc move a2, v0                   |             a2 = v0;
    0x0006b8d0 lw a1, -0x7fd0(gp)            |             a1 = *((gp - 8180));
    0x0006b8d4 lw t9, -0x673c(gp)            |             t9 = *(gp);
    0x0006b8d8 addiu a1, a1, -0x7b2c         |             a1 += -0x7b2c;
    0x0006b8dc addiu a0, zero, 7             |             a0 = 7;
    0x0006b8e0 jalr t9                       |             t9 ();
    0x0006b8e4 lw gp, 0x20(sp)               |             gp = *(var_20h_2);
    0x0006b8e8 lw t9, -0x7bcc(gp)            |             t9 = *((gp - 7923));
    0x0006b8ec move a0, v0                   |             a0 = v0;
    0x0006b8f0 jalr t9                       |             t9 ();
    0x0006b8f4 lw gp, 0x20(sp)               |             gp = *(var_20h_2);
                                             |         }
    0x0006b8f8 addiu s1, sp, 0x30            |         s1 = sp + 0x30;
    0x0006b8fc b 0x6b7d4                     |         
                                             |     }
                                             | label_19:
    0x0006b900 lw v0, (s2)                   |     v0 = *(s2);
                                             |     if (v0 == 0) {
    0x0006b904 beql v0, zero, 0x6b788        |         goto label_3;
                                             |     }
    0x0006b908 lw s0, 0x14(s0)               |     s0 = *((s0 + 5));
    0x0006b90c lw v0, 0x44(s0)               |     v0 = *((s0 + 17));
                                             |     if (v0 == 0) {
    0x0006b910 beql v0, zero, 0x6b9f4        |         goto label_25;
                                             |     }
    0x0006b914 lw v0, -0x7fe4(gp)            |     v0 = *((gp - 8185));
    0x0006b918 lw a0, -0x6cb0(gp)            |     a0 = *((gp - 6956));
    0x0006b91c addiu v1, v0, -1              |     v1 = v0 + -1;
    0x0006b920 lw a0, (a0)                   |     a0 = *(a0);
    0x0006b924 lw a0, 4(a0)                  |     a0 = *((a0 + 1));
    0x0006b928 lw a1, 4(a0)                  |     a1 = *((a0 + 1));
    0x0006b92c sltu v1, v1, a1               |     v1 = (v1 < a1) ? 1 : 0;
    0x0006b930 sll v0, v0, 3                 |     v0 <<= 3;
                                             |     if (v1 == 0) {
    0x0006b934 beqz v1, 0x6bb04              |         goto label_26;
                                             |     }
    0x0006b938 lw a1, (a0)                   |     a1 = *(a0);
    0x0006b93c addiu v0, v0, -8              |     v0 += -8;
    0x0006b940 lwx a1, v0(a1)                |     __asm ("lwx a1, v0(a1)");
    0x0006b944 b 0x6b9f8                     |     goto label_27;
                                             | label_18:
    0x0006b948 addiu s4, sp, 0x2c            |     s4 = sp + 0x2c;
    0x0006b94c b 0x6b6dc                     |     goto label_4;
                                             | label_20:
    0x0006b950 lw t9, -0x6a10(gp)            |     t9 = *((gp - 6788));
    0x0006b954 addiu a2, zero, 1             |     a2 = 1;
    0x0006b958 move a1, s1                   |     a1 = s1;
    0x0006b95c move a0, s4                   |     a0 = s4;
    0x0006b960 jalr t9                       |     t9 ();
    0x0006b964 lw gp, 0x20(sp)               |     gp = *(var_20h_2);
    0x0006b968 b 0x6b818                     |     goto label_5;
                                             | label_21:
    0x0006b96c sw v1, (v0)                   |     *(v0) = v1;
    0x0006b970 b 0x6b818                     |     goto label_5;
                                             | label_24:
    0x0006b974 move a2, s1                   |     a2 = s1;
                                             |     if (t9 != 0) {
    0x0006b978 beqz t9, 0x6b994              |         
    0x0006b97c move a1, s4                   |         a1 = s4;
    0x0006b980 move a0, s6                   |         a0 = s6;
    0x0006b984 jalr t9                       |         t9 ();
    0x0006b988 lw gp, 0x20(sp)               |         gp = *(var_20h_2);
                                             |         if (v0 == 0) {
    0x0006b98c beqz v0, 0x6bb0c              |             goto label_28;
                                             |         }
    0x0006b990 lw v0, 4(s6)                  |         v0 = *((s6 + 1));
                                             |     }
    0x0006b994 andi v0, v0, 0x20             |     v0 &= 0x20;
    0x0006b998 lw v1, 8(s1)                  |     v1 = *((s1 + 2));
                                             |     if (v0 == 0) {
    0x0006b99c bnel v0, zero, 0x6baa0        |         goto label_29;
                                             |     }
    0x0006b9a0 move s7, s1                   |     s7 = s1;
                                             | label_9:
    0x0006b9a4 lw t9, 8(s6)                  |     t9 = *((s6 + 2));
    0x0006b9a8 move a2, s7                   |     a2 = s7;
                                             |     if (t9 == 0) {
    0x0006b9ac beqz t9, 0x6bb28              |         goto label_30;
                                             |     }
    0x0006b9b0 move a1, s4                   |     a1 = s4;
    0x0006b9b4 move a0, s6                   |     a0 = s6;
    0x0006b9b8 jalr t9                       |     t9 ();
    0x0006b9bc lw gp, 0x20(sp)               |     gp = *(var_20h_2);
                                             | label_12:
    0x0006b9c0 lw v0, 8(s7)                  |     v0 = *((s7 + 2));
                                             |     if (v0 == 0) {
                                             | label_11:
    0x0006b9c4 beql v0, zero, 0x6b7f4        |         goto label_6;
                                             |     }
    0x0006b9c8 lw v0, 8(s1)                  |     v0 = *((s1 + 2));
    0x0006b9cc lw v1, (v0)                   |     v1 = *(v0);
    0x0006b9d0 lw v0, 8(s1)                  |     v0 = *((s1 + 2));
                                             |     if (v1 == 0) {
    0x0006b9d4 bnel v1, zero, 0x6b7f4        |         goto label_6;
                                             |     }
    0x0006b9d8 lw v1, 4(s6)                  |     v1 = *((s6 + 1));
    0x0006b9dc andi v1, v1, 0x10             |     v1 &= 0x10;
                                             |     if (v1 == 0) {
    0x0006b9e0 beql v1, zero, 0x6b7f4        |         goto label_6;
                                             |     }
    0x0006b9e4 lw v0, 8(s1)                  |     v0 = *((s1 + 2));
    0x0006b9e8 addiu v1, zero, 1             |     v1 = 1;
    0x0006b9ec sw v1, (v0)                   |     *(v0) = v1;
    0x0006b9f0 b 0x6b7f0                     |     goto label_7;
                                             | label_25:
    0x0006b9f4 addiu a1, v0, -0x5f5c         |     a1 = v0 + -0x5f5c;
                                             |     do {
                                             | label_27:
    0x0006b9f8 lw a0, -0x7fe8(gp)            |         a0 = *((gp - 8186));
    0x0006b9fc lw t9, -0x7528(gp)            |         t9 = *((gp - 7498));
    0x0006ba00 addiu a0, a0, 0x66b0          |         a0 += 0x66b0;
    0x0006ba04 jalr t9                       |         t9 ();
    0x0006ba08 lw gp, 0x20(sp)               |         gp = *(var_20h_2);
    0x0006ba0c lw a1, 0x50(s0)               |         a1 = *((s0 + 20));
    0x0006ba10 move s5, v0                   |         s5 = v0;
    0x0006ba14 lw a0, -0x7fe4(gp)            |         a0 = *((gp - 8185));
    0x0006ba18 lw t9, -0x7528(gp)            |         t9 = *((gp - 7498));
    0x0006ba1c addiu a0, a0, -0x5fa8         |         a0 += -0x5fa8;
    0x0006ba20 jalr t9                       |         t9 ();
    0x0006ba24 lw gp, 0x20(sp)               |         gp = *(var_20h_2);
    0x0006ba28 move a0, s0                   |         a0 = s0;
    0x0006ba2c lw t9, -0x76f4(gp)            |         t9 = *((gp - 7613));
    0x0006ba30 move s6, v0                   |         s6 = v0;
    0x0006ba34 jalr t9                       |         t9 ();
    0x0006ba38 lw gp, 0x20(sp)               |         gp = *(var_20h_2);
    0x0006ba3c lw a2, 0x2c(sp)               |         a2 = *(var_2ch_2);
    0x0006ba40 move s4, v0                   |         s4 = v0;
    0x0006ba44 lw a1, -0x7fd0(gp)            |         a1 = *((gp - 8180));
    0x0006ba48 lw a0, -0x7fd0(gp)            |         a0 = *((gp - 8180));
    0x0006ba4c lw t9, -0x73a4(gp)            |         t9 = *((gp - 7401));
    0x0006ba50 addiu a1, a1, -0x6398         |         a1 += -0x6398;
    0x0006ba54 addiu a0, a0, -0x55a0         |         a0 += -aav.0x000055a0;
    0x0006ba58 jalr t9                       |         t9 ();
    0x0006ba5c lw gp, 0x20(sp)               |         gp = *(var_20h_2);
    0x0006ba60 move a3, s6                   |         a3 = s6;
    0x0006ba64 move a2, s5                   |         a2 = s5;
    0x0006ba68 lw a1, -0x7fe4(gp)            |         a1 = *((gp - 8185));
    0x0006ba6c lw t9, -0x673c(gp)            |         t9 = *(gp);
    0x0006ba70 addiu a1, a1, 0x9b8           |         a1 += 0x9b8;
    0x0006ba74 addiu a0, zero, 7             |         a0 = 7;
    0x0006ba78 sw zero, 0x18(sp)             |         *(var_18h_2) = 0;
    0x0006ba7c sw v0, 0x14(sp)               |         *(var_14h) = v0;
    0x0006ba80 sw s4, 0x10(sp)               |         *(var_10h) = s4;
    0x0006ba84 jalr t9                       |         t9 ();
    0x0006ba88 lw gp, 0x20(sp)               |         gp = *(var_20h_2);
    0x0006ba8c lw t9, -0x7bcc(gp)            |         t9 = *((gp - 7923));
    0x0006ba90 move a0, v0                   |         a0 = v0;
    0x0006ba94 jalr t9                       |         t9 ();
    0x0006ba98 lw gp, 0x20(sp)               |         gp = *(var_20h_2);
    0x0006ba9c b 0x6b6f4                     |         goto label_8;
                                             | label_29:
    0x0006baa0 lw a0, (s1)                   |         a0 = *(s1);
    0x0006baa4 lw v0, (s2)                   |         v0 = *(s2);
    0x0006baa8 sw v1, 0x44(sp)               |         *(var_44h_2) = v1;
    0x0006baac addiu v1, zero, 1             |         v1 = 1;
    0x0006bab0 sw a0, 0x3c(sp)               |         *(var_3ch_2) = a0;
    0x0006bab4 sw v1, 0x40(sp)               |         *(var_40h_2) = v1;
                                             |         if (v0 != 0) {
    0x0006bab8 beqz v0, 0x6bafc              |             
    0x0006babc lw t9, -0x76f4(gp)            |             t9 = *((gp - 7613));
    0x0006bac0 move a0, s6                   |             a0 = s6;
    0x0006bac4 jalr t9                       |             t9 ();
    0x0006bac8 lw gp, 0x20(sp)               |             gp = *(var_20h_2);
    0x0006bacc move a3, zero                 |             a3 = 0;
    0x0006bad0 move a2, v0                   |             a2 = v0;
    0x0006bad4 lw a1, -0x7fd0(gp)            |             a1 = *((gp - 8180));
    0x0006bad8 lw t9, -0x673c(gp)            |             t9 = *(gp);
    0x0006badc addiu a1, a1, -0x7b2c         |             a1 += -0x7b2c;
    0x0006bae0 addiu a0, zero, 7             |             a0 = 7;
    0x0006bae4 jalr t9                       |             t9 ();
    0x0006bae8 lw gp, 0x20(sp)               |             gp = *(var_20h_2);
    0x0006baec lw t9, -0x7bcc(gp)            |             t9 = *((gp - 7923));
    0x0006baf0 move a0, v0                   |             a0 = v0;
    0x0006baf4 jalr t9                       |             t9 ();
    0x0006baf8 lw gp, 0x20(sp)               |             gp = *(var_20h_2);
                                             |         }
    0x0006bafc addiu s7, sp, 0x3c            |         s7 = sp + 0x3c;
    0x0006bb00 b 0x6b9a4                     |         goto label_9;
                                             | label_26:
    0x0006bb04 move a1, zero                 |         a1 = 0;
    0x0006bb08 b 0x6b9f8                     |         
                                             |     } while (1);
                                             | label_28:
    0x0006bb0c lw t9, -0x6a10(gp)            |     t9 = *((gp - 6788));
                                             | label_23:
    0x0006bb10 addiu a2, zero, 1             |     a2 = 1;
    0x0006bb14 move a1, s1                   |     a1 = s1;
    0x0006bb18 move a0, s4                   |     a0 = s4;
    0x0006bb1c jalr t9                       |     t9 ();
    0x0006bb20 lw gp, 0x20(sp)               |     gp = *(var_20h_2);
    0x0006bb24 b 0x6b7f0                     |     goto label_7;
                                             | label_30:
    0x0006bb28 lw fp, 0x14(s6)               |     fp = *((s6 + 5));
    0x0006bb2c lw t9, -0x6a10(gp)            |     t9 = *((gp - 6788));
                                             |     if (fp == 0) {
    0x0006bb30 beqz fp, 0x6bc2c              |         goto label_31;
                                             |     }
    0x0006bb34 lw v0, 4(fp)                  |     v0 = *(arg_4h);
    0x0006bb38 andi v1, v0, 1                |     v1 = v0 & 1;
                                             |     if (v1 == 0) {
    0x0006bb3c beql v1, zero, 0x6b874        |         goto label_10;
                                             |     }
    0x0006bb40 lw v0, -0x7fd0(gp)            |     v0 = *((gp - 8180));
    0x0006bb44 lw t9, (s5)                   |     t9 = *(s5);
    0x0006bb48 move a2, s7                   |     a2 = s7;
                                             |     if (t9 != 0) {
    0x0006bb4c beqz t9, 0x6bb68              |         
    0x0006bb50 move a1, s4                   |         a1 = s4;
    0x0006bb54 move a0, fp                   |         a0 = fp;
    0x0006bb58 jalr t9                       |         t9 ();
    0x0006bb5c lw gp, 0x20(sp)               |         gp = *(var_20h_2);
                                             |         if (v0 == 0) {
    0x0006bb60 beqz v0, 0x6bc28              |             goto label_32;
                                             |         }
    0x0006bb64 lw v0, 4(fp)                  |         v0 = *(arg_4h);
                                             |     }
    0x0006bb68 andi v0, v0, 0x20             |     v0 &= 0x20;
                                             |     if (v0 != 0) {
    0x0006bb6c beql v0, zero, 0x6bbd8        |         
    0x0006bb70 move s2, s7                   |         s2 = s7;
    0x0006bb74 lw v1, 8(s7)                  |         v1 = *((s7 + 2));
    0x0006bb78 lw a0, (s7)                   |         a0 = *(s7);
    0x0006bb7c lw v0, (s2)                   |         v0 = *(s2);
    0x0006bb80 sw v1, 0x50(sp)               |         *(var_50h) = v1;
    0x0006bb84 addiu v1, zero, 1             |         v1 = 1;
    0x0006bb88 sw a0, 0x48(sp)               |         *(var_48h) = a0;
    0x0006bb8c sw v1, 0x4c(sp)               |         *(var_4ch) = v1;
                                             |         if (v0 != 0) {
    0x0006bb90 beqz v0, 0x6bbd4              |             
    0x0006bb94 lw t9, -0x76f4(gp)            |             t9 = *((gp - 7613));
    0x0006bb98 move a0, fp                   |             a0 = fp;
    0x0006bb9c jalr t9                       |             t9 ();
    0x0006bba0 lw gp, 0x20(sp)               |             gp = *(var_20h_2);
    0x0006bba4 move a3, zero                 |             a3 = 0;
    0x0006bba8 move a2, v0                   |             a2 = v0;
    0x0006bbac lw a1, -0x7fd0(gp)            |             a1 = *((gp - 8180));
    0x0006bbb0 lw t9, -0x673c(gp)            |             t9 = *(gp);
    0x0006bbb4 addiu a1, a1, -0x7b2c         |             a1 += -0x7b2c;
    0x0006bbb8 addiu a0, zero, 7             |             a0 = 7;
    0x0006bbbc jalr t9                       |             t9 ();
    0x0006bbc0 lw gp, 0x20(sp)               |             gp = *(var_20h_2);
    0x0006bbc4 lw t9, -0x7bcc(gp)            |             t9 = *((gp - 7923));
    0x0006bbc8 move a0, v0                   |             a0 = v0;
    0x0006bbcc jalr t9                       |             t9 ();
    0x0006bbd0 lw gp, 0x20(sp)               |             gp = *(var_20h_2);
                                             |         }
    0x0006bbd4 addiu s2, sp, 0x48            |         s2 = sp + 0x48;
                                             |     }
    0x0006bbd8 lw t9, 8(fp)                  |     t9 = *(arg_8h);
    0x0006bbdc move a2, s2                   |     a2 = s2;
                                             |     if (t9 == 0) {
    0x0006bbe0 beqz t9, 0x6bc44              |         goto label_33;
                                             |     }
    0x0006bbe4 move a1, s4                   |     a1 = s4;
    0x0006bbe8 move a0, fp                   |     a0 = fp;
    0x0006bbec jalr t9                       |     t9 ();
    0x0006bbf0 lw gp, 0x20(sp)               |     gp = *(var_20h_2);
                                             | label_13:
    0x0006bbf4 lw v0, 8(s2)                  |     v0 = *((s2 + 2));
                                             |     if (v0 == 0) {
    0x0006bbf8 beql v0, zero, 0x6b9c4        |         goto label_11;
                                             |     }
    0x0006bbfc lw v0, 8(s7)                  |     v0 = *((s7 + 2));
    0x0006bc00 lw v1, (v0)                   |     v1 = *(v0);
    0x0006bc04 lw v0, 8(s7)                  |     v0 = *((s7 + 2));
                                             |     if (v1 == 0) {
    0x0006bc08 bnel v1, zero, 0x6b9c4        |         goto label_11;
                                             |     }
    0x0006bc0c lw v1, 4(fp)                  |     v1 = *(arg_4h);
    0x0006bc10 andi v1, v1, 0x10             |     v1 &= 0x10;
                                             |     if (v1 == 0) {
    0x0006bc14 beql v1, zero, 0x6b9c4        |         goto label_11;
                                             |     }
    0x0006bc18 lw v0, 8(s7)                  |     v0 = *((s7 + 2));
    0x0006bc1c addiu v1, zero, 1             |     v1 = 1;
    0x0006bc20 sw v1, (v0)                   |     *(v0) = v1;
    0x0006bc24 b 0x6b9c0                     |     goto label_12;
                                             | label_32:
    0x0006bc28 lw t9, -0x6a10(gp)            |     t9 = *((gp - 6788));
                                             | label_31:
    0x0006bc2c addiu a2, zero, 1             |     a2 = 1;
    0x0006bc30 move a1, s7                   |     a1 = s7;
    0x0006bc34 move a0, s4                   |     a0 = s4;
    0x0006bc38 jalr t9                       |     t9 ();
    0x0006bc3c lw gp, 0x20(sp)               |     gp = *(var_20h_2);
    0x0006bc40 b 0x6b9c0                     |     goto label_12;
                                             | label_33:
    0x0006bc44 lw a0, 0x14(fp)               |     a0 = *(arg_14h);
    0x0006bc48 lw t9, -0x7f94(gp)            |     t9 = *((gp - 8165));
                                             |     if (a0 != 0) {
    0x0006bc4c beqz a0, 0x6bc74              |         
    0x0006bc50 move a2, s2                   |         a2 = s2;
    0x0006bc54 addiu t9, t9, -0x4c18         |         t9 += -0x4c18;
    0x0006bc58 move a1, s4                   |         a1 = s4;
    0x0006bc5c bal 0x6b3e8                   |         fcn_0006b3e8 ();
                                             |         goto label_1;
    0x0006bc60 lw gp, 0x20(sp)               |         gp = *(var_20h_2);
    0x0006bc64 b 0x6bbf4                     |         goto label_13;
                                             | label_22:
    0x0006bc68 lw t9, -0x7454(gp)            |         t9 = *(gp);
    0x0006bc6c jalr t9                       |         t9 ();
    0x0006bc70 nop                           |         
                                             |     }
    0x0006bc74 lw t9, -0x6a10(gp)            |     t9 = *((gp - 6788));
    0x0006bc78 addiu a2, zero, 1             |     a2 = 1;
    0x0006bc7c move a1, s2                   |     a1 = s2;
    0x0006bc80 move a0, s4                   |     a0 = s4;
    0x0006bc84 jalr t9                       |     t9 ();
    0x0006bc88 lw gp, 0x20(sp)               |     gp = *(var_20h_2);
    0x0006bc8c b 0x6bbf4                     |     goto label_13;
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/lib/libsyslog-ng-3.19.so.0.0.0 @ 0x2d5e4 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.log_matcher_unref ()         | void log_matcher_unref () {
    0x0002d5e4 lui gp, 0xa                   |     
    0x0002d5e8 addiu gp, gp, 0x668c          |     
    0x0002d5ec addu gp, gp, t9               |     gp += t9;
    0x0002d5f0 lw v1, (a0)                   |     v1 = *(a0);
    0x0002d5f4 addiu v1, v1, -1              |     v1 += -1;
    0x0002d5f8 sw v1, (a0)                   |     *(a0) = v1;
                                             |     if (v1 == 0) {
    0x0002d5fc bnez v1, 0x2d640              |         
    0x0002d600 addiu sp, sp, -0x20           |         
    0x0002d604 lw t9, 0x18(a0)               |         t9 = *((a0 + 6));
    0x0002d608 sw gp, 0x10(sp)               |         *(var_10h) = gp;
    0x0002d60c sw s0, 0x18(sp)               |         *(var_18h) = s0;
    0x0002d610 sw ra, 0x1c(sp)               |         *(var_1ch) = ra;
    0x0002d614 move s0, a0                   |         s0 = a0;
                                             |         if (t9 != 0) {
    0x0002d618 beqz t9, 0x2d628              |             
    0x0002d61c jalr t9                       |             t9 ();
    0x0002d620 nop                           |             
    0x0002d624 lw gp, 0x10(sp)               |             gp = *(var_10h);
                                             |         }
    0x0002d628 lw ra, 0x1c(sp)               |         ra = *(var_1ch);
    0x0002d62c move a0, s0                   |         a0 = s0;
    0x0002d630 lw t9, -0x7538(gp)            |         t9 = *(gp);
    0x0002d634 lw s0, 0x18(sp)               |         s0 = *(var_18h);
    0x0002d638 addiu sp, sp, 0x20            |         
    0x0002d63c jr t9                         |         t9 ();
                                             |     }
    0x0002d640 jr ra                         |     return v1;
    0x0002d644 nop                           |     
                                             | }

[*] Function popen used 1 times libsyslog-ng-3.19.so.0.0.0