[*] Binary protection state of httpd

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


[*] Function strcat tear down of httpd

    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x26b60 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.00026b60 ()                  | void fcn_00026b60 () {
    0x00026b60 lui gp, 8                     |     
    0x00026b64 addiu gp, gp, -0x3c40         |     
    0x00026b68 addu gp, gp, t9               |     gp += t9;
    0x00026b6c lw v0, -0x7e94(gp)            |     v0 = *(gp);
    0x00026b70 addiu sp, sp, -0x58           |     
    0x00026b74 sll t0, a0, 2                 |     t0 = a0 << 2;
    0x00026b78 lw v1, (v0)                   |     v1 = *(v0);
    0x00026b7c sw s0, 0x30(sp)               |     *(var_30h) = s0;
    0x00026b80 sw s1, 0x34(sp)               |     *(var_34h) = s1;
    0x00026b84 lw s0, 8(v1)                  |     s0 = *((v1 + 2));
    0x00026b88 lw s1, -0x7534(gp)            |     s1 = *(gp);
    0x00026b8c sll v0, a1, 2                 |     v0 = a1 << 2;
    0x00026b90 lwx s0, t0(s0)                |     __asm ("lwx s0, t0(s0)");
    0x00026b94 addu v0, v0, a1               |     v0 += a1;
    0x00026b98 sll v0, v0, 6                 |     v0 <<= 6;
    0x00026b9c addu s0, s0, v0               |     s0 += v0;
    0x00026ba0 lw t0, (s1)                   |     t0 = *(s1);
    0x00026ba4 sw s6, 0x48(sp)               |     *(var_48h) = s6;
    0x00026ba8 sw s5, 0x44(sp)               |     *(var_44h) = s5;
    0x00026bac sw s3, 0x3c(sp)               |     *(var_3ch) = s3;
    0x00026bb0 sw s2, 0x38(sp)               |     *(var_38h) = s2;
    0x00026bb4 sw gp, 0x20(sp)               |     *(var_20h) = gp;
    0x00026bb8 sw ra, 0x54(sp)               |     *(var_54h) = ra;
    0x00026bbc sw fp, 0x50(sp)               |     *(var_50h) = fp;
    0x00026bc0 sw s7, 0x4c(sp)               |     *(var_4ch) = s7;
    0x00026bc4 sw s4, 0x40(sp)               |     *(var_40h) = s4;
    0x00026bc8 addiu v0, zero, 2             |     v0 = 2;
    0x00026bcc lbu s4, 0x10(s0)              |     s4 = *((s0 + 16));
    0x00026bd0 move s3, a3                   |     s3 = a3;
    0x00026bd4 lw s5, 0x68(sp)               |     s5 = *(arg_68h);
    0x00026bd8 lw s2, 0x6c(sp)               |     s2 = *(arg_6ch);
    0x00026bdc lw s6, 0x70(sp)               |     s6 = *(arg_70h);
    0x00026be0 sw t0, 0x2c(sp)               |     *(var_2ch) = t0;
    0x00026be4 sb a2, 0x10(s0)               |     *((s0 + 16)) = a2;
                                             |     if (a2 == v0) {
    0x00026be8 beq a2, v0, 0x26d54           |         goto label_11;
                                             |     }
    0x00026bec lw v0, -0x7e98(gp)            |     v0 = *(gp);
    0x00026bf0 lw v0, (v0)                   |     v0 = *(v0);
                                             |     if (v0 != 0) {
    0x00026bf4 bnez v0, 0x26c3c              |         goto label_12;
                                             |     }
    0x00026bf8 nop                           |     
                                             |     do {
                                             | label_0:
    0x00026bfc lw a0, 0x2c(sp)               |         a0 = *(var_2ch);
    0x00026c00 lw v1, (s1)                   |         v1 = *(s1);
    0x00026c04 move v0, s4                   |         v0 = s4;
                                             |         if (a0 != v1) {
    0x00026c08 bne a0, v1, 0x26ff4           |             goto label_13;
                                             |         }
    0x00026c0c lw ra, 0x54(sp)               |         ra = *(var_54h);
    0x00026c10 lw fp, 0x50(sp)               |         fp = *(var_50h);
    0x00026c14 lw s7, 0x4c(sp)               |         s7 = *(var_4ch);
    0x00026c18 lw s6, 0x48(sp)               |         s6 = *(var_48h);
    0x00026c1c lw s5, 0x44(sp)               |         s5 = *(var_44h);
    0x00026c20 lw s4, 0x40(sp)               |         s4 = *(var_40h);
    0x00026c24 lw s3, 0x3c(sp)               |         s3 = *(var_3ch);
    0x00026c28 lw s2, 0x38(sp)               |         s2 = *(var_38h);
    0x00026c2c lw s1, 0x34(sp)               |         s1 = *(var_34h);
    0x00026c30 lw s0, 0x30(sp)               |         s0 = *(var_30h);
    0x00026c34 addiu sp, sp, 0x58            |         
    0x00026c38 jr ra                         |         return v1;
                                             | label_12:
    0x00026c3c move v0, zero                 |         v0 = 0;
                                             |         if (a2 == 0) {
    0x00026c40 beqz a2, 0x26e58              |             goto label_14;
                                             |         }
                                             |         if (s6 == 0) {
    0x00026c44 beqz s6, 0x26d9c              |             goto label_15;
                                             |         }
    0x00026c48 nop                           |         
                                             | label_1:
    0x00026c4c lw t9, -0x7260(gp)            |         t9 = sym.imp.apr_cpystrn;
    0x00026c50 addiu a2, zero, 0x40          |         a2 = 0x40;
    0x00026c54 move a1, s6                   |         a1 = s6;
    0x00026c58 addiu a0, s0, 0x88            |         a0 = s0 + 0x88;
    0x00026c5c jalr t9                       |         t9 ();
    0x00026c60 lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |         if (s2 == 0) {
    0x00026c64 beqz s2, 0x26d2c              |             goto label_16;
                                             |         }
                                             | label_2:
    0x00026c68 lw v0, 0x1cc(s2)              |         v0 = *(s2);
    0x00026c6c lw t9, -0x7e18(gp)            |         t9 = sym.ap_get_useragent_host;
                                             |         if (v0 == 0) {
    0x00026c70 beqz v0, 0x26d2c              |             goto label_16;
                                             |         }
    0x00026c74 move a0, s2                   |         a0 = s2;
    0x00026c78 move a2, zero                 |         a2 = 0;
    0x00026c7c addiu a1, zero, 2             |         a1 = 2;
    0x00026c80 bal 0x36e98                   |         sym_ap_get_useragent_host ();
    0x00026c84 move s6, v0                   |         s6 = v0;
    0x00026c88 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x00026c8c addiu a0, s0, 0x68            |         a0 = s0 + 0x68;
    0x00026c90 addiu s7, s0, 0x100           |         s7 = s0 + aav.0x00000100;
                                             |         if (v0 == 0) {
    0x00026c94 beqz v0, 0x26f48              |             goto label_17;
                                             |         }
    0x00026c98 lw t9, -0x7260(gp)            |         t9 = sym.imp.apr_cpystrn;
    0x00026c9c addiu a2, zero, 0x20          |         a2 = 0x20;
    0x00026ca0 move a1, v0                   |         a1 = v0;
    0x00026ca4 jalr t9                       |         t9 ();
    0x00026ca8 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x00026cac addiu a2, zero, 0x40          |         a2 = 0x40;
    0x00026cb0 move a1, s6                   |         a1 = s6;
    0x00026cb4 lw t9, -0x7260(gp)            |         t9 = sym.imp.apr_cpystrn;
    0x00026cb8 move a0, s7                   |         a0 = s7;
    0x00026cbc jalr t9                       |         t9 ();
    0x00026cc0 lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |         if (s5 == 0) {
                                             | label_8:
    0x00026cc4 beqz s5, 0x26f38              |             goto label_18;
                                             |         }
    0x00026cc8 nop                           |         
    0x00026ccc lw t9, -0x7260(gp)            |         t9 = sym.imp.apr_cpystrn;
                                             |         if (s3 == 0) {
    0x00026cd0 beqz s3, 0x26d3c              |             goto label_19;
                                             |         }
    0x00026cd4 lw v0, 0xc(s3)                |         v0 = *((s3 + 3));
                                             | label_5:
    0x00026cd8 lw a2, -0x7fac(gp)            |         a2 = *(gp);
    0x00026cdc lw t9, -0x7568(gp)            |         t9 = sym.imp.apr_snprintf;
    0x00026ce0 lhu v0, 0xc(v0)               |         v0 = *((v0 + 6));
    0x00026ce4 lw a3, 0x34(s5)               |         a3 = *((s5 + 13));
                                             |         /* esilref: '&s:&d' */
    0x00026ce8 addiu a2, a2, -0x35ec         |         a2 += -0x35ec;
    0x00026cec sw v0, 0x10(sp)               |         *(var_10h_2) = v0;
    0x00026cf0 addiu a1, zero, 0x20          |         a1 = 0x20;
    0x00026cf4 addiu a0, s0, 0xc8            |         a0 = s0 + 0xc8;
    0x00026cf8 jalr t9                       |         t9 ();
    0x00026cfc lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             | label_6:
    0x00026d00 lw t9, -0x7e14(gp)            |         t9 = sym.ap_get_protocol;
    0x00026d04 move a0, s3                   |         a0 = s3;
    0x00026d08 bal 0x2ede4                   |         sym_ap_get_protocol ();
    0x00026d0c lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x00026d10 addiu a2, zero, 0x10          |         a2 = 0x10;
    0x00026d14 move a1, v0                   |         a1 = v0;
    0x00026d18 lw t9, -0x7260(gp)            |         t9 = sym.imp.apr_cpystrn;
    0x00026d1c addiu a0, s0, 0xe8            |         a0 = s0 + 0xe8;
    0x00026d20 jalr t9                       |         t9 ();
    0x00026d24 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x00026d28 b 0x26bfc                     |         
                                             |     } while (1);
                                             | label_16:
    0x00026d2c lw v0, 4(s3)                  |     v0 = *((s3 + 1));
                                             |     if (s3 == 0) {
    0x00026d30 bnel s3, zero, 0x26e8c        |         goto label_20;
                                             |     }
                                             | label_4:
    0x00026d34 lw t9, -0x7260(gp)            |     t9 = sym.imp.apr_cpystrn;
                                             |     if (s5 == 0) {
    0x00026d38 beqz s5, 0x26bfc              |         goto label_0;
                                             |     }
                                             | label_19:
    0x00026d3c lw a1, 0x34(s5)               |     a1 = *((s5 + 13));
    0x00026d40 addiu a2, zero, 0x20          |     a2 = 0x20;
    0x00026d44 addiu a0, s0, 0xc8            |     a0 = s0 + 0xc8;
    0x00026d48 jalr t9                       |     t9 ();
    0x00026d4c lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00026d50 b 0x26bfc                     |     goto label_0;
                                             | label_11:
    0x00026d54 addiu v0, zero, 1             |     v0 = 1;
                                             |     if (s4 == v0) {
    0x00026d58 beql s4, v0, 0x26ef4          |         goto label_21;
                                             |     }
    0x00026d5c lw s7, 4(v1)                  |     s7 = *((v1 + 1));
                                             | label_7:
    0x00026d60 lw v0, -0x7e98(gp)            |     v0 = *(gp);
    0x00026d64 lw v0, (v0)                   |     v0 = *(v0);
                                             |     if (v0 == 0) {
    0x00026d68 beqz v0, 0x26bfc              |         goto label_0;
                                             |     }
    0x00026d6c nop                           |     
                                             | label_3:
    0x00026d70 lw t9, -0x750c(gp)            |     t9 = sym.imp.apr_time_now;
    0x00026d74 move v0, zero                 |     v0 = 0;
    0x00026d78 move v1, zero                 |     v1 = 0;
    0x00026d7c sh zero, 0x12(s0)             |     *((s0 + 9)) = 0;
    0x00026d80 sw v0, 0x18(s0)               |     *((s0 + 6)) = v0;
    0x00026d84 sw v1, 0x1c(s0)               |     *((s0 + 7)) = v1;
    0x00026d88 jalr t9                       |     t9 ();
    0x00026d8c lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00026d90 sw v0, 0x50(s0)               |     *((s0 + 20)) = v0;
    0x00026d94 sw v1, 0x54(s0)               |     *((s0 + 21)) = v1;
                                             |     if (s6 != 0) {
    0x00026d98 bnez s6, 0x26c4c              |         goto label_1;
                                             |     }
                                             |     if (s2 == 0) {
                                             | label_15:
    0x00026d9c beqz s2, 0x26e7c              |         goto label_22;
                                             |     }
    0x00026da0 nop                           |     
    0x00026da4 lw s6, 0x18(s2)               |     s6 = *((s2 + 6));
    0x00026da8 addiu s7, s0, 0x88            |     s7 = s0 + 0x88;
                                             |     if (s6 == 0) {
    0x00026dac beqz s6, 0x26fd4              |         goto label_23;
                                             |     }
    0x00026db0 lw v0, 0x13c(s2)              |     v0 = *(s2);
    0x00026db4 lw t9, -0x7794(gp)            |     t9 = sym.imp.apr_uri_unparse;
                                             |     if (v0 != 0) {
    0x00026db8 beqz v0, 0x26e18              |         
    0x00026dbc lw s6, (s2)                   |         s6 = *(s2);
    0x00026dc0 addiu a2, zero, 4             |         a2 = 4;
    0x00026dc4 addiu a1, s2, 0x130           |         a1 = s2 + aav.0x00000130;
    0x00026dc8 move a0, s6                   |         a0 = s6;
    0x00026dcc lw fp, 0x4c(s2)               |         fp = *((s2 + 19));
    0x00026dd0 jalr t9                       |         t9 ();
    0x00026dd4 lw v1, 0x1c(s2)               |         v1 = *((s2 + 7));
    0x00026dd8 lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |         if (v1 == 0) {
    0x00026ddc beqz v1, 0x26fc8              |             goto label_24;
                                             |         }
    0x00026de0 lw a2, -0x7fac(gp)            |         a2 = *(gp);
    0x00026de4 move v1, zero                 |         v1 = 0;
                                             | label_10:
    0x00026de8 lw a0, 0x2c(s2)               |         a0 = *((s2 + 11));
    0x00026dec lw t9, -0x76e8(gp)            |         t9 = sym.imp.apr_pstrcat
    0x00026df0 sw a0, 0x14(sp)               |         *(var_14h) = a0;
    0x00026df4 sw zero, 0x18(sp)             |         *(var_18h_2) = 0;
    0x00026df8 move a0, s6                   |         a0 = s6;
    0x00026dfc sw v1, 0x10(sp)               |         *(var_10h_2) = v1;
    0x00026e00 move a3, v0                   |         a3 = v0;
    0x00026e04 addiu a2, a2, 0x6730          |         a2 += 0x6730;
    0x00026e08 move a1, fp                   |         a1 = fp;
    0x00026e0c jalr t9                       |         t9 ();
    0x00026e10 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x00026e14 move s6, v0                   |         s6 = v0;
                                             |     }
    0x00026e18 lw v0, -0x7e10(gp)            |     v0 = *(gp);
    0x00026e1c lw v0, (v0)                   |     v0 = *(v0);
    0x00026e20 lw t9, -0x74c4(gp)            |     t9 = sym.imp.strlen;
                                             |     if (v0 != 0) {
    0x00026e24 beqz v0, 0x26e3c              |         
    0x00026e28 move a0, s6                   |         a0 = s6;
    0x00026e2c jalr t9                       |         t9 ();
    0x00026e30 sltiu v1, v0, 0x40            |         v1 = (v0 < 0x40) ? 1 : 0;
    0x00026e34 lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |         if (v1 == 0) {
    0x00026e38 beqz v1, 0x26fa8              |             goto label_25;
                                             |         }
                                             |     }
    0x00026e3c lw t9, -0x7260(gp)            |     t9 = sym.imp.apr_cpystrn;
    0x00026e40 addiu a2, zero, 0x40          |     a2 = 0x40;
    0x00026e44 move a1, s6                   |     a1 = s6;
    0x00026e48 move a0, s7                   |     a0 = s7;
    0x00026e4c jalr t9                       |     t9 ();
    0x00026e50 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00026e54 b 0x26c68                     |     goto label_2;
                                             | label_14:
    0x00026e58 move v1, zero                 |     v1 = 0;
    0x00026e5c sw zero, 0x30(s0)             |     *((s0 + 12)) = 0;
    0x00026e60 sw v0, 0x38(s0)               |     *((s0 + 14)) = v0;
    0x00026e64 sw v1, 0x3c(s0)               |     *((s0 + 15)) = v1;
    0x00026e68 sw zero, 0x58(s0)             |     *((s0 + 22)) = 0;
    0x00026e6c sw zero, 0x5c(s0)             |     *((s0 + 23)) = 0;
    0x00026e70 sw zero, 0x60(s0)             |     *((s0 + 24)) = 0;
    0x00026e74 sw zero, 0x64(s0)             |     *((s0 + 25)) = 0;
    0x00026e78 b 0x26d70                     |     goto label_3;
                                             |     if (s3 == 0) {
                                             | label_22:
    0x00026e7c beqz s3, 0x26d34              |         goto label_4;
                                             |     }
    0x00026e80 nop                           |     
    0x00026e84 sb zero, 0x88(s0)             |     *((s0 + 136)) = 0;
    0x00026e88 lw v0, 4(s3)                  |     v0 = *((s3 + 1));
                                             | label_20:
    0x00026e8c lw t9, -0x7e0c(gp)            |     t9 = sym.ap_get_remote_host;
    0x00026e90 move a0, s3                   |     a0 = s3;
    0x00026e94 lw a1, 0x1c(v0)               |     a1 = *((v0 + 7));
    0x00026e98 move a3, zero                 |     a3 = 0;
    0x00026e9c addiu a2, zero, 2             |     a2 = 2;
    0x00026ea0 bal 0x36b88                   |     sym_ap_get_remote_host ();
    0x00026ea4 move s2, v0                   |     s2 = v0;
    0x00026ea8 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00026eac addiu a0, s0, 0x68            |     a0 = s0 + 0x68;
    0x00026eb0 addiu s6, s0, 0x100           |     s6 = s0 + aav.0x00000100;
                                             |     if (v0 == 0) {
    0x00026eb4 beqz v0, 0x26f78              |         goto label_26;
                                             |     }
    0x00026eb8 lw t9, -0x7260(gp)            |     t9 = sym.imp.apr_cpystrn;
    0x00026ebc addiu a2, zero, 0x20          |     a2 = 0x20;
    0x00026ec0 move a1, v0                   |     a1 = v0;
    0x00026ec4 jalr t9                       |     t9 ();
    0x00026ec8 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00026ecc addiu a2, zero, 0x40          |     a2 = 0x40;
    0x00026ed0 move a1, s2                   |     a1 = s2;
    0x00026ed4 lw t9, -0x7260(gp)            |     t9 = sym.imp.apr_cpystrn;
    0x00026ed8 move a0, s6                   |     a0 = s6;
    0x00026edc jalr t9                       |     t9 ();
    0x00026ee0 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             | label_9:
    0x00026ee4 lw v0, 0xc(s3)                |     v0 = *((s3 + 3));
                                             |     if (s5 == 0) {
    0x00026ee8 bnel s5, zero, 0x26cd8        |         goto label_5;
                                             |     }
    0x00026eec sb zero, 0xc8(s0)             |     *((s0 + 200)) = 0;
    0x00026ef0 b 0x26d00                     |     goto label_6;
                                             | label_21:
    0x00026ef4 lw v1, -0x7f14(gp)            |     v1 = *((gp - 8133));
    0x00026ef8 sll v0, a0, 3                 |     v0 = a0 << 3;
    0x00026efc lw t9, -0x7fc4(gp)            |     t9 = sym.ap_mpm_query;
    0x00026f00 lw v1, -0x3dcc(v1)            |     v1 = *((v1 - 3955));
    0x00026f04 addu v0, v0, a0               |     v0 += a0;
    0x00026f08 mul a2, a0, v1                |     __asm ("mul a2, a0, v1");
    0x00026f0c sll v0, v0, 2                 |     v0 <<= 2;
    0x00026f10 addiu a0, zero, 0xf           |     a0 = 0xf;
    0x00026f14 addu s7, s7, v0               |     s7 += v0;
    0x00026f18 addu a1, a2, a1               |     a1 = a2 + a1;
    0x00026f1c sw a1, 4(s0)                  |     *((s0 + 1)) = a1;
    0x00026f20 addiu a1, sp, 0x28            |     a1 = sp + 0x28;
    0x00026f24 bal 0x244f8                   |     sym_ap_mpm_query ();
    0x00026f28 lw v0, 0x28(sp)               |     v0 = *(var_28h);
    0x00026f2c lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00026f30 sw v0, 4(s7)                  |     *((s7 + 1)) = v0;
    0x00026f34 b 0x26d60                     |     goto label_7;
                                             |     if (s3 == 0) {
                                             | label_18:
    0x00026f38 beqz s3, 0x26bfc              |         goto label_0;
                                             |     }
    0x00026f3c nop                           |     
    0x00026f40 sb zero, 0xc8(s0)             |     *((s0 + 200)) = 0;
    0x00026f44 b 0x26d00                     |     goto label_6;
                                             | label_17:
    0x00026f48 lw t9, -0x7260(gp)            |     t9 = sym.imp.apr_cpystrn;
    0x00026f4c lw a1, 0x1cc(s2)              |     a1 = *(s2);
    0x00026f50 addiu a2, zero, 0x20          |     a2 = 0x20;
    0x00026f54 jalr t9                       |     t9 ();
    0x00026f58 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00026f5c lw a1, 0x1cc(s2)              |     a1 = *(s2);
    0x00026f60 addiu a2, zero, 0x40          |     a2 = 0x40;
    0x00026f64 lw t9, -0x7260(gp)            |     t9 = sym.imp.apr_cpystrn;
    0x00026f68 move a0, s7                   |     a0 = s7;
    0x00026f6c jalr t9                       |     t9 ();
    0x00026f70 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00026f74 b 0x26cc4                     |     goto label_8;
                                             | label_26:
    0x00026f78 lw t9, -0x7260(gp)            |     t9 = sym.imp.apr_cpystrn;
    0x00026f7c lw a1, 0x14(s3)               |     a1 = *((s3 + 5));
    0x00026f80 addiu a2, zero, 0x20          |     a2 = 0x20;
    0x00026f84 jalr t9                       |     t9 ();
    0x00026f88 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00026f8c lw a1, 0x14(s3)               |     a1 = *((s3 + 5));
    0x00026f90 addiu a2, zero, 0x40          |     a2 = 0x40;
    0x00026f94 lw t9, -0x7260(gp)            |     t9 = sym.imp.apr_cpystrn;
    0x00026f98 move a0, s6                   |     a0 = s6;
    0x00026f9c jalr t9                       |     t9 ();
    0x00026fa0 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00026fa4 b 0x26ee4                     |     goto label_9;
                                             | label_25:
    0x00026fa8 lw t9, -0x7260(gp)            |     t9 = sym.imp.apr_cpystrn;
    0x00026fac addiu v0, v0, -0x3f           |     v0 += -0x3f;
    0x00026fb0 addiu a2, zero, 0x40          |     a2 = 0x40;
    0x00026fb4 addu a1, s6, v0               |     a1 = s6 + v0;
    0x00026fb8 move a0, s7                   |     a0 = s7;
    0x00026fbc jalr t9                       |     t9 ();
    0x00026fc0 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00026fc4 b 0x26c68                     |     goto label_2;
                                             | label_24:
    0x00026fc8 lw a2, -0x7fac(gp)            |     a2 = *(gp);
    0x00026fcc addiu v1, a2, 0x6730          |     v1 = a2 + 0x6730;
    0x00026fd0 b 0x26de8                     |     goto label_10;
                                             | label_23:
    0x00026fd4 lw a1, -0x7fac(gp)            |     a1 = *(gp);
    0x00026fd8 lw t9, -0x7260(gp)            |     t9 = sym.imp.apr_cpystrn;
    0x00026fdc addiu a2, zero, 0x40          |     a2 = 0x40;
                                             |     /* esilref: 'NULL' */
    0x00026fe0 addiu a1, a1, -0x683c         |     a1 += -0x683c;
    0x00026fe4 move a0, s7                   |     a0 = s7;
    0x00026fe8 jalr t9                       |     t9 ();
    0x00026fec lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00026ff0 b 0x26c68                     |     goto label_2;
                                             | label_13:
    0x00026ff4 lw t9, -0x75e8(gp)            |     t9 = sym.imp.__stack_chk_fail;
    0x00026ff8 jalr t9                       |     t9 ();
    0x00026ffc nop                           |     
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x3408c */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.0003408c ()                  | void fcn_0003408c () {
                                             | label_3:
    0x0003408c lui gp, 7                     |     
    0x00034090 addiu gp, gp, -0x116c         |     
    0x00034094 addu gp, gp, t9               |     gp += t9;
    0x00034098 addiu sp, sp, -0x2038         |     
    0x0003409c addiu t4, zero, 1             |     t4 = 1;
    0x000340a0 sw s1, 0x2028(sp)             |     *(arg_2028h) = s1;
    0x000340a4 lw s1, -0x7534(gp)            |     s1 = *(gp);
    0x000340a8 sw s2, 0x202c(sp)             |     *(arg_202ch) = s2;
    0x000340ac move s2, a3                   |     s2 = a3;
    0x000340b0 lw v0, (s1)                   |     v0 = *(s1);
    0x000340b4 sw s0, 0x2024(sp)             |     *(arg_2024h) = s0;
    0x000340b8 sw v0, 0x201c(sp)             |     *(arg_201ch) = v0;
    0x000340bc lw v0, -0x7dd4(gp)            |     v0 = *(gp);
    0x000340c0 lw s0, (s2)                   |     s0 = *(s2);
    0x000340c4 sw gp, 0x10(sp)               |     *(arg_10h) = gp;
    0x000340c8 addiu v0, v0, 0x3384          |     v0 += 0x3384;
    0x000340cc sw ra, 0x2034(sp)             |     *(arg_2034h) = ra;
    0x000340d0 sw s3, 0x2030(sp)             |     *(arg_2030h) = s3;
    0x000340d4 sw v0, (a1)                   |     *(a1) = v0;
    0x000340d8 lb v0, (s0)                   |     v0 = *(s0);
    0x000340dc addiu a3, sp, 0x1c            |     a3 = sp + 0x1c;
    0x000340e0 move s3, a2                   |     s3 = a2;
    0x000340e4 move v1, a3                   |     v1 = a3;
    0x000340e8 addiu t0, zero, 0x25          |     t0 = 0x25;
    0x000340ec addiu t1, zero, 0x20          |     t1 = 0x20;
    0x000340f0 addiu t2, sp, 0x201c          |     t2 = sp + 0x201c;
    0x000340f4 addiu t3, zero, 0x5c          |     t3 = 0x5c;
    0x000340f8 addiu t8, zero, 0x6e          |     t8 = 0x6e;
    0x000340fc addiu ra, zero, 0xa           |     ra = 0xa;
    0x00034100 addiu t7, zero, 0x72          |     t7 = 0x72;
    0x00034104 addiu t9, zero, 0xd           |     t9 = 0xd;
    0x00034108 addiu t6, zero, 0x74          |     t6 = 0x74;
    0x0003410c addiu a2, zero, 9             |     a2 = 9;
                                             |     if (v0 == 0) {
    0x00034110 beqz v0, 0x34150              |         goto label_0;
                                             |     }
                                             |     do {
                                             |         if (v0 == t0) {
    0x00034114 beql v0, t0, 0x34154          |             goto label_8;
                                             |         }
    0x00034118 lw t9, -0x7654(gp)            |         t9 = sym.imp.apr_pstrdup;
    0x0003411c sltu a1, v1, t2               |         a1 = (v1 < t2) ? 1 : 0;
                                             |         if (v0 == t1) {
    0x00034120 beq v0, t1, 0x34198           |             goto label_9;
                                             |         }
                                             |         if (a1 == 0) {
    0x00034124 beql a1, zero, 0x34154        |             goto label_8;
                                             |         }
    0x00034128 lw t9, -0x7654(gp)            |         t9 = sym.imp.apr_pstrdup;
    0x0003412c addiu a1, s0, 1               |         a1 = s0 + 1;
                                             |         if (v0 == t3) {
    0x00034130 beq v0, t3, 0x341b4           |             goto label_10;
                                             |         }
    0x00034134 move t4, zero                 |         t4 = 0;
    0x00034138 sb v0, (v1)                   |         *(v1) = v0;
    0x0003413c move s0, a1                   |         s0 = a1;
                                             | label_1:
    0x00034140 addiu v1, v1, 1               |         v1++;
                                             | label_2:
    0x00034144 lb v0, (s0)                   |         v0 = *(s0);
    0x00034148 bnez v0, 0x34114              |         
                                             |     } while (v0 != 0);
    0x0003414c nop                           |     
                                             | label_0:
    0x00034150 lw t9, -0x7654(gp)            |     t9 = sym.imp.apr_pstrdup;
                                             |     do {
                                             | label_8:
    0x00034154 sb zero, (v1)                 |         *(v1) = 0;
    0x00034158 move a1, a3                   |         a1 = a3;
    0x0003415c jalr t9                       |         t9 ();
    0x00034160 lw gp, 0x10(sp)               |         gp = *(arg_10h);
    0x00034164 sw v0, (s3)                   |         *(s3) = v0;
    0x00034168 sw s0, (s2)                   |         *(s2) = s0;
    0x0003416c lw a0, 0x201c(sp)             |         a0 = *(arg_201ch);
    0x00034170 lw v1, (s1)                   |         v1 = *(s1);
    0x00034174 move v0, zero                 |         v0 = 0;
                                             |         if (a0 != v1) {
    0x00034178 bne a0, v1, 0x34228           |             goto label_11;
                                             |         }
    0x0003417c lw ra, 0x2034(sp)             |         ra = *(arg_2034h);
    0x00034180 lw s3, 0x2030(sp)             |         s3 = *(arg_2030h);
    0x00034184 lw s2, 0x202c(sp)             |         s2 = *(arg_202ch);
    0x00034188 lw s1, 0x2028(sp)             |         s1 = *(arg_2028h);
    0x0003418c lw s0, 0x2024(sp)             |         s0 = *(arg_2024h);
    0x00034190 addiu sp, sp, 0x2038          |         
    0x00034194 jr ra                         |         return v0;
                                             | label_9:
    0x00034198 beql t4, zero, 0x34154        |         
                                             |     } while (t4 == 0);
    0x0003419c lw t9, -0x7654(gp)            |     t9 = sym.imp.apr_pstrdup;
    0x000341a0 addiu a1, s0, 1               |     a1 = s0 + 1;
                                             |     if (a1 == 0) {
    0x000341a4 beqz a1, 0x34150              |         goto label_0;
                                             |     }
    0x000341a8 sb v0, (v1)                   |     *(v1) = v0;
    0x000341ac move s0, a1                   |     s0 = a1;
    0x000341b0 b 0x34140                     |     goto label_1;
                                             | label_10:
    0x000341b4 lb v0, 1(s0)                  |     v0 = *((s0 + 1));
    0x000341b8 slti t5, v0, 0x6f             |     t5 = (v0 < 0x6f) ? 1 : 0;
                                             |     if (v0 != t8) {
    0x000341bc beq v0, t8, 0x34200           |         
                                             |         if (t5 == 0) {
    0x000341c0 bnez t5, 0x341e8              |             
    0x000341c4 nop                           |             
                                             |             if (v0 == t7) {
    0x000341c8 beql v0, t7, 0x3421c          |                 goto label_12;
                                             |             }
    0x000341cc sb t9, (v1)                   |             *(v1) = t9;
    0x000341d0 sb v0, (v1)                   |             *(v1) = v0;
                                             |             if (v0 == t6) {
    0x000341d4 bnel v0, t6, 0x34210          |                 goto label_13;
                                             |             }
    0x000341d8 sb a2, (v1)                   |             *(v1) = a2;
    0x000341dc addiu s0, s0, 2               |             s0 += 2;
    0x000341e0 addiu v1, v1, 1               |             v1++;
    0x000341e4 b 0x34144                     |             goto label_2;
                                             |         }
    0x000341e8 sb v0, (v1)                   |         *(v1) = v0;
                                             |         if (v0 == 0) {
    0x000341ec bnel v0, zero, 0x34210        |             goto label_13;
                                             |         }
    0x000341f0 sb t3, (v1)                   |         *(v1) = t3;
    0x000341f4 move s0, a1                   |         s0 = a1;
    0x000341f8 addiu v1, v1, 1               |         v1++;
    0x000341fc b 0x34144                     |         goto label_2;
                                             |     }
    0x00034200 sb ra, (v1)                   |     *(v1) = ra;
    0x00034204 addiu s0, s0, 2               |     s0 += 2;
    0x00034208 addiu v1, v1, 1               |     v1++;
    0x0003420c b 0x34144                     |     goto label_2;
                                             | label_13:
    0x00034210 addiu s0, s0, 2               |     s0 += 2;
    0x00034214 addiu v1, v1, 1               |     v1++;
    0x00034218 b 0x34144                     |     goto label_2;
                                             | label_12:
    0x0003421c addiu s0, s0, 2               |     s0 += 2;
    0x00034220 addiu v1, v1, 1               |     v1++;
    0x00034224 b 0x34144                     |     goto label_2;
                                             | label_11:
    0x00034228 lw t9, -0x75e8(gp)            |     t9 = sym.imp.__stack_chk_fail;
    0x0003422c jalr t9                       |     t9 ();
    0x00034230 nop                           |     
                                             | label_7:
    0x00034234 lui gp, 7                     |     
    0x00034238 addiu gp, gp, -0x1314         |     
    0x0003423c addu gp, gp, t9               |     gp += t9;
    0x00034240 addiu sp, sp, -0x58           |     
    0x00034244 lw v1, (a2)                   |     v1 = *(a2);
    0x00034248 sw s3, 0x3c(sp)               |     *(var_3ch) = s3;
    0x0003424c lw s3, -0x7534(gp)            |     s3 = *(gp);
    0x00034250 sw s5, 0x44(sp)               |     *(var_44h) = s5;
    0x00034254 sw s4, 0x40(sp)               |     *(var_40h) = s4;
    0x00034258 sw s2, 0x38(sp)               |     *(var_38h) = s2;
    0x0003425c sw gp, 0x10(sp)               |     *(var_10h) = gp;
    0x00034260 sw ra, 0x54(sp)               |     *(var_54h) = ra;
    0x00034264 sw fp, 0x50(sp)               |     *(var_50h) = fp;
    0x00034268 sw s7, 0x4c(sp)               |     *(var_4ch) = s7;
    0x0003426c sw s6, 0x48(sp)               |     *(var_48h) = s6;
    0x00034270 sw s1, 0x34(sp)               |     *(var_34h) = s1;
    0x00034274 sw s0, 0x30(sp)               |     *(var_30h) = s0;
    0x00034278 sw v1, 0x24(sp)               |     *(var_24h) = v1;
    0x0003427c lw t0, (s3)                   |     t0 = *(s3);
    0x00034280 lb a3, (v1)                   |     a3 = *(v1);
    0x00034284 addiu v0, zero, 0x25          |     v0 = 0x25;
    0x00034288 move s4, a2                   |     s4 = a2;
    0x0003428c move s5, a0                   |     s5 = a0;
    0x00034290 move s2, a1                   |     s2 = a1;
    0x00034294 sw t0, 0x2c(sp)               |     *(var_2ch) = t0;
                                             |     if (a3 != v0) {
    0x00034298 beql a3, v0, 0x34308          |         
    0x0003429c addiu s1, v1, 1               |         s1 = v1 + 1;
    0x000342a0 addiu v0, zero, 0x20          |         v0 = 0x20;
                                             |         if (a3 == v0) {
    0x000342a4 beql a3, v0, 0x343c0          |             goto label_14;
                                             |         }
    0x000342a8 lw v0, 8(a1)                  |         v0 = *((a1 + 2));
                                             | label_5:
    0x000342ac lw t9, -0x7dd4(gp)            |         t9 = *(gp);
    0x000342b0 move a3, s4                   |         a3 = s4;
    0x000342b4 addiu a2, s2, 4               |         a2 = s2 + 4;
    0x000342b8 move a1, s2                   |         a1 = s2;
                                             |         /* fcn.0003408c */
    0x000342bc addiu t9, t9, 0x408c          |         t9 += 0x408c;
    0x000342c0 move a0, s5                   |         a0 = s5;
    0x000342c4 bal 0x3408c                   |         fcn_0003408c ();
                                             |         goto label_3;
    0x000342c8 lw gp, 0x10(sp)               |         gp = *(var_10h);
                                             | label_6:
    0x000342cc lw a0, 0x2c(sp)               |         a0 = *(var_2ch);
    0x000342d0 lw v1, (s3)                   |         v1 = *(s3);
    0x000342d4 lw ra, 0x54(sp)               |         ra = *(var_54h);
                                             |         if (a0 != v1) {
    0x000342d8 bne a0, v1, 0x34538           |             goto label_15;
                                             |         }
    0x000342dc lw fp, 0x50(sp)               |         fp = *(var_50h);
    0x000342e0 lw s7, 0x4c(sp)               |         s7 = *(var_4ch);
    0x000342e4 lw s6, 0x48(sp)               |         s6 = *(var_48h);
    0x000342e8 lw s5, 0x44(sp)               |         s5 = *(var_44h);
    0x000342ec lw s4, 0x40(sp)               |         s4 = *(var_40h);
    0x000342f0 lw s3, 0x3c(sp)               |         s3 = *(var_3ch);
    0x000342f4 lw s2, 0x38(sp)               |         s2 = *(var_38h);
    0x000342f8 lw s1, 0x34(sp)               |         s1 = *(var_34h);
    0x000342fc lw s0, 0x30(sp)               |         s0 = *(var_30h);
    0x00034300 addiu sp, sp, 0x58            |         
    0x00034304 jr ra                         |         return v0;
                                             |     }
    0x00034308 sw s1, 0x24(sp)               |     *(var_24h) = s1;
    0x0003430c lb v0, 1(v1)                  |     v0 = *((v1 + 1));
    0x00034310 addiu t0, zero, 0x20          |     t0 = 0x20;
                                             |     if (v0 == t0) {
    0x00034314 beql v0, t0, 0x344a8          |         goto label_16;
                                             |     }
    0x00034318 lw v0, 8(a1)                  |     v0 = *((a1 + 2));
    0x0003431c addiu a3, zero, 0x4d          |     a3 = 0x4d;
                                             |     if (v0 == a3) {
    0x00034320 beq v0, a3, 0x344d0           |         goto label_17;
                                             |     }
    0x00034324 addiu fp, zero, 0x7b          |     fp = 0x7b;
    0x00034328 addiu t0, sp, 0x24            |     t0 = sp + 0x24;
    0x0003432c addiu s7, zero, 0x2b          |     s7 = 0x2b;
    0x00034330 addiu s6, zero, 0x2d          |     s6 = 0x2d;
                                             |     do {
                                             | label_4:
    0x00034334 slti v1, v0, 0x3a             |         v1 = (v0 < 0x3a) ? 1 : 0;
                                             |         if (v0 == 0) {
    0x00034338 beqz v0, 0x344f8              |             goto label_18;
                                             |         }
    0x0003433c slti v1, v0, 0x30             |         v1 = (v0 < 0x30) ? 1 : 0;
                                             |         if (v1 == 0) {
    0x00034340 beqz v1, 0x34378              |             goto label_19;
                                             |         }
    0x00034344 lw t9, -0x744c(gp)            |         t9 = *(gp);
                                             |         if (v1 == 0) {
    0x00034348 beqz v1, 0x3443c              |             goto label_20;
                                             |         }
                                             |         if (v0 == s7) {
    0x0003434c beql v0, s7, 0x343e8          |             goto label_21;
                                             |         }
    0x00034350 lw v0, 8(s2)                  |         v0 = *((s2 + 2));
    0x00034354 lw v0, -0x7f14(gp)            |         v0 = *((gp - 8133));
                                             |         if (v0 == s6) {
    0x00034358 bnel v0, s6, 0x34404          |             goto label_22;
                                             |         }
    0x0003435c lw v0, 8(s2)                  |         v0 = *((s2 + 2));
    0x00034360 addiu s1, s1, 1               |         s1++;
    0x00034364 ori v0, v0, 8                 |         v0 |= 8;
    0x00034368 sw s1, 0x24(sp)               |         *(var_24h) = s1;
    0x0003436c sw v0, 8(s2)                  |         *((s2 + 2)) = v0;
    0x00034370 lb v0, (s1)                   |         v0 = *(s1);
    0x00034374 b 0x34334                     |         
                                             |     } while (1);
                                             |     if (v0 != a3) {
                                             | label_19:
    0x00034378 beql v0, a3, 0x343cc          |         
    0x0003437c lw v0, 8(s2)                  |         v0 = *((s2 + 2));
    0x00034380 lw t9, -0x7ee4(gp)            |         t9 = sym.ap_getword;
                                             |         if (v0 != fp) {
    0x00034384 bne v0, fp, 0x34400           |             goto label_23;
                                             |         }
    0x00034388 addiu s1, s1, 1               |         s1++;
    0x0003438c move a1, t0                   |         a1 = t0;
    0x00034390 sw t0, 0x1c(sp)               |         *(var_1ch_2) = t0;
    0x00034394 sw s1, 0x24(sp)               |         *(var_24h) = s1;
    0x00034398 addiu a2, zero, 0x7d          |         a2 = 0x7d;
    0x0003439c move a0, s5                   |         a0 = s5;
    0x000343a0 bal 0x1c498                   |         sym_ap_getword ();
    0x000343a4 lw s1, 0x24(sp)               |         s1 = *(var_24h);
    0x000343a8 lw gp, 0x10(sp)               |         gp = *(var_10h);
    0x000343ac sw v0, 4(s2)                  |         *((s2 + 1)) = v0;
    0x000343b0 lw t0, 0x1c(sp)               |         t0 = *(var_1ch_2);
    0x000343b4 addiu a3, zero, 0x4d          |         a3 = 0x4d;
    0x000343b8 lb v0, (s1)                   |         v0 = *(s1);
    0x000343bc b 0x34334                     |         goto label_4;
                                             | label_14:
    0x000343c0 ori v0, v0, 1                 |         v0 |= 1;
    0x000343c4 sw v0, 8(a1)                  |         *((a1 + 2)) = v0;
    0x000343c8 b 0x342ac                     |         goto label_5;
                                             |     }
    0x000343cc addiu s1, s1, 1               |     s1++;
    0x000343d0 ori v0, v0, 2                 |     v0 |= 2;
    0x000343d4 sw v0, 8(s2)                  |     *((s2 + 2)) = v0;
    0x000343d8 sw zero, (s2)                 |     *(s2) = 0;
    0x000343dc move v0, zero                 |     v0 = 0;
    0x000343e0 sw s1, (s4)                   |     *(s4) = s1;
    0x000343e4 b 0x342cc                     |     goto label_6;
                                             | label_21:
    0x000343e8 addiu s1, s1, 1               |     s1++;
    0x000343ec ori v0, v0, 4                 |     v0 |= 4;
    0x000343f0 sw s1, 0x24(sp)               |     *(var_24h) = s1;
    0x000343f4 sw v0, 8(s2)                  |     *((s2 + 2)) = v0;
    0x000343f8 lb v0, (s1)                   |     v0 = *(s1);
    0x000343fc b 0x34334                     |     goto label_4;
                                             | label_23:
    0x00034400 lw v0, -0x7f14(gp)            |     v0 = *((gp - 8133));
                                             | label_22:
    0x00034404 lw t9, -0x7200(gp)            |     t9 = sym.imp.apr_hash_get;
    0x00034408 addiu a2, zero, 1             |     a2 = 1;
    0x0003440c lw a0, -0x3d6c(v0)            |     a0 = *((v0 - 3931));
    0x00034410 move a1, s1                   |     a1 = s1;
    0x00034414 jalr t9                       |     t9 ();
    0x00034418 lw gp, 0x10(sp)               |     gp = *(var_10h);
                                             |     if (v0 == 0) {
    0x0003441c beqz v0, 0x34504              |         goto label_24;
                                             |     }
    0x00034420 lw v1, 0x24(sp)               |     v1 = *(var_24h);
    0x00034424 lw v0, (v0)                   |     v0 = *(v0);
    0x00034428 addiu v1, v1, 1               |     v1++;
    0x0003442c sw v0, (s2)                   |     *(s2) = v0;
    0x00034430 move v0, zero                 |     v0 = 0;
    0x00034434 sw v1, (s4)                   |     *(s4) = v1;
    0x00034438 b 0x342cc                     |     goto label_6;
                                             | label_20:
    0x0003443c sw t0, 0x1c(sp)               |     *(var_1ch_2) = t0;
    0x00034440 addiu s0, v0, -0x30           |     s0 = v0 + -0x30;
    0x00034444 jalr t9                       |     t9 ();
    0x00034448 lw a2, (v0)                   |     a2 = *(v0);
    0x0003444c lw gp, 0x10(sp)               |     gp = *(var_10h);
    0x00034450 addiu a1, s1, 1               |     a1 = s1 + 1;
    0x00034454 addiu a3, zero, 0x4d          |     a3 = 0x4d;
    0x00034458 lw t0, 0x1c(sp)               |     t0 = *(var_1ch_2);
    0x0003445c b 0x34474                     |     
                                             |     while (v1 != 0) {
    0x00034460 sll v0, s0, 2                 |         v0 = s0 << 2;
    0x00034464 addu v0, v0, s0               |         v0 += s0;
    0x00034468 sll v0, v0, 1                 |         v0 <<= 1;
    0x0003446c addu v0, v0, a0               |         v0 += a0;
    0x00034470 addiu s0, v0, -0x30           |         s0 = v0 + -0x30;
    0x00034474 sw a1, 0x24(sp)               |         *(var_24h) = a1;
    0x00034478 lb a0, (a1)                   |         a0 = *(a1);
    0x0003447c move s1, a1                   |         s1 = a1;
    0x00034480 andi v1, a0, 0xff             |         v1 = a0 & 0xff;
    0x00034484 sll v1, v1, 1                 |         v1 <<= 1;
    0x00034488 addu v1, a2, v1               |         v1 = a2 + v1;
    0x0003448c lhu v1, (v1)                  |         v1 = *(v1);
    0x00034490 andi v1, v1, 0x800            |         v1 &= 0x800;
    0x00034494 addiu a1, a1, 1               |         a1++;
    0x00034498 bnez v1, 0x34460              |         
                                             |     }
    0x0003449c sw s0, 0xc(s2)                |     *((s2 + 3)) = s0;
    0x000344a0 lb v0, (s1)                   |     v0 = *(s1);
    0x000344a4 b 0x34334                     |     goto label_4;
                                             | label_16:
    0x000344a8 lw t9, -0x7dd4(gp)            |     t9 = *(gp);
    0x000344ac addiu v1, v1, 2               |     v1 += 2;
    0x000344b0 ori v0, v0, 1                 |     v0 |= 1;
    0x000344b4 sw v0, 8(a1)                  |     *((a1 + 2)) = v0;
    0x000344b8 sw v1, 0x24(sp)               |     *(var_24h) = v1;
    0x000344bc addiu t9, t9, 0x4234          |     t9 += 0x4234;
    0x000344c0 sw v1, (a2)                   |     *(a2) = v1;
    0x000344c4 bal 0x34234                   |     fcn_34234 ();
                                             |     goto label_7;
    0x000344c8 lw gp, 0x10(sp)               |     gp = *(var_10h);
    0x000344cc b 0x342cc                     |     goto label_6;
                                             | label_17:
    0x000344d0 lw v0, -0x7fac(gp)            |     v0 = *(gp);
    0x000344d4 addiu v1, v1, 2               |     v1 += 2;
    0x000344d8 addiu v0, v0, -0x4108         |     v0 += -0x4108;
    0x000344dc sw v0, 4(a1)                  |     *((a1 + 1)) = v0;
    0x000344e0 lw v0, -0x7dd4(gp)            |     v0 = *(gp);
    0x000344e4 addiu v0, v0, 0x3384          |     v0 += 0x3384;
    0x000344e8 sw v0, (a1)                   |     *(a1) = v0;
    0x000344ec move v0, zero                 |     v0 = 0;
    0x000344f0 sw v1, (a2)                   |     *(a2) = v1;
    0x000344f4 b 0x342cc                     |     goto label_6;
                                             | label_18:
    0x000344f8 lw v0, -0x7fac(gp)            |     v0 = *(gp);
                                             |     /* str.Ran_off_end_of_error_log_format_parsing_args_to_some_directive */
    0x000344fc addiu v0, v0, -0x4170         |     v0 += -0x4170;
    0x00034500 b 0x342cc                     |     goto label_6;
                                             | label_24:
    0x00034504 lw v0, 0x24(sp)               |     v0 = *(var_24h);
    0x00034508 lw a1, -0x7fac(gp)            |     a1 = *(gp);
    0x0003450c lw t9, -0x76e8(gp)            |     t9 = sym.imp.apr_pstrcat
    0x00034510 lb v0, (v0)                   |     v0 = *(v0);
    0x00034514 move a3, zero                 |     a3 = 0;
    0x00034518 addiu a2, sp, 0x28            |     a2 = sp + 0x28;
                                             |     /* str.Unrecognized_error_log_format_directive__ */
    0x0003451c addiu a1, a1, -0x4130         |     a1 += -0x4130;
    0x00034520 move a0, s5                   |     a0 = s5;
    0x00034524 sb v0, 0x28(sp)               |     *(var_28h_2) = v0;
    0x00034528 sb zero, 0x29(sp)             |     *(var_29h) = 0;
    0x0003452c jalr t9                       |     t9 ();
    0x00034530 lw gp, 0x10(sp)               |     gp = *(var_10h);
    0x00034534 b 0x342cc                     |     goto label_6;
                                             | label_15:
    0x00034538 lw t9, -0x75e8(gp)            |     t9 = sym.imp.__stack_chk_fail;
    0x0003453c jalr t9                       |     t9 ();
    0x00034540 nop                           |     
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x46a70 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.00046a70 ()                  | void fcn_00046a70 () {
    0x00046a70 lui gp, 6                     |     
    0x00046a74 addiu gp, gp, -0x3b50         |     
    0x00046a78 addu gp, gp, t9               |     gp += t9;
                                             |     if (a1 != 0) {
    0x00046a7c beqz a1, 0x46ad8              |         
    0x00046a80 nop                           |         
    0x00046a84 lw v0, (a1)                   |         v0 = *(a1);
    0x00046a88 move a3, a2                   |         a3 = a2;
                                             |         if (v0 != 0) {
    0x00046a8c beqz v0, 0x46ad0              |             
    0x00046a90 addiu sp, sp, -0x28           |             
    0x00046a94 lw a2, -0x7fac(gp)            |             a2 = *(gp);
    0x00046a98 lw t9, -0x76e8(gp)            |             t9 = sym.imp.apr_pstrcat
                                             |             /* esilref: ', ' */
    0x00046a9c addiu a2, a2, -0x588          |             a2 += -aav.0x00000588;
    0x00046aa0 sw s0, 0x20(sp)               |             *(var_20h) = s0;
    0x00046aa4 sw ra, 0x24(sp)               |             *(var_24h) = ra;
    0x00046aa8 sw gp, 0x18(sp)               |             *(var_18h) = gp;
    0x00046aac move s0, a1                   |             s0 = a1;
    0x00046ab0 sw zero, 0x10(sp)             |             *(var_10h) = 0;
    0x00046ab4 move a1, v0                   |             a1 = v0;
    0x00046ab8 jalr t9                       |             t9 ();
    0x00046abc lw ra, 0x24(sp)               |             ra = *(var_24h);
    0x00046ac0 sw v0, (s0)                   |             *(s0) = v0;
    0x00046ac4 lw s0, 0x20(sp)               |             s0 = *(var_20h);
    0x00046ac8 addiu sp, sp, 0x28            |             
    0x00046acc jr ra                         |             return v0;
                                             |         }
    0x00046ad0 sw a2, (a1)                   |         *(a1) = a2;
    0x00046ad4 jr ra                         |         return v0;
                                             |     }
    0x00046ad8 jr ra                         |     return v0;
    0x00046adc nop                           |     
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x49024 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.00049024 ()                  | void fcn_00049024 () {
    0x00049024 lui gp, 6                     |     
    0x00049028 addiu gp, gp, -0x6104         |     
    0x0004902c addu gp, gp, t9               |     gp += t9;
    0x00049030 addiu sp, sp, -0x160          |     
    0x00049034 sw s2, 0x140(sp)              |     *(var_140h) = s2;
    0x00049038 lw s2, -0x7534(gp)            |     s2 = *(gp);
    0x0004903c sw s1, 0x13c(sp)              |     *(var_13ch) = s1;
    0x00049040 move s1, a0                   |     s1 = a0;
    0x00049044 lw v0, (s2)                   |     v0 = *(s2);
    0x00049048 lw a0, 0xc(a1)                |     a0 = *((a1 + 3));
    0x0004904c sw gp, 0x20(sp)               |     *(var_20h) = gp;
    0x00049050 sw s3, 0x144(sp)              |     *(var_144h) = s3;
    0x00049054 sw s0, 0x138(sp)              |     *(var_138h) = s0;
    0x00049058 sw ra, 0x15c(sp)              |     *(var_15ch) = ra;
    0x0004905c sw fp, 0x158(sp)              |     *(var_158h) = fp;
    0x00049060 sw s7, 0x154(sp)              |     *(var_154h) = s7;
    0x00049064 sw s6, 0x150(sp)              |     *(var_150h) = s6;
    0x00049068 sw s5, 0x14c(sp)              |     *(var_14ch) = s5;
    0x0004906c sw s4, 0x148(sp)              |     *(var_148h) = s4;
    0x00049070 move s0, a1                   |     s0 = a1;
    0x00049074 move s3, a2                   |     s3 = a2;
    0x00049078 sw a3, 0x2c(sp)               |     *(var_2ch) = a3;
    0x0004907c sw v0, 0x134(sp)              |     *(var_134h) = v0;
    0x00049080 lw t9, -0x7668(gp)            |     t9 = sym.imp.apr_table_get;
                                             |     if (a0 == 0) {
    0x00049084 beqz a0, 0x490cc              |         goto label_2;
                                             |     }
    0x00049088 lw a1, (s1)                   |     a1 = *(s1);
    0x0004908c jalr t9                       |     t9 ();
    0x00049090 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 == 0) {
    0x00049094 beqz v0, 0x490cc              |         goto label_2;
                                             |     }
    0x00049098 lw v0, 0x10(s1)               |     v0 = *((s1 + 4));
                                             |     do {
    0x0004909c lw a0, 8(s1)                  |         a0 = *((s1 + 2));
    0x000490a0 sltiu v1, v0, 0xd             |         v1 = (v0 < 0xd) ? 1 : 0;
    0x000490a4 sw a0, (s0)                   |         *(s0) = a0;
    0x000490a8 sw s1, 0x38(s0)               |         *((s0 + 14)) = s1;
                                             |         if (v1 == 0) {
    0x000490ac beqz v1, 0x496bc              |             goto label_3;
                                             |         }
    0x000490b0 sll v1, v0, 2                 |         v1 = v0 << 2;
    0x000490b4 lw v0, -0x7fac(gp)            |         v0 = *(gp);
    0x000490b8 addiu v0, v0, 0xc20           |         v0 += 0xc20;
    0x000490bc lwx v0, v1(v0)                |         __asm ("lwx v0, v1(v0)");
    0x000490c0 addu v0, v0, gp               |         v0 += gp;
    0x000490c4 jr v0                         |         v0 ();
    0x000490c8 nop                           |         
                                             | label_2:
    0x000490cc lw v0, 4(s0)                  |         v0 = *((s0 + 1));
    0x000490d0 lw v1, 0xc(s1)                |         v1 = *((s1 + 3));
    0x000490d4 and v1, v0, v1                |         v1 = v0 & v1;
    0x000490d8 lw v0, 0x10(s1)               |         v0 = *((s1 + 4));
    0x000490dc bnel v1, zero, 0x4909c        |         
                                             |     } while (v1 == 0);
    0x000490e0 andi v0, v0, 0x200            |     v0 &= segment.REGINFO;
    0x000490e4 lw a1, (s1)                   |     a1 = *(s1);
                                             |     if (v0 != 0) {
    0x000490e8 bnez v0, 0x499e8              |         goto label_4;
                                             |     }
    0x000490ec lw v0, 0x24(s0)               |     v0 = *((s0 + 9));
    0x000490f0 lw a0, 0x28(s0)               |     a0 = *((s0 + 10));
                                             |     if (v0 == 0) {
    0x000490f4 beqz v0, 0x49178              |         goto label_5;
                                             |     }
    0x000490f8 lw v0, 0x10(v0)               |     v0 = *((v0 + 4));
    0x000490fc lw t9, -0x76e8(gp)            |     t9 = sym.imp.apr_pstrcat
                                             |     if (v0 == 0) {
    0x00049100 beqz v0, 0x49178              |         goto label_5;
                                             |     }
    0x00049104 lw a3, (v0)                   |     a3 = *(v0);
    0x00049108 lw v0, -0x7fac(gp)            |     v0 = *(gp);
    0x0004910c lw a2, -0x7fac(gp)            |     a2 = *(gp);
                                             |     /* esilref: ' context' */
    0x00049110 addiu v0, v0, -0x6c8          |     v0 += -aav.0x000006c8;
    0x00049114 sw v0, 0x14(sp)               |     *(var_14h) = v0;
    0x00049118 lw v0, -0x7fac(gp)            |     v0 = *(gp);
    0x0004911c addiu v0, v0, 0xb98           |     v0 += 0xb98;
    0x00049120 sw zero, 0x18(sp)             |     *(var_18h) = 0;
    0x00049124 sw v0, 0x10(sp)               |     *(var_10h) = v0;
                                             |     /* str._not_allowed_in_ */
    0x00049128 addiu a2, a2, 0x264           |     a2 += aav.0x00000264;
    0x0004912c jalr t9                       |     t9 ();
    0x00049130 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00049134 move s4, v0                   |     s4 = v0;
                                             |     do {
                                             | label_0:
    0x00049138 lw a0, 0x134(sp)              |         a0 = *(var_134h);
    0x0004913c lw v1, (s2)                   |         v1 = *(s2);
    0x00049140 move v0, s4                   |         v0 = s4;
                                             |         if (a0 != v1) {
    0x00049144 bne a0, v1, 0x49a74           |             goto label_6;
                                             |         }
    0x00049148 lw ra, 0x15c(sp)              |         ra = *(var_15ch);
    0x0004914c lw fp, 0x158(sp)              |         fp = *(var_158h);
    0x00049150 lw s7, 0x154(sp)              |         s7 = *(var_154h);
    0x00049154 lw s6, 0x150(sp)              |         s6 = *(var_150h);
    0x00049158 lw s5, 0x14c(sp)              |         s5 = *(var_14ch);
    0x0004915c lw s4, 0x148(sp)              |         s4 = *(var_148h);
    0x00049160 lw s3, 0x144(sp)              |         s3 = *(var_144h);
    0x00049164 lw s2, 0x140(sp)              |         s2 = *(var_140h);
    0x00049168 lw s1, 0x13c(sp)              |         s1 = *(var_13ch);
    0x0004916c lw s0, 0x138(sp)              |         s0 = *(var_138h);
    0x00049170 addiu sp, sp, 0x160           |         
    0x00049174 jr ra                         |         return v0;
                                             | label_5:
    0x00049178 lw a2, -0x7fac(gp)            |         a2 = *(gp);
    0x0004917c lw t9, -0x76e8(gp)            |         t9 = sym.imp.apr_pstrcat
    0x00049180 move a3, zero                 |         a3 = 0;
                                             |         /* str._not_allowed_here */
    0x00049184 addiu a2, a2, -0x4d04         |         a2 += -0x4d04;
    0x00049188 jalr t9                       |         t9 ();
    0x0004918c move s4, v0                   |         s4 = v0;
    0x00049190 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x00049194 b 0x49138                     |         
                                             |     } while (1);
                                             |     do {
    0x00049670 move a3, s6                   |         a3 = s6;
    0x00049674 sw v0, 0x10(sp)               |         *(var_10h) = v0;
    0x00049678 move a2, s5                   |         a2 = s5;
    0x0004967c move a1, s3                   |         a1 = s3;
    0x00049680 move a0, s0                   |         a0 = s0;
    0x00049684 jalr t9                       |         t9 ();
    0x00049688 move s4, v0                   |         s4 = v0;
    0x0004968c lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x00049690 b 0x49138                     |         goto label_0;
                                             | label_3:
    0x000496bc lw a2, -0x7fac(gp)            |         a2 = *(gp);
    0x000496c0 lw t9, -0x76e8(gp)            |         t9 = sym.imp.apr_pstrcat
    0x000496c4 lw a1, (s1)                   |         a1 = *(s1);
    0x000496c8 lw a0, 0x28(s0)               |         a0 = *((s0 + 10));
    0x000496cc move a3, zero                 |         a3 = 0;
                                             |         /* str._is_improperly_configured_internally__server_bug_ */
    0x000496d0 addiu a2, a2, 0x3a8           |         a2 += aav.0x000003a8;
    0x000496d4 jalr t9                       |         t9 ();
    0x000496d8 move s4, v0                   |         s4 = v0;
    0x000496dc lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x000496e0 b 0x49138                     |         goto label_0;
                                             | label_1:
    0x000498c4 lb v1, (s5)                   |         v1 = *(s5);
                                             |         if (v1 == 0) {
    0x000498c8 beql v1, zero, 0x498fc        |             goto label_7;
                                             |         }
    0x000498cc lw v0, 0x14(s1)               |         v0 = *((s1 + 5));
    0x000498d0 lw v1, 0x2c(sp)               |         v1 = *(var_2ch);
                                             |         if (s6 != 0) {
    0x000498d4 beqz s6, 0x498ec              |             
    0x000498d8 lb v1, (s6)                   |             v1 = *(s6);
    0x000498dc lw v1, 0x2c(sp)               |             v1 = *(var_2ch);
                                             |             if (v1 == 0) {
    0x000498e0 beqz v1, 0x498ec              |                 goto label_8;
                                             |             }
                                             |             if (v0 == 0) {
    0x000498e4 beql v0, zero, 0x498fc        |                 goto label_7;
                                             |             }
    0x000498e8 lw v0, 0x14(s1)               |             v0 = *((s1 + 5));
                                             |         }
                                             | label_8:
    0x000498ec lb v1, (v1)                   |         v1 = *(v1);
    0x000498f0 beql v1, zero, 0x49670        |         
                                             |     } while (v1 == 0);
    0x000498f4 lw t9, 4(s1)                  |     t9 = *((s1 + 1));
    0x000498f8 lw v0, 0x14(s1)               |     v0 = *((s1 + 5));
                                             | label_7:
    0x000498fc lw a0, 0x28(s0)               |     a0 = *((s0 + 10));
    0x00049900 lw a1, (s1)                   |     a1 = *(s1);
                                             |     if (v0 == 0) {
    0x00049904 beqz v0, 0x49a44              |         goto label_9;
                                             |     }
    0x00049908 lw a3, -0x7fac(gp)            |     a3 = *(gp);
                                             |     /* esilref: ', ' */
    0x0004990c addiu a3, a3, -0x588          |     a3 += -aav.0x00000588;
                                             |     do {
    0x00049910 lw a2, -0x7fac(gp)            |         a2 = *(gp);
    0x00049914 lw t9, -0x76e8(gp)            |         t9 = sym.imp.apr_pstrcat
    0x00049918 sw zero, 0x14(sp)             |         *(var_14h) = 0;
    0x0004991c sw v0, 0x10(sp)               |         *(var_10h) = v0;
                                             |         /* str._takes_one_or_three_arguments */
    0x00049920 addiu a2, a2, 0x32c           |         a2 += aav.0x0000032c;
    0x00049924 jalr t9                       |         t9 ();
    0x00049928 move s4, v0                   |         s4 = v0;
    0x0004992c lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x00049930 b 0x49138                     |         goto label_0;
                                             | label_4:
    0x000499e8 lw v0, -0x7fac(gp)            |         v0 = *(gp);
    0x000499ec lw v1, 0x2c(s0)               |         v1 = *((s0 + 11));
    0x000499f0 lw a0, -0x7fac(gp)            |         a0 = *(gp);
    0x000499f4 lw t9, -0x7ec8(gp)            |         t9 = sym.ap_log_perror_;
                                             |         /* str.AH02295:__s_in_.htaccess_forbidden_by_AllowOverride */
    0x000499f8 addiu v0, v0, 0x230           |         v0 += aav.0x00000230;
    0x000499fc sw a1, 0x1c(sp)               |         *(var_1ch) = a1;
    0x00049a00 sw v0, 0x18(sp)               |         *(var_18h) = v0;
    0x00049a04 sw v1, 0x14(sp)               |         *(var_14h) = v1;
    0x00049a08 sw zero, 0x10(sp)             |         *(var_10h) = 0;
    0x00049a0c addiu a3, zero, 4             |         a3 = 4;
    0x00049a10 move a2, zero                 |         a2 = 0;
    0x00049a14 addiu a1, zero, 0x365         |         a1 = 0x365;
                                             |         /* str._usr_src_debug_apache2_2.4.57_r0_httpd_2.4.57_server_config.c */
    0x00049a18 addiu a0, a0, 0x1f0           |         a0 += aav.0x000001f0;
    0x00049a1c bal 0x52cec                   |         sym_ap_log_perror_ ();
    0x00049a20 move s4, zero                 |         s4 = 0;
    0x00049a24 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x00049a28 b 0x49138                     |         goto label_0;
                                             | label_9:
    0x00049a44 move a3, zero                 |         a3 = 0;
    0x00049a48 b 0x49910                     |         
                                             |     } while (1);
                                             | label_6:
    0x00049a74 lw t9, -0x75e8(gp)            |     t9 = sym.imp.__stack_chk_fail;
    0x00049a78 jalr t9                       |     t9 ();
    0x00049a7c nop                           |     
    0x00049a80 move v0, zero                 |     v0 = 0;
    0x00049a84 b 0x498c4                     |     goto label_1;
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x4cf90 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.0004cf90 ()                  | void fcn_0004cf90 () {
    0x0004cf90 lui gp, 5                     |     
    0x0004cf94 addiu gp, gp, 0x5f90          |     
    0x0004cf98 addu gp, gp, t9               |     gp += t9;
    0x0004cf9c addiu sp, sp, -0x98           |     
    0x0004cfa0 lw v0, -0x7f14(gp)            |     v0 = *((gp - 8133));
    0x0004cfa4 sw s2, 0x84(sp)               |     *(var_84h) = s2;
    0x0004cfa8 lw s2, -0x7534(gp)            |     s2 = *(gp);
    0x0004cfac lw v0, -0x3c50(v0)            |     v0 = *((v0 - 3860));
    0x0004cfb0 sw gp, 0x18(sp)               |     *(var_18h) = gp;
    0x0004cfb4 lw v1, (s2)                   |     v1 = *(s2);
    0x0004cfb8 sw s5, 0x90(sp)               |     *(var_90h) = s5;
    0x0004cfbc sw s4, 0x8c(sp)               |     *(var_8ch) = s4;
    0x0004cfc0 sw s1, 0x80(sp)               |     *(var_80h) = s1;
    0x0004cfc4 sw s0, 0x7c(sp)               |     *(var_7ch) = s0;
    0x0004cfc8 sw ra, 0x94(sp)               |     *(var_94h) = ra;
    0x0004cfcc sw s3, 0x88(sp)               |     *(var_88h) = s3;
    0x0004cfd0 move s5, a0                   |     s5 = a0;
    0x0004cfd4 move s1, a2                   |     s1 = a2;
    0x0004cfd8 move s0, a3                   |     s0 = a3;
    0x0004cfdc lw s4, 0xa8(sp)               |     s4 = *(var_a8h);
    0x0004cfe0 sw v1, 0x74(sp)               |     *(var_74h_2) = v1;
    0x0004cfe4 sw zero, 0x24(sp)             |     *(var_24h) = 0;
    0x0004cfe8 sw a1, 0x20(sp)               |     *(var_20h_2) = a1;
                                             |     if (v0 == 0) {
    0x0004cfec beqz v0, 0x4d124              |         goto label_1;
                                             |     }
                                             | label_0:
    0x0004cff0 lw v0, -0x7fac(gp)            |     v0 = *(gp);
    0x0004cff4 addiu s3, sp, 0x28            |     s3 = sp + 0x28;
    0x0004cff8 addiu v0, v0, 0xc58           |     v0 += 0xc58;
    0x0004cffc move v1, s3                   |     v1 = s3;
    0x0004d000 addiu a0, v0, 0x40            |     a0 = v0 + 0x40;
                                             |     do {
    0x0004d004 lw t0, (v0)                   |         t0 = *(v0);
    0x0004d008 lw a3, 4(v0)                  |         a3 = *((v0 + 1));
    0x0004d00c lw a2, 8(v0)                  |         a2 = *((v0 + 2));
    0x0004d010 lw a1, 0xc(v0)                |         a1 = *((v0 + 3));
    0x0004d014 addiu v0, v0, 0x10            |         v0 += 0x10;
    0x0004d018 sw t0, (v1)                   |         *(v1) = t0;
    0x0004d01c sw a3, 4(v1)                  |         *((v1 + 1)) = a3;
    0x0004d020 sw a2, 8(v1)                  |         *((v1 + 2)) = a2;
    0x0004d024 sw a1, 0xc(v1)                |         *((v1 + 3)) = a1;
    0x0004d028 addiu v1, v1, 0x10            |         v1 += 0x10;
    0x0004d02c bne v0, a0, 0x4d004           |         
                                             |     } while (v0 != a0);
    0x0004d030 lw a0, (v0)                   |     a0 = *(v0);
    0x0004d034 lw v0, 4(v0)                  |     v0 = *((v0 + 1));
    0x0004d038 sw a0, (v1)                   |     *(v1) = a0;
    0x0004d03c sw v0, 4(v1)                  |     *((v1 + 1)) = v0;
    0x0004d040 lw v0, -0x7a1c(gp)            |     v0 = *(gp);
    0x0004d044 lw a1, -0x7fac(gp)            |     a1 = *(gp);
    0x0004d048 addiu v0, v0, -0x71b0         |     v0 += -0x71b0;
    0x0004d04c sw v0, 0x14(sp)               |     *(var_14h) = v0;
    0x0004d050 lw v0, -0x7a1c(gp)            |     v0 = *(gp);
    0x0004d054 lw t9, -0x79e4(gp)            |     t9 = sym.ap_pcfg_open_custom;
    0x0004d058 addiu v0, v0, -0x6578         |     v0 += -0x6578;
    0x0004d05c sw v0, 0x10(sp)               |     *(var_10h) = v0;
    0x0004d060 addiu v0, zero, 0x96          |     v0 = 0x96;
    0x0004d064 sw v0, 0x2c(sp)               |     *(var_2ch_2) = v0;
    0x0004d068 addiu v0, zero, 0xef          |     v0 = 0xef;
    0x0004d06c move a3, zero                 |     a3 = 0;
    0x0004d070 addiu a2, sp, 0x20            |     a2 = sp + 0x20;
                                             |     /* str._c__C_directives */
    0x0004d074 addiu a1, a1, 0x7e4           |     a1 += aav.0x000007e4;
    0x0004d078 move a0, s0                   |     a0 = s0;
    0x0004d07c sw s0, 0x50(sp)               |     *(var_50h_2) = s0;
    0x0004d080 sw s4, 0x54(sp)               |     *(var_54h_2) = s4;
    0x0004d084 sw s5, 0x58(sp)               |     *(var_58h_2) = s5;
    0x0004d088 sw v0, 0x30(sp)               |     *(var_30h_2) = v0;
    0x0004d08c jalr t9                       |     t9 ();
    0x0004d090 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0004d094 move a3, s1                   |     a3 = s1;
    0x0004d098 move a2, s4                   |     a2 = s4;
    0x0004d09c lw t9, -0x79e0(gp)            |     t9 = sym.ap_build_config;
    0x0004d0a0 move a1, s0                   |     a1 = s0;
    0x0004d0a4 move a0, s3                   |     a0 = s3;
    0x0004d0a8 sw v0, 0x48(sp)               |     *(var_48h) = v0;
    0x0004d0ac bal 0x4cce8                   |     sym_ap_build_config ();
    0x0004d0b0 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0004d0b4 lw a0, 0x48(sp)               |     a0 = *(var_48h);
    0x0004d0b8 lw t9, -0x79dc(gp)            |     t9 = sym.ap_cfg_closefile;
    0x0004d0bc move s1, v0                   |     s1 = v0;
    0x0004d0c0 jalr t9                       |     t9 ();
    0x0004d0c4 lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     if (s1 != 0) {
    0x0004d0c8 beqz s1, 0x4d0f0              |         
    0x0004d0cc lw a1, -0x7fac(gp)            |         a1 = *(gp);
    0x0004d0d0 lw t9, -0x76e8(gp)            |         t9 = sym.imp.apr_pstrcat
    0x0004d0d4 move a2, s1                   |         a2 = s1;
    0x0004d0d8 move a3, zero                 |         a3 = 0;
                                             |         /* str.Syntax_error_in__C__c_directive:_ */
    0x0004d0dc addiu a1, a1, 0x7f8           |         a1 += 0x7f8;
    0x0004d0e0 move a0, s0                   |         a0 = s0;
    0x0004d0e4 jalr t9                       |         t9 ();
    0x0004d0e8 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x0004d0ec move s1, v0                   |         s1 = v0;
                                             |     }
    0x0004d0f0 lw a0, 0x74(sp)               |     a0 = *(var_74h_2);
    0x0004d0f4 lw v1, (s2)                   |     v1 = *(s2);
    0x0004d0f8 move v0, s1                   |     v0 = s1;
                                             |     if (a0 == v1) {
    0x0004d0fc bne a0, v1, 0x4d144           |         
    0x0004d100 lw ra, 0x94(sp)               |         ra = *(var_94h);
    0x0004d104 lw s5, 0x90(sp)               |         s5 = *(var_90h);
    0x0004d108 lw s4, 0x8c(sp)               |         s4 = *(var_8ch);
    0x0004d10c lw s3, 0x88(sp)               |         s3 = *(var_88h);
    0x0004d110 lw s2, 0x84(sp)               |         s2 = *(var_84h);
    0x0004d114 lw s1, 0x80(sp)               |         s1 = *(var_80h);
    0x0004d118 lw s0, 0x7c(sp)               |         s0 = *(var_7ch);
    0x0004d11c addiu sp, sp, 0x98            |         
    0x0004d120 jr ra                         |         return v0;
                                             | label_1:
    0x0004d124 lw v0, (a0)                   |         v0 = *(a0);
    0x0004d128 lw t9, -0x7a1c(gp)            |         t9 = *(gp);
    0x0004d12c addiu a1, zero, 1             |         a1 = 1;
                                             |         /* fcn.00049b1c */
    0x0004d130 addiu t9, t9, -0x64e4         |         t9 += -0x64e4;
    0x0004d134 lw a0, 4(v0)                  |         a0 = *((v0 + 1));
    0x0004d138 bal 0x49b1c                   |         fcn_00049b1c ();
    0x0004d13c lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x0004d140 b 0x4cff0                     |         goto label_0;
                                             |     }
    0x0004d144 lw t9, -0x75e8(gp)            |     t9 = sym.imp.__stack_chk_fail;
    0x0004d148 jalr t9                       |     t9 ();
    0x0004d14c nop                           |     
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x59ebc */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.00059ebc ()                  | void fcn_00059ebc () {
    0x00059ebc lui gp, 5                     |     
    0x00059ec0 addiu gp, gp, -0x6f9c         |     
    0x00059ec4 addu gp, gp, t9               |     gp += t9;
    0x00059ec8 addiu sp, sp, -0x40           |     
    0x00059ecc lw v0, 0xc(a1)                |     v0 = *((a1 + 3));
    0x00059ed0 sw gp, 0x20(sp)               |     *(var_20h) = gp;
    0x00059ed4 sw s2, 0x38(sp)               |     *(var_38h) = s2;
    0x00059ed8 sw s1, 0x34(sp)               |     *(var_34h) = s1;
    0x00059edc sw s0, 0x30(sp)               |     *(var_30h) = s0;
    0x00059ee0 sw ra, 0x3c(sp)               |     *(var_3ch) = ra;
    0x00059ee4 move s1, a1                   |     s1 = a1;
    0x00059ee8 move s0, a0                   |     s0 = a0;
    0x00059eec move s2, a2                   |     s2 = a2;
                                             |     if (v0 == 0) {
    0x00059ef0 beqz v0, 0x59f5c              |         goto label_1;
                                             |     }
    0x00059ef4 lw v0, -0x7fac(gp)            |     v0 = *(gp);
    0x00059ef8 lw a1, 0x14(s1)               |     a1 = *((s1 + 5));
    0x00059efc addiu v0, v0, 0x47dc          |     v0 += 0x47dc;
                                             |     if (a3 == 0) {
    0x00059f00 beqz a3, 0x59f94              |         goto label_2;
                                             |     }
                                             |     do {
    0x00059f04 lw v1, -0x7fac(gp)            |         v1 = *(gp);
    0x00059f08 addiu v1, v1, -0x7d4          |         v1 += -aav.0x000007d4;
                                             | label_0:
    0x00059f0c lw a2, -0x7fac(gp)            |         a2 = *(gp);
    0x00059f10 lw t9, -0x76e8(gp)            |         t9 = sym.imp.apr_pstrcat
    0x00059f14 move a0, s0                   |         a0 = s0;
    0x00059f18 sw a3, 0x14(sp)               |         *(var_14h) = a3;
    0x00059f1c sw zero, 0x1c(sp)             |         *(var_1ch) = 0;
    0x00059f20 sw v0, 0x18(sp)               |         *(var_18h) = v0;
    0x00059f24 sw v1, 0x10(sp)               |         *(var_10h) = v1;
    0x00059f28 move a3, s2                   |         a3 = s2;
    0x00059f2c addiu a2, a2, -0x6a2c         |         a2 += -0x6a2c;
    0x00059f30 jalr t9                       |         t9 ();
    0x00059f34 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x00059f38 lw ra, 0x3c(sp)               |         ra = *(var_3ch);
    0x00059f3c lw s2, 0x38(sp)               |         s2 = *(var_38h);
    0x00059f40 lw s1, 0x34(sp)               |         s1 = *(var_34h);
    0x00059f44 move a0, s0                   |         a0 = s0;
    0x00059f48 lw t9, -0x7e50(gp)            |         t9 = sym.ap_server_root_relative;
    0x00059f4c lw s0, 0x30(sp)               |         s0 = *(var_30h);
    0x00059f50 move a1, v0                   |         a1 = v0;
    0x00059f54 addiu sp, sp, 0x40            |         
    0x00059f58 b 0x4d3e0                     |         void (*0x4d3e0)() ();
                                             | label_1:
    0x00059f5c lw t9, -0x7224(gp)            |         t9 = sym.imp.getpid;
    0x00059f60 sw a3, 0x2c(sp)               |         *(var_2ch) = a3;
    0x00059f64 jalr t9                       |         t9 ();
    0x00059f68 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x00059f6c move a2, v0                   |         a2 = v0;
    0x00059f70 move a0, s0                   |         a0 = s0;
    0x00059f74 lw a1, -0x7fac(gp)            |         a1 = *(gp);
    0x00059f78 lw t9, -0x7540(gp)            |         t9 = sym.imp.apr_psprintf;
                                             |         /* esilref: '.&d' */
    0x00059f7c addiu a1, a1, 0x202c          |         a1 += aav.0x0000202c;
    0x00059f80 jalr t9                       |         t9 ();
    0x00059f84 lw a3, 0x2c(sp)               |         a3 = *(var_2ch);
    0x00059f88 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x00059f8c lw a1, 0x14(s1)               |         a1 = *((s1 + 5));
    0x00059f90 bnez a3, 0x59f04              |         
                                             |     } while (a3 != 0);
                                             | label_2:
    0x00059f94 lw a3, -0x7fac(gp)            |     a3 = *(gp);
    0x00059f98 addiu a3, a3, 0x47dc          |     a3 += 0x47dc;
    0x00059f9c move v1, a3                   |     v1 = a3;
    0x00059fa0 b 0x59f0c                     |     goto label_0;
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x5b184 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.0005b184 ()                  | void fcn_0005b184 () {
    0x0005b184 lui gp, 4                     |     
    0x0005b188 addiu gp, gp, 0x7d9c          |     
    0x0005b18c addu gp, gp, t9               |     gp += t9;
    0x0005b190 addiu sp, sp, -0x50           |     
    0x0005b194 lw t9, -0x737c(gp)            |     t9 = sym.imp.apr_pool_create_ex;
    0x0005b198 sw s2, 0x44(sp)               |     *(var_44h) = s2;
    0x0005b19c lw s2, -0x7534(gp)            |     s2 = *(gp);
    0x0005b1a0 sw gp, 0x20(sp)               |     *(var_20h) = gp;
    0x0005b1a4 sw s1, 0x40(sp)               |     *(var_40h) = s1;
    0x0005b1a8 lw v0, (s2)                   |     v0 = *(s2);
    0x0005b1ac move a1, a0                   |     a1 = a0;
    0x0005b1b0 sw ra, 0x4c(sp)               |     *(var_4ch) = ra;
    0x0005b1b4 sw s3, 0x48(sp)               |     *(var_48h) = s3;
    0x0005b1b8 sw s0, 0x3c(sp)               |     *(var_3ch) = s0;
    0x0005b1bc move a3, zero                 |     a3 = 0;
    0x0005b1c0 move a2, zero                 |     a2 = 0;
    0x0005b1c4 addiu a0, sp, 0x2c            |     a0 = sp + 0x2c;
    0x0005b1c8 sw v0, 0x34(sp)               |     *(var_34h) = v0;
    0x0005b1cc jalr t9                       |     t9 ();
    0x0005b1d0 nop                           |     
    0x0005b1d4 move s1, v0                   |     s1 = v0;
    0x0005b1d8 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 != 0) {
    0x0005b1dc beqz v0, 0x5b20c              |         
                                             | label_0:
    0x0005b1e0 lw a0, 0x34(sp)               |         a0 = *(var_34h);
    0x0005b1e4 lw v1, (s2)                   |         v1 = *(s2);
    0x0005b1e8 move v0, s1                   |         v0 = s1;
                                             |         if (a0 != v1) {
    0x0005b1ec bne a0, v1, 0x5b4b8           |             goto label_5;
                                             |         }
    0x0005b1f0 lw ra, 0x4c(sp)               |         ra = *(var_4ch);
    0x0005b1f4 lw s3, 0x48(sp)               |         s3 = *(var_48h);
    0x0005b1f8 lw s2, 0x44(sp)               |         s2 = *(var_44h);
    0x0005b1fc lw s1, 0x40(sp)               |         s1 = *(var_40h);
    0x0005b200 lw s0, 0x3c(sp)               |         s0 = *(var_3ch);
    0x0005b204 addiu sp, sp, 0x50            |         
    0x0005b208 jr ra                         |         return v0;
                                             |     }
    0x0005b20c lw s3, -0x794c(gp)            |     s3 = *(gp);
    0x0005b210 lw a1, -0x7fac(gp)            |     a1 = *(gp);
    0x0005b214 lw t9, -0x7698(gp)            |     t9 = sym.imp.apr_pool_tag;
    0x0005b218 lw a0, 0x2c(sp)               |     a0 = *(var_2ch);
                                             |     /* str.dummy_connection */
    0x0005b21c addiu a1, a1, 0x2378          |     a1 += 0x2378;
    0x0005b220 jalr t9                       |     t9 ();
    0x0005b224 lw s0, (s3)                   |     s0 = *(s3);
    0x0005b228 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (s0 == 0) {
    0x0005b22c beqz s0, 0x5b270              |         goto label_6;
                                             |     }
    0x0005b230 lw a0, 0x14(s0)               |     a0 = *((s0 + 5));
    0x0005b234 lw s1, -0x7fac(gp)            |     s1 = *(gp);
                                             |     if (a0 == 0) {
    0x0005b238 beqz a0, 0x5b270              |         goto label_6;
                                             |     }
                                             |     /* esilref: 'http' */
    0x0005b23c addiu s1, s1, 0x7828          |     s1 += 0x7828;
    0x0005b240 b 0x5b25c                     |     
                                             |     while (v0 != 0) {
    0x0005b244 lw s0, (s0)                   |         s0 = *(s0);
                                             |         if (s0 == 0) {
    0x0005b248 beql s0, zero, 0x5b270        |             goto label_6;
                                             |         }
    0x0005b24c lw s0, (s3)                   |         s0 = *(s3);
    0x0005b250 lw a0, 0x14(s0)               |         a0 = *((s0 + 5));
                                             |         if (a0 == 0) {
    0x0005b254 beql a0, zero, 0x5b274        |             goto label_7;
                                             |         }
    0x0005b258 lw v0, 8(s0)                  |         v0 = *((s0 + 2));
    0x0005b25c lw t9, -0x7e28(gp)            |         t9 = sym.ap_cstr_casecmp;
    0x0005b260 move a1, s1                   |         a1 = s1;
    0x0005b264 jalr t9                       |         t9 ();
    0x0005b268 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x0005b26c bnez v0, 0x5b244              |         
                                             |     }
                                             | label_6:
    0x0005b270 lw v0, 8(s0)                  |     v0 = *((s0 + 2));
                                             | label_7:
    0x0005b274 lw t9, -0x76ec(gp)            |     t9 = sym.imp.apr_socket_create;
    0x0005b278 move a3, zero                 |     a3 = 0;
    0x0005b27c lw a1, 0x10(v0)               |     a1 = *((v0 + 4));
    0x0005b280 lw v0, 0x2c(sp)               |     v0 = *(var_2ch);
    0x0005b284 addiu a2, zero, 2             |     a2 = 2;
    0x0005b288 sw v0, 0x10(sp)               |     *(var_10h) = v0;
    0x0005b28c addiu a0, sp, 0x28            |     a0 = sp + 0x28;
    0x0005b290 jalr t9                       |     t9 ();
    0x0005b294 move s1, v0                   |     s1 = v0;
    0x0005b298 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 != 0) {
    0x0005b29c bnez v0, 0x5b3f0              |         goto label_8;
                                             |     }
    0x0005b2a0 lw t9, -0x736c(gp)            |     t9 = sym.imp.apr_socket_timeout_set;
    0x0005b2a4 lw a0, 0x28(sp)               |     a0 = *(var_28h);
    0x0005b2a8 lui a2, 0x2d                  |     a2 = 0x2dc6c0;
    0x0005b2ac ori a2, a2, 0xc6c0            |     
    0x0005b2b0 move a3, zero                 |     a3 = 0;
    0x0005b2b4 jalr t9                       |     t9 ();
    0x0005b2b8 move s1, v0                   |     s1 = v0;
    0x0005b2bc lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 != 0) {
    0x0005b2c0 bnez v0, 0x5b430              |         goto label_9;
                                             |     }
    0x0005b2c4 lw t9, -0x7364(gp)            |     t9 = *(gp);
    0x0005b2c8 lw a1, 8(s0)                  |     a1 = *((s0 + 2));
    0x0005b2cc lw a0, 0x28(sp)               |     a0 = *(var_28h);
    0x0005b2d0 jalr t9                       |     t9 ();
    0x0005b2d4 move s1, v0                   |     s1 = v0;
    0x0005b2d8 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 != 0) {
    0x0005b2dc bnez v0, 0x5b38c              |         goto label_10;
                                             |     }
    0x0005b2e0 lw a0, 0x14(s0)               |     a0 = *((s0 + 5));
    0x0005b2e4 lw t9, -0x7e28(gp)            |     t9 = sym.ap_cstr_casecmp;
                                             |     if (a0 != 0) {
    0x0005b2e8 beqz a0, 0x5b300              |         
    0x0005b2ec lw a1, -0x7fac(gp)            |         a1 = *(gp);
                                             |         /* str.https */
    0x0005b2f0 addiu a1, a1, -0x47e8         |         a1 += -0x47e8;
    0x0005b2f4 jalr t9                       |         t9 ();
    0x0005b2f8 lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |         if (v0 == 0) {
    0x0005b2fc beqz v0, 0x5b470              |             goto label_11;
                                             |         }
                                             |     }
    0x0005b300 lw t9, -0x7fd8(gp)            |     t9 = sym.ap_get_server_description;
    0x0005b304 lw s0, 0x2c(sp)               |     s0 = *(var_2ch);
    0x0005b308 jalr t9                       |     t9 ();
    0x0005b30c lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0005b310 move a0, s0                   |     a0 = s0;
    0x0005b314 move a2, v0                   |     a2 = v0;
    0x0005b318 lw a3, -0x7fac(gp)            |     a3 = *(gp);
    0x0005b31c lw a1, -0x7fac(gp)            |     a1 = *(gp);
    0x0005b320 lw t9, -0x76e8(gp)            |     t9 = sym.imp.apr_pstrcat
                                             |     /* str.__internal_dummy_connection__r_n_r_n */
    0x0005b324 addiu a3, a3, 0x2414          |     a3 += 0x2414;
                                             |     /* str.OPTIONS__HTTP_1.0_r_nUser_Agent:_ */
    0x0005b328 addiu a1, a1, 0x2438          |     a1 += 0x2438;
    0x0005b32c sw zero, 0x10(sp)             |     *(var_10h) = 0;
    0x0005b330 jalr t9                       |     t9 ();
    0x0005b334 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0005b338 move a0, v0                   |     a0 = v0;
    0x0005b33c lw t9, -0x74c4(gp)            |     t9 = sym.imp.strlen;
    0x0005b340 move s0, v0                   |     s0 = v0;
    0x0005b344 jalr t9                       |     t9 ();
    0x0005b348 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0005b34c sw v0, 0x30(sp)               |     *(var_30h_2) = v0;
                                             | label_2:
    0x0005b350 lw t9, -0x74bc(gp)            |     t9 = sym.imp.apr_socket_send;
    0x0005b354 lw a0, 0x28(sp)               |     a0 = *(var_28h);
    0x0005b358 addiu a2, sp, 0x30            |     a2 = sp + 0x30;
    0x0005b35c move a1, s0                   |     a1 = s0;
    0x0005b360 jalr t9                       |     t9 ();
    0x0005b364 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             | label_1:
    0x0005b368 lw t9, -0x76f8(gp)            |     t9 = sym.imp.apr_socket_close;
    0x0005b36c lw a0, 0x28(sp)               |     a0 = *(var_28h);
    0x0005b370 jalr t9                       |     t9 ();
    0x0005b374 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     do {
    0x0005b378 lw t9, -0x7428(gp)            |         t9 = *(gp);
    0x0005b37c lw a0, 0x2c(sp)               |         a0 = *(var_2ch);
    0x0005b380 jalr t9                       |         t9 ();
    0x0005b384 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x0005b388 b 0x5b1e0                     |         goto label_0;
                                             | label_10:
    0x0005b38c lw v1, -0x7fc0(gp)            |         v1 = *(gp);
    0x0005b390 lui v0, 1                     |         v0 = 0x11177;
                                             |         /* esilref: 'us' */
    0x0005b394 addiu v0, v0, 0x1177          |         
    0x0005b398 lw v1, (v1)                   |         v1 = *(v1);
                                             |         if (s1 == v0) {
    0x0005b39c beq s1, v0, 0x5b484           |             goto label_12;
                                             |         }
    0x0005b3a0 addiu a3, zero, 4             |         a3 = 4;
                                             | label_3:
    0x0005b3a4 lw v0, 8(s0)                  |         v0 = *((s0 + 2));
    0x0005b3a8 lw a0, -0x7fac(gp)            |         a0 = *(gp);
    0x0005b3ac sw v0, 0x1c(sp)               |         *(var_1ch) = v0;
    0x0005b3b0 lw v0, -0x7fac(gp)            |         v0 = *(gp);
    0x0005b3b4 lw t9, -0x7fb0(gp)            |         t9 = sym.ap_log_error_;
                                             |         /* str.AH00056:_connect_to_listener_on__pI */
    0x0005b3b8 addiu v0, v0, 0x23f0          |         v0 += 0x23f0;
    0x0005b3bc sw v0, 0x18(sp)               |         *(var_18h) = v0;
    0x0005b3c0 sw v1, 0x14(sp)               |         *(var_14h) = v1;
    0x0005b3c4 sw s1, 0x10(sp)               |         *(var_10h) = s1;
    0x0005b3c8 move a2, zero                 |         a2 = 0;
    0x0005b3cc addiu a1, zero, 0x2ad         |         a1 = 0x2ad;
                                             |         /* str._usr_src_debug_apache2_2.4.57_r0_httpd_2.4.57_server_mpm_unix.c */
    0x0005b3d0 addiu a0, a0, 0x22a8          |         a0 += aav.0x000022a8;
    0x0005b3d4 bal 0x515e8                   |         sym_ap_log_error_ ();
    0x0005b3d8 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x0005b3dc lw t9, -0x7428(gp)            |         t9 = *(gp);
                                             | label_4:
    0x0005b3e0 lw a0, 0x2c(sp)               |         a0 = *(var_2ch);
    0x0005b3e4 jalr t9                       |         t9 ();
    0x0005b3e8 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x0005b3ec b 0x5b1e0                     |         goto label_0;
                                             | label_8:
    0x0005b3f0 lw v0, -0x7fc0(gp)            |         v0 = *(gp);
    0x0005b3f4 lw a0, -0x7fac(gp)            |         a0 = *(gp);
    0x0005b3f8 lw t9, -0x7fb0(gp)            |         t9 = sym.ap_log_error_;
    0x0005b3fc lw v1, (v0)                   |         v1 = *(v0);
    0x0005b400 lw v0, -0x7fac(gp)            |         v0 = *(gp);
    0x0005b404 addiu a3, zero, 4             |         a3 = 4;
                                             |         /* str.AH00054:_get_socket_to_connect_to_listener */
    0x0005b408 addiu v0, v0, 0x238c          |         v0 += 0x238c;
    0x0005b40c move a2, zero                 |         a2 = 0;
    0x0005b410 addiu a1, zero, 0x28c         |         a1 = aav.0x0000028c;
                                             |         /* str._usr_src_debug_apache2_2.4.57_r0_httpd_2.4.57_server_mpm_unix.c */
    0x0005b414 addiu a0, a0, 0x22a8          |         a0 += aav.0x000022a8;
    0x0005b418 sw v0, 0x18(sp)               |         *(var_18h) = v0;
    0x0005b41c sw v1, 0x14(sp)               |         *(var_14h) = v1;
    0x0005b420 sw s1, 0x10(sp)               |         *(var_10h) = s1;
    0x0005b424 bal 0x515e8                   |         sym_ap_log_error_ ();
    0x0005b428 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x0005b42c b 0x5b378                     |         
                                             |     } while (1);
                                             | label_9:
    0x0005b430 lw v0, -0x7fc0(gp)            |     v0 = *(gp);
    0x0005b434 lw a0, -0x7fac(gp)            |     a0 = *(gp);
    0x0005b438 lw t9, -0x7fb0(gp)            |     t9 = sym.ap_log_error_;
    0x0005b43c lw v1, (v0)                   |     v1 = *(v0);
    0x0005b440 lw v0, -0x7fac(gp)            |     v0 = *(gp);
    0x0005b444 addiu a3, zero, 4             |     a3 = 4;
                                             |     /* str.AH00055:_set_timeout_on_socket_to_connect_to_listener */
    0x0005b448 addiu v0, v0, 0x23b8          |     v0 += 0x23b8;
    0x0005b44c move a2, zero                 |     a2 = 0;
    0x0005b450 addiu a1, zero, 0x29a         |     a1 = 0x29a;
                                             |     /* str._usr_src_debug_apache2_2.4.57_r0_httpd_2.4.57_server_mpm_unix.c */
    0x0005b454 addiu a0, a0, 0x22a8          |     a0 += aav.0x000022a8;
    0x0005b458 sw v0, 0x18(sp)               |     *(var_18h) = v0;
    0x0005b45c sw v1, 0x14(sp)               |     *(var_14h) = v1;
    0x0005b460 sw s1, 0x10(sp)               |     *(var_10h) = s1;
    0x0005b464 bal 0x515e8                   |     sym_ap_log_error_ ();
    0x0005b468 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0005b46c b 0x5b368                     |     goto label_1;
                                             | label_11:
    0x0005b470 lw s0, -0x7fac(gp)            |     s0 = *(gp);
    0x0005b474 addiu v0, zero, 7             |     v0 = 7;
    0x0005b478 sw v0, 0x30(sp)               |     *(var_30h_2) = v0;
                                             |     /* aav.0x00082880 */
    0x0005b47c addiu s0, s0, 0x2880          |     s0 += 0x2880;
    0x0005b480 b 0x5b350                     |     goto label_2;
                                             | label_12:
    0x0005b484 addiu a3, zero, 7             |     a3 = 7;
                                             |     if (v1 == 0) {
    0x0005b488 beqz v1, 0x5b3a4              |         goto label_3;
                                             |     }
    0x0005b48c lw v0, 0x10(v1)               |     v0 = *((v1 + 4));
                                             |     if (v0 != 0) {
    0x0005b490 beql v0, zero, 0x5b4a4        |         
    0x0005b494 lw v0, 0x14(v1)               |         v0 = *((v1 + 5));
    0x0005b498 lb v0, (v0)                   |         v0 = *(v0);
                                             |         if (v0 < 0) {
    0x0005b49c bltzl v0, 0x5b4a4             |             goto label_13;
                                             |         }
    0x0005b4a0 lw v0, 0x14(v1)               |         v0 = *((v1 + 5));
                                             |     }
                                             | label_13:
    0x0005b4a4 slti v0, v0, 7                |     v0 = (v0 < 7) ? 1 : 0;
    0x0005b4a8 lw t9, -0x7428(gp)            |     t9 = *(gp);
                                             |     if (v0 != 0) {
    0x0005b4ac bnez v0, 0x5b3e0              |         goto label_4;
                                             |     }
    0x0005b4b0 addiu a3, zero, 7             |     a3 = 7;
    0x0005b4b4 b 0x5b3a4                     |     goto label_3;
                                             | label_5:
    0x0005b4b8 lw t9, -0x75e8(gp)            |     t9 = sym.imp.__stack_chk_fail;
    0x0005b4bc jalr t9                       |     t9 ();
    0x0005b4c0 nop                           |     
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x62c50 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.00062c50 ()                  | void fcn_00062c50 () {
    0x00062c50 lui gp, 4                     |     
    0x00062c54 addiu gp, gp, 0x2d0           |     
    0x00062c58 addu gp, gp, t9               |     gp += t9;
    0x00062c5c addiu sp, sp, -0x148          |     
    0x00062c60 lw t9, -0x7e50(gp)            |     t9 = sym.ap_server_root_relative;
    0x00062c64 sw s3, 0x138(sp)              |     *(var_138h) = s3;
    0x00062c68 lw s3, -0x7534(gp)            |     s3 = *(gp);
    0x00062c6c sw s1, 0x130(sp)              |     *(var_130h) = s1;
    0x00062c70 move s1, a0                   |     s1 = a0;
    0x00062c74 lw v0, (s3)                   |     v0 = *(s3);
    0x00062c78 lw a0, 0x2c(a0)               |     a0 = *((a0 + 11));
    0x00062c7c sw gp, 0x18(sp)               |     *(var_18h) = gp;
    0x00062c80 sw s5, 0x140(sp)              |     *(var_140h) = s5;
    0x00062c84 sw s4, 0x13c(sp)              |     *(var_13ch) = s4;
    0x00062c88 sw s2, 0x134(sp)              |     *(var_134h) = s2;
    0x00062c8c sw s0, 0x12c(sp)              |     *(var_12ch) = s0;
    0x00062c90 sw ra, 0x144(sp)              |     *(var_144h) = ra;
    0x00062c94 move s4, a1                   |     s4 = a1;
    0x00062c98 sw v0, 0x124(sp)              |     *(var_124h) = v0;
    0x00062c9c move a1, a2                   |     a1 = a2;
    0x00062ca0 move s0, a2                   |     s0 = a2;
    0x00062ca4 move s5, a3                   |     s5 = a3;
    0x00062ca8 bal 0x4d3e0                   |     sym_ap_server_root_relative ();
    0x00062cac move s2, v0                   |     s2 = v0;
    0x00062cb0 lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     if (s0 != 0) {
    0x00062cb4 beqz s0, 0x62cd0              |         
    0x00062cb8 lw t9, -0x72b8(gp)            |         t9 = sym.imp.strchr;
    0x00062cbc addiu a1, zero, 0x2f          |         a1 = 0x2f;
    0x00062cc0 move a0, s0                   |         a0 = s0;
    0x00062cc4 jalr t9                       |         t9 ();
    0x00062cc8 lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             |         if (v0 == 0) {
    0x00062ccc beqz v0, 0x62d6c              |             goto label_2;
                                             |         }
                                             |     }
    0x00062cd0 lw t9, -0x7750(gp)            |     t9 = sym.imp.apr_dso_load;
                                             |     if (s2 == 0) {
    0x00062cd4 beqz s2, 0x62d9c              |         goto label_3;
                                             |     }
    0x00062cd8 lw a2, 0x28(s1)               |     a2 = *((s1 + 10));
    0x00062cdc move a1, s2                   |     a1 = s2;
    0x00062ce0 sw s2, (s5)                   |     *(s5) = s2;
    0x00062ce4 move a0, s4                   |     a0 = s4;
    0x00062ce8 jalr t9                       |     t9 ();
    0x00062cec lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     if (v0 == 0) {
    0x00062cf0 beqz v0, 0x62d94              |         goto label_4;
                                             |     }
                                             |     do {
    0x00062cf4 lw t9, -0x77a4(gp)            |         t9 = *(gp);
    0x00062cf8 lw a0, (s4)                   |         a0 = *(s4);
    0x00062cfc addiu a2, zero, 0x100         |         a2 = aav.0x00000100;
    0x00062d00 addiu a1, sp, 0x24            |         a1 = sp + 0x24;
    0x00062d04 lw s1, 0x2c(s1)               |         s1 = *((s1 + 11));
    0x00062d08 jalr t9                       |         t9 ();
    0x00062d0c lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x00062d10 sw zero, 0x14(sp)             |         *(var_14h) = 0;
    0x00062d14 sw v0, 0x10(sp)               |         *(var_10h) = v0;
    0x00062d18 lw a3, -0x7fac(gp)            |         a3 = *(gp);
    0x00062d1c lw a1, -0x7fac(gp)            |         a1 = *(gp);
    0x00062d20 lw t9, -0x76e8(gp)            |         t9 = sym.imp.apr_pstrcat
                                             |         /* str._into_server:_ */
    0x00062d24 addiu a3, a3, 0x4428          |         a3 += 0x4428;
    0x00062d28 move a2, s0                   |         a2 = s0;
                                             |         /* str.Cannot_load_ */
    0x00062d2c addiu a1, a1, 0x4438          |         a1 += 0x4438;
    0x00062d30 move a0, s1                   |         a0 = s1;
    0x00062d34 jalr t9                       |         t9 ();
    0x00062d38 lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             | label_0:
    0x00062d3c lw a0, 0x124(sp)              |         a0 = *(var_124h);
    0x00062d40 lw v1, (s3)                   |         v1 = *(s3);
    0x00062d44 lw ra, 0x144(sp)              |         ra = *(var_144h);
                                             |         if (a0 != v1) {
    0x00062d48 bne a0, v1, 0x62dc4           |             goto label_5;
                                             |         }
    0x00062d4c lw s5, 0x140(sp)              |         s5 = *(var_140h);
    0x00062d50 lw s4, 0x13c(sp)              |         s4 = *(var_13ch);
    0x00062d54 lw s3, 0x138(sp)              |         s3 = *(var_138h);
    0x00062d58 lw s2, 0x134(sp)              |         s2 = *(var_134h);
    0x00062d5c lw s1, 0x130(sp)              |         s1 = *(var_130h);
    0x00062d60 lw s0, 0x12c(sp)              |         s0 = *(var_12ch);
    0x00062d64 addiu sp, sp, 0x148           |         
    0x00062d68 jr ra                         |         return v0;
                                             | label_2:
    0x00062d6c sw s2, (s5)                   |         *(s5) = s2;
    0x00062d70 lw a2, 0x28(s1)               |         a2 = *((s1 + 10));
                                             |         if (s2 != 0) {
    0x00062d74 bnez s2, 0x62dd0              |             goto label_6;
                                             |         }
                                             | label_1:
    0x00062d78 lw t9, -0x7750(gp)            |         t9 = sym.imp.apr_dso_load;
    0x00062d7c sw s0, (s5)                   |         *(s5) = s0;
    0x00062d80 move a1, s0                   |         a1 = s0;
    0x00062d84 move a0, s4                   |         a0 = s4;
    0x00062d88 jalr t9                       |         t9 ();
    0x00062d8c lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x00062d90 bnez v0, 0x62cf4              |         
                                             |     } while (v0 != 0);
                                             |     do {
                                             | label_4:
    0x00062d94 move v0, zero                 |         v0 = 0;
    0x00062d98 b 0x62d3c                     |         goto label_0;
                                             | label_3:
    0x00062d9c lw v0, 0x38(s1)               |         v0 = *((s1 + 14));
    0x00062da0 lw a1, -0x7fac(gp)            |         a1 = *(gp);
    0x00062da4 lw t9, -0x7540(gp)            |         t9 = sym.imp.apr_psprintf;
    0x00062da8 lw a2, (v0)                   |         a2 = *(v0);
    0x00062dac lw a0, 0x2c(s1)               |         a0 = *((s1 + 11));
    0x00062db0 move a3, s0                   |         a3 = s0;
                                             |         /* str.Invalid__s_path__s */
    0x00062db4 addiu a1, a1, 0x4414          |         a1 += 0x4414;
    0x00062db8 jalr t9                       |         t9 ();
    0x00062dbc lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x00062dc0 b 0x62d3c                     |         goto label_0;
                                             | label_5:
    0x00062dc4 lw t9, -0x75e8(gp)            |         t9 = sym.imp.__stack_chk_fail;
    0x00062dc8 jalr t9                       |         t9 ();
    0x00062dcc nop                           |         
                                             | label_6:
    0x00062dd0 lw t9, -0x7750(gp)            |         t9 = sym.imp.apr_dso_load;
    0x00062dd4 move a1, s2                   |         a1 = s2;
    0x00062dd8 move a0, s4                   |         a0 = s4;
    0x00062ddc jalr t9                       |         t9 ();
    0x00062de0 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x00062de4 beqz v0, 0x62d94              |         
                                             |     } while (v0 == 0);
    0x00062de8 lw a2, 0x28(s1)               |     a2 = *((s1 + 10));
    0x00062dec b 0x62d78                     |     goto label_1;
                                             | }
    ; assembly                           | /* r2dec pseudo code output */
                                         | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x63cb8 */
                                         | #include <stdint.h>
                                         |  
    ; (fcn) fcn.00063cb8 ()              | void fcn_00063cb8 () {
                                         | label_5:
    0x00063cb8 lui gp, 4                 |     
    0x00063cbc addiu gp, gp, -0xd98      |     
    0x00063cc0 addu gp, gp, t9           |     gp += t9;
    0x00063cc4 addiu sp, sp, -0x50       |     
    0x00063cc8 lw t9, -0x78b8(gp)        |     t9 = sym.ap_get_output_filter_handle;
    0x00063ccc sw s0, 0x2c(sp)           |     *(var_2ch) = s0;
    0x00063cd0 lw s0, -0x7534(gp)        |     s0 = *(gp);
    0x00063cd4 sw gp, 0x18(sp)           |     *(var_18h) = gp;
    0x00063cd8 sw s7, 0x48(sp)           |     *(var_48h) = s7;
    0x00063cdc lw v0, (s0)               |     v0 = *(s0);
    0x00063ce0 sw s6, 0x44(sp)           |     *(var_44h) = s6;
    0x00063ce4 sw s5, 0x40(sp)           |     *(var_40h) = s5;
    0x00063ce8 sw s4, 0x3c(sp)           |     *(var_3ch) = s4;
    0x00063cec sw s2, 0x34(sp)           |     *(var_34h) = s2;
    0x00063cf0 sw s1, 0x30(sp)           |     *(var_30h) = s1;
    0x00063cf4 sw ra, 0x4c(sp)           |     *(var_4ch) = ra;
    0x00063cf8 sw s3, 0x38(sp)           |     *(var_38h) = s3;
    0x00063cfc move s1, a0               |     s1 = a0;
    0x00063d00 sw v0, 0x24(sp)           |     *(var_24h) = v0;
    0x00063d04 move a0, a3               |     a0 = a3;
    0x00063d08 sw zero, 0x20(sp)         |     *(var_20h) = 0;
    0x00063d0c move s2, a3               |     s2 = a3;
    0x00063d10 move s7, a1               |     s7 = a1;
    0x00063d14 move s4, a2               |     s4 = a2;
    0x00063d18 lw s5, 0x60(sp)           |     s5 = *(arg_60h);
    0x00063d1c lw s6, 0x64(sp)           |     s6 = *(arg_64h);
    0x00063d20 jalr t9                   |     t9 ();
    0x00063d24 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 == 0) {
    0x00063d28 beqz v0, 0x63e14          |         goto label_6;
                                         |     }
    0x00063d2c lw t9, -0x7200(gp)        |     t9 = sym.imp.apr_hash_get;
    0x00063d30 lw a0, (s7)               |     a0 = *(s7);
    0x00063d34 addiu a2, zero, -1        |     a2 = -1;
    0x00063d38 move a1, s4               |     a1 = s4;
    0x00063d3c move s3, v0               |     s3 = v0;
    0x00063d40 jalr t9                   |     t9 ();
    0x00063d44 move s2, v0               |     s2 = v0;
    0x00063d48 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 == 0) {
    0x00063d4c beqz v0, 0x63e40          |         goto label_7;
                                         |     }
                                         | label_2:
    0x00063d50 lw t9, -0x7544(gp)        |     t9 = sym.imp.apr_palloc;
    0x00063d54 lw a0, 0x28(s1)           |     a0 = *((s1 + 10));
    0x00063d58 addiu a1, zero, 0x10      |     a1 = 0x10;
    0x00063d5c jalr t9                   |     t9 ();
    0x00063d60 move s4, v0               |     s4 = v0;
    0x00063d64 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (s5 == 0) {
    0x00063d68 beqz s5, 0x63df4          |         goto label_8;
                                         |     }
    0x00063d6c lw v0, -0x78bc(gp)        |     v0 = *(gp);
    0x00063d70 sw zero, 0x10(sp)         |     *(var_10h_2) = 0;
    0x00063d74 lw t9, -0x7cbc(gp)        |     t9 = sym.ap_expr_parse_cmd_mi;
    0x00063d78 lw v0, 8(v0)              |     v0 = *((v0 + 2));
    0x00063d7c move a2, zero             |     a2 = 0;
    0x00063d80 addiu a3, sp, 0x20        |     a3 = sp + 0x20;
    0x00063d84 sw v0, 0x14(sp)           |     *(var_14h_3) = v0;
    0x00063d88 move a1, s5               |     a1 = s5;
    0x00063d8c move a0, s1               |     a0 = s1;
    0x00063d90 bal 0x48300               |     sym_ap_expr_parse_cmd_mi ();
    0x00063d94 lw a2, 0x20(sp)           |     a2 = *(var_20h);
    0x00063d98 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (a2 == 0) {
    0x00063d9c beqz a2, 0x63e34          |         goto label_9;
                                         |     }
    0x00063da0 lw a1, -0x7fac(gp)        |     a1 = *(gp);
    0x00063da4 lw t9, -0x76e8(gp)        |     t9 = sym.imp.apr_pstrcat
    0x00063da8 lw a0, 0x28(s1)           |     a0 = *((s1 + 10));
    0x00063dac move a3, zero             |     a3 = 0;
                                         |     /* str.Error_parsing_FilterProvider_expression: */
    0x00063db0 addiu a1, a1, 0x4828      |     a1 += 0x4828;
    0x00063db4 jalr t9                   |     t9 ();
    0x00063db8 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     do {
                                         | label_0:
    0x00063dbc lw a0, 0x24(sp)           |         a0 = *(var_24h);
    0x00063dc0 lw v1, (s0)               |         v1 = *(s0);
    0x00063dc4 lw ra, 0x4c(sp)           |         ra = *(var_4ch);
                                         |         if (a0 != v1) {
    0x00063dc8 bne a0, v1, 0x63e8c       |             goto label_10;
                                         |         }
    0x00063dcc lw s7, 0x48(sp)           |         s7 = *(var_48h);
    0x00063dd0 lw s6, 0x44(sp)           |         s6 = *(var_44h);
    0x00063dd4 lw s5, 0x40(sp)           |         s5 = *(var_40h);
    0x00063dd8 lw s4, 0x3c(sp)           |         s4 = *(var_3ch);
    0x00063ddc lw s3, 0x38(sp)           |         s3 = *(var_38h);
    0x00063de0 lw s2, 0x34(sp)           |         s2 = *(var_34h);
    0x00063de4 lw s1, 0x30(sp)           |         s1 = *(var_30h);
    0x00063de8 lw s0, 0x2c(sp)           |         s0 = *(var_2ch);
    0x00063dec addiu sp, sp, 0x50        |         
    0x00063df0 jr ra                     |         return v0;
                                         | label_8:
    0x00063df4 sw s6, 4(s4)              |         *((s4 + 1)) = s6;
    0x00063df8 sw zero, (s4)             |         *(s4) = 0;
                                         | label_1:
    0x00063dfc lw v0, 0x10(s2)           |         v0 = *((s2 + 4));
    0x00063e00 sw s3, 8(s4)              |         *((s4 + 2)) = s3;
    0x00063e04 sw v0, 0xc(s4)            |         *((s4 + 3)) = v0;
    0x00063e08 move v0, zero             |         v0 = 0;
    0x00063e0c sw s4, 0x10(s2)           |         *((s2 + 4)) = s4;
    0x00063e10 b 0x63dbc                 |         
                                         |     } while (1);
                                         | label_6:
    0x00063e14 lw a1, -0x7fac(gp)        |     a1 = *(gp);
    0x00063e18 lw t9, -0x7540(gp)        |     t9 = sym.imp.apr_psprintf;
    0x00063e1c lw a0, 0x28(s1)           |     a0 = *((s1 + 10));
    0x00063e20 move a2, s2               |     a2 = s2;
                                         |     /* str.Unknown_filter_provider__s */
    0x00063e24 addiu a1, a1, 0x480c      |     a1 += 0x480c;
    0x00063e28 jalr t9                   |     t9 ();
    0x00063e2c lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00063e30 b 0x63dbc                 |     goto label_0;
                                         | label_9:
    0x00063e34 sw v0, (s4)               |     *(s4) = v0;
    0x00063e38 sw zero, 4(s4)            |     *((s4 + 1)) = 0;
    0x00063e3c b 0x63dfc                 |     goto label_1;
                                         | label_7:
    0x00063e40 lw t9, -0x7944(gp)        |     t9 = *(gp);
    0x00063e44 move a3, zero             |     a3 = 0;
    0x00063e48 move a2, s4               |     a2 = s4;
    0x00063e4c move a1, s7               |     a1 = s7;
                                         |     /* fcn.00063b34 */
    0x00063e50 addiu t9, t9, 0x3b34      |     t9 += 0x3b34;
    0x00063e54 move a0, s1               |     a0 = s1;
    0x00063e58 bal 0x63b34               |     fcn_00063b34 ();
    0x00063e5c lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 != 0) {
    0x00063e60 bnez v0, 0x63dbc          |         goto label_0;
                                         |     }
    0x00063e64 lw t9, -0x7200(gp)        |     t9 = sym.imp.apr_hash_get;
    0x00063e68 lw a0, (s7)               |     a0 = *(s7);
    0x00063e6c addiu a2, zero, -1        |     a2 = -1;
    0x00063e70 move a1, s4               |     a1 = s4;
    0x00063e74 jalr t9                   |     t9 ();
    0x00063e78 move s2, v0               |     s2 = v0;
    0x00063e7c lw v0, 0x14(s3)           |     v0 = *((s3 + 5));
    0x00063e80 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00063e84 sw v0, 0x14(s2)           |     *((s2 + 5)) = v0;
    0x00063e88 b 0x63d50                 |     goto label_2;
                                         | label_10:
    0x00063e8c lw t9, -0x75e8(gp)        |     t9 = sym.imp.__stack_chk_fail;
    0x00063e90 jalr t9                   |     t9 ();
    0x00063e94 nop                       |     
    0x00063e98 lui gp, 4                 |     
    0x00063e9c addiu gp, gp, -0xf78      |     
    0x00063ea0 addu gp, gp, t9           |     gp += t9;
    0x00063ea4 lw v0, -0x7534(gp)        |     v0 = *(gp);
    0x00063ea8 addiu sp, sp, -0x60       |     
    0x00063eac move v1, v0               |     v1 = v0;
    0x00063eb0 sw gp, 0x18(sp)           |     *(var_18h_2) = gp;
    0x00063eb4 lw v1, (v1)               |     v1 = *(v1);
    0x00063eb8 sw v0, 0x24(sp)           |     *(var_24h_2) = v0;
    0x00063ebc slti v0, a2, 2            |     v0 = (a2 < 2) ? 1 : 0;
    0x00063ec0 sw ra, 0x5c(sp)           |     *(var_5ch) = ra;
    0x00063ec4 sw fp, 0x58(sp)           |     *(var_58h) = fp;
    0x00063ec8 sw s7, 0x54(sp)           |     *(var_54h) = s7;
    0x00063ecc sw s6, 0x50(sp)           |     *(var_50h) = s6;
    0x00063ed0 sw s5, 0x4c(sp)           |     *(var_4ch_2) = s5;
    0x00063ed4 sw s4, 0x48(sp)           |     *(var_48h_2) = s4;
    0x00063ed8 sw s3, 0x44(sp)           |     *(var_44h_2) = s3;
    0x00063edc sw s2, 0x40(sp)           |     *(var_40h_2) = s2;
    0x00063ee0 sw s1, 0x3c(sp)           |     *(var_3ch_2) = s1;
    0x00063ee4 sw s0, 0x38(sp)           |     *(var_38h_2) = s0;
    0x00063ee8 sw v1, 0x34(sp)           |     *(var_34h_2) = v1;
    0x00063eec sw zero, 0x30(sp)         |     *(var_30h_2) = 0;
                                         |     if (v0 != 0) {
    0x00063ef0 bnez v0, 0x64078          |         goto label_11;
                                         |     }
    0x00063ef4 lw t9, -0x7654(gp)        |     t9 = sym.imp.apr_pstrdup;
    0x00063ef8 move s0, a0               |     s0 = a0;
    0x00063efc move s1, a1               |     s1 = a1;
    0x00063f00 lw a0, 0x2c(a0)           |     a0 = *((a0 + 11));
    0x00063f04 lw a1, (a3)               |     a1 = *(a3);
    0x00063f08 sll s5, a2, 2             |     s5 = a2 << 2;
    0x00063f0c move s4, a3               |     s4 = a3;
    0x00063f10 jalr t9                   |     t9 ();
    0x00063f14 lw gp, 0x18(sp)           |     gp = *(var_18h_2);
    0x00063f18 lw a0, 0x28(s0)           |     a0 = *((s0 + 10));
    0x00063f1c move a1, s5               |     a1 = s5;
    0x00063f20 lw t9, -0x7544(gp)        |     t9 = sym.imp.apr_palloc;
    0x00063f24 move s6, v0               |     s6 = v0;
    0x00063f28 jalr t9                   |     t9 ();
    0x00063f2c lw gp, 0x18(sp)           |     gp = *(var_18h_2);
    0x00063f30 addiu a2, s5, -4          |     a2 = s5 + -4;
    0x00063f34 addiu a1, s4, 4           |     a1 = s4 + 4;
    0x00063f38 lw t9, -0x74b4(gp)        |     t9 = sym.imp.memcpy;
    0x00063f3c move a0, v0               |     a0 = v0;
    0x00063f40 move s2, v0               |     s2 = v0;
    0x00063f44 jalr t9                   |     t9 ();
    0x00063f48 lw gp, 0x18(sp)           |     gp = *(var_18h_2);
    0x00063f4c addu s3, s2, s5           |     s3 = s2 + s5;
    0x00063f50 addiu s5, sp, 0x30        |     s5 = sp + 0x30;
    0x00063f54 lw fp, -0x7fac(gp)        |     fp = *(gp);
    0x00063f58 lw t9, -0x751c(gp)        |     t9 = sym.imp.apr_strtok;
    0x00063f5c sw fp, 0x2c(sp)           |     *(var_2ch_2) = fp;
    0x00063f60 sw zero, -4(s3)           |     *((s3 - 1)) = 0;
    0x00063f64 move a2, s5               |     a2 = s5;
    0x00063f68 addiu a1, fp, -0x6a0c     |     a1 = fp + -aav.0x00006a0c;
    0x00063f6c move a0, s6               |     a0 = s6;
    0x00063f70 jalr t9                   |     t9 ();
    0x00063f74 move s7, v0               |     s7 = v0;
    0x00063f78 lw gp, 0x18(sp)           |     gp = *(var_18h_2);
                                         |     if (v0 == 0) {
    0x00063f7c beqz v0, 0x640e4          |         goto label_12;
                                         |     }
    0x00063f80 lw s4, -0x7944(gp)        |     s4 = *(gp);
    0x00063f84 lw s3, -0x7fac(gp)        |     s3 = *(gp);
                                         |     /* fcn.00063cb8 */
    0x00063f88 addiu v0, s4, 0x3cb8      |     v0 = s4 + 0x3cb8;
    0x00063f8c sw v0, 0x20(sp)           |     *(var_20h_2) = v0;
    0x00063f90 lw v0, -0x7944(gp)        |     v0 = *(gp);
                                         |     /* str.BYTYPE: */
    0x00063f94 addiu s3, s3, 0x488c      |     s3 += 0x488c;
    0x00063f98 addiu v0, v0, 0x3578      |     v0 += 0x3578;
    0x00063f9c sw v0, 0x28(sp)           |     *(var_28h) = v0;
    0x00063fa0 addiu s6, fp, -0x6a0c     |     s6 = fp + -aav.0x00006a0c;
    0x00063fa4 b 0x63ff4                 |     
                                         |     while (v0 != 0) {
    0x00063fa8 sw s2, 0x14(sp)           |         *(var_14h_2) = s2;
    0x00063fac sw zero, 0x10(sp)         |         *(var_38h_3) = 0;
    0x00063fb0 move a3, s7               |         a3 = s7;
    0x00063fb4 move a2, s4               |         a2 = s4;
    0x00063fb8 move a1, s1               |         a1 = s1;
    0x00063fbc move a0, s0               |         a0 = s0;
    0x00063fc0 jalr t9                   |         t9 ();
    0x00063fc4 lw gp, 0x18(sp)           |         gp = *(var_18h_2);
    0x00063fc8 move fp, v0               |         fp = v0;
                                         | label_3:
    0x00063fcc lw t9, -0x751c(gp)        |         t9 = sym.imp.apr_strtok;
    0x00063fd0 move a2, s5               |         a2 = s5;
    0x00063fd4 move a1, s6               |         a1 = s6;
    0x00063fd8 move a0, zero             |         a0 = 0;
    0x00063fdc jalr t9                   |         t9 ();
    0x00063fe0 move s7, v0               |         s7 = v0;
    0x00063fe4 lw gp, 0x18(sp)           |         gp = *(var_18h_2);
                                         |         if (v0 == 0) {
    0x00063fe8 beqz v0, 0x64080          |             goto label_4;
                                         |         }
    0x00063fec lw v0, 0x24(sp)           |         v0 = *(var_24h_2);
                                         |         if (fp != 0) {
    0x00063ff0 bnez fp, 0x64084          |             goto label_13;
                                         |         }
    0x00063ff4 lw t9, -0x76e8(gp)        |         t9 = sym.imp.apr_pstrcat
    0x00063ff8 lw a0, 0x28(s0)           |         a0 = *((s0 + 10));
    0x00063ffc move a3, zero             |         a3 = 0;
    0x00064000 move a2, s7               |         a2 = s7;
    0x00064004 move a1, s3               |         a1 = s3;
    0x00064008 jalr t9                   |         t9 ();
    0x0006400c lw gp, 0x18(sp)           |         gp = *(var_18h_2);
    0x00064010 lw a0, (s1)               |         a0 = *(s1);
    0x00064014 addiu a2, zero, -1        |         a2 = -1;
    0x00064018 lw t9, -0x7200(gp)        |         t9 = sym.imp.apr_hash_get;
    0x0006401c move a1, v0               |         a1 = v0;
    0x00064020 move s4, v0               |         s4 = v0;
    0x00064024 jalr t9                   |         t9 ();
    0x00064028 lw t9, 0x20(sp)           |         t9 = *(var_20h_2);
    0x0006402c bnez v0, 0x63fa8          |         
                                         |     }
    0x00064030 sw s2, 0x14(sp)           |     *(var_14h_2) = s2;
    0x00064034 sw zero, 0x10(sp)         |     *(var_38h_3) = 0;
    0x00064038 move a3, s7               |     a3 = s7;
    0x0006403c move a2, s4               |     a2 = s4;
    0x00064040 move a1, s1               |     a1 = s1;
    0x00064044 move a0, s0               |     a0 = s0;
    0x00064048 jalr t9                   |     t9 ();
    0x0006404c move fp, v0               |     fp = v0;
    0x00064050 lw gp, 0x18(sp)           |     gp = *(var_18h_2);
                                         |     if (v0 != 0) {
    0x00064054 bnez v0, 0x640c4          |         goto label_14;
                                         |     }
    0x00064058 lw t9, 0x28(sp)           |     t9 = *(var_28h);
    0x0006405c move a2, s4               |     a2 = s4;
    0x00064060 move a1, s1               |     a1 = s1;
    0x00064064 move a0, s0               |     a0 = s0;
    0x00064068 jalr t9                   |     t9 ();
    0x0006406c move fp, v0               |     fp = v0;
    0x00064070 lw gp, 0x18(sp)           |     gp = *(var_18h_2);
    0x00064074 b 0x63fcc                 |     goto label_3;
                                         | label_11:
    0x00064078 lw a3, -0x7fac(gp)        |     a3 = *(gp);
                                         |     /* str.AddOutputFilterByType_requires_at_least_two_arguments */
    0x0006407c addiu fp, a3, 0x4854      |     fp = a3 + aav.0x00004854;
                                         |     do {
                                         | label_4:
    0x00064080 lw v0, 0x24(sp)           |         v0 = *(var_24h_2);
                                         | label_13:
    0x00064084 lw a0, 0x34(sp)           |         a0 = *(var_34h_2);
    0x00064088 lw v1, (v0)               |         v1 = *(v0);
    0x0006408c move v0, fp               |         v0 = fp;
                                         |         if (a0 != v1) {
    0x00064090 bne a0, v1, 0x640ec       |             goto label_15;
                                         |         }
    0x00064094 lw ra, 0x5c(sp)           |         ra = *(var_5ch);
    0x00064098 lw fp, 0x58(sp)           |         fp = *(var_58h);
    0x0006409c lw s7, 0x54(sp)           |         s7 = *(var_54h);
    0x000640a0 lw s6, 0x50(sp)           |         s6 = *(var_50h);
    0x000640a4 lw s5, 0x4c(sp)           |         s5 = *(var_4ch_2);
    0x000640a8 lw s4, 0x48(sp)           |         s4 = *(var_48h_2);
    0x000640ac lw s3, 0x44(sp)           |         s3 = *(var_44h_2);
    0x000640b0 lw s2, 0x40(sp)           |         s2 = *(var_40h_2);
    0x000640b4 lw s1, 0x3c(sp)           |         s1 = *(var_3ch_2);
    0x000640b8 lw s0, 0x38(sp)           |         s0 = *(var_38h_2);
    0x000640bc addiu sp, sp, 0x60        |         
    0x000640c0 jr ra                     |         return v0;
                                         | label_14:
    0x000640c4 lw v0, 0x2c(sp)           |         v0 = *(var_2ch_2);
    0x000640c8 lw t9, -0x751c(gp)        |         t9 = sym.imp.apr_strtok;
    0x000640cc move a2, s5               |         a2 = s5;
    0x000640d0 addiu a1, v0, -0x6a0c     |         a1 = v0 + -aav.0x00006a0c;
    0x000640d4 move a0, zero             |         a0 = 0;
    0x000640d8 jalr t9                   |         t9 ();
    0x000640dc lw gp, 0x18(sp)           |         gp = *(var_18h_2);
    0x000640e0 b 0x64080                 |         
                                         |     } while (1);
                                         | label_12:
    0x000640e4 move fp, zero             |     fp = 0;
    0x000640e8 b 0x64080                 |     goto label_4;
                                         | label_15:
    0x000640ec lw t9, -0x75e8(gp)        |     t9 = sym.imp.__stack_chk_fail;
    0x000640f0 jalr t9                   |     t9 ();
    0x000640f4 nop                       |     
    0x000640f8 lui gp, 4                 |     
    0x000640fc addiu gp, gp, -0x11d8     |     
    0x00064100 addu gp, gp, t9           |     gp += t9;
    0x00064104 addiu sp, sp, -0x28       |     
    0x00064108 lw t9, -0x7944(gp)        |     t9 = *(gp);
    0x0006410c lw v0, 0x38(sp)           |     v0 = *(var_38h_3);
    0x00064110 sw ra, 0x24(sp)           |     *(var_24h_3) = ra;
    0x00064114 sw gp, 0x18(sp)           |     *(var_18h_3) = gp;
    0x00064118 sw zero, 0x14(sp)         |     *(var_14h) = 0;
    0x0006411c sw v0, 0x10(sp)           |     *(var_10h) = v0;
                                         |     /* fcn.00063cb8 */
    0x00064120 addiu t9, t9, 0x3cb8      |     t9 += 0x3cb8;
    0x00064124 bal 0x63cb8               |     fcn_00063cb8 ();
                                         |     goto label_5;
    0x00064128 nop                       |     
    0x0006412c lw ra, 0x24(sp)           |     ra = *(var_24h_3);
    0x00064130 addiu sp, sp, 0x28        |     
    0x00064134 jr ra                     |     return v0;
                                         | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x656b0 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.000656b0 ()                  | void fcn_000656b0 () {
                                             | label_4:
    0x000656b0 lui gp, 4                     |     
    0x000656b4 addiu gp, gp, -0x2790         |     
    0x000656b8 addu gp, gp, t9               |     gp += t9;
    0x000656bc addiu sp, sp, -0x68           |     
    0x000656c0 sw s4, 0x50(sp)               |     *(var_50h) = s4;
    0x000656c4 lw s4, -0x7534(gp)            |     s4 = *(gp);
    0x000656c8 sw gp, 0x20(sp)               |     *(var_20h) = gp;
    0x000656cc sw fp, 0x60(sp)               |     *(var_60h) = fp;
    0x000656d0 lw v0, (s4)                   |     v0 = *(s4);
    0x000656d4 sw s7, 0x5c(sp)               |     *(var_5ch) = s7;
    0x000656d8 sw s6, 0x58(sp)               |     *(var_58h) = s6;
    0x000656dc sw s5, 0x54(sp)               |     *(var_54h) = s5;
    0x000656e0 sw s3, 0x4c(sp)               |     *(var_4ch) = s3;
    0x000656e4 sw s2, 0x48(sp)               |     *(var_48h) = s2;
    0x000656e8 sw s1, 0x44(sp)               |     *(var_44h) = s1;
    0x000656ec sw s0, 0x40(sp)               |     *(var_40h) = s0;
    0x000656f0 sw ra, 0x64(sp)               |     *(var_64h) = ra;
    0x000656f4 move s0, a0                   |     s0 = a0;
    0x000656f8 move s3, a1                   |     s3 = a1;
    0x000656fc move s5, a2                   |     s5 = a2;
    0x00065700 sw v0, 0x3c(sp)               |     *(var_3ch) = v0;
    0x00065704 addiu s7, sp, 0x28            |     s7 = sp + 0x28;
    0x00065708 addiu s6, sp, 0x2c            |     s6 = sp + 0x2c;
    0x0006570c addiu s2, sp, 0x30            |     s2 = sp + 0x30;
    0x00065710 addiu s1, sp, 0x34            |     s1 = sp + 0x34;
    0x00065714 addiu fp, sp, 0x38            |     fp = sp + 0x38;
    0x00065718 b 0x657a4                     |     
                                             |     while (v0 != 0) {
    0x0006571c lw t9, -0x7674(gp)            |         t9 = sym.imp.BrotliEncoderHasMoreOutput;
    0x00065720 lw a0, (s0)                   |         a0 = *(s0);
    0x00065724 jalr t9                       |         t9 ();
    0x00065728 lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |         if (v0 == 0) {
    0x0006572c beqz v0, 0x6585c              |             goto label_31;
                                             |         }
    0x00065730 lw t9, -0x7468(gp)            |         t9 = sym.imp.BrotliEncoderTakeOutput;
    0x00065734 lw a0, (s0)                   |         a0 = *(s0);
    0x00065738 move a1, fp                   |         a1 = fp;
    0x0006573c sw zero, 0x38(sp)             |         *(var_38h_2) = 0;
    0x00065740 jalr t9                       |         t9 ();
    0x00065744 lw v1, 0x10(s0)               |         v1 = *((s0 + 4));
    0x00065748 lw a1, 0x38(sp)               |         a1 = *(var_38h_2);
    0x0006574c lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x00065750 lw a2, 4(s0)                  |         a2 = *((s0 + 1));
    0x00065754 lw a3, 0x14(s0)               |         a3 = *((s0 + 5));
    0x00065758 addu a0, v1, a1               |         a0 = v1 + a1;
    0x0006575c sltu v1, a0, v1               |         v1 = (a0 < v1) ? 1 : 0;
    0x00065760 addu v1, v1, a3               |         v1 += a3;
    0x00065764 lw a3, 0xc(a2)                |         a3 = *((a2 + 3));
    0x00065768 lw t9, -0x7228(gp)            |         t9 = sym.imp.apr_bucket_heap_create;
    0x0006576c sw a0, 0x10(s0)               |         *((s0 + 4)) = a0;
    0x00065770 sw v1, 0x14(s0)               |         *((s0 + 5)) = v1;
    0x00065774 move a0, v0                   |         a0 = v0;
    0x00065778 move a2, zero                 |         a2 = 0;
    0x0006577c jalr t9                       |         t9 ();
    0x00065780 lw v1, 4(s0)                  |         v1 = *((s0 + 1));
    0x00065784 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x00065788 addiu a0, v1, 4               |         a0 = v1 + 4;
    0x0006578c sw a0, (v0)                   |         *(v0) = a0;
    0x00065790 lw a0, 8(v1)                  |         a0 = *((v1 + 2));
    0x00065794 sw a0, 4(v0)                  |         *((v0 + 1)) = a0;
    0x00065798 lw a0, 8(v1)                  |         a0 = *((v1 + 2));
    0x0006579c sw v0, (a0)                   |         *(a0) = v0;
    0x000657a0 sw v0, 8(v1)                  |         *((v1 + 2)) = v0;
    0x000657a4 lw a0, (s0)                   |         a0 = *(s0);
    0x000657a8 lw t9, -0x75fc(gp)            |         t9 = sym.imp.BrotliEncoderCompressStream;
    0x000657ac sw zero, 0x18(sp)             |         *(var_18h) = 0;
    0x000657b0 sw s2, 0x14(sp)               |         *(var_14h) = s2;
    0x000657b4 sw s1, 0x10(sp)               |         *(var_10h) = s1;
    0x000657b8 move a3, s7                   |         a3 = s7;
    0x000657bc move a2, s6                   |         a2 = s6;
    0x000657c0 move a1, s3                   |         a1 = s3;
    0x000657c4 sw zero, 0x28(sp)             |         *(var_28h) = 0;
    0x000657c8 sw zero, 0x2c(sp)             |         *(var_2ch) = 0;
    0x000657cc sw zero, 0x30(sp)             |         *(var_30h) = 0;
    0x000657d0 sw zero, 0x34(sp)             |         *(var_34h) = 0;
    0x000657d4 jalr t9                       |         t9 ();
    0x000657d8 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x000657dc bnez v0, 0x6571c              |         
                                             |     }
    0x000657e0 lw v0, -0x78b0(gp)            |     v0 = *(gp);
    0x000657e4 lw v1, (s5)                   |     v1 = *(s5);
    0x000657e8 lw a0, -0x7fac(gp)            |     a0 = *(gp);
    0x000657ec lw a2, 8(v0)                  |     a2 = *((v0 + 2));
    0x000657f0 lw v0, -0x7fac(gp)            |     v0 = *(gp);
    0x000657f4 lw t9, -0x7f08(gp)            |     t9 = sym.ap_log_rerror_;
                                             |     /* str.AH03460:_Error_while_compressing_data */
    0x000657f8 addiu v0, v0, 0x4e14          |     v0 += 0x4e14;
    0x000657fc sw v0, 0x18(sp)               |     *(var_18h) = v0;
    0x00065800 sw v1, 0x14(sp)               |     *(var_14h) = v1;
    0x00065804 sw zero, 0x10(sp)             |     *(var_10h) = 0;
    0x00065808 addiu a3, zero, 3             |     a3 = 3;
    0x0006580c addiu a1, zero, 0x118         |     a1 = aav.0x00000118;
                                             |     /* str._usr_src_debug_apache2_2.4.57_r0_httpd_2.4.57_modules_filters_mod_brotli.c */
    0x00065810 addiu a0, a0, 0x4dc8          |     a0 += 0x4dc8;
    0x00065814 bal 0x530a8                   |     sym_ap_log_rerror_ ();
    0x00065818 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0006581c addiu v0, zero, 0x4e2e        |     v0 = 0x4e2e;
                                             |     do {
    0x00065820 lw a0, 0x3c(sp)               |         a0 = *(var_3ch);
    0x00065824 lw v1, (s4)                   |         v1 = *(s4);
    0x00065828 lw ra, 0x64(sp)               |         ra = *(var_64h);
                                             |         if (a0 != v1) {
    0x0006582c bne a0, v1, 0x65864           |             goto label_32;
                                             |         }
    0x00065830 lw fp, 0x60(sp)               |         fp = *(var_60h);
    0x00065834 lw s7, 0x5c(sp)               |         s7 = *(var_5ch);
    0x00065838 lw s6, 0x58(sp)               |         s6 = *(var_58h);
    0x0006583c lw s5, 0x54(sp)               |         s5 = *(var_54h);
    0x00065840 lw s4, 0x50(sp)               |         s4 = *(var_50h);
    0x00065844 lw s3, 0x4c(sp)               |         s3 = *(var_4ch);
    0x00065848 lw s2, 0x48(sp)               |         s2 = *(var_48h);
    0x0006584c lw s1, 0x44(sp)               |         s1 = *(var_44h);
    0x00065850 lw s0, 0x40(sp)               |         s0 = *(var_40h);
    0x00065854 addiu sp, sp, 0x68            |         
    0x00065858 jr ra                         |         return v0;
                                             | label_31:
    0x0006585c move v0, zero                 |         v0 = 0;
    0x00065860 b 0x65820                     |         
                                             |     } while (1);
                                             | label_32:
    0x00065864 lw t9, -0x75e8(gp)            |     t9 = sym.imp.__stack_chk_fail;
    0x00065868 jalr t9                       |     t9 ();
    0x0006586c nop                           |     
    0x00065870 lui gp, 4                     |     
    0x00065874 addiu gp, gp, -0x2950         |     
    0x00065878 addu gp, gp, t9               |     gp += t9;
    0x0006587c lw v0, -0x7534(gp)            |     v0 = *(gp);
    0x00065880 addiu sp, sp, -0xa0           |     
    0x00065884 addiu v1, a1, 4               |     v1 = a1 + 4;
    0x00065888 sw v0, 0x4c(sp)               |     *(var_4ch_2) = v0;
    0x0006588c lw v0, (v0)                   |     v0 = *(v0);
    0x00065890 sw gp, 0x28(sp)               |     *(var_28h_2) = gp;
    0x00065894 sw v0, 0x74(sp)               |     *(var_74h) = v0;
    0x00065898 lw v0, 4(a1)                  |     v0 = *((a1 + 1));
    0x0006589c sw ra, 0x9c(sp)               |     *(var_9ch) = ra;
    0x000658a0 sw fp, 0x98(sp)               |     *(var_98h) = fp;
    0x000658a4 sw s7, 0x94(sp)               |     *(var_94h) = s7;
    0x000658a8 sw s6, 0x90(sp)               |     *(var_90h) = s6;
    0x000658ac sw s5, 0x8c(sp)               |     *(var_8ch) = s5;
    0x000658b0 sw s4, 0x88(sp)               |     *(var_88h) = s4;
    0x000658b4 sw s3, 0x84(sp)               |     *(var_84h) = s3;
    0x000658b8 sw s2, 0x80(sp)               |     *(var_80h) = s2;
    0x000658bc sw s1, 0x7c(sp)               |     *(var_7ch) = s1;
    0x000658c0 sw s0, 0x78(sp)               |     *(var_78h) = s0;
    0x000658c4 sw v1, 0x3c(sp)               |     *(var_3ch_2) = v1;
                                             |     if (v0 == v1) {
    0x000658c8 beq v0, v1, 0x659b8           |         goto label_33;
                                             |     }
    0x000658cc lw s2, 0xc(a0)                |     s2 = *((a0 + 3));
    0x000658d0 lw v0, -0x78b0(gp)            |     v0 = *(gp);
    0x000658d4 lw s5, 4(a0)                  |     s5 = *((a0 + 1));
    0x000658d8 lw v1, 8(s2)                  |     v1 = *((s2 + 2));
    0x000658dc sw v0, 0x48(sp)               |     *(var_48h_2) = v0;
    0x000658e0 lw v0, 8(v0)                  |     v0 = *((v0 + 2));
    0x000658e4 lw v1, 0x18(v1)               |     v1 = *((v1 + 6));
    0x000658e8 sll v0, v0, 2                 |     v0 <<= 2;
    0x000658ec move s1, a1                   |     s1 = a1;
    0x000658f0 lwx v0, v0(v1)                |     __asm ("lwx v0, v0(v1)");
    0x000658f4 move s3, a0                   |     s3 = a0;
    0x000658f8 sw v0, 0x54(sp)               |     *(var_54h_2) = v0;
                                             |     if (s5 == 0) {
    0x000658fc beqz s5, 0x65c8c              |         goto label_34;
                                             |     }
                                             | label_8:
    0x00065900 lw v0, -0x7620(gp)            |     v0 = *((gp - 7560));
    0x00065904 addiu s4, sp, 0x70            |     s4 = sp + 0x70;
    0x00065908 sw v0, 0x40(sp)               |     *(var_40h_2) = v0;
    0x0006590c lw v0, -0x7944(gp)            |     v0 = *(gp);
                                             |     /* fcn.000656b0 */
    0x00065910 addiu v0, v0, 0x56b0          |     v0 += 0x56b0;
    0x00065914 sw v0, 0x50(sp)               |     *(var_50h_2) = v0;
                                             | label_2:
    0x00065918 lw v0, 4(s1)                  |     v0 = *((s1 + 1));
    0x0006591c lw v1, 0x3c(sp)               |     v1 = *(var_3ch_2);
    0x00065920 move fp, zero                 |     fp = 0;
                                             |     if (v1 == v0) {
    0x00065924 beq v1, v0, 0x659bc           |         goto label_0;
                                             |     }
    0x00065928 lw v0, 0x24(s2)               |     v0 = *((s2 + 9));
                                             |     do {
    0x0006592c lw s7, 4(s1)                  |         s7 = *((s1 + 1));
                                             |         if (v0 != 0) {
    0x00065930 beql v0, zero, 0x65950        |             
    0x00065934 lw v0, 8(s7)                  |             v0 = *((s7 + 2));
    0x00065938 lw v0, 0x68(s2)               |             v0 = *((s2 + 26));
    0x0006593c lw v1, 0x6c(s2)               |             v1 = *((s2 + 27));
    0x00065940 or v0, v0, v1                 |             v0 |= v1;
    0x00065944 lw t9, -0x7e34(gp)            |             t9 = sym.ap_remove_output_filter;
                                             |             if (v0 != 0) {
    0x00065948 bnez v0, 0x65cc4              |                 goto label_7;
                                             |             }
    0x0006594c lw v0, 8(s7)                  |             v0 = *((s7 + 2));
                                             |         }
    0x00065950 lw v1, 0x40(sp)               |         v1 = *(var_40h_2);
    0x00065954 lw v1, -0x7628(gp)            |         v1 = *((gp - 7562));
                                             |         if (v0 == v1) {
    0x00065958 beq v0, v1, 0x65cec           |             goto label_35;
                                             |         }
    0x0006595c lw t9, 0x50(sp)               |         t9 = *(var_50h_2);
                                             |         if (v0 == v1) {
    0x00065960 beq v0, v1, 0x65bbc           |             goto label_36;
                                             |         }
    0x00065964 lw v1, 8(v0)                  |         v1 = *((v0 + 2));
                                             |         if (v1 == 0) {
    0x00065968 beql v1, zero, 0x65a00        |             goto label_37;
                                             |         }
    0x0006596c lw t9, 0x10(v0)               |         t9 = *((v0 + 4));
    0x00065970 lw v1, 4(s7)                  |         v1 = *((s7 + 1));
    0x00065974 lw a0, (s7)                   |         a0 = *(s7);
    0x00065978 lw v0, 4(s5)                  |         v0 = *((s5 + 1));
    0x0006597c sw a0, (v1)                   |         *(v1) = a0;
    0x00065980 lw a0, (s7)                   |         a0 = *(s7);
    0x00065984 lw a1, 4(s7)                  |         a1 = *((s7 + 1));
    0x00065988 addiu v1, v0, 4               |         v1 = v0 + 4;
    0x0006598c sw a1, 4(a0)                  |         *((a0 + 1)) = a1;
    0x00065990 sw v1, (s7)                   |         *(s7) = v1;
    0x00065994 lw v1, 8(v0)                  |         v1 = *((v0 + 2));
    0x00065998 sw v1, 4(s7)                  |         *((s7 + 1)) = v1;
    0x0006599c lw v1, 8(v0)                  |         v1 = *((v0 + 2));
    0x000659a0 sw s7, (v1)                   |         *(v1) = s7;
    0x000659a4 sw s7, 8(v0)                  |         *((v0 + 2)) = s7;
    0x000659a8 lw v0, 4(s1)                  |         v0 = *((s1 + 1));
    0x000659ac lw v1, 0x3c(sp)               |         v1 = *(var_3ch_2);
    0x000659b0 lw v0, 0x24(s2)               |         v0 = *((s2 + 9));
    0x000659b4 bnel v1, v0, 0x6592c          |         
                                             |     } while (v1 == v0);
                                             | label_33:
    0x000659b8 move fp, zero                 |     fp = 0;
                                             |     do {
                                             | label_0:
    0x000659bc lw v0, 0x4c(sp)               |         v0 = *(var_4ch_2);
                                             | label_3:
    0x000659c0 lw a1, 0x74(sp)               |         a1 = *(var_74h);
    0x000659c4 lw a0, (v0)                   |         a0 = *(v0);
    0x000659c8 move v0, fp                   |         v0 = fp;
                                             |         if (a1 != a0) {
    0x000659cc bne a1, a0, 0x66648           |             goto label_38;
                                             |         }
    0x000659d0 lw ra, 0x9c(sp)               |         ra = *(var_9ch);
    0x000659d4 lw fp, 0x98(sp)               |         fp = *(var_98h);
    0x000659d8 lw s7, 0x94(sp)               |         s7 = *(var_94h);
    0x000659dc lw s6, 0x90(sp)               |         s6 = *(var_90h);
    0x000659e0 lw s5, 0x8c(sp)               |         s5 = *(var_8ch);
    0x000659e4 lw s4, 0x88(sp)               |         s4 = *(var_88h);
    0x000659e8 lw s3, 0x84(sp)               |         s3 = *(var_84h);
    0x000659ec lw s2, 0x80(sp)               |         s2 = *(var_80h);
    0x000659f0 lw s1, 0x7c(sp)               |         s1 = *(var_7ch);
    0x000659f4 lw s0, 0x78(sp)               |         s0 = *(var_78h);
    0x000659f8 addiu sp, sp, 0xa0            |         
    0x000659fc jr ra                         |         return v0;
                                             | label_37:
    0x00065a00 move a3, zero                 |         a3 = 0;
    0x00065a04 addiu a2, sp, 0x5c            |         a2 = sp + 0x5c;
    0x00065a08 addiu a1, sp, 0x58            |         a1 = sp + 0x58;
    0x00065a0c move a0, s7                   |         a0 = s7;
    0x00065a10 jalr t9                       |         t9 ();
    0x00065a14 move fp, v0                   |         fp = v0;
    0x00065a18 lw gp, 0x28(sp)               |         gp = *(var_28h_2);
    0x00065a1c bnez v0, 0x659bc              |         
                                             |     } while (v0 != 0);
    0x00065a20 lw v1, 0x5c(sp)               |     v1 = *(var_5ch_2);
    0x00065a24 lw v0, 0x58(sp)               |     v0 = *(var_58h_2);
    0x00065a28 sw v1, 0x44(sp)               |     *(var_44h_2) = v1;
    0x00065a2c sw v1, 0x64(sp)               |     *(var_64h_2) = v1;
    0x00065a30 sw v0, 0x60(sp)               |     *(var_60h_2) = v0;
                                             |     if (v1 == 0) {
    0x00065a34 beqz v1, 0x65b5c              |         goto label_39;
                                             |     }
    0x00065a38 addiu v0, sp, 0x68            |     v0 = sp + 0x68;
    0x00065a3c sw v0, 0x34(sp)               |     *(var_34h_2) = v0;
    0x00065a40 addiu v0, sp, 0x6c            |     v0 = sp + 0x6c;
    0x00065a44 addiu s0, sp, 0x60            |     s0 = sp + 0x60;
    0x00065a48 addiu s6, sp, 0x64            |     s6 = sp + 0x64;
    0x00065a4c sw v0, 0x38(sp)               |     *(var_38h) = v0;
    0x00065a50 b 0x65a60                     |     
                                             |     while (v0 == 0) {
    0x00065a54 lw v0, 0x64(sp)               |         v0 = *(var_64h_2);
                                             |         if (v0 == 0) {
    0x00065a58 beql v0, zero, 0x65b60        |             goto label_40;
                                             |         }
    0x00065a5c lw v0, 8(s5)                  |         v0 = *((s5 + 2));
    0x00065a60 lw v0, 0x34(sp)               |         v0 = *(var_34h_2);
                                             | label_1:
    0x00065a64 lw a0, (s5)                   |         a0 = *(s5);
    0x00065a68 sw v0, 0x14(sp)               |         *(var_14h_2) = v0;
    0x00065a6c lw v0, 0x38(sp)               |         v0 = *(var_38h);
    0x00065a70 lw t9, -0x75fc(gp)            |         t9 = sym.imp.BrotliEncoderCompressStream;
    0x00065a74 sw zero, 0x18(sp)             |         *(var_18h_2) = 0;
    0x00065a78 sw v0, 0x10(sp)               |         *(var_10h_3) = v0;
    0x00065a7c move a3, s0                   |         a3 = s0;
    0x00065a80 move a2, s6                   |         a2 = s6;
    0x00065a84 move a1, zero                 |         a1 = 0;
    0x00065a88 sw zero, 0x68(sp)             |         *(var_68h) = 0;
    0x00065a8c sw zero, 0x6c(sp)             |         *(var_6ch) = 0;
    0x00065a90 jalr t9                       |         t9 ();
    0x00065a94 lw gp, 0x28(sp)               |         gp = *(var_28h_2);
                                             |         if (v0 == 0) {
    0x00065a98 beqz v0, 0x65c48              |             goto label_41;
                                             |         }
    0x00065a9c lw t9, -0x7674(gp)            |         t9 = sym.imp.BrotliEncoderHasMoreOutput;
    0x00065aa0 lw a0, (s5)                   |         a0 = *(s5);
    0x00065aa4 jalr t9                       |         t9 ();
    0x00065aa8 lw gp, 0x28(sp)               |         gp = *(var_28h_2);
    0x00065aac beqz v0, 0x65a54              |         
                                             |     }
    0x00065ab0 lw t9, -0x7468(gp)            |     t9 = sym.imp.BrotliEncoderTakeOutput;
    0x00065ab4 lw a0, (s5)                   |     a0 = *(s5);
    0x00065ab8 move a1, s4                   |     a1 = s4;
    0x00065abc sw zero, 0x70(sp)             |     *(var_70h) = 0;
    0x00065ac0 jalr t9                       |     t9 ();
    0x00065ac4 lw a1, 0x70(sp)               |     a1 = *(var_70h);
    0x00065ac8 lw v1, 0x10(s5)               |     v1 = *((s5 + 4));
    0x00065acc lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x00065ad0 lw a2, 4(s5)                  |     a2 = *((s5 + 1));
    0x00065ad4 addu a3, v1, a1               |     a3 = v1 + a1;
    0x00065ad8 lw a0, 0x14(s5)               |     a0 = *((s5 + 5));
    0x00065adc sltu v1, a3, v1               |     v1 = (a3 < v1) ? 1 : 0;
    0x00065ae0 lw a2, 0xc(a2)                |     a2 = *((a2 + 3));
    0x00065ae4 addu v1, v1, a0               |     v1 += a0;
    0x00065ae8 lw t9, -0x7798(gp)            |     t9 = sym.imp.apr_bucket_transient_create;
    0x00065aec sw a3, 0x10(s5)               |     *((s5 + 4)) = a3;
    0x00065af0 move a0, v0                   |     a0 = v0;
    0x00065af4 sw v1, 0x14(s5)               |     *((s5 + 5)) = v1;
    0x00065af8 jalr t9                       |     t9 ();
    0x00065afc lw v1, 4(s5)                  |     v1 = *((s5 + 1));
    0x00065b00 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x00065b04 addiu a0, v1, 4               |     a0 = v1 + 4;
    0x00065b08 sw a0, (v0)                   |     *(v0) = a0;
    0x00065b0c lw a1, 8(v1)                  |     a1 = *((v1 + 2));
    0x00065b10 lw a0, 8(s3)                  |     a0 = *((s3 + 2));
    0x00065b14 sw a1, 4(v0)                  |     *((v0 + 1)) = a1;
    0x00065b18 lw a2, 8(v1)                  |     a2 = *((v1 + 2));
    0x00065b1c lw t9, -0x7e30(gp)            |     t9 = sym.ap_pass_brigade;
    0x00065b20 move a1, v1                   |     a1 = v1;
    0x00065b24 sw v0, (a2)                   |     *(a2) = v0;
    0x00065b28 sw v0, 8(v1)                  |     *((v1 + 2)) = v0;
    0x00065b2c jalr t9                       |     t9 ();
    0x00065b30 nop                           |     
    0x00065b34 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x00065b38 lw a0, 4(s5)                  |     a0 = *((s5 + 1));
    0x00065b3c lw t9, -0x754c(gp)            |     t9 = sym.imp.apr_brigade_cleanup;
    0x00065b40 move fp, v0                   |     fp = v0;
    0x00065b44 jalr t9                       |     t9 ();
    0x00065b48 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
                                             |     if (fp != 0) {
    0x00065b4c bnez fp, 0x659bc              |         goto label_0;
                                             |     }
    0x00065b50 lw v0, 0x64(sp)               |     v0 = *(var_64h_2);
    0x00065b54 lw v0, 0x34(sp)               |     v0 = *(var_34h_2);
                                             |     if (v0 != 0) {
    0x00065b58 bnez v0, 0x65a64              |         goto label_1;
                                             |     }
                                             | label_39:
    0x00065b5c lw v0, 8(s5)                  |     v0 = *((s5 + 2));
                                             | label_40:
    0x00065b60 lw a0, 0x44(sp)               |     a0 = *(var_44h_2);
    0x00065b64 lw v1, 4(s7)                  |     v1 = *((s7 + 1));
    0x00065b68 lw a1, 0xc(s5)                |     a1 = *((s5 + 3));
    0x00065b6c addu s0, v0, a0               |     s0 = v0 + a0;
    0x00065b70 sltu v0, s0, v0               |     v0 = (s0 < v0) ? 1 : 0;
    0x00065b74 lw a0, (s7)                   |     a0 = *(s7);
    0x00065b78 addu v0, v0, a1               |     v0 += a1;
    0x00065b7c sw v0, 0xc(s5)                |     *((s5 + 3)) = v0;
    0x00065b80 lw a1, 8(s7)                  |     a1 = *((s7 + 2));
    0x00065b84 sw s0, 8(s5)                  |     *((s5 + 2)) = s0;
    0x00065b88 sw a0, (v1)                   |     *(v1) = a0;
    0x00065b8c lw v0, (s7)                   |     v0 = *(s7);
    0x00065b90 lw v1, 4(s7)                  |     v1 = *((s7 + 1));
    0x00065b94 lw t9, 0xc(a1)                |     t9 = *((a1 + 3));
    0x00065b98 lw a0, 0x18(s7)               |     a0 = *((s7 + 6));
    0x00065b9c sw v1, 4(v0)                  |     *((v0 + 1)) = v1;
    0x00065ba0 jalr t9                       |     t9 ();
    0x00065ba4 nop                           |     
    0x00065ba8 lw t9, 0x1c(s7)               |     t9 = *((s7 + 7));
    0x00065bac move a0, s7                   |     a0 = s7;
    0x00065bb0 jalr t9                       |     t9 ();
    0x00065bb4 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x00065bb8 b 0x65918                     |     goto label_2;
                                             | label_36:
    0x00065bbc addiu a2, s3, 0xc             |     a2 = s3 + 0xc;
    0x00065bc0 addiu a1, zero, 1             |     a1 = 1;
    0x00065bc4 move a0, s5                   |     a0 = s5;
    0x00065bc8 jalr t9                       |     t9 ();
    0x00065bcc move fp, v0                   |     fp = v0;
    0x00065bd0 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
                                             |     if (v0 != 0) {
    0x00065bd4 bnez v0, 0x659bc              |         goto label_0;
                                             |     }
    0x00065bd8 lw v1, 4(s7)                  |     v1 = *((s7 + 1));
    0x00065bdc lw a0, (s7)                   |     a0 = *(s7);
    0x00065be0 lw v0, 4(s5)                  |     v0 = *((s5 + 1));
    0x00065be4 sw a0, (v1)                   |     *(v1) = a0;
    0x00065be8 lw a0, (s7)                   |     a0 = *(s7);
    0x00065bec lw a1, 4(s7)                  |     a1 = *((s7 + 1));
    0x00065bf0 addiu v1, v0, 4               |     v1 = v0 + 4;
    0x00065bf4 sw a1, 4(a0)                  |     *((a0 + 1)) = a1;
    0x00065bf8 sw v1, (s7)                   |     *(s7) = v1;
    0x00065bfc lw v1, 8(v0)                  |     v1 = *((v0 + 2));
    0x00065c00 lw a0, 8(s3)                  |     a0 = *((s3 + 2));
    0x00065c04 sw v1, 4(s7)                  |     *((s7 + 1)) = v1;
    0x00065c08 lw v1, 8(v0)                  |     v1 = *((v0 + 2));
    0x00065c0c lw t9, -0x7e30(gp)            |     t9 = sym.ap_pass_brigade;
    0x00065c10 move a1, v0                   |     a1 = v0;
    0x00065c14 sw s7, (v1)                   |     *(v1) = s7;
    0x00065c18 sw s7, 8(v0)                  |     *((v0 + 2)) = s7;
    0x00065c1c jalr t9                       |     t9 ();
    0x00065c20 nop                           |     
    0x00065c24 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x00065c28 lw a0, 4(s5)                  |     a0 = *((s5 + 1));
    0x00065c2c lw t9, -0x754c(gp)            |     t9 = sym.imp.apr_brigade_cleanup;
    0x00065c30 move fp, v0                   |     fp = v0;
    0x00065c34 jalr t9                       |     t9 ();
    0x00065c38 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
                                             |     if (fp == 0) {
    0x00065c3c beqz fp, 0x65918              |         goto label_2;
                                             |     }
    0x00065c40 lw v0, 0x4c(sp)               |     v0 = *(var_4ch_2);
    0x00065c44 b 0x659c0                     |     goto label_3;
                                             | label_41:
    0x00065c48 lw v0, 0x48(sp)               |     v0 = *(var_48h_2);
    0x00065c4c lw v1, 0xc(s3)                |     v1 = *((s3 + 3));
    0x00065c50 lw a0, -0x7fac(gp)            |     a0 = *(gp);
    0x00065c54 lw a2, 8(v0)                  |     a2 = *((v0 + 2));
    0x00065c58 lw v0, -0x7fac(gp)            |     v0 = *(gp);
    0x00065c5c lw t9, -0x7f08(gp)            |     t9 = sym.ap_log_rerror_;
                                             |     /* str.AH03459:_Error_while_compressing_data */
    0x00065c60 addiu v0, v0, 0x4ea8          |     v0 += 0x4ea8;
    0x00065c64 sw v0, 0x18(sp)               |     *(var_18h_2) = v0;
    0x00065c68 sw v1, 0x14(sp)               |     *(var_14h_2) = v1;
    0x00065c6c sw zero, 0x10(sp)             |     *(var_10h_3) = 0;
    0x00065c70 addiu a3, zero, 3             |     a3 = 3;
    0x00065c74 addiu a1, zero, 0xe3          |     a1 = 0xe3;
                                             |     /* str._usr_src_debug_apache2_2.4.57_r0_httpd_2.4.57_modules_filters_mod_brotli.c */
    0x00065c78 addiu a0, a0, 0x4dc8          |     a0 += 0x4dc8;
    0x00065c7c bal 0x530a8                   |     sym_ap_log_rerror_ ();
    0x00065c80 addiu fp, zero, 0x4e2e        |     fp = 0x4e2e;
    0x00065c84 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x00065c88 b 0x659bc                     |     goto label_0;
                                             | label_34:
    0x00065c8c lw v0, 0x14(s2)               |     v0 = *((s2 + 5));
    0x00065c90 lw t9, -0x7e34(gp)            |     t9 = sym.ap_remove_output_filter;
                                             |     if (v0 == 0) {
    0x00065c94 bnez v0, 0x65cc4              |         
    0x00065c98 lw v1, 0x44(s2)               |         v1 = *((s2 + 17));
    0x00065c9c addiu v0, zero, 0xcc          |         v0 = 0xcc;
    0x00065ca0 lw a1, -0x7fac(gp)            |         a1 = *(gp);
                                             |         if (v1 == v0) {
    0x00065ca4 beq v1, v0, 0x65cc4           |             goto label_7;
                                             |         }
    0x00065ca8 lw t9, -0x7668(gp)            |         t9 = sym.imp.apr_table_get;
    0x00065cac lw a0, 0xbc(s2)               |         a0 = *((s2 + 47));
                                             |         /* str.no_brotli */
    0x00065cb0 addiu a1, a1, 0x4e3c          |         a1 += 0x4e3c;
    0x00065cb4 jalr t9                       |         t9 ();
    0x00065cb8 lw gp, 0x28(sp)               |         gp = *(var_28h_2);
                                             |         if (v0 == 0) {
    0x00065cbc beqz v0, 0x65e8c              |             goto label_42;
                                             |         }
                                             | label_5:
    0x00065cc0 lw t9, -0x7e34(gp)            |         t9 = sym.ap_remove_output_filter;
                                             |     }
                                             | label_7:
    0x00065cc4 move a0, s3                   |     a0 = s3;
    0x00065cc8 jalr t9                       |     t9 ();
    0x00065ccc lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x00065cd0 lw a0, 8(s3)                  |     a0 = *((s3 + 2));
    0x00065cd4 lw t9, -0x7e30(gp)            |     t9 = sym.ap_pass_brigade;
    0x00065cd8 move a1, s1                   |     a1 = s1;
    0x00065cdc jalr t9                       |     t9 ();
    0x00065ce0 move fp, v0                   |     fp = v0;
    0x00065ce4 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x00065ce8 b 0x659bc                     |     goto label_0;
                                             | label_35:
    0x00065cec lw t9, -0x7944(gp)            |     t9 = *(gp);
    0x00065cf0 addiu a2, s3, 0xc             |     a2 = s3 + 0xc;
    0x00065cf4 addiu a1, zero, 2             |     a1 = 2;
                                             |     /* fcn.000656b0 */
    0x00065cf8 addiu t9, t9, 0x56b0          |     t9 += 0x56b0;
    0x00065cfc move a0, s5                   |     a0 = s5;
    0x00065d00 bal 0x656b0                   |     fcn_000656b0 ();
                                             |     goto label_4;
    0x00065d04 move fp, v0                   |     fp = v0;
    0x00065d08 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
                                             |     if (v0 != 0) {
    0x00065d0c bnez v0, 0x659bc              |         goto label_0;
                                             |     }
    0x00065d10 lw v0, 0x54(sp)               |     v0 = *(var_54h_2);
    0x00065d14 lw s0, 0x14(v0)               |     s0 = *((v0 + 5));
    0x00065d18 lw t9, -0x759c(gp)            |     t9 = sym.imp.apr_off_t_toa;
                                             |     if (s0 != 0) {
    0x00065d1c beqz s0, 0x65d54              |         
    0x00065d20 lw a2, 8(s5)                  |         a2 = *((s5 + 2));
    0x00065d24 lw a3, 0xc(s5)                |         a3 = *((s5 + 3));
    0x00065d28 lw a0, (s2)                   |         a0 = *(s2);
    0x00065d2c lw s1, 0xc0(s2)               |         s1 = *((s2 + 48));
    0x00065d30 jalr t9                       |         t9 ();
    0x00065d34 lw gp, 0x28(sp)               |         gp = *(var_28h_2);
    0x00065d38 move a2, v0                   |         a2 = v0;
    0x00065d3c move a1, s0                   |         a1 = s0;
    0x00065d40 lw t9, -0x7590(gp)            |         t9 = sym.imp.apr_table_setn;
    0x00065d44 move a0, s1                   |         a0 = s1;
    0x00065d48 jalr t9                       |         t9 ();
    0x00065d4c lw gp, 0x28(sp)               |         gp = *(var_28h_2);
    0x00065d50 lw v0, 0x54(sp)               |         v0 = *(var_54h_2);
                                             |     }
    0x00065d54 lw s0, 0x18(v0)               |     s0 = *((v0 + 6));
    0x00065d58 lw t9, -0x759c(gp)            |     t9 = sym.imp.apr_off_t_toa;
                                             |     if (s0 != 0) {
    0x00065d5c beqz s0, 0x65d90              |         
    0x00065d60 lw a2, 0x10(s5)               |         a2 = *((s5 + 4));
    0x00065d64 lw a3, 0x14(s5)               |         a3 = *((s5 + 5));
    0x00065d68 lw a0, (s2)                   |         a0 = *(s2);
    0x00065d6c lw s1, 0xc0(s2)               |         s1 = *((s2 + 48));
    0x00065d70 jalr t9                       |         t9 ();
    0x00065d74 lw gp, 0x28(sp)               |         gp = *(var_28h_2);
    0x00065d78 move a2, v0                   |         a2 = v0;
    0x00065d7c move a1, s0                   |         a1 = s0;
    0x00065d80 lw t9, -0x7590(gp)            |         t9 = sym.imp.apr_table_setn;
    0x00065d84 move a0, s1                   |         a0 = s1;
    0x00065d88 jalr t9                       |         t9 ();
    0x00065d8c lw gp, 0x28(sp)               |         gp = *(var_28h_2);
                                             |     }
    0x00065d90 lw v0, 0x54(sp)               |     v0 = *(var_54h_2);
    0x00065d94 lw s0, 0x10(v0)               |     s0 = *((v0 + 4));
                                             |     if (s0 != 0) {
    0x00065d98 beqz s0, 0x65e08              |         
    0x00065d9c nop                           |         
    0x00065da0 lw a3, 0xc(s5)                |         a3 = *((s5 + 3));
    0x00065da4 lw a2, 8(s5)                  |         a2 = *((s5 + 2));
    0x00065da8 lw s1, 0xc0(s2)               |         s1 = *((s2 + 48));
                                             |         if (a3 <= 0) {
    0x00065dac blez a3, 0x663fc              |             goto label_43;
                                             |         }
    0x00065db0 lw a0, 0x10(s5)               |         a0 = *((s5 + 4));
                                             | label_9:
    0x00065db4 addiu v0, zero, 0x64          |         v0 = 0x64;
    0x00065db8 lw v1, 0x14(s5)               |         v1 = *((s5 + 5));
    0x00065dbc multu a0, v0                  |         __asm ("multu a0, v0");
    0x00065dc0 mflo a0                       |         __asm ("mflo a0");
    0x00065dc4 mfhi a1                       |         __asm ("mfhi a1");
    0x00065dc8 mul t0, v1, v0                |         __asm ("mul t0, v1, v0");
    0x00065dcc lw t9, -0x797c(gp)            |         t9 = *(gp);
    0x00065dd0 addu a1, t0, a1               |         a1 = t0 + a1;
    0x00065dd4 bal 0x74340                   |         fcn_00074340 ();
    0x00065dd8 lw gp, 0x28(sp)               |         gp = *(var_28h_2);
    0x00065ddc lw a0, (s2)                   |         a0 = *(s2);
    0x00065de0 lw t9, -0x72d8(gp)            |         t9 = sym.imp.apr_itoa;
    0x00065de4 move a1, v0                   |         a1 = v0;
    0x00065de8 jalr t9                       |         t9 ();
    0x00065dec lw gp, 0x28(sp)               |         gp = *(var_28h_2);
    0x00065df0 move a2, v0                   |         a2 = v0;
    0x00065df4 move a1, s0                   |         a1 = s0;
    0x00065df8 lw t9, -0x7590(gp)            |         t9 = sym.imp.apr_table_setn;
    0x00065dfc move a0, s1                   |         a0 = s1;
    0x00065e00 jalr t9                       |         t9 ();
    0x00065e04 lw gp, 0x28(sp)               |         gp = *(var_28h_2);
                                             |     }
                                             | label_10:
    0x00065e08 lw v1, 4(s7)                  |     v1 = *((s7 + 1));
    0x00065e0c lw a0, (s7)                   |     a0 = *(s7);
    0x00065e10 lw v0, 4(s5)                  |     v0 = *((s5 + 1));
    0x00065e14 sw a0, (v1)                   |     *(v1) = a0;
    0x00065e18 lw a0, (s7)                   |     a0 = *(s7);
    0x00065e1c lw a1, 4(s7)                  |     a1 = *((s7 + 1));
    0x00065e20 addiu v1, v0, 4               |     v1 = v0 + 4;
    0x00065e24 sw a1, 4(a0)                  |     *((a0 + 1)) = a1;
    0x00065e28 sw v1, (s7)                   |     *(s7) = v1;
    0x00065e2c lw v1, 8(v0)                  |     v1 = *((v0 + 2));
    0x00065e30 lw a0, 8(s3)                  |     a0 = *((s3 + 2));
    0x00065e34 sw v1, 4(s7)                  |     *((s7 + 1)) = v1;
    0x00065e38 lw v1, 8(v0)                  |     v1 = *((v0 + 2));
    0x00065e3c lw t9, -0x7e30(gp)            |     t9 = sym.ap_pass_brigade;
    0x00065e40 move a1, v0                   |     a1 = v0;
    0x00065e44 sw s7, (v1)                   |     *(v1) = s7;
    0x00065e48 sw s7, 8(v0)                  |     *((v0 + 2)) = s7;
    0x00065e4c jalr t9                       |     t9 ();
    0x00065e50 nop                           |     
    0x00065e54 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x00065e58 lw a0, 4(s5)                  |     a0 = *((s5 + 1));
    0x00065e5c lw t9, -0x754c(gp)            |     t9 = sym.imp.apr_brigade_cleanup;
    0x00065e60 move fp, v0                   |     fp = v0;
    0x00065e64 jalr t9                       |     t9 ();
    0x00065e68 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x00065e6c lw a0, (s2)                   |     a0 = *(s2);
    0x00065e70 move a1, s5                   |     a1 = s5;
    0x00065e74 lw a2, -0x7944(gp)            |     a2 = *(gp);
    0x00065e78 lw t9, -0x764c(gp)            |     t9 = sym.imp.apr_pool_cleanup_run;
    0x00065e7c addiu a2, a2, 0x5430          |     a2 += 0x5430;
    0x00065e80 jalr t9                       |     t9 ();
    0x00065e84 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x00065e88 b 0x659bc                     |     goto label_0;
                                             | label_42:
    0x00065e8c lw a1, -0x7fac(gp)            |     a1 = *(gp);
    0x00065e90 lw t9, -0x7668(gp)            |     t9 = sym.imp.apr_table_get;
    0x00065e94 lw a0, 0xb4(s2)               |     a0 = *((s2 + 45));
                                             |     /* str.Content_Range */
    0x00065e98 addiu a1, a1, -0x58d0         |     a1 += -0x58d0;
    0x00065e9c jalr t9                       |     t9 ();
    0x00065ea0 move s5, v0                   |     s5 = v0;
    0x00065ea4 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
                                             |     if (v0 != 0) {
    0x00065ea8 bnez v0, 0x65cc0              |         goto label_5;
                                             |     }
    0x00065eac lw s4, -0x7fac(gp)            |     s4 = *(gp);
    0x00065eb0 lw t9, -0x7668(gp)            |     t9 = sym.imp.apr_table_get;
    0x00065eb4 lw a0, 0xb4(s2)               |     a0 = *((s2 + 45));
    0x00065eb8 sw s4, 0x38(sp)               |     *(var_38h) = s4;
                                             |     /* str.Content_Encoding */
    0x00065ebc addiu a1, s4, -0x5918         |     a1 = s4 + -0x5918;
    0x00065ec0 jalr t9                       |     t9 ();
    0x00065ec4 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x00065ec8 move s0, v0                   |     s0 = v0;
    0x00065ecc lw a0, 0xb8(s2)               |     a0 = *((s2 + 46));
    0x00065ed0 lw t9, -0x7668(gp)            |     t9 = sym.imp.apr_table_get;
                                             |     if (v0 == 0) {
    0x00065ed4 beqz v0, 0x66508              |         goto label_44;
                                             |     }
                                             |     /* str.Content_Encoding */
    0x00065ed8 addiu a1, s4, -0x5918         |     a1 = s4 + -0x5918;
    0x00065edc jalr t9                       |     t9 ();
    0x00065ee0 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
                                             |     if (v0 == 0) {
    0x00065ee4 beqz v0, 0x664f4              |         goto label_45;
                                             |     }
    0x00065ee8 lw a2, -0x7fac(gp)            |     a2 = *(gp);
    0x00065eec lw t9, -0x76e8(gp)            |     t9 = sym.imp.apr_pstrcat
    0x00065ef0 lw a0, (s2)                   |     a0 = *(s2);
    0x00065ef4 move a1, s0                   |     a1 = s0;
    0x00065ef8 sw zero, 0x10(sp)             |     *(var_10h_3) = 0;
    0x00065efc move a3, v0                   |     a3 = v0;
                                             |     /* esilref: '' */
    0x00065f00 addiu a2, a2, -0x3554         |     a2 += -0x3554;
    0x00065f04 jalr t9                       |     t9 ();
    0x00065f08 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x00065f0c move s0, v0                   |     s0 = v0;
                                             | label_20:
    0x00065f10 lw s7, 0xcc(s2)               |     s7 = *((s2 + 51));
                                             |     if (s7 == 0) {
    0x00065f14 beql s7, zero, 0x664b0        |         goto label_46;
                                             |     }
    0x00065f18 move s7, s0                   |     s7 = s0;
    0x00065f1c lw a2, -0x7fac(gp)            |     a2 = *(gp);
                                             |     if (s0 != 0) {
    0x00065f20 bnez s0, 0x6648c              |         goto label_18;
                                             |     }
                                             | label_19:
    0x00065f24 lw t9, -0x78ac(gp)            |     t9 = sym.ap_get_token;
                                             | label_16:
    0x00065f28 lw a0, (s2)                   |     a0 = *(s2);
    0x00065f2c addiu s0, sp, 0x70            |     s0 = sp + 0x70;
    0x00065f30 move a2, zero                 |     a2 = 0;
    0x00065f34 move a1, s0                   |     a1 = s0;
    0x00065f38 sw s7, 0x70(sp)               |     *(var_70h) = s7;
    0x00065f3c jalr t9                       |     t9 ();
    0x00065f40 move fp, v0                   |     fp = v0;
    0x00065f44 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
                                             |     if (v0 == 0) {
    0x00065f48 beqz v0, 0x65fe8              |         goto label_12;
                                             |     }
    0x00065f4c lb v0, (v0)                   |     v0 = *(v0);
    0x00065f50 lw v0, -0x7fac(gp)            |     v0 = *(gp);
                                             |     if (v0 == 0) {
    0x00065f54 beqz v0, 0x65fe8              |         goto label_12;
                                             |     }
    0x00065f58 lw s4, -0x7fac(gp)            |     s4 = *(gp);
    0x00065f5c sw v0, 0x40(sp)               |     *(var_40h_2) = v0;
    0x00065f60 lw v0, -0x7fac(gp)            |     v0 = *(gp);
                                             |     /* str.7bit */
    0x00065f64 addiu v0, v0, 0x4e54          |     v0 += 0x4e54;
    0x00065f68 sw v0, 0x34(sp)               |     *(var_34h_2) = v0;
    0x00065f6c lw v0, -0x7fac(gp)            |     v0 = *(gp);
                                             |     /* str.8bit */
    0x00065f70 addiu s6, v0, 0x4e5c          |     s6 = v0 + 0x4e5c;
    0x00065f74 lw t9, -0x7740(gp)            |     t9 = sym.imp.strcmp;
                                             |     /* str.identity */
                                             | label_13:
    0x00065f78 addiu a1, s4, 0x4e48          |     a1 = s4 + 0x4e48;
    0x00065f7c move a0, fp                   |     a0 = fp;
    0x00065f80 jalr t9                       |     t9 ();
    0x00065f84 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
                                             |     if (v0 == 0) {
    0x00065f88 beqz v0, 0x65fd8              |         goto label_47;
                                             |     }
    0x00065f8c lw t9, -0x7740(gp)            |     t9 = sym.imp.strcmp;
    0x00065f90 lw a1, 0x34(sp)               |     a1 = *(var_34h_2);
    0x00065f94 move a0, fp                   |     a0 = fp;
    0x00065f98 jalr t9                       |     t9 ();
    0x00065f9c lw gp, 0x28(sp)               |     gp = *(var_28h_2);
                                             |     if (v0 == 0) {
    0x00065fa0 beqz v0, 0x65fd8              |         goto label_47;
                                             |     }
    0x00065fa4 lw t9, -0x7740(gp)            |     t9 = sym.imp.strcmp;
    0x00065fa8 move a1, s6                   |     a1 = s6;
    0x00065fac move a0, fp                   |     a0 = fp;
    0x00065fb0 jalr t9                       |     t9 ();
    0x00065fb4 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
                                             |     if (v0 == 0) {
    0x00065fb8 beqz v0, 0x65fd8              |         goto label_47;
                                             |     }
    0x00065fbc lw v0, 0x40(sp)               |     v0 = *(var_40h_2);
    0x00065fc0 lw t9, -0x7740(gp)            |     t9 = sym.imp.strcmp;
    0x00065fc4 addiu a1, v0, 0x4e64          |     a1 = v0 + 0x4e64;
    0x00065fc8 move a0, fp                   |     a0 = fp;
    0x00065fcc jalr t9                       |     t9 ();
    0x00065fd0 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
                                             |     if (v0 != 0) {
    0x00065fd4 bnez v0, 0x65cc0              |         goto label_5;
                                             |     }
                                             | label_47:
    0x00065fd8 lw v0, 0x70(sp)               |     v0 = *(var_70h);
    0x00065fdc lb v1, (v0)                   |     v1 = *(v0);
    0x00065fe0 addiu v1, v0, 1               |     v1 = v0 + 1;
                                             |     if (v1 != 0) {
    0x00065fe4 bnez v1, 0x66434              |         goto label_48;
                                             |     }
                                             | label_12:
    0x00065fe8 lw s0, -0x7fac(gp)            |     s0 = *(gp);
                                             | label_14:
    0x00065fec lw a1, -0x7fac(gp)            |     a1 = *(gp);
    0x00065ff0 lw t9, -0x76cc(gp)            |     t9 = sym.imp.apr_table_mergen;
    0x00065ff4 lw a0, 0xb4(s2)               |     a0 = *((s2 + 45));
                                             |     /* str.Accept_Encoding */
    0x00065ff8 addiu a2, s0, 0x4e6c          |     a2 = s0 + 0x4e6c;
                                             |     /* str.Vary */
    0x00065ffc addiu a1, a1, -0x3c0          |     a1 += -aav.0x000003c0;
    0x00066000 jalr t9                       |     t9 ();
    0x00066004 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x00066008 lw a0, 0xb0(s2)               |     a0 = *((s2 + 44));
    0x0006600c lw t9, -0x7668(gp)            |     t9 = sym.imp.apr_table_get;
                                             |     /* str.Accept_Encoding */
    0x00066010 addiu a1, s0, 0x4e6c          |     a1 = s0 + 0x4e6c;
    0x00066014 jalr t9                       |     t9 ();
    0x00066018 sw v0, 0x70(sp)               |     *(var_70h) = v0;
    0x0006601c lw gp, 0x28(sp)               |     gp = *(var_28h_2);
                                             |     if (v0 == 0) {
    0x00066020 beqz v0, 0x65cc0              |         goto label_5;
                                             |     }
    0x00066024 lw t9, -0x78ac(gp)            |     t9 = sym.ap_get_token;
    0x00066028 addiu s0, sp, 0x70            |     s0 = sp + 0x70;
    0x0006602c lw a0, (s2)                   |     a0 = *(s2);
    0x00066030 move a2, zero                 |     a2 = 0;
    0x00066034 move a1, s0                   |     a1 = s0;
    0x00066038 jalr t9                       |     t9 ();
    0x0006603c move fp, v0                   |     fp = v0;
    0x00066040 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
                                             |     if (v0 == 0) {
    0x00066044 beqz v0, 0x66474              |         goto label_49;
                                             |     }
    0x00066048 lb v0, (v0)                   |     v0 = *(v0);
    0x0006604c lw v0, -0x7fac(gp)            |     v0 = *(gp);
                                             |     if (v0 == 0) {
    0x00066050 beqz v0, 0x66100              |         goto label_50;
                                             |     }
    0x00066054 addiu s4, zero, 0x3b          |     s4 = 0x3b;
    0x00066058 sw v0, 0x34(sp)               |     *(var_34h_2) = v0;
                                             |     /* esilref: 'br' */
    0x0006605c addiu v0, v0, 0x4e7c          |     v0 += 0x4e7c;
    0x00066060 move s6, v0                   |     s6 = v0;
    0x00066064 lw t9, -0x7e28(gp)            |     t9 = sym.ap_cstr_casecmp;
                                             | label_6:
    0x00066068 move a1, s6                   |     a1 = s6;
    0x0006606c move a0, fp                   |     a0 = fp;
    0x00066070 jalr t9                       |     t9 ();
    0x00066074 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
                                             |     if (v0 == 0) {
    0x00066078 beqz v0, 0x66520              |         goto label_51;
                                             |     }
    0x0006607c lw v0, 0x70(sp)               |     v0 = *(var_70h);
    0x00066080 lb v1, (v0)                   |     v1 = *(v0);
    0x00066084 addiu a0, zero, 0x2c          |     a0 = 0x2c;
                                             |     if (v1 != s4) {
    0x00066088 bne v1, s4, 0x660bc           |         goto label_52;
                                             |     }
                                             |     do {
    0x0006608c lw t9, -0x78ac(gp)            |         t9 = sym.ap_get_token;
    0x00066090 lw a0, (s2)                   |         a0 = *(s2);
    0x00066094 addiu v0, v0, 1               |         v0++;
    0x00066098 addiu a2, zero, 1             |         a2 = 1;
    0x0006609c move a1, s0                   |         a1 = s0;
    0x000660a0 sw v0, 0x70(sp)               |         *(var_70h) = v0;
    0x000660a4 jalr t9                       |         t9 ();
    0x000660a8 lw v0, 0x70(sp)               |         v0 = *(var_70h);
    0x000660ac lb v1, (v0)                   |         v1 = *(v0);
    0x000660b0 lw gp, 0x28(sp)               |         gp = *(var_28h_2);
    0x000660b4 beq v1, s4, 0x6608c           |         
                                             |     } while (v1 == s4);
    0x000660b8 addiu a0, zero, 0x2c          |     a0 = 0x2c;
                                             | label_52:
    0x000660bc lb v0, (v0)                   |     v0 = *(v0);
                                             |     if (v1 != a0) {
    0x000660c0 bnel v1, a0, 0x660d0          |         
    0x000660c4 addiu v0, v0, 1               |         v0++;
    0x000660c8 sw v0, 0x70(sp)               |         *(var_70h) = v0;
    0x000660cc lb v0, (v0)                   |         v0 = *(v0);
                                             |     }
    0x000660d0 lw t9, -0x78ac(gp)            |     t9 = sym.ap_get_token;
                                             |     if (v0 == 0) {
    0x000660d4 beqz v0, 0x65cc0              |         goto label_5;
                                             |     }
    0x000660d8 lw a0, (s2)                   |     a0 = *(s2);
    0x000660dc move a2, zero                 |     a2 = 0;
    0x000660e0 move a1, s0                   |     a1 = s0;
    0x000660e4 jalr t9                       |     t9 ();
    0x000660e8 move fp, v0                   |     fp = v0;
    0x000660ec lw gp, 0x28(sp)               |     gp = *(var_28h_2);
                                             |     if (v0 == 0) {
    0x000660f0 beqz v0, 0x66474              |         goto label_49;
                                             |     }
    0x000660f4 lb v0, (v0)                   |     v0 = *(v0);
    0x000660f8 lw t9, -0x7e28(gp)            |     t9 = sym.ap_cstr_casecmp;
                                             |     if (v0 != 0) {
    0x000660fc bnez v0, 0x66068              |         goto label_6;
                                             |     }
                                             | label_50:
    0x00066100 lw v0, 0x70(sp)               |     v0 = *(var_70h);
    0x00066104 lb a0, (v0)                   |     a0 = *(v0);
    0x00066108 lw t9, -0x7e34(gp)            |     t9 = sym.ap_remove_output_filter;
                                             |     if (a0 == 0) {
    0x0006610c beqz a0, 0x65cc4              |         goto label_7;
                                             |     }
    0x00066110 move s5, fp                   |     s5 = fp;
                                             | label_21:
    0x00066114 addiu v1, zero, 0x3b          |     v1 = 0x3b;
                                             | label_15:
    0x00066118 addiu a1, zero, 0x3b          |     a1 = 0x3b;
                                             |     if (a0 != v1) {
    0x0006611c bne a0, v1, 0x66134           |         goto label_53;
                                             |     }
    0x00066120 addiu v0, v0, 1               |     v0++;
                                             |     do {
    0x00066124 sw v0, 0x70(sp)               |         *(var_70h) = v0;
    0x00066128 lb v1, (v0)                   |         v1 = *(v0);
    0x0006612c addiu v0, v0, 1               |         v0++;
    0x00066130 beq v1, a1, 0x66124           |         
                                             |     } while (v1 == a1);
                                             | label_53:
    0x00066134 lw t9, -0x78ac(gp)            |     t9 = sym.ap_get_token;
    0x00066138 lw a0, (s2)                   |     a0 = *(s2);
    0x0006613c addiu a2, zero, 1             |     a2 = 1;
    0x00066140 move a1, s0                   |     a1 = s0;
    0x00066144 jalr t9                       |     t9 ();
    0x00066148 lw v1, 0x48(sp)               |     v1 = *(var_48h_2);
    0x0006614c lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x00066150 lw a2, 8(v1)                  |     a2 = *((v1 + 2));
    0x00066154 move s0, v0                   |     s0 = v0;
                                             |     if (a2 < 0) {
    0x00066158 bltz a2, 0x664c0              |         goto label_54;
                                             |     }
    0x0006615c lw v0, 0x108(s2)              |     v0 = *(s2);
                                             |     if (v0 == 0) {
    0x00066160 beql v0, zero, 0x66544        |         goto label_55;
                                             |     }
    0x00066164 lw a0, 4(s2)                  |     a0 = *((s2 + 1));
    0x00066168 lw v1, (v0)                   |     v1 = *(v0);
    0x0006616c addu v1, v1, a2               |     v1 += a2;
                                             |     if (v1 == 0) {
    0x00066170 beqz v1, 0x664e4              |         goto label_30;
                                             |     }
    0x00066174 lb v1, (v1)                   |     v1 = *(v1);
                                             |     if (v1 < 0) {
    0x00066178 bltzl v1, 0x664e8             |         goto label_23;
                                             |     }
    0x0006617c lw v0, 4(v0)                  |     v0 = *((v0 + 1));
    0x00066180 slti v0, v1, 8                |     v0 = (v1 < 8) ? 1 : 0;
                                             | label_24:
    0x00066184 xori v0, v0, 1                |     v0 ^= 1;
                                             |     if (v0 != 0) {
                                             | label_17:
    0x00066188 beqz v0, 0x661d4              |         
    0x0006618c nop                           |         
    0x00066190 lw v0, -0x7fac(gp)            |         v0 = *(gp);
                                             |         if (s5 == 0) {
    0x00066194 beqz s5, 0x66610              |             goto label_56;
                                             |         }
    0x00066198 move v0, s5                   |         v0 = s5;
                                             | label_28:
    0x0006619c sw v0, 0x1c(sp)               |         *(var_1ch_2) = v0;
    0x000661a0 lw v0, -0x7fac(gp)            |         v0 = *(gp);
    0x000661a4 lw a0, -0x7fac(gp)            |         a0 = *(gp);
    0x000661a8 lw t9, -0x7f08(gp)            |         t9 = sym.ap_log_rerror_;
                                             |         /* str.token:__s___q:__s */
    0x000661ac addiu v0, v0, 0x4e80          |         v0 += 0x4e80;
    0x000661b0 sw s0, 0x20(sp)               |         *(var_20h_3) = s0;
    0x000661b4 sw v0, 0x18(sp)               |         *(var_18h_2) = v0;
    0x000661b8 sw s2, 0x14(sp)               |         *(var_14h_2) = s2;
    0x000661bc sw zero, 0x10(sp)             |         *(var_10h_3) = 0;
    0x000661c0 addiu a3, zero, 8             |         a3 = 8;
    0x000661c4 addiu a1, zero, 0x1a6         |         a1 = 0x1a6;
                                             |         /* str._usr_src_debug_apache2_2.4.57_r0_httpd_2.4.57_modules_filters_mod_brotli.c */
    0x000661c8 addiu a0, a0, 0x4dc8          |         a0 += 0x4dc8;
    0x000661cc bal 0x530a8                   |         sym_ap_log_rerror_ ();
    0x000661d0 lw gp, 0x28(sp)               |         gp = *(var_28h_2);
                                             |     }
    0x000661d4 lw t9, -0x7e34(gp)            |     t9 = sym.ap_remove_output_filter;
                                             |     if (s5 == 0) {
    0x000661d8 beqz s5, 0x65cc4              |         goto label_7;
                                             |     }
    0x000661dc lb v0, (s5)                   |     v0 = *(s5);
                                             |     if (v0 == 0) {
    0x000661e0 beqz v0, 0x65cc4              |         goto label_7;
                                             |     }
    0x000661e4 nop                           |     
    0x000661e8 lw t9, -0x74c4(gp)            |     t9 = sym.imp.strlen;
                                             |     if (s0 == 0) {
    0x000661ec beqz s0, 0x66224              |         goto label_57;
                                             |     }
    0x000661f0 move a0, s0                   |     a0 = s0;
    0x000661f4 jalr t9                       |     t9 ();
    0x000661f8 sltiu v1, v0, 3               |     v1 = (v0 < 3) ? 1 : 0;
    0x000661fc lw gp, 0x28(sp)               |     gp = *(var_28h_2);
                                             |     if (v1 != 0) {
    0x00066200 bnez v1, 0x66224              |         goto label_57;
                                             |     }
    0x00066204 lw a0, -0x7fac(gp)            |     a0 = *(gp);
    0x00066208 lw t9, -0x76c4(gp)            |     t9 = sym.imp.strncmp;
    0x0006620c move a2, v0                   |     a2 = v0;
    0x00066210 move a1, s0                   |     a1 = s0;
                                             |     /* str.q0.000 */
    0x00066214 addiu a0, a0, 0x4e98          |     a0 += 0x4e98;
    0x00066218 jalr t9                       |     t9 ();
    0x0006621c lw gp, 0x28(sp)               |     gp = *(var_28h_2);
                                             |     if (v0 == 0) {
    0x00066220 beqz v0, 0x65cc0              |         goto label_5;
                                             |     }
                                             | label_57:
    0x00066224 lw v0, -0x7fac(gp)            |     v0 = *(gp);
    0x00066228 sw v0, 0x34(sp)               |     *(var_34h_2) = v0;
                                             | label_22:
    0x0006622c lw a1, -0x7fac(gp)            |     a1 = *(gp);
                                             |     if (s7 != 0) {
    0x00066230 beqz s7, 0x6624c              |         
    0x00066234 lw t9, -0x7e28(gp)            |         t9 = sym.ap_cstr_casecmp;
                                             |         /* str.identity */
    0x00066238 addiu a1, a1, 0x4e48          |         a1 += 0x4e48;
    0x0006623c move a0, s7                   |         a0 = s7;
    0x00066240 jalr t9                       |         t9 ();
    0x00066244 lw gp, 0x28(sp)               |         gp = *(var_28h_2);
                                             |         if (v0 != 0) {
    0x00066248 bnez v0, 0x6642c              |             goto label_58;
                                             |         }
                                             |     }
    0x0006624c lw t9, -0x7590(gp)            |     t9 = sym.imp.apr_table_setn;
                                             | label_11:
    0x00066250 lw v0, 0x34(sp)               |     v0 = *(var_34h_2);
    0x00066254 lw a0, 0xb4(s2)               |     a0 = *((s2 + 45));
    0x00066258 addiu a2, v0, 0x4e7c          |     a2 = v0 + 0x4e7c;
    0x0006625c lw v0, 0x38(sp)               |     v0 = *(var_38h);
    0x00066260 addiu a1, v0, -0x5918         |     a1 = v0 + -0x5918;
    0x00066264 jalr t9                       |     t9 ();
    0x00066268 lw v0, 0xcc(s2)               |     v0 = *((s2 + 51));
    0x0006626c lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x00066270 lw a0, 0xb4(s2)               |     a0 = *((s2 + 45));
                                             |     if (v0 != 0) {
    0x00066274 beqz v0, 0x66294              |         
    0x00066278 lw v0, 0x38(sp)               |         v0 = *(var_38h);
    0x0006627c lw t9, -0x7668(gp)            |         t9 = sym.imp.apr_table_get;
    0x00066280 addiu a1, v0, -0x5918         |         a1 = v0 + -0x5918;
    0x00066284 jalr t9                       |         t9 ();
    0x00066288 lw a0, 0xb4(s2)               |         a0 = *((s2 + 45));
    0x0006628c lw gp, 0x28(sp)               |         gp = *(var_28h_2);
    0x00066290 sw v0, 0xcc(s2)               |         *((s2 + 51)) = v0;
                                             |     }
    0x00066294 lw a1, -0x7fac(gp)            |     a1 = *(gp);
    0x00066298 lw t9, -0x7270(gp)            |     t9 = sym.imp.apr_table_unset;
                                             |     /* str.Content_Length */
    0x0006629c addiu a1, a1, -0x688c         |     a1 += -aav.0x0000688c;
    0x000662a0 jalr t9                       |     t9 ();
    0x000662a4 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x000662a8 lw a0, 0xb4(s2)               |     a0 = *((s2 + 45));
    0x000662ac lw a1, -0x7fac(gp)            |     a1 = *(gp);
    0x000662b0 lw t9, -0x7270(gp)            |     t9 = sym.imp.apr_table_unset;
                                             |     /* str.Content_MD5 */
    0x000662b4 addiu a1, a1, -0x58dc         |     a1 += -0x58dc;
    0x000662b8 jalr t9                       |     t9 ();
    0x000662bc lw v0, 0x54(sp)               |     v0 = *(var_54h_2);
    0x000662c0 addiu v1, zero, 2             |     v1 = 2;
    0x000662c4 lw v0, 0xc(v0)                |     v0 = *((v0 + 3));
    0x000662c8 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
                                             |     if (v0 == v1) {
    0x000662cc beq v0, v1, 0x66618           |         goto label_59;
                                             |     }
    0x000662d0 lw s0, -0x7fac(gp)            |     s0 = *(gp);
                                             |     if (v0 == 0) {
    0x000662d4 beqz v0, 0x66574              |         goto label_60;
                                             |     }
                                             | label_26:
    0x000662d8 lw v1, 0x44(s2)               |     v1 = *((s2 + 17));
                                             | label_27:
    0x000662dc addiu v0, zero, 0x130         |     v0 = aav.0x00000130;
    0x000662e0 lw t9, -0x7544(gp)            |     t9 = sym.imp.apr_palloc;
                                             |     if (v1 == v0) {
    0x000662e4 beq v1, v0, 0x65cc0           |         goto label_5;
                                             |     }
    0x000662e8 lw v0, 0x10(s3)               |     v0 = *((s3 + 4));
    0x000662ec lw s4, (s2)                   |     s4 = *(s2);
    0x000662f0 lw s0, 0x40(v0)               |     s0 = *((v0 + 16));
    0x000662f4 lw v0, 0x54(sp)               |     v0 = *(var_54h_2);
    0x000662f8 addiu a1, zero, 0x18          |     a1 = 0x18;
    0x000662fc move a0, s4                   |     a0 = s4;
    0x00066300 lw v1, (v0)                   |     v1 = *(v0);
    0x00066304 lw s7, 4(v0)                  |     s7 = *((v0 + 1));
    0x00066308 sw v1, 0x34(sp)               |     *(var_34h_2) = v1;
    0x0006630c lw s6, 8(v0)                  |     s6 = *((v0 + 2));
    0x00066310 jalr t9                       |     t9 ();
    0x00066314 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x00066318 addiu a2, zero, 0x18          |     a2 = 0x18;
    0x0006631c move a1, zero                 |     a1 = 0;
    0x00066320 lw t9, -0x7308(gp)            |     t9 = sym.imp.memset;
    0x00066324 move a0, v0                   |     a0 = v0;
    0x00066328 jalr t9                       |     t9 ();
    0x0006632c lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x00066330 move a2, s0                   |     a2 = s0;
    0x00066334 move s5, v0                   |     s5 = v0;
    0x00066338 lw a1, -0x7944(gp)            |     a1 = *(gp);
    0x0006633c lw a0, -0x7944(gp)            |     a0 = *(gp);
    0x00066340 lw t9, -0x7234(gp)            |     t9 = sym.imp.BrotliEncoderCreateInstance;
    0x00066344 addiu a1, a1, 0x5478          |     a1 += 0x5478;
    0x00066348 addiu a0, a0, 0x549c          |     a0 += 0x549c;
    0x0006634c jalr t9                       |     t9 ();
    0x00066350 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x00066354 lw v1, 0x34(sp)               |     v1 = *(var_34h_2);
    0x00066358 addiu a1, zero, 1             |     a1 = 1;
    0x0006635c lw t9, -0x7784(gp)            |     t9 = sym.imp.BrotliEncoderSetParameter;
    0x00066360 move a2, v1                   |     a2 = v1;
    0x00066364 move a0, v0                   |     a0 = v0;
    0x00066368 sw v0, (s5)                   |     *(s5) = v0;
    0x0006636c jalr t9                       |     t9 ();
    0x00066370 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x00066374 lw a0, (s5)                   |     a0 = *(s5);
    0x00066378 move a2, s7                   |     a2 = s7;
    0x0006637c lw t9, -0x7784(gp)            |     t9 = sym.imp.BrotliEncoderSetParameter;
    0x00066380 addiu a1, zero, 2             |     a1 = 2;
    0x00066384 jalr t9                       |     t9 ();
    0x00066388 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006638c lw a0, (s5)                   |     a0 = *(s5);
    0x00066390 move a2, s6                   |     a2 = s6;
    0x00066394 lw t9, -0x7784(gp)            |     t9 = sym.imp.BrotliEncoderSetParameter;
    0x00066398 addiu a1, zero, 3             |     a1 = 3;
    0x0006639c jalr t9                       |     t9 ();
    0x000663a0 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x000663a4 move a1, s5                   |     a1 = s5;
    0x000663a8 move a0, s4                   |     a0 = s4;
    0x000663ac lw a2, -0x7944(gp)            |     a2 = *(gp);
    0x000663b0 lw t9, -0x7280(gp)            |     t9 = sym.imp.apr_pool_cleanup_register;
    0x000663b4 lw a3, -0x73e0(gp)            |     a3 = *((gp - 7416));
    0x000663b8 addiu a2, a2, 0x5430          |     a2 += 0x5430;
    0x000663bc jalr t9                       |     t9 ();
    0x000663c0 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x000663c4 move a1, s0                   |     a1 = s0;
    0x000663c8 lw t9, -0x7344(gp)            |     t9 = sym.imp.apr_brigade_create;
    0x000663cc move a0, s4                   |     a0 = s4;
    0x000663d0 jalr t9                       |     t9 ();
    0x000663d4 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x000663d8 move v1, zero                 |     v1 = 0;
    0x000663dc sw v0, 4(s5)                  |     *((s5 + 1)) = v0;
    0x000663e0 move v0, zero                 |     v0 = 0;
    0x000663e4 sw v0, 8(s5)                  |     *((s5 + 2)) = v0;
    0x000663e8 sw v1, 0xc(s5)                |     *((s5 + 3)) = v1;
    0x000663ec sw v0, 0x10(s5)               |     *((s5 + 4)) = v0;
    0x000663f0 sw v1, 0x14(s5)               |     *((s5 + 5)) = v1;
    0x000663f4 sw s5, 4(s3)                  |     *((s3 + 1)) = s5;
    0x000663f8 b 0x65900                     |     goto label_8;
                                             | label_43:
    0x000663fc lw a2, -0x7fac(gp)            |     a2 = *(gp);
                                             |     if (a3 == 0) {
    0x00066400 bnel a3, zero, 0x66410        |         goto label_61;
                                             |     }
    0x00066404 lw a0, 0x10(s5)               |     a0 = *((s5 + 4));
                                             |     if (a2 == 0) {
    0x00066408 bnel a2, zero, 0x65db4        |         goto label_9;
                                             |     }
    0x0006640c lw a2, -0x7fac(gp)            |     a2 = *(gp);
                                             | label_61:
    0x00066410 lw t9, -0x7590(gp)            |     t9 = sym.imp.apr_table_setn;
    0x00066414 addiu a2, a2, -0x7d4          |     a2 += -aav.0x000007d4;
    0x00066418 move a1, s0                   |     a1 = s0;
    0x0006641c move a0, s1                   |     a0 = s1;
    0x00066420 jalr t9                       |     t9 ();
    0x00066424 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x00066428 b 0x65e08                     |     goto label_10;
                                             | label_58:
    0x0006642c lw t9, -0x76cc(gp)            |     t9 = sym.imp.apr_table_mergen;
    0x00066430 b 0x66250                     |     goto label_11;
                                             | label_48:
    0x00066434 sw v1, 0x70(sp)               |     *(var_70h) = v1;
    0x00066438 lb v0, 1(v0)                  |     v0 = *((v0 + 1));
    0x0006643c lw t9, -0x78ac(gp)            |     t9 = sym.ap_get_token;
                                             |     if (v0 == 0) {
    0x00066440 beqz v0, 0x65fe8              |         goto label_12;
                                             |     }
    0x00066444 lw a0, (s2)                   |     a0 = *(s2);
    0x00066448 move a2, zero                 |     a2 = 0;
    0x0006644c move a1, s0                   |     a1 = s0;
    0x00066450 jalr t9                       |     t9 ();
    0x00066454 move fp, v0                   |     fp = v0;
    0x00066458 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
                                             |     if (v0 == 0) {
    0x0006645c beqz v0, 0x65fe8              |         goto label_12;
                                             |     }
    0x00066460 lb v0, (v0)                   |     v0 = *(v0);
    0x00066464 lw t9, -0x7740(gp)            |     t9 = sym.imp.strcmp;
                                             |     if (v0 != 0) {
    0x00066468 bnez v0, 0x65f78              |         goto label_13;
                                             |     }
    0x0006646c lw s0, -0x7fac(gp)            |     s0 = *(gp);
    0x00066470 b 0x65fec                     |     goto label_14;
                                             | label_49:
    0x00066474 lw v0, 0x70(sp)               |     v0 = *(var_70h);
    0x00066478 lb a0, (v0)                   |     a0 = *(v0);
    0x0006647c addiu v1, zero, 0x3b          |     v1 = 0x3b;
                                             |     if (a0 != 0) {
    0x00066480 bnez a0, 0x66118              |         goto label_15;
                                             |     }
    0x00066484 lw t9, -0x7e34(gp)            |     t9 = sym.ap_remove_output_filter;
    0x00066488 b 0x65cc4                     |     goto label_7;
                                             | label_18:
    0x0006648c lw t9, -0x76e8(gp)            |     t9 = sym.imp.apr_pstrcat
    0x00066490 lw a0, (s2)                   |     a0 = *(s2);
    0x00066494 move a3, s7                   |     a3 = s7;
    0x00066498 sw zero, 0x10(sp)             |     *(var_10h_3) = 0;
                                             |     /* esilref: '' */
    0x0006649c addiu a2, a2, -0x3554         |     a2 += -0x3554;
    0x000664a0 move a1, s0                   |     a1 = s0;
    0x000664a4 jalr t9                       |     t9 ();
    0x000664a8 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x000664ac move s7, v0                   |     s7 = v0;
                                             | label_46:
    0x000664b0 lw s0, -0x7fac(gp)            |     s0 = *(gp);
                                             |     if (s7 == 0) {
    0x000664b4 beqz s7, 0x65fec              |         goto label_14;
                                             |     }
    0x000664b8 lw t9, -0x78ac(gp)            |     t9 = sym.ap_get_token;
    0x000664bc b 0x65f28                     |     goto label_16;
                                             | label_54:
    0x000664c0 lw v0, 0x108(s2)              |     v0 = *(s2);
    0x000664c4 lw v0, 4(v0)                  |     v0 = *((v0 + 1));
                                             |     if (v0 != 0) {
    0x000664c8 bnel v0, zero, 0x664e8        |         
    0x000664cc lw a0, 4(s2)                  |         a0 = *((s2 + 1));
    0x000664d0 lw v0, 0x60(a0)               |         v0 = *((a0 + 24));
                                             | label_25:
    0x000664d4 lw v0, 4(v0)                  |         v0 = *((v0 + 1));
                                             |         if (v0 == 0) {
    0x000664d8 bnel v0, zero, 0x664e8        |             goto label_23;
                                             |         }
    0x000664dc lw v0, 8(s2)                  |         v0 = *((s2 + 2));
    0x000664e0 addiu v0, v0, 0x10            |         v0 += 0x10;
                                             | label_30:
    0x000664e4 lw v0, 4(v0)                  |         v0 = *((v0 + 1));
                                             |     }
                                             | label_23:
    0x000664e8 slti v0, v0, 8                |     v0 = (v0 < 8) ? 1 : 0;
    0x000664ec xori v0, v0, 1                |     v0 ^= 1;
    0x000664f0 b 0x66188                     |     goto label_17;
                                             | label_45:
    0x000664f4 lw s7, 0xcc(s2)               |     s7 = *((s2 + 51));
    0x000664f8 lw a2, -0x7fac(gp)            |     a2 = *(gp);
                                             |     if (s7 != 0) {
    0x000664fc bnez s7, 0x6648c              |         goto label_18;
                                             |     }
    0x00066500 move s7, s0                   |     s7 = s0;
    0x00066504 b 0x65f24                     |     goto label_19;
                                             | label_44:
    0x00066508 lw v0, 0x38(sp)               |     v0 = *(var_38h);
    0x0006650c addiu a1, v0, -0x5918         |     a1 = v0 + -0x5918;
    0x00066510 jalr t9                       |     t9 ();
    0x00066514 move s0, v0                   |     s0 = v0;
    0x00066518 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006651c b 0x65f10                     |     goto label_20;
                                             | label_51:
    0x00066520 lw v0, 0x70(sp)               |     v0 = *(var_70h);
    0x00066524 lb a0, (v0)                   |     a0 = *(v0);
    0x00066528 move s5, fp                   |     s5 = fp;
                                             |     if (a0 != 0) {
    0x0006652c bnez a0, 0x66114              |         goto label_21;
                                             |     }
    0x00066530 lb v0, (fp)                   |     v0 = *(fp);
    0x00066534 lw t9, -0x7e34(gp)            |     t9 = sym.ap_remove_output_filter;
                                             |     if (v0 != 0) {
    0x00066538 bnez v0, 0x6622c              |         goto label_22;
                                             |     }
    0x0006653c b 0x65cc4                     |     goto label_7;
    0x00066540 nop                           |     
                                             | label_55:
    0x00066544 lw v0, 0x60(a0)               |     v0 = *((a0 + 24));
                                             |     if (v0 == 0) {
    0x00066548 beql v0, zero, 0x66634        |         goto label_62;
                                             |     }
    0x0006654c lw v0, 8(s2)                  |     v0 = *((s2 + 2));
    0x00066550 lw v1, (v0)                   |     v1 = *(v0);
                                             |     if (v1 == 0) {
    0x00066554 beql v1, zero, 0x664e8        |         goto label_23;
                                             |     }
    0x00066558 lw v0, 4(v0)                  |     v0 = *((v0 + 1));
    0x0006655c addu v1, v1, a2               |     v1 += a2;
                                             | label_29:
    0x00066560 lb v1, (v1)                   |     v1 = *(v1);
                                             |     if (v1 >= 0) {
    0x00066564 bgezl v1, 0x66184             |         goto label_24;
                                             |     }
    0x00066568 slti v0, v1, 8                |     v0 = (v1 < 8) ? 1 : 0;
    0x0006656c lw v0, 0x60(a0)               |     v0 = *((a0 + 24));
    0x00066570 b 0x664d4                     |     goto label_25;
                                             | label_60:
    0x00066574 lw t9, -0x7668(gp)            |     t9 = sym.imp.apr_table_get;
    0x00066578 lw a0, 0xb4(s2)               |     a0 = *((s2 + 45));
                                             |     /* esilref: 'ETag' */
    0x0006657c addiu a1, s0, -0x2768         |     a1 = s0 + -0x2768;
    0x00066580 jalr t9                       |     t9 ();
    0x00066584 move s4, v0                   |     s4 = v0;
    0x00066588 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
                                             |     if (v0 == 0) {
    0x0006658c beqz v0, 0x662d8              |         goto label_26;
                                             |     }
    0x00066590 lw t9, -0x74c4(gp)            |     t9 = sym.imp.strlen;
    0x00066594 move a0, v0                   |     a0 = v0;
    0x00066598 jalr t9                       |     t9 ();
    0x0006659c sltiu v1, v0, 3               |     v1 = (v0 < 3) ? 1 : 0;
    0x000665a0 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
                                             |     if (v1 != 0) {
    0x000665a4 bnez v1, 0x662d8              |         goto label_26;
                                             |     }
    0x000665a8 addiu a2, v0, -1              |     a2 = v0 + -1;
    0x000665ac addu v1, s4, a2               |     v1 = s4 + a2;
    0x000665b0 addiu v0, zero, 0x22          |     v0 = 0x22;
    0x000665b4 lb v1, (v1)                   |     v1 = *(v1);
    0x000665b8 lw v1, 0x44(s2)               |     v1 = *((s2 + 17));
                                             |     if (v1 == v0) {
    0x000665bc bnel v1, v0, 0x662dc          |         goto label_27;
                                             |     }
    0x000665c0 lw t9, -0x7708(gp)            |     t9 = sym.imp.apr_pstrmemdup;
    0x000665c4 lw a0, (s2)                   |     a0 = *(s2);
    0x000665c8 move a1, s4                   |     a1 = s4;
    0x000665cc jalr t9                       |     t9 ();
    0x000665d0 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x000665d4 lw a0, (s2)                   |     a0 = *(s2);
    0x000665d8 move a3, zero                 |     a3 = 0;
    0x000665dc lw a2, -0x7fac(gp)            |     a2 = *(gp);
    0x000665e0 lw t9, -0x76e8(gp)            |     t9 = sym.imp.apr_pstrcat
                                             |     /* str._br_ */
    0x000665e4 addiu a2, a2, 0x4ea0          |     a2 += 0x4ea0;
    0x000665e8 move a1, v0                   |     a1 = v0;
    0x000665ec jalr t9                       |     t9 ();
    0x000665f0 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x000665f4 lw a0, 0xb4(s2)               |     a0 = *((s2 + 45));
    0x000665f8 move a2, v0                   |     a2 = v0;
    0x000665fc lw t9, -0x7590(gp)            |     t9 = sym.imp.apr_table_setn;
                                             |     /* esilref: 'ETag' */
    0x00066600 addiu a1, s0, -0x2768         |     a1 = s0 + -0x2768;
    0x00066604 jalr t9                       |     t9 ();
    0x00066608 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006660c b 0x662d8                     |     goto label_26;
                                             |     /* esilref: 'NULL' */
                                             | label_56:
    0x00066610 addiu v0, v0, -0x683c         |     v0 += -0x683c;
    0x00066614 b 0x6619c                     |     goto label_28;
                                             | label_59:
    0x00066618 lw a1, -0x7fac(gp)            |     a1 = *(gp);
    0x0006661c lw t9, -0x7270(gp)            |     t9 = sym.imp.apr_table_unset;
    0x00066620 lw a0, 0xb4(s2)               |     a0 = *((s2 + 45));
                                             |     /* esilref: 'ETag' */
    0x00066624 addiu a1, a1, -0x2768         |     a1 += -0x2768;
    0x00066628 jalr t9                       |     t9 ();
    0x0006662c lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x00066630 b 0x662d8                     |     goto label_26;
                                             | label_62:
    0x00066634 lw v1, 0x10(v0)               |     v1 = *((v0 + 4));
    0x00066638 addu v1, v1, a2               |     v1 += a2;
                                             |     if (v1 == 0) {
    0x0006663c bnel v1, zero, 0x66560        |         goto label_29;
                                             |     }
    0x00066640 addiu v0, v0, 0x10            |     v0 += 0x10;
    0x00066644 b 0x664e4                     |     goto label_30;
                                             | label_38:
    0x00066648 lw t9, -0x75e8(gp)            |     t9 = sym.imp.__stack_chk_fail;
    0x0006664c jalr t9                       |     t9 ();
    0x00066650 nop                           |     
    0x00066654 lui gp, 4                     |     
    0x00066658 addiu gp, gp, -0x3734         |     
    0x0006665c addu gp, gp, t9               |     gp += t9;
    0x00066660 lw v0, -0x78b0(gp)            |     v0 = *(gp);
    0x00066664 lw v1, 0x30(a0)               |     v1 = *((a0 + 12));
    0x00066668 addiu sp, sp, -0x30           |     
    0x0006666c lw v0, 8(v0)                  |     v0 = *((v0 + 2));
    0x00066670 lw v1, 0x18(v1)               |     v1 = *((v1 + 6));
    0x00066674 sll v0, v0, 2                 |     v0 <<= 2;
    0x00066678 sw gp, 0x10(sp)               |     *(var_10h_2) = gp;
    0x0006667c sw s3, 0x28(sp)               |     *(var_28h_3) = s3;
    0x00066680 sw ra, 0x2c(sp)               |     *(var_2ch_2) = ra;
    0x00066684 sw s2, 0x24(sp)               |     *(var_24h) = s2;
    0x00066688 sw s1, 0x20(sp)               |     *(var_20h_2) = s1;
    0x0006668c sw s0, 0x1c(sp)               |     *(var_1ch) = s0;
    0x00066690 lwx s3, v0(v1)                |     __asm ("lwx s3, v0(v1)");
                                             |     if (a3 != 0) {
    0x00066694 beqz a3, 0x66794              |         
    0x00066698 lw a1, -0x7fac(gp)            |         a1 = *(gp);
    0x0006669c lw t9, -0x7e28(gp)            |         t9 = sym.ap_cstr_casecmp;
    0x000666a0 move s1, a0                   |         s1 = a0;
                                             |         /* str.Ratio */
    0x000666a4 addiu a1, a1, 0x4ed0          |         a1 += 0x4ed0;
    0x000666a8 move a0, a2                   |         a0 = a2;
    0x000666ac move s0, a2                   |         s0 = a2;
    0x000666b0 move s2, a3                   |         s2 = a3;
    0x000666b4 jalr t9                       |         t9 ();
    0x000666b8 lw gp, 0x10(sp)               |         gp = *(var_10h_2);
                                             |         if (v0 != 0) {
    0x000666bc beqz v0, 0x6671c              |             
    0x000666c0 lw a1, -0x7fac(gp)            |             a1 = *(gp);
    0x000666c4 lw t9, -0x7e28(gp)            |             t9 = sym.ap_cstr_casecmp;
                                             |             /* str.Input */
    0x000666c8 addiu a1, a1, 0x4ed8          |             a1 += 0x4ed8;
    0x000666cc move a0, s0                   |             a0 = s0;
    0x000666d0 jalr t9                       |             t9 ();
    0x000666d4 lw gp, 0x10(sp)               |             gp = *(var_10h_2);
                                             |             if (v0 == 0) {
    0x000666d8 beqz v0, 0x66740              |                 goto label_63;
                                             |             }
    0x000666dc lw a1, -0x7fac(gp)            |             a1 = *(gp);
    0x000666e0 lw t9, -0x7e28(gp)            |             t9 = sym.ap_cstr_casecmp;
                                             |             /* str.Output */
    0x000666e4 addiu a1, a1, 0x4ee0          |             a1 += 0x4ee0;
    0x000666e8 move a0, s0                   |             a0 = s0;
    0x000666ec jalr t9                       |             t9 ();
    0x000666f0 lw gp, 0x10(sp)               |             gp = *(var_10h_2);
                                             |             if (v0 != 0) {
    0x000666f4 bnez v0, 0x66764              |                 goto label_64;
                                             |             }
    0x000666f8 lw ra, 0x2c(sp)               |             ra = *(var_2ch_2);
    0x000666fc sw s2, 0x18(s3)               |             *((s3 + 6)) = s2;
    0x00066700 lw s1, 0x20(sp)               |             s1 = *(var_20h_2);
    0x00066704 lw s3, 0x28(sp)               |             s3 = *(var_28h_3);
    0x00066708 lw s2, 0x24(sp)               |             s2 = *(var_24h);
    0x0006670c lw s0, 0x1c(sp)               |             s0 = *(var_1ch);
    0x00066710 move v0, zero                 |             v0 = 0;
    0x00066714 addiu sp, sp, 0x30            |             
    0x00066718 jr ra                         |             return v0;
                                             |         }
    0x0006671c lw ra, 0x2c(sp)               |         ra = *(var_2ch_2);
    0x00066720 sw s2, 0x10(s3)               |         *((s3 + 4)) = s2;
    0x00066724 lw s1, 0x20(sp)               |         s1 = *(var_20h_2);
    0x00066728 lw s3, 0x28(sp)               |         s3 = *(var_28h_3);
    0x0006672c lw s2, 0x24(sp)               |         s2 = *(var_24h);
    0x00066730 lw s0, 0x1c(sp)               |         s0 = *(var_1ch);
    0x00066734 move v0, zero                 |         v0 = 0;
    0x00066738 addiu sp, sp, 0x30            |         
    0x0006673c jr ra                         |         return v0;
                                             | label_63:
    0x00066740 lw ra, 0x2c(sp)               |         ra = *(var_2ch_2);
    0x00066744 sw s2, 0x14(s3)               |         *((s3 + 5)) = s2;
    0x00066748 lw s1, 0x20(sp)               |         s1 = *(var_20h_2);
    0x0006674c lw s3, 0x28(sp)               |         s3 = *(var_28h_3);
    0x00066750 lw s2, 0x24(sp)               |         s2 = *(var_24h);
    0x00066754 lw s0, 0x1c(sp)               |         s0 = *(var_1ch);
    0x00066758 move v0, zero                 |         v0 = 0;
    0x0006675c addiu sp, sp, 0x30            |         
    0x00066760 jr ra                         |         return v0;
                                             | label_64:
    0x00066764 lw a1, -0x7fac(gp)            |         a1 = *(gp);
    0x00066768 lw a0, 0x28(s1)               |         a0 = *((s1 + 10));
    0x0006676c lw ra, 0x2c(sp)               |         ra = *(var_2ch_2);
    0x00066770 lw s3, 0x28(sp)               |         s3 = *(var_28h_3);
    0x00066774 lw s2, 0x24(sp)               |         s2 = *(var_24h);
    0x00066778 lw s1, 0x20(sp)               |         s1 = *(var_20h_2);
    0x0006677c move a2, s0                   |         a2 = s0;
    0x00066780 lw t9, -0x7540(gp)            |         t9 = sym.imp.apr_psprintf;
    0x00066784 lw s0, 0x1c(sp)               |         s0 = *(var_1ch);
                                             |         /* str.Unknown_BrotliFilterNote_type__s */
    0x00066788 addiu a1, a1, 0x4ee8          |         a1 += 0x4ee8;
    0x0006678c addiu sp, sp, 0x30            |         
    0x00066790 jr t9                         |         t9 ();
                                             |     }
    0x00066794 lw ra, 0x2c(sp)               |     ra = *(var_2ch_2);
    0x00066798 sw a2, 0x10(s3)               |     *((s3 + 4)) = a2;
    0x0006679c lw s2, 0x24(sp)               |     s2 = *(var_24h);
    0x000667a0 lw s3, 0x28(sp)               |     s3 = *(var_28h_3);
    0x000667a4 lw s1, 0x20(sp)               |     s1 = *(var_20h_2);
    0x000667a8 lw s0, 0x1c(sp)               |     s0 = *(var_1ch);
    0x000667ac move v0, zero                 |     v0 = 0;
    0x000667b0 addiu sp, sp, 0x30            |     
    0x000667b4 jr ra                         |     return v0;
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x6b858 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.0006b858 ()                  | void fcn_0006b858 () {
    0x0006b858 lui gp, 3                     |     
    0x0006b85c addiu gp, gp, 0x76c8          |     
    0x0006b860 addu gp, gp, t9               |     gp += t9;
    0x0006b864 addiu sp, sp, -0x58           |     
    0x0006b868 lw t9, -0x7adc(gp)            |     t9 = sym.ap_is_recursion_limit_exceeded;
    0x0006b86c sw gp, 0x28(sp)               |     *(var_28h_2) = gp;
    0x0006b870 sw s4, 0x40(sp)               |     *(var_40h) = s4;
    0x0006b874 sw s0, 0x30(sp)               |     *(var_30h_2) = s0;
    0x0006b878 sw ra, 0x54(sp)               |     *(var_54h) = ra;
    0x0006b87c sw fp, 0x50(sp)               |     *(var_50h) = fp;
    0x0006b880 sw s7, 0x4c(sp)               |     *(var_4ch) = s7;
    0x0006b884 sw s6, 0x48(sp)               |     *(var_48h) = s6;
    0x0006b888 sw s5, 0x44(sp)               |     *(var_44h) = s5;
    0x0006b88c sw s3, 0x3c(sp)               |     *(var_3ch_2) = s3;
    0x0006b890 sw s2, 0x38(sp)               |     *(var_38h_2) = s2;
    0x0006b894 sw s1, 0x34(sp)               |     *(var_34h_2) = s1;
    0x0006b898 move s4, a0                   |     s4 = a0;
    0x0006b89c move a0, a1                   |     a0 = a1;
    0x0006b8a0 move s0, a1                   |     s0 = a1;
    0x0006b8a4 jalr t9                       |     t9 ();
    0x0006b8a8 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
                                             |     if (v0 != 0) {
    0x0006b8ac bnez v0, 0x6be18              |         goto label_14;
                                             |     }
    0x0006b8b0 lw t9, -0x7544(gp)            |     t9 = sym.imp.apr_palloc;
    0x0006b8b4 lw a0, (s0)                   |     a0 = *(s0);
    0x0006b8b8 addiu a1, zero, 0x1e8         |     a1 = segment.ABIFLAGS;
    0x0006b8bc move fp, v0                   |     fp = v0;
    0x0006b8c0 jalr t9                       |     t9 ();
    0x0006b8c4 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006b8c8 addiu a2, zero, 0x1e8         |     a2 = segment.ABIFLAGS;
    0x0006b8cc move a1, zero                 |     a1 = 0;
    0x0006b8d0 lw t9, -0x7308(gp)            |     t9 = sym.imp.memset;
    0x0006b8d4 move a0, v0                   |     a0 = v0;
    0x0006b8d8 jalr t9                       |     t9 ();
    0x0006b8dc lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006b8e0 move s1, v0                   |     s1 = v0;
    0x0006b8e4 lw t0, 4(s0)                  |     t0 = *((s0 + 1));
    0x0006b8e8 lw a3, 8(s0)                  |     a3 = *((s0 + 2));
    0x0006b8ec lw a2, 0x4c(s0)               |     a2 = *((s0 + 19));
    0x0006b8f0 lw v1, 0x48(s0)               |     v1 = *((s0 + 18));
    0x0006b8f4 lw v0, (s0)                   |     v0 = *(s0);
    0x0006b8f8 lw t9, -0x7dbc(gp)            |     t9 = sym.ap_make_method_list;
    0x0006b8fc sw t0, 4(s1)                  |     *((s1 + 1)) = t0;
    0x0006b900 sw a3, 8(s1)                  |     *((s1 + 2)) = a3;
    0x0006b904 sw a2, 0x4c(s1)               |     *((s1 + 19)) = a2;
    0x0006b908 sw v1, 0x48(s1)               |     *((s1 + 18)) = v1;
    0x0006b90c addiu a1, zero, 2             |     a1 = 2;
    0x0006b910 move a0, v0                   |     a0 = v0;
    0x0006b914 sw v0, (s1)                   |     *(s1) = v0;
    0x0006b918 bal 0x69fac                   |     sym_ap_make_method_list ();
    0x0006b91c lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006b920 move a1, s4                   |     a1 = s4;
    0x0006b924 sw v0, 0x5c(s1)               |     *((s1 + 23)) = v0;
    0x0006b928 lw t9, -0x7d84(gp)            |     t9 = sym.ap_parse_uri;
    0x0006b92c move a0, s1                   |     a0 = s1;
    0x0006b930 jalr t9                       |     t9 ();
    0x0006b934 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006b938 lw v1, 0x144(s0)              |     v1 = *(s0);
    0x0006b93c lhu v0, 0x158(s0)             |     v0 = *(s0);
    0x0006b940 lw a0, (s0)                   |     a0 = *(s0);
    0x0006b944 lw t9, -0x7db8(gp)            |     t9 = sym.ap_create_request_config;
    0x0006b948 sw v1, 0x144(s1)              |     *(s1) = v1;
    0x0006b94c sh v0, 0x158(s1)              |     *(s1) = v0;
    0x0006b950 bal 0x4b9ec                   |     sym_ap_create_request_config ();
    0x0006b954 lw a0, 8(s0)                  |     a0 = *((s0 + 2));
    0x0006b958 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006b95c lw a1, 0x1c8(s0)              |     a1 = *(s0);
    0x0006b960 lw a0, 0x1c(a0)               |     a0 = *((a0 + 7));
    0x0006b964 lw v1, 0x1cc(s0)              |     v1 = *(s0);
    0x0006b968 lw t9, -0x7db4(gp)            |     t9 = sym.ap_run_create_request;
    0x0006b96c sw a0, 0x100(s1)              |     *(s1) = a0;
    0x0006b970 sw v0, 0x104(s1)              |     *(s1) = v0;
    0x0006b974 sw s0, 0x10(s1)               |     *((s1 + 4)) = s0;
    0x0006b978 move a0, s1                   |     a0 = s1;
    0x0006b97c sw s1, 0xc(s0)                |     *((s0 + 3)) = s1;
    0x0006b980 sw a1, 0x1c8(s1)              |     *(s1) = a1;
    0x0006b984 sw v1, 0x1cc(s1)              |     *(s1) = v1;
    0x0006b988 jalr t9                       |     t9 ();
    0x0006b98c lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006b990 lw v1, 0x3c(s0)               |     v1 = *((s0 + 15));
    0x0006b994 lw a1, 0x1d0(s0)              |     a1 = *(s0);
    0x0006b998 lw t8, 0x18(s0)               |     t8 = *((s0 + 6));
    0x0006b99c lw a2, 0x50(s0)               |     a2 = *((s0 + 20));
    0x0006b9a0 lw a3, 0x54(s0)               |     a3 = *((s0 + 21));
    0x0006b9a4 lw t7, 0x44(s0)               |     t7 = *((s0 + 17));
    0x0006b9a8 lw t6, 0x1c(s0)               |     t6 = *((s0 + 7));
    0x0006b9ac lw t5, 0x24(s0)               |     t5 = *((s0 + 9));
    0x0006b9b0 lw t4, 0x2c(s0)               |     t4 = *((s0 + 11));
    0x0006b9b4 lw t3, 0x28(s0)               |     t3 = *((s0 + 10));
    0x0006b9b8 lw t2, 0x30(s0)               |     t2 = *((s0 + 12));
    0x0006b9bc lw v0, 0x38(s0)               |     v0 = *((s0 + 14));
    0x0006b9c0 lw t1, 0x14(s0)               |     t1 = *((s0 + 5));
    0x0006b9c4 lw t0, 0xb0(s0)               |     t0 = *((s0 + 44));
    0x0006b9c8 lw a0, (s0)                   |     a0 = *(s0);
    0x0006b9cc lw t9, -0x7440(gp)            |     t9 = sym.imp.apr_table_make;
    0x0006b9d0 sw v1, 0x3c(s1)               |     *((s1 + 15)) = v1;
    0x0006b9d4 sw a1, 0x1d0(s1)              |     *(s1) = a1;
    0x0006b9d8 sw t8, 0x18(s1)               |     *((s1 + 6)) = t8;
    0x0006b9dc sw a2, 0x50(s1)               |     *((s1 + 20)) = a2;
    0x0006b9e0 sw a3, 0x54(s1)               |     *((s1 + 21)) = a3;
    0x0006b9e4 sw t7, 0x44(s1)               |     *((s1 + 17)) = t7;
    0x0006b9e8 sw t6, 0x1c(s1)               |     *((s1 + 7)) = t6;
    0x0006b9ec sw t5, 0x24(s1)               |     *((s1 + 9)) = t5;
    0x0006b9f0 sw t4, 0x2c(s1)               |     *((s1 + 11)) = t4;
    0x0006b9f4 sw t3, 0x28(s1)               |     *((s1 + 10)) = t3;
    0x0006b9f8 sw t2, 0x30(s1)               |     *((s1 + 12)) = t2;
    0x0006b9fc sw v0, 0x38(s1)               |     *((s1 + 14)) = v0;
    0x0006ba00 sw t1, 0x14(s1)               |     *((s1 + 5)) = t1;
    0x0006ba04 sw t0, 0xb0(s1)               |     *((s1 + 44)) = t0;
    0x0006ba08 addiu a1, zero, 0xc           |     a1 = 0xc;
    0x0006ba0c jalr t9                       |     t9 ();
    0x0006ba10 lw v1, 0x44(s1)               |     v1 = *((s1 + 17));
    0x0006ba14 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006ba18 addiu v1, v1, -0x12c          |     v1 += -aav.0x0000012c;
    0x0006ba1c sltiu v1, v1, 0x64            |     v1 = (v1 < 0x64) ? 1 : 0;
    0x0006ba20 sw v0, 0xb4(s1)               |     *((s1 + 45)) = v0;
                                             |     if (v1 != 0) {
    0x0006ba24 bnez v1, 0x6bdc4              |         goto label_15;
                                             |     }
                                             | label_9:
    0x0006ba28 lw a1, -0x7fac(gp)            |     a1 = *(gp);
    0x0006ba2c lw t9, -0x7668(gp)            |     t9 = sym.imp.apr_table_get;
    0x0006ba30 lw a0, 0xc0(s0)               |     a0 = *((s0 + 48));
                                             |     /* str.redirect_keeps_vary */
    0x0006ba34 addiu a1, a1, 0x72c8          |     a1 += 0x72c8;
    0x0006ba38 jalr t9                       |     t9 ();
    0x0006ba3c lw gp, 0x28(sp)               |     gp = *(var_28h_2);
                                             |     if (v0 != 0) {
    0x0006ba40 beqz v0, 0x6ba78              |         
    0x0006ba44 lw s2, -0x7fac(gp)            |         s2 = *(gp);
    0x0006ba48 lw t9, -0x7668(gp)            |         t9 = sym.imp.apr_table_get;
    0x0006ba4c lw a0, 0xb4(s0)               |         a0 = *((s0 + 45));
                                             |         /* str.Vary */
    0x0006ba50 addiu a1, s2, -0x3c0          |         a1 = s2 + -aav.0x000003c0;
    0x0006ba54 jalr t9                       |         t9 ();
    0x0006ba58 lw gp, 0x28(sp)               |         gp = *(var_28h_2);
                                             |         if (v0 == 0) {
    0x0006ba5c beqz v0, 0x6ba78              |             goto label_16;
                                             |         }
    0x0006ba60 lw t9, -0x7590(gp)            |         t9 = sym.imp.apr_table_setn;
    0x0006ba64 lw a0, 0xb4(s1)               |         a0 = *((s1 + 45));
    0x0006ba68 move a2, v0                   |         a2 = v0;
                                             |         /* str.Vary */
    0x0006ba6c addiu a1, s2, -0x3c0          |         a1 = s2 + -aav.0x000003c0;
    0x0006ba70 jalr t9                       |         t9 ();
    0x0006ba74 lw gp, 0x28(sp)               |         gp = *(var_28h_2);
                                             |     }
                                             | label_16:
    0x0006ba78 lw v0, 0xb8(s0)               |     v0 = *((s0 + 46));
    0x0006ba7c lw t9, -0x7440(gp)            |     t9 = sym.imp.apr_table_make;
    0x0006ba80 lw a0, (s0)                   |     a0 = *(s0);
    0x0006ba84 addiu a1, zero, 5             |     a1 = 5;
    0x0006ba88 sw v0, 0xb8(s1)               |     *((s1 + 46)) = v0;
    0x0006ba8c jalr t9                       |     t9 ();
    0x0006ba90 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006ba94 lw a0, 0xbc(s0)               |     a0 = *((s0 + 47));
    0x0006ba98 sw v0, 0x1d4(s1)              |     *(s1) = v0;
    0x0006ba9c lw t9, -0x7254(gp)            |     t9 = sym.imp.apr_table_elts;
    0x0006baa0 lw s3, (s0)                   |     s3 = *(s0);
    0x0006baa4 jalr t9                       |     t9 ();
    0x0006baa8 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006baac move s5, v0                   |     s5 = v0;
    0x0006bab0 lw a1, 0xc(v0)                |     a1 = *((v0 + 3));
    0x0006bab4 lw t9, -0x7440(gp)            |     t9 = sym.imp.apr_table_make;
    0x0006bab8 move a0, s3                   |     a0 = s3;
    0x0006babc lw s2, 0x10(v0)               |     s2 = *((v0 + 4));
    0x0006bac0 jalr t9                       |     t9 ();
    0x0006bac4 lw v1, 8(s5)                  |     v1 = *((s5 + 2));
    0x0006bac8 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006bacc move s6, v0                   |     s6 = v0;
                                             |     if (v1 <= 0) {
    0x0006bad0 blez v1, 0x6bb30              |         goto label_17;
                                             |     }
    0x0006bad4 lw s7, -0x7fac(gp)            |     s7 = *(gp);
                                             |     /* str.REDIRECT_ */
    0x0006bad8 addiu s7, s7, 0x72dc          |     s7 += 0x72dc;
                                             |     do {
    0x0006badc lw v0, (s2)                   |         v0 = *(s2);
    0x0006bae0 lw t9, -0x76e8(gp)            |         t9 = sym.imp.apr_pstrcat
    0x0006bae4 move a3, zero                 |         a3 = 0;
    0x0006bae8 move a1, s7                   |         a1 = s7;
    0x0006baec move a0, s3                   |         a0 = s3;
    0x0006baf0 addiu fp, fp, 1               |         fp++;
    0x0006baf4 move a2, v0                   |         a2 = v0;
                                             |         if (v0 != 0) {
    0x0006baf8 beqz v0, 0x6bb24              |             
    0x0006bafc jalr t9                       |             t9 ();
    0x0006bb00 nop                           |             
    0x0006bb04 lw gp, 0x28(sp)               |             gp = *(var_28h_2);
    0x0006bb08 lw a2, 4(s2)                  |             a2 = *((s2 + 1));
    0x0006bb0c move a1, v0                   |             a1 = v0;
    0x0006bb10 lw t9, -0x7590(gp)            |             t9 = sym.imp.apr_table_setn;
    0x0006bb14 move a0, s6                   |             a0 = s6;
    0x0006bb18 jalr t9                       |             t9 ();
    0x0006bb1c lw gp, 0x28(sp)               |             gp = *(var_28h_2);
    0x0006bb20 lw v1, 8(s5)                  |             v1 = *((s5 + 2));
                                             |         }
    0x0006bb24 slt v0, fp, v1                |         v0 = (fp < v1) ? 1 : 0;
    0x0006bb28 addiu s2, s2, 0xc             |         s2 += 0xc;
    0x0006bb2c bnez v0, 0x6badc              |         
                                             |     } while (v0 != 0);
                                             | label_17:
    0x0006bb30 lw t9, -0x7440(gp)            |     t9 = sym.imp.apr_table_make;
    0x0006bb34 lw a0, (s0)                   |     a0 = *(s0);
    0x0006bb38 addiu a1, zero, 5             |     a1 = 5;
    0x0006bb3c sw s6, 0xbc(s1)               |     *((s1 + 47)) = s6;
    0x0006bb40 jalr t9                       |     t9 ();
    0x0006bb44 lw t4, 0x110(s0)              |     t4 = *(s0);
    0x0006bb48 lw t3, 0x124(s0)              |     t3 = *(s0);
    0x0006bb4c lw t2, 0x94(s0)               |     t2 = *((s0 + 37));
    0x0006bb50 lw t1, 0x128(s0)              |     t1 = *(s0);
    0x0006bb54 lw a2, 0xa8(s0)               |     a2 = *((s0 + 42));
    0x0006bb58 lw a3, 0xac(s0)               |     a3 = *((s0 + 43));
    0x0006bb5c lw t0, 0xd4(s0)               |     t0 = *((s0 + 53));
    0x0006bb60 lw a0, 0x11c(s0)              |     a0 = *(s0);
    0x0006bb64 lw v1, 0x120(s0)              |     v1 = *(s0);
    0x0006bb68 lw a1, 0x14(s1)               |     a1 = *((s1 + 5));
    0x0006bb6c lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006bb70 sw v0, 0xc0(s1)               |     *((s1 + 48)) = v0;
    0x0006bb74 sw t4, 0x110(s1)              |     *(s1) = t4;
    0x0006bb78 sw t3, 0x124(s1)              |     *(s1) = t3;
    0x0006bb7c sw t2, 0x94(s1)               |     *((s1 + 37)) = t2;
    0x0006bb80 sw t1, 0x128(s1)              |     *(s1) = t1;
    0x0006bb84 sw a2, 0xa8(s1)               |     *((s1 + 42)) = a2;
    0x0006bb88 sw a3, 0xac(s1)               |     *((s1 + 43)) = a3;
    0x0006bb8c sw t0, 0xd4(s1)               |     *((s1 + 53)) = t0;
    0x0006bb90 sw a0, 0x11c(s1)              |     *(s1) = a0;
    0x0006bb94 sw v1, 0x120(s1)              |     *(s1) = v1;
    0x0006bb98 sw v1, 0x118(s1)              |     *(s1) = v1;
                                             |     if (a1 == 0) {
    0x0006bb9c beqz a1, 0x6bdfc              |         goto label_18;
                                             |     }
    0x0006bba0 lw s2, 0x114(s0)              |     s2 = *(s0);
    0x0006bba4 lw s6, -0x7fac(gp)            |     s6 = *(gp);
    0x0006bba8 lw s5, -0x7fac(gp)            |     s5 = *(gp);
    0x0006bbac lw s7, -0x7bdc(gp)            |     s7 = *(gp);
    0x0006bbb0 sw s2, 0x114(s1)              |     *(s1) = s2;
                                             |     /* str.AH01582:_dropping_filter__s_in_internal_redirect_from__s_to__s */
    0x0006bbb4 addiu s6, s6, 0x72e8          |     s6 += 0x72e8;
                                             |     /* str._usr_src_debug_apache2_2.4.57_r0_httpd_2.4.57_modules_http_http_request.c */
    0x0006bbb8 addiu s5, s5, 0x7100          |     s5 += 0x7100;
    0x0006bbbc b 0x6bbd4                     |     
                                             |     if (s3 == 0) {
                                             |         while (v0 != s0) {
                                             | label_0:
    0x0006bbc0 beql s3, zero, 0x6bc48        |             goto label_19;
                                             |         }
    0x0006bbc4 lw v1, 0x118(s1)              |         v1 = *(s1);
                                             | label_1:
    0x0006bbc8 lw v0, 0x11c(s1)              |         v0 = *(s1);
    0x0006bbcc move s2, s3                   |         s2 = s3;
                                             |         if (v0 == s3) {
    0x0006bbd0 beq v0, s3, 0x6bc44           |             goto label_20;
                                             |         }
    0x0006bbd4 lw v0, 0xc(s2)                |         v0 = *((s2 + 3));
    0x0006bbd8 lw s3, 8(s2)                  |         s3 = *((s2 + 2));
    0x0006bbdc bne v0, s0, 0x6bbc0           |         
                                             |     }
    0x0006bbe0 lw a0, (s2)                   |     a0 = *(s2);
    0x0006bbe4 lw v0, (s7)                   |     v0 = *(s7);
    0x0006bbe8 lw v0, -0x7838(gp)            |     v0 = *(gp);
                                             |     if (a0 == v0) {
    0x0006bbec beq a0, v0, 0x6bbc0           |         goto label_0;
                                             |     }
    0x0006bbf0 lw a2, 8(v0)                  |     a2 = *((v0 + 2));
    0x0006bbf4 lw v1, 0x108(s0)              |     v1 = *(s0);
                                             |     if (a2 < 0) {
    0x0006bbf8 bltz a2, 0x6bdb4              |         goto label_21;
                                             |     }
                                             |     if (v1 == 0) {
    0x0006bbfc beql v1, zero, 0x6bd28        |         goto label_22;
                                             |     }
    0x0006bc00 lw a1, 4(s0)                  |     a1 = *((s0 + 1));
    0x0006bc04 lw v0, (v1)                   |     v0 = *(v1);
    0x0006bc08 addu v0, v0, a2               |     v0 += a2;
                                             |     if (v0 == 0) {
    0x0006bc0c beqz v0, 0x6bd64              |         goto label_12;
                                             |     }
    0x0006bc10 lb v0, (v0)                   |     v0 = *(v0);
                                             |     if (v0 < 0) {
    0x0006bc14 bltzl v0, 0x6bd68             |         goto label_7;
                                             |     }
    0x0006bc18 lw v0, 4(v1)                  |     v0 = *((v1 + 1));
    0x0006bc1c slti v0, v0, 7                |     v0 = (v0 < 7) ? 1 : 0;
                                             | label_4:
    0x0006bc20 xori v0, v0, 1                |     v0 ^= 1;
    0x0006bc24 lw v0, 0xe0(s0)               |     v0 = *((s0 + 56));
                                             |     if (v0 == 0) {
    0x0006bc28 bnel v0, zero, 0x6bd7c        |         goto label_23;
                                             |     }
                                             | label_6:
    0x0006bc2c lw t9, -0x7e34(gp)            |     t9 = sym.ap_remove_output_filter;
                                             | label_5:
    0x0006bc30 sw s1, 0xc(s2)                |     *((s2 + 3)) = s1;
    0x0006bc34 move a0, s2                   |     a0 = s2;
    0x0006bc38 jalr t9                       |     t9 ();
    0x0006bc3c lw gp, 0x28(sp)               |     gp = *(var_28h_2);
                                             |     if (s3 != 0) {
    0x0006bc40 bnez s3, 0x6bbc8              |         goto label_1;
                                             |     }
                                             | label_20:
    0x0006bc44 lw v1, 0x118(s1)              |     v1 = *(s1);
                                             | label_19:
    0x0006bc48 lw a0, 0x114(s1)              |     a0 = *(s1);
                                             |     if (v1 == 0) {
                                             | label_10:
    0x0006bc4c beqz v1, 0x6bc6c              |         goto label_24;
                                             |     }
    0x0006bc50 nop                           |     
    0x0006bc54 lw v0, 0xc(v1)                |     v0 = *((v1 + 3));
                                             |     if (s0 == v0) {
                                             |         do {
    0x0006bc58 beql s0, v0, 0x6bd18          |             goto label_25;
                                             |         }
    0x0006bc5c sw s1, 0xc(v1)                |         *((v1 + 3)) = s1;
    0x0006bc60 lw v1, 8(v1)                  |         v1 = *((v1 + 2));
                                             | label_2:
    0x0006bc64 lw v0, 0xc(v1)                |         v0 = *((v1 + 3));
    0x0006bc68 bnel v1, zero, 0x6bc58        |         
                                             |     } while (v1 == 0);
                                             | label_24:
    0x0006bc6c lw t9, -0x72d8(gp)            |     t9 = sym.imp.apr_itoa;
                                             |     if (a0 == 0) {
    0x0006bc70 beqz a0, 0x6bc90              |         goto label_26;
                                             |     }
    0x0006bc74 lw v0, 0xc(a0)                |     v0 = *((a0 + 3));
                                             |     if (s0 == v0) {
                                             |         do {
    0x0006bc78 beql s0, v0, 0x6bd20          |             goto label_27;
                                             |         }
    0x0006bc7c sw s1, 0xc(a0)                |         *((a0 + 3)) = s1;
    0x0006bc80 lw a0, 8(a0)                  |         a0 = *((a0 + 2));
                                             | label_3:
    0x0006bc84 lw v0, 0xc(a0)                |         v0 = *((a0 + 3));
    0x0006bc88 bnel a0, zero, 0x6bc78        |         
                                             |     } while (a0 == 0);
    0x0006bc8c lw t9, -0x72d8(gp)            |     t9 = sym.imp.apr_itoa;
                                             | label_26:
    0x0006bc90 lw a1, 0x44(s0)               |     a1 = *((s0 + 17));
    0x0006bc94 lw a0, (s0)                   |     a0 = *(s0);
    0x0006bc98 lw s2, 0xbc(s1)               |     s2 = *((s1 + 47));
    0x0006bc9c jalr t9                       |     t9 ();
    0x0006bca0 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006bca4 move a2, v0                   |     a2 = v0;
    0x0006bca8 move a0, s2                   |     a0 = s2;
    0x0006bcac lw a1, -0x7fac(gp)            |     a1 = *(gp);
    0x0006bcb0 lw t9, -0x7590(gp)            |     t9 = sym.imp.apr_table_setn;
                                             |     /* str.REDIRECT_STATUS */
    0x0006bcb4 addiu a1, a1, 0x732c          |     a1 += 0x732c;
    0x0006bcb8 jalr t9                       |     t9 ();
    0x0006bcbc lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006bcc0 lw v0, 0x12c(s0)              |     v0 = *(s0);
    0x0006bcc4 addiu v1, zero, 2             |     v1 = 2;
    0x0006bcc8 lw t9, -0x7d60(gp)            |     t9 = sym.ap_post_read_request;
    0x0006bccc sw v1, 0xf8(s1)               |     *((s1 + 62)) = v1;
    0x0006bcd0 sw v0, 0x12c(s1)              |     *(s1) = v0;
    0x0006bcd4 move a0, s1                   |     a0 = s1;
    0x0006bcd8 jalr t9                       |     t9 ();
    0x0006bcdc lw gp, 0x28(sp)               |     gp = *(var_28h_2);
                                             |     if (v0 != 0) {
    0x0006bce0 bnez v0, 0x6be68              |         goto label_28;
                                             |     }
                                             | label_13:
    0x0006bce4 lw ra, 0x54(sp)               |     ra = *(var_54h);
    0x0006bce8 move v0, s1                   |     v0 = s1;
    0x0006bcec lw fp, 0x50(sp)               |     fp = *(var_50h);
    0x0006bcf0 lw s7, 0x4c(sp)               |     s7 = *(var_4ch);
    0x0006bcf4 lw s6, 0x48(sp)               |     s6 = *(var_48h);
    0x0006bcf8 lw s5, 0x44(sp)               |     s5 = *(var_44h);
    0x0006bcfc lw s4, 0x40(sp)               |     s4 = *(var_40h);
    0x0006bd00 lw s3, 0x3c(sp)               |     s3 = *(var_3ch_2);
    0x0006bd04 lw s2, 0x38(sp)               |     s2 = *(var_38h_2);
    0x0006bd08 lw s1, 0x34(sp)               |     s1 = *(var_34h_2);
    0x0006bd0c lw s0, 0x30(sp)               |     s0 = *(var_30h_2);
    0x0006bd10 addiu sp, sp, 0x58            |     
    0x0006bd14 jr ra                         |     return v0;
                                             | label_25:
    0x0006bd18 lw v1, 8(v1)                  |     v1 = *((v1 + 2));
    0x0006bd1c b 0x6bc64                     |     goto label_2;
                                             | label_27:
    0x0006bd20 lw a0, 8(a0)                  |     a0 = *((a0 + 2));
    0x0006bd24 b 0x6bc84                     |     goto label_3;
                                             | label_22:
    0x0006bd28 lw v1, 0x60(a1)               |     v1 = *((a1 + 24));
                                             |     if (v1 == 0) {
    0x0006bd2c beql v1, zero, 0x6be04        |         goto label_29;
                                             |     }
    0x0006bd30 lw v1, 8(s0)                  |     v1 = *((s0 + 2));
    0x0006bd34 lw v0, (v1)                   |     v0 = *(v1);
                                             |     if (v0 == 0) {
    0x0006bd38 beql v0, zero, 0x6bd68        |         goto label_7;
                                             |     }
    0x0006bd3c lw v0, 4(v1)                  |     v0 = *((v1 + 1));
    0x0006bd40 addu v0, v0, a2               |     v0 += a2;
                                             | label_11:
    0x0006bd44 lb v0, (v0)                   |     v0 = *(v0);
    0x0006bd48 slti v0, v0, 7                |     v0 = (v0 < 7) ? 1 : 0;
                                             |     if (v0 >= 0) {
    0x0006bd4c bgez v0, 0x6bc20              |         goto label_4;
                                             |     }
                                             | label_8:
    0x0006bd50 lw v1, 0x60(a1)               |     v1 = *((a1 + 24));
    0x0006bd54 lw v0, 4(v1)                  |     v0 = *((v1 + 1));
                                             |     if (v1 != 0) {
    0x0006bd58 bnel v1, zero, 0x6bd68        |         
    0x0006bd5c lw v1, 8(s0)                  |         v1 = *((s0 + 2));
    0x0006bd60 addiu v1, v1, 0x10            |         v1 += 0x10;
                                             | label_12:
    0x0006bd64 lw v0, 4(v1)                  |         v0 = *((v1 + 1));
                                             |     }
                                             | label_7:
    0x0006bd68 slti v0, v0, 7                |     v0 = (v0 < 7) ? 1 : 0;
    0x0006bd6c xori v0, v0, 1                |     v0 ^= 1;
    0x0006bd70 lw t9, -0x7e34(gp)            |     t9 = sym.ap_remove_output_filter;
                                             |     if (v0 == 0) {
    0x0006bd74 beqz v0, 0x6bc30              |         goto label_5;
                                             |     }
    0x0006bd78 lw v0, 0xe0(s0)               |     v0 = *((s0 + 56));
                                             | label_23:
    0x0006bd7c sw s4, 0x24(sp)               |     *(var_24h) = s4;
    0x0006bd80 sw v0, 0x20(sp)               |     *(var_20h_2) = v0;
    0x0006bd84 lw v0, (a0)                   |     v0 = *(a0);
    0x0006bd88 lw t9, -0x7f08(gp)            |     t9 = sym.ap_log_rerror_;
    0x0006bd8c sw v0, 0x1c(sp)               |     *(var_1ch) = v0;
    0x0006bd90 sw s6, 0x18(sp)               |     *(var_18h) = s6;
    0x0006bd94 sw s0, 0x14(sp)               |     *(var_14h) = s0;
    0x0006bd98 sw zero, 0x10(sp)             |     *(var_10h) = 0;
    0x0006bd9c addiu a3, zero, 7             |     a3 = 7;
    0x0006bda0 addiu a1, zero, 0x280         |     a1 = aav.0x00000280;
    0x0006bda4 move a0, s5                   |     a0 = s5;
    0x0006bda8 bal 0x530a8                   |     sym_ap_log_rerror_ ();
    0x0006bdac lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006bdb0 b 0x6bc2c                     |     goto label_6;
                                             | label_21:
    0x0006bdb4 lw v0, 4(v1)                  |     v0 = *((v1 + 1));
                                             |     if (v1 == 0) {
    0x0006bdb8 bnel v1, zero, 0x6bd68        |         goto label_7;
                                             |     }
    0x0006bdbc lw a1, 4(s0)                  |     a1 = *((s0 + 1));
    0x0006bdc0 b 0x6bd50                     |     goto label_8;
                                             | label_15:
    0x0006bdc4 lw s2, -0x7fac(gp)            |     s2 = *(gp);
    0x0006bdc8 lw t9, -0x7668(gp)            |     t9 = sym.imp.apr_table_get;
    0x0006bdcc lw a0, 0xb4(s0)               |     a0 = *((s0 + 45));
                                             |     /* esilref: 'Location' */
    0x0006bdd0 addiu a1, s2, -0x58e8         |     a1 = s2 + -0x58e8;
    0x0006bdd4 jalr t9                       |     t9 ();
    0x0006bdd8 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
                                             |     if (v0 == 0) {
    0x0006bddc beqz v0, 0x6ba28              |         goto label_9;
                                             |     }
    0x0006bde0 lw t9, -0x7590(gp)            |     t9 = sym.imp.apr_table_setn;
    0x0006bde4 lw a0, 0xb4(s1)               |     a0 = *((s1 + 45));
    0x0006bde8 move a2, v0                   |     a2 = v0;
                                             |     /* esilref: 'Location' */
    0x0006bdec addiu a1, s2, -0x58e8         |     a1 = s2 + -0x58e8;
    0x0006bdf0 jalr t9                       |     t9 ();
    0x0006bdf4 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006bdf8 b 0x6ba28                     |     goto label_9;
                                             | label_18:
    0x0006bdfc sw a0, 0x114(s1)              |     *(s1) = a0;
    0x0006be00 b 0x6bc4c                     |     goto label_10;
                                             | label_29:
    0x0006be04 lw v0, 0x10(v1)               |     v0 = *((v1 + 4));
    0x0006be08 addu v0, v0, a2               |     v0 += a2;
                                             |     if (v0 != 0) {
    0x0006be0c bnez v0, 0x6bd44              |         goto label_11;
                                             |     }
    0x0006be10 addiu v1, v1, 0x10            |     v1 += 0x10;
    0x0006be14 b 0x6bd64                     |     goto label_12;
                                             | label_14:
    0x0006be18 lw t9, -0x7fd4(gp)            |     t9 = *(gp);
    0x0006be1c lw a2, 0x44(s0)               |     a2 = *((s0 + 17));
    0x0006be20 move a1, s0                   |     a1 = s0;
                                             |     /* fcn.0006ac74 */
    0x0006be24 addiu t9, t9, -0x538c         |     t9 += -0x538c;
    0x0006be28 addiu a0, zero, 0x1f4         |     a0 = aav.0x000001f4;
    0x0006be2c bal 0x6ac74                   |     fcn_0006ac74 ();
    0x0006be30 lw ra, 0x54(sp)               |     ra = *(var_54h);
    0x0006be34 move s1, zero                 |     s1 = 0;
    0x0006be38 move v0, s1                   |     v0 = s1;
    0x0006be3c lw fp, 0x50(sp)               |     fp = *(var_50h);
    0x0006be40 lw s7, 0x4c(sp)               |     s7 = *(var_4ch);
    0x0006be44 lw s6, 0x48(sp)               |     s6 = *(var_48h);
    0x0006be48 lw s5, 0x44(sp)               |     s5 = *(var_44h);
    0x0006be4c lw s4, 0x40(sp)               |     s4 = *(var_40h);
    0x0006be50 lw s3, 0x3c(sp)               |     s3 = *(var_3ch_2);
    0x0006be54 lw s2, 0x38(sp)               |     s2 = *(var_38h_2);
    0x0006be58 lw s1, 0x34(sp)               |     s1 = *(var_34h_2);
    0x0006be5c lw s0, 0x30(sp)               |     s0 = *(var_30h_2);
    0x0006be60 addiu sp, sp, 0x58            |     
    0x0006be64 jr ra                         |     return v0;
                                             | label_28:
    0x0006be68 lw t9, -0x7fd4(gp)            |     t9 = *(gp);
    0x0006be6c lw a2, 0x44(s1)               |     a2 = *((s1 + 17));
    0x0006be70 move a1, s1                   |     a1 = s1;
                                             |     /* fcn.0006b100 */
    0x0006be74 addiu t9, t9, -0x4f00         |     t9 += -aav.0x00004f00;
    0x0006be78 move a0, v0                   |     a0 = v0;
    0x0006be7c bal 0x6b100                   |     fcn_0006b100 ();
    0x0006be80 move s1, zero                 |     s1 = 0;
    0x0006be84 b 0x6bce4                     |     goto label_13;
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x6cc38 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.0006cc38 ()                  | void fcn_0006cc38 () {
    0x0006cc38 lui gp, 3                     |     
    0x0006cc3c addiu gp, gp, 0x62e8          |     
    0x0006cc40 addu gp, gp, t9               |     gp += t9;
    0x0006cc44 addiu sp, sp, -0x40           |     
    0x0006cc48 sw s2, 0x2c(sp)               |     *(var_2ch) = s2;
    0x0006cc4c lw s2, -0x7534(gp)            |     s2 = *(gp);
    0x0006cc50 sw s1, 0x28(sp)               |     *(var_28h) = s1;
    0x0006cc54 lw s1, 0x40(a0)               |     s1 = *((a0 + 16));
    0x0006cc58 lw v0, (s2)                   |     v0 = *(s2);
    0x0006cc5c sw gp, 0x10(sp)               |     *(var_10h) = gp;
    0x0006cc60 sw s3, 0x30(sp)               |     *(var_30h) = s3;
    0x0006cc64 sw s0, 0x24(sp)               |     *(var_24h) = s0;
    0x0006cc68 sw ra, 0x3c(sp)               |     *(var_3ch) = ra;
    0x0006cc6c sw s5, 0x38(sp)               |     *(var_38h) = s5;
    0x0006cc70 sw s4, 0x34(sp)               |     *(var_34h) = s4;
    0x0006cc74 move s0, a0                   |     s0 = a0;
    0x0006cc78 move s3, a1                   |     s3 = a1;
    0x0006cc7c sw v0, 0x1c(sp)               |     *(var_1ch) = v0;
    0x0006cc80 lw t9, -0x74c4(gp)            |     t9 = sym.imp.strlen;
                                             |     if (s1 == 0) {
    0x0006cc84 beqz s1, 0x6ce50              |         goto label_5;
                                             |     }
    0x0006cc88 move a0, s1                   |     a0 = s1;
    0x0006cc8c jalr t9                       |     t9 ();
    0x0006cc90 move s4, v0                   |     s4 = v0;
    0x0006cc94 sltiu v0, v0, 3               |     v0 = (v0 < 3) ? 1 : 0;
    0x0006cc98 lw gp, 0x10(sp)               |     gp = *(var_10h);
                                             |     if (v0 != 0) {
    0x0006cc9c bnez v0, 0x6cd98              |         goto label_6;
                                             |     }
    0x0006cca0 lw t9, -0x7424(gp)            |     t9 = sym.imp.apr_strtoi64;
    0x0006cca4 move a0, s1                   |     a0 = s1;
    0x0006cca8 addiu a2, zero, 0xa           |     a2 = 0xa;
    0x0006ccac addiu a1, sp, 0x18            |     a1 = sp + 0x18;
    0x0006ccb0 jalr t9                       |     t9 ();
    0x0006ccb4 lw s1, 0x44(s0)               |     s1 = *((s0 + 17));
    0x0006ccb8 lw gp, 0x10(sp)               |     gp = *(var_10h);
    0x0006ccbc sra a0, s1, 0x1f              |     a0 = s1 >> 0x1f;
                                             |     if (v0 != s1) {
    0x0006ccc0 bne v0, s1, 0x6cd9c           |         goto label_7;
                                             |     }
    0x0006ccc4 lw v0, 0x18(sp)               |     v0 = *(var_18h_2);
                                             |     if (v1 != a0) {
    0x0006ccc8 bne v1, a0, 0x6cd9c           |         goto label_7;
                                             |     }
    0x0006cccc lw s5, 0x40(s0)               |     s5 = *((s0 + 16));
    0x0006ccd0 addiu v0, v0, -3              |     v0 += -3;
    0x0006ccd4 addiu v0, zero, 3             |     v0 = 3;
                                             |     if (s5 != v0) {
    0x0006ccd8 bne s5, v0, 0x6cd9c           |         goto label_7;
                                             |     }
    0x0006ccdc lw t9, -0x744c(gp)            |     t9 = *(gp);
                                             |     if (s4 != v0) {
    0x0006cce0 bne s4, v0, 0x6ce20           |         goto label_8;
                                             |     }
    0x0006cce4 lw a2, -0x7fac(gp)            |     a2 = *(gp);
    0x0006cce8 lw t9, -0x76e8(gp)            |     t9 = sym.imp.apr_pstrcat
    0x0006ccec lw a0, (s0)                   |     a0 = *(s0);
    0x0006ccf0 move a3, zero                 |     a3 = 0;
    0x0006ccf4 addiu a2, a2, 0x6730          |     a2 += 0x6730;
    0x0006ccf8 move a1, s5                   |     a1 = s5;
    0x0006ccfc jalr t9                       |     t9 ();
    0x0006cd00 lw gp, 0x10(sp)               |     gp = *(var_10h);
    0x0006cd04 sw v0, 0x40(s0)               |     *((s0 + 16)) = v0;
                                             |     if (v0 == 0) {
    0x0006cd08 beqz v0, 0x6ce50              |         goto label_5;
                                             |     }
    0x0006cd0c lw t9, -0x7ce0(gp)            |     t9 = sym.ap_get_status_line;
    0x0006cd10 lw a0, 0x44(s0)               |     a0 = *((s0 + 17));
    0x0006cd14 bal 0x69360                   |     sym_ap_get_status_line ();
    0x0006cd18 lw gp, 0x10(sp)               |     gp = *(var_10h);
    0x0006cd1c lw a1, 0x40(s0)               |     a1 = *((s0 + 16));
    0x0006cd20 addiu a2, zero, 3             |     a2 = 3;
    0x0006cd24 lw t9, -0x76c4(gp)            |     t9 = sym.imp.strncmp;
    0x0006cd28 move a0, v0                   |     a0 = v0;
    0x0006cd2c move s1, v0                   |     s1 = v0;
    0x0006cd30 jalr t9                       |     t9 ();
    0x0006cd34 lw gp, 0x10(sp)               |     gp = *(var_10h);
                                             |     if (v0 == 0) {
    0x0006cd38 bnez v0, 0x6cd40              |         
    0x0006cd3c sw s1, 0x40(s0)               |         *((s0 + 16)) = s1;
                                             |     }
                                             | label_2:
    0x0006cd40 lw v0, 0x28(s0)               |     v0 = *((s0 + 10));
    0x0006cd44 slti v1, v0, 0x3e9            |     v1 = (v0 < 0x3e9) ? 1 : 0;
    0x0006cd48 lw a1, -0x7fac(gp)            |     a1 = *(gp);
                                             |     if (v1 == 0) {
    0x0006cd4c beqz v1, 0x6cdc8              |         goto label_9;
                                             |     }
                                             | label_4:
    0x0006cd50 addiu v1, zero, 0x3e8         |     v1 = aav.0x000003e8;
                                             |     do {
    0x0006cd54 lw a1, -0x7fac(gp)            |         a1 = *(gp);
                                             |         if (v0 == v1) {
    0x0006cd58 beq v0, v1, 0x6cdec           |             goto label_10;
                                             |         }
                                             | label_0:
    0x0006cd5c lw v0, -0x7fac(gp)            |         v0 = *(gp);
                                             |         /* str.HTTP_1.1 */
    0x0006cd60 addiu v0, v0, 0x73fc          |         v0 += 0x73fc;
    0x0006cd64 sw v0, (s3)                   |         *(s3) = v0;
                                             | label_1:
    0x0006cd68 lw v1, 0x1c(sp)               |         v1 = *(var_1ch);
    0x0006cd6c lw v0, (s2)                   |         v0 = *(s2);
    0x0006cd70 lw ra, 0x3c(sp)               |         ra = *(var_3ch);
                                             |         if (v1 != v0) {
    0x0006cd74 bne v1, v0, 0x6ce60           |             goto label_11;
                                             |         }
    0x0006cd78 lw s5, 0x38(sp)               |         s5 = *(var_38h);
    0x0006cd7c lw s4, 0x34(sp)               |         s4 = *(var_34h);
    0x0006cd80 lw s3, 0x30(sp)               |         s3 = *(var_30h);
    0x0006cd84 lw s2, 0x2c(sp)               |         s2 = *(var_2ch);
    0x0006cd88 lw s1, 0x28(sp)               |         s1 = *(var_28h);
    0x0006cd8c lw s0, 0x24(sp)               |         s0 = *(var_24h);
    0x0006cd90 addiu sp, sp, 0x40            |         
    0x0006cd94 jr ra                         |         return v0;
                                             | label_6:
    0x0006cd98 lw s1, 0x44(s0)               |         s1 = *((s0 + 17));
                                             | label_7:
    0x0006cd9c sw zero, 0x40(s0)             |         *((s0 + 16)) = 0;
                                             | label_3:
    0x0006cda0 lw t9, -0x7ce0(gp)            |         t9 = sym.ap_get_status_line;
    0x0006cda4 move a0, s1                   |         a0 = s1;
    0x0006cda8 bal 0x69360                   |         sym_ap_get_status_line ();
    0x0006cdac lw gp, 0x10(sp)               |         gp = *(var_10h);
    0x0006cdb0 sw v0, 0x40(s0)               |         *((s0 + 16)) = v0;
    0x0006cdb4 lw v0, 0x28(s0)               |         v0 = *((s0 + 10));
    0x0006cdb8 slti v1, v0, 0x3e9            |         v1 = (v0 < 0x3e9) ? 1 : 0;
    0x0006cdbc addiu v1, zero, 0x3e8         |         v1 = aav.0x000003e8;
    0x0006cdc0 bnez v1, 0x6cd54              |         
                                             |     } while (v1 != 0);
    0x0006cdc4 lw a1, -0x7fac(gp)            |     a1 = *(gp);
                                             | label_9:
    0x0006cdc8 lw t9, -0x7668(gp)            |     t9 = sym.imp.apr_table_get;
    0x0006cdcc lw a0, 0xbc(s0)               |     a0 = *((s0 + 47));
                                             |     /* str.downgrade_1.0 */
    0x0006cdd0 addiu a1, a1, 0x73d8          |     a1 += 0x73d8;
    0x0006cdd4 jalr t9                       |     t9 ();
    0x0006cdd8 lw gp, 0x10(sp)               |     gp = *(var_10h);
                                             |     if (v0 == 0) {
    0x0006cddc beqz v0, 0x6ce58              |         goto label_12;
                                             |     }
    0x0006cde0 addiu v0, zero, 0x3e8         |     v0 = aav.0x000003e8;
    0x0006cde4 sw v0, 0x28(s0)               |     *((s0 + 10)) = v0;
    0x0006cde8 lw a1, -0x7fac(gp)            |     a1 = *(gp);
                                             | label_10:
    0x0006cdec lw t9, -0x7668(gp)            |     t9 = sym.imp.apr_table_get;
    0x0006cdf0 lw a0, 0xbc(s0)               |     a0 = *((s0 + 47));
                                             |     /* str.force_response_1.0 */
    0x0006cdf4 addiu a1, a1, 0x73e8          |     a1 += 0x73e8;
    0x0006cdf8 jalr t9                       |     t9 ();
    0x0006cdfc lw gp, 0x10(sp)               |     gp = *(var_10h);
                                             |     if (v0 == 0) {
    0x0006ce00 beqz v0, 0x6cd5c              |         goto label_0;
                                             |     }
    0x0006ce04 lw v0, -0x7fac(gp)            |     v0 = *(gp);
    0x0006ce08 lw v1, 4(s0)                  |     v1 = *((s0 + 1));
                                             |     /* str.HTTP_1.0 */
    0x0006ce0c addiu v0, v0, -0x53f8         |     v0 += -0x53f8;
    0x0006ce10 sw v0, (s3)                   |     *(s3) = v0;
    0x0006ce14 addiu v0, zero, 1             |     v0 = 1;
    0x0006ce18 sw v0, 0x58(v1)               |     *((v1 + 22)) = v0;
    0x0006ce1c b 0x6cd68                     |     goto label_1;
                                             | label_8:
    0x0006ce20 jalr t9                       |     t9 ();
    0x0006ce24 nop                           |     
    0x0006ce28 lbu v1, 3(s5)                 |     v1 = *((s5 + 3));
    0x0006ce2c lw v0, (v0)                   |     v0 = *(v0);
    0x0006ce30 sll v1, v1, 1                 |     v1 <<= 1;
    0x0006ce34 addu v0, v0, v1               |     v0 += v1;
    0x0006ce38 lhu v0, (v0)                  |     v0 = *(v0);
    0x0006ce3c andi v0, v0, 0x2000           |     v0 &= aav.0x00002000;
    0x0006ce40 lw gp, 0x10(sp)               |     gp = *(var_10h);
                                             |     if (v0 != 0) {
    0x0006ce44 bnez v0, 0x6cd40              |         goto label_2;
                                             |     }
    0x0006ce48 sw zero, 0x40(s0)             |     *((s0 + 16)) = 0;
    0x0006ce4c b 0x6cda0                     |     goto label_3;
                                             | label_5:
    0x0006ce50 lw s1, 0x44(s0)               |     s1 = *((s0 + 17));
    0x0006ce54 b 0x6cda0                     |     goto label_3;
                                             | label_12:
    0x0006ce58 lw v0, 0x28(s0)               |     v0 = *((s0 + 10));
    0x0006ce5c b 0x6cd50                     |     goto label_4;
                                             | label_11:
    0x0006ce60 lw t9, -0x75e8(gp)            |     t9 = sym.imp.__stack_chk_fail;
    0x0006ce64 jalr t9                       |     t9 ();
    0x0006ce68 nop                           |     
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x55024 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.ap_add_cgi_vars ()           | void ap_add_cgi_vars () {
    0x00055024 lui gp, 5                     |     
    0x00055028 addiu gp, gp, -0x2104         |     
    0x0005502c addu gp, gp, t9               |     gp += t9;
    0x00055030 addiu sp, sp, -0x38           |     
    0x00055034 lw v0, 0x100(a0)              |     v0 = *(a0);
    0x00055038 lw a2, -0x7fac(gp)            |     a2 = *(gp);
    0x0005503c lw a1, -0x7fac(gp)            |     a1 = *(gp);
    0x00055040 sw s3, 0x28(sp)               |     *(var_28h) = s3;
    0x00055044 lw s3, 0xbc(a0)               |     s3 = *((a0 + 47));
    0x00055048 lw t9, -0x7590(gp)            |     t9 = sym.imp.apr_table_setn;
    0x0005504c sw ra, 0x34(sp)               |     *(var_34h) = ra;
    0x00055050 sw gp, 0x10(sp)               |     *(var_10h) = gp;
    0x00055054 sw s1, 0x20(sp)               |     *(var_20h) = s1;
    0x00055058 sw s0, 0x1c(sp)               |     *(var_1ch) = s0;
    0x0005505c move s1, a0                   |     s1 = a0;
                                             |     /* str.CGI_1.1 */
    0x00055060 addiu a2, a2, 0x15c4          |     a2 += aav.0x000015c4;
                                             |     /* str.GATEWAY_INTERFACE */
    0x00055064 addiu a1, a1, 0x15cc          |     a1 += 0x15cc;
    0x00055068 move a0, s3                   |     a0 = s3;
    0x0005506c sw s5, 0x30(sp)               |     *(var_30h) = s5;
    0x00055070 sw s4, 0x2c(sp)               |     *(var_2ch) = s4;
    0x00055074 sw s2, 0x24(sp)               |     *(var_24h) = s2;
    0x00055078 lw s0, (v0)                   |     s0 = *(v0);
    0x0005507c jalr t9                       |     t9 ();
    0x00055080 lw gp, 0x10(sp)               |     gp = *(var_10h);
    0x00055084 lw a2, 0x2c(s1)               |     a2 = *((s1 + 11));
    0x00055088 move a0, s3                   |     a0 = s3;
    0x0005508c lw a1, -0x7fac(gp)            |     a1 = *(gp);
    0x00055090 lw t9, -0x7590(gp)            |     t9 = sym.imp.apr_table_setn;
                                             |     /* str.SERVER_PROTOCOL */
    0x00055094 addiu a1, a1, -0x158          |     a1 += -aav.0x00000158;
    0x00055098 jalr t9                       |     t9 ();
    0x0005509c lw gp, 0x10(sp)               |     gp = *(var_10h);
    0x000550a0 lw a2, 0x4c(s1)               |     a2 = *((s1 + 19));
    0x000550a4 move a0, s3                   |     a0 = s3;
    0x000550a8 lw a1, -0x7fac(gp)            |     a1 = *(gp);
    0x000550ac lw t9, -0x7590(gp)            |     t9 = sym.imp.apr_table_setn;
                                             |     /* str.REQUEST_METHOD */
    0x000550b0 addiu a1, a1, -0x1dc          |     a1 += -aav.0x000001dc;
    0x000550b4 jalr t9                       |     t9 ();
    0x000550b8 lw a2, 0xf4(s1)               |     a2 = *((s1 + 61));
    0x000550bc lw gp, 0x10(sp)               |     gp = *(var_10h);
                                             |     if (a2 == 0) {
    0x000550c0 beqz a2, 0x552e4              |         goto label_4;
                                             |     }
                                             | label_2:
    0x000550c4 lw a1, -0x7fac(gp)            |     a1 = *(gp);
    0x000550c8 lw t9, -0x7590(gp)            |     t9 = sym.imp.apr_table_setn;
    0x000550cc move a0, s3                   |     a0 = s3;
                                             |     /* str.QUERY_STRING */
    0x000550d0 addiu a1, a1, -0x12c          |     a1 += -aav.0x0000012c;
    0x000550d4 jalr t9                       |     t9 ();
    0x000550d8 lw gp, 0x10(sp)               |     gp = *(var_10h);
    0x000550dc lw a0, 0x88(s0)               |     a0 = *((s0 + 34));
    0x000550e0 lw s4, -0x7fac(gp)            |     s4 = *(gp);
                                             |     if (a0 != 0) {
    0x000550e4 beqz a0, 0x55124              |         
    0x000550e8 lw t9, -0x7200(gp)            |         t9 = sym.imp.apr_hash_get;
    0x000550ec addiu a2, zero, -1            |         a2 = -1;
                                             |         /* str.REQUEST_URI */
    0x000550f0 addiu a1, s4, -0x4b88         |         a1 = s4 + -0x4b88;
    0x000550f4 jalr t9                       |         t9 ();
    0x000550f8 lw gp, 0x10(sp)               |         gp = *(var_10h);
                                             |         if (v0 == 0) {
    0x000550fc beqz v0, 0x55124              |             goto label_5;
                                             |         }
    0x00055100 lw a1, -0x7fac(gp)            |         a1 = *(gp);
    0x00055104 lw t9, -0x7740(gp)            |         t9 = sym.imp.strcmp;
                                             |         /* str.current_uri */
    0x00055108 addiu a1, a1, -0x4b7c         |         a1 += -0x4b7c;
    0x0005510c move a0, v0                   |         a0 = v0;
    0x00055110 jalr t9                       |         t9 ();
    0x00055114 lw gp, 0x10(sp)               |         gp = *(var_10h);
                                             |         if (v0 != 0) {
    0x00055118 bnez v0, 0x55124              |             goto label_5;
                                             |         }
    0x0005511c lw a2, 0xe4(s1)               |         a2 = *((s1 + 57));
    0x00055120 b 0x551f8                     |         goto label_3;
                                             |     }
                                             | label_5:
    0x00055124 lw s2, 0x18(s1)               |     s2 = *((s1 + 6));
    0x00055128 lw s5, (s1)                   |     s5 = *(s1);
                                             |     if (s2 == 0) {
    0x0005512c beqz s2, 0x553e4              |         goto label_6;
                                             |     }
    0x00055130 lw t9, -0x744c(gp)            |     t9 = *(gp);
    0x00055134 lb s0, (s2)                   |     s0 = *(s2);
    0x00055138 jalr t9                       |     t9 ();
    0x0005513c lw v1, (v0)                   |     v1 = *(v0);
    0x00055140 lw gp, 0x10(sp)               |     gp = *(var_10h);
                                             |     if (s0 != 0) {
    0x00055144 bnez s0, 0x5515c              |         goto label_7;
                                             |     }
    0x00055148 andi v0, s0, 0xff             |     v0 = s0 & 0xff;
    0x0005514c b 0x55180                     |     goto label_8;
                                             |     do {
    0x00055150 lb s0, (s2)                   |         s0 = *(s2);
    0x00055154 andi v0, s0, 0xff             |         v0 = s0 & 0xff;
                                             |         if (s0 == 0) {
    0x00055158 beqz s0, 0x55180              |             goto label_8;
                                             |         }
                                             | label_7:
    0x0005515c andi s0, s0, 0xff             |         s0 &= 0xff;
    0x00055160 sll s0, s0, 1                 |         s0 <<= 1;
    0x00055164 addu s0, v1, s0               |         s0 = v1 + s0;
    0x00055168 lhu v0, (s0)                  |         v0 = *(s0);
    0x0005516c andi v0, v0, 0x2000           |         v0 &= aav.0x00002000;
    0x00055170 beql v0, zero, 0x55150        |         
                                             |     } while (v0 == 0);
    0x00055174 addiu s2, s2, 1               |     s2++;
    0x00055178 lb s0, (s2)                   |     s0 = *(s2);
                                             |     do {
    0x0005517c andi v0, s0, 0xff             |         v0 = s0 & 0xff;
                                             | label_8:
    0x00055180 sll v0, v0, 1                 |         v0 <<= 1;
    0x00055184 addu v0, v1, v0               |         v0 = v1 + v0;
    0x00055188 lhu v0, (v0)                  |         v0 = *(v0);
    0x0005518c andi v0, v0, 0x2000           |         v0 &= aav.0x00002000;
                                             |         if (v0 == 0) {
    0x00055190 beqz v0, 0x551a4              |             goto label_9;
                                             |         }
    0x00055194 nop                           |         
    0x00055198 addiu s2, s2, 1               |         s2++;
    0x0005519c lb s0, (s2)                   |         s0 = *(s2);
    0x000551a0 b 0x5517c                     |         
                                             |     } while (1);
                                             |     if (s0 == 0) {
                                             | label_9:
    0x000551a4 beql s0, zero, 0x551e0        |         goto label_10;
                                             |     }
    0x000551a8 move a2, zero                 |     a2 = 0;
    0x000551ac move a2, s2                   |     a2 = s2;
    0x000551b0 b 0x551c4                     |     
                                             |     while (a0 != 0) {
    0x000551b4 lhu v0, (v0)                  |         v0 = *(v0);
    0x000551b8 andi v0, v0, 0x2000           |         v0 &= aav.0x00002000;
    0x000551bc subu a2, a2, s2               |         __asm ("subu a2, a2, s2");
                                             |         if (v0 == 0) {
    0x000551c0 bnel v0, zero, 0x551e0        |             goto label_10;
                                             |         }
    0x000551c4 addiu a2, a2, 1               |         a2++;
    0x000551c8 lb a0, (a2)                   |         a0 = *(a2);
    0x000551cc andi v0, a0, 0xff             |         v0 = a0 & 0xff;
    0x000551d0 sll v0, v0, 1                 |         v0 <<= 1;
    0x000551d4 addu v0, v1, v0               |         v0 = v1 + v0;
    0x000551d8 bnez a0, 0x551b4              |         
                                             |     }
    0x000551dc subu a2, a2, s2               |     __asm ("subu a2, a2, s2");
                                             | label_10:
    0x000551e0 lw t9, -0x7708(gp)            |     t9 = sym.imp.apr_pstrmemdup;
    0x000551e4 move a1, s2                   |     a1 = s2;
    0x000551e8 move a0, s5                   |     a0 = s5;
    0x000551ec jalr t9                       |     t9 ();
    0x000551f0 lw gp, 0x10(sp)               |     gp = *(var_10h);
    0x000551f4 move a2, v0                   |     a2 = v0;
                                             | label_3:
    0x000551f8 lw t9, -0x7590(gp)            |     t9 = sym.imp.apr_table_setn;
                                             |     /* str.REQUEST_URI */
    0x000551fc addiu a1, s4, -0x4b88         |     a1 = s4 + -0x4b88;
    0x00055200 move a0, s3                   |     a0 = s3;
    0x00055204 jalr t9                       |     t9 ();
    0x00055208 lw gp, 0x10(sp)               |     gp = *(var_10h);
    0x0005520c lw a0, 0x2c(s1)               |     a0 = *((s1 + 11));
    0x00055210 lw a1, -0x7fac(gp)            |     a1 = *(gp);
    0x00055214 lw t9, -0x7740(gp)            |     t9 = sym.imp.strcmp;
                                             |     /* str.INCLUDED */
    0x00055218 addiu a1, a1, -0x5924         |     a1 += -0x5924;
    0x0005521c jalr t9                       |     t9 ();
    0x00055220 lw gp, 0x10(sp)               |     gp = *(var_10h);
                                             |     if (v0 == 0) {
    0x00055224 beqz v0, 0x55298              |         goto label_11;
                                             |     }
    0x00055228 lw a1, 0xf0(s1)               |     a1 = *((s1 + 60));
    0x0005522c lw s0, 0xe4(s1)               |     s0 = *((s1 + 57));
                                             |     if (a1 != 0) {
    0x00055230 beqz a1, 0x55240              |         
    0x00055234 lb v0, (a1)                   |         v0 = *(a1);
    0x00055238 lw t9, -0x7ac8(gp)            |         t9 = sym.ap_find_path_info;
                                             |         if (v0 != 0) {
    0x0005523c bnez v0, 0x55384              |             goto label_12;
                                             |         }
                                             |     }
    0x00055240 lw a1, -0x7fac(gp)            |     a1 = *(gp);
    0x00055244 lw t9, -0x7590(gp)            |     t9 = sym.imp.apr_table_setn;
    0x00055248 move a2, s0                   |     a2 = s0;
                                             |     /* str.SCRIPT_NAME */
    0x0005524c addiu a1, a1, 0x15e0          |     a1 += 0x15e0;
    0x00055250 move a0, s3                   |     a0 = s3;
    0x00055254 jalr t9                       |     t9 ();
    0x00055258 lw gp, 0x10(sp)               |     gp = *(var_10h);
                                             | label_1:
    0x0005525c lw a1, 0xf0(s1)               |     a1 = *((s1 + 60));
    0x00055260 lw ra, 0x34(sp)               |     ra = *(var_34h);
                                             |     if (a1 == 0) {
    0x00055264 beqz a1, 0x55278              |         goto label_0;
                                             |     }
    0x00055268 lb v0, (a1)                   |     v0 = *(a1);
    0x0005526c lw t9, -0x7ae0(gp)            |     t9 = sym.ap_os_escape_path;
                                             |     if (v0 != 0) {
    0x00055270 bnez v0, 0x552f0              |         goto label_13;
                                             |     }
                                             |     do {
    0x00055274 lw ra, 0x34(sp)               |         ra = *(var_34h);
                                             | label_0:
    0x00055278 lw s5, 0x30(sp)               |         s5 = *(var_30h);
    0x0005527c lw s4, 0x2c(sp)               |         s4 = *(var_2ch);
    0x00055280 lw s3, 0x28(sp)               |         s3 = *(var_28h);
    0x00055284 lw s2, 0x24(sp)               |         s2 = *(var_24h);
    0x00055288 lw s1, 0x20(sp)               |         s1 = *(var_20h);
    0x0005528c lw s0, 0x1c(sp)               |         s0 = *(var_1ch);
    0x00055290 addiu sp, sp, 0x38            |         
    0x00055294 jr ra                         |         return v0;
                                             | label_11:
    0x00055298 lw a1, -0x7fac(gp)            |         a1 = *(gp);
    0x0005529c lw t9, -0x7590(gp)            |         t9 = sym.imp.apr_table_setn;
    0x000552a0 lw a2, 0xe4(s1)               |         a2 = *((s1 + 57));
                                             |         /* str.SCRIPT_NAME */
    0x000552a4 addiu a1, a1, 0x15e0          |         a1 += 0x15e0;
    0x000552a8 move a0, s3                   |         a0 = s3;
    0x000552ac jalr t9                       |         t9 ();
    0x000552b0 lw a2, 0xf0(s1)               |         a2 = *((s1 + 60));
    0x000552b4 lw gp, 0x10(sp)               |         gp = *(var_10h);
    0x000552b8 beqz a2, 0x55274              |         
                                             |     } while (a2 == 0);
    0x000552bc lb v0, (a2)                   |     v0 = *(a2);
    0x000552c0 lw ra, 0x34(sp)               |     ra = *(var_34h);
                                             |     if (v0 == 0) {
    0x000552c4 beqz v0, 0x55278              |         goto label_0;
                                             |     }
    0x000552c8 lw a1, -0x7fac(gp)            |     a1 = *(gp);
    0x000552cc lw t9, -0x7590(gp)            |     t9 = sym.imp.apr_table_setn;
                                             |     /* str.PATH_INFO */
    0x000552d0 addiu a1, a1, -0x138          |     a1 += -aav.0x00000138;
    0x000552d4 move a0, s3                   |     a0 = s3;
    0x000552d8 jalr t9                       |     t9 ();
    0x000552dc lw gp, 0x10(sp)               |     gp = *(var_10h);
    0x000552e0 b 0x5525c                     |     goto label_1;
                                             | label_4:
    0x000552e4 lw a2, -0x7fac(gp)            |     a2 = *(gp);
    0x000552e8 addiu a2, a2, 0x47dc          |     a2 += 0x47dc;
    0x000552ec b 0x550c4                     |     goto label_2;
                                             | label_13:
    0x000552f0 lw a0, (s1)                   |     a0 = *(s1);
    0x000552f4 addiu a2, zero, 1             |     a2 = 1;
    0x000552f8 jalr t9                       |     t9 ();
    0x000552fc lw gp, 0x10(sp)               |     gp = *(var_10h);
    0x00055300 move a1, s1                   |     a1 = s1;
    0x00055304 move a2, zero                 |     a2 = 0;
    0x00055308 lw t9, -0x7a78(gp)            |     t9 = sym.ap_sub_req_lookup_uri;
    0x0005530c move a0, v0                   |     a0 = v0;
    0x00055310 bal 0x40c88                   |     sym_ap_sub_req_lookup_uri ();
    0x00055314 lw a1, 0xe8(v0)               |     a1 = *((v0 + 58));
    0x00055318 lw gp, 0x10(sp)               |     gp = *(var_10h);
    0x0005531c move s0, v0                   |     s0 = v0;
                                             |     if (a1 != 0) {
    0x00055320 beqz a1, 0x55358              |         
    0x00055324 lw t9, -0x76e8(gp)            |         t9 = sym.imp.apr_pstrcat
    0x00055328 lw a2, 0xf0(v0)               |         a2 = *((v0 + 60));
    0x0005532c lw a0, (s1)                   |         a0 = *(s1);
    0x00055330 move a3, zero                 |         a3 = 0;
    0x00055334 jalr t9                       |         t9 ();
    0x00055338 lw gp, 0x10(sp)               |         gp = *(var_10h);
    0x0005533c move a2, v0                   |         a2 = v0;
    0x00055340 move a0, s3                   |         a0 = s3;
    0x00055344 lw a1, -0x7fac(gp)            |         a1 = *(gp);
    0x00055348 lw t9, -0x7590(gp)            |         t9 = sym.imp.apr_table_setn;
                                             |         /* str.PATH_TRANSLATED */
    0x0005534c addiu a1, a1, 0x15ec          |         a1 += 0x15ec;
    0x00055350 jalr t9                       |         t9 ();
    0x00055354 lw gp, 0x10(sp)               |         gp = *(var_10h);
                                             |     }
    0x00055358 lw ra, 0x34(sp)               |     ra = *(var_34h);
    0x0005535c lw s5, 0x30(sp)               |     s5 = *(var_30h);
    0x00055360 lw s4, 0x2c(sp)               |     s4 = *(var_2ch);
    0x00055364 lw s3, 0x28(sp)               |     s3 = *(var_28h);
    0x00055368 lw s2, 0x24(sp)               |     s2 = *(var_24h);
    0x0005536c lw s1, 0x20(sp)               |     s1 = *(var_20h);
    0x00055370 move a0, s0                   |     a0 = s0;
    0x00055374 lw t9, -0x7a74(gp)            |     t9 = sym.ap_destroy_sub_req;
    0x00055378 lw s0, 0x1c(sp)               |     s0 = *(var_1ch);
    0x0005537c addiu sp, sp, 0x38            |     
    0x00055380 b 0x41470                     |     void (*0x41470)() ();
                                             | label_12:
    0x00055384 move a0, s0                   |     a0 = s0;
    0x00055388 bal 0x54efc                   |     sym_ap_find_path_info ();
    0x0005538c lw gp, 0x10(sp)               |     gp = *(var_10h);
    0x00055390 lw a0, (s1)                   |     a0 = *(s1);
    0x00055394 move a2, v0                   |     a2 = v0;
    0x00055398 lw t9, -0x74d4(gp)            |     t9 = sym.imp.apr_pstrndup;
    0x0005539c move a1, s0                   |     a1 = s0;
    0x000553a0 jalr t9                       |     t9 ();
    0x000553a4 lw gp, 0x10(sp)               |     gp = *(var_10h);
    0x000553a8 move a2, v0                   |     a2 = v0;
    0x000553ac move a0, s3                   |     a0 = s3;
    0x000553b0 lw a1, -0x7fac(gp)            |     a1 = *(gp);
    0x000553b4 lw t9, -0x7590(gp)            |     t9 = sym.imp.apr_table_setn;
                                             |     /* str.SCRIPT_NAME */
    0x000553b8 addiu a1, a1, 0x15e0          |     a1 += 0x15e0;
    0x000553bc jalr t9                       |     t9 ();
    0x000553c0 lw gp, 0x10(sp)               |     gp = *(var_10h);
    0x000553c4 lw a2, 0xf0(s1)               |     a2 = *((s1 + 60));
    0x000553c8 move a0, s3                   |     a0 = s3;
    0x000553cc lw a1, -0x7fac(gp)            |     a1 = *(gp);
    0x000553d0 lw t9, -0x7590(gp)            |     t9 = sym.imp.apr_table_setn;
                                             |     /* str.PATH_INFO */
    0x000553d4 addiu a1, a1, -0x138          |     a1 += -aav.0x00000138;
    0x000553d8 jalr t9                       |     t9 ();
    0x000553dc lw gp, 0x10(sp)               |     gp = *(var_10h);
    0x000553e0 b 0x5525c                     |     goto label_1;
                                             | label_6:
    0x000553e4 lw t9, -0x7544(gp)            |     t9 = sym.imp.apr_palloc;
    0x000553e8 addiu a1, zero, 1             |     a1 = 1;
    0x000553ec move a0, s5                   |     a0 = s5;
    0x000553f0 jalr t9                       |     t9 ();
    0x000553f4 move a2, v0                   |     a2 = v0;
    0x000553f8 lw gp, 0x10(sp)               |     gp = *(var_10h);
    0x000553fc sb zero, (v0)                 |     *(v0) = 0;
    0x00055400 b 0x551f8                     |     goto label_3;
                                             | }
    ; assembly                                       | /* r2dec pseudo code output */
                                                     | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x3afb4 */
                                                     | #include <stdint.h>
                                                     |  
    ; (fcn) sym.ap_add_version_component ()          | void ap_add_version_component () {
    0x0003afb4 lui gp, 6                             |     
    0x0003afb8 addiu gp, gp, 0x7f6c                  |     
    0x0003afbc addu gp, gp, t9                       |     gp += t9;
    0x0003afc0 lw v0, -0x7f14(gp)                    |     v0 = *((gp - 8133));
    0x0003afc4 addiu sp, sp, -0x38                   |     
    0x0003afc8 lw v0, -0x3d64(v0)                    |     v0 = *((v0 - 3929));
    0x0003afcc sw gp, 0x18(sp)                       |     *(var_18h) = gp;
    0x0003afd0 sw s3, 0x30(sp)                       |     *(var_30h) = s3;
    0x0003afd4 sw s1, 0x28(sp)                       |     *(var_28h) = s1;
    0x0003afd8 sw ra, 0x34(sp)                       |     *(var_34h) = ra;
    0x0003afdc sw s2, 0x2c(sp)                       |     *(var_2ch) = s2;
    0x0003afe0 sw s0, 0x24(sp)                       |     *(var_24h) = s0;
    0x0003afe4 move s3, a0                           |     s3 = a0;
    0x0003afe8 move s1, a1                           |     s1 = a1;
                                                     |     if (v0 == 0) {
    0x0003afec bnez v0, 0x3b050                      |         
    0x0003aff0 lw s0, -0x7f14(gp)                    |         s0 = *((gp - 8133));
    0x0003aff4 lw a1, -0x3d60(s0)                    |         a1 = *((s0 - 3928));
    0x0003aff8 lw s2, -0x7fac(gp)                    |         s2 = *(gp);
                                                     |         if (a1 != 0) {
    0x0003affc beqz a1, 0x3b020                      |             
    0x0003b000 lw t9, -0x76e8(gp)                    |             t9 = sym.imp.apr_pstrcat
    0x0003b004 sw zero, 0x10(sp)                     |             *(var_10h) = 0;
    0x0003b008 move a3, s1                           |             a3 = s1;
    0x0003b00c addiu a2, s2, 0x6730                  |             a2 = s2 + 0x6730;
    0x0003b010 jalr t9                               |             t9 ();
    0x0003b014 sw v0, -0x3d60(s0)                    |             *((s0 - 3928)) = v0;
    0x0003b018 lw gp, 0x18(sp)                       |             gp = *(var_18h);
    0x0003b01c b 0x3b054                             |             goto label_0;
                                                     |         }
    0x0003b020 lw a2, -0x7dd4(gp)                    |         a2 = *(gp);
    0x0003b024 lw t9, -0x7280(gp)                    |         t9 = sym.imp.apr_pool_cleanup_register;
    0x0003b028 lw a3, -0x73e0(gp)                    |         a3 = *((gp - 7416));
    0x0003b02c addiu a2, a2, -0x79c                  |         a2 += -aav.0x0000079c;
    0x0003b030 jalr t9                               |         t9 ();
    0x0003b034 lw gp, 0x18(sp)                       |         gp = *(var_18h);
    0x0003b038 move a1, s1                           |         a1 = s1;
    0x0003b03c lw t9, -0x7654(gp)                    |         t9 = sym.imp.apr_pstrdup;
    0x0003b040 move a0, s3                           |         a0 = s3;
    0x0003b044 jalr t9                               |         t9 ();
    0x0003b048 lw gp, 0x18(sp)                       |         gp = *(var_18h);
    0x0003b04c sw v0, -0x3d60(s0)                    |         *((s0 - 3928)) = v0;
                                                     |     }
    0x0003b050 lw s2, -0x7fac(gp)                    |     s2 = *(gp);
                                                     | label_0:
    0x0003b054 lw s0, -0x7f14(gp)                    |     s0 = *((gp - 8133));
    0x0003b058 lw t9, -0x76e8(gp)                    |     t9 = sym.imp.apr_pstrcat
    0x0003b05c move a3, s1                           |     a3 = s1;
    0x0003b060 lw a1, -0x3d68(s0)                    |     a1 = *((s0 - 3930));
    0x0003b064 addiu a2, s2, 0x6730                  |     a2 = s2 + 0x6730;
    0x0003b068 move a0, s3                           |     a0 = s3;
    0x0003b06c sw zero, 0x10(sp)                     |     *(var_10h) = 0;
    0x0003b070 jalr t9                               |     t9 ();
    0x0003b074 lw ra, 0x34(sp)                       |     ra = *(var_34h);
    0x0003b078 lw s3, 0x30(sp)                       |     s3 = *(var_30h);
    0x0003b07c lw s2, 0x2c(sp)                       |     s2 = *(var_2ch);
    0x0003b080 lw s1, 0x28(sp)                       |     s1 = *(var_28h);
    0x0003b084 sw v0, -0x3d68(s0)                    |     *((s0 - 3930)) = v0;
    0x0003b088 lw s0, 0x24(sp)                       |     s0 = *(var_24h);
    0x0003b08c addiu sp, sp, 0x38                    |     
    0x0003b090 jr ra                                 |     return v0;
                                                     | }
    ; assembly                                   | /* r2dec pseudo code output */
                                                 | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x4c830 */
                                                 | #include <stdint.h>
                                                 |  
    ; (fcn) sym.ap_build_cont_config ()          | void ap_build_cont_config () {
    0x0004c830 lui gp, 5                         |     
    0x0004c834 addiu gp, gp, 0x66f0              |     
    0x0004c838 addu gp, gp, t9                   |     gp += t9;
    0x0004c83c lw v0, -0x7534(gp)                |     v0 = *(gp);
    0x0004c840 addiu sp, sp, -0x80               |     
    0x0004c844 lw t9, -0x76e8(gp)                |     t9 = sym.imp.apr_pstrcat
    0x0004c848 sw v0, 0x34(sp)                   |     *(var_34h) = v0;
    0x0004c84c lw v0, (v0)                       |     v0 = *(v0);
    0x0004c850 sw s6, 0x70(sp)                   |     *(var_70h) = s6;
    0x0004c854 sw s5, 0x6c(sp)                   |     *(var_6ch) = s5;
    0x0004c858 sw s0, 0x58(sp)                   |     *(var_58h) = s0;
    0x0004c85c move s5, a1                       |     s5 = a1;
    0x0004c860 move s6, a0                       |     s6 = a0;
    0x0004c864 lw a1, 0x94(sp)                   |     a1 = *(arg_94h);
    0x0004c868 move s0, a2                       |     s0 = a2;
    0x0004c86c lw a2, -0x7fac(gp)                |     a2 = *(gp);
    0x0004c870 lui v1, 0x100                     |     v1 = imp.apr_hook_global_pool;
    0x0004c874 sw s2, 0x60(sp)                   |     *(var_60h) = s2;
    0x0004c878 sw v0, 0x54(sp)                   |     *(var_54h) = v0;
    0x0004c87c xor s2, s6, s5                    |     s2 = s6 ^ s5;
    0x0004c880 addiu v0, zero, 0x2000            |     v0 = aav.0x00002000;
    0x0004c884 sw gp, 0x20(sp)                   |     *(var_20h) = gp;
                                                 |     if (s2 == 0) {
    0x0004c888 movn v0, v1, s2                   |         v0 = v1;
                                                 |     }
    0x0004c88c sw ra, 0x7c(sp)                   |     *(var_7ch) = ra;
    0x0004c890 sw s7, 0x74(sp)                   |     *(var_74h) = s7;
    0x0004c894 sw s4, 0x68(sp)                   |     *(var_68h) = s4;
    0x0004c898 sw s3, 0x64(sp)                   |     *(var_64h) = s3;
    0x0004c89c addiu a1, a1, 1                   |     a1++;
    0x0004c8a0 move a0, s5                       |     a0 = s5;
    0x0004c8a4 addiu a2, a2, 0xb98               |     a2 += 0xb98;
    0x0004c8a8 sw fp, 0x78(sp)                   |     *(var_78h) = fp;
    0x0004c8ac sw s1, 0x5c(sp)                   |     *(var_5ch) = s1;
    0x0004c8b0 move s7, a3                       |     s7 = a3;
    0x0004c8b4 sw zero, 0x3c(sp)                 |     *(var_3ch) = 0;
    0x0004c8b8 move a3, zero                     |     a3 = 0;
    0x0004c8bc lw s4, 0x90(sp)                   |     s4 = *(arg_90h);
    0x0004c8c0 move s2, v0                       |     s2 = v0;
    0x0004c8c4 jalr t9                           |     t9 ();
    0x0004c8c8 lw gp, 0x20(sp)                   |     gp = *(var_20h);
    0x0004c8cc addiu s3, sp, 0x40                |     s3 = sp + 0x40;
    0x0004c8d0 sw v0, 0x30(sp)                   |     *(var_30h) = v0;
    0x0004c8d4 lw t9, -0x79f4(gp)                |     t9 = sym.ap_varbuf_init;
    0x0004c8d8 addiu a2, zero, 0xc8              |     a2 = 0xc8;
    0x0004c8dc move a1, s3                       |     a1 = s3;
    0x0004c8e0 move a0, s5                       |     a0 = s5;
    0x0004c8e4 jalr t9                           |     t9 ();
    0x0004c8e8 lw gp, 0x20(sp)                   |     gp = *(var_20h);
    0x0004c8ec addiu v0, sp, 0x3c                |     v0 = sp + 0x3c;
    0x0004c8f0 sw v0, 0x28(sp)                   |     *(var_28h) = v0;
    0x0004c8f4 lw v0, -0x7a1c(gp)                |     v0 = *(gp);
    0x0004c8f8 addiu v0, v0, -0x6270             |     v0 += -0x6270;
    0x0004c8fc sw v0, 0x2c(sp)                   |     *(var_2ch) = v0;
                                                 | label_0:
    0x0004c900 addiu s1, zero, 0x3c              |     s1 = 0x3c;
    0x0004c904 addiu fp, zero, 0x2f              |     fp = 0x2f;
    0x0004c908 lw t9, -0x79f0(gp)                |     t9 = *(gp);
                                                 |     do {
    0x0004c90c lw a1, 0x20(s0)                   |         a1 = *((s0 + 8));
    0x0004c910 move a2, s2                       |         a2 = s2;
    0x0004c914 move a0, s3                       |         a0 = s3;
    0x0004c918 jalr t9                           |         t9 ();
    0x0004c91c lw gp, 0x20(sp)                   |         gp = *(var_20h);
                                                 |         if (v0 != 0) {
    0x0004c920 bnez v0, 0x4c9cc                  |             goto label_3;
                                                 |         }
    0x0004c924 lw a2, 0x40(sp)                   |         a2 = *(var_40h);
    0x0004c928 lbu v0, (a2)                      |         v0 = *(a2);
                                                 |         if (v0 == s1) {
    0x0004c92c beql v0, s1, 0x4c998              |             goto label_4;
                                                 |         }
    0x0004c930 lbu v0, 1(a2)                     |         v0 = *((a2 + 1));
                                                 | label_2:
    0x0004c934 lb v0, (a2)                       |         v0 = *(a2);
                                                 | label_1:
    0x0004c938 addiu v1, zero, 0x23              |         v1 = 0x23;
                                                 |         if (v0 != v1) {
    0x0004c93c beql v0, v1, 0x4c978              |             
    0x0004c940 lw v0, 0x3c(sp)                   |             v0 = *(var_3ch);
    0x0004c944 lw v0, 0x28(sp)                   |             v0 = *(var_28h);
                                                 |             if (v0 != 0) {
    0x0004c948 beqz v0, 0x4c974                  |                 
    0x0004c94c lw t9, 0x2c(sp)                   |                 t9 = *(var_2ch);
    0x0004c950 sw v0, 0x18(sp)                   |                 *(var_18h) = v0;
    0x0004c954 sw s4, 0x14(sp)                   |                 *(var_14h) = s4;
    0x0004c958 sw s7, 0x10(sp)                   |                 *(var_10h) = s7;
    0x0004c95c move a3, s0                       |                 a3 = s0;
    0x0004c960 move a1, s5                       |                 a1 = s5;
    0x0004c964 move a0, s6                       |                 a0 = s6;
    0x0004c968 jalr t9                           |                 t9 ();
    0x0004c96c lw gp, 0x20(sp)                   |                 gp = *(var_20h);
                                                 |                 if (v0 != 0) {
    0x0004c970 bnez v0, 0x4ca08                  |                     goto label_5;
                                                 |                 }
                                                 |             }
    0x0004c974 lw v0, 0x3c(sp)                   |             v0 = *(var_3ch);
                                                 |         }
    0x0004c978 lw t9, -0x79f0(gp)                |         t9 = *(gp);
    0x0004c97c bnez v0, 0x4c90c                  |         
                                                 |     } while (v0 != 0);
    0x0004c980 lw v0, (s4)                       |     v0 = *(s4);
    0x0004c984 sw v0, 0x3c(sp)                   |     *(var_3ch) = v0;
                                                 |     if (v0 != 0) {
    0x0004c988 bnez v0, 0x4c900                  |         goto label_0;
                                                 |     }
    0x0004c98c lw v0, (s7)                       |     v0 = *(s7);
    0x0004c990 sw v0, 0x3c(sp)                   |     *(var_3ch) = v0;
    0x0004c994 b 0x4c900                         |     goto label_0;
                                                 | label_4:
    0x0004c998 lb v0, (a2)                       |     v0 = *(a2);
                                                 |     if (v0 == fp) {
    0x0004c99c bnel v0, fp, 0x4c938              |         goto label_1;
                                                 |     }
    0x0004c9a0 lw t9, -0x7e28(gp)                |     t9 = sym.ap_cstr_casecmp;
    0x0004c9a4 lw a1, 0x30(sp)                   |     a1 = *(var_30h);
    0x0004c9a8 addiu a0, a2, 2                   |     a0 = a2 + 2;
    0x0004c9ac jalr t9                           |     t9 ();
    0x0004c9b0 lw gp, 0x20(sp)                   |     gp = *(var_20h);
                                                 |     if (v0 == 0) {
    0x0004c9b4 bnez v0, 0x4c9c4                  |         
    0x0004c9b8 lw v0, (s4)                       |         v0 = *(s4);
    0x0004c9bc lw t9, -0x79ec(gp)                |         t9 = sym.ap_varbuf_free;
                                                 |         if (v0 == 0) {
    0x0004c9c0 beqz v0, 0x4ca48                  |             goto label_6;
                                                 |         }
                                                 |     }
    0x0004c9c4 lw a2, 0x40(sp)                   |     a2 = *(var_40h);
    0x0004c9c8 b 0x4c934                         |     goto label_2;
                                                 | label_3:
    0x0004c9cc lw t9, -0x79ec(gp)                |     t9 = sym.ap_varbuf_free;
    0x0004c9d0 sw v0, 0x28(sp)                   |     *(var_28h) = v0;
    0x0004c9d4 move a0, s3                       |     a0 = s3;
    0x0004c9d8 jalr t9                           |     t9 ();
    0x0004c9dc lui v1, 1                         |     v1 = 0x10000;
    0x0004c9e0 lw v0, 0x28(sp)                   |     v0 = *(var_28h);
                                                 |     /* esilref: 'ack_ap_set_name_virtual_host' */
    0x0004c9e4 addiu v1, v1, 0x117e              |     v1 += 0x117e;
    0x0004c9e8 lw gp, 0x20(sp)                   |     gp = *(var_20h);
                                                 |     if (v0 == v1) {
    0x0004c9ec beq v0, v1, 0x4ca54               |         goto label_7;
                                                 |     }
    0x0004c9f0 lw t9, -0x79e8(gp)                |     t9 = *(gp);
    0x0004c9f4 lw a1, 0x20(s0)                   |     a1 = *((s0 + 8));
    0x0004c9f8 move a2, v0                       |     a2 = v0;
    0x0004c9fc move a0, s5                       |     a0 = s5;
    0x0004ca00 jalr t9                           |     t9 ();
    0x0004ca04 lw gp, 0x20(sp)                   |     gp = *(var_20h);
                                                 |     do {
                                                 | label_5:
    0x0004ca08 lw v1, 0x34(sp)                   |         v1 = *(var_34h);
    0x0004ca0c lw a0, 0x54(sp)                   |         a0 = *(var_54h);
    0x0004ca10 lw v1, (v1)                       |         v1 = *(v1);
    0x0004ca14 lw ra, 0x7c(sp)                   |         ra = *(var_7ch);
                                                 |         if (a0 != v1) {
    0x0004ca18 bne a0, v1, 0x4ca64               |             goto label_8;
                                                 |         }
    0x0004ca1c lw fp, 0x78(sp)                   |         fp = *(var_78h);
    0x0004ca20 lw s7, 0x74(sp)                   |         s7 = *(var_74h);
    0x0004ca24 lw s6, 0x70(sp)                   |         s6 = *(var_70h);
    0x0004ca28 lw s5, 0x6c(sp)                   |         s5 = *(var_6ch);
    0x0004ca2c lw s4, 0x68(sp)                   |         s4 = *(var_68h);
    0x0004ca30 lw s3, 0x64(sp)                   |         s3 = *(var_64h);
    0x0004ca34 lw s2, 0x60(sp)                   |         s2 = *(var_60h);
    0x0004ca38 lw s1, 0x5c(sp)                   |         s1 = *(var_5ch);
    0x0004ca3c lw s0, 0x58(sp)                   |         s0 = *(var_58h);
    0x0004ca40 addiu sp, sp, 0x80                |         
    0x0004ca44 jr ra                             |         return v1;
                                                 | label_6:
    0x0004ca48 move a0, s3                       |         a0 = s3;
    0x0004ca4c jalr t9                           |         t9 ();
    0x0004ca50 lw gp, 0x20(sp)                   |         gp = *(var_20h);
                                                 | label_7:
    0x0004ca54 lw v1, 0x3c(sp)                   |         v1 = *(var_3ch);
    0x0004ca58 move v0, zero                     |         v0 = 0;
    0x0004ca5c sw v1, (s7)                       |         *(s7) = v1;
    0x0004ca60 b 0x4ca08                         |         
                                                 |     } while (1);
                                                 | label_8:
    0x0004ca64 lw t9, -0x75e8(gp)                |     t9 = sym.imp.__stack_chk_fail;
    0x0004ca68 jalr t9                           |     t9 ();
    0x0004ca6c nop                               |     
                                                 | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x70bbc */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.ap_byterange_filter ()       | void ap_byterange_filter () {
    0x00070bbc lui gp, 3                     |     
    0x00070bc0 addiu gp, gp, 0x2364          |     
    0x00070bc4 addu gp, gp, t9               |     gp += t9;
    0x00070bc8 addiu sp, sp, -0x100          |     
    0x00070bcc lw v0, -0x7534(gp)            |     v0 = *(gp);
    0x00070bd0 sw a0, 0x74(sp)               |     *(var_74h) = a0;
    0x00070bd4 lw a0, 0xc(a0)                |     a0 = *((a0 + 3));
    0x00070bd8 lw v1, (v0)                   |     v1 = *(v0);
    0x00070bdc sw v0, 0x78(sp)               |     *(var_78h) = v0;
    0x00070be0 lw v0, 0x100(a0)              |     v0 = *(a0);
    0x00070be4 sw gp, 0x38(sp)               |     *(var_38h) = gp;
    0x00070be8 sw ra, 0xfc(sp)               |     *(var_fch) = ra;
    0x00070bec lw v0, (v0)                   |     v0 = *(v0);
    0x00070bf0 sw fp, 0xf8(sp)               |     *(var_f8h) = fp;
    0x00070bf4 sw s7, 0xf4(sp)               |     *(var_f4h) = s7;
    0x00070bf8 lw t0, 0x6c(v0)               |     t0 = *((v0 + 27));
    0x00070bfc sw s6, 0xf0(sp)               |     *(var_f0h) = s6;
    0x00070c00 sw s5, 0xec(sp)               |     *(var_ech) = s5;
    0x00070c04 sw s4, 0xe8(sp)               |     *(var_e8h) = s4;
    0x00070c08 sw s3, 0xe4(sp)               |     *(var_e4h) = s3;
    0x00070c0c sw s2, 0xe0(sp)               |     *(var_e0h) = s2;
    0x00070c10 sw s1, 0xdc(sp)               |     *(var_dch) = s1;
    0x00070c14 sw s0, 0xd8(sp)               |     *(var_d8h) = s0;
    0x00070c18 sw a0, 0x44(sp)               |     *(var_44h) = a0;
    0x00070c1c sw a1, 0x5c(sp)               |     *(var_5ch) = a1;
    0x00070c20 sw v1, 0xd4(sp)               |     *(var_d4h) = v1;
    0x00070c24 addiu v1, zero, -3            |     v1 = -3;
                                             |     if (t0 < 0) {
    0x00070c28 bltz t0, 0x70db0              |         goto label_48;
                                             |     }
                                             | label_4:
    0x00070c2c lw t1, 0x70(v0)               |     t1 = *((v0 + 28));
                                             | label_5:
    0x00070c30 addiu v1, zero, -3            |     v1 = -3;
                                             |     if (t1 < 0) {
    0x00070c34 bltz t1, 0x70da0              |         goto label_49;
                                             |     }
                                             | label_2:
    0x00070c38 lw t2, 0x74(v0)               |     t2 = *((v0 + 29));
                                             | label_3:
    0x00070c3c addiu v0, zero, -3            |     v0 = -3;
                                             |     if (t2 < 0) {
    0x00070c40 bltz t2, 0x70d90              |         goto label_50;
                                             |     }
                                             | label_0:
    0x00070c44 lw v1, 0x5c(sp)               |     v1 = *(var_5ch);
                                             | label_1:
    0x00070c48 addiu t4, v1, 4               |     t4 = v1 + 4;
    0x00070c4c lw v0, 4(v1)                  |     v0 = *((v1 + 1));
    0x00070c50 sw t4, 0x7c(sp)               |     *(var_7ch) = t4;
                                             |     if (v0 == t4) {
    0x00070c54 beq v0, t4, 0x70d28           |         goto label_51;
                                             |     }
    0x00070c58 lw v1, 8(v0)                  |     v1 = *((v0 + 2));
    0x00070c5c lw a2, -0x7620(gp)            |     a2 = *((gp - 7560));
    0x00070c60 addiu v1, zero, -1            |     v1 = -1;
                                             |     if (v1 == a2) {
    0x00070c64 beq v1, a2, 0x70d28           |         goto label_51;
                                             |     }
    0x00070c68 lw a0, 0xc(v0)                |     a0 = *((v0 + 3));
    0x00070c6c move v1, zero                 |     v1 = 0;
                                             |     if (a0 == v1) {
    0x00070c70 beq a0, v1, 0x70d28           |         goto label_51;
                                             |     }
    0x00070c74 move a1, zero                 |     a1 = 0;
    0x00070c78 addiu a3, zero, -1            |     a3 = -1;
    0x00070c7c move s6, a0                   |     s6 = a0;
    0x00070c80 b 0x70c9c                     |     
                                             |     while (v0 != t4) {
    0x00070c84 lw t3, 8(v0)                  |         t3 = *((v0 + 2));
                                             |         if (t3 == a2) {
    0x00070c88 beql t3, a2, 0x70ccc          |             goto label_52;
                                             |         }
    0x00070c8c sw a0, 0x64(sp)               |         *(var_64h) = a0;
    0x00070c90 lw s6, 0xc(v0)                |         s6 = *((v0 + 3));
    0x00070c94 lw s0, 0x74(sp)               |         s0 = *(var_74h);
                                             |         if (s6 == a3) {
    0x00070c98 beq s6, a3, 0x70d2c           |             goto label_53;
                                             |         }
    0x00070c9c addu s6, v1, s6               |         s6 = v1 + s6;
    0x00070ca0 sltu v1, s6, v1               |         v1 = (s6 < v1) ? 1 : 0;
    0x00070ca4 lw v0, (v0)                   |         v0 = *(v0);
    0x00070ca8 addu a0, v1, a1               |         a0 = v1 + a1;
    0x00070cac move a1, a0                   |         a1 = a0;
    0x00070cb0 move v1, s6                   |         v1 = s6;
    0x00070cb4 bne v0, t4, 0x70c84           |         
                                             |     }
    0x00070cb8 lw v0, 0x5c(sp)               |     v0 = *(var_5ch);
    0x00070cbc sw a0, 0x64(sp)               |     *(var_64h) = a0;
    0x00070cc0 lw v0, 0xc(v0)                |     v0 = *((v0 + 3));
    0x00070cc4 lw s0, 0x74(sp)               |     s0 = *(var_74h);
                                             |     if (v0 == a2) {
    0x00070cc8 bne v0, a2, 0x70d2c           |         
                                             | label_52:
    0x00070ccc lw v0, 0x64(sp)               |         v0 = *(var_64h);
    0x00070cd0 or v0, s6, v0                 |         v0 = s6 | v0;
    0x00070cd4 lw v1, 0x44(sp)               |         v1 = *(var_44h);
                                             |         if (v0 != 0) {
    0x00070cd8 beqz v0, 0x70d28              |             
    0x00070cdc sw t2, 0x50(sp)               |             *(var_50h) = t2;
    0x00070ce0 sw t1, 0x4c(sp)               |             *(var_4ch) = t1;
    0x00070ce4 lw v0, 0x1c(v1)               |             v0 = *((v1 + 7));
    0x00070ce8 sw t0, 0x48(sp)               |             *(var_48h) = t0;
    0x00070cec lw s0, 0x44(v1)               |             s0 = *((v1 + 17));
                                             |             if (v0 == 0) {
    0x00070cf0 beqz v0, 0x70dc0              |                 goto label_54;
                                             |             }
                                             | label_6:
    0x00070cf4 lw v0, 0x44(sp)               |             v0 = *(var_44h);
                                             | label_7:
    0x00070cf8 lw s1, 0x74(sp)               |             s1 = *(var_74h);
    0x00070cfc lw t9, -0x7e34(gp)            |             t9 = sym.ap_remove_output_filter;
    0x00070d00 move a0, s1                   |             a0 = s1;
    0x00070d04 sw s0, 0x44(v0)               |             *((v0 + 17)) = s0;
    0x00070d08 jalr t9                       |             t9 ();
    0x00070d0c lw gp, 0x38(sp)               |             gp = *(var_38h);
    0x00070d10 lw a0, 8(s1)                  |             a0 = *((s1 + 2));
    0x00070d14 lw t9, -0x7e30(gp)            |             t9 = sym.ap_pass_brigade;
    0x00070d18 lw a1, 0x5c(sp)               |             a1 = *(var_5ch);
    0x00070d1c jalr t9                       |             t9 ();
    0x00070d20 lw gp, 0x38(sp)               |             gp = *(var_38h);
    0x00070d24 b 0x70d50                     |             goto label_23;
                                             |         }
                                             | label_51:
    0x00070d28 lw s0, 0x74(sp)               |         s0 = *(var_74h);
                                             |     }
                                             | label_53:
    0x00070d2c lw t9, -0x7e34(gp)            |     t9 = sym.ap_remove_output_filter;
    0x00070d30 move a0, s0                   |     a0 = s0;
    0x00070d34 jalr t9                       |     t9 ();
    0x00070d38 lw gp, 0x38(sp)               |     gp = *(var_38h);
    0x00070d3c lw a0, 8(s0)                  |     a0 = *((s0 + 2));
    0x00070d40 lw t9, -0x7e30(gp)            |     t9 = sym.ap_pass_brigade;
    0x00070d44 lw a1, 0x5c(sp)               |     a1 = *(var_5ch);
    0x00070d48 jalr t9                       |     t9 ();
    0x00070d4c lw gp, 0x38(sp)               |     gp = *(var_38h);
                                             | label_23:
    0x00070d50 lw v1, 0x78(sp)               |     v1 = *(var_78h);
    0x00070d54 lw a0, 0xd4(sp)               |     a0 = *(var_d4h);
    0x00070d58 lw v1, (v1)                   |     v1 = *(v1);
    0x00070d5c lw ra, 0xfc(sp)               |     ra = *(var_fch);
                                             |     if (a0 != v1) {
    0x00070d60 bne a0, v1, 0x7215c           |         goto label_55;
                                             |     }
    0x00070d64 lw fp, 0xf8(sp)               |     fp = *(var_f8h);
    0x00070d68 lw s7, 0xf4(sp)               |     s7 = *(var_f4h);
    0x00070d6c lw s6, 0xf0(sp)               |     s6 = *(var_f0h);
    0x00070d70 lw s5, 0xec(sp)               |     s5 = *(var_ech);
    0x00070d74 lw s4, 0xe8(sp)               |     s4 = *(var_e8h);
    0x00070d78 lw s3, 0xe4(sp)               |     s3 = *(var_e4h);
    0x00070d7c lw s2, 0xe0(sp)               |     s2 = *(var_e0h);
    0x00070d80 lw s1, 0xdc(sp)               |     s1 = *(var_dch);
    0x00070d84 lw s0, 0xd8(sp)               |     s0 = *(var_d8h);
    0x00070d88 addiu sp, sp, 0x100           |     
    0x00070d8c jr ra                         |     return v0;
                                             | label_50:
    0x00070d90 addiu t2, zero, 0x14          |     t2 = 0x14;
                                             |     if (t2 == v0) {
    0x00070d94 bnel t2, v0, 0x70c44          |         goto label_0;
                                             |     }
    0x00070d98 lw v1, 0x5c(sp)               |     v1 = *(var_5ch);
    0x00070d9c b 0x70c48                     |     goto label_1;
                                             | label_49:
    0x00070da0 addiu t1, zero, 0x14          |     t1 = 0x14;
                                             |     if (t1 == v1) {
    0x00070da4 bnel t1, v1, 0x70c38          |         goto label_2;
                                             |     }
    0x00070da8 lw t2, 0x74(v0)               |     t2 = *((v0 + 29));
    0x00070dac b 0x70c3c                     |     goto label_3;
                                             | label_48:
    0x00070db0 addiu t0, zero, 0xc8          |     t0 = 0xc8;
                                             |     if (t0 == v1) {
    0x00070db4 bnel t0, v1, 0x70c2c          |         goto label_4;
                                             |     }
    0x00070db8 lw t1, 0x70(v0)               |     t1 = *((v0 + 28));
    0x00070dbc b 0x70c30                     |     goto label_5;
                                             | label_54:
    0x00070dc0 lw a1, -0x7fac(gp)            |     a1 = *(gp);
    0x00070dc4 lw v0, 4(v1)                  |     v0 = *((v1 + 1));
    0x00070dc8 lw t9, -0x7668(gp)            |     t9 = sym.imp.apr_table_get;
    0x00070dcc lw a0, 0xb0(v1)               |     a0 = *((v1 + 44));
                                             |     /* esilref: 'Range' */
    0x00070dd0 addiu a1, a1, -0x58c8         |     a1 += -0x58c8;
    0x00070dd4 sw v0, 0x90(sp)               |     *(var_90h) = v0;
    0x00070dd8 jalr t9                       |     t9 ();
    0x00070ddc sw v0, 0xc4(sp)               |     *(var_c4h) = v0;
    0x00070de0 lw gp, 0x38(sp)               |     gp = *(var_38h);
    0x00070de4 lw t0, 0x48(sp)               |     t0 = *(var_48h);
    0x00070de8 lw t1, 0x4c(sp)               |     t1 = *(var_4ch);
    0x00070dec lw t2, 0x50(sp)               |     t2 = *(var_50h);
                                             |     if (v0 == 0) {
    0x00070df0 beqz v0, 0x70f44              |         goto label_56;
                                             |     }
    0x00070df4 lw a1, -0x7fac(gp)            |     a1 = *(gp);
                                             | label_9:
    0x00070df8 lw t9, -0x7648(gp)            |     t9 = sym.imp.strncasecmp;
    0x00070dfc sw t2, 0x50(sp)               |     *(var_50h) = t2;
    0x00070e00 sw t1, 0x4c(sp)               |     *(var_4ch) = t1;
    0x00070e04 sw t0, 0x48(sp)               |     *(var_48h) = t0;
    0x00070e08 addiu a2, zero, 6             |     a2 = 6;
                                             |     /* str.bytes */
    0x00070e0c addiu a1, a1, 0x7854          |     a1 += 0x7854;
    0x00070e10 move a0, v0                   |     a0 = v0;
    0x00070e14 jalr t9                       |     t9 ();
    0x00070e18 sw v0, 0x8c(sp)               |     *(var_8ch) = v0;
    0x00070e1c lw gp, 0x38(sp)               |     gp = *(var_38h);
                                             |     if (v0 != 0) {
    0x00070e20 bnez v0, 0x70cf4              |         goto label_6;
                                             |     }
    0x00070e24 lw v0, 0x44(sp)               |     v0 = *(var_44h);
    0x00070e28 lw v1, 0x44(v0)               |     v1 = *((v0 + 17));
    0x00070e2c addiu v0, zero, 0xc8          |     v0 = 0xc8;
    0x00070e30 lw v0, 0x44(sp)               |     v0 = *(var_44h);
                                             |     if (v1 != v0) {
    0x00070e34 bne v1, v0, 0x70cf8           |         goto label_7;
                                             |     }
    0x00070e38 lw v1, 0x44(sp)               |     v1 = *(var_44h);
    0x00070e3c lw v0, -0x7fac(gp)            |     v0 = *(gp);
    0x00070e40 lw t9, -0x7668(gp)            |     t9 = sym.imp.apr_table_get;
    0x00070e44 lw a0, 0xb4(v1)               |     a0 = *((v1 + 45));
    0x00070e48 sw v0, 0xac(sp)               |     *(var_ach) = v0;
                                             |     /* str.Content_Range */
    0x00070e4c addiu a1, v0, -0x58d0         |     a1 = v0 + -0x58d0;
    0x00070e50 jalr t9                       |     t9 ();
    0x00070e54 lw gp, 0x38(sp)               |     gp = *(var_38h);
                                             |     if (v0 != 0) {
    0x00070e58 bnez v0, 0x70cf4              |         goto label_6;
                                             |     }
    0x00070e5c lw v0, 0x44(sp)               |     v0 = *(var_44h);
    0x00070e60 lw a1, -0x7fac(gp)            |     a1 = *(gp);
    0x00070e64 lw t9, -0x7668(gp)            |     t9 = sym.imp.apr_table_get;
    0x00070e68 lw a0, 0xb4(v0)               |     a0 = *((v0 + 45));
                                             |     /* str.Content_Type */
    0x00070e6c addiu a1, a1, -0x6858         |     a1 += -0x6858;
    0x00070e70 jalr t9                       |     t9 ();
    0x00070e74 move s1, v0                   |     s1 = v0;
    0x00070e78 lw gp, 0x38(sp)               |     gp = *(var_38h);
    0x00070e7c lw t0, 0x48(sp)               |     t0 = *(var_48h);
    0x00070e80 lw t1, 0x4c(sp)               |     t1 = *(var_4ch);
    0x00070e84 lw t2, 0x50(sp)               |     t2 = *(var_50h);
                                             |     if (v0 == 0) {
    0x00070e88 beqz v0, 0x70ed8              |         goto label_57;
                                             |     }
    0x00070e8c lw a1, -0x7fac(gp)            |     a1 = *(gp);
    0x00070e90 lw t9, -0x7648(gp)            |     t9 = sym.imp.strncasecmp;
    0x00070e94 addiu a2, zero, 0x14          |     a2 = 0x14;
                                             |     /* str.multipart_byteranges */
    0x00070e98 addiu a1, a1, 0x785c          |     a1 += 0x785c;
    0x00070e9c move a0, v0                   |     a0 = v0;
    0x00070ea0 jalr t9                       |     t9 ();
    0x00070ea4 lw gp, 0x38(sp)               |     gp = *(var_38h);
                                             |     if (v0 == 0) {
    0x00070ea8 beqz v0, 0x70cf4              |         goto label_6;
                                             |     }
    0x00070eac lw a1, -0x7fac(gp)            |     a1 = *(gp);
    0x00070eb0 lw t9, -0x7648(gp)            |     t9 = sym.imp.strncasecmp;
    0x00070eb4 addiu a2, zero, 0x16          |     a2 = 0x16;
                                             |     /* str.multipart_x_byteranges */
    0x00070eb8 addiu a1, a1, 0x7874          |     a1 += 0x7874;
    0x00070ebc move a0, s1                   |     a0 = s1;
    0x00070ec0 jalr t9                       |     t9 ();
    0x00070ec4 lw gp, 0x38(sp)               |     gp = *(var_38h);
    0x00070ec8 lw t0, 0x48(sp)               |     t0 = *(var_48h);
    0x00070ecc lw t1, 0x4c(sp)               |     t1 = *(var_4ch);
    0x00070ed0 lw t2, 0x50(sp)               |     t2 = *(var_50h);
                                             |     if (v0 == 0) {
    0x00070ed4 beqz v0, 0x70cf4              |         goto label_6;
                                             |     }
                                             | label_57:
    0x00070ed8 lw v0, 0x44(sp)               |     v0 = *(var_44h);
    0x00070edc lw t9, -0x783c(gp)            |     t9 = sym.ap_condition_if_range;
    0x00070ee0 sw t2, 0x50(sp)               |     *(var_50h) = t2;
    0x00070ee4 lw a1, 0xb4(v0)               |     a1 = *((v0 + 45));
    0x00070ee8 sw t1, 0x4c(sp)               |     *(var_4ch) = t1;
    0x00070eec sw t0, 0x48(sp)               |     *(var_48h) = t0;
    0x00070ef0 move a0, v0                   |     a0 = v0;
    0x00070ef4 bal 0x68230                   |     sym_ap_condition_if_range ();
    0x00070ef8 addiu v1, zero, 1             |     v1 = 1;
    0x00070efc lw gp, 0x38(sp)               |     gp = *(var_38h);
                                             |     if (v0 == v1) {
    0x00070f00 beq v0, v1, 0x70cf4           |         goto label_6;
                                             |     }
    0x00070f04 lw v0, 0xc4(sp)               |     v0 = *(var_c4h);
    0x00070f08 lw t0, 0x48(sp)               |     t0 = *(var_48h);
    0x00070f0c addiu v0, v0, 6               |     v0 += 6;
    0x00070f10 lw t1, 0x4c(sp)               |     t1 = *(var_4ch);
    0x00070f14 lw t2, 0x50(sp)               |     t2 = *(var_50h);
    0x00070f18 addiu a3, zero, 1             |     a3 = 1;
    0x00070f1c sw v0, 0xa0(sp)               |     *(var_a0h) = v0;
    0x00070f20 sw v0, 0xc4(sp)               |     *(var_c4h) = v0;
    0x00070f24 addiu a0, zero, 0x2c          |     a0 = 0x2c;
                                             |     do {
                                             | label_8:
    0x00070f28 lb v1, (v0)                   |         v1 = *(v0);
                                             |         if (v1 == 0) {
    0x00070f2c beql v1, zero, 0x70f7c        |             goto label_58;
                                             |         }
    0x00070f30 lw v0, 0x44(sp)               |         v0 = *(var_44h);
    0x00070f34 addiu v0, v0, 1               |         v0++;
    0x00070f38 bne v1, a0, 0x70f28           |         
                                             |     } while (v1 != a0);
    0x00070f3c addiu a3, a3, 1               |     a3++;
    0x00070f40 b 0x70f28                     |     goto label_8;
                                             | label_56:
    0x00070f44 lw v0, 0x44(sp)               |     v0 = *(var_44h);
    0x00070f48 lw a1, -0x7fac(gp)            |     a1 = *(gp);
    0x00070f4c lw t9, -0x7668(gp)            |     t9 = sym.imp.apr_table_get;
    0x00070f50 lw a0, 0xb0(v0)               |     a0 = *((v0 + 44));
                                             |     /* str.Request_Range */
    0x00070f54 addiu a1, a1, 0x7844          |     a1 += 0x7844;
    0x00070f58 jalr t9                       |     t9 ();
    0x00070f5c sw v0, 0xc4(sp)               |     *(var_c4h) = v0;
    0x00070f60 lw gp, 0x38(sp)               |     gp = *(var_38h);
    0x00070f64 lw t0, 0x48(sp)               |     t0 = *(var_48h);
    0x00070f68 lw t1, 0x4c(sp)               |     t1 = *(var_4ch);
    0x00070f6c lw t2, 0x50(sp)               |     t2 = *(var_50h);
                                             |     if (v0 == 0) {
    0x00070f70 beqz v0, 0x70cf4              |         goto label_6;
                                             |     }
    0x00070f74 lw a1, -0x7fac(gp)            |     a1 = *(gp);
    0x00070f78 b 0x70df8                     |     goto label_9;
                                             | label_58:
    0x00070f7c slti a1, a3, 0x65             |     a1 = (a3 < 0x65) ? 1 : 0;
    0x00070f80 lw t9, -0x775c(gp)            |     t9 = sym.imp.apr_array_make;
    0x00070f84 lw a0, (v0)                   |     a0 = *(v0);
    0x00070f88 addiu v0, zero, 0x64          |     v0 = 0x64;
                                             |     if (a1 == 0) {
    0x00070f8c movn v0, a3, a1               |         v0 = a3;
                                             |     }
    0x00070f90 move a1, v0                   |     a1 = v0;
    0x00070f94 addiu v0, s6, -1              |     v0 = s6 + -1;
    0x00070f98 sw t0, 0x94(sp)               |     *(var_94h) = t0;
    0x00070f9c sw t1, 0x88(sp)               |     *(var_88h) = t1;
    0x00070fa0 sw t2, 0x50(sp)               |     *(var_50h) = t2;
    0x00070fa4 addiu a2, zero, 0x10          |     a2 = 0x10;
    0x00070fa8 sw v0, 0x6c(sp)               |     *(var_6ch) = v0;
    0x00070fac move s1, v0                   |     s1 = v0;
    0x00070fb0 jalr t9                       |     t9 ();
    0x00070fb4 lw v1, 0x64(sp)               |     v1 = *(var_64h);
    0x00070fb8 sltu a0, s1, s6               |     a0 = (s1 < s6) ? 1 : 0;
    0x00070fbc lw t2, 0x50(sp)               |     t2 = *(var_50h);
    0x00070fc0 addiu v1, v1, -1              |     v1 += -1;
    0x00070fc4 lw t0, 0x94(sp)               |     t0 = *(var_94h);
    0x00070fc8 lw t1, 0x88(sp)               |     t1 = *(var_88h);
    0x00070fcc sw v0, 0x80(sp)               |     *(var_80h) = v0;
    0x00070fd0 lw gp, 0x38(sp)               |     gp = *(var_38h);
    0x00070fd4 addu v0, a0, v1               |     v0 = a0 + v1;
    0x00070fd8 move s3, zero                 |     s3 = 0;
    0x00070fdc move s4, zero                 |     s4 = 0;
    0x00070fe0 sw zero, 0x68(sp)             |     *(var_68h) = 0;
    0x00070fe4 sw zero, 0x84(sp)             |     *(var_84h) = 0;
    0x00070fe8 sw zero, 0x54(sp)             |     *(var_54h) = 0;
    0x00070fec sw zero, 0x58(sp)             |     *(var_58h) = 0;
    0x00070ff0 sw zero, 0x60(sp)             |     *(var_60h) = 0;
    0x00070ff4 move s1, zero                 |     s1 = 0;
    0x00070ff8 move s2, zero                 |     s2 = 0;
    0x00070ffc sw zero, 0x48(sp)             |     *(var_48h) = 0;
    0x00071000 sw zero, 0x4c(sp)             |     *(var_4ch) = 0;
    0x00071004 addiu s5, sp, 0xc4            |     s5 = sp + 0xc4;
    0x00071008 sw v0, 0x70(sp)               |     *(var_70h) = v0;
    0x0007100c sw t0, 0x9c(sp)               |     *(var_9ch) = t0;
    0x00071010 move s7, t1                   |     s7 = t1;
    0x00071014 move fp, t2                   |     fp = t2;
    0x00071018 sw s0, 0x50(sp)               |     *(var_50h) = s0;
                                             |     do {
                                             | label_11:
    0x0007101c lw v0, 0x44(sp)               |         v0 = *(var_44h);
    0x00071020 lw t9, -0x7ee4(gp)            |         t9 = sym.ap_getword;
    0x00071024 addiu a2, zero, 0x2c          |         a2 = 0x2c;
    0x00071028 lw a0, (v0)                   |         a0 = *(v0);
    0x0007102c move a1, s5                   |         a1 = s5;
    0x00071030 jalr t9                       |         t9 ();
    0x00071034 move s0, v0                   |         s0 = v0;
    0x00071038 lw gp, 0x38(sp)               |         gp = *(var_38h);
                                             |         if (v0 == 0) {
    0x0007103c beqz v0, 0x713cc              |             goto label_59;
                                             |         }
    0x00071040 lb v0, (s0)                   |         v0 = *(s0);
    0x00071044 lw t9, -0x72b8(gp)            |         t9 = sym.imp.strchr;
                                             |         if (v0 == 0) {
    0x00071048 beqz v0, 0x713cc              |             goto label_59;
                                             |         }
    0x0007104c addiu a1, zero, 0x2d          |         a1 = 0x2d;
    0x00071050 move a0, s0                   |         a0 = s0;
    0x00071054 jalr t9                       |         t9 ();
    0x00071058 lw gp, 0x38(sp)               |         gp = *(var_38h);
                                             |         if (v0 == 0) {
    0x0007105c beqz v0, 0x71368              |             goto label_60;
                                             |         }
    0x00071060 addiu t0, v0, 1               |         t0 = v0 + 1;
                                             |         if (s0 == v0) {
    0x00071064 beq s0, v0, 0x71248           |             goto label_61;
                                             |         }
    0x00071068 lw t9, -0x7ebc(gp)            |         t9 = sym.ap_parse_strict_length;
    0x0007106c addiu a3, sp, 0xc8            |         a3 = sp + 0xc8;
    0x00071070 sw t0, 0x98(sp)               |         *(var_98h) = t0;
    0x00071074 sb zero, (v0)                 |         *(v0) = 0;
    0x00071078 sw v0, 0x94(sp)               |         *(var_94h) = v0;
    0x0007107c move a1, s0                   |         a1 = s0;
    0x00071080 move a0, a3                   |         a0 = a3;
    0x00071084 sw a3, 0x88(sp)               |         *(var_88h) = a3;
    0x00071088 jalr t9                       |         t9 ();
    0x0007108c lw gp, 0x38(sp)               |         gp = *(var_38h);
                                             |         if (v0 == 0) {
    0x00071090 beqz v0, 0x71368              |             goto label_60;
                                             |         }
    0x00071094 lw a2, 0x94(sp)               |         a2 = *(var_94h);
    0x00071098 lw v1, 0xcc(sp)               |         v1 = *(var_cch);
    0x0007109c lw a3, 0x88(sp)               |         a3 = *(var_88h);
    0x000710a0 lb v0, 1(a2)                  |         v0 = *((a2 + 1));
    0x000710a4 lw t0, 0x98(sp)               |         t0 = *(var_98h);
    0x000710a8 lw a2, 0xc8(sp)               |         a2 = *(var_c8h);
                                             |         if (v0 != 0) {
    0x000710ac bnez v0, 0x71320              |             goto label_62;
                                             |         }
    0x000710b0 or v0, a2, v1                 |         v0 = a2 | v1;
    0x000710b4 lw a3, 0x6c(sp)               |         a3 = *(var_6ch);
    0x000710b8 lw a1, 0x70(sp)               |         a1 = *(var_70h);
                                             |         if (v0 == 0) {
    0x000710bc beqz v0, 0x715b0              |             goto label_63;
                                             |         }
                                             | label_13:
    0x000710c0 lw a0, 0x64(sp)               |         a0 = *(var_64h);
                                             |         if (v1 < 0) {
    0x000710c4 bltz v1, 0x7123c              |             goto label_64;
                                             |         }
    0x000710c8 slt v0, v1, a0                |         v0 = (v1 < a0) ? 1 : 0;
    0x000710cc slt v0, a1, a0                |         v0 = (a1 < a0) ? 1 : 0;
                                             |         if (v0 != 0) {
    0x000710d0 bnez v0, 0x710f8              |             goto label_65;
                                             |         }
    0x000710d4 sltu v0, a2, s6               |         v0 = (a2 < s6) ? 1 : 0;
                                             |         if (a0 == v1) {
    0x000710d8 beq a0, v1, 0x710e8           |             goto label_66;
                                             |         }
    0x000710dc addiu v0, zero, 1             |         v0 = 1;
                                             | label_10:
    0x000710e0 sw v0, 0x84(sp)               |         *(var_84h) = v0;
    0x000710e4 b 0x7101c                     |         
                                             |     } while (1);
                                             | label_66:
    0x000710e8 addiu v0, zero, 1             |     v0 = 1;
                                             |     if (v0 == 0) {
    0x000710ec beqz v0, 0x710e0              |         goto label_10;
                                             |     }
                                             | label_12:
    0x000710f0 lw a0, 0x64(sp)               |     a0 = *(var_64h);
    0x000710f4 slt v0, a1, a0                |     v0 = (a1 < a0) ? 1 : 0;
                                             | label_65:
    0x000710f8 lw v0, 0x68(sp)               |     v0 = *(var_68h);
                                             |     if (v0 != 0) {
    0x000710fc bnez v0, 0x71118              |         goto label_67;
                                             |     }
    0x00071100 lw a3, 0x6c(sp)               |     a3 = *(var_6ch);
                                             |     if (a0 == a1) {
    0x00071104 bnel a0, a1, 0x71234          |         goto label_68;
                                             |     }
    0x00071108 sltu v0, a3, s6               |     v0 = (a3 < s6) ? 1 : 0;
                                             |     if (v0 == 0) {
    0x0007110c beql v0, zero, 0x71234        |         goto label_68;
                                             |     }
    0x00071110 lw a3, 0x6c(sp)               |     a3 = *(var_6ch);
                                             |     do {
    0x00071114 lw v0, 0x68(sp)               |         v0 = *(var_68h);
                                             | label_67:
    0x00071118 lw a0, 0x4c(sp)               |         a0 = *(var_4ch);
                                             |         if (v0 == 0) {
    0x0007111c beqz v0, 0x71390              |             goto label_69;
                                             |         }
    0x00071120 slt v0, v1, a0                |         v0 = (v1 < a0) ? 1 : 0;
    0x00071124 lw a0, 0x48(sp)               |         a0 = *(var_48h);
                                             |         if (v0 == 0) {
    0x00071128 bnel v0, zero, 0x7128c        |             goto label_70;
                                             |         }
    0x0007112c slt a0, s2, a1                |         a0 = (s2 < a1) ? 1 : 0;
                                             |         if (a0 == v1) {
    0x00071130 bne a0, v1, 0x71148           |             
    0x00071134 lw v0, 0x48(sp)               |             v0 = *(var_48h);
    0x00071138 sltu v0, a2, v0               |             v0 = (a2 < v0) ? 1 : 0;
    0x0007113c lw a0, 0x48(sp)               |             a0 = *(var_48h);
                                             |             if (v0 != 0) {
    0x00071140 bnez v0, 0x7128c              |                 goto label_70;
                                             |             }
    0x00071144 slt a0, s2, a1                |             a0 = (s2 < a1) ? 1 : 0;
                                             |         }
    0x00071148 addiu v0, zero, 1             |         v0 = 1;
                                             |         if (a0 != 0) {
    0x0007114c bnez a0, 0x71378              |             goto label_71;
                                             |         }
    0x00071150 sltu a0, s1, a3               |         a0 = (s1 < a3) ? 1 : 0;
                                             |         if (a1 == s2) {
    0x00071154 beq a1, s2, 0x71370           |             goto label_72;
                                             |         }
                                             | label_14:
    0x00071158 slt a0, a1, s2                |         a0 = (a1 < s2) ? 1 : 0;
                                             |         if (a0 == 0) {
                                             | label_15:
    0x0007115c bnez a0, 0x7118c              |             
    0x00071160 nop                           |             
    0x00071164 addiu a0, s1, 1               |             a0 = s1 + 1;
                                             |             if (s2 == a1) {
    0x00071168 bne s2, a1, 0x71178           |                 
    0x0007116c sltu a0, a3, s1               |                 a0 = (a3 < s1) ? 1 : 0;
    0x00071170 addiu a0, s1, 1               |                 a0 = s1 + 1;
                                             |                 if (a0 != 0) {
    0x00071174 bnez a0, 0x7118c              |                     goto label_16;
                                             |                 }
                                             |             }
    0x00071178 sltu t0, a0, s1               |             t0 = (a0 < s1) ? 1 : 0;
    0x0007117c addu t0, t0, s2               |             t0 += s2;
    0x00071180 slt t1, t0, v1                |             t1 = (t0 < v1) ? 1 : 0;
                                             |             if (t1 == 0) {
    0x00071184 beqz t1, 0x713ac              |                 goto label_73;
                                             |             }
    0x00071188 nop                           |             
                                             |         }
                                             | label_16:
    0x0007118c lw t9, -0x7324(gp)            |         t9 = sym.imp.apr_array_push;
                                             |         if (v0 != 0) {
    0x00071190 bnez v0, 0x71318              |             goto label_74;
                                             |         }
    0x00071194 lw a0, 0x80(sp)               |         a0 = *(var_80h);
    0x00071198 sw v1, 0xa4(sp)               |         *(var_a4h) = v1;
    0x0007119c sw a2, 0x98(sp)               |         *(var_98h) = a2;
    0x000711a0 sw a1, 0x94(sp)               |         *(var_94h) = a1;
    0x000711a4 sw a3, 0x88(sp)               |         *(var_88h) = a3;
    0x000711a8 jalr t9                       |         t9 ();
    0x000711ac lw v1, 0x48(sp)               |         v1 = *(var_48h);
    0x000711b0 lw a1, 0x4c(sp)               |         a1 = *(var_4ch);
    0x000711b4 subu a0, s1, v1               |         __asm ("subu a0, s1, v1");
    0x000711b8 lw a2, 0x58(sp)               |         a2 = *(var_58h);
    0x000711bc subu t1, s2, a1               |         __asm ("subu t1, s2, a1");
    0x000711c0 sltu t2, s1, a0               |         t2 = (s1 < a0) ? 1 : 0;
    0x000711c4 addiu t0, a0, 1               |         t0 = a0 + 1;
    0x000711c8 subu t1, t1, t2               |         __asm ("subu t1, t1, t2");
    0x000711cc sltu a0, t0, a0               |         a0 = (t0 < a0) ? 1 : 0;
    0x000711d0 addu t0, a2, t0               |         t0 = a2 + t0;
    0x000711d4 addu a0, a0, t1               |         a0 += t1;
    0x000711d8 sltu t1, t0, a2               |         t1 = (t0 < a2) ? 1 : 0;
    0x000711dc lw a2, 0x60(sp)               |         a2 = *(var_60h);
    0x000711e0 lw gp, 0x38(sp)               |         gp = *(var_38h);
    0x000711e4 addu a0, a2, a0               |         a0 = a2 + a0;
    0x000711e8 sw v1, (v0)                   |         *(v0) = v1;
    0x000711ec sw a1, 4(v0)                  |         *((v0 + 1)) = a1;
    0x000711f0 sw s1, 8(v0)                  |         *((v0 + 2)) = s1;
    0x000711f4 sw s2, 0xc(v0)                |         *((v0 + 3)) = s2;
    0x000711f8 addu v0, t1, a0               |         v0 = t1 + a0;
    0x000711fc sw v0, 0x60(sp)               |         *(var_60h) = v0;
    0x00071200 lw v0, 0x54(sp)               |         v0 = *(var_54h);
    0x00071204 lw a3, 0x88(sp)               |         a3 = *(var_88h);
    0x00071208 lw a1, 0x94(sp)               |         a1 = *(var_94h);
    0x0007120c lw a2, 0x98(sp)               |         a2 = *(var_98h);
    0x00071210 lw v1, 0xa4(sp)               |         v1 = *(var_a4h);
    0x00071214 addiu v0, v0, 1               |         v0++;
    0x00071218 sw t0, 0x58(sp)               |         *(var_58h) = t0;
    0x0007121c sw v0, 0x54(sp)               |         *(var_54h) = v0;
    0x00071220 move s1, a3                   |         s1 = a3;
    0x00071224 move s2, a1                   |         s2 = a1;
    0x00071228 sw a2, 0x48(sp)               |         *(var_48h) = a2;
    0x0007122c sw v1, 0x4c(sp)               |         *(var_4ch) = v1;
    0x00071230 b 0x7101c                     |         goto label_11;
                                             | label_68:
    0x00071234 lw a1, 0x70(sp)               |         a1 = *(var_70h);
    0x00071238 b 0x71114                     |         
                                             |     } while (1);
                                             | label_64:
    0x0007123c move a2, zero                 |     a2 = 0;
    0x00071240 move v1, zero                 |     v1 = 0;
    0x00071244 b 0x710f0                     |     goto label_12;
                                             | label_61:
    0x00071248 lw t9, -0x7ebc(gp)            |     t9 = sym.ap_parse_strict_length;
    0x0007124c move a1, t0                   |     a1 = t0;
    0x00071250 addiu a0, sp, 0xc8            |     a0 = sp + 0xc8;
    0x00071254 jalr t9                       |     t9 ();
    0x00071258 lw gp, 0x38(sp)               |     gp = *(var_38h);
                                             |     if (v0 == 0) {
    0x0007125c beqz v0, 0x71368              |         goto label_60;
                                             |     }
    0x00071260 lw v0, 0xcc(sp)               |     v0 = *(var_cch);
    0x00071264 lw a2, 0xc8(sp)               |     a2 = *(var_c8h);
                                             |     if (v0 <= 0) {
    0x00071268 blez v0, 0x72168              |         goto label_75;
                                             |     }
    0x0007126c lw a0, 0x64(sp)               |     a0 = *(var_64h);
                                             | label_47:
    0x00071270 subu a2, s6, a2               |     __asm ("subu a2, s6, a2");
    0x00071274 sltu v1, s6, a2               |     v1 = (s6 < a2) ? 1 : 0;
    0x00071278 subu v0, a0, v0               |     __asm ("subu v0, a0, v0");
    0x0007127c subu v1, v0, v1               |     __asm ("subu v1, v0, v1");
    0x00071280 lw a3, 0x6c(sp)               |     a3 = *(var_6ch);
    0x00071284 lw a1, 0x70(sp)               |     a1 = *(var_70h);
    0x00071288 b 0x710c0                     |     goto label_13;
                                             | label_70:
    0x0007128c lw t0, 0x4c(sp)               |     t0 = *(var_4ch);
    0x00071290 addiu v0, a0, -1              |     v0 = a0 + -1;
    0x00071294 addiu t0, t0, -1              |     t0 += -1;
    0x00071298 sltu a0, v0, a0               |     a0 = (v0 < a0) ? 1 : 0;
    0x0007129c addu a0, a0, t0               |     a0 += t0;
    0x000712a0 slt t0, a1, a0                |     t0 = (a1 < a0) ? 1 : 0;
    0x000712a4 move v0, zero                 |     v0 = 0;
                                             |     if (t0 == 0) {
    0x000712a8 bnel t0, zero, 0x71158        |         goto label_14;
                                             |     }
    0x000712ac slt v0, a1, s2                |     v0 = (a1 < s2) ? 1 : 0;
                                             |     if (a0 == a1) {
    0x000712b0 bnel a0, a1, 0x712c4          |         goto label_76;
                                             |     }
    0x000712b4 sltu v0, a3, v0               |     v0 = (a3 < v0) ? 1 : 0;
    0x000712b8 move v0, zero                 |     v0 = 0;
                                             |     if (v0 != 0) {
    0x000712bc bnez v0, 0x71158              |         goto label_14;
                                             |     }
    0x000712c0 slt v0, a1, s2                |     v0 = (a1 < s2) ? 1 : 0;
                                             | label_76:
    0x000712c4 addiu s3, s3, 1               |     s3++;
                                             |     if (v0 != 0) {
    0x000712c8 bnez v0, 0x71380              |         goto label_77;
                                             |     }
    0x000712cc addiu v0, s1, 1               |     v0 = s1 + 1;
                                             |     if (s2 == a1) {
    0x000712d0 bne s2, a1, 0x712e4           |         
    0x000712d4 sltu v0, a3, s1               |         v0 = (a3 < s1) ? 1 : 0;
    0x000712d8 sw a2, 0x48(sp)               |         *(var_48h) = a2;
                                             |         if (v0 == 0) {
    0x000712dc bnel v0, zero, 0x71384        |             goto label_78;
                                             |         }
    0x000712e0 addiu v0, s1, 1               |         v0 = s1 + 1;
                                             |     }
    0x000712e4 sltu a0, v0, s1               |     a0 = (v0 < s1) ? 1 : 0;
    0x000712e8 addu a0, a0, s2               |     a0 += s2;
    0x000712ec slt t0, a0, v1                |     t0 = (a0 < v1) ? 1 : 0;
    0x000712f0 sw a2, 0x48(sp)               |     *(var_48h) = a2;
                                             |     if (t0 == 0) {
    0x000712f4 bnel t0, zero, 0x71384        |         goto label_78;
                                             |     }
    0x000712f8 sltu v0, v0, a2               |     v0 = (v0 < a2) ? 1 : 0;
                                             |     if (v1 == a0) {
    0x000712fc bne v1, a0, 0x71308           |         
    0x00071300 sw a2, 0x48(sp)               |         *(var_48h) = a2;
                                             |         if (v0 == 0) {
    0x00071304 bnel v0, zero, 0x71384        |             goto label_78;
                                             |         }
                                             |     }
    0x00071308 sw a2, 0x48(sp)               |     *(var_48h) = a2;
    0x0007130c sw v1, 0x4c(sp)               |     *(var_4ch) = v1;
    0x00071310 move s1, a3                   |     s1 = a3;
    0x00071314 move s2, a1                   |     s2 = a1;
                                             | label_74:
    0x00071318 addiu s4, s4, 1               |     s4++;
    0x0007131c b 0x7101c                     |     goto label_11;
                                             | label_62:
    0x00071320 lw t9, -0x7ebc(gp)            |     t9 = sym.ap_parse_strict_length;
    0x00071324 sw v1, 0x94(sp)               |     *(var_94h) = v1;
    0x00071328 sw a2, 0x88(sp)               |     *(var_88h) = a2;
    0x0007132c move a1, t0                   |     a1 = t0;
    0x00071330 move a0, a3                   |     a0 = a3;
    0x00071334 jalr t9                       |     t9 ();
    0x00071338 lw gp, 0x38(sp)               |     gp = *(var_38h);
                                             |     if (v0 == 0) {
    0x0007133c beqz v0, 0x71368              |         goto label_60;
                                             |     }
    0x00071340 lw a1, 0xcc(sp)               |     a1 = *(var_cch);
    0x00071344 lw v1, 0x94(sp)               |     v1 = *(var_94h);
    0x00071348 slt v0, a1, v1                |     v0 = (a1 < v1) ? 1 : 0;
    0x0007134c lw a3, 0xc8(sp)               |     a3 = *(var_c8h);
                                             |     if (v0 != 0) {
    0x00071350 bnez v0, 0x71368              |         goto label_60;
                                             |     }
    0x00071354 lw a2, 0x88(sp)               |     a2 = *(var_88h);
                                             |     if (v1 != a1) {
    0x00071358 bne v1, a1, 0x710c0           |         goto label_13;
                                             |     }
    0x0007135c sltu v0, a3, a2               |     v0 = (a3 < a2) ? 1 : 0;
                                             |     if (v0 == 0) {
    0x00071360 beqz v0, 0x710c0              |         goto label_13;
                                             |     }
    0x00071364 nop                           |     
                                             | label_60:
    0x00071368 lw s0, 0x50(sp)               |     s0 = *(var_50h);
    0x0007136c b 0x70cf4                     |     goto label_6;
                                             | label_72:
    0x00071370 slt a0, a1, s2                |     a0 = (a1 < s2) ? 1 : 0;
                                             |     if (a0 == 0) {
    0x00071374 beqz a0, 0x7115c              |         goto label_15;
                                             |     }
                                             | label_71:
    0x00071378 move v0, zero                 |     v0 = 0;
    0x0007137c b 0x71158                     |     goto label_14;
                                             | label_77:
    0x00071380 sw a2, 0x48(sp)               |     *(var_48h) = a2;
                                             | label_78:
    0x00071384 sw v1, 0x4c(sp)               |     *(var_4ch) = v1;
    0x00071388 addiu s4, s4, 1               |     s4++;
    0x0007138c b 0x7101c                     |     goto label_11;
                                             | label_69:
    0x00071390 addiu v0, zero, 1             |     v0 = 1;
    0x00071394 move s1, a3                   |     s1 = a3;
    0x00071398 move s2, a1                   |     s2 = a1;
    0x0007139c sw a2, 0x48(sp)               |     *(var_48h) = a2;
    0x000713a0 sw v1, 0x4c(sp)               |     *(var_4ch) = v1;
    0x000713a4 sw v0, 0x68(sp)               |     *(var_68h) = v0;
    0x000713a8 b 0x7101c                     |     goto label_11;
                                             | label_73:
    0x000713ac sltu a0, a0, a2               |     a0 = (a0 < a2) ? 1 : 0;
                                             |     if (v1 != t0) {
    0x000713b0 bne v1, t0, 0x713bc           |         goto label_79;
                                             |     }
                                             |     if (a0 != 0) {
    0x000713b4 bnez a0, 0x7118c              |         goto label_16;
                                             |     }
    0x000713b8 nop                           |     
                                             | label_79:
    0x000713bc move s1, a3                   |     s1 = a3;
    0x000713c0 move s2, a1                   |     s2 = a1;
    0x000713c4 addiu s4, s4, 1               |     s4++;
    0x000713c8 b 0x7101c                     |     goto label_11;
                                             | label_59:
    0x000713cc lw v0, 0x68(sp)               |     v0 = *(var_68h);
    0x000713d0 lw t0, 0x9c(sp)               |     t0 = *(var_9ch);
    0x000713d4 move t1, s7                   |     t1 = s7;
    0x000713d8 move t2, fp                   |     t2 = fp;
    0x000713dc lw s0, 0x50(sp)               |     s0 = *(var_50h);
                                             |     if (v0 != 0) {
    0x000713e0 bnez v0, 0x71604              |         goto label_80;
                                             |     }
    0x000713e4 lw v0, 0x54(sp)               |     v0 = *(var_54h);
    0x000713e8 sw v0, 0x84(sp)               |     *(var_84h) = v0;
                                             |     if (v0 != 0) {
    0x000713ec bnel v0, zero, 0x713fc        |         
    0x000713f0 lw v0, 0x84(sp)               |         v0 = *(var_84h);
    0x000713f4 addiu v0, zero, -1            |         v0 = -1;
                                             |         if (v0 != 0) {
    0x000713f8 bnez v0, 0x720b4              |             goto label_81;
                                             |         }
                                             |     }
                                             | label_17:
    0x000713fc lw v1, 0x60(sp)               |     v1 = *(var_60h);
    0x00071400 lw a0, 0x64(sp)               |     a0 = *(var_64h);
    0x00071404 slt v0, a0, v1                |     v0 = (a0 < v1) ? 1 : 0;
    0x00071408 lw v1, -0x7838(gp)            |     v1 = *(gp);
                                             |     if (v0 != 0) {
    0x0007140c bnel v0, zero, 0x71424        |         
    0x00071410 lw v0, 0x58(sp)               |         v0 = *(var_58h);
                                             |         if (v1 != a0) {
    0x00071414 bne v1, a0, 0x71460           |             goto label_82;
                                             |         }
    0x00071418 sltu v0, s6, v0               |         v0 = (s6 < v0) ? 1 : 0;
    0x0007141c lw v1, -0x7838(gp)            |         v1 = *(gp);
                                             |         if (v0 == 0) {
    0x00071420 beqz v0, 0x71460              |             goto label_82;
                                             |         }
                                             |     }
    0x00071424 lw v0, 0x44(sp)               |     v0 = *(var_44h);
    0x00071428 lw a2, 8(v1)                  |     a2 = *((v1 + 2));
    0x0007142c lw v0, 0x108(v0)              |     v0 = *(v0);
                                             |     if (a2 < 0) {
    0x00071430 bltz a2, 0x72088              |         goto label_83;
                                             |     }
                                             |     if (v0 == 0) {
    0x00071434 beql v0, zero, 0x71ff8        |         goto label_84;
                                             |     }
    0x00071438 lw v0, 0x44(sp)               |     v0 = *(var_44h);
    0x0007143c lw v1, (v0)                   |     v1 = *(v0);
    0x00071440 addu v1, v1, a2               |     v1 += a2;
                                             |     if (v1 == 0) {
    0x00071444 beqz v1, 0x7203c              |         goto label_40;
                                             |     }
    0x00071448 lb v1, (v1)                   |     v1 = *(v1);
                                             |     if (v1 < 0) {
    0x0007144c bltzl v1, 0x72040             |         goto label_37;
                                             |     }
    0x00071450 lw v0, 4(v0)                  |     v0 = *((v0 + 1));
    0x00071454 slti v0, v1, 8                |     v0 = (v1 < 8) ? 1 : 0;
                                             | label_36:
    0x00071458 xori v0, v0, 1                |     v0 ^= 1;
    0x0007145c b 0x72048                     |     goto label_85;
                                             | label_82:
    0x00071460 lw v0, 0x44(sp)               |     v0 = *(var_44h);
    0x00071464 lw t9, -0x775c(gp)            |     t9 = sym.imp.apr_array_make;
    0x00071468 lw a1, 0x84(sp)               |     a1 = *(var_84h);
    0x0007146c lw a0, (v0)                   |     a0 = *(v0);
    0x00071470 sw t2, 0x50(sp)               |     *(var_50h) = t2;
    0x00071474 sw t1, 0x4c(sp)               |     *(var_4ch) = t1;
    0x00071478 sw t0, 0x48(sp)               |     *(var_48h) = t0;
    0x0007147c addiu a2, zero, 4             |     a2 = 4;
    0x00071480 jalr t9                       |     t9 ();
    0x00071484 lw a0, 0x80(sp)               |     a0 = *(var_80h);
    0x00071488 lw gp, 0x38(sp)               |     gp = *(var_38h);
    0x0007148c move fp, v0                   |     fp = v0;
    0x00071490 lw v1, 8(a0)                  |     v1 = *((a0 + 2));
    0x00071494 lw s2, 0x10(a0)               |     s2 = *((a0 + 4));
    0x00071498 lw t0, 0x48(sp)               |     t0 = *(var_48h);
    0x0007149c lw t1, 0x4c(sp)               |     t1 = *(var_4ch);
    0x000714a0 lw t2, 0x50(sp)               |     t2 = *(var_50h);
                                             |     if (v1 <= 0) {
    0x000714a4 blez v1, 0x7152c              |         goto label_86;
                                             |     }
    0x000714a8 lw s1, -0x7fac(gp)            |     s1 = *(gp);
    0x000714ac move s5, zero                 |     s5 = 0;
                                             |     /* str._lld__lld */
    0x000714b0 addiu s1, s1, 0x7908          |     s1 += 0x7908;
                                             |     do {
    0x000714b4 lw t9, -0x7324(gp)            |         t9 = sym.imp.apr_array_push;
    0x000714b8 sw t2, 0x50(sp)               |         *(var_50h) = t2;
    0x000714bc sw t1, 0x4c(sp)               |         *(var_4ch) = t1;
    0x000714c0 sw t0, 0x48(sp)               |         *(var_48h) = t0;
    0x000714c4 move a0, fp                   |         a0 = fp;
    0x000714c8 jalr t9                       |         t9 ();
    0x000714cc lw gp, 0x38(sp)               |         gp = *(var_38h);
    0x000714d0 lw v1, 0x44(sp)               |         v1 = *(var_44h);
    0x000714d4 lw t4, 8(s2)                  |         t4 = *((s2 + 2));
    0x000714d8 lw t5, 0xc(s2)                |         t5 = *((s2 + 3));
    0x000714dc lw a2, (s2)                   |         a2 = *(s2);
    0x000714e0 lw a3, 4(s2)                  |         a3 = *((s2 + 1));
    0x000714e4 lw a0, (v1)                   |         a0 = *(v1);
    0x000714e8 lw t9, -0x7540(gp)            |         t9 = sym.imp.apr_psprintf;
    0x000714ec sw t4, 0x10(sp)               |         *(var_10h) = t4;
    0x000714f0 sw t5, 0x14(sp)               |         *(var_14h) = t5;
    0x000714f4 move a1, s1                   |         a1 = s1;
    0x000714f8 move s7, v0                   |         s7 = v0;
    0x000714fc jalr t9                       |         t9 ();
    0x00071500 lw v1, 0x80(sp)               |         v1 = *(var_80h);
    0x00071504 addiu s5, s5, 1               |         s5++;
    0x00071508 lw gp, 0x38(sp)               |         gp = *(var_38h);
    0x0007150c lw v1, 8(v1)                  |         v1 = *((v1 + 2));
    0x00071510 sw v0, (s7)                   |         *(s7) = v0;
    0x00071514 slt v1, s5, v1                |         v1 = (s5 < v1) ? 1 : 0;
    0x00071518 addiu s2, s2, 0x10            |         s2 += 0x10;
    0x0007151c lw t0, 0x48(sp)               |         t0 = *(var_48h);
    0x00071520 lw t1, 0x4c(sp)               |         t1 = *(var_4ch);
    0x00071524 lw t2, 0x50(sp)               |         t2 = *(var_50h);
    0x00071528 bnez v1, 0x714b4              |         
                                             |     } while (v1 != 0);
                                             | label_86:
    0x0007152c lw s1, 0x44(sp)               |     s1 = *(var_44h);
    0x00071530 lw t9, -0x75ec(gp)            |     t9 = sym.imp.apr_array_pstrcat
    0x00071534 addiu v0, zero, 0xce          |     v0 = 0xce;
    0x00071538 lw a0, (s1)                   |     a0 = *(s1);
    0x0007153c sw t2, 0x50(sp)               |     *(var_50h) = t2;
    0x00071540 sw t1, 0x4c(sp)               |     *(var_4ch) = t1;
    0x00071544 sw t0, 0x48(sp)               |     *(var_48h) = t0;
    0x00071548 addiu a2, zero, 0x2c          |     a2 = 0x2c;
    0x0007154c sw v0, 0x44(s1)               |     *((s1 + 17)) = v0;
    0x00071550 move a1, fp                   |     a1 = fp;
    0x00071554 jalr t9                       |     t9 ();
    0x00071558 lw gp, 0x38(sp)               |     gp = *(var_38h);
    0x0007155c sw v0, 0x78(s1)               |     *((s1 + 30)) = v0;
    0x00071560 lw t0, 0x48(sp)               |     t0 = *(var_48h);
    0x00071564 lw v1, -0x7838(gp)            |     v1 = *(gp);
    0x00071568 lw t1, 0x4c(sp)               |     t1 = *(var_4ch);
    0x0007156c lw a2, 8(v1)                  |     a2 = *((v1 + 2));
    0x00071570 lw t2, 0x50(sp)               |     t2 = *(var_50h);
                                             |     if (a2 < 0) {
    0x00071574 bltz a2, 0x720bc              |         goto label_87;
                                             |     }
    0x00071578 lw v1, 0x44(sp)               |     v1 = *(var_44h);
    0x0007157c lw v1, 0x108(v1)              |     v1 = *(v1);
                                             |     if (v1 == 0) {
    0x00071580 beql v1, zero, 0x71690        |         goto label_88;
                                             |     }
    0x00071584 lw v1, 0x44(sp)               |     v1 = *(var_44h);
    0x00071588 lw a0, (v1)                   |     a0 = *(v1);
                                             |     if (a0 == 0) {
    0x0007158c beql a0, zero, 0x716d8        |         goto label_42;
                                             |     }
    0x00071590 lw v1, 4(v1)                  |     v1 = *((v1 + 1));
    0x00071594 addu a0, a0, a2               |     a0 += a2;
    0x00071598 lb a0, (a0)                   |     a0 = *(a0);
                                             |     if (a0 < 0) {
    0x0007159c bltzl a0, 0x716d8             |         goto label_42;
                                             |     }
    0x000715a0 lw v1, 4(v1)                  |     v1 = *((v1 + 1));
    0x000715a4 slti v1, a0, 7                |     v1 = (a0 < 7) ? 1 : 0;
                                             |     do {
    0x000715a8 xori v1, v1, 1                |         v1 ^= 1;
    0x000715ac b 0x716e0                     |         goto label_89;
                                             | label_63:
    0x000715b0 lw t0, 0x9c(sp)               |         t0 = *(var_9ch);
    0x000715b4 lw t9, -0x76c8(gp)            |         t9 = sym.imp.apr_array_clear;
    0x000715b8 lw a0, 0x80(sp)               |         a0 = *(var_80h);
    0x000715bc sw t0, 0x88(sp)               |         *(var_88h) = t0;
    0x000715c0 sw s7, 0x84(sp)               |         *(var_84h) = s7;
    0x000715c4 sw fp, 0x68(sp)               |         *(var_68h) = fp;
    0x000715c8 sw a2, 0x58(sp)               |         *(var_58h) = a2;
    0x000715cc sw v1, 0x60(sp)               |         *(var_60h) = v1;
    0x000715d0 move s5, a2                   |         s5 = a2;
    0x000715d4 move s7, v1                   |         s7 = v1;
    0x000715d8 lw s0, 0x50(sp)               |         s0 = *(var_50h);
    0x000715dc jalr t9                       |         t9 ();
    0x000715e0 lw gp, 0x38(sp)               |         gp = *(var_38h);
    0x000715e4 lw s1, 0x6c(sp)               |         s1 = *(var_6ch);
    0x000715e8 lw s2, 0x70(sp)               |         s2 = *(var_70h);
    0x000715ec lw t2, 0x68(sp)               |         t2 = *(var_68h);
    0x000715f0 lw t1, 0x84(sp)               |         t1 = *(var_84h);
    0x000715f4 lw t0, 0x88(sp)               |         t0 = *(var_88h);
    0x000715f8 sw zero, 0x54(sp)             |         *(var_54h) = 0;
    0x000715fc sw s5, 0x48(sp)               |         *(var_48h) = s5;
    0x00071600 sw s7, 0x4c(sp)               |         *(var_4ch) = s7;
                                             | label_80:
    0x00071604 lw t9, -0x7324(gp)            |         t9 = sym.imp.apr_array_push;
    0x00071608 lw a0, 0x80(sp)               |         a0 = *(var_80h);
    0x0007160c sw t2, 0x6c(sp)               |         *(var_6ch) = t2;
    0x00071610 sw t1, 0x68(sp)               |         *(var_68h) = t1;
    0x00071614 sw t0, 0x50(sp)               |         *(var_50h) = t0;
    0x00071618 jalr t9                       |         t9 ();
    0x0007161c lw a3, 0x48(sp)               |         a3 = *(var_48h);
    0x00071620 lw t0, 0x4c(sp)               |         t0 = *(var_4ch);
    0x00071624 subu v1, s1, a3               |         __asm ("subu v1, s1, a3");
    0x00071628 sltu a2, s1, v1               |         a2 = (s1 < v1) ? 1 : 0;
    0x0007162c subu a1, s2, t0               |         __asm ("subu a1, s2, t0");
    0x00071630 subu a1, a1, a2               |         __asm ("subu a1, a1, a2");
    0x00071634 lw a2, 0x58(sp)               |         a2 = *(var_58h);
    0x00071638 addiu a0, v1, 1               |         a0 = v1 + 1;
    0x0007163c sltu v1, a0, v1               |         v1 = (a0 < v1) ? 1 : 0;
    0x00071640 addu a0, a2, a0               |         a0 = a2 + a0;
    0x00071644 addu v1, v1, a1               |         v1 += a1;
    0x00071648 sltu a1, a0, a2               |         a1 = (a0 < a2) ? 1 : 0;
    0x0007164c lw a2, 0x60(sp)               |         a2 = *(var_60h);
    0x00071650 lw gp, 0x38(sp)               |         gp = *(var_38h);
    0x00071654 addu v1, a2, v1               |         v1 = a2 + v1;
    0x00071658 sw t0, 4(v0)                  |         *((v0 + 1)) = t0;
    0x0007165c sw a3, (v0)                   |         *(v0) = a3;
    0x00071660 sw s1, 8(v0)                  |         *((v0 + 2)) = s1;
    0x00071664 sw s2, 0xc(v0)                |         *((v0 + 3)) = s2;
    0x00071668 addu v0, a1, v1               |         v0 = a1 + v1;
    0x0007166c sw v0, 0x60(sp)               |         *(var_60h) = v0;
    0x00071670 lw v0, 0x54(sp)               |         v0 = *(var_54h);
    0x00071674 sw a0, 0x58(sp)               |         *(var_58h) = a0;
    0x00071678 addiu v0, v0, 1               |         v0++;
    0x0007167c sw v0, 0x84(sp)               |         *(var_84h) = v0;
    0x00071680 lw t0, 0x50(sp)               |         t0 = *(var_50h);
    0x00071684 lw t1, 0x68(sp)               |         t1 = *(var_68h);
    0x00071688 lw t2, 0x6c(sp)               |         t2 = *(var_6ch);
    0x0007168c b 0x713fc                     |         goto label_17;
                                             | label_88:
    0x00071690 lw a1, 4(v1)                  |         a1 = *((v1 + 1));
    0x00071694 lw v1, 0x60(a1)               |         v1 = *((a1 + 24));
                                             |         if (v1 == 0) {
    0x00071698 beql v1, zero, 0x720d8        |             goto label_90;
                                             |         }
    0x0007169c lw v1, 0x44(sp)               |         v1 = *(var_44h);
    0x000716a0 lw a0, (v1)                   |         a0 = *(v1);
                                             |         if (a0 == 0) {
    0x000716a4 beql a0, zero, 0x716d8        |             goto label_42;
                                             |         }
    0x000716a8 lw v1, 4(v1)                  |         v1 = *((v1 + 1));
    0x000716ac addu a0, a0, a2               |         a0 += a2;
                                             | label_44:
    0x000716b0 lb a0, (a0)                   |         a0 = *(a0);
    0x000716b4 slti v1, a0, 7                |         v1 = (a0 < 7) ? 1 : 0;
    0x000716b8 bgez a0, 0x715a8              |         
                                             |     } while (a0 >= 0);
                                             | label_43:
    0x000716bc lw v1, 0x60(a1)               |     v1 = *((a1 + 24));
    0x000716c0 lw v1, 4(v1)                  |     v1 = *((v1 + 1));
                                             |     if (v1 != 0) {
    0x000716c4 bnel v1, zero, 0x716d8        |         
    0x000716c8 lw v1, 0x44(sp)               |         v1 = *(var_44h);
    0x000716cc lw v1, 8(v1)                  |         v1 = *((v1 + 2));
    0x000716d0 addiu v1, v1, 0x10            |         v1 += 0x10;
                                             | label_45:
    0x000716d4 lw v1, 4(v1)                  |         v1 = *((v1 + 1));
                                             |     }
                                             | label_42:
    0x000716d8 slti v1, v1, 7                |     v1 = (v1 < 7) ? 1 : 0;
    0x000716dc xori v1, v1, 1                |     v1 ^= 1;
                                             | label_89:
    0x000716e0 sw v0, 0x20(sp)               |     *(var_20h) = v0;
                                             |     if (v1 == 0) {
    0x000716e4 bnel v1, zero, 0x720f0        |         goto label_91;
                                             |     }
                                             | label_46:
    0x000716e8 lw v0, 0x84(sp)               |     v0 = *(var_84h);
    0x000716ec lw v0, 0x44(sp)               |     v0 = *(var_44h);
                                             |     if (v0 == 0) {
    0x000716f0 beqz v0, 0x70cf8              |         goto label_7;
                                             |     }
                                             | label_41:
    0x000716f4 lw v0, 0x84(sp)               |     v0 = *(var_84h);
                                             |     if (t0 < 0) {
    0x000716f8 bltz t0, 0x71708              |         goto label_92;
                                             |     }
    0x000716fc slt t0, t0, v0                |     t0 = (t0 < v0) ? 1 : 0;
    0x00071700 lw v0, 0x44(sp)               |     v0 = *(var_44h);
                                             |     if (t0 != 0) {
    0x00071704 bnez t0, 0x70cf8              |         goto label_7;
                                             |     }
                                             | label_92:
    0x00071708 sltu t1, t1, s4               |     t1 = (t1 < s4) ? 1 : 0;
    0x0007170c sltu t2, t2, s3               |     t2 = (t2 < s3) ? 1 : 0;
                                             |     if (t1 != 0) {
    0x00071710 bnez t1, 0x70cf4              |         goto label_6;
                                             |     }
    0x00071714 lw t9, -0x7344(gp)            |     t9 = sym.imp.apr_brigade_create;
                                             |     if (t2 != 0) {
    0x00071718 bnez t2, 0x70cf4              |         goto label_6;
                                             |     }
    0x0007171c lw v0, 0x90(sp)               |     v0 = *(var_90h);
    0x00071720 lw a1, 0x40(v0)               |     a1 = *((v0 + 16));
    0x00071724 lw v0, 0x44(sp)               |     v0 = *(var_44h);
    0x00071728 lw a0, (v0)                   |     a0 = *(v0);
    0x0007172c jalr t9                       |     t9 ();
    0x00071730 sw v0, 0x6c(sp)               |     *(var_6ch) = v0;
    0x00071734 lw v0, 0x84(sp)               |     v0 = *(var_84h);
    0x00071738 addiu v1, zero, -1            |     v1 = -1;
    0x0007173c lw gp, 0x38(sp)               |     gp = *(var_38h);
                                             |     if (v0 == v1) {
    0x00071740 beq v0, v1, 0x71fa8           |         goto label_93;
                                             |     }
    0x00071744 lw v0, 0x84(sp)               |     v0 = *(var_84h);
    0x00071748 slti v0, v0, 2                |     v0 = (v0 < 2) ? 1 : 0;
    0x0007174c sw v0, 0xbc(sp)               |     *(var_bch) = v0;
                                             |     if (v0 == 0) {
    0x00071750 beqz v0, 0x71e84              |         goto label_94;
                                             |     }
    0x00071754 sw zero, 0x98(sp)             |     *(var_98h) = 0;
                                             | label_33:
    0x00071758 lw v0, 0x90(sp)               |     v0 = *(var_90h);
    0x0007175c lw t9, -0x7344(gp)            |     t9 = sym.imp.apr_brigade_create;
    0x00071760 sw zero, 0x50(sp)             |     *(var_50h) = 0;
    0x00071764 lw a1, 0x40(v0)               |     a1 = *((v0 + 16));
    0x00071768 lw v0, 0x44(sp)               |     v0 = *(var_44h);
    0x0007176c lw a0, (v0)                   |     a0 = *(v0);
    0x00071770 jalr t9                       |     t9 ();
    0x00071774 lw a0, 0x80(sp)               |     a0 = *(var_80h);
    0x00071778 move s5, v0                   |     s5 = v0;
    0x0007177c lw gp, 0x38(sp)               |     gp = *(var_38h);
    0x00071780 lw v0, 0x10(a0)               |     v0 = *((a0 + 4));
    0x00071784 lw v1, 8(a0)                  |     v1 = *((a0 + 2));
    0x00071788 sw v0, 0x4c(sp)               |     *(var_4ch) = v0;
                                             |     if (v1 <= 0) {
    0x0007178c blez v1, 0x71fa8              |         goto label_93;
                                             |     }
    0x00071790 lw v0, -0x7fac(gp)            |     v0 = *(gp);
    0x00071794 sw s6, 0x88(sp)               |     *(var_88h) = s6;
                                             |     /* str.AH01584:_copy_brigade_range___failed___lld__lld__lld_ */
    0x00071798 addiu v0, v0, 0x79a0          |     v0 += 0x79a0;
    0x0007179c sw v0, 0xb0(sp)               |     *(var_b0h) = v0;
    0x000717a0 lw v0, -0x7fac(gp)            |     v0 = *(gp);
                                             |     /* str._usr_src_debug_apache2_2.4.57_r0_httpd_2.4.57_modules_http_byterange_filter.c */
    0x000717a4 addiu v0, v0, 0x788c          |     v0 += 0x788c;
    0x000717a8 sw v0, 0xb4(sp)               |     *(var_b4h) = v0;
    0x000717ac lw v0, -0x7fac(gp)            |     v0 = *(gp);
    0x000717b0 sw v0, 0xb8(sp)               |     *(var_b8h) = v0;
    0x000717b4 lw v0, -0x7fac(gp)            |     v0 = *(gp);
                                             |     /* str._lld__lld__lld_r_n_r_n */
    0x000717b8 addiu v0, v0, 0x79f0          |     v0 += aav.0x000079f0;
    0x000717bc sw v0, 0x9c(sp)               |     *(var_9ch) = v0;
    0x000717c0 lw v0, -0x7fac(gp)            |     v0 = *(gp);
    0x000717c4 sw v0, 0xa8(sp)               |     *(var_a8h) = v0;
                                             | label_22:
    0x000717c8 lw v0, 0x4c(sp)               |     v0 = *(var_4ch);
    0x000717cc lw a0, (v0)                   |     a0 = *(v0);
    0x000717d0 lw v1, 4(v0)                  |     v1 = *((v0 + 1));
    0x000717d4 sw a0, 0x54(sp)               |     *(var_54h) = a0;
    0x000717d8 lw a0, 8(v0)                  |     a0 = *((v0 + 2));
    0x000717dc sw v1, 0x48(sp)               |     *(var_48h) = v1;
    0x000717e0 sw a0, 0x58(sp)               |     *(var_58h) = a0;
    0x000717e4 lw s0, 0xc(v0)                |     s0 = *((v0 + 3));
                                             |     if (v1 < 0) {
    0x000717e8 bltz v1, 0x71b9c              |         goto label_95;
                                             |     }
    0x000717ec sltu v0, s0, v1               |     v0 = (s0 < v1) ? 1 : 0;
                                             |     if (s0 < 0) {
    0x000717f0 bltz s0, 0x71b9c              |         goto label_95;
                                             |     }
    0x000717f4 addiu a1, zero, 0x16          |     a1 = 0x16;
                                             |     if (v0 != 0) {
    0x000717f8 bnez v0, 0x71ba0              |         goto label_28;
                                             |     }
    0x000717fc lw v0, 0x54(sp)               |     v0 = *(var_54h);
                                             |     if (v1 == s0) {
    0x00071800 beq v1, s0, 0x71b90           |         goto label_96;
                                             |     }
    0x00071804 lw v0, 0x5c(sp)               |     v0 = *(var_5ch);
                                             | label_21:
    0x00071808 lw a1, 0x7c(sp)               |     a1 = *(var_7ch);
    0x0007180c lw s6, 4(v0)                  |     s6 = *((v0 + 1));
    0x00071810 move s3, zero                 |     s3 = 0;
                                             |     if (a1 == s6) {
    0x00071814 beq a1, s6, 0x71b9c           |         goto label_95;
                                             |     }
    0x00071818 sw zero, 0x68(sp)             |     *(var_68h) = 0;
    0x0007181c sw zero, 0x60(sp)             |     *(var_60h) = 0;
    0x00071820 move s2, zero                 |     s2 = 0;
    0x00071824 move s1, zero                 |     s1 = 0;
    0x00071828 lw a2, 0x48(sp)               |     a2 = *(var_48h);
    0x0007182c b 0x71854                     |     
                                             |     while (s1 != 0) {
    0x00071830 sltu a0, s0, v0               |         a0 = (s0 < v0) ? 1 : 0;
                                             |         if (a0 != 0) {
                                             | label_18:
    0x00071834 bnez a0, 0x7189c              |             goto label_27;
                                             |         }
    0x00071838 nop                           |         
                                             | label_19:
    0x0007183c lw a0, 0x58(sp)               |         a0 = *(var_58h);
                                             |         if (v0 == s0) {
    0x00071840 beq v0, s0, 0x71d48           |             goto label_97;
                                             |         }
                                             | label_26:
    0x00071844 lw s6, (s6)                   |         s6 = *(s6);
    0x00071848 move s3, v1                   |         s3 = v1;
    0x0007184c move s2, v0                   |         s2 = v0;
                                             |         if (a1 == s6) {
    0x00071850 beq a1, s6, 0x71b9c           |             goto label_95;
                                             |         }
    0x00071854 lw v0, 0xc(s6)                |         v0 = *((s6 + 3));
    0x00071858 addu v1, v0, s3               |         v1 = v0 + s3;
    0x0007185c sltu v0, v1, v0               |         v0 = (v1 < v0) ? 1 : 0;
    0x00071860 addu v0, v0, s2               |         v0 += s2;
    0x00071864 bnez s1, 0x71830              |         
                                             |     }
    0x00071868 sltu a0, a2, v0               |     a0 = (a2 < v0) ? 1 : 0;
    0x0007186c sltu a0, s0, v0               |     a0 = (s0 < v0) ? 1 : 0;
                                             |     if (a0 != 0) {
    0x00071870 bnez a0, 0x7188c              |         goto label_98;
                                             |     }
                                             |     if (v0 != a2) {
    0x00071874 bne v0, a2, 0x71834           |         goto label_18;
                                             |     }
    0x00071878 nop                           |     
    0x0007187c lw a0, 0x54(sp)               |     a0 = *(var_54h);
    0x00071880 sltu a0, a0, v1               |     a0 = (a0 < v1) ? 1 : 0;
    0x00071884 sltu a0, s0, v0               |     a0 = (s0 < v0) ? 1 : 0;
                                             |     if (a0 == 0) {
    0x00071888 beqz a0, 0x71834              |         goto label_18;
                                             |     }
                                             | label_98:
    0x0007188c sw s3, 0x68(sp)               |     *(var_68h) = s3;
    0x00071890 sw s2, 0x60(sp)               |     *(var_60h) = s2;
    0x00071894 move s1, s6                   |     s1 = s6;
                                             |     if (a0 == 0) {
    0x00071898 beqz a0, 0x7183c              |         goto label_19;
                                             |     }
                                             | label_27:
    0x0007189c lw v0, 0x54(sp)               |     v0 = *(var_54h);
                                             |     if (s1 == 0) {
    0x000718a0 beqz s1, 0x71b9c              |         goto label_95;
                                             |     }
    0x000718a4 lw v1, 0x68(sp)               |     v1 = *(var_68h);
    0x000718a8 move a1, zero                 |     a1 = 0;
    0x000718ac subu a0, v0, v1               |     __asm ("subu a0, v0, v1");
    0x000718b0 addiu s4, s5, 4               |     s4 = s5 + 4;
    0x000718b4 sw s0, 0x94(sp)               |     *(var_94h) = s0;
    0x000718b8 sw s3, 0xa0(sp)               |     *(var_a0h) = s3;
    0x000718bc sw s2, 0xa4(sp)               |     *(var_a4h) = s2;
    0x000718c0 move s3, s5                   |     s3 = s5;
    0x000718c4 addiu fp, sp, 0xc8            |     fp = sp + 0xc8;
    0x000718c8 sw a0, 0x70(sp)               |     *(var_70h) = a0;
    0x000718cc move s0, v0                   |     s0 = v0;
    0x000718d0 move s5, s1                   |     s5 = s1;
    0x000718d4 move s7, v1                   |     s7 = v1;
    0x000718d8 move s2, a1                   |     s2 = a1;
    0x000718dc b 0x718ec                     |     
                                             |     while (s5 != s1) {
                                             |         if (s5 == s6) {
                                             | label_25:
    0x000718e0 beql s5, s6, 0x7199c          |             goto label_99;
                                             |         }
    0x000718e4 move s5, s3                   |         s5 = s3;
                                             | label_20:
    0x000718e8 lw s5, (s5)                   |         s5 = *(s5);
    0x000718ec lw v0, 8(s5)                  |         v0 = *((s5 + 2));
    0x000718f0 move a1, fp                   |         a1 = fp;
    0x000718f4 lw t9, 0x1c(v0)               |         t9 = *((v0 + 7));
    0x000718f8 move a0, s5                   |         a0 = s5;
    0x000718fc jalr t9                       |         t9 ();
    0x00071900 lw gp, 0x38(sp)               |         gp = *(var_38h);
                                             |         if (v0 != 0) {
    0x00071904 bnez v0, 0x71d5c              |             goto label_100;
                                             |         }
    0x00071908 lw a0, 0xc8(sp)               |         a0 = *(var_c8h);
    0x0007190c sw s4, (a0)                   |         *(a0) = s4;
    0x00071910 lw v0, 8(s3)                  |         v0 = *((s3 + 2));
    0x00071914 sw v0, 4(a0)                  |         *((a0 + 1)) = v0;
    0x00071918 lw v0, 8(s3)                  |         v0 = *((s3 + 2));
    0x0007191c sw a0, (v0)                   |         *(v0) = a0;
    0x00071920 sw a0, 8(s3)                  |         *((s3 + 2)) = a0;
    0x00071924 bne s5, s1, 0x718e0           |         
                                             |     }
    0x00071928 nop                           |     
    0x0007192c lw v0, 0x48(sp)               |     v0 = *(var_48h);
                                             |     if (s0 == s7) {
    0x00071930 beq s0, s7, 0x71d34           |         goto label_101;
                                             |     }
    0x00071934 lw v0, 8(a0)                  |     v0 = *((a0 + 2));
                                             | label_24:
    0x00071938 lw t9, 0x18(v0)               |     t9 = *((v0 + 6));
    0x0007193c lw a1, 0x70(sp)               |     a1 = *(var_70h);
    0x00071940 jalr t9                       |     t9 ();
    0x00071944 lw gp, 0x38(sp)               |     gp = *(var_38h);
                                             |     if (v0 != 0) {
    0x00071948 bnez v0, 0x71d5c              |         goto label_100;
                                             |     }
    0x0007194c lw v0, 0xc8(sp)               |     v0 = *(var_c8h);
    0x00071950 lw s2, (v0)                   |     s2 = *(v0);
    0x00071954 lw a0, 4(v0)                  |     a0 = *((v0 + 1));
    0x00071958 lw a1, (v0)                   |     a1 = *(v0);
    0x0007195c lw t0, 8(v0)                  |     t0 = *((v0 + 2));
    0x00071960 sw a1, (a0)                   |     *(a0) = a1;
    0x00071964 lw a1, (v0)                   |     a1 = *(v0);
    0x00071968 lw a3, 4(v0)                  |     a3 = *((v0 + 1));
    0x0007196c lw a0, 0x18(v0)               |     a0 = *((v0 + 6));
    0x00071970 lw t9, 0xc(t0)                |     t9 = *((t0 + 3));
    0x00071974 sw a3, 4(a1)                  |     *((a1 + 1)) = a3;
    0x00071978 jalr t9                       |     t9 ();
    0x0007197c nop                           |     
    0x00071980 lw v0, 0xc8(sp)               |     v0 = *(var_c8h);
    0x00071984 lw t9, 0x1c(v0)               |     t9 = *((v0 + 7));
    0x00071988 move a0, v0                   |     a0 = v0;
    0x0007198c jalr t9                       |     t9 ();
    0x00071990 lw gp, 0x38(sp)               |     gp = *(var_38h);
                                             |     if (s5 != s6) {
    0x00071994 bne s5, s6, 0x718e8           |         goto label_20;
                                             |     }
    0x00071998 move s5, s3                   |     s5 = s3;
                                             | label_99:
    0x0007199c move a1, s2                   |     a1 = s2;
    0x000719a0 lw s0, 0x94(sp)               |     s0 = *(var_94h);
    0x000719a4 lw s3, 0xa0(sp)               |     s3 = *(var_a0h);
    0x000719a8 lw s2, 0xa4(sp)               |     s2 = *(var_a4h);
                                             |     if (s1 == s6) {
    0x000719ac beq s1, s6, 0x71e4c           |         goto label_102;
                                             |     }
                                             | label_32:
    0x000719b0 lw a0, 0x58(sp)               |     a0 = *(var_58h);
    0x000719b4 lw v1, 0xc(s6)                |     v1 = *((s6 + 3));
    0x000719b8 subu v0, a0, s3               |     __asm ("subu v0, a0, s3");
    0x000719bc sltu a0, a0, v0               |     a0 = (a0 < v0) ? 1 : 0;
    0x000719c0 subu s2, s0, s2               |     __asm ("subu s2, s0, s2");
    0x000719c4 subu s2, s2, a0               |     __asm ("subu s2, s2, a0");
                                             |     if (v0 == v1) {
    0x000719c8 beq v0, v1, 0x71e3c           |         goto label_103;
                                             |     }
    0x000719cc lw a0, 0xc8(sp)               |     a0 = *(var_c8h);
                                             | label_30:
    0x000719d0 lw v0, 0x58(sp)               |     v0 = *(var_58h);
    0x000719d4 addiu a1, v0, 1               |     a1 = v0 + 1;
    0x000719d8 lw v0, 8(a0)                  |     v0 = *((a0 + 2));
    0x000719dc lw t9, 0x18(v0)               |     t9 = *((v0 + 6));
    0x000719e0 subu a1, a1, s3               |     __asm ("subu a1, a1, s3");
    0x000719e4 jalr t9                       |     t9 ();
    0x000719e8 lw gp, 0x38(sp)               |     gp = *(var_38h);
                                             |     if (v0 != 0) {
    0x000719ec bnez v0, 0x71fa0              |         goto label_104;
                                             |     }
    0x000719f0 lw v0, 0xc8(sp)               |     v0 = *(var_c8h);
    0x000719f4 lw v0, (v0)                   |     v0 = *(v0);
    0x000719f8 sw v0, 0xc8(sp)               |     *(var_c8h) = v0;
                                             |     if (s4 != v0) {
    0x000719fc beq s4, v0, 0x71a40           |         
    0x00071a00 lw v1, 4(v0)                  |         v1 = *((v0 + 1));
    0x00071a04 lw a0, (v0)                   |         a0 = *(v0);
    0x00071a08 lw a2, 8(v0)                  |         a2 = *((v0 + 2));
    0x00071a0c sw a0, (v1)                   |         *(v1) = a0;
    0x00071a10 lw v1, (v0)                   |         v1 = *(v0);
    0x00071a14 lw a1, 4(v0)                  |         a1 = *((v0 + 1));
    0x00071a18 lw a0, 0x18(v0)               |         a0 = *((v0 + 6));
    0x00071a1c lw t9, 0xc(a2)                |         t9 = *((a2 + 3));
    0x00071a20 sw a1, 4(v1)                  |         *((v1 + 1)) = a1;
    0x00071a24 jalr t9                       |         t9 ();
    0x00071a28 nop                           |         
    0x00071a2c lw v0, 0xc8(sp)               |         v0 = *(var_c8h);
    0x00071a30 lw t9, 0x1c(v0)               |         t9 = *((v0 + 7));
    0x00071a34 move a0, v0                   |         a0 = v0;
    0x00071a38 jalr t9                       |         t9 ();
    0x00071a3c lw gp, 0x38(sp)               |         gp = *(var_38h);
                                             |     }
    0x00071a40 lw v1, 0x44(sp)               |     v1 = *(var_44h);
                                             | label_31:
    0x00071a44 addiu v0, zero, 1             |     v0 = 1;
    0x00071a48 lw s1, (v1)                   |     s1 = *(v1);
    0x00071a4c lw v1, 0x84(sp)               |     v1 = *(var_84h);
    0x00071a50 lw s2, 0x98(sp)               |     s2 = *(var_98h);
                                             |     if (v1 == v0) {
    0x00071a54 beq v1, v0, 0x71dd8           |         goto label_105;
                                             |     }
    0x00071a58 lw t9, -0x74c4(gp)            |     t9 = sym.imp.strlen;
    0x00071a5c move a0, s2                   |     a0 = s2;
    0x00071a60 jalr t9                       |     t9 ();
    0x00071a64 lw gp, 0x38(sp)               |     gp = *(var_38h);
    0x00071a68 lw s3, 0x90(sp)               |     s3 = *(var_90h);
    0x00071a6c move a2, s1                   |     a2 = s1;
    0x00071a70 lw t9, -0x7548(gp)            |     t9 = sym.imp.apr_bucket_pool_create;
    0x00071a74 lw a3, 0x40(s3)               |     a3 = *((s3 + 16));
    0x00071a78 move a0, s2                   |     a0 = s2;
    0x00071a7c move a1, v0                   |     a1 = v0;
    0x00071a80 jalr t9                       |     t9 ();
    0x00071a84 lw s2, 0x6c(sp)               |     s2 = *(var_6ch);
    0x00071a88 lw gp, 0x38(sp)               |     gp = *(var_38h);
    0x00071a8c addiu s1, s2, 4               |     s1 = s2 + 4;
    0x00071a90 sw s1, (v0)                   |     *(v0) = s1;
    0x00071a94 lw s6, 0x44(sp)               |     s6 = *(var_44h);
    0x00071a98 lw v1, 8(s2)                  |     v1 = *((s2 + 2));
    0x00071a9c lw a2, 0x54(sp)               |     a2 = *(var_54h);
    0x00071aa0 lw a0, (s6)                   |     a0 = *(s6);
    0x00071aa4 sw v1, 4(v0)                  |     *((v0 + 1)) = v1;
    0x00071aa8 lw v1, 8(s2)                  |     v1 = *((s2 + 2));
    0x00071aac lw t9, -0x7540(gp)            |     t9 = sym.imp.apr_psprintf;
    0x00071ab0 lw a3, 0x48(sp)               |     a3 = *(var_48h);
    0x00071ab4 sw v0, (v1)                   |     *(v1) = v0;
    0x00071ab8 sw v0, 8(s2)                  |     *((s2 + 2)) = v0;
    0x00071abc lw v0, 0x88(sp)               |     v0 = *(var_88h);
    0x00071ac0 lw a1, 0x9c(sp)               |     a1 = *(var_9ch);
    0x00071ac4 sw v0, 0x18(sp)               |     *(var_18h) = v0;
    0x00071ac8 lw v0, 0x64(sp)               |     v0 = *(var_64h);
    0x00071acc sw s0, 0x14(sp)               |     *(var_14h) = s0;
    0x00071ad0 sw v0, 0x1c(sp)               |     *(var_1ch) = v0;
    0x00071ad4 lw v0, 0x58(sp)               |     v0 = *(var_58h);
    0x00071ad8 sw v0, 0x10(sp)               |     *(var_10h) = v0;
    0x00071adc jalr t9                       |     t9 ();
    0x00071ae0 lw gp, 0x38(sp)               |     gp = *(var_38h);
    0x00071ae4 move a0, v0                   |     a0 = v0;
    0x00071ae8 lw t9, -0x74c4(gp)            |     t9 = sym.imp.strlen;
    0x00071aec move s0, v0                   |     s0 = v0;
    0x00071af0 jalr t9                       |     t9 ();
    0x00071af4 lw gp, 0x38(sp)               |     gp = *(var_38h);
    0x00071af8 lw a3, 0x40(s3)               |     a3 = *((s3 + 16));
    0x00071afc lw a2, (s6)                   |     a2 = *(s6);
    0x00071b00 lw t9, -0x7548(gp)            |     t9 = sym.imp.apr_bucket_pool_create;
    0x00071b04 move a1, v0                   |     a1 = v0;
    0x00071b08 move a0, s0                   |     a0 = s0;
    0x00071b0c jalr t9                       |     t9 ();
    0x00071b10 lw gp, 0x38(sp)               |     gp = *(var_38h);
    0x00071b14 sw s1, (v0)                   |     *(v0) = s1;
    0x00071b18 lw v1, 8(s2)                  |     v1 = *((s2 + 2));
    0x00071b1c sw v1, 4(v0)                  |     *((v0 + 1)) = v1;
    0x00071b20 lw v1, 8(s2)                  |     v1 = *((s2 + 2));
    0x00071b24 sw v0, (v1)                   |     *(v1) = v0;
    0x00071b28 sw v0, 8(s2)                  |     *((s2 + 2)) = v0;
                                             | label_29:
    0x00071b2c lw v0, 4(s5)                  |     v0 = *((s5 + 1));
    0x00071b30 lw v0, 0x50(sp)               |     v0 = *(var_50h);
                                             |     if (v0 != s4) {
    0x00071b34 beq v0, s4, 0x71b74           |         
    0x00071b38 lw v0, 8(s5)                  |         v0 = *((s5 + 2));
    0x00071b3c lw a0, 0x6c(sp)               |         a0 = *(var_6ch);
    0x00071b40 addiu v1, a0, 4               |         v1 = a0 + 4;
    0x00071b44 sw v1, (v0)                   |         *(v0) = v1;
    0x00071b48 lw v0, 4(s5)                  |         v0 = *((s5 + 1));
    0x00071b4c lw v1, 8(a0)                  |         v1 = *((a0 + 2));
    0x00071b50 sw v1, 4(v0)                  |         *((v0 + 1)) = v1;
    0x00071b54 lw v0, 8(a0)                  |         v0 = *((a0 + 2));
    0x00071b58 lw v1, 4(s5)                  |         v1 = *((s5 + 1));
    0x00071b5c sw v1, (v0)                   |         *(v0) = v1;
    0x00071b60 lw v0, 8(s5)                  |         v0 = *((s5 + 2));
    0x00071b64 sw v0, 8(a0)                  |         *((a0 + 2)) = v0;
    0x00071b68 sw s4, 4(s5)                  |         *((s5 + 1)) = s4;
    0x00071b6c sw s4, 8(s5)                  |         *((s5 + 2)) = s4;
    0x00071b70 lw v0, 0x50(sp)               |         v0 = *(var_50h);
                                             |     }
                                             |     if (v0 == 0) {
    0x00071b74 beql v0, zero, 0x71b88        |         goto label_106;
                                             |     }
    0x00071b78 addiu v0, zero, 1             |     v0 = 1;
    0x00071b7c andi v0, v0, 0x1f             |     v0 &= 0x1f;
    0x00071b80 addiu v0, zero, 1             |     v0 = 1;
                                             |     if (v0 == 0) {
    0x00071b84 beqz v0, 0x71d80              |         void (*0x71d80)() ();
                                             |     }
                                             | label_106:
    0x00071b88 sw v0, 0x8c(sp)               |     *(var_8ch) = v0;
    0x00071b8c b 0x71c00                     |     goto label_107;
                                             | label_96:
    0x00071b90 sltu v0, a0, v0               |     v0 = (a0 < v0) ? 1 : 0;
    0x00071b94 lw v0, 0x5c(sp)               |     v0 = *(var_5ch);
                                             |     if (v0 == 0) {
    0x00071b98 beqz v0, 0x71808              |         goto label_21;
                                             |     }
                                             | label_95:
    0x00071b9c addiu a1, zero, 0x16          |     a1 = 0x16;
                                             | label_28:
    0x00071ba0 lw v0, 0x88(sp)               |     v0 = *(var_88h);
    0x00071ba4 lw t9, -0x7f08(gp)            |     t9 = sym.ap_log_rerror_;
    0x00071ba8 sw v0, 0x30(sp)               |     *(var_30h) = v0;
    0x00071bac lw v0, -0x7838(gp)            |     v0 = *(gp);
    0x00071bb0 lw a0, 0xb4(sp)               |     a0 = *(var_b4h);
    0x00071bb4 addiu a3, zero, 3             |     a3 = 3;
    0x00071bb8 lw a2, 8(v0)                  |     a2 = *((v0 + 2));
    0x00071bbc lw v0, 0x64(sp)               |     v0 = *(var_64h);
    0x00071bc0 sw a1, 0x10(sp)               |     *(var_10h) = a1;
    0x00071bc4 sw v0, 0x34(sp)               |     *(var_34h) = v0;
    0x00071bc8 lw v0, 0x58(sp)               |     v0 = *(var_58h);
    0x00071bcc sw s0, 0x2c(sp)               |     *(var_2ch) = s0;
    0x00071bd0 sw v0, 0x28(sp)               |     *(var_28h) = v0;
    0x00071bd4 lw v0, 0x54(sp)               |     v0 = *(var_54h);
    0x00071bd8 addiu a1, zero, 0x21d         |     a1 = 0x21d;
    0x00071bdc sw v0, 0x20(sp)               |     *(var_20h) = v0;
    0x00071be0 lw v0, 0x48(sp)               |     v0 = *(var_48h);
    0x00071be4 sw v0, 0x24(sp)               |     *(var_24h) = v0;
    0x00071be8 lw v0, 0xb0(sp)               |     v0 = *(var_b0h);
    0x00071bec sw v0, 0x18(sp)               |     *(var_18h) = v0;
    0x00071bf0 lw v0, 0x44(sp)               |     v0 = *(var_44h);
    0x00071bf4 sw v0, 0x14(sp)               |     *(var_14h) = v0;
    0x00071bf8 bal 0x530a8                   |     sym_ap_log_rerror_ ();
    0x00071bfc lw gp, 0x38(sp)               |     gp = *(var_38h);
                                             | label_107:
    0x00071c00 lw v0, 0x80(sp)               |     v0 = *(var_80h);
    0x00071c04 lw v1, 0x50(sp)               |     v1 = *(var_50h);
    0x00071c08 lw v0, 8(v0)                  |     v0 = *((v0 + 2));
    0x00071c0c addiu v1, v1, 1               |     v1++;
    0x00071c10 sw v1, 0x50(sp)               |     *(var_50h) = v1;
    0x00071c14 slt v0, v1, v0                |     v0 = (v1 < v0) ? 1 : 0;
    0x00071c18 lw v1, 0x4c(sp)               |     v1 = *(var_4ch);
    0x00071c1c addiu v1, v1, 0x10            |     v1 += 0x10;
    0x00071c20 sw v1, 0x4c(sp)               |     *(var_4ch) = v1;
                                             |     if (v0 != 0) {
    0x00071c24 bnez v0, 0x717c8              |         goto label_22;
                                             |     }
    0x00071c28 lw v0, 0x8c(sp)               |     v0 = *(var_8ch);
    0x00071c2c lw s2, 0x6c(sp)               |     s2 = *(var_6ch);
                                             |     if (v0 == 0) {
    0x00071c30 beqz v0, 0x71fa8              |         goto label_93;
                                             |     }
    0x00071c34 lw v0, 0xbc(sp)               |     v0 = *(var_bch);
    0x00071c38 addiu s0, s2, 4               |     s0 = s2 + 4;
                                             |     if (v0 == 0) {
    0x00071c3c bnez v0, 0x71cc4              |         
    0x00071c40 lw s3, 0x44(sp)               |         s3 = *(var_44h);
    0x00071c44 lw a3, -0x7fac(gp)            |         a3 = *(gp);
    0x00071c48 lw a1, -0x7fac(gp)            |         a1 = *(gp);
    0x00071c4c lw v0, (s3)                   |         v0 = *(s3);
    0x00071c50 lw t9, -0x76e8(gp)            |         t9 = sym.imp.apr_pstrcat
    0x00071c54 sw v0, 0x44(sp)               |         *(var_44h) = v0;
    0x00071c58 lw v0, -0x785c(gp)            |         v0 = *(gp);
    0x00071c5c lw a0, 0x44(sp)               |         a0 = *(var_44h);
                                             |         /* str.___r_n */
    0x00071c60 addiu a3, a3, 0x7a04          |         a3 += 0x7a04;
    0x00071c64 lw a2, (v0)                   |         a2 = *(v0);
                                             |         /* str._r_n__ */
    0x00071c68 addiu a1, a1, 0x7980          |         a1 += 0x7980;
    0x00071c6c sw zero, 0x10(sp)             |         *(var_10h) = 0;
    0x00071c70 jalr t9                       |         t9 ();
    0x00071c74 lw gp, 0x38(sp)               |         gp = *(var_38h);
    0x00071c78 move a0, v0                   |         a0 = v0;
    0x00071c7c lw t9, -0x74c4(gp)            |         t9 = sym.imp.strlen;
    0x00071c80 move s1, v0                   |         s1 = v0;
    0x00071c84 jalr t9                       |         t9 ();
    0x00071c88 lw gp, 0x38(sp)               |         gp = *(var_38h);
    0x00071c8c lw v1, 0x90(sp)               |         v1 = *(var_90h);
    0x00071c90 lw a2, (s3)                   |         a2 = *(s3);
    0x00071c94 lw t9, -0x7548(gp)            |         t9 = sym.imp.apr_bucket_pool_create;
    0x00071c98 lw a3, 0x40(v1)               |         a3 = *((v1 + 16));
    0x00071c9c move a1, v0                   |         a1 = v0;
    0x00071ca0 move a0, s1                   |         a0 = s1;
    0x00071ca4 jalr t9                       |         t9 ();
    0x00071ca8 lw gp, 0x38(sp)               |         gp = *(var_38h);
    0x00071cac sw s0, (v0)                   |         *(v0) = s0;
    0x00071cb0 lw v1, 8(s2)                  |         v1 = *((s2 + 2));
    0x00071cb4 sw v1, 4(v0)                  |         *((v0 + 1)) = v1;
    0x00071cb8 lw v1, 8(s2)                  |         v1 = *((s2 + 2));
    0x00071cbc sw v0, (v1)                   |         *(v1) = v0;
    0x00071cc0 sw v0, 8(s2)                  |         *((s2 + 2)) = v0;
                                             |     }
    0x00071cc4 lw v0, 0x90(sp)               |     v0 = *(var_90h);
    0x00071cc8 lw t9, -0x75d0(gp)            |     t9 = *(gp);
    0x00071ccc lw a0, 0x40(v0)               |     a0 = *((v0 + 16));
    0x00071cd0 jalr t9                       |     t9 ();
    0x00071cd4 lw gp, 0x38(sp)               |     gp = *(var_38h);
    0x00071cd8 sw s0, (v0)                   |     *(v0) = s0;
    0x00071cdc lw s0, 0x6c(sp)               |     s0 = *(var_6ch);
    0x00071ce0 lw a0, 0x5c(sp)               |     a0 = *(var_5ch);
    0x00071ce4 lw t9, -0x754c(gp)            |     t9 = sym.imp.apr_brigade_cleanup;
    0x00071ce8 lw v1, 8(s0)                  |     v1 = *((s0 + 2));
    0x00071cec sw v1, 4(v0)                  |     *((v0 + 1)) = v1;
    0x00071cf0 lw v1, 8(s0)                  |     v1 = *((s0 + 2));
    0x00071cf4 sw v0, (v1)                   |     *(v1) = v0;
    0x00071cf8 sw v0, 8(s0)                  |     *((s0 + 2)) = v0;
    0x00071cfc jalr t9                       |     t9 ();
    0x00071d00 nop                           |     
    0x00071d04 lw gp, 0x38(sp)               |     gp = *(var_38h);
    0x00071d08 lw t9, -0x7700(gp)            |     t9 = sym.imp.apr_brigade_destroy;
    0x00071d0c move a0, s5                   |     a0 = s5;
    0x00071d10 jalr t9                       |     t9 ();
    0x00071d14 lw gp, 0x38(sp)               |     gp = *(var_38h);
    0x00071d18 lw v0, 0x74(sp)               |     v0 = *(var_74h);
    0x00071d1c move a1, s0                   |     a1 = s0;
    0x00071d20 lw t9, -0x7e30(gp)            |     t9 = sym.ap_pass_brigade;
    0x00071d24 lw a0, 8(v0)                  |     a0 = *((v0 + 2));
    0x00071d28 jalr t9                       |     t9 ();
    0x00071d2c lw gp, 0x38(sp)               |     gp = *(var_38h);
    0x00071d30 b 0x70d50                     |     goto label_23;
                                             | label_101:
    0x00071d34 lw v1, 0x60(sp)               |     v1 = *(var_60h);
    0x00071d38 lw v0, 8(a0)                  |     v0 = *((a0 + 2));
                                             |     if (v0 == v1) {
    0x00071d3c bnel v0, v1, 0x71938          |         goto label_24;
                                             |     }
    0x00071d40 move s2, a0                   |     s2 = a0;
    0x00071d44 b 0x718e0                     |     goto label_25;
                                             | label_97:
    0x00071d48 sltu a0, a0, v1               |     a0 = (a0 < v1) ? 1 : 0;
                                             |     if (a0 == 0) {
    0x00071d4c beqz a0, 0x71844              |         goto label_26;
                                             |     }
    0x00071d50 nop                           |     
    0x00071d54 b 0x7189c                     |     goto label_27;
    0x00071d58 nop                           |     
                                             | label_100:
    0x00071d5c lw s0, 0x94(sp)               |     s0 = *(var_94h);
    0x00071d60 move s5, s3                   |     s5 = s3;
    0x00071d64 sw v0, 0x60(sp)               |     *(var_60h) = v0;
                                             | label_35:
    0x00071d68 lw t9, -0x754c(gp)            |     t9 = sym.imp.apr_brigade_cleanup;
    0x00071d6c move a0, s5                   |     a0 = s5;
    0x00071d70 jalr t9                       |     t9 ();
    0x00071d74 lw gp, 0x38(sp)               |     gp = *(var_38h);
    0x00071d78 lw a1, 0x60(sp)               |     a1 = *(var_60h);
    0x00071d7c b 0x71ba0                     |     goto label_28;
                                             | label_105:
    0x00071dd8 lw v0, 0x44(sp)               |     v0 = *(var_44h);
    0x00071ddc lw t9, -0x7540(gp)            |     t9 = sym.imp.apr_psprintf;
    0x00071de0 lw a2, 0x54(sp)               |     a2 = *(var_54h);
    0x00071de4 lw s2, 0xb4(v0)               |     s2 = *((v0 + 45));
    0x00071de8 lw v0, 0xa8(sp)               |     v0 = *(var_a8h);
    0x00071dec lw a3, 0x48(sp)               |     a3 = *(var_48h);
    0x00071df0 addiu a1, v0, 0x79d8          |     a1 = v0 + 0x79d8;
    0x00071df4 lw v0, 0x88(sp)               |     v0 = *(var_88h);
    0x00071df8 move a0, s1                   |     a0 = s1;
    0x00071dfc sw v0, 0x18(sp)               |     *(var_18h) = v0;
    0x00071e00 lw v0, 0x64(sp)               |     v0 = *(var_64h);
    0x00071e04 sw s0, 0x14(sp)               |     *(var_14h) = s0;
    0x00071e08 sw v0, 0x1c(sp)               |     *(var_1ch) = v0;
    0x00071e0c lw v0, 0x58(sp)               |     v0 = *(var_58h);
    0x00071e10 sw v0, 0x10(sp)               |     *(var_10h) = v0;
    0x00071e14 jalr t9                       |     t9 ();
    0x00071e18 lw gp, 0x38(sp)               |     gp = *(var_38h);
    0x00071e1c move a2, v0                   |     a2 = v0;
    0x00071e20 lw v0, 0xac(sp)               |     v0 = *(var_ach);
    0x00071e24 lw t9, -0x7590(gp)            |     t9 = sym.imp.apr_table_setn;
    0x00071e28 addiu a1, v0, -0x58d0         |     a1 = v0 + -0x58d0;
    0x00071e2c move a0, s2                   |     a0 = s2;
    0x00071e30 jalr t9                       |     t9 ();
    0x00071e34 lw gp, 0x38(sp)               |     gp = *(var_38h);
    0x00071e38 b 0x71b2c                     |     goto label_29;
                                             | label_103:
    0x00071e3c lw a0, 0xc8(sp)               |     a0 = *(var_c8h);
                                             |     if (s2 == 0) {
    0x00071e40 bnel s2, zero, 0x719d0        |         goto label_30;
                                             |     }
    0x00071e44 lw v1, 0x44(sp)               |     v1 = *(var_44h);
    0x00071e48 b 0x71a44                     |     goto label_31;
                                             | label_102:
    0x00071e4c lw a0, 0x54(sp)               |     a0 = *(var_54h);
    0x00071e50 lw v1, 0x48(sp)               |     v1 = *(var_48h);
    0x00071e54 addu v0, a0, s3               |     v0 = a0 + s3;
    0x00071e58 addu v1, v1, s2               |     v1 += s2;
    0x00071e5c sltu s2, v0, a0               |     s2 = (v0 < a0) ? 1 : 0;
    0x00071e60 lw a0, 0x68(sp)               |     a0 = *(var_68h);
    0x00071e64 addu s2, s2, v1               |     s2 += v1;
    0x00071e68 lw v1, 0x60(sp)               |     v1 = *(var_60h);
    0x00071e6c subu s3, v0, a0               |     __asm ("subu s3, v0, a0");
    0x00071e70 sltu v0, v0, s3               |     v0 = (v0 < s3) ? 1 : 0;
    0x00071e74 subu s2, s2, v1               |     __asm ("subu s2, s2, v1");
    0x00071e78 subu s2, s2, v0               |     __asm ("subu s2, s2, v0");
    0x00071e7c sw a1, 0xc8(sp)               |     *(var_c8h) = a1;
    0x00071e80 b 0x719b0                     |     goto label_32;
                                             | label_94:
    0x00071e84 lw s0, 0x44(sp)               |     s0 = *(var_44h);
    0x00071e88 lw t9, -0x77f8(gp)            |     t9 = sym.ap_make_content_type;
    0x00071e8c move a0, s0                   |     a0 = s0;
    0x00071e90 lw a1, 0xc4(s0)               |     a1 = *((s0 + 49));
    0x00071e94 jalr t9                       |     t9 ();
    0x00071e98 lw gp, 0x38(sp)               |     gp = *(var_38h);
    0x00071e9c move v1, s0                   |     v1 = s0;
    0x00071ea0 lw a0, 0xb0(s0)               |     a0 = *((s0 + 44));
    0x00071ea4 lw a1, -0x7fac(gp)            |     a1 = *(gp);
    0x00071ea8 lw t9, -0x7668(gp)            |     t9 = sym.imp.apr_table_get;
                                             |     /* str.Request_Range */
    0x00071eac addiu a1, a1, 0x7844          |     a1 += 0x7844;
    0x00071eb0 move s0, v0                   |     s0 = v0;
    0x00071eb4 lw s1, (v1)                   |     s1 = *(v1);
    0x00071eb8 jalr t9                       |     t9 ();
    0x00071ebc lw gp, 0x38(sp)               |     gp = *(var_38h);
    0x00071ec0 beqz v0, 0x71f58              |     
                                             |     while (v0 != 0) {
    0x00071ec4 lw a2, -0x7fac(gp)            |         a2 = *(gp);
                                             |         /* esilref: '/x-' */
    0x00071ec8 addiu a2, a2, 0x7840          |         a2 += 0x7840;
                                             | label_34:
    0x00071ecc lw s2, -0x785c(gp)            |         s2 = *(gp);
    0x00071ed0 lw a3, -0x7fac(gp)            |         a3 = *(gp);
    0x00071ed4 lw a1, -0x7fac(gp)            |         a1 = *(gp);
    0x00071ed8 lw v0, (s2)                   |         v0 = *(s2);
    0x00071edc lw t9, -0x76e8(gp)            |         t9 = sym.imp.apr_pstrcat
    0x00071ee0 move a0, s1                   |         a0 = s1;
                                             |         /* str.byteranges__boundary */
    0x00071ee4 addiu a3, a3, 0x7948          |         a3 += aav.0x00007948;
                                             |         /* str.multipart */
    0x00071ee8 addiu a1, a1, 0x7960          |         a1 += 0x7960;
    0x00071eec sw zero, 0x14(sp)             |         *(var_14h) = 0;
    0x00071ef0 sw v0, 0x10(sp)               |         *(var_10h) = v0;
    0x00071ef4 jalr t9                       |         t9 ();
    0x00071ef8 lw gp, 0x38(sp)               |         gp = *(var_38h);
    0x00071efc lw s1, 0x44(sp)               |         s1 = *(var_44h);
    0x00071f00 move a1, v0                   |         a1 = v0;
    0x00071f04 lw t9, -0x7d14(gp)            |         t9 = sym.ap_set_content_type;
    0x00071f08 move a0, s1                   |         a0 = s1;
    0x00071f0c bal 0x69440                   |         sym_ap_set_content_type ();
    0x00071f10 lw gp, 0x38(sp)               |         gp = *(var_38h);
                                             |         if (s0 == 0) {
    0x00071f14 beqz s0, 0x71fc4              |             goto label_108;
                                             |         }
    0x00071f18 lw v0, -0x7fac(gp)            |         v0 = *(gp);
    0x00071f1c lw a3, -0x7fac(gp)            |         a3 = *(gp);
    0x00071f20 lw a1, -0x7fac(gp)            |         a1 = *(gp);
    0x00071f24 lw a0, (s1)                   |         a0 = *(s1);
    0x00071f28 lw a2, (s2)                   |         a2 = *(s2);
    0x00071f2c lw t9, -0x76e8(gp)            |         t9 = sym.imp.apr_pstrcat
                                             |         /* str._r_nContent_range:_bytes_ */
    0x00071f30 addiu v0, v0, 0x7988          |         v0 += 0x7988;
    0x00071f34 sw zero, 0x18(sp)             |         *(var_18h) = 0;
    0x00071f38 sw v0, 0x14(sp)               |         *(var_14h) = v0;
    0x00071f3c sw s0, 0x10(sp)               |         *(var_10h) = s0;
                                             |         /* str._r_nContent_type:_ */
    0x00071f40 addiu a3, a3, 0x796c          |         a3 += 0x796c;
                                             |         /* str._r_n__ */
    0x00071f44 addiu a1, a1, 0x7980          |         a1 += 0x7980;
    0x00071f48 jalr t9                       |         t9 ();
    0x00071f4c sw v0, 0x98(sp)               |         *(var_98h) = v0;
    0x00071f50 lw gp, 0x38(sp)               |         gp = *(var_38h);
    0x00071f54 b 0x71758                     |         goto label_33;
    0x00071f58 lw v0, 0x44(sp)               |         v0 = *(var_44h);
    0x00071f5c lw a1, -0x7fac(gp)            |         a1 = *(gp);
    0x00071f60 lw t9, -0x7668(gp)            |         t9 = sym.imp.apr_table_get;
    0x00071f64 lw a0, 0xb0(v0)               |         a0 = *((v0 + 44));
                                             |         /* str.User_Agent */
    0x00071f68 addiu a1, a1, -0x284          |         a1 += -aav.0x00000284;
    0x00071f6c jalr t9                       |         t9 ();
    0x00071f70 lw gp, 0x38(sp)               |         gp = *(var_38h);
                                             |         if (v0 == 0) {
    0x00071f74 beqz v0, 0x71f94              |             goto label_109;
                                             |         }
    0x00071f78 lw a1, -0x7fac(gp)            |         a1 = *(gp);
    0x00071f7c lw t9, -0x75a8(gp)            |         t9 = sym.imp.strstr;
                                             |         /* str.MSIE_3 */
    0x00071f80 addiu a1, a1, 0x7940          |         a1 += 0x7940;
    0x00071f84 move a0, v0                   |         a0 = v0;
    0x00071f88 jalr t9                       |         t9 ();
    0x00071f8c lw gp, 0x38(sp)               |         gp = *(var_38h);
    0x00071f90 bnez v0, 0x71ec4              |         
                                             |     }
                                             | label_109:
    0x00071f94 lw a2, -0x7fac(gp)            |     a2 = *(gp);
    0x00071f98 addiu a2, a2, -0x6a2c         |     a2 += -0x6a2c;
    0x00071f9c b 0x71ecc                     |     goto label_34;
                                             | label_104:
    0x00071fa0 sw v0, 0x60(sp)               |     *(var_60h) = v0;
    0x00071fa4 b 0x71d68                     |     goto label_35;
                                             | label_93:
    0x00071fa8 lw t9, -0x7fd4(gp)            |     t9 = *(gp);
    0x00071fac lw a1, 0x6c(sp)               |     a1 = *(var_6ch);
                                             |     /* fcn.00070ae0 */
    0x00071fb0 addiu t9, t9, 0xae0           |     t9 += aav.0x00000ae0;
    0x00071fb4 lw a0, 0x74(sp)               |     a0 = *(var_74h);
    0x00071fb8 bal 0x70ae0                   |     fcn_00070ae0 ();
    0x00071fbc lw gp, 0x38(sp)               |     gp = *(var_38h);
    0x00071fc0 b 0x70d50                     |     goto label_23;
                                             | label_108:
    0x00071fc4 lw v0, 0x44(sp)               |     v0 = *(var_44h);
    0x00071fc8 lw a3, -0x7fac(gp)            |     a3 = *(gp);
    0x00071fcc lw a1, -0x7fac(gp)            |     a1 = *(gp);
    0x00071fd0 lw t9, -0x76e8(gp)            |     t9 = sym.imp.apr_pstrcat
    0x00071fd4 lw a0, (v0)                   |     a0 = *(v0);
    0x00071fd8 lw a2, (s2)                   |     a2 = *(s2);
                                             |     /* str._r_nContent_range:_bytes_ */
    0x00071fdc addiu a3, a3, 0x7988          |     a3 += 0x7988;
    0x00071fe0 sw zero, 0x10(sp)             |     *(var_10h) = 0;
                                             |     /* str._r_n__ */
    0x00071fe4 addiu a1, a1, 0x7980          |     a1 += 0x7980;
    0x00071fe8 jalr t9                       |     t9 ();
    0x00071fec sw v0, 0x98(sp)               |     *(var_98h) = v0;
    0x00071ff0 lw gp, 0x38(sp)               |     gp = *(var_38h);
    0x00071ff4 b 0x71758                     |     goto label_33;
                                             | label_84:
    0x00071ff8 lw a1, 4(v0)                  |     a1 = *((v0 + 1));
    0x00071ffc lw v0, 0x60(a1)               |     v0 = *((a1 + 24));
                                             |     if (v0 == 0) {
    0x00072000 beql v0, zero, 0x7209c        |         goto label_110;
                                             |     }
    0x00072004 lw v0, 0x44(sp)               |     v0 = *(var_44h);
    0x00072008 lw a0, (v0)                   |     a0 = *(v0);
                                             |     if (a0 == 0) {
    0x0007200c beql a0, zero, 0x72040        |         goto label_37;
                                             |     }
    0x00072010 lw v0, 4(v0)                  |     v0 = *((v0 + 1));
    0x00072014 addu a0, a0, a2               |     a0 += a2;
                                             | label_39:
    0x00072018 lb v1, (a0)                   |     v1 = *(a0);
    0x0007201c slti v0, v1, 8                |     v0 = (v1 < 8) ? 1 : 0;
                                             |     if (v1 >= 0) {
    0x00072020 bgez v1, 0x71458              |         goto label_36;
                                             |     }
                                             | label_38:
    0x00072024 lw v0, 0x60(a1)               |     v0 = *((a1 + 24));
    0x00072028 lw v0, 4(v0)                  |     v0 = *((v0 + 1));
                                             |     if (v0 != 0) {
    0x0007202c bnel v0, zero, 0x72040        |         
    0x00072030 lw v0, 0x44(sp)               |         v0 = *(var_44h);
    0x00072034 lw v1, 8(v0)                  |         v1 = *((v0 + 2));
    0x00072038 addiu v0, v1, 0x10            |         v0 = v1 + 0x10;
                                             | label_40:
    0x0007203c lw v0, 4(v0)                  |         v0 = *((v0 + 1));
                                             |     }
                                             | label_37:
    0x00072040 slti v0, v0, 8                |     v0 = (v0 < 8) ? 1 : 0;
    0x00072044 xori v0, v0, 1                |     v0 ^= 1;
                                             |     if (v0 == 0) {
                                             | label_85:
    0x00072048 beql v0, zero, 0x70cf8        |         goto label_7;
                                             |     }
    0x0007204c lw v0, 0x44(sp)               |     v0 = *(var_44h);
    0x00072050 lw v0, -0x7fac(gp)            |     v0 = *(gp);
    0x00072054 lw a0, -0x7fac(gp)            |     a0 = *(gp);
                                             |     /* str.Sum_of_ranges_larger_than_file__ignoring. */
    0x00072058 addiu v0, v0, 0x78dc          |     v0 += 0x78dc;
    0x0007205c sw v0, 0x18(sp)               |     *(var_18h) = v0;
    0x00072060 lw v0, 0x44(sp)               |     v0 = *(var_44h);
    0x00072064 lw t9, -0x7f08(gp)            |     t9 = sym.ap_log_rerror_;
    0x00072068 sw v0, 0x14(sp)               |     *(var_14h) = v0;
    0x0007206c sw zero, 0x10(sp)             |     *(var_10h) = 0;
    0x00072070 addiu a3, zero, 8             |     a3 = 8;
    0x00072074 addiu a1, zero, 0x115         |     a1 = 0x115;
                                             |     /* str._usr_src_debug_apache2_2.4.57_r0_httpd_2.4.57_modules_http_byterange_filter.c */
    0x00072078 addiu a0, a0, 0x788c          |     a0 += 0x788c;
    0x0007207c bal 0x530a8                   |     sym_ap_log_rerror_ ();
    0x00072080 lw gp, 0x38(sp)               |     gp = *(var_38h);
    0x00072084 b 0x70cf4                     |     goto label_6;
                                             | label_83:
    0x00072088 lw v0, 4(v0)                  |     v0 = *((v0 + 1));
                                             |     if (v0 == 0) {
    0x0007208c bnel v0, zero, 0x72040        |         goto label_37;
                                             |     }
    0x00072090 lw v0, 0x44(sp)               |     v0 = *(var_44h);
    0x00072094 lw a1, 4(v0)                  |     a1 = *((v0 + 1));
    0x00072098 b 0x72024                     |     goto label_38;
                                             | label_110:
    0x0007209c lw v1, 8(v0)                  |     v1 = *((v0 + 2));
    0x000720a0 lw a0, 0x10(v1)               |     a0 = *((v1 + 4));
    0x000720a4 addu a0, a0, a2               |     a0 += a2;
                                             |     if (a0 == 0) {
    0x000720a8 bnel a0, zero, 0x72018        |         goto label_39;
                                             |     }
    0x000720ac addiu v0, v1, 0x10            |     v0 = v1 + 0x10;
    0x000720b0 b 0x7203c                     |     goto label_40;
                                             | label_81:
    0x000720b4 sw v0, 0x84(sp)               |     *(var_84h) = v0;
    0x000720b8 b 0x716f4                     |     goto label_41;
                                             | label_87:
    0x000720bc lw v1, 0x44(sp)               |     v1 = *(var_44h);
    0x000720c0 lw v1, 0x108(v1)              |     v1 = *(v1);
    0x000720c4 lw v1, 4(v1)                  |     v1 = *((v1 + 1));
                                             |     if (v1 == 0) {
    0x000720c8 bnel v1, zero, 0x716d8        |         goto label_42;
                                             |     }
    0x000720cc lw v1, 0x44(sp)               |     v1 = *(var_44h);
    0x000720d0 lw a1, 4(v1)                  |     a1 = *((v1 + 1));
    0x000720d4 b 0x716bc                     |     goto label_43;
                                             | label_90:
    0x000720d8 lw v1, 8(v1)                  |     v1 = *((v1 + 2));
    0x000720dc lw a0, 0x10(v1)               |     a0 = *((v1 + 4));
    0x000720e0 addu a0, a0, a2               |     a0 += a2;
                                             |     if (a0 == 0) {
    0x000720e4 bnel a0, zero, 0x716b0        |         goto label_44;
                                             |     }
    0x000720e8 addiu v1, v1, 0x10            |     v1 += 0x10;
    0x000720ec b 0x716d4                     |     goto label_45;
                                             | label_91:
    0x000720f0 lw v0, 0xa0(sp)               |     v0 = *(var_a0h);
    0x000720f4 lw a0, -0x7fac(gp)            |     a0 = *(gp);
    0x000720f8 sw v0, 0x1c(sp)               |     *(var_1ch) = v0;
    0x000720fc lw v0, -0x7fac(gp)            |     v0 = *(gp);
    0x00072100 lw v1, 0x64(sp)               |     v1 = *(var_64h);
                                             |     /* str.AH01583:_Range:__s___s___d_:__d_:__lld_ */
    0x00072104 addiu v0, v0, 0x7914          |     v0 += 0x7914;
    0x00072108 sw v0, 0x18(sp)               |     *(var_18h) = v0;
    0x0007210c lw v0, 0x44(sp)               |     v0 = *(var_44h);
    0x00072110 lw t9, -0x7f08(gp)            |     t9 = sym.ap_log_rerror_;
    0x00072114 sw t2, 0x50(sp)               |     *(var_50h) = t2;
    0x00072118 sw t1, 0x4c(sp)               |     *(var_4ch) = t1;
    0x0007211c sw t0, 0x48(sp)               |     *(var_48h) = t0;
    0x00072120 sw s6, 0x30(sp)               |     *(var_30h) = s6;
    0x00072124 sw v1, 0x34(sp)               |     *(var_34h) = v1;
    0x00072128 sw s3, 0x28(sp)               |     *(var_28h) = s3;
    0x0007212c sw s4, 0x24(sp)               |     *(var_24h) = s4;
    0x00072130 sw v0, 0x14(sp)               |     *(var_14h) = v0;
    0x00072134 sw zero, 0x10(sp)             |     *(var_10h) = 0;
    0x00072138 addiu a3, zero, 7             |     a3 = 7;
    0x0007213c addiu a1, zero, 0x128         |     a1 = aav.0x00000128;
                                             |     /* str._usr_src_debug_apache2_2.4.57_r0_httpd_2.4.57_modules_http_byterange_filter.c */
    0x00072140 addiu a0, a0, 0x788c          |     a0 += 0x788c;
    0x00072144 bal 0x530a8                   |     sym_ap_log_rerror_ ();
    0x00072148 lw gp, 0x38(sp)               |     gp = *(var_38h);
    0x0007214c lw t2, 0x50(sp)               |     t2 = *(var_50h);
    0x00072150 lw t1, 0x4c(sp)               |     t1 = *(var_4ch);
    0x00072154 lw t0, 0x48(sp)               |     t0 = *(var_48h);
    0x00072158 b 0x716e8                     |     goto label_46;
                                             | label_55:
    0x0007215c lw t9, -0x75e8(gp)            |     t9 = sym.imp.__stack_chk_fail;
    0x00072160 jalr t9                       |     t9 ();
    0x00072164 nop                           |     
                                             | label_75:
    0x00072168 lw s0, 0x50(sp)               |     s0 = *(var_50h);
                                             |     if (v0 != 0) {
    0x0007216c bnez v0, 0x70cf4              |         goto label_6;
                                             |     }
    0x00072170 lw a0, 0x64(sp)               |     a0 = *(var_64h);
                                             |     if (a2 != 0) {
    0x00072174 bnez a2, 0x71270              |         goto label_47;
                                             |     }
    0x00072178 lw v0, 0x44(sp)               |     v0 = *(var_44h);
    0x0007217c b 0x70cf8                     |     goto label_7;
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x37600 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.ap_check_cmd_context ()      | void ap_check_cmd_context () {
    0x00037600 lui gp, 7                     |     
    0x00037604 addiu gp, gp, -0x46e0         |     
    0x00037608 addu gp, gp, t9               |     gp += t9;
    0x0003760c addiu sp, sp, -0x40           |     
    0x00037610 addiu v0, zero, 0x3c          |     v0 = 0x3c;
    0x00037614 sw s4, 0x38(sp)               |     *(var_38h) = s4;
    0x00037618 lw s4, 0x38(a0)               |     s4 = *((a0 + 14));
    0x0003761c sw s0, 0x28(sp)               |     *(var_28h) = s0;
    0x00037620 sw s2, 0x30(sp)               |     *(var_30h) = s2;
    0x00037624 lw s0, (s4)                   |     s0 = *(s4);
    0x00037628 sw s1, 0x2c(sp)               |     *(var_2ch) = s1;
    0x0003762c sw gp, 0x20(sp)               |     *(var_20h) = gp;
    0x00037630 sw ra, 0x3c(sp)               |     *(var_3ch) = ra;
    0x00037634 sw s3, 0x34(sp)               |     *(var_34h) = s3;
    0x00037638 lb v1, (s0)                   |     v1 = *(s0);
    0x0003763c move s1, a0                   |     s1 = a0;
    0x00037640 move s2, a1                   |     s2 = a1;
                                             |     if (v1 == v0) {
    0x00037644 beq v1, v0, 0x37804           |         goto label_12;
                                             |     }
                                             | label_0:
    0x00037648 lw s3, -0x7fac(gp)            |     s3 = *(gp);
    0x0003764c addiu s3, s3, 0x47dc          |     s3 += 0x47dc;
                                             | label_1:
    0x00037650 andi v0, s2, 1                |     v0 = s2 & 1;
    0x00037654 andi v0, s2, 0x5e             |     v0 = s2 & 0x5e;
                                             |     if (v0 != 0) {
    0x00037658 beqz v0, 0x3766c              |         
    0x0003765c lw v0, 0x30(s1)               |         v0 = *((s1 + 12));
    0x00037660 lb v0, 0x28(v0)               |         v0 = *((v0 + 40));
    0x00037664 andi v0, s2, 0x5e             |         v0 = s2 & 0x5e;
                                             |         if (v0 != 0) {
    0x00037668 bnez v0, 0x379ac              |             goto label_13;
                                             |         }
                                             |     }
    0x0003766c andi v0, s2, 0x20             |     v0 = s2 & 0x20;
                                             |     if (v0 != 0) {
    0x00037670 beqz v0, 0x37690              |         
    0x00037674 lw v0, 0x10(s1)               |         v0 = *((s1 + 4));
    0x00037678 addiu v1, zero, -1            |         v1 = -1;
    0x0003767c lw a3, -0x7fac(gp)            |         a3 = *(gp);
                                             |         if (v0 != v1) {
    0x00037680 bne v0, v1, 0x379ec           |             goto label_14;
                                             |         }
    0x00037684 lw v1, 0x14(s1)               |         v1 = *((s1 + 5));
    0x00037688 andi v0, s2, 0x20             |         v0 = s2 & 0x20;
                                             |         if (v1 != v0) {
    0x0003768c bne v1, v0, 0x379ec           |             goto label_14;
                                             |         }
                                             |     }
    0x00037690 andi v1, s2, 0x1c             |     v1 = s2 & 0x1c;
                                             |     if (v0 != 0) {
    0x00037694 beqz v0, 0x376a8              |         
    0x00037698 lw a0, 0x28(s1)               |         a0 = *((s1 + 10));
    0x0003769c lw v0, 0x2c(s1)               |         v0 = *((s1 + 11));
    0x000376a0 lw a3, -0x7fac(gp)            |         a3 = *(gp);
                                             |         if (a0 == v0) {
    0x000376a4 beq a0, v0, 0x37a4c           |             goto label_15;
                                             |         }
                                             |     }
    0x000376a8 addiu v0, zero, 0x1c          |     v0 = 0x1c;
    0x000376ac andi v0, s2, 4                |     v0 = s2 & 4;
                                             |     if (v1 == v0) {
    0x000376b0 beq v1, v0, 0x37830           |         goto label_16;
                                             |     }
    0x000376b4 andi v0, s2, 8                |     v0 = s2 & 8;
                                             |     if (v0 == 0) {
    0x000376b8 beqz v0, 0x37720              |         goto label_3;
                                             |     }
    0x000376bc lw s4, -0x7fac(gp)            |     s4 = *(gp);
                                             | label_2:
    0x000376c0 lw s0, 0x24(s1)               |     s0 = *((s1 + 9));
                                             |     /* str._Directory */
    0x000376c4 addiu s4, s4, -0x39b8         |     s4 += -0x39b8;
    0x000376c8 b 0x376dc                     |     
                                             |     while (s0 != 0) {
    0x000376cc lw a0, (s0)                   |         a0 = *(s0);
    0x000376d0 bal 0x21bb0                   |         sym_ap_cstr_casecmp ();
    0x000376d4 lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |         if (v0 == 0) {
    0x000376d8 beqz v0, 0x37860              |             goto label_5;
                                             |         }
    0x000376dc lw s0, 0x10(s0)               |         s0 = *((s0 + 4));
    0x000376e0 lw t9, -0x7e28(gp)            |         t9 = sym.ap_cstr_casecmp;
    0x000376e4 move a1, s4                   |         a1 = s4;
    0x000376e8 bnez s0, 0x376cc              |         
                                             |     }
    0x000376ec lw s4, -0x7fac(gp)            |     s4 = *(gp);
    0x000376f0 lw s0, 0x24(s1)               |     s0 = *((s1 + 9));
                                             |     /* str._DirectoryMatch */
    0x000376f4 addiu s4, s4, -0x39ac         |     s4 += -0x39ac;
    0x000376f8 b 0x3770c                     |     
                                             |     while (s0 != 0) {
    0x000376fc lw a0, (s0)                   |         a0 = *(s0);
    0x00037700 bal 0x21bb0                   |         sym_ap_cstr_casecmp ();
    0x00037704 lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |         if (v0 == 0) {
    0x00037708 beqz v0, 0x37860              |             goto label_5;
                                             |         }
    0x0003770c lw s0, 0x10(s0)               |         s0 = *((s0 + 4));
    0x00037710 lw t9, -0x7e28(gp)            |         t9 = sym.ap_cstr_casecmp;
    0x00037714 move a1, s4                   |         a1 = s4;
    0x00037718 bnez s0, 0x376fc              |         
                                             |     }
    0x0003771c andi v0, s2, 8                |     v0 = s2 & 8;
                                             | label_3:
    0x00037720 andi v0, s2, 0x10             |     v0 = s2 & 0x10;
                                             |     if (v0 == 0) {
    0x00037724 beqz v0, 0x3778c              |         goto label_17;
                                             |     }
    0x00037728 lw s4, -0x7fac(gp)            |     s4 = *(gp);
    0x0003772c lw s0, 0x24(s1)               |     s0 = *((s1 + 9));
                                             |     /* str._Location */
    0x00037730 addiu s4, s4, -0x399c         |     s4 += -0x399c;
    0x00037734 b 0x37748                     |     
                                             |     while (s0 != 0) {
    0x00037738 lw a0, (s0)                   |         a0 = *(s0);
    0x0003773c bal 0x21bb0                   |         sym_ap_cstr_casecmp ();
    0x00037740 lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |         if (v0 == 0) {
    0x00037744 beqz v0, 0x37860              |             goto label_5;
                                             |         }
    0x00037748 lw s0, 0x10(s0)               |         s0 = *((s0 + 4));
    0x0003774c lw t9, -0x7e28(gp)            |         t9 = sym.ap_cstr_casecmp;
    0x00037750 move a1, s4                   |         a1 = s4;
    0x00037754 bnez s0, 0x37738              |         
                                             |     }
    0x00037758 lw s4, -0x7fac(gp)            |     s4 = *(gp);
    0x0003775c lw s0, 0x24(s1)               |     s0 = *((s1 + 9));
                                             |     /* str._LocationMatch */
    0x00037760 addiu s4, s4, -0x3990         |     s4 += -0x3990;
    0x00037764 b 0x37778                     |     
                                             |     while (s0 != 0) {
    0x00037768 lw a0, (s0)                   |         a0 = *(s0);
    0x0003776c bal 0x21bb0                   |         sym_ap_cstr_casecmp ();
    0x00037770 lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |         if (v0 == 0) {
    0x00037774 beqz v0, 0x37860              |             goto label_5;
                                             |         }
    0x00037778 lw s0, 0x10(s0)               |         s0 = *((s0 + 4));
    0x0003777c lw t9, -0x7e28(gp)            |         t9 = sym.ap_cstr_casecmp;
    0x00037780 move a1, s4                   |         a1 = s4;
    0x00037784 bnez s0, 0x37768              |         
                                             |     }
    0x00037788 andi v0, s2, 0x10             |     v0 = s2 & 0x10;
                                             | label_17:
    0x0003778c lw s4, -0x7fac(gp)            |     s4 = *(gp);
                                             |     if (v0 == 0) {
    0x00037790 bnel v0, zero, 0x378b8        |         goto label_18;
                                             |     }
    0x00037794 andi s2, s2, 0x40             |     s2 &= 0x40;
                                             | label_10:
    0x00037798 lw s2, -0x7fac(gp)            |     s2 = *(gp);
                                             |     if (s2 == 0) {
    0x0003779c beqz s2, 0x377fc              |         goto label_19;
                                             |     }
    0x000377a0 lw s0, 0x24(s1)               |     s0 = *((s1 + 9));
                                             |     /* str._Proxy */
    0x000377a4 addiu s2, s2, -0x3958         |     s2 += -0x3958;
    0x000377a8 b 0x377bc                     |     
                                             |     while (s0 != 0) {
    0x000377ac lw a0, (s0)                   |         a0 = *(s0);
    0x000377b0 bal 0x21bb0                   |         sym_ap_cstr_casecmp ();
    0x000377b4 lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |         if (v0 == 0) {
    0x000377b8 beqz v0, 0x37860              |             goto label_5;
                                             |         }
    0x000377bc lw s0, 0x10(s0)               |         s0 = *((s0 + 4));
    0x000377c0 lw t9, -0x7e28(gp)            |         t9 = sym.ap_cstr_casecmp;
    0x000377c4 move a1, s2                   |         a1 = s2;
    0x000377c8 bnez s0, 0x377ac              |         
                                             |     }
    0x000377cc lw s2, -0x7fac(gp)            |     s2 = *(gp);
    0x000377d0 lw s0, 0x24(s1)               |     s0 = *((s1 + 9));
                                             |     /* str._ProxyMatch */
    0x000377d4 addiu s2, s2, -0x3950         |     s2 += -0x3950;
    0x000377d8 b 0x377ec                     |     
                                             |     while (s0 != 0) {
    0x000377dc lw a0, (s0)                   |         a0 = *(s0);
    0x000377e0 bal 0x21bb0                   |         sym_ap_cstr_casecmp ();
    0x000377e4 lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |         if (v0 == 0) {
    0x000377e8 beqz v0, 0x37860              |             goto label_5;
                                             |         }
    0x000377ec lw s0, 0x10(s0)               |         s0 = *((s0 + 4));
    0x000377f0 lw t9, -0x7e28(gp)            |         t9 = sym.ap_cstr_casecmp;
    0x000377f4 move a1, s2                   |         a1 = s2;
    0x000377f8 bnez s0, 0x377dc              |         
                                             |     }
                                             | label_19:
    0x000377fc move v0, zero                 |     v0 = 0;
    0x00037800 b 0x37898                     |     goto label_20;
                                             | label_12:
    0x00037804 lw t9, -0x74c4(gp)            |     t9 = sym.imp.strlen;
    0x00037808 move a0, s0                   |     a0 = s0;
    0x0003780c jalr t9                       |     t9 ();
    0x00037810 addu v0, s0, v0               |     v0 = s0 + v0;
    0x00037814 addiu v1, zero, 0x3e          |     v1 = 0x3e;
    0x00037818 lb v0, -1(v0)                 |     v0 = *((v0 - 1));
    0x0003781c lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 == v1) {
    0x00037820 beq v0, v1, 0x37648           |         goto label_0;
                                             |     }
    0x00037824 lw s3, -0x7fac(gp)            |     s3 = *(gp);
    0x00037828 addiu s3, s3, 0xb98           |     s3 += 0xb98;
    0x0003782c b 0x37650                     |     goto label_1;
                                             | label_16:
    0x00037830 lw v0, 0x34(s1)               |     v0 = *((s1 + 13));
    0x00037834 lw a3, -0x7fac(gp)            |     a3 = *(gp);
                                             |     if (v0 != 0) {
    0x00037838 bnez v0, 0x37a28              |         goto label_21;
                                             |     }
    0x0003783c lw v0, 0xc(s4)                |     v0 = *((s4 + 3));
    0x00037840 andi v0, v0, 0x100            |     v0 &= aav.0x00000100;
    0x00037844 move v0, zero                 |     v0 = 0;
                                             |     if (v0 != 0) {
    0x00037848 bnez v0, 0x37898              |         goto label_20;
                                             |     }
    0x0003784c andi v0, s2, 4                |     v0 = s2 & 4;
    0x00037850 lw s4, -0x7fac(gp)            |     s4 = *(gp);
                                             |     if (v0 == 0) {
    0x00037854 bnel v0, zero, 0x376c0        |         goto label_2;
                                             |     }
    0x00037858 andi v0, s2, 8                |     v0 = s2 & 8;
    0x0003785c b 0x37720                     |     goto label_3;
                                             |     do {
                                             | label_5:
    0x00037860 lw v0, 0x38(s1)               |         v0 = *((s1 + 14));
    0x00037864 lw a3, -0x7fac(gp)            |         a3 = *(gp);
    0x00037868 lw t9, -0x76e8(gp)            |         t9 = sym.imp.apr_pstrcat
    0x0003786c lw a1, (v0)                   |         a1 = *(v0);
    0x00037870 lw v0, -0x7fac(gp)            |         v0 = *(gp);
    0x00037874 sw zero, 0x18(sp)             |         *(var_18h) = 0;
                                             |         /* esilref: '> section' */
    0x00037878 addiu v0, v0, -0x3a10         |         v0 += -0x3a10;
    0x0003787c sw v0, 0x14(sp)               |         *(var_14h) = v0;
    0x00037880 lw v0, (s0)                   |         v0 = *(s0);
    0x00037884 lw a0, 0x28(s1)               |         a0 = *((s1 + 10));
                                             |         /* str._cannot_occur_within_ */
    0x00037888 addiu a3, a3, -0x3944         |         a3 += -0x3944;
    0x0003788c sw v0, 0x10(sp)               |         *(var_10h) = v0;
    0x00037890 move a2, s3                   |         a2 = s3;
    0x00037894 jalr t9                       |         t9 ();
                                             | label_20:
    0x00037898 lw ra, 0x3c(sp)               |         ra = *(var_3ch);
                                             | label_11:
    0x0003789c lw s4, 0x38(sp)               |         s4 = *(var_38h);
    0x000378a0 lw s3, 0x34(sp)               |         s3 = *(var_34h);
    0x000378a4 lw s2, 0x30(sp)               |         s2 = *(var_30h);
    0x000378a8 lw s1, 0x2c(sp)               |         s1 = *(var_2ch);
    0x000378ac lw s0, 0x28(sp)               |         s0 = *(var_28h);
    0x000378b0 addiu sp, sp, 0x40            |         
    0x000378b4 jr ra                         |         return v0;
                                             | label_18:
    0x000378b8 lw s0, 0x24(s1)               |         s0 = *((s1 + 9));
                                             |         /* str._Files */
    0x000378bc addiu s4, s4, -0x3980         |         s4 += -0x3980;
    0x000378c0 b 0x378d4                     |         goto label_22;
                                             | label_4:
    0x000378c4 lw a0, (s0)                   |         a0 = *(s0);
    0x000378c8 bal 0x21bb0                   |         sym_ap_cstr_casecmp ();
    0x000378cc lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x000378d0 beqz v0, 0x37860              |         
                                             |     } while (v0 == 0);
                                             | label_22:
    0x000378d4 lw s0, 0x10(s0)               |     s0 = *((s0 + 4));
    0x000378d8 lw t9, -0x7e28(gp)            |     t9 = sym.ap_cstr_casecmp;
    0x000378dc move a1, s4                   |     a1 = s4;
                                             |     if (s0 != 0) {
    0x000378e0 bnez s0, 0x378c4              |         goto label_4;
                                             |     }
    0x000378e4 lw s4, -0x7fac(gp)            |     s4 = *(gp);
    0x000378e8 lw s0, 0x24(s1)               |     s0 = *((s1 + 9));
                                             |     /* str._FilesMatch */
    0x000378ec addiu s4, s4, -0x3978         |     s4 += -0x3978;
    0x000378f0 b 0x37904                     |     goto label_23;
                                             | label_6:
    0x000378f4 lw a0, (s0)                   |     a0 = *(s0);
    0x000378f8 bal 0x21bb0                   |     sym_ap_cstr_casecmp ();
    0x000378fc lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 == 0) {
    0x00037900 beqz v0, 0x37860              |         goto label_5;
                                             |     }
                                             | label_23:
    0x00037904 lw s0, 0x10(s0)               |     s0 = *((s0 + 4));
    0x00037908 lw t9, -0x7e28(gp)            |     t9 = sym.ap_cstr_casecmp;
    0x0003790c move a1, s4                   |     a1 = s4;
                                             |     if (s0 != 0) {
    0x00037910 bnez s0, 0x378f4              |         goto label_6;
                                             |     }
    0x00037914 lw s4, -0x7fac(gp)            |     s4 = *(gp);
    0x00037918 lw s0, 0x24(s1)               |     s0 = *((s1 + 9));
                                             |     /* esilref: '<If' */
    0x0003791c addiu s4, s4, -0x396c         |     s4 += -0x396c;
    0x00037920 b 0x37934                     |     goto label_24;
                                             | label_7:
    0x00037924 lw a0, (s0)                   |     a0 = *(s0);
    0x00037928 bal 0x21bb0                   |     sym_ap_cstr_casecmp ();
    0x0003792c lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 == 0) {
    0x00037930 beqz v0, 0x37860              |         goto label_5;
                                             |     }
                                             | label_24:
    0x00037934 lw s0, 0x10(s0)               |     s0 = *((s0 + 4));
    0x00037938 lw t9, -0x7e28(gp)            |     t9 = sym.ap_cstr_casecmp;
    0x0003793c move a1, s4                   |     a1 = s4;
                                             |     if (s0 != 0) {
    0x00037940 bnez s0, 0x37924              |         goto label_7;
                                             |     }
    0x00037944 lw s4, -0x7fac(gp)            |     s4 = *(gp);
    0x00037948 lw s0, 0x24(s1)               |     s0 = *((s1 + 9));
                                             |     /* str._ElseIf */
    0x0003794c addiu s4, s4, -0x3968         |     s4 += -0x3968;
    0x00037950 b 0x37964                     |     goto label_25;
                                             | label_8:
    0x00037954 lw a0, (s0)                   |     a0 = *(s0);
    0x00037958 bal 0x21bb0                   |     sym_ap_cstr_casecmp ();
    0x0003795c lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 == 0) {
    0x00037960 beqz v0, 0x37860              |         goto label_5;
                                             |     }
                                             | label_25:
    0x00037964 lw s0, 0x10(s0)               |     s0 = *((s0 + 4));
    0x00037968 lw t9, -0x7e28(gp)            |     t9 = sym.ap_cstr_casecmp;
    0x0003796c move a1, s4                   |     a1 = s4;
                                             |     if (s0 != 0) {
    0x00037970 bnez s0, 0x37954              |         goto label_8;
                                             |     }
    0x00037974 lw s4, -0x7fac(gp)            |     s4 = *(gp);
    0x00037978 lw s0, 0x24(s1)               |     s0 = *((s1 + 9));
                                             |     /* str._Else */
    0x0003797c addiu s4, s4, -0x3960         |     s4 += -0x3960;
    0x00037980 b 0x37994                     |     goto label_26;
                                             | label_9:
    0x00037984 lw a0, (s0)                   |     a0 = *(s0);
    0x00037988 bal 0x21bb0                   |     sym_ap_cstr_casecmp ();
    0x0003798c lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 == 0) {
    0x00037990 beqz v0, 0x37860              |         goto label_5;
                                             |     }
                                             | label_26:
    0x00037994 lw s0, 0x10(s0)               |     s0 = *((s0 + 4));
    0x00037998 lw t9, -0x7e28(gp)            |     t9 = sym.ap_cstr_casecmp;
    0x0003799c move a1, s4                   |     a1 = s4;
                                             |     if (s0 != 0) {
    0x000379a0 bnez s0, 0x37984              |         goto label_9;
                                             |     }
    0x000379a4 andi s2, s2, 0x40             |     s2 &= 0x40;
    0x000379a8 b 0x37798                     |     goto label_10;
                                             | label_13:
    0x000379ac lw a3, -0x7fac(gp)            |     a3 = *(gp);
    0x000379b0 lw a0, 0x28(s1)               |     a0 = *((s1 + 10));
    0x000379b4 lw t9, -0x76e8(gp)            |     t9 = sym.imp.apr_pstrcat
    0x000379b8 move a2, s3                   |     a2 = s3;
    0x000379bc move a1, s0                   |     a1 = s0;
    0x000379c0 sw zero, 0x10(sp)             |     *(var_10h) = 0;
                                             |     /* str._cannot_occur_within__VirtualHost__section */
    0x000379c4 addiu a3, a3, -0x3a68         |     a3 += -0x3a68;
    0x000379c8 jalr t9                       |     t9 ();
    0x000379cc lw ra, 0x3c(sp)               |     ra = *(var_3ch);
    0x000379d0 lw s4, 0x38(sp)               |     s4 = *(var_38h);
    0x000379d4 lw s3, 0x34(sp)               |     s3 = *(var_34h);
    0x000379d8 lw s2, 0x30(sp)               |     s2 = *(var_30h);
    0x000379dc lw s1, 0x2c(sp)               |     s1 = *(var_2ch);
    0x000379e0 lw s0, 0x28(sp)               |     s0 = *(var_28h);
    0x000379e4 addiu sp, sp, 0x40            |     
    0x000379e8 jr ra                         |     return v0;
                                             | label_14:
    0x000379ec lw a0, 0x28(s1)               |     a0 = *((s1 + 10));
    0x000379f0 lw t9, -0x76e8(gp)            |     t9 = sym.imp.apr_pstrcat
    0x000379f4 move a2, s3                   |     a2 = s3;
    0x000379f8 move a1, s0                   |     a1 = s0;
    0x000379fc sw zero, 0x10(sp)             |     *(var_10h) = 0;
                                             |     /* str._cannot_occur_within__Limit__or__LimitExcept__section */
    0x00037a00 addiu a3, a3, -0x3a3c         |     a3 += -0x3a3c;
    0x00037a04 jalr t9                       |     t9 ();
    0x00037a08 lw ra, 0x3c(sp)               |     ra = *(var_3ch);
    0x00037a0c lw s4, 0x38(sp)               |     s4 = *(var_38h);
    0x00037a10 lw s3, 0x34(sp)               |     s3 = *(var_34h);
    0x00037a14 lw s2, 0x30(sp)               |     s2 = *(var_30h);
    0x00037a18 lw s1, 0x2c(sp)               |     s1 = *(var_2ch);
    0x00037a1c lw s0, 0x28(sp)               |     s0 = *(var_28h);
    0x00037a20 addiu sp, sp, 0x40            |     
    0x00037a24 jr ra                         |     return v0;
                                             | label_21:
    0x00037a28 lw t9, -0x76e8(gp)            |     t9 = sym.imp.apr_pstrcat
    0x00037a2c lw a0, 0x28(s1)               |     a0 = *((s1 + 10));
                                             |     /* str._cannot_occur_within_directory_context */
    0x00037a30 addiu a3, a3, -0x39e0         |     a3 += -0x39e0;
    0x00037a34 sw zero, 0x10(sp)             |     *(var_10h) = 0;
    0x00037a38 move a2, s3                   |     a2 = s3;
    0x00037a3c move a1, s0                   |     a1 = s0;
    0x00037a40 jalr t9                       |     t9 ();
    0x00037a44 lw ra, 0x3c(sp)               |     ra = *(var_3ch);
    0x00037a48 b 0x3789c                     |     goto label_11;
                                             | label_15:
    0x00037a4c lw t9, -0x76e8(gp)            |     t9 = sym.imp.apr_pstrcat
    0x00037a50 sw zero, 0x10(sp)             |     *(var_10h) = 0;
                                             |     /* str._cannot_occur_within_htaccess_files */
    0x00037a54 addiu a3, a3, -0x3a04         |     a3 += -0x3a04;
    0x00037a58 move a2, s3                   |     a2 = s3;
    0x00037a5c move a1, s0                   |     a1 = s0;
    0x00037a60 jalr t9                       |     t9 ();
    0x00037a64 lw ra, 0x3c(sp)               |     ra = *(var_3ch);
    0x00037a68 b 0x3789c                     |     goto label_11;
                                             | }
    ; assembly                           | /* r2dec pseudo code output */
                                         | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x3748c */
                                         | #include <stdint.h>
                                         |  
    ; (fcn) sym.ap_construct_url ()      | void ap_construct_url () {
    0x0003748c lui gp, 7                 |     
    0x00037490 addiu gp, gp, -0x456c     |     
    0x00037494 addu gp, gp, t9           |     gp += t9;
    0x00037498 addiu sp, sp, -0x38       |     
    0x0003749c lw t9, -0x7bd0(gp)        |     t9 = sym.ap_get_server_port;
    0x000374a0 sw ra, 0x34(sp)           |     *(var_34h) = ra;
    0x000374a4 sw gp, 0x18(sp)           |     *(var_18h) = gp;
    0x000374a8 sw s4, 0x30(sp)           |     *(var_30h) = s4;
    0x000374ac sw s3, 0x2c(sp)           |     *(var_2ch) = s3;
    0x000374b0 sw s2, 0x28(sp)           |     *(var_28h) = s2;
    0x000374b4 sw s1, 0x24(sp)           |     *(var_24h) = s1;
    0x000374b8 sw s0, 0x20(sp)           |     *(var_20h) = s0;
    0x000374bc move s2, a0               |     s2 = a0;
    0x000374c0 move a0, a2               |     a0 = a2;
    0x000374c4 move s0, a2               |     s0 = a2;
    0x000374c8 move s4, a1               |     s4 = a1;
    0x000374cc bal 0x373d0               |     sym_ap_get_server_port ();
    0x000374d0 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x000374d4 move a0, s0               |     a0 = s0;
    0x000374d8 lw t9, -0x7bcc(gp)        |     t9 = sym.ap_get_server_name_for_url;
    0x000374dc move s1, v0               |     s1 = v0;
    0x000374e0 bal 0x37344               |     sym_ap_get_server_name_for_url ();
    0x000374e4 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x000374e8 move a0, s0               |     a0 = s0;
    0x000374ec lw t9, -0x7ed0(gp)        |     t9 = sym.ap_run_default_port;
    0x000374f0 move s3, v0               |     s3 = v0;
    0x000374f4 bal 0x2e13c               |     sym_ap_run_default_port ();
    0x000374f8 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x000374fc move a0, s0               |     a0 = s0;
    0x00037500 lw t9, -0x7d90(gp)        |     t9 = sym.ap_run_http_scheme;
                                         |     if (s1 != v0) {
    0x00037504 beq s1, v0, 0x37558       |         
    0x00037508 bal 0x2c228               |         sym_ap_run_http_scheme ();
    0x0003750c nop                       |         
    0x00037510 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x00037514 sw s4, 0x14(sp)           |         *(var_14h) = s4;
    0x00037518 sw s1, 0x10(sp)           |         *(var_10h) = s1;
    0x0003751c lw a1, -0x7fac(gp)        |         a1 = *(gp);
    0x00037520 lw t9, -0x7540(gp)        |         t9 = sym.imp.apr_psprintf;
    0x00037524 move a3, s3               |         a3 = s3;
    0x00037528 move a0, s2               |         a0 = s2;
    0x0003752c move a2, v0               |         a2 = v0;
                                         |         /* str._s:___s:_u_s */
    0x00037530 addiu a1, a1, -0x3a78     |         a1 += -0x3a78;
    0x00037534 jalr t9                   |         t9 ();
    0x00037538 lw ra, 0x34(sp)           |         ra = *(var_34h);
    0x0003753c lw s4, 0x30(sp)           |         s4 = *(var_30h);
    0x00037540 lw s3, 0x2c(sp)           |         s3 = *(var_2ch);
    0x00037544 lw s2, 0x28(sp)           |         s2 = *(var_28h);
    0x00037548 lw s1, 0x24(sp)           |         s1 = *(var_24h);
    0x0003754c lw s0, 0x20(sp)           |         s0 = *(var_20h);
    0x00037550 addiu sp, sp, 0x38        |         
    0x00037554 jr ra                     |         return;
                                         |     }
    0x00037558 bal 0x2c228               |     sym_ap_run_http_scheme ();
    0x0003755c nop                       |     
    0x00037560 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00037564 sw s4, 0x10(sp)           |     *(var_10h) = s4;
    0x00037568 move a3, s3               |     a3 = s3;
    0x0003756c lw a2, -0x7fac(gp)        |     a2 = *(gp);
    0x00037570 lw t9, -0x76e8(gp)        |     t9 = sym.imp.apr_pstrcat
    0x00037574 move a0, s2               |     a0 = s2;
    0x00037578 sw zero, 0x14(sp)         |     *(var_14h) = 0;
                                         |     /* esilref: '://' */
    0x0003757c addiu a2, a2, -0x3a7c     |     a2 += -0x3a7c;
    0x00037580 move a1, v0               |     a1 = v0;
    0x00037584 jalr t9                   |     t9 ();
    0x00037588 lw ra, 0x34(sp)           |     ra = *(var_34h);
    0x0003758c lw s4, 0x30(sp)           |     s4 = *(var_30h);
    0x00037590 lw s3, 0x2c(sp)           |     s3 = *(var_2ch);
    0x00037594 lw s2, 0x28(sp)           |     s2 = *(var_28h);
    0x00037598 lw s1, 0x24(sp)           |     s1 = *(var_24h);
    0x0003759c lw s0, 0x20(sp)           |     s0 = *(var_20h);
    0x000375a0 addiu sp, sp, 0x38        |     
    0x000375a4 jr ra                     |     return;
                                         | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x5e65c */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.ap_cookie_remove ()          | void ap_cookie_remove () {
    0x0005e65c lui gp, 4                     |     
    0x0005e660 addiu gp, gp, 0x48c4          |     
    0x0005e664 addu gp, gp, t9               |     gp += t9;
    0x0005e668 addiu sp, sp, -0x50           |     
    0x0005e66c sw s3, 0x48(sp)               |     *(var_48h_3) = s3;
    0x0005e670 lw s3, -0x7534(gp)            |     s3 = *(gp);
    0x0005e674 sw gp, 0x28(sp)               |     *(var_28h_3) = gp;
    0x0005e678 sw s0, 0x3c(sp)               |     *(var_3ch_3) = s0;
    0x0005e67c lw v0, (s3)                   |     v0 = *(s3);
    0x0005e680 sw a3, 0x5c(sp)               |     *(var_5ch) = a3;
    0x0005e684 move s0, a0                   |     s0 = a0;
    0x0005e688 sw ra, 0x4c(sp)               |     *(var_4ch_3) = ra;
    0x0005e68c sw s2, 0x44(sp)               |     *(var_44h_3) = s2;
    0x0005e690 sw s1, 0x40(sp)               |     *(var_40h_3) = s1;
    0x0005e694 sw v0, 0x34(sp)               |     *(var_34h_3) = v0;
    0x0005e698 lw a0, (a0)                   |     a0 = *(a0);
                                             |     if (a2 == 0) {
    0x0005e69c beqz a2, 0x5e7c0              |         goto label_3;
                                             |     }
                                             | label_2:
    0x0005e6a0 move a3, a2                   |     a3 = a2;
    0x0005e6a4 lw a2, -0x7fac(gp)            |     a2 = *(gp);
    0x0005e6a8 lw t9, -0x76e8(gp)            |     t9 = sym.imp.apr_pstrcat
    0x0005e6ac sw zero, 0x10(sp)             |     *(var_10h_3) = 0;
                                             |     /* str._Max_Age0_ */
    0x0005e6b0 addiu a2, a2, 0x2968          |     a2 += aav.0x00002968;
    0x0005e6b4 jalr t9                       |     t9 ();
    0x0005e6b8 lw v1, 0x108(s0)              |     v1 = *(s0);
    0x0005e6bc lw gp, 0x28(sp)               |     gp = *(var_28h_3);
    0x0005e6c0 move s2, v0                   |     s2 = v0;
                                             |     if (v1 == 0) {
    0x0005e6c4 beqz v1, 0x5e7a4              |         goto label_4;
                                             |     }
                                             | label_1:
    0x0005e6c8 lw v0, (v1)                   |     v0 = *(v1);
                                             |     if (v0 == 0) {
                                             | label_0:
    0x0005e6cc beql v0, zero, 0x5e734        |         goto label_5;
                                             |     }
    0x0005e6d0 lw v0, 4(v1)                  |     v0 = *((v1 + 1));
    0x0005e6d4 lb v0, (v0)                   |     v0 = *(v0);
    0x0005e6d8 slti v0, v0, 7                |     v0 = (v0 < 7) ? 1 : 0;
                                             |     if (v0 < 0) {
    0x0005e6dc bltz v0, 0x5e730              |         goto label_6;
                                             |     }
    0x0005e6e0 xori v0, v0, 1                |     v0 ^= 1;
                                             |     if (v0 == 0) {
    0x0005e6e4 beql v0, zero, 0x5e748        |         goto label_7;
                                             |     }
    0x0005e6e8 lw s1, -0x7fac(gp)            |     s1 = *(gp);
    0x0005e6ec lw v0, 0xd8(s0)               |     v0 = *((s0 + 54));
                                             |     do {
    0x0005e6f0 lw a0, -0x7fac(gp)            |         a0 = *(gp);
    0x0005e6f4 sw v0, 0x1c(sp)               |         *(var_1ch_3) = v0;
    0x0005e6f8 lw v0, -0x7fac(gp)            |         v0 = *(gp);
    0x0005e6fc lw t9, -0x7f08(gp)            |         t9 = sym.ap_log_rerror_;
                                             |         /* str.AH00009:_ap_cookie:_user__s_removed_cookie:__s */
    0x0005e700 addiu v0, v0, 0x2978          |         v0 += 0x2978;
    0x0005e704 sw s2, 0x20(sp)               |         *(var_20h_3) = s2;
    0x0005e708 sw v0, 0x18(sp)               |         *(var_18h_3) = v0;
    0x0005e70c sw s0, 0x14(sp)               |         *(var_14h_3) = s0;
    0x0005e710 sw zero, 0x10(sp)             |         *(var_10h_3) = 0;
    0x0005e714 addiu a3, zero, 7             |         a3 = 7;
    0x0005e718 move a2, zero                 |         a2 = 0;
    0x0005e71c addiu a1, zero, 0x81          |         a1 = 0x81;
                                             |         /* str._usr_src_debug_apache2_2.4.57_r0_httpd_2.4.57_server_util_cookies.c */
    0x0005e720 addiu a0, a0, 0x28b8          |         a0 += aav.0x000028b8;
    0x0005e724 bal 0x530a8                   |         sym_ap_log_rerror_ ();
    0x0005e728 lw gp, 0x28(sp)               |         gp = *(var_28h_3);
    0x0005e72c b 0x5e744                     |         goto label_8;
                                             | label_6:
    0x0005e730 lw v0, 4(v1)                  |         v0 = *((v1 + 1));
                                             | label_5:
    0x0005e734 slti v0, v0, 7                |         v0 = (v0 < 7) ? 1 : 0;
    0x0005e738 xori v0, v0, 1                |         v0 ^= 1;
    0x0005e73c lw v0, 0xd8(s0)               |         v0 = *((s0 + 54));
    0x0005e740 bnel v0, zero, 0x5e6f0        |         
                                             |     } while (v0 == 0);
                                             | label_8:
    0x0005e744 lw s1, -0x7fac(gp)            |     s1 = *(gp);
                                             | label_7:
    0x0005e748 addiu s0, sp, 0x5c            |     s0 = sp + 0x5c;
                                             |     /* str.Set_Cookie */
    0x0005e74c addiu s1, s1, 0x165c          |     s1 += 0x165c;
    0x0005e750 b 0x5e768                     |     
                                             |     while (a0 != 0) {
    0x0005e754 lw t9, -0x777c(gp)            |         t9 = sym.imp.apr_table_addn;
    0x0005e758 move a2, s2                   |         a2 = s2;
    0x0005e75c move a1, s1                   |         a1 = s1;
    0x0005e760 jalr t9                       |         t9 ();
    0x0005e764 lw gp, 0x28(sp)               |         gp = *(var_28h_3);
    0x0005e768 addiu s0, s0, 4               |         s0 += 4;
    0x0005e76c lw a0, -4(s0)                 |         a0 = *((s0 - 1));
    0x0005e770 sw s0, 0x30(sp)               |         *(var_30h_3) = s0;
    0x0005e774 bnez a0, 0x5e754              |         
                                             |     }
    0x0005e778 lw a0, 0x34(sp)               |     a0 = *(var_34h_3);
    0x0005e77c lw v1, (s3)                   |     v1 = *(s3);
    0x0005e780 move v0, zero                 |     v0 = 0;
                                             |     if (a0 != v1) {
    0x0005e784 bne a0, v1, 0x5e7cc           |         goto label_9;
                                             |     }
    0x0005e788 lw ra, 0x4c(sp)               |     ra = *(var_4ch_3);
    0x0005e78c lw s3, 0x48(sp)               |     s3 = *(var_48h_3);
    0x0005e790 lw s2, 0x44(sp)               |     s2 = *(var_44h_3);
    0x0005e794 lw s1, 0x40(sp)               |     s1 = *(var_40h_3);
    0x0005e798 lw s0, 0x3c(sp)               |     s0 = *(var_3ch_3);
    0x0005e79c addiu sp, sp, 0x50            |     
    0x0005e7a0 jr ra                         |     return v1;
                                             | label_4:
    0x0005e7a4 lw v0, 4(s0)                  |     v0 = *((s0 + 1));
    0x0005e7a8 lw v1, 0x60(v0)               |     v1 = *((v0 + 24));
    0x0005e7ac lw v0, (v1)                   |     v0 = *(v1);
                                             |     if (v1 == 0) {
    0x0005e7b0 bnel v1, zero, 0x5e6cc        |         goto label_0;
                                             |     }
    0x0005e7b4 lw v1, 8(s0)                  |     v1 = *((s0 + 2));
    0x0005e7b8 addiu v1, v1, 0x10            |     v1 += 0x10;
    0x0005e7bc b 0x5e6c8                     |     goto label_1;
                                             | label_3:
    0x0005e7c0 lw a2, -0x7fac(gp)            |     a2 = *(gp);
                                             |     /* esilref: 'Version=1' */
    0x0005e7c4 addiu a2, a2, 0x28a0          |     a2 += 0x28a0;
    0x0005e7c8 b 0x5e6a0                     |     goto label_2;
                                             | label_9:
    0x0005e7cc lw t9, -0x75e8(gp)            |     t9 = sym.imp.__stack_chk_fail;
    0x0005e7d0 jalr t9                       |     t9 ();
    0x0005e7d4 nop                           |     
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x5e7d8 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.ap_cookie_remove2 ()         | void ap_cookie_remove2 () {
    0x0005e7d8 lui gp, 4                     |     
    0x0005e7dc addiu gp, gp, 0x4748          |     
    0x0005e7e0 addu gp, gp, t9               |     gp += t9;
    0x0005e7e4 addiu sp, sp, -0x50           |     
    0x0005e7e8 sw s3, 0x48(sp)               |     *(var_48h_4) = s3;
    0x0005e7ec lw s3, -0x7534(gp)            |     s3 = *(gp);
    0x0005e7f0 sw gp, 0x28(sp)               |     *(var_28h_4) = gp;
    0x0005e7f4 sw s0, 0x3c(sp)               |     *(var_3ch_4) = s0;
    0x0005e7f8 lw v0, (s3)                   |     v0 = *(s3);
    0x0005e7fc sw a3, 0x5c(sp)               |     *(var_5ch_2) = a3;
    0x0005e800 move s0, a0                   |     s0 = a0;
    0x0005e804 sw ra, 0x4c(sp)               |     *(var_4ch_4) = ra;
    0x0005e808 sw s2, 0x44(sp)               |     *(var_44h_4) = s2;
    0x0005e80c sw s1, 0x40(sp)               |     *(var_40h_4) = s1;
    0x0005e810 sw v0, 0x34(sp)               |     *(var_34h_4) = v0;
    0x0005e814 lw a0, (a0)                   |     a0 = *(a0);
                                             |     if (a2 == 0) {
    0x0005e818 beqz a2, 0x5e93c              |         goto label_3;
                                             |     }
                                             | label_2:
    0x0005e81c move a3, a2                   |     a3 = a2;
    0x0005e820 lw a2, -0x7fac(gp)            |     a2 = *(gp);
    0x0005e824 lw t9, -0x76e8(gp)            |     t9 = sym.imp.apr_pstrcat
    0x0005e828 sw zero, 0x10(sp)             |     *(var_10h_4) = 0;
                                             |     /* str._Max_Age0_ */
    0x0005e82c addiu a2, a2, 0x2968          |     a2 += aav.0x00002968;
    0x0005e830 jalr t9                       |     t9 ();
    0x0005e834 lw v1, 0x108(s0)              |     v1 = *(s0);
    0x0005e838 lw gp, 0x28(sp)               |     gp = *(var_28h_4);
    0x0005e83c move s2, v0                   |     s2 = v0;
                                             |     if (v1 == 0) {
    0x0005e840 beqz v1, 0x5e920              |         goto label_4;
                                             |     }
                                             | label_1:
    0x0005e844 lw v0, (v1)                   |     v0 = *(v1);
                                             |     if (v0 == 0) {
                                             | label_0:
    0x0005e848 beql v0, zero, 0x5e8b0        |         goto label_5;
                                             |     }
    0x0005e84c lw v0, 4(v1)                  |     v0 = *((v1 + 1));
    0x0005e850 lb v0, (v0)                   |     v0 = *(v0);
    0x0005e854 slti v0, v0, 7                |     v0 = (v0 < 7) ? 1 : 0;
                                             |     if (v0 < 0) {
    0x0005e858 bltz v0, 0x5e8ac              |         goto label_6;
                                             |     }
    0x0005e85c xori v0, v0, 1                |     v0 ^= 1;
                                             |     if (v0 == 0) {
    0x0005e860 beql v0, zero, 0x5e8c4        |         goto label_7;
                                             |     }
    0x0005e864 lw s1, -0x7fac(gp)            |     s1 = *(gp);
    0x0005e868 lw v0, 0xd8(s0)               |     v0 = *((s0 + 54));
                                             |     do {
    0x0005e86c lw a0, -0x7fac(gp)            |         a0 = *(gp);
    0x0005e870 sw v0, 0x1c(sp)               |         *(var_1ch_4) = v0;
    0x0005e874 lw v0, -0x7fac(gp)            |         v0 = *(gp);
    0x0005e878 lw t9, -0x7f08(gp)            |         t9 = sym.ap_log_rerror_;
                                             |         /* str.AH00010:_ap_cookie:_user__s_removed_cookie2:__s */
    0x0005e87c addiu v0, v0, 0x29ac          |         v0 += 0x29ac;
    0x0005e880 sw s2, 0x20(sp)               |         *(var_20h_4) = s2;
    0x0005e884 sw v0, 0x18(sp)               |         *(var_18h_4) = v0;
    0x0005e888 sw s0, 0x14(sp)               |         *(var_14h_4) = s0;
    0x0005e88c sw zero, 0x10(sp)             |         *(var_10h_4) = 0;
    0x0005e890 addiu a3, zero, 7             |         a3 = 7;
    0x0005e894 move a2, zero                 |         a2 = 0;
    0x0005e898 addiu a1, zero, 0x9d          |         a1 = 0x9d;
                                             |         /* str._usr_src_debug_apache2_2.4.57_r0_httpd_2.4.57_server_util_cookies.c */
    0x0005e89c addiu a0, a0, 0x28b8          |         a0 += aav.0x000028b8;
    0x0005e8a0 bal 0x530a8                   |         sym_ap_log_rerror_ ();
    0x0005e8a4 lw gp, 0x28(sp)               |         gp = *(var_28h_4);
    0x0005e8a8 b 0x5e8c0                     |         goto label_8;
                                             | label_6:
    0x0005e8ac lw v0, 4(v1)                  |         v0 = *((v1 + 1));
                                             | label_5:
    0x0005e8b0 slti v0, v0, 7                |         v0 = (v0 < 7) ? 1 : 0;
    0x0005e8b4 xori v0, v0, 1                |         v0 ^= 1;
    0x0005e8b8 lw v0, 0xd8(s0)               |         v0 = *((s0 + 54));
    0x0005e8bc bnel v0, zero, 0x5e86c        |         
                                             |     } while (v0 == 0);
                                             | label_8:
    0x0005e8c0 lw s1, -0x7fac(gp)            |     s1 = *(gp);
                                             | label_7:
    0x0005e8c4 addiu s0, sp, 0x5c            |     s0 = sp + 0x5c;
                                             |     /* str.Set_Cookie2 */
    0x0005e8c8 addiu s1, s1, 0x295c          |     s1 += 0x295c;
    0x0005e8cc b 0x5e8e4                     |     
                                             |     while (a0 != 0) {
    0x0005e8d0 lw t9, -0x777c(gp)            |         t9 = sym.imp.apr_table_addn;
    0x0005e8d4 move a2, s2                   |         a2 = s2;
    0x0005e8d8 move a1, s1                   |         a1 = s1;
    0x0005e8dc jalr t9                       |         t9 ();
    0x0005e8e0 lw gp, 0x28(sp)               |         gp = *(var_28h_4);
    0x0005e8e4 addiu s0, s0, 4               |         s0 += 4;
    0x0005e8e8 lw a0, -4(s0)                 |         a0 = *((s0 - 1));
    0x0005e8ec sw s0, 0x30(sp)               |         *(var_30h_4) = s0;
    0x0005e8f0 bnez a0, 0x5e8d0              |         
                                             |     }
    0x0005e8f4 lw a0, 0x34(sp)               |     a0 = *(var_34h_4);
    0x0005e8f8 lw v1, (s3)                   |     v1 = *(s3);
    0x0005e8fc move v0, zero                 |     v0 = 0;
                                             |     if (a0 != v1) {
    0x0005e900 bne a0, v1, 0x5e948           |         goto label_9;
                                             |     }
    0x0005e904 lw ra, 0x4c(sp)               |     ra = *(var_4ch_4);
    0x0005e908 lw s3, 0x48(sp)               |     s3 = *(var_48h_4);
    0x0005e90c lw s2, 0x44(sp)               |     s2 = *(var_44h_4);
    0x0005e910 lw s1, 0x40(sp)               |     s1 = *(var_40h_4);
    0x0005e914 lw s0, 0x3c(sp)               |     s0 = *(var_3ch_4);
    0x0005e918 addiu sp, sp, 0x50            |     
    0x0005e91c jr ra                         |     return v1;
                                             | label_4:
    0x0005e920 lw v0, 4(s0)                  |     v0 = *((s0 + 1));
    0x0005e924 lw v1, 0x60(v0)               |     v1 = *((v0 + 24));
    0x0005e928 lw v0, (v1)                   |     v0 = *(v1);
                                             |     if (v1 == 0) {
    0x0005e92c bnel v1, zero, 0x5e848        |         goto label_0;
                                             |     }
    0x0005e930 lw v1, 8(s0)                  |     v1 = *((s0 + 2));
    0x0005e934 addiu v1, v1, 0x10            |     v1 += 0x10;
    0x0005e938 b 0x5e844                     |     goto label_1;
                                             | label_3:
    0x0005e93c lw a2, -0x7fac(gp)            |     a2 = *(gp);
                                             |     /* esilref: 'Version=1' */
    0x0005e940 addiu a2, a2, 0x28a0          |     a2 += 0x28a0;
    0x0005e944 b 0x5e81c                     |     goto label_2;
                                             | label_9:
    0x0005e948 lw t9, -0x75e8(gp)            |     t9 = sym.imp.__stack_chk_fail;
    0x0005e94c jalr t9                       |     t9 ();
    0x0005e950 nop                           |     
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x5e7d8 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.ap_cookie_remove2 ()         | void ap_cookie_remove2 () {
    0x0005e7d8 lui gp, 4                     |     
    0x0005e7dc addiu gp, gp, 0x4748          |     
    0x0005e7e0 addu gp, gp, t9               |     gp += t9;
    0x0005e7e4 addiu sp, sp, -0x50           |     
    0x0005e7e8 sw s3, 0x48(sp)               |     *(var_48h_4) = s3;
    0x0005e7ec lw s3, -0x7534(gp)            |     s3 = *(gp);
    0x0005e7f0 sw gp, 0x28(sp)               |     *(var_28h_4) = gp;
    0x0005e7f4 sw s0, 0x3c(sp)               |     *(var_3ch_4) = s0;
    0x0005e7f8 lw v0, (s3)                   |     v0 = *(s3);
    0x0005e7fc sw a3, 0x5c(sp)               |     *(var_5ch_2) = a3;
    0x0005e800 move s0, a0                   |     s0 = a0;
    0x0005e804 sw ra, 0x4c(sp)               |     *(var_4ch_4) = ra;
    0x0005e808 sw s2, 0x44(sp)               |     *(var_44h_4) = s2;
    0x0005e80c sw s1, 0x40(sp)               |     *(var_40h_4) = s1;
    0x0005e810 sw v0, 0x34(sp)               |     *(var_34h_4) = v0;
    0x0005e814 lw a0, (a0)                   |     a0 = *(a0);
                                             |     if (a2 == 0) {
    0x0005e818 beqz a2, 0x5e93c              |         goto label_3;
                                             |     }
                                             | label_2:
    0x0005e81c move a3, a2                   |     a3 = a2;
    0x0005e820 lw a2, -0x7fac(gp)            |     a2 = *(gp);
    0x0005e824 lw t9, -0x76e8(gp)            |     t9 = sym.imp.apr_pstrcat
    0x0005e828 sw zero, 0x10(sp)             |     *(var_10h_4) = 0;
                                             |     /* str._Max_Age0_ */
    0x0005e82c addiu a2, a2, 0x2968          |     a2 += aav.0x00002968;
    0x0005e830 jalr t9                       |     t9 ();
    0x0005e834 lw v1, 0x108(s0)              |     v1 = *(s0);
    0x0005e838 lw gp, 0x28(sp)               |     gp = *(var_28h_4);
    0x0005e83c move s2, v0                   |     s2 = v0;
                                             |     if (v1 == 0) {
    0x0005e840 beqz v1, 0x5e920              |         goto label_4;
                                             |     }
                                             | label_1:
    0x0005e844 lw v0, (v1)                   |     v0 = *(v1);
                                             |     if (v0 == 0) {
                                             | label_0:
    0x0005e848 beql v0, zero, 0x5e8b0        |         goto label_5;
                                             |     }
    0x0005e84c lw v0, 4(v1)                  |     v0 = *((v1 + 1));
    0x0005e850 lb v0, (v0)                   |     v0 = *(v0);
    0x0005e854 slti v0, v0, 7                |     v0 = (v0 < 7) ? 1 : 0;
                                             |     if (v0 < 0) {
    0x0005e858 bltz v0, 0x5e8ac              |         goto label_6;
                                             |     }
    0x0005e85c xori v0, v0, 1                |     v0 ^= 1;
                                             |     if (v0 == 0) {
    0x0005e860 beql v0, zero, 0x5e8c4        |         goto label_7;
                                             |     }
    0x0005e864 lw s1, -0x7fac(gp)            |     s1 = *(gp);
    0x0005e868 lw v0, 0xd8(s0)               |     v0 = *((s0 + 54));
                                             |     do {
    0x0005e86c lw a0, -0x7fac(gp)            |         a0 = *(gp);
    0x0005e870 sw v0, 0x1c(sp)               |         *(var_1ch_4) = v0;
    0x0005e874 lw v0, -0x7fac(gp)            |         v0 = *(gp);
    0x0005e878 lw t9, -0x7f08(gp)            |         t9 = sym.ap_log_rerror_;
                                             |         /* str.AH00010:_ap_cookie:_user__s_removed_cookie2:__s */
    0x0005e87c addiu v0, v0, 0x29ac          |         v0 += 0x29ac;
    0x0005e880 sw s2, 0x20(sp)               |         *(var_20h_4) = s2;
    0x0005e884 sw v0, 0x18(sp)               |         *(var_18h_4) = v0;
    0x0005e888 sw s0, 0x14(sp)               |         *(var_14h_4) = s0;
    0x0005e88c sw zero, 0x10(sp)             |         *(var_10h_4) = 0;
    0x0005e890 addiu a3, zero, 7             |         a3 = 7;
    0x0005e894 move a2, zero                 |         a2 = 0;
    0x0005e898 addiu a1, zero, 0x9d          |         a1 = 0x9d;
                                             |         /* str._usr_src_debug_apache2_2.4.57_r0_httpd_2.4.57_server_util_cookies.c */
    0x0005e89c addiu a0, a0, 0x28b8          |         a0 += aav.0x000028b8;
    0x0005e8a0 bal 0x530a8                   |         sym_ap_log_rerror_ ();
    0x0005e8a4 lw gp, 0x28(sp)               |         gp = *(var_28h_4);
    0x0005e8a8 b 0x5e8c0                     |         goto label_8;
                                             | label_6:
    0x0005e8ac lw v0, 4(v1)                  |         v0 = *((v1 + 1));
                                             | label_5:
    0x0005e8b0 slti v0, v0, 7                |         v0 = (v0 < 7) ? 1 : 0;
    0x0005e8b4 xori v0, v0, 1                |         v0 ^= 1;
    0x0005e8b8 lw v0, 0xd8(s0)               |         v0 = *((s0 + 54));
    0x0005e8bc bnel v0, zero, 0x5e86c        |         
                                             |     } while (v0 == 0);
                                             | label_8:
    0x0005e8c0 lw s1, -0x7fac(gp)            |     s1 = *(gp);
                                             | label_7:
    0x0005e8c4 addiu s0, sp, 0x5c            |     s0 = sp + 0x5c;
                                             |     /* str.Set_Cookie2 */
    0x0005e8c8 addiu s1, s1, 0x295c          |     s1 += 0x295c;
    0x0005e8cc b 0x5e8e4                     |     
                                             |     while (a0 != 0) {
    0x0005e8d0 lw t9, -0x777c(gp)            |         t9 = sym.imp.apr_table_addn;
    0x0005e8d4 move a2, s2                   |         a2 = s2;
    0x0005e8d8 move a1, s1                   |         a1 = s1;
    0x0005e8dc jalr t9                       |         t9 ();
    0x0005e8e0 lw gp, 0x28(sp)               |         gp = *(var_28h_4);
    0x0005e8e4 addiu s0, s0, 4               |         s0 += 4;
    0x0005e8e8 lw a0, -4(s0)                 |         a0 = *((s0 - 1));
    0x0005e8ec sw s0, 0x30(sp)               |         *(var_30h_4) = s0;
    0x0005e8f0 bnez a0, 0x5e8d0              |         
                                             |     }
    0x0005e8f4 lw a0, 0x34(sp)               |     a0 = *(var_34h_4);
    0x0005e8f8 lw v1, (s3)                   |     v1 = *(s3);
    0x0005e8fc move v0, zero                 |     v0 = 0;
                                             |     if (a0 != v1) {
    0x0005e900 bne a0, v1, 0x5e948           |         goto label_9;
                                             |     }
    0x0005e904 lw ra, 0x4c(sp)               |     ra = *(var_4ch_4);
    0x0005e908 lw s3, 0x48(sp)               |     s3 = *(var_48h_4);
    0x0005e90c lw s2, 0x44(sp)               |     s2 = *(var_44h_4);
    0x0005e910 lw s1, 0x40(sp)               |     s1 = *(var_40h_4);
    0x0005e914 lw s0, 0x3c(sp)               |     s0 = *(var_3ch_4);
    0x0005e918 addiu sp, sp, 0x50            |     
    0x0005e91c jr ra                         |     return v1;
                                             | label_4:
    0x0005e920 lw v0, 4(s0)                  |     v0 = *((s0 + 1));
    0x0005e924 lw v1, 0x60(v0)               |     v1 = *((v0 + 24));
    0x0005e928 lw v0, (v1)                   |     v0 = *(v1);
                                             |     if (v1 == 0) {
    0x0005e92c bnel v1, zero, 0x5e848        |         goto label_0;
                                             |     }
    0x0005e930 lw v1, 8(s0)                  |     v1 = *((s0 + 2));
    0x0005e934 addiu v1, v1, 0x10            |     v1 += 0x10;
    0x0005e938 b 0x5e844                     |     goto label_1;
                                             | label_3:
    0x0005e93c lw a2, -0x7fac(gp)            |     a2 = *(gp);
                                             |     /* esilref: 'Version=1' */
    0x0005e940 addiu a2, a2, 0x28a0          |     a2 += 0x28a0;
    0x0005e944 b 0x5e81c                     |     goto label_2;
                                             | label_9:
    0x0005e948 lw t9, -0x75e8(gp)            |     t9 = sym.imp.__stack_chk_fail;
    0x0005e94c jalr t9                       |     t9 ();
    0x0005e950 nop                           |     
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x5e22c */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.ap_cookie_write ()           | void ap_cookie_write () {
    0x0005e22c lui gp, 4                     |     
    0x0005e230 addiu gp, gp, 0x4cf4          |     
    0x0005e234 addu gp, gp, t9               |     gp += t9;
    0x0005e238 addiu sp, sp, -0x58           |     
    0x0005e23c sw s3, 0x44(sp)               |     *(var_44h) = s3;
    0x0005e240 lw s3, -0x7534(gp)            |     s3 = *(gp);
    0x0005e244 lw v0, 0x68(sp)               |     v0 = *(arg_68h);
    0x0005e248 sw gp, 0x28(sp)               |     *(var_28h) = gp;
    0x0005e24c lw v1, (s3)                   |     v1 = *(s3);
    0x0005e250 sw s6, 0x50(sp)               |     *(var_50h) = s6;
    0x0005e254 sw s5, 0x4c(sp)               |     *(var_4ch) = s5;
    0x0005e258 sw s4, 0x48(sp)               |     *(var_48h) = s4;
    0x0005e25c sw s1, 0x3c(sp)               |     *(var_3ch) = s1;
    0x0005e260 sw s0, 0x38(sp)               |     *(var_38h) = s0;
    0x0005e264 sw ra, 0x54(sp)               |     *(var_54h) = ra;
    0x0005e268 sw s2, 0x40(sp)               |     *(var_40h) = s2;
    0x0005e26c move s1, a0                   |     s1 = a0;
    0x0005e270 move s5, a1                   |     s5 = a1;
    0x0005e274 move s6, a2                   |     s6 = a2;
    0x0005e278 move s0, a3                   |     s0 = a3;
    0x0005e27c sw v1, 0x34(sp)               |     *(var_34h) = v1;
    0x0005e280 lw s4, (a0)                   |     s4 = *(a0);
                                             |     if (v0 != 0) {
    0x0005e284 bnez v0, 0x5e3d8              |         goto label_4;
                                             |     }
    0x0005e288 lw v0, -0x7fac(gp)            |     v0 = *(gp);
    0x0005e28c lw s2, -0x7fac(gp)            |     s2 = *(gp);
    0x0005e290 addiu v0, v0, 0x47dc          |     v0 += 0x47dc;
                                             |     if (s0 == 0) {
                                             | label_1:
    0x0005e294 beql s0, zero, 0x5e350        |         goto label_5;
                                             |     }
    0x0005e298 lw s0, -0x7fac(gp)            |     s0 = *(gp);
    0x0005e29c lb v1, (s0)                   |     v1 = *(s0);
                                             |     if (v1 == 0) {
    0x0005e2a0 beql v1, zero, 0x5e350        |         goto label_5;
                                             |     }
    0x0005e2a4 lw s0, -0x7fac(gp)            |     s0 = *(gp);
                                             |     do {
    0x0005e2a8 lw a2, -0x7fac(gp)            |         a2 = *(gp);
    0x0005e2ac lw t9, -0x76e8(gp)            |         t9 = sym.imp.apr_pstrcat
    0x0005e2b0 addiu s2, s2, -0x6a0c         |         s2 += -aav.0x00006a0c;
    0x0005e2b4 sw s2, 0x10(sp)               |         *(var_10h) = s2;
    0x0005e2b8 sw zero, 0x1c(sp)             |         *(var_1ch) = 0;
    0x0005e2bc sw s0, 0x18(sp)               |         *(var_18h) = s0;
    0x0005e2c0 sw v0, 0x14(sp)               |         *(var_14h) = v0;
    0x0005e2c4 move a3, s6                   |         a3 = s6;
    0x0005e2c8 addiu a2, a2, 0x795c          |         a2 += 0x795c;
    0x0005e2cc move a1, s5                   |         a1 = s5;
    0x0005e2d0 move a0, s4                   |         a0 = s4;
    0x0005e2d4 jalr t9                       |         t9 ();
    0x0005e2d8 lw v1, 0x108(s1)              |         v1 = *(s1);
    0x0005e2dc lw gp, 0x28(sp)               |         gp = *(var_28h);
    0x0005e2e0 move s2, v0                   |         s2 = v0;
                                             |         if (v1 == 0) {
    0x0005e2e4 beqz v1, 0x5e41c              |             goto label_6;
                                             |         }
                                             | label_3:
    0x0005e2e8 lw v0, (v1)                   |         v0 = *(v1);
                                             |         if (v0 == 0) {
                                             | label_2:
    0x0005e2ec beql v0, zero, 0x5e35c        |             goto label_7;
                                             |         }
    0x0005e2f0 lw v0, 4(v1)                  |         v0 = *((v1 + 1));
    0x0005e2f4 lb v0, (v0)                   |         v0 = *(v0);
    0x0005e2f8 slti v0, v0, 7                |         v0 = (v0 < 7) ? 1 : 0;
                                             |         if (v0 < 0) {
    0x0005e2fc bltz v0, 0x5e358              |             goto label_8;
                                             |         }
    0x0005e300 xori v0, v0, 1                |         v0 ^= 1;
                                             |         if (v0 == 0) {
    0x0005e304 beql v0, zero, 0x5e370        |             goto label_9;
                                             |         }
    0x0005e308 lw s1, -0x7fac(gp)            |         s1 = *(gp);
    0x0005e30c lw v0, 0xd8(s1)               |         v0 = *((s1 + 54));
                                             | label_0:
    0x0005e310 lw a0, -0x7fac(gp)            |         a0 = *(gp);
    0x0005e314 sw v0, 0x1c(sp)               |         *(var_1ch) = v0;
    0x0005e318 lw v0, -0x7fac(gp)            |         v0 = *(gp);
    0x0005e31c lw t9, -0x7f08(gp)            |         t9 = sym.ap_log_rerror_;
                                             |         /* str.AH00007:_ap_cookie:_user__s_set_cookie:__s */
    0x0005e320 addiu v0, v0, 0x28fc          |         v0 += 0x28fc;
    0x0005e324 sw s2, 0x20(sp)               |         *(var_20h) = s2;
    0x0005e328 sw v0, 0x18(sp)               |         *(var_18h) = v0;
    0x0005e32c sw s1, 0x14(sp)               |         *(var_14h) = s1;
    0x0005e330 sw zero, 0x10(sp)             |         *(var_10h) = 0;
    0x0005e334 addiu a3, zero, 7             |         a3 = 7;
    0x0005e338 move a2, zero                 |         a2 = 0;
    0x0005e33c addiu a1, zero, 0x3b          |         a1 = 0x3b;
                                             |         /* str._usr_src_debug_apache2_2.4.57_r0_httpd_2.4.57_server_util_cookies.c */
    0x0005e340 addiu a0, a0, 0x28b8          |         a0 += aav.0x000028b8;
    0x0005e344 bal 0x530a8                   |         sym_ap_log_rerror_ ();
    0x0005e348 lw gp, 0x28(sp)               |         gp = *(var_28h);
    0x0005e34c b 0x5e36c                     |         goto label_10;
                                             |         /* str.HttpOnly_Secure_Version1 */
                                             | label_5:
    0x0005e350 addiu s0, s0, 0x2890          |         s0 += 0x2890;
    0x0005e354 b 0x5e2a8                     |         
                                             |     } while (1);
                                             | label_8:
    0x0005e358 lw v0, 4(v1)                  |     v0 = *((v1 + 1));
                                             | label_7:
    0x0005e35c slti v0, v0, 7                |     v0 = (v0 < 7) ? 1 : 0;
    0x0005e360 xori v0, v0, 1                |     v0 ^= 1;
    0x0005e364 lw v0, 0xd8(s1)               |     v0 = *((s1 + 54));
                                             |     if (v0 == 0) {
    0x0005e368 bnel v0, zero, 0x5e310        |         goto label_0;
                                             |     }
                                             | label_10:
    0x0005e36c lw s1, -0x7fac(gp)            |     s1 = *(gp);
                                             | label_9:
    0x0005e370 addiu s0, sp, 0x6c            |     s0 = sp + 0x6c;
                                             |     /* str.Set_Cookie */
    0x0005e374 addiu s1, s1, 0x165c          |     s1 += 0x165c;
    0x0005e378 b 0x5e390                     |     
                                             |     while (a0 != 0) {
    0x0005e37c lw t9, -0x777c(gp)            |         t9 = sym.imp.apr_table_addn;
    0x0005e380 move a2, s2                   |         a2 = s2;
    0x0005e384 move a1, s1                   |         a1 = s1;
    0x0005e388 jalr t9                       |         t9 ();
    0x0005e38c lw gp, 0x28(sp)               |         gp = *(var_28h);
    0x0005e390 addiu s0, s0, 4               |         s0 += 4;
    0x0005e394 lw a0, -4(s0)                 |         a0 = *((s0 - 1));
    0x0005e398 sw s0, 0x30(sp)               |         *(var_30h) = s0;
    0x0005e39c bnez a0, 0x5e37c              |         
                                             |     }
    0x0005e3a0 lw a0, 0x34(sp)               |     a0 = *(var_34h);
    0x0005e3a4 lw v1, (s3)                   |     v1 = *(s3);
    0x0005e3a8 move v0, zero                 |     v0 = 0;
                                             |     if (a0 != v1) {
    0x0005e3ac bne a0, v1, 0x5e438           |         goto label_11;
                                             |     }
    0x0005e3b0 lw ra, 0x54(sp)               |     ra = *(var_54h);
    0x0005e3b4 lw s6, 0x50(sp)               |     s6 = *(var_50h);
    0x0005e3b8 lw s5, 0x4c(sp)               |     s5 = *(var_4ch);
    0x0005e3bc lw s4, 0x48(sp)               |     s4 = *(var_48h);
    0x0005e3c0 lw s3, 0x44(sp)               |     s3 = *(var_44h);
    0x0005e3c4 lw s2, 0x40(sp)               |     s2 = *(var_40h);
    0x0005e3c8 lw s1, 0x3c(sp)               |     s1 = *(var_3ch);
    0x0005e3cc lw s0, 0x38(sp)               |     s0 = *(var_38h);
    0x0005e3d0 addiu sp, sp, 0x58            |     
    0x0005e3d4 jr ra                         |     return v1;
                                             | label_4:
    0x0005e3d8 lw t9, -0x72fc(gp)            |     t9 = sym.imp.apr_ltoa;
    0x0005e3dc move a0, s4                   |     a0 = s4;
    0x0005e3e0 move a1, v0                   |     a1 = v0;
    0x0005e3e4 jalr t9                       |     t9 ();
    0x0005e3e8 lw gp, 0x28(sp)               |     gp = *(var_28h);
    0x0005e3ec move a0, s4                   |     a0 = s4;
    0x0005e3f0 sw zero, 0x10(sp)             |     *(var_10h) = 0;
    0x0005e3f4 lw s2, -0x7fac(gp)            |     s2 = *(gp);
    0x0005e3f8 lw a1, -0x7fac(gp)            |     a1 = *(gp);
    0x0005e3fc lw t9, -0x76e8(gp)            |     t9 = sym.imp.apr_pstrcat
    0x0005e400 addiu a3, s2, -0x6a0c         |     a3 = s2 + -aav.0x00006a0c;
    0x0005e404 move a2, v0                   |     a2 = v0;
                                             |     /* str.Max_Age */
    0x0005e408 addiu a1, a1, 0x28ac          |     a1 += 0x28ac;
    0x0005e40c jalr t9                       |     t9 ();
    0x0005e410 lw gp, 0x28(sp)               |     gp = *(var_28h);
    0x0005e414 lw s4, (s1)                   |     s4 = *(s1);
    0x0005e418 b 0x5e294                     |     goto label_1;
                                             | label_6:
    0x0005e41c lw v0, 4(s1)                  |     v0 = *((s1 + 1));
    0x0005e420 lw v1, 0x60(v0)               |     v1 = *((v0 + 24));
    0x0005e424 lw v0, (v1)                   |     v0 = *(v1);
                                             |     if (v1 == 0) {
    0x0005e428 bnel v1, zero, 0x5e2ec        |         goto label_2;
                                             |     }
    0x0005e42c lw v1, 8(s1)                  |     v1 = *((s1 + 2));
    0x0005e430 addiu v1, v1, 0x10            |     v1 += 0x10;
    0x0005e434 b 0x5e2e8                     |     goto label_3;
                                             | label_11:
    0x0005e438 lw t9, -0x75e8(gp)            |     t9 = sym.imp.__stack_chk_fail;
    0x0005e43c jalr t9                       |     t9 ();
    0x0005e440 nop                           |     
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x5e444 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.ap_cookie_write2 ()          | void ap_cookie_write2 () {
    0x0005e444 lui gp, 4                     |     
    0x0005e448 addiu gp, gp, 0x4adc          |     
    0x0005e44c addu gp, gp, t9               |     gp += t9;
    0x0005e450 addiu sp, sp, -0x58           |     
    0x0005e454 sw s3, 0x44(sp)               |     *(var_44h_2) = s3;
    0x0005e458 lw s3, -0x7534(gp)            |     s3 = *(gp);
    0x0005e45c lw v0, 0x68(sp)               |     v0 = *(var_10h);
    0x0005e460 sw gp, 0x28(sp)               |     *(var_28h_2) = gp;
    0x0005e464 lw v1, (s3)                   |     v1 = *(s3);
    0x0005e468 sw s6, 0x50(sp)               |     *(var_50h_2) = s6;
    0x0005e46c sw s5, 0x4c(sp)               |     *(var_4ch_2) = s5;
    0x0005e470 sw s4, 0x48(sp)               |     *(var_48h_2) = s4;
    0x0005e474 sw s1, 0x3c(sp)               |     *(var_3ch_2) = s1;
    0x0005e478 sw s0, 0x38(sp)               |     *(var_38h_2) = s0;
    0x0005e47c sw ra, 0x54(sp)               |     *(var_54h_2) = ra;
    0x0005e480 sw s2, 0x40(sp)               |     *(var_40h_2) = s2;
    0x0005e484 move s1, a0                   |     s1 = a0;
    0x0005e488 move s5, a1                   |     s5 = a1;
    0x0005e48c move s6, a2                   |     s6 = a2;
    0x0005e490 move s0, a3                   |     s0 = a3;
    0x0005e494 sw v1, 0x34(sp)               |     *(var_34h_2) = v1;
    0x0005e498 lw s4, (a0)                   |     s4 = *(a0);
                                             |     if (v0 != 0) {
    0x0005e49c bnez v0, 0x5e5f0              |         goto label_4;
                                             |     }
    0x0005e4a0 lw v0, -0x7fac(gp)            |     v0 = *(gp);
    0x0005e4a4 lw s2, -0x7fac(gp)            |     s2 = *(gp);
    0x0005e4a8 addiu v0, v0, 0x47dc          |     v0 += 0x47dc;
                                             |     if (s0 == 0) {
                                             | label_1:
    0x0005e4ac beql s0, zero, 0x5e568        |         goto label_5;
                                             |     }
    0x0005e4b0 lw s0, -0x7fac(gp)            |     s0 = *(gp);
    0x0005e4b4 lb v1, (s0)                   |     v1 = *(s0);
                                             |     if (v1 == 0) {
    0x0005e4b8 beql v1, zero, 0x5e568        |         goto label_5;
                                             |     }
    0x0005e4bc lw s0, -0x7fac(gp)            |     s0 = *(gp);
                                             |     do {
    0x0005e4c0 lw a2, -0x7fac(gp)            |         a2 = *(gp);
    0x0005e4c4 lw t9, -0x76e8(gp)            |         t9 = sym.imp.apr_pstrcat
    0x0005e4c8 addiu s2, s2, -0x6a0c         |         s2 += -aav.0x00006a0c;
    0x0005e4cc sw s2, 0x10(sp)               |         *(var_10h_2) = s2;
    0x0005e4d0 sw zero, 0x1c(sp)             |         *(var_1ch_2) = 0;
    0x0005e4d4 sw s0, 0x18(sp)               |         *(var_18h_2) = s0;
    0x0005e4d8 sw v0, 0x14(sp)               |         *(var_14h_2) = v0;
    0x0005e4dc move a3, s6                   |         a3 = s6;
    0x0005e4e0 addiu a2, a2, 0x795c          |         a2 += 0x795c;
    0x0005e4e4 move a1, s5                   |         a1 = s5;
    0x0005e4e8 move a0, s4                   |         a0 = s4;
    0x0005e4ec jalr t9                       |         t9 ();
    0x0005e4f0 lw v1, 0x108(s1)              |         v1 = *(s1);
    0x0005e4f4 lw gp, 0x28(sp)               |         gp = *(var_28h_2);
    0x0005e4f8 move s2, v0                   |         s2 = v0;
                                             |         if (v1 == 0) {
    0x0005e4fc beqz v1, 0x5e634              |             goto label_6;
                                             |         }
                                             | label_3:
    0x0005e500 lw v0, (v1)                   |         v0 = *(v1);
                                             |         if (v0 == 0) {
                                             | label_2:
    0x0005e504 beql v0, zero, 0x5e574        |             goto label_7;
                                             |         }
    0x0005e508 lw v0, 4(v1)                  |         v0 = *((v1 + 1));
    0x0005e50c lb v0, (v0)                   |         v0 = *(v0);
    0x0005e510 slti v0, v0, 7                |         v0 = (v0 < 7) ? 1 : 0;
                                             |         if (v0 < 0) {
    0x0005e514 bltz v0, 0x5e570              |             goto label_8;
                                             |         }
    0x0005e518 xori v0, v0, 1                |         v0 ^= 1;
                                             |         if (v0 == 0) {
    0x0005e51c beql v0, zero, 0x5e588        |             goto label_9;
                                             |         }
    0x0005e520 lw s1, -0x7fac(gp)            |         s1 = *(gp);
    0x0005e524 lw v0, 0xd8(s1)               |         v0 = *((s1 + 54));
                                             | label_0:
    0x0005e528 lw a0, -0x7fac(gp)            |         a0 = *(gp);
    0x0005e52c sw v0, 0x1c(sp)               |         *(var_1ch_2) = v0;
    0x0005e530 lw v0, -0x7fac(gp)            |         v0 = *(gp);
    0x0005e534 lw t9, -0x7f08(gp)            |         t9 = sym.ap_log_rerror_;
                                             |         /* str.AH00008:_ap_cookie:_user__s_set_cookie2:__s */
    0x0005e538 addiu v0, v0, 0x292c          |         v0 += 0x292c;
    0x0005e53c sw s2, 0x20(sp)               |         *(var_20h_2) = s2;
    0x0005e540 sw v0, 0x18(sp)               |         *(var_18h_2) = v0;
    0x0005e544 sw s1, 0x14(sp)               |         *(var_14h_2) = s1;
    0x0005e548 sw zero, 0x10(sp)             |         *(var_10h_2) = 0;
    0x0005e54c addiu a3, zero, 7             |         a3 = 7;
    0x0005e550 move a2, zero                 |         a2 = 0;
    0x0005e554 addiu a1, zero, 0x65          |         a1 = 0x65;
                                             |         /* str._usr_src_debug_apache2_2.4.57_r0_httpd_2.4.57_server_util_cookies.c */
    0x0005e558 addiu a0, a0, 0x28b8          |         a0 += aav.0x000028b8;
    0x0005e55c bal 0x530a8                   |         sym_ap_log_rerror_ ();
    0x0005e560 lw gp, 0x28(sp)               |         gp = *(var_28h_2);
    0x0005e564 b 0x5e584                     |         goto label_10;
                                             |         /* str.HttpOnly_Secure_Version1 */
                                             | label_5:
    0x0005e568 addiu s0, s0, 0x2890          |         s0 += 0x2890;
    0x0005e56c b 0x5e4c0                     |         
                                             |     } while (1);
                                             | label_8:
    0x0005e570 lw v0, 4(v1)                  |     v0 = *((v1 + 1));
                                             | label_7:
    0x0005e574 slti v0, v0, 7                |     v0 = (v0 < 7) ? 1 : 0;
    0x0005e578 xori v0, v0, 1                |     v0 ^= 1;
    0x0005e57c lw v0, 0xd8(s1)               |     v0 = *((s1 + 54));
                                             |     if (v0 == 0) {
    0x0005e580 bnel v0, zero, 0x5e528        |         goto label_0;
                                             |     }
                                             | label_10:
    0x0005e584 lw s1, -0x7fac(gp)            |     s1 = *(gp);
                                             | label_9:
    0x0005e588 addiu s0, sp, 0x6c            |     s0 = sp + 0x6c;
                                             |     /* str.Set_Cookie2 */
    0x0005e58c addiu s1, s1, 0x295c          |     s1 += 0x295c;
    0x0005e590 b 0x5e5a8                     |     
                                             |     while (a0 != 0) {
    0x0005e594 lw t9, -0x777c(gp)            |         t9 = sym.imp.apr_table_addn;
    0x0005e598 move a2, s2                   |         a2 = s2;
    0x0005e59c move a1, s1                   |         a1 = s1;
    0x0005e5a0 jalr t9                       |         t9 ();
    0x0005e5a4 lw gp, 0x28(sp)               |         gp = *(var_28h_2);
    0x0005e5a8 addiu s0, s0, 4               |         s0 += 4;
    0x0005e5ac lw a0, -4(s0)                 |         a0 = *((s0 - 1));
    0x0005e5b0 sw s0, 0x30(sp)               |         *(var_30h_2) = s0;
    0x0005e5b4 bnez a0, 0x5e594              |         
                                             |     }
    0x0005e5b8 lw a0, 0x34(sp)               |     a0 = *(var_34h_2);
    0x0005e5bc lw v1, (s3)                   |     v1 = *(s3);
    0x0005e5c0 move v0, zero                 |     v0 = 0;
                                             |     if (a0 != v1) {
    0x0005e5c4 bne a0, v1, 0x5e650           |         goto label_11;
                                             |     }
    0x0005e5c8 lw ra, 0x54(sp)               |     ra = *(var_54h_2);
    0x0005e5cc lw s6, 0x50(sp)               |     s6 = *(var_50h_2);
    0x0005e5d0 lw s5, 0x4c(sp)               |     s5 = *(var_4ch_2);
    0x0005e5d4 lw s4, 0x48(sp)               |     s4 = *(var_48h_2);
    0x0005e5d8 lw s3, 0x44(sp)               |     s3 = *(var_44h_2);
    0x0005e5dc lw s2, 0x40(sp)               |     s2 = *(var_40h_2);
    0x0005e5e0 lw s1, 0x3c(sp)               |     s1 = *(var_3ch_2);
    0x0005e5e4 lw s0, 0x38(sp)               |     s0 = *(var_38h_2);
    0x0005e5e8 addiu sp, sp, 0x58            |     
    0x0005e5ec jr ra                         |     return v1;
                                             | label_4:
    0x0005e5f0 lw t9, -0x72fc(gp)            |     t9 = sym.imp.apr_ltoa;
    0x0005e5f4 move a0, s4                   |     a0 = s4;
    0x0005e5f8 move a1, v0                   |     a1 = v0;
    0x0005e5fc jalr t9                       |     t9 ();
    0x0005e600 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0005e604 move a0, s4                   |     a0 = s4;
    0x0005e608 sw zero, 0x10(sp)             |     *(var_10h_2) = 0;
    0x0005e60c lw s2, -0x7fac(gp)            |     s2 = *(gp);
    0x0005e610 lw a1, -0x7fac(gp)            |     a1 = *(gp);
    0x0005e614 lw t9, -0x76e8(gp)            |     t9 = sym.imp.apr_pstrcat
    0x0005e618 addiu a3, s2, -0x6a0c         |     a3 = s2 + -aav.0x00006a0c;
    0x0005e61c move a2, v0                   |     a2 = v0;
                                             |     /* str.Max_Age */
    0x0005e620 addiu a1, a1, 0x28ac          |     a1 += 0x28ac;
    0x0005e624 jalr t9                       |     t9 ();
    0x0005e628 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0005e62c lw s4, (s1)                   |     s4 = *(s1);
    0x0005e630 b 0x5e4ac                     |     goto label_1;
                                             | label_6:
    0x0005e634 lw v0, 4(s1)                  |     v0 = *((s1 + 1));
    0x0005e638 lw v1, 0x60(v0)               |     v1 = *((v0 + 24));
    0x0005e63c lw v0, (v1)                   |     v0 = *(v1);
                                             |     if (v1 == 0) {
    0x0005e640 bnel v1, zero, 0x5e504        |         goto label_2;
                                             |     }
    0x0005e644 lw v1, 8(s1)                  |     v1 = *((s1 + 2));
    0x0005e648 addiu v1, v1, 0x10            |     v1 += 0x10;
    0x0005e64c b 0x5e500                     |     goto label_3;
                                             | label_11:
    0x0005e650 lw t9, -0x75e8(gp)            |     t9 = sym.imp.__stack_chk_fail;
    0x0005e654 jalr t9                       |     t9 ();
    0x0005e658 nop                           |     
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x5e444 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.ap_cookie_write2 ()          | void ap_cookie_write2 () {
    0x0005e444 lui gp, 4                     |     
    0x0005e448 addiu gp, gp, 0x4adc          |     
    0x0005e44c addu gp, gp, t9               |     gp += t9;
    0x0005e450 addiu sp, sp, -0x58           |     
    0x0005e454 sw s3, 0x44(sp)               |     *(var_44h_2) = s3;
    0x0005e458 lw s3, -0x7534(gp)            |     s3 = *(gp);
    0x0005e45c lw v0, 0x68(sp)               |     v0 = *(var_10h);
    0x0005e460 sw gp, 0x28(sp)               |     *(var_28h_2) = gp;
    0x0005e464 lw v1, (s3)                   |     v1 = *(s3);
    0x0005e468 sw s6, 0x50(sp)               |     *(var_50h_2) = s6;
    0x0005e46c sw s5, 0x4c(sp)               |     *(var_4ch_2) = s5;
    0x0005e470 sw s4, 0x48(sp)               |     *(var_48h_2) = s4;
    0x0005e474 sw s1, 0x3c(sp)               |     *(var_3ch_2) = s1;
    0x0005e478 sw s0, 0x38(sp)               |     *(var_38h_2) = s0;
    0x0005e47c sw ra, 0x54(sp)               |     *(var_54h_2) = ra;
    0x0005e480 sw s2, 0x40(sp)               |     *(var_40h_2) = s2;
    0x0005e484 move s1, a0                   |     s1 = a0;
    0x0005e488 move s5, a1                   |     s5 = a1;
    0x0005e48c move s6, a2                   |     s6 = a2;
    0x0005e490 move s0, a3                   |     s0 = a3;
    0x0005e494 sw v1, 0x34(sp)               |     *(var_34h_2) = v1;
    0x0005e498 lw s4, (a0)                   |     s4 = *(a0);
                                             |     if (v0 != 0) {
    0x0005e49c bnez v0, 0x5e5f0              |         goto label_4;
                                             |     }
    0x0005e4a0 lw v0, -0x7fac(gp)            |     v0 = *(gp);
    0x0005e4a4 lw s2, -0x7fac(gp)            |     s2 = *(gp);
    0x0005e4a8 addiu v0, v0, 0x47dc          |     v0 += 0x47dc;
                                             |     if (s0 == 0) {
                                             | label_1:
    0x0005e4ac beql s0, zero, 0x5e568        |         goto label_5;
                                             |     }
    0x0005e4b0 lw s0, -0x7fac(gp)            |     s0 = *(gp);
    0x0005e4b4 lb v1, (s0)                   |     v1 = *(s0);
                                             |     if (v1 == 0) {
    0x0005e4b8 beql v1, zero, 0x5e568        |         goto label_5;
                                             |     }
    0x0005e4bc lw s0, -0x7fac(gp)            |     s0 = *(gp);
                                             |     do {
    0x0005e4c0 lw a2, -0x7fac(gp)            |         a2 = *(gp);
    0x0005e4c4 lw t9, -0x76e8(gp)            |         t9 = sym.imp.apr_pstrcat
    0x0005e4c8 addiu s2, s2, -0x6a0c         |         s2 += -aav.0x00006a0c;
    0x0005e4cc sw s2, 0x10(sp)               |         *(var_10h_2) = s2;
    0x0005e4d0 sw zero, 0x1c(sp)             |         *(var_1ch_2) = 0;
    0x0005e4d4 sw s0, 0x18(sp)               |         *(var_18h_2) = s0;
    0x0005e4d8 sw v0, 0x14(sp)               |         *(var_14h_2) = v0;
    0x0005e4dc move a3, s6                   |         a3 = s6;
    0x0005e4e0 addiu a2, a2, 0x795c          |         a2 += 0x795c;
    0x0005e4e4 move a1, s5                   |         a1 = s5;
    0x0005e4e8 move a0, s4                   |         a0 = s4;
    0x0005e4ec jalr t9                       |         t9 ();
    0x0005e4f0 lw v1, 0x108(s1)              |         v1 = *(s1);
    0x0005e4f4 lw gp, 0x28(sp)               |         gp = *(var_28h_2);
    0x0005e4f8 move s2, v0                   |         s2 = v0;
                                             |         if (v1 == 0) {
    0x0005e4fc beqz v1, 0x5e634              |             goto label_6;
                                             |         }
                                             | label_3:
    0x0005e500 lw v0, (v1)                   |         v0 = *(v1);
                                             |         if (v0 == 0) {
                                             | label_2:
    0x0005e504 beql v0, zero, 0x5e574        |             goto label_7;
                                             |         }
    0x0005e508 lw v0, 4(v1)                  |         v0 = *((v1 + 1));
    0x0005e50c lb v0, (v0)                   |         v0 = *(v0);
    0x0005e510 slti v0, v0, 7                |         v0 = (v0 < 7) ? 1 : 0;
                                             |         if (v0 < 0) {
    0x0005e514 bltz v0, 0x5e570              |             goto label_8;
                                             |         }
    0x0005e518 xori v0, v0, 1                |         v0 ^= 1;
                                             |         if (v0 == 0) {
    0x0005e51c beql v0, zero, 0x5e588        |             goto label_9;
                                             |         }
    0x0005e520 lw s1, -0x7fac(gp)            |         s1 = *(gp);
    0x0005e524 lw v0, 0xd8(s1)               |         v0 = *((s1 + 54));
                                             | label_0:
    0x0005e528 lw a0, -0x7fac(gp)            |         a0 = *(gp);
    0x0005e52c sw v0, 0x1c(sp)               |         *(var_1ch_2) = v0;
    0x0005e530 lw v0, -0x7fac(gp)            |         v0 = *(gp);
    0x0005e534 lw t9, -0x7f08(gp)            |         t9 = sym.ap_log_rerror_;
                                             |         /* str.AH00008:_ap_cookie:_user__s_set_cookie2:__s */
    0x0005e538 addiu v0, v0, 0x292c          |         v0 += 0x292c;
    0x0005e53c sw s2, 0x20(sp)               |         *(var_20h_2) = s2;
    0x0005e540 sw v0, 0x18(sp)               |         *(var_18h_2) = v0;
    0x0005e544 sw s1, 0x14(sp)               |         *(var_14h_2) = s1;
    0x0005e548 sw zero, 0x10(sp)             |         *(var_10h_2) = 0;
    0x0005e54c addiu a3, zero, 7             |         a3 = 7;
    0x0005e550 move a2, zero                 |         a2 = 0;
    0x0005e554 addiu a1, zero, 0x65          |         a1 = 0x65;
                                             |         /* str._usr_src_debug_apache2_2.4.57_r0_httpd_2.4.57_server_util_cookies.c */
    0x0005e558 addiu a0, a0, 0x28b8          |         a0 += aav.0x000028b8;
    0x0005e55c bal 0x530a8                   |         sym_ap_log_rerror_ ();
    0x0005e560 lw gp, 0x28(sp)               |         gp = *(var_28h_2);
    0x0005e564 b 0x5e584                     |         goto label_10;
                                             |         /* str.HttpOnly_Secure_Version1 */
                                             | label_5:
    0x0005e568 addiu s0, s0, 0x2890          |         s0 += 0x2890;
    0x0005e56c b 0x5e4c0                     |         
                                             |     } while (1);
                                             | label_8:
    0x0005e570 lw v0, 4(v1)                  |     v0 = *((v1 + 1));
                                             | label_7:
    0x0005e574 slti v0, v0, 7                |     v0 = (v0 < 7) ? 1 : 0;
    0x0005e578 xori v0, v0, 1                |     v0 ^= 1;
    0x0005e57c lw v0, 0xd8(s1)               |     v0 = *((s1 + 54));
                                             |     if (v0 == 0) {
    0x0005e580 bnel v0, zero, 0x5e528        |         goto label_0;
                                             |     }
                                             | label_10:
    0x0005e584 lw s1, -0x7fac(gp)            |     s1 = *(gp);
                                             | label_9:
    0x0005e588 addiu s0, sp, 0x6c            |     s0 = sp + 0x6c;
                                             |     /* str.Set_Cookie2 */
    0x0005e58c addiu s1, s1, 0x295c          |     s1 += 0x295c;
    0x0005e590 b 0x5e5a8                     |     
                                             |     while (a0 != 0) {
    0x0005e594 lw t9, -0x777c(gp)            |         t9 = sym.imp.apr_table_addn;
    0x0005e598 move a2, s2                   |         a2 = s2;
    0x0005e59c move a1, s1                   |         a1 = s1;
    0x0005e5a0 jalr t9                       |         t9 ();
    0x0005e5a4 lw gp, 0x28(sp)               |         gp = *(var_28h_2);
    0x0005e5a8 addiu s0, s0, 4               |         s0 += 4;
    0x0005e5ac lw a0, -4(s0)                 |         a0 = *((s0 - 1));
    0x0005e5b0 sw s0, 0x30(sp)               |         *(var_30h_2) = s0;
    0x0005e5b4 bnez a0, 0x5e594              |         
                                             |     }
    0x0005e5b8 lw a0, 0x34(sp)               |     a0 = *(var_34h_2);
    0x0005e5bc lw v1, (s3)                   |     v1 = *(s3);
    0x0005e5c0 move v0, zero                 |     v0 = 0;
                                             |     if (a0 != v1) {
    0x0005e5c4 bne a0, v1, 0x5e650           |         goto label_11;
                                             |     }
    0x0005e5c8 lw ra, 0x54(sp)               |     ra = *(var_54h_2);
    0x0005e5cc lw s6, 0x50(sp)               |     s6 = *(var_50h_2);
    0x0005e5d0 lw s5, 0x4c(sp)               |     s5 = *(var_4ch_2);
    0x0005e5d4 lw s4, 0x48(sp)               |     s4 = *(var_48h_2);
    0x0005e5d8 lw s3, 0x44(sp)               |     s3 = *(var_44h_2);
    0x0005e5dc lw s2, 0x40(sp)               |     s2 = *(var_40h_2);
    0x0005e5e0 lw s1, 0x3c(sp)               |     s1 = *(var_3ch_2);
    0x0005e5e4 lw s0, 0x38(sp)               |     s0 = *(var_38h_2);
    0x0005e5e8 addiu sp, sp, 0x58            |     
    0x0005e5ec jr ra                         |     return v1;
                                             | label_4:
    0x0005e5f0 lw t9, -0x72fc(gp)            |     t9 = sym.imp.apr_ltoa;
    0x0005e5f4 move a0, s4                   |     a0 = s4;
    0x0005e5f8 move a1, v0                   |     a1 = v0;
    0x0005e5fc jalr t9                       |     t9 ();
    0x0005e600 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0005e604 move a0, s4                   |     a0 = s4;
    0x0005e608 sw zero, 0x10(sp)             |     *(var_10h_2) = 0;
    0x0005e60c lw s2, -0x7fac(gp)            |     s2 = *(gp);
    0x0005e610 lw a1, -0x7fac(gp)            |     a1 = *(gp);
    0x0005e614 lw t9, -0x76e8(gp)            |     t9 = sym.imp.apr_pstrcat
    0x0005e618 addiu a3, s2, -0x6a0c         |     a3 = s2 + -aav.0x00006a0c;
    0x0005e61c move a2, v0                   |     a2 = v0;
                                             |     /* str.Max_Age */
    0x0005e620 addiu a1, a1, 0x28ac          |     a1 += 0x28ac;
    0x0005e624 jalr t9                       |     t9 ();
    0x0005e628 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0005e62c lw s4, (s1)                   |     s4 = *(s1);
    0x0005e630 b 0x5e4ac                     |     goto label_1;
                                             | label_6:
    0x0005e634 lw v0, 4(s1)                  |     v0 = *((s1 + 1));
    0x0005e638 lw v1, 0x60(v0)               |     v1 = *((v0 + 24));
    0x0005e63c lw v0, (v1)                   |     v0 = *(v1);
                                             |     if (v1 == 0) {
    0x0005e640 bnel v1, zero, 0x5e504        |         goto label_2;
                                             |     }
    0x0005e644 lw v1, 8(s1)                  |     v1 = *((s1 + 2));
    0x0005e648 addiu v1, v1, 0x10            |     v1 += 0x10;
    0x0005e64c b 0x5e500                     |     goto label_3;
                                             | label_11:
    0x0005e650 lw t9, -0x75e8(gp)            |     t9 = sym.imp.__stack_chk_fail;
    0x0005e654 jalr t9                       |     t9 ();
    0x0005e658 nop                           |     
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x544ac */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.ap_create_environment ()     | void ap_create_environment () {
    0x000544ac lui gp, 5                     |     
    0x000544b0 addiu gp, gp, -0x158c         |     
    0x000544b4 addu gp, gp, t9               |     gp += t9;
    0x000544b8 addiu sp, sp, -0x50           |     
    0x000544bc lw t9, -0x7254(gp)            |     t9 = sym.imp.apr_table_elts;
    0x000544c0 sw ra, 0x4c(sp)               |     *(var_4ch) = ra;
    0x000544c4 sw gp, 0x18(sp)               |     *(var_18h) = gp;
    0x000544c8 sw s5, 0x3c(sp)               |     *(var_3ch) = s5;
    0x000544cc sw s3, 0x34(sp)               |     *(var_34h) = s3;
    0x000544d0 sw s2, 0x30(sp)               |     *(var_30h) = s2;
    0x000544d4 sw s1, 0x2c(sp)               |     *(var_2ch) = s1;
    0x000544d8 sw s0, 0x28(sp)               |     *(var_28h) = s0;
    0x000544dc sw a0, 0x50(sp)               |     *(arg_50h) = a0;
    0x000544e0 sw fp, 0x48(sp)               |     *(var_48h) = fp;
    0x000544e4 move a0, a1                   |     a0 = a1;
    0x000544e8 sw s7, 0x44(sp)               |     *(var_44h) = s7;
    0x000544ec sw s6, 0x40(sp)               |     *(var_40h) = s6;
    0x000544f0 sw s4, 0x38(sp)               |     *(var_38h) = s4;
    0x000544f4 move s0, a1                   |     s0 = a1;
    0x000544f8 jalr t9                       |     t9 ();
    0x000544fc lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x00054500 lw a1, 8(v0)                  |     a1 = *((v0 + 2));
    0x00054504 lw a0, 0x50(sp)               |     a0 = *(arg_50h);
    0x00054508 lw t9, -0x7544(gp)            |     t9 = sym.imp.apr_palloc;
    0x0005450c addiu a1, a1, 2               |     a1 += 2;
    0x00054510 sll a1, a1, 2                 |     a1 <<= 2;
    0x00054514 lw s2, -0x7fac(gp)            |     s2 = *(gp);
    0x00054518 move s1, v0                   |     s1 = v0;
    0x0005451c lw s5, 0x10(v0)               |     s5 = *((v0 + 4));
    0x00054520 jalr t9                       |     t9 ();
    0x00054524 lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     /* esilref: 'TZ' */
    0x00054528 addiu a1, s2, 0x14e4          |     a1 = s2 + 0x14e4;
    0x0005452c move a0, s0                   |     a0 = s0;
    0x00054530 lw t9, -0x7668(gp)            |     t9 = sym.imp.apr_table_get;
    0x00054534 move s3, v0                   |     s3 = v0;
    0x00054538 jalr t9                       |     t9 ();
    0x0005453c lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     if (v0 == 0) {
    0x00054540 beqz v0, 0x54684              |         goto label_3;
                                             |     }
                                             | label_1:
    0x00054544 move s2, s3                   |     s2 = s3;
    0x00054548 move t0, zero                 |     t0 = 0;
                                             | label_2:
    0x0005454c lw a0, 8(s1)                  |     a0 = *((s1 + 2));
    0x00054550 move s6, zero                 |     s6 = 0;
                                             |     if (a0 <= 0) {
    0x00054554 blez a0, 0x5464c              |         goto label_4;
                                             |     }
    0x00054558 lw s2, -0x7fac(gp)            |     s2 = *(gp);
    0x0005455c addiu v0, s2, 0x795c          |     v0 = s2 + 0x795c;
    0x00054560 sw v0, 0x24(sp)               |     *(var_24h) = v0;
    0x00054564 addiu s4, zero, 0x3d          |     s4 = 0x3d;
    0x00054568 addiu fp, zero, 0x5f          |     fp = 0x5f;
    0x0005456c b 0x54580                     |     
                                             |     while (a1 == 0) {
    0x00054570 addiu s6, s6, 1               |         s6++;
    0x00054574 slt v0, s6, a0                |         v0 = (s6 < a0) ? 1 : 0;
    0x00054578 addiu s5, s5, 0xc             |         s5 += 0xc;
                                             |         if (v0 == 0) {
    0x0005457c beqz v0, 0x5464c              |             goto label_4;
                                             |         }
                                             | label_0:
    0x00054580 lw a1, (s5)                   |         a1 = *(s5);
    0x00054584 sll s7, t0, 2                 |         s7 = t0 << 2;
    0x00054588 addu s2, s3, s7               |         s2 = s3 + s7;
    0x0005458c beqz a1, 0x54570              |         
                                             |     }
    0x00054590 lw t9, -0x76e8(gp)            |     t9 = sym.imp.apr_pstrcat
    0x00054594 lw a3, 4(s5)                  |     a3 = *((s5 + 1));
    0x00054598 lw a0, 0x50(sp)               |     a0 = *(arg_50h);
    0x0005459c lw a2, 0x24(sp)               |     a2 = *(var_24h);
    0x000545a0 sw t0, 0x20(sp)               |     *(var_20h) = t0;
    0x000545a4 sw zero, 0x10(sp)             |     *(var_10h) = 0;
    0x000545a8 jalr t9                       |     t9 ();
    0x000545ac lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x000545b0 move s0, v0                   |     s0 = v0;
    0x000545b4 lw t9, -0x744c(gp)            |     t9 = *(gp);
    0x000545b8 sw v0, (s2)                   |     *(s2) = v0;
    0x000545bc jalr t9                       |     t9 ();
    0x000545c0 lb v1, (s0)                   |     v1 = *(s0);
    0x000545c4 lw a0, (v0)                   |     a0 = *(v0);
    0x000545c8 andi a1, v1, 0xff             |     a1 = v1 & 0xff;
    0x000545cc sll a1, a1, 1                 |     a1 <<= 1;
    0x000545d0 addu a0, a0, a1               |     a0 += a1;
    0x000545d4 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x000545d8 lhu a0, (a0)                  |     a0 = *(a0);
    0x000545dc andi a0, a0, 0x800            |     a0 &= 0x800;
    0x000545e0 lw t0, 0x20(sp)               |     t0 = *(var_20h);
                                             |     if (a0 != 0) {
    0x000545e4 beqz a0, 0x545f4              |         
    0x000545e8 sb fp, (s0)                   |         *(s0) = fp;
    0x000545ec lb v1, 1(s0)                  |         v1 = *((s0 + 1));
    0x000545f0 addiu s0, s0, 1               |         s0++;
                                             |     }
                                             |     if (v1 == s4) {
    0x000545f4 beql v1, s4, 0x54630          |         goto label_5;
                                             |     }
    0x000545f8 lw a0, 8(s1)                  |     a0 = *((s1 + 2));
    0x000545fc andi v1, v1, 0xff             |     v1 &= 0xff;
                                             |     do {
    0x00054600 lw a0, (v0)                   |         a0 = *(v0);
    0x00054604 sll v1, v1, 1                 |         v1 <<= 1;
    0x00054608 addu v1, a0, v1               |         v1 = a0 + v1;
    0x0005460c lhu v1, (v1)                  |         v1 = *(v1);
    0x00054610 andi v1, v1, 8                |         v1 &= 8;
                                             |         if (v1 != 0) {
    0x00054614 beql v1, zero, 0x5461c        |             
    0x00054618 sb fp, (s0)                   |             *(s0) = fp;
                                             |         }
    0x0005461c addiu s0, s0, 1               |         s0++;
    0x00054620 lb v1, (s0)                   |         v1 = *(s0);
    0x00054624 andi v1, v1, 0xff             |         v1 &= 0xff;
    0x00054628 bnel v1, s4, 0x54600          |         
                                             |     } while (v1 == s4);
    0x0005462c lw a0, 8(s1)                  |     a0 = *((s1 + 2));
                                             | label_5:
    0x00054630 addiu s6, s6, 1               |     s6++;
    0x00054634 addiu s7, s7, 4               |     s7 += 4;
    0x00054638 slt v0, s6, a0                |     v0 = (s6 < a0) ? 1 : 0;
    0x0005463c addiu t0, t0, 1               |     t0++;
    0x00054640 addu s2, s3, s7               |     s2 = s3 + s7;
    0x00054644 addiu s5, s5, 0xc             |     s5 += 0xc;
                                             |     if (v0 != 0) {
    0x00054648 bnez v0, 0x54580              |         goto label_0;
                                             |     }
                                             | label_4:
    0x0005464c lw ra, 0x4c(sp)               |     ra = *(var_4ch);
    0x00054650 sw zero, (s2)                 |     *(s2) = 0;
    0x00054654 move v0, s3                   |     v0 = s3;
    0x00054658 lw fp, 0x48(sp)               |     fp = *(var_48h);
    0x0005465c lw s7, 0x44(sp)               |     s7 = *(var_44h);
    0x00054660 lw s6, 0x40(sp)               |     s6 = *(var_40h);
    0x00054664 lw s5, 0x3c(sp)               |     s5 = *(var_3ch);
    0x00054668 lw s4, 0x38(sp)               |     s4 = *(var_38h);
    0x0005466c lw s3, 0x34(sp)               |     s3 = *(var_34h);
    0x00054670 lw s2, 0x30(sp)               |     s2 = *(var_30h);
    0x00054674 lw s1, 0x2c(sp)               |     s1 = *(var_2ch);
    0x00054678 lw s0, 0x28(sp)               |     s0 = *(var_28h);
    0x0005467c addiu sp, sp, 0x50            |     
    0x00054680 jr ra                         |     return v0;
                                             | label_3:
    0x00054684 lw t9, -0x72bc(gp)            |     t9 = sym.imp.getenv;
                                             |     /* esilref: 'TZ' */
    0x00054688 addiu a0, s2, 0x14e4          |     a0 = s2 + 0x14e4;
    0x0005468c jalr t9                       |     t9 ();
    0x00054690 lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     if (v0 == 0) {
    0x00054694 beqz v0, 0x54544              |         goto label_1;
                                             |     }
    0x00054698 lw a1, -0x7fac(gp)            |     a1 = *(gp);
    0x0005469c lw t9, -0x76e8(gp)            |     t9 = sym.imp.apr_pstrcat
    0x000546a0 lw a0, 0x50(sp)               |     a0 = *(arg_50h);
    0x000546a4 move a3, zero                 |     a3 = 0;
    0x000546a8 move a2, v0                   |     a2 = v0;
                                             |     /* esilref: 'TZ=' */
    0x000546ac addiu a1, a1, 0x14e8          |     a1 += 0x14e8;
    0x000546b0 jalr t9                       |     t9 ();
    0x000546b4 addiu s2, s3, 4               |     s2 = s3 + 4;
    0x000546b8 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x000546bc sw v0, (s3)                   |     *(s3) = v0;
    0x000546c0 addiu t0, zero, 1             |     t0 = 1;
    0x000546c4 b 0x5454c                     |     goto label_2;
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x3ab2c */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.ap_custom_response ()        | void ap_custom_response () {
    0x0003ab2c lui gp, 7                     |     
    0x0003ab30 addiu gp, gp, -0x7c0c         |     
    0x0003ab34 addu gp, gp, t9               |     gp += t9;
    0x0003ab38 lw v0, 0x104(a0)              |     v0 = *(a0);
    0x0003ab3c addiu sp, sp, -0x30           |     
    0x0003ab40 sw s2, 0x24(sp)               |     *(var_24h) = s2;
    0x0003ab44 lw s2, (v0)                   |     s2 = *(v0);
    0x0003ab48 sw gp, 0x10(sp)               |     *(var_10h) = gp;
    0x0003ab4c sw s3, 0x28(sp)               |     *(var_28h) = s3;
    0x0003ab50 lw v0, 8(s2)                  |     v0 = *((s2 + 2));
    0x0003ab54 sw s1, 0x20(sp)               |     *(var_20h_2) = s1;
    0x0003ab58 sw s0, 0x1c(sp)               |     *(var_1ch) = s0;
    0x0003ab5c sw ra, 0x2c(sp)               |     *(var_2ch) = ra;
    0x0003ab60 move s3, a0                   |     s3 = a0;
    0x0003ab64 move s0, a1                   |     s0 = a1;
    0x0003ab68 move s1, a2                   |     s1 = a2;
                                             |     if (v0 == 0) {
    0x0003ab6c beqz v0, 0x3ac38              |         goto label_1;
                                             |     }
                                             | label_0:
    0x0003ab70 lw t9, -0x7cac(gp)            |     t9 = sym.ap_index_of_response;
    0x0003ab74 move a0, s0                   |     a0 = s0;
    0x0003ab78 jalr t9                       |     t9 ();
    0x0003ab7c lw gp, 0x10(sp)               |     gp = *(var_10h);
    0x0003ab80 move a0, s1                   |     a0 = s1;
    0x0003ab84 lw t9, -0x7ca8(gp)            |     t9 = sym.ap_is_url;
    0x0003ab88 move s0, v0                   |     s0 = v0;
    0x0003ab8c bal 0x1ece4                   |     sym_ap_is_url ();
    0x0003ab90 lw gp, 0x10(sp)               |     gp = *(var_10h);
    0x0003ab94 lb v1, (s1)                   |     v1 = *(s1);
                                             |     if (v0 != 0) {
    0x0003ab98 bnez v0, 0x3abf0              |         goto label_2;
                                             |     }
    0x0003ab9c addiu v0, zero, 0x2f          |     v0 = 0x2f;
    0x0003aba0 lw t9, -0x7654(gp)            |     t9 = sym.imp.apr_pstrdup;
                                             |     if (v1 == v0) {
    0x0003aba4 beq v1, v0, 0x3ac00           |         goto label_3;
                                             |     }
    0x0003aba8 lw a1, -0x7fac(gp)            |     a1 = *(gp);
                                             |     do {
    0x0003abac lw t9, -0x76e8(gp)            |         t9 = sym.imp.apr_pstrcat
    0x0003abb0 lw a0, (s3)                   |         a0 = *(s3);
    0x0003abb4 move a2, s1                   |         a2 = s1;
    0x0003abb8 move a3, zero                 |         a3 = 0;
    0x0003abbc addiu a1, a1, -0x36ac         |         a1 += -aav.0x000036ac;
    0x0003abc0 jalr t9                       |         t9 ();
    0x0003abc4 lw v1, 8(s2)                  |         v1 = *((s2 + 2));
    0x0003abc8 sll s0, s0, 2                 |         s0 <<= 2;
    0x0003abcc addu v1, v1, s0               |         v1 += s0;
    0x0003abd0 lw ra, 0x2c(sp)               |         ra = *(var_2ch);
    0x0003abd4 lw s3, 0x28(sp)               |         s3 = *(var_28h);
    0x0003abd8 lw s2, 0x24(sp)               |         s2 = *(var_24h);
    0x0003abdc lw s1, 0x20(sp)               |         s1 = *(var_20h_2);
    0x0003abe0 lw s0, 0x1c(sp)               |         s0 = *(var_1ch);
    0x0003abe4 sw v0, (v1)                   |         *(v1) = v0;
    0x0003abe8 addiu sp, sp, 0x30            |         
    0x0003abec jr ra                         |         return v0;
                                             | label_2:
    0x0003abf0 addiu v0, zero, 0x22          |         v0 = 0x22;
    0x0003abf4 lw a1, -0x7fac(gp)            |         a1 = *(gp);
    0x0003abf8 beq v1, v0, 0x3abac           |         
                                             |     } while (v1 == v0);
    0x0003abfc lw t9, -0x7654(gp)            |     t9 = sym.imp.apr_pstrdup;
                                             | label_3:
    0x0003ac00 lw a0, (s3)                   |     a0 = *(s3);
    0x0003ac04 move a1, s1                   |     a1 = s1;
    0x0003ac08 jalr t9                       |     t9 ();
    0x0003ac0c lw v1, 8(s2)                  |     v1 = *((s2 + 2));
    0x0003ac10 sll s0, s0, 2                 |     s0 <<= 2;
    0x0003ac14 addu v1, v1, s0               |     v1 += s0;
    0x0003ac18 lw ra, 0x2c(sp)               |     ra = *(var_2ch);
    0x0003ac1c lw s3, 0x28(sp)               |     s3 = *(var_28h);
    0x0003ac20 lw s2, 0x24(sp)               |     s2 = *(var_24h);
    0x0003ac24 lw s1, 0x20(sp)               |     s1 = *(var_20h_2);
    0x0003ac28 lw s0, 0x1c(sp)               |     s0 = *(var_1ch);
    0x0003ac2c sw v0, (v1)                   |     *(v1) = v0;
    0x0003ac30 addiu sp, sp, 0x30            |     
    0x0003ac34 jr ra                         |     return v0;
                                             | label_1:
    0x0003ac38 lw t9, -0x7544(gp)            |     t9 = sym.imp.apr_palloc;
    0x0003ac3c lw a0, (a0)                   |     a0 = *(a0);
    0x0003ac40 addiu a1, zero, 0x19c         |     a1 = aav.0x0000019c;
    0x0003ac44 jalr t9                       |     t9 ();
    0x0003ac48 lw gp, 0x10(sp)               |     gp = *(var_10h);
    0x0003ac4c addiu a2, zero, 0x19c         |     a2 = aav.0x0000019c;
    0x0003ac50 move a1, zero                 |     a1 = 0;
    0x0003ac54 lw t9, -0x7308(gp)            |     t9 = sym.imp.memset;
    0x0003ac58 move a0, v0                   |     a0 = v0;
    0x0003ac5c jalr t9                       |     t9 ();
    0x0003ac60 lw gp, 0x10(sp)               |     gp = *(var_10h);
    0x0003ac64 sw v0, 8(s2)                  |     *((s2 + 2)) = v0;
    0x0003ac68 b 0x3ab70                     |     goto label_0;
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x21ccc */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.ap_dir_cfgmatch ()           | void ap_dir_cfgmatch () {
    0x00021ccc lui gp, 8                     |     
    0x00021cd0 addiu gp, gp, 0x1254          |     
    0x00021cd4 addu gp, gp, t9               |     gp += t9;
    0x00021cd8 addiu sp, sp, -0x30           |     
    0x00021cdc lw t9, -0x7544(gp)            |     t9 = sym.imp.apr_palloc;
    0x00021ce0 sw s1, 0x1c(sp)               |     *(var_1ch) = s1;
    0x00021ce4 move s1, a0                   |     s1 = a0;
    0x00021ce8 lw a0, 0x2c(a0)               |     a0 = *((a0 + 11));
    0x00021cec sw ra, 0x2c(sp)               |     *(var_2ch) = ra;
    0x00021cf0 sw s4, 0x28(sp)               |     *(var_28h) = s4;
    0x00021cf4 sw s3, 0x24(sp)               |     *(var_24h) = s3;
    0x00021cf8 sw s2, 0x20(sp)               |     *(var_20h) = s2;
    0x00021cfc sw s0, 0x18(sp)               |     *(var_18h) = s0;
    0x00021d00 sw gp, 0x10(sp)               |     *(var_10h) = gp;
    0x00021d04 move s4, a1                   |     s4 = a1;
    0x00021d08 addiu a1, zero, 0x1c          |     a1 = 0x1c;
    0x00021d0c move s3, a2                   |     s3 = a2;
    0x00021d10 move s2, a3                   |     s2 = a3;
    0x00021d14 jalr t9                       |     t9 ();
    0x00021d18 lw gp, 0x10(sp)               |     gp = *(var_10h);
    0x00021d1c lw v1, 0x38(s1)               |     v1 = *((s1 + 14));
    0x00021d20 lw a0, 0x28(s1)               |     a0 = *((s1 + 10));
    0x00021d24 lw a2, -0x7fac(gp)            |     a2 = *(gp);
    0x00021d28 lw t9, -0x76e8(gp)            |     t9 = sym.imp.apr_pstrcat
    0x00021d2c lw a1, (v1)                   |     a1 = *(v1);
    0x00021d30 move a3, zero                 |     a3 = 0;
                                             |     /* esilref: ': ' */
    0x00021d34 addiu a2, a2, -0x647c         |     a2 += -0x647c;
    0x00021d38 move s0, v0                   |     s0 = v0;
    0x00021d3c jalr t9                       |     t9 ();
    0x00021d40 lw a0, 0x28(s1)               |     a0 = *((s1 + 10));
    0x00021d44 lw v1, 0x2c(s1)               |     v1 = *((s1 + 11));
    0x00021d48 lw ra, 0x2c(sp)               |     ra = *(var_2ch);
    0x00021d4c sw v0, 8(s0)                  |     *((s0 + 2)) = v0;
    0x00021d50 sw s4, 0x14(s0)               |     *((s0 + 5)) = s4;
    0x00021d54 sw s3, 0xc(s0)                |     *((s0 + 3)) = s3;
    0x00021d58 sw s2, 0x10(s0)               |     *((s0 + 4)) = s2;
    0x00021d5c sw a0, (s0)                   |     *(s0) = a0;
    0x00021d60 sw v1, 4(s0)                  |     *((s0 + 1)) = v1;
    0x00021d64 sw zero, 0x18(s0)             |     *((s0 + 6)) = 0;
    0x00021d68 move v0, s0                   |     v0 = s0;
    0x00021d6c lw s4, 0x28(sp)               |     s4 = *(var_28h);
    0x00021d70 lw s3, 0x24(sp)               |     s3 = *(var_24h);
    0x00021d74 lw s2, 0x20(sp)               |     s2 = *(var_20h);
    0x00021d78 lw s1, 0x1c(sp)               |     s1 = *(var_1ch);
    0x00021d7c lw s0, 0x18(sp)               |     s0 = *(var_18h);
    0x00021d80 addiu sp, sp, 0x30            |     
    0x00021d84 jr ra                         |     return v0;
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x3e258 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.ap_directory_walk ()         | void ap_directory_walk () {
    0x0003e258 lui gp, 6                     |     
    0x0003e25c addiu gp, gp, 0x4cc8          |     
    0x0003e260 addu gp, gp, t9               |     gp += t9;
    0x0003e264 lw v0, -0x7534(gp)            |     v0 = *(gp);
    0x0003e268 addiu sp, sp, -0x120          |     
    0x0003e26c lw a2, 0xe8(a0)               |     a2 = *((a0 + 58));
    0x0003e270 sw v0, 0x50(sp)               |     *(var_50h) = v0;
    0x0003e274 lw v0, (v0)                   |     v0 = *(v0);
    0x0003e278 sw gp, 0x28(sp)               |     *(var_28h) = gp;
    0x0003e27c sw s1, 0xfc(sp)               |     *(var_fch) = s1;
    0x0003e280 sw v0, 0xf4(sp)               |     *(var_f4h) = v0;
    0x0003e284 sw ra, 0x11c(sp)              |     *(var_11ch) = ra;
    0x0003e288 sw fp, 0x118(sp)              |     *(var_118h) = fp;
    0x0003e28c sw s7, 0x114(sp)              |     *(var_114h) = s7;
    0x0003e290 sw s6, 0x110(sp)              |     *(var_110h) = s6;
    0x0003e294 sw s5, 0x10c(sp)              |     *(var_10ch) = s5;
    0x0003e298 sw s4, 0x108(sp)              |     *(var_108h) = s4;
    0x0003e29c sw s3, 0x104(sp)              |     *(var_104h) = s3;
    0x0003e2a0 sw s2, 0x100(sp)              |     *(var_100h) = s2;
    0x0003e2a4 sw s0, 0xf8(sp)               |     *(var_f8h) = s0;
    0x0003e2a8 move s1, a0                   |     s1 = a0;
    0x0003e2ac lw v0, 8(a0)                  |     v0 = *((a0 + 2));
                                             |     if (a2 == 0) {
    0x0003e2b0 beqz a2, 0x3e6d8              |         goto label_43;
                                             |     }
    0x0003e2b4 lw v0, 0x18(v0)               |     v0 = *((v0 + 6));
    0x0003e2b8 lw v1, (a0)                   |     v1 = *(a0);
    0x0003e2bc lw t9, -0x7380(gp)            |     t9 = sym.imp.apr_filepath_merge;
    0x0003e2c0 lw v0, (v0)                   |     v0 = *(v0);
    0x0003e2c4 addiu a3, zero, 4             |     a3 = 4;
    0x0003e2c8 sw v0, 0x54(sp)               |     *(var_54h_2) = v0;
    0x0003e2cc lw v0, 0xc(v0)                |     v0 = *((v0 + 3));
    0x0003e2d0 move a1, zero                 |     a1 = 0;
    0x0003e2d4 addiu a0, sp, 0x6c            |     a0 = sp + 0x6c;
    0x0003e2d8 lw t0, 0x10(v0)               |     t0 = *((v0 + 4));
    0x0003e2dc lw v0, 8(v0)                  |     v0 = *((v0 + 2));
    0x0003e2e0 sw t0, 0x4c(sp)               |     *(var_4ch_2) = t0;
    0x0003e2e4 sw v0, 0x30(sp)               |     *(var_30h_2) = v0;
    0x0003e2e8 sw v1, 0x10(sp)               |     *(var_10h_3) = v1;
    0x0003e2ec jalr t9                       |     t9 ();
    0x0003e2f0 lw gp, 0x28(sp)               |     gp = *(var_28h);
                                             |     if (v0 != 0) {
    0x0003e2f4 beqz v0, 0x3e370              |         
    0x0003e2f8 lw v1, 0x108(s1)              |         v1 = *(s1);
                                             |         if (v1 == 0) {
    0x0003e2fc beql v1, zero, 0x3f00c        |             goto label_44;
                                             |         }
    0x0003e300 lw v0, 4(s1)                  |         v0 = *((s1 + 1));
                                             | label_29:
    0x0003e304 lw v0, (v1)                   |         v0 = *(v1);
                                             |         if (v0 == 0) {
                                             | label_28:
    0x0003e308 beql v0, zero, 0x3e67c        |             goto label_45;
                                             |         }
    0x0003e30c lw v0, 4(v1)                  |         v0 = *((v1 + 1));
    0x0003e310 lb v0, (v0)                   |         v0 = *(v0);
    0x0003e314 slti v0, v0, 6                |         v0 = (v0 < 6) ? 1 : 0;
                                             |         if (v0 < 0) {
    0x0003e318 bltz v0, 0x3e678              |             goto label_46;
                                             |         }
    0x0003e31c xori v0, v0, 1                |         v0 ^= 1;
    0x0003e320 lw v0, 0xe8(s1)               |         v0 = *((s1 + 58));
                                             |         if (v0 == 0) {
    0x0003e324 bnel v0, zero, 0x3e690        |             goto label_47;
                                             |         }
                                             | label_21:
    0x0003e328 move s2, zero                 |         s2 = 0;
                                             | label_4:
    0x0003e32c lw v0, 0x50(sp)               |         v0 = *(var_50h);
                                             | label_40:
    0x0003e330 lw a0, 0xf4(sp)               |         a0 = *(var_f4h);
    0x0003e334 lw v1, (v0)                   |         v1 = *(v0);
    0x0003e338 move v0, s2                   |         v0 = s2;
                                             |         if (a0 != v1) {
    0x0003e33c bne a0, v1, 0x3f3ec           |             goto label_48;
                                             |         }
    0x0003e340 lw ra, 0x11c(sp)              |         ra = *(var_11ch);
    0x0003e344 lw fp, 0x118(sp)              |         fp = *(var_118h);
    0x0003e348 lw s7, 0x114(sp)              |         s7 = *(var_114h);
    0x0003e34c lw s6, 0x110(sp)              |         s6 = *(var_110h);
    0x0003e350 lw s5, 0x10c(sp)              |         s5 = *(var_10ch);
    0x0003e354 lw s4, 0x108(sp)              |         s4 = *(var_108h);
    0x0003e358 lw s3, 0x104(sp)              |         s3 = *(var_104h);
    0x0003e35c lw s2, 0x100(sp)              |         s2 = *(var_100h);
    0x0003e360 lw s1, 0xfc(sp)               |         s1 = *(var_fch);
    0x0003e364 lw s0, 0xf8(sp)               |         s0 = *(var_f8h);
    0x0003e368 addiu sp, sp, 0x120           |         
    0x0003e36c jr ra                         |         return v0;
                                             |     }
    0x0003e370 lw t9, -0x7c54(gp)            |     t9 = *(gp);
    0x0003e374 lw v0, 0x6c(sp)               |     v0 = *(var_6ch_2);
    0x0003e378 move a1, s1                   |     a1 = s1;
    0x0003e37c sw v0, 0xe8(s1)               |     *((s1 + 58)) = v0;
                                             |     /* fcn.0003bb2c */
    0x0003e380 addiu t9, t9, -0x44d4         |     t9 += -0x44d4;
    0x0003e384 move a0, zero                 |     a0 = 0;
    0x0003e388 bal 0x3bb2c                   |     fcn_0003bb2c ();
    0x0003e38c move v1, v0                   |     v1 = v0;
    0x0003e390 sw v0, 0x34(sp)               |     *(var_34h_2) = v0;
    0x0003e394 lw v0, 0x16c(s1)              |     v0 = *(s1);
    0x0003e398 lw gp, 0x28(sp)               |     gp = *(var_28h);
    0x0003e39c lw s0, (v1)                   |     s0 = *(v1);
                                             |     if (v0 == 0) {
    0x0003e3a0 beqz v0, 0x3e7a4              |         goto label_49;
                                             |     }
    0x0003e3a4 addiu v1, zero, 6             |     v1 = 6;
    0x0003e3a8 addiu v1, zero, 1             |     v1 = 1;
                                             |     if (v0 == v1) {
    0x0003e3ac beq v0, v1, 0x3e7a4           |         goto label_49;
                                             |     }
    0x0003e3b0 lw t9, -0x74c4(gp)            |     t9 = sym.imp.strlen;
                                             |     if (v0 == v1) {
    0x0003e3b4 beq v0, v1, 0x3f044           |         goto label_50;
                                             |     }
    0x0003e3b8 lw s4, 0xe8(s1)               |     s4 = *((s1 + 58));
                                             | label_30:
    0x0003e3bc move a0, s4                   |     a0 = s4;
    0x0003e3c0 jalr t9                       |     t9 ();
    0x0003e3c4 addu v0, s4, v0               |     v0 = s4 + v0;
    0x0003e3c8 lw gp, 0x28(sp)               |     gp = *(var_28h);
    0x0003e3cc lb v0, -1(v0)                 |     v0 = *((v0 - 1));
                                             | label_7:
    0x0003e3d0 addiu v1, zero, 0x2f          |     v1 = 0x2f;
    0x0003e3d4 lw a2, -0x7fac(gp)            |     a2 = *(gp);
                                             |     if (v0 != v1) {
    0x0003e3d8 bne v0, v1, 0x3e800           |         goto label_51;
                                             |     }
    0x0003e3dc lw v0, 0xf0(s1)               |     v0 = *((s1 + 60));
    0x0003e3e0 lw v1, 0x16c(s1)              |     v1 = *(s1);
    0x0003e3e4 sw v0, 0x58(sp)               |     *(var_58h_2) = v0;
    0x0003e3e8 lw s3, 0x100(s1)              |     s3 = *(s1);
                                             |     if (s0 != 0) {
    0x0003e3ec beqz s0, 0x3e400              |         
                                             | label_8:
    0x0003e3f0 addiu v0, zero, 2             |         v0 = 2;
    0x0003e3f4 lw v0, 0x58(sp)               |         v0 = *(var_58h_2);
                                             |         if (v1 == v0) {
    0x0003e3f8 beq v1, v0, 0x3e844           |             goto label_52;
                                             |         }
                                             | label_10:
    0x0003e3fc lw s4, 0xe8(s1)               |         s4 = *((s1 + 58));
                                             |     }
                                             | label_9:
    0x0003e400 lw a0, 0x34(sp)               |     a0 = *(var_34h_2);
    0x0003e404 sw zero, 0x70(sp)             |     *(var_70h_2) = 0;
    0x0003e408 lw v0, (s3)                   |     v0 = *(s3);
    0x0003e40c lw a0, 0x10(a0)               |     a0 = *((a0 + 4));
    0x0003e410 addiu s5, s1, 0xf0            |     s5 = s1 + 0xf0;
    0x0003e414 lbu t0, 0xa(v0)               |     t0 = *((v0 + 10));
    0x0003e418 lw t2, 8(a0)                  |     t2 = *((a0 + 2));
    0x0003e41c lw s3, 0x10(a0)               |     s3 = *((a0 + 4));
    0x0003e420 lw a0, -0x7f14(gp)            |     a0 = *((gp - 8133));
    0x0003e424 lhu t1, 8(v0)                 |     t1 = *((v0 + 4));
    0x0003e428 lw a3, 0xc(v0)                |     a3 = *((v0 + 3));
    0x0003e42c lbu a2, 0x10(v0)              |     a2 = *((v0 + 16));
    0x0003e430 lw a1, 0x68(v0)               |     a1 = *((v0 + 26));
    0x0003e434 addiu v0, zero, 2             |     v0 = 2;
    0x0003e438 sw a3, 0x7c(sp)               |     *(var_7ch) = a3;
    0x0003e43c sw t2, 0x60(sp)               |     *(var_60h_2) = t2;
    0x0003e440 lw s2, -0x3d28(a0)            |     s2 = *((a0 - 3914));
    0x0003e444 sh t1, 0x78(sp)               |     *(var_78h) = t1;
    0x0003e448 sb t0, 0x7a(sp)               |     *(var_7ah) = t0;
    0x0003e44c sw a2, 0x80(sp)               |     *(var_80h) = a2;
    0x0003e450 sw a1, 0x84(sp)               |     *(var_84h) = a1;
    0x0003e454 lw a3, (s1)                   |     a3 = *(s1);
                                             |     if (v1 == v0) {
    0x0003e458 beq v1, v0, 0x3e750           |         goto label_53;
                                             |     }
    0x0003e45c sw s4, 0xf0(s1)               |     *((s1 + 60)) = s4;
                                             | label_5:
    0x0003e460 lw t9, -0x7518(gp)            |     t9 = *(gp);
    0x0003e464 addiu a0, s1, 0xe8            |     a0 = s1 + 0xe8;
    0x0003e468 move a2, zero                 |     a2 = 0;
    0x0003e46c move a1, s5                   |     a1 = s5;
    0x0003e470 jalr t9                       |     t9 ();
    0x0003e474 lw gp, 0x28(sp)               |     gp = *(var_28h);
    0x0003e478 lw a0, 0xe8(s1)               |     a0 = *((s1 + 58));
                                             |     if (v0 != 0) {
    0x0003e47c bnez v0, 0x3efbc              |         goto label_54;
                                             |     }
    0x0003e480 sltu s0, zero, s0             |     s0 = (0 < s0) ? 1 : 0;
    0x0003e484 lw t9, -0x74c4(gp)            |     t9 = sym.imp.strlen;
    0x0003e488 and v0, s2, s0                |     v0 = s2 & s0;
    0x0003e48c sw v0, 0x40(sp)               |     *(var_40h_2) = v0;
    0x0003e490 jalr t9                       |     t9 ();
    0x0003e494 lw gp, 0x28(sp)               |     gp = *(var_28h);
    0x0003e498 lw a0, 0xf0(s1)               |     a0 = *((s1 + 60));
    0x0003e49c sw v0, 0x3c(sp)               |     *(var_3ch_2) = v0;
    0x0003e4a0 lw t9, -0x74c4(gp)            |     t9 = sym.imp.strlen;
    0x0003e4a4 move s0, v0                   |     s0 = v0;
    0x0003e4a8 jalr t9                       |     t9 ();
    0x0003e4ac lw gp, 0x28(sp)               |     gp = *(var_28h);
    0x0003e4b0 addu v0, v0, s0               |     v0 += s0;
    0x0003e4b4 lw a0, (s1)                   |     a0 = *(s1);
    0x0003e4b8 lw t9, -0x7544(gp)            |     t9 = sym.imp.apr_palloc;
    0x0003e4bc addiu a1, v0, 2               |     a1 = v0 + 2;
    0x0003e4c0 jalr t9                       |     t9 ();
    0x0003e4c4 lw gp, 0x28(sp)               |     gp = *(var_28h);
    0x0003e4c8 lw a1, 0xe8(s1)               |     a1 = *((s1 + 58));
    0x0003e4cc addiu a2, s0, 1               |     a2 = s0 + 1;
    0x0003e4d0 lw t9, -0x74b4(gp)            |     t9 = sym.imp.memcpy;
    0x0003e4d4 move a0, v0                   |     a0 = v0;
    0x0003e4d8 jalr t9                       |     t9 ();
    0x0003e4dc lw gp, 0x28(sp)               |     gp = *(var_28h);
    0x0003e4e0 move a0, v0                   |     a0 = v0;
    0x0003e4e4 sw v0, 0xe8(s1)               |     *((s1 + 58)) = v0;
    0x0003e4e8 ori v0, zero, 0x8000          |     v0 = 0x8000;
    0x0003e4ec sw v0, 0x8c(sp)               |     *(var_8ch) = v0;
    0x0003e4f0 lw t9, -0x7b98(gp)            |     t9 = sym.ap_count_dirs;
    0x0003e4f4 addiu v0, zero, 2             |     v0 = 2;
    0x0003e4f8 sw v0, 0x94(sp)               |     *(var_94h) = v0;
    0x0003e4fc jalr t9                       |     t9 ();
    0x0003e500 lw gp, 0x28(sp)               |     gp = *(var_28h);
    0x0003e504 sw v0, 0x44(sp)               |     *(var_44h_2) = v0;
    0x0003e508 move s4, v0                   |     s4 = v0;
    0x0003e50c lw v0, -0x7c54(gp)            |     v0 = *(gp);
    0x0003e510 lw s6, 0x60(sp)               |     s6 = *(var_60h_2);
    0x0003e514 addiu v0, v0, -0x4580         |     v0 += -0x4580;
    0x0003e518 sw v0, 0x38(sp)               |     *(var_38h_2) = v0;
    0x0003e51c lw v0, -0x7c54(gp)            |     v0 = *(gp);
    0x0003e520 move s0, zero                 |     s0 = 0;
                                             |     /* fcn.0003bcec */
    0x0003e524 addiu v0, v0, -0x4314         |     v0 += -0x4314;
    0x0003e528 move s5, zero                 |     s5 = 0;
    0x0003e52c sw zero, 0x48(sp)             |     *(var_48h_2) = 0;
    0x0003e530 sw v0, 0x64(sp)               |     *(var_64h_2) = v0;
                                             | label_13:
    0x0003e534 lw v0, 0x30(sp)               |     v0 = *(var_30h_2);
    0x0003e538 slt v0, s0, v0                |     v0 = (s0 < v0) ? 1 : 0;
    0x0003e53c lw v0, 0x4c(sp)               |     v0 = *(var_4ch_2);
                                             |     if (v0 == 0) {
    0x0003e540 beqz v0, 0x3e8a8              |         goto label_55;
                                             |     }
    0x0003e544 sll v1, s0, 2                 |     v1 = s0 << 2;
    0x0003e548 addu fp, v0, v1               |     fp = v0 + v1;
    0x0003e54c lw v0, (fp)                   |     v0 = *(fp);
    0x0003e550 lw a0, (v0)                   |     a0 = *(v0);
    0x0003e554 lw v0, 0x38(a0)               |     v0 = *((a0 + 14));
    0x0003e558 lw v0, 0x44(sp)               |     v0 = *(var_44h_2);
                                             |     if (v0 != 0) {
    0x0003e55c bnez v0, 0x3e8ac              |         goto label_56;
                                             |     }
    0x0003e560 lw v0, 4(a0)                  |     v0 = *((a0 + 1));
    0x0003e564 sltu a1, s4, v0               |     a1 = (s4 < v0) ? 1 : 0;
    0x0003e568 lw v0, 0x44(sp)               |     v0 = *(var_44h_2);
                                             |     if (a1 == 0) {
    0x0003e56c bnel a1, zero, 0x3e8ac        |         goto label_56;
                                             |     }
    0x0003e570 move s2, fp                   |     s2 = fp;
    0x0003e574 addiu s7, sp, 0x78            |     s7 = sp + 0x78;
    0x0003e578 b 0x3e618                     |     goto label_57;
                                             | label_1:
    0x0003e57c lw a2, (fp)                   |     a2 = *(fp);
    0x0003e580 lw v0, (s3)                   |     v0 = *(s3);
    0x0003e584 lw v0, 0x34(sp)               |     v0 = *(var_34h_2);
                                             |     if (v0 == a2) {
    0x0003e588 beq v0, a2, 0x3eb7c           |         goto label_58;
                                             |     }
    0x0003e58c sw zero, 0x40(sp)             |     *(var_40h_2) = 0;
    0x0003e590 lw a0, 0x10(v0)               |     a0 = *((v0 + 4));
    0x0003e594 lw v0, 8(a0)                  |     v0 = *((a0 + 2));
    0x0003e598 subu s6, v0, s6               |     __asm ("subu s6, v0, s6");
    0x0003e59c sw s6, 8(a0)                  |     *((a0 + 2)) = s6;
                                             |     if (s5 == 0) {
    0x0003e5a0 beqz s5, 0x3e670              |         goto label_59;
                                             |     }
                                             | label_2:
    0x0003e5a4 lw t9, -0x7b54(gp)            |     t9 = sym.ap_merge_per_dir_configs;
    0x0003e5a8 lw a0, (s1)                   |     a0 = *(s1);
    0x0003e5ac move a1, s5                   |     a1 = s5;
    0x0003e5b0 bal 0x4b8c8                   |     sym_ap_merge_per_dir_configs ();
    0x0003e5b4 lw gp, 0x28(sp)               |     gp = *(var_28h);
    0x0003e5b8 move s5, v0                   |     s5 = v0;
                                             | label_3:
    0x0003e5bc lw v0, 0x34(sp)               |     v0 = *(var_34h_2);
    0x0003e5c0 lw t9, -0x7324(gp)            |     t9 = sym.imp.apr_array_push;
    0x0003e5c4 move s6, zero                 |     s6 = 0;
    0x0003e5c8 lw a0, 0x10(v0)               |     a0 = *((v0 + 4));
    0x0003e5cc jalr t9                       |     t9 ();
    0x0003e5d0 move s3, v0                   |     s3 = v0;
    0x0003e5d4 lw v0, (fp)                   |     v0 = *(fp);
    0x0003e5d8 lw gp, 0x28(sp)               |     gp = *(var_28h);
    0x0003e5dc sw s5, 4(s3)                  |     *((s3 + 1)) = s5;
    0x0003e5e0 sw v0, (s3)                   |     *(s3) = v0;
                                             | label_0:
    0x0003e5e4 lw v0, 0x30(sp)               |     v0 = *(var_30h_2);
                                             |     do {
    0x0003e5e8 addiu s0, s0, 1               |         s0++;
                                             |         if (v0 == s0) {
    0x0003e5ec beql v0, s0, 0x3e8a8          |             goto label_55;
                                             |         }
    0x0003e5f0 move s0, v0                   |         s0 = v0;
    0x0003e5f4 lw v0, 4(s2)                  |         v0 = *((s2 + 1));
                                             | label_12:
    0x0003e5f8 lw a0, (v0)                   |         a0 = *(v0);
    0x0003e5fc lw v0, 0x38(a0)               |         v0 = *((a0 + 14));
    0x0003e600 addiu fp, fp, 4               |         fp += 4;
                                             |         if (v0 != 0) {
    0x0003e604 bnez v0, 0x3e8a8              |             goto label_55;
                                             |         }
    0x0003e608 lw v0, 4(a0)                  |         v0 = *((a0 + 1));
    0x0003e60c sltu a1, s4, v0               |         a1 = (s4 < v0) ? 1 : 0;
    0x0003e610 addiu s2, s2, 4               |         s2 += 4;
                                             |         if (a1 != 0) {
    0x0003e614 bnez a1, 0x3e8a8              |             goto label_55;
                                             |         }
                                             | label_57:
    0x0003e618 sltu v0, v0, s4               |         v0 = (v0 < s4) ? 1 : 0;
                                             |         if (v0 == 0) {
    0x0003e61c beqz v0, 0x3e650              |             goto label_11;
                                             |         }
    0x0003e620 lw v0, 0x30(sp)               |         v0 = *(var_30h_2);
    0x0003e624 bnez v0, 0x3e5e8              |         
                                             |     } while (v0 != 0);
    0x0003e628 lhu v0, 0x18(a0)              |     v0 = *((a0 + 12));
    0x0003e62c lw t0, (a0)                   |     t0 = *(a0);
    0x0003e630 andi v0, v0, 0x100            |     v0 &= aav.0x00000100;
    0x0003e634 lw a0, 0xe8(s1)               |     a0 = *((s1 + 58));
                                             |     if (v0 != 0) {
    0x0003e638 bnez v0, 0x3e878              |         goto label_60;
                                             |     }
    0x0003e63c lw t9, -0x7740(gp)            |     t9 = sym.imp.strcmp;
    0x0003e640 move a1, t0                   |     a1 = t0;
    0x0003e644 jalr t9                       |     t9 ();
    0x0003e648 lw gp, 0x28(sp)               |     gp = *(var_28h);
                                             |     if (v0 != 0) {
    0x0003e64c bnez v0, 0x3e5e4              |         goto label_0;
                                             |     }
                                             | label_11:
    0x0003e650 lw a0, (fp)                   |     a0 = *(fp);
    0x0003e654 lw t9, 0x38(sp)               |     t9 = *(var_38h_2);
    0x0003e658 move a1, s7                   |     a1 = s7;
    0x0003e65c jalr t9                       |     t9 ();
    0x0003e660 lw gp, 0x28(sp)               |     gp = *(var_28h);
                                             |     if (s6 != 0) {
    0x0003e664 bnez s6, 0x3e57c              |         goto label_1;
                                             |     }
    0x0003e668 lw a2, (fp)                   |     a2 = *(fp);
                                             |     if (s5 != 0) {
    0x0003e66c bnez s5, 0x3e5a4              |         goto label_2;
                                             |     }
                                             | label_59:
    0x0003e670 move s5, a2                   |     s5 = a2;
    0x0003e674 b 0x3e5bc                     |     goto label_3;
                                             | label_46:
    0x0003e678 lw v0, 4(v1)                  |     v0 = *((v1 + 1));
                                             | label_45:
    0x0003e67c slti v0, v0, 6                |     v0 = (v0 < 6) ? 1 : 0;
    0x0003e680 xori v0, v0, 1                |     v0 ^= 1;
                                             |     if (v0 == 0) {
    0x0003e684 beql v0, zero, 0x3e32c        |         goto label_4;
                                             |     }
    0x0003e688 move s2, zero                 |     s2 = 0;
    0x0003e68c lw v0, 0xe8(s1)               |     v0 = *((s1 + 58));
                                             | label_47:
    0x0003e690 lw v1, 0xe4(s1)               |     v1 = *((s1 + 57));
    0x0003e694 sw v0, 0x1c(sp)               |     *(var_1ch_2) = v0;
    0x0003e698 lw v0, -0x7fac(gp)            |     v0 = *(gp);
    0x0003e69c lw a0, -0x7fac(gp)            |     a0 = *(gp);
    0x0003e6a0 lw t9, -0x7f08(gp)            |     t9 = sym.ap_log_rerror_;
                                             |     /* str.AH00030:_Module_bug___Request_filename_path__s_is_invalid_or_or_not_absolute_for_uri__s */
    0x0003e6a4 addiu v0, v0, -0x1078         |     v0 += -aav.0x00001078;
    0x0003e6a8 sw v1, 0x20(sp)               |     *(var_20h_2) = v1;
    0x0003e6ac sw v0, 0x18(sp)               |     *(var_18h_3) = v0;
    0x0003e6b0 sw s1, 0x14(sp)               |     *(var_14h) = s1;
    0x0003e6b4 sw zero, 0x10(sp)             |     *(var_10h_3) = 0;
    0x0003e6b8 addiu a3, zero, 6             |     a3 = 6;
    0x0003e6bc move a2, zero                 |     a2 = 0;
    0x0003e6c0 addiu a1, zero, 0x2ba         |     a1 = 0x2ba;
                                             |     /* esilref: '/usr/src/debug/apache2/2.4.57-r0/httpd-2.4.57/server/request.c' */
    0x0003e6c4 addiu a0, a0, -0x1258         |     a0 += -0x1258;
    0x0003e6c8 bal 0x530a8                   |     sym_ap_log_rerror_ ();
    0x0003e6cc move s2, zero                 |     s2 = 0;
    0x0003e6d0 lw gp, 0x28(sp)               |     gp = *(var_28h);
    0x0003e6d4 b 0x3e32c                     |     goto label_4;
                                             | label_43:
    0x0003e6d8 lw v1, 0x108(a0)              |     v1 = *(a0);
                                             |     if (v1 == 0) {
    0x0003e6dc beql v1, zero, 0x3f030        |         goto label_61;
                                             |     }
    0x0003e6e0 lw v1, 4(a0)                  |     v1 = *((a0 + 1));
                                             | label_31:
    0x0003e6e4 lw v0, (v1)                   |     v0 = *(v1);
                                             |     if (v0 == 0) {
                                             | label_32:
    0x0003e6e8 beql v0, zero, 0x3e798        |         goto label_62;
                                             |     }
    0x0003e6ec lw v0, 4(v1)                  |     v0 = *((v1 + 1));
    0x0003e6f0 lb v0, (v0)                   |     v0 = *(v0);
                                             |     if (v0 < 0) {
    0x0003e6f4 bltzl v0, 0x3e798             |         goto label_62;
                                             |     }
    0x0003e6f8 lw v0, 4(v1)                  |     v0 = *((v1 + 1));
    0x0003e6fc slti v0, v0, 6                |     v0 = (v0 < 6) ? 1 : 0;
    0x0003e700 xori v0, v0, 1                |     v0 ^= 1;
                                             |     if (v0 == 0) {
                                             | label_6:
    0x0003e704 beql v0, zero, 0x3e32c        |         goto label_4;
                                             |     }
    0x0003e708 move s2, zero                 |     s2 = 0;
    0x0003e70c lw v0, 0xe4(s1)               |     v0 = *((s1 + 57));
    0x0003e710 lw a0, -0x7fac(gp)            |     a0 = *(gp);
    0x0003e714 sw v0, 0x1c(sp)               |     *(var_1ch_2) = v0;
    0x0003e718 lw v0, -0x7fac(gp)            |     v0 = *(gp);
    0x0003e71c lw t9, -0x7f08(gp)            |     t9 = sym.ap_log_rerror_;
                                             |     /* str.AH00029:_Module_bug___Request_filename_is_missing_for_URI__s */
    0x0003e720 addiu v0, v0, -0x10b8         |     v0 += -0x10b8;
    0x0003e724 sw v0, 0x18(sp)               |     *(var_18h_3) = v0;
    0x0003e728 sw s1, 0x14(sp)               |     *(var_14h) = s1;
    0x0003e72c sw zero, 0x10(sp)             |     *(var_10h_3) = 0;
    0x0003e730 addiu a3, zero, 6             |     a3 = 6;
    0x0003e734 move a2, zero                 |     a2 = 0;
    0x0003e738 addiu a1, zero, 0x2ac         |     a1 = aav.0x000002ac;
                                             |     /* esilref: '/usr/src/debug/apache2/2.4.57-r0/httpd-2.4.57/server/request.c' */
    0x0003e73c addiu a0, a0, -0x1258         |     a0 += -0x1258;
    0x0003e740 bal 0x530a8                   |     sym_ap_log_rerror_ ();
    0x0003e744 move s2, zero                 |     s2 = 0;
    0x0003e748 lw gp, 0x28(sp)               |     gp = *(var_28h);
    0x0003e74c b 0x3e32c                     |     goto label_4;
                                             | label_53:
    0x0003e750 lw v0, 0x58(sp)               |     v0 = *(var_58h_2);
                                             |     if (v0 == 0) {
    0x0003e754 beql v0, zero, 0x3e460        |         goto label_5;
                                             |     }
    0x0003e758 sw s4, 0xf0(s1)               |     *((s1 + 60)) = s4;
    0x0003e75c lb v0, (v0)                   |     v0 = *(v0);
                                             |     if (v0 == 0) {
    0x0003e760 beql v0, zero, 0x3e460        |         goto label_5;
                                             |     }
    0x0003e764 sw s4, 0xf0(s1)               |     *((s1 + 60)) = s4;
    0x0003e768 lw t9, -0x7380(gp)            |     t9 = sym.imp.apr_filepath_merge;
    0x0003e76c lw a2, 0x58(sp)               |     a2 = *(var_58h_2);
    0x0003e770 sw a3, 0x10(sp)               |     *(var_10h_3) = a3;
    0x0003e774 move a1, s4                   |     a1 = s4;
    0x0003e778 addiu a3, zero, 1             |     a3 = 1;
    0x0003e77c move a0, s5                   |     a0 = s5;
    0x0003e780 jalr t9                       |     t9 ();
    0x0003e784 lw gp, 0x28(sp)               |     gp = *(var_28h);
                                             |     if (v0 != 0) {
    0x0003e788 bnez v0, 0x3f33c              |         goto label_63;
                                             |     }
    0x0003e78c lw a3, (s1)                   |     a3 = *(s1);
    0x0003e790 sw zero, 0x58(sp)             |     *(var_58h_2) = 0;
    0x0003e794 b 0x3e460                     |     goto label_5;
                                             | label_62:
    0x0003e798 slti v0, v0, 6                |     v0 = (v0 < 6) ? 1 : 0;
    0x0003e79c xori v0, v0, 1                |     v0 ^= 1;
    0x0003e7a0 b 0x3e704                     |     goto label_6;
                                             | label_49:
    0x0003e7a4 lw t9, -0x7b38(gp)            |     t9 = sym.ap_run_dirwalk_stat;
    0x0003e7a8 ori a2, zero, 0x8170          |     a2 = 0x8170;
    0x0003e7ac move a1, s1                   |     a1 = s1;
    0x0003e7b0 addiu a0, s1, 0x160           |     a0 = s1 + aav.0x00000160;
    0x0003e7b4 bal 0x3de90                   |     sym_ap_run_dirwalk_stat ();
    0x0003e7b8 lw gp, 0x28(sp)               |     gp = *(var_28h);
    0x0003e7bc lw s4, 0xe8(s1)               |     s4 = *((s1 + 58));
                                             |     if (v0 != 0) {
    0x0003e7c0 bnez v0, 0x3f024              |         goto label_64;
                                             |     }
    0x0003e7c4 lw t9, -0x74c4(gp)            |     t9 = sym.imp.strlen;
    0x0003e7c8 move a0, s4                   |     a0 = s4;
    0x0003e7cc jalr t9                       |     t9 ();
    0x0003e7d0 lw a0, 0x16c(s1)              |     a0 = *(s1);
    0x0003e7d4 addu v0, s4, v0               |     v0 = s4 + v0;
    0x0003e7d8 addiu v1, zero, -3            |     v1 = -3;
    0x0003e7dc and v1, a0, v1                |     v1 = a0 & v1;
    0x0003e7e0 lw gp, 0x28(sp)               |     gp = *(var_28h);
    0x0003e7e4 lb v0, -1(v0)                 |     v0 = *((v0 - 1));
                                             |     if (v1 == 0) {
    0x0003e7e8 beqz v1, 0x3e3d0              |         goto label_7;
                                             |     }
    0x0003e7ec addiu v1, zero, 0x2f          |     v1 = 0x2f;
    0x0003e7f0 addiu v0, zero, 1             |     v0 = 1;
                                             |     if (v0 == v1) {
    0x0003e7f4 beq v0, v1, 0x3f024           |         goto label_64;
                                             |     }
    0x0003e7f8 lw a2, -0x7fac(gp)            |     a2 = *(gp);
                                             |     if (a0 == v0) {
    0x0003e7fc beq a0, v0, 0x3f044           |         goto label_50;
                                             |     }
                                             | label_51:
    0x0003e800 lw t9, -0x76e8(gp)            |     t9 = sym.imp.apr_pstrcat
    0x0003e804 lw a0, (s1)                   |     a0 = *(s1);
    0x0003e808 move a3, zero                 |     a3 = 0;
    0x0003e80c addiu a2, a2, -0x6a2c         |     a2 += -0x6a2c;
    0x0003e810 move a1, s4                   |     a1 = s4;
    0x0003e814 jalr t9                       |     t9 ();
    0x0003e818 lw gp, 0x28(sp)               |     gp = *(var_28h);
    0x0003e81c sw v0, 0x6c(sp)               |     *(var_6ch_2) = v0;
                                             | label_33:
    0x0003e820 lw v1, 0x16c(s1)              |     v1 = *(s1);
    0x0003e824 lw s3, 0x100(s1)              |     s3 = *(s1);
                                             |     if (s0 == 0) {
    0x0003e828 beqz s0, 0x3e86c              |         goto label_36;
                                             |     }
    0x0003e82c addiu v0, zero, 1             |     v0 = 1;
    0x0003e830 lw v0, 0x34(sp)               |     v0 = *(var_34h_2);
                                             |     if (v1 == v0) {
    0x0003e834 beq v1, v0, 0x3e85c           |         goto label_65;
                                             |     }
    0x0003e838 lw v0, 0xf0(s1)               |     v0 = *((s1 + 60));
    0x0003e83c sw v0, 0x58(sp)               |     *(var_58h_2) = v0;
    0x0003e840 b 0x3e3f0                     |     goto label_8;
                                             |     if (v0 == 0) {
                                             | label_52:
    0x0003e844 beql v0, zero, 0x3e85c        |         goto label_65;
                                             |     }
    0x0003e848 lw v0, 0x34(sp)               |     v0 = *(var_34h_2);
    0x0003e84c lb v0, (v0)                   |     v0 = *(v0);
    0x0003e850 lw s4, 0xe8(s1)               |     s4 = *((s1 + 58));
                                             |     if (v0 == 0) {
    0x0003e854 bnel v0, zero, 0x3e400        |         goto label_9;
                                             |     }
    0x0003e858 lw v0, 0x34(sp)               |     v0 = *(var_34h_2);
                                             | label_65:
    0x0003e85c lw a0, 0x4c(sp)               |     a0 = *(var_4ch_2);
    0x0003e860 lw v0, 4(v0)                  |     v0 = *((v0 + 1));
    0x0003e864 lw v0, 0x34(sp)               |     v0 = *(var_34h_2);
                                             |     if (v0 == a0) {
    0x0003e868 beq v0, a0, 0x3f0bc           |         goto label_66;
                                             |     }
                                             | label_36:
    0x0003e86c lw v0, 0xf0(s1)               |     v0 = *((s1 + 60));
    0x0003e870 sw v0, 0x58(sp)               |     *(var_58h_2) = v0;
    0x0003e874 b 0x3e3fc                     |     goto label_10;
                                             | label_60:
    0x0003e878 lw t9, -0x7618(gp)            |     t9 = sym.imp.apr_fnmatch;
    0x0003e87c move a1, a0                   |     a1 = a0;
    0x0003e880 addiu a2, zero, 2             |     a2 = 2;
    0x0003e884 move a0, t0                   |     a0 = t0;
    0x0003e888 jalr t9                       |     t9 ();
    0x0003e88c lw gp, 0x28(sp)               |     gp = *(var_28h);
                                             |     if (v0 == 0) {
    0x0003e890 beqz v0, 0x3e650              |         goto label_11;
                                             |     }
    0x0003e894 lw v0, 0x30(sp)               |     v0 = *(var_30h_2);
    0x0003e898 addiu s0, s0, 1               |     s0++;
    0x0003e89c lw v0, 4(s2)                  |     v0 = *((s2 + 1));
                                             |     if (v0 == s0) {
    0x0003e8a0 bnel v0, s0, 0x3e5f8          |         goto label_12;
                                             |     }
    0x0003e8a4 move s0, v0                   |     s0 = v0;
                                             | label_55:
    0x0003e8a8 lw v0, 0x44(sp)               |     v0 = *(var_44h_2);
                                             | label_56:
    0x0003e8ac sltu v0, s4, v0               |     v0 = (s4 < v0) ? 1 : 0;
    0x0003e8b0 sw zero, 0x74(sp)             |     *(var_74h_2) = 0;
                                             |     if (v0 != 0) {
    0x0003e8b4 bnez v0, 0x3e99c              |         goto label_38;
                                             |     }
    0x0003e8b8 lw a2, 0x7c(sp)               |     a2 = *(var_7ch);
    0x0003e8bc lw a0, 0x84(sp)               |     a0 = *(var_84h);
                                             |     if (a2 == 0) {
    0x0003e8c0 bnez a2, 0x3e8e0              |         
    0x0003e8c4 lw t9, -0x7208(gp)            |         t9 = sym.imp.apr_is_empty_table;
    0x0003e8c8 jalr t9                       |         t9 ();
    0x0003e8cc nop                           |         
    0x0003e8d0 lw gp, 0x28(sp)               |         gp = *(var_28h);
                                             |         if (v0 != 0) {
    0x0003e8d4 bnez v0, 0x3e99c              |             goto label_38;
                                             |         }
    0x0003e8d8 lw a2, 0x7c(sp)               |         a2 = *(var_7ch);
    0x0003e8dc lw a0, 0x84(sp)               |         a0 = *(var_84h);
                                             |     }
    0x0003e8e0 lw v0, 0x54(sp)               |     v0 = *(var_54h_2);
    0x0003e8e4 lw t9, -0x7b34(gp)            |     t9 = sym.ap_parse_htaccess;
    0x0003e8e8 lw a3, 0x80(sp)               |     a3 = *(var_80h);
    0x0003e8ec lw v1, 8(v0)                  |     v1 = *((v0 + 2));
    0x0003e8f0 lw v0, 0xe8(s1)               |     v0 = *((s1 + 58));
    0x0003e8f4 move a1, s1                   |     a1 = s1;
    0x0003e8f8 sw a0, 0x10(sp)               |     *(var_10h_3) = a0;
    0x0003e8fc sw v1, 0x18(sp)               |     *(var_18h_3) = v1;
    0x0003e900 sw v0, 0x14(sp)               |     *(var_14h) = v0;
    0x0003e904 addiu a0, sp, 0x74            |     a0 = sp + 0x74;
    0x0003e908 bal 0x4dfd0                   |     sym_ap_parse_htaccess ();
    0x0003e90c move s2, v0                   |     s2 = v0;
    0x0003e910 lw gp, 0x28(sp)               |     gp = *(var_28h);
                                             |     if (v0 != 0) {
    0x0003e914 bnez v0, 0x3e32c              |         goto label_4;
                                             |     }
    0x0003e918 lw a0, 0x74(sp)               |     a0 = *(var_74h_2);
    0x0003e91c lw t9, 0x38(sp)               |     t9 = *(var_38h_2);
                                             |     if (a0 != 0) {
    0x0003e920 beqz a0, 0x3e99c              |         
    0x0003e924 addiu a1, sp, 0x78            |         a1 = sp + 0x78;
    0x0003e928 jalr t9                       |         t9 ();
    0x0003e92c lw gp, 0x28(sp)               |         gp = *(var_28h);
    0x0003e930 lw a2, 0x74(sp)               |         a2 = *(var_74h_2);
                                             |         if (s6 != 0) {
    0x0003e934 beqz s6, 0x3e958              |             
    0x0003e938 lw v0, (s3)                   |             v0 = *(s3);
    0x0003e93c lw v0, 0x34(sp)               |             v0 = *(var_34h_2);
                                             |             if (v0 == a2) {
    0x0003e940 beq v0, a2, 0x3f144           |                 goto label_67;
                                             |             }
    0x0003e944 sw zero, 0x40(sp)             |             *(var_40h_2) = 0;
    0x0003e948 lw v1, 0x10(v0)               |             v1 = *((v0 + 4));
    0x0003e94c lw v0, 8(v1)                  |             v0 = *((v1 + 2));
    0x0003e950 subu s6, v0, s6               |             __asm ("subu s6, v0, s6");
    0x0003e954 sw s6, 8(v1)                  |             *((v1 + 2)) = s6;
                                             |         }
    0x0003e958 lw t9, -0x7b54(gp)            |         t9 = sym.ap_merge_per_dir_configs;
                                             |         if (s5 == 0) {
    0x0003e95c beqz s5, 0x3efb4              |             goto label_68;
                                             |         }
    0x0003e960 lw a0, (s1)                   |         a0 = *(s1);
    0x0003e964 move a1, s5                   |         a1 = s5;
    0x0003e968 bal 0x4b8c8                   |         sym_ap_merge_per_dir_configs ();
    0x0003e96c lw gp, 0x28(sp)               |         gp = *(var_28h);
    0x0003e970 move s5, v0                   |         s5 = v0;
                                             | label_27:
    0x0003e974 lw v0, 0x34(sp)               |         v0 = *(var_34h_2);
    0x0003e978 lw t9, -0x7324(gp)            |         t9 = sym.imp.apr_array_push;
    0x0003e97c move s6, zero                 |         s6 = 0;
    0x0003e980 lw a0, 0x10(v0)               |         a0 = *((v0 + 4));
    0x0003e984 jalr t9                       |         t9 ();
    0x0003e988 move s3, v0                   |         s3 = v0;
    0x0003e98c lw gp, 0x28(sp)               |         gp = *(var_28h);
    0x0003e990 sw s5, 4(v0)                  |         *((v0 + 1)) = s5;
    0x0003e994 lw v0, 0x74(sp)               |         v0 = *(var_74h_2);
    0x0003e998 sw v0, (s3)                   |         *(s3) = v0;
                                             |     }
                                             | label_38:
    0x0003e99c lw v0, 0x48(sp)               |     v0 = *(var_48h_2);
                                             |     if (v0 != 0) {
    0x0003e9a0 beql v0, zero, 0x3e9c4        |         
    0x0003e9a4 lw v1, 0xf0(s1)               |         v1 = *((s1 + 60));
    0x0003e9a8 lw v1, 0x3c(sp)               |         v1 = *(var_3ch_2);
    0x0003e9ac lw v0, 0xe8(s1)               |         v0 = *((s1 + 58));
    0x0003e9b0 addiu v1, v1, -1              |         v1 += -1;
    0x0003e9b4 addu v0, v0, v1               |         v0 += v1;
    0x0003e9b8 sw v1, 0x3c(sp)               |         *(var_3ch_2) = v1;
    0x0003e9bc sb zero, (v0)                 |         *(v0) = 0;
    0x0003e9c0 lw v1, 0xf0(s1)               |         v1 = *((s1 + 60));
                                             |     }
                                             |     if (v1 == 0) {
    0x0003e9c4 beql v1, zero, 0x3ec50        |         goto label_69;
                                             |     }
    0x0003e9c8 lw v1, 0x16c(s1)              |     v1 = *(s1);
    0x0003e9cc lb a0, (v1)                   |     a0 = *(v1);
    0x0003e9d0 xori a0, a0, 0x2f             |     a0 ^= 0x2f;
                                             |     if (a0 == 0) {
    0x0003e9d4 beqz a0, 0x3ec4c              |         goto label_70;
                                             |     }
    0x0003e9d8 lw t9, -0x72b8(gp)            |     t9 = sym.imp.strchr;
    0x0003e9dc sltiu a0, a0, 1               |     a0 = (a0 < 1) ? 1 : 0;
    0x0003e9e0 lw s2, 0xe8(s1)               |     s2 = *((s1 + 58));
    0x0003e9e4 addu a0, v1, a0               |     a0 = v1 + a0;
    0x0003e9e8 sw v1, 0x48(sp)               |     *(var_48h_2) = v1;
    0x0003e9ec lw s7, 0x3c(sp)               |     s7 = *(var_3ch_2);
    0x0003e9f0 addiu a1, zero, 0x2f          |     a1 = 0x2f;
    0x0003e9f4 jalr t9                       |     t9 ();
    0x0003e9f8 addu s2, s2, s7               |     s2 += s7;
    0x0003e9fc lw gp, 0x28(sp)               |     gp = *(var_28h);
    0x0003ea00 lw v1, 0x48(sp)               |     v1 = *(var_48h_2);
                                             |     if (v0 == 0) {
    0x0003ea04 beqz v0, 0x3eb94              |         goto label_71;
                                             |     }
    0x0003ea08 sb zero, (v0)                 |     *(v0) = 0;
    0x0003ea0c subu v1, v0, v1               |     __asm ("subu v1, v0, v1");
    0x0003ea10 lw t9, -0x74b4(gp)            |     t9 = sym.imp.memcpy;
    0x0003ea14 lw a1, 0xf0(s1)               |     a1 = *((s1 + 60));
    0x0003ea18 addiu a2, v1, 1               |     a2 = v1 + 1;
    0x0003ea1c sw v1, 0x3c(sp)               |     *(var_3ch_2) = v1;
    0x0003ea20 sw v0, 0x48(sp)               |     *(var_48h_2) = v0;
    0x0003ea24 move a0, s2                   |     a0 = s2;
    0x0003ea28 jalr t9                       |     t9 ();
    0x0003ea2c lw v1, 0x3c(sp)               |     v1 = *(var_3ch_2);
    0x0003ea30 lw a3, 0x48(sp)               |     a3 = *(var_48h_2);
    0x0003ea34 addu v0, s7, v1               |     v0 = s7 + v1;
    0x0003ea38 sw v0, 0x3c(sp)               |     *(var_3ch_2) = v0;
    0x0003ea3c addiu v0, zero, 0x2f          |     v0 = 0x2f;
    0x0003ea40 lw gp, 0x28(sp)               |     gp = *(var_28h);
    0x0003ea44 sw a3, 0xf0(s1)               |     *((s1 + 60)) = a3;
    0x0003ea48 sb v0, (a3)                   |     *(a3) = v0;
                                             | label_14:
    0x0003ea4c lb v0, (s2)                   |     v0 = *(s2);
    0x0003ea50 addiu v1, zero, 0x2f          |     v1 = 0x2f;
                                             |     if (v0 == v1) {
    0x0003ea54 bne v0, v1, 0x3ea64           |         
    0x0003ea58 nop                           |         
    0x0003ea5c lb v0, 1(s2)                  |         v0 = *((s2 + 1));
    0x0003ea60 addiu s2, s2, 1               |         s2++;
                                             |     }
    0x0003ea64 lw v1, 0x16c(s1)              |     v1 = *(s1);
                                             |     if (v0 == 0) {
    0x0003ea68 beqz v0, 0x3ec50              |         goto label_69;
                                             |     }
    0x0003ea6c lbu v0, 0x78(sp)              |     v0 = *(var_78h);
                                             |     if (v1 != 0) {
    0x0003ea70 beqz v1, 0x3ea84              |         
    0x0003ea74 addiu v1, zero, 4             |         v1 = 4;
    0x0003ea78 andi v0, v0, 0x44             |         v0 &= 0x44;
    0x0003ea7c addiu v0, zero, 2             |         v0 = 2;
                                             |         if (v0 == v1) {
    0x0003ea80 beq v0, v1, 0x3ec10           |             goto label_72;
                                             |         }
                                             |     }
    0x0003ea84 addiu v0, sp, 0x88            |     v0 = sp + 0x88;
    0x0003ea88 lw t9, -0x7b38(gp)            |     t9 = sym.ap_run_dirwalk_stat;
    0x0003ea8c lui a2, 0x200                 |     a2 = 0x8171;
    0x0003ea90 ori a2, a2, 0x8171            |     
    0x0003ea94 move a1, s1                   |     a1 = s1;
    0x0003ea98 move a0, v0                   |     a0 = v0;
    0x0003ea9c move s7, v0                   |     s7 = v0;
    0x0003eaa0 bal 0x3de90                   |     sym_ap_run_dirwalk_stat ();
    0x0003eaa4 addiu v1, zero, 2             |     v1 = 2;
    0x0003eaa8 lw gp, 0x28(sp)               |     gp = *(var_28h);
                                             |     if (v0 == v1) {
    0x0003eaac beq v0, v1, 0x3ec48           |         goto label_73;
                                             |     }
    0x0003eab0 addiu v1, zero, 0xd           |     v1 = 0xd;
                                             |     if (v0 == v1) {
    0x0003eab4 beql v0, v1, 0x3f1d4          |         goto label_74;
                                             |     }
    0x0003eab8 lw v1, 0xe4(s1)               |     v1 = *((s1 + 57));
    0x0003eabc lw v1, 0x8c(sp)               |     v1 = *(var_8ch);
                                             |     if (v0 != 0) {
    0x0003eac0 beqz v0, 0x3ead4              |         
    0x0003eac4 lui v1, 1                     |         v1 = 0x11178;
    0x0003eac8 addiu v1, v1, 0x1178          |         
    0x0003eacc lw v1, 0x8c(sp)               |         v1 = *(var_8ch);
                                             |         if (v0 != v1) {
    0x0003ead0 bne v0, v1, 0x3f180           |             goto label_75;
                                             |         }
                                             |     }
    0x0003ead4 andi a0, v1, 0x8000           |     a0 = v1 & 0x8000;
    0x0003ead8 ext v1, v1, 0x19, 1           |     __asm ("ext v1, v1, 0x19, 1");
                                             |     if (a0 == 0) {
    0x0003eadc beqz a0, 0x3f180              |         goto label_75;
                                             |     }
    0x0003eae0 lw v0, 0x94(sp)               |     v0 = *(var_94h);
                                             |     if (v1 != 0) {
    0x0003eae4 beqz v1, 0x3eb10              |         
    0x0003eae8 lw v1, 0xe4(sp)               |         v1 = *(var_e4h);
    0x0003eaec lw t9, -0x7740(gp)            |         t9 = sym.imp.strcmp;
    0x0003eaf0 move a1, v1                   |         a1 = v1;
    0x0003eaf4 sw v1, 0x48(sp)               |         *(var_48h_2) = v1;
    0x0003eaf8 move a0, s2                   |         a0 = s2;
    0x0003eafc jalr t9                       |         t9 ();
    0x0003eb00 lw gp, 0x28(sp)               |         gp = *(var_28h);
    0x0003eb04 lw v1, 0x48(sp)               |         v1 = *(var_48h_2);
                                             |         if (v0 != 0) {
    0x0003eb08 bnez v0, 0x3ec1c              |             goto label_76;
                                             |         }
                                             | label_17:
    0x0003eb0c lw v0, 0x94(sp)               |         v0 = *(var_94h);
                                             |     }
    0x0003eb10 addiu v1, zero, 6             |     v1 = 6;
                                             |     if (v0 == v1) {
    0x0003eb14 beql v0, v1, 0x3ebe8          |         goto label_77;
                                             |     }
    0x0003eb18 lw a3, (s1)                   |     a3 = *(s1);
                                             | label_15:
    0x0003eb1c sltiu v1, v0, 2               |     v1 = (v0 < 2) ? 1 : 0;
    0x0003eb20 addiu v1, zero, 2             |     v1 = 2;
                                             |     if (v1 != 0) {
    0x0003eb24 bnez v1, 0x3ec4c              |         goto label_70;
                                             |     }
    0x0003eb28 addiu s4, s4, 1               |     s4++;
                                             |     if (v0 != v1) {
    0x0003eb2c bne v0, v1, 0x3f208           |         goto label_78;
                                             |     }
                                             | label_16:
    0x0003eb30 lw v0, 0x44(sp)               |     v0 = *(var_44h_2);
    0x0003eb34 sltu v0, v0, s4               |     v0 = (v0 < s4) ? 1 : 0;
    0x0003eb38 lw a1, 0x3c(sp)               |     a1 = *(var_3ch_2);
                                             |     if (v0 == 0) {
    0x0003eb3c beqz v0, 0x3eb8c              |         goto label_79;
                                             |     }
    0x0003eb40 lw v0, 0xe8(s1)               |     v0 = *((s1 + 58));
    0x0003eb44 addiu v1, zero, 0x2f          |     v1 = 0x2f;
    0x0003eb48 addu v0, v0, a1               |     v0 += a1;
    0x0003eb4c lb a0, -1(v0)                 |     a0 = *((v0 - 1));
                                             |     if (a0 == v1) {
    0x0003eb50 beql a0, v1, 0x3e534          |         goto label_13;
                                             |     }
    0x0003eb54 sw zero, 0x48(sp)             |     *(var_48h_2) = 0;
    0x0003eb58 sb v1, (v0)                   |     *(v0) = v1;
    0x0003eb5c lw v0, 0xe8(s1)               |     v0 = *((s1 + 58));
    0x0003eb60 addiu v1, a1, 1               |     v1 = a1 + 1;
    0x0003eb64 addu v0, v0, v1               |     v0 += v1;
    0x0003eb68 sw v1, 0x3c(sp)               |     *(var_3ch_2) = v1;
    0x0003eb6c sb zero, (v0)                 |     *(v0) = 0;
    0x0003eb70 addiu v0, zero, 1             |     v0 = 1;
    0x0003eb74 sw v0, 0x48(sp)               |     *(var_48h_2) = v0;
    0x0003eb78 b 0x3e534                     |     goto label_13;
                                             | label_58:
    0x0003eb7c lw s5, 4(s3)                  |     s5 = *((s3 + 1));
    0x0003eb80 addiu s6, s6, -1              |     s6 += -1;
    0x0003eb84 addiu s3, s3, 8               |     s3 += 8;
    0x0003eb88 b 0x3e5e4                     |     goto label_0;
                                             | label_79:
    0x0003eb8c sw zero, 0x48(sp)             |     *(var_48h_2) = 0;
    0x0003eb90 b 0x3e534                     |     goto label_13;
                                             | label_71:
    0x0003eb94 lw t9, -0x74c4(gp)            |     t9 = sym.imp.strlen;
    0x0003eb98 move a0, v1                   |     a0 = v1;
    0x0003eb9c sw v1, 0x5c(sp)               |     *(var_5ch_2) = v1;
    0x0003eba0 jalr t9                       |     t9 ();
    0x0003eba4 lw gp, 0x28(sp)               |     gp = *(var_28h);
    0x0003eba8 lw v1, 0x5c(sp)               |     v1 = *(var_5ch_2);
    0x0003ebac addiu a2, v0, 1               |     a2 = v0 + 1;
    0x0003ebb0 lw t9, -0x74b4(gp)            |     t9 = sym.imp.memcpy;
    0x0003ebb4 move a1, v1                   |     a1 = v1;
    0x0003ebb8 sw v0, 0x48(sp)               |     *(var_48h_2) = v0;
    0x0003ebbc move a0, s2                   |     a0 = s2;
    0x0003ebc0 jalr t9                       |     t9 ();
    0x0003ebc4 lw v0, 0xf0(s1)               |     v0 = *((s1 + 60));
    0x0003ebc8 lw v1, 0x3c(sp)               |     v1 = *(var_3ch_2);
    0x0003ebcc lw a3, 0x48(sp)               |     a3 = *(var_48h_2);
    0x0003ebd0 lw gp, 0x28(sp)               |     gp = *(var_28h);
    0x0003ebd4 addu v1, v1, a3               |     v1 += a3;
    0x0003ebd8 addu v0, v0, a3               |     v0 += a3;
    0x0003ebdc sw v1, 0x3c(sp)               |     *(var_3ch_2) = v1;
    0x0003ebe0 sw v0, 0xf0(s1)               |     *((s1 + 60)) = v0;
    0x0003ebe4 b 0x3ea4c                     |     goto label_14;
                                             | label_77:
    0x0003ebe8 lbu a2, 0x78(sp)              |     a2 = *(var_78h);
    0x0003ebec lw a0, 0xe8(s1)               |     a0 = *((s1 + 58));
    0x0003ebf0 lw t9, 0x64(sp)               |     t9 = *(var_64h_2);
    0x0003ebf4 move a1, s7                   |     a1 = s7;
    0x0003ebf8 jalr t9                       |     t9 ();
    0x0003ebfc move s2, v0                   |     s2 = v0;
    0x0003ec00 lw gp, 0x28(sp)               |     gp = *(var_28h);
                                             |     if (v0 != 0) {
    0x0003ec04 bnez v0, 0x3f37c              |         goto label_80;
                                             |     }
    0x0003ec08 lw v0, 0x94(sp)               |     v0 = *(var_94h);
    0x0003ec0c b 0x3eb1c                     |     goto label_15;
                                             | label_72:
    0x0003ec10 sw v0, 0x94(sp)               |     *(var_94h) = v0;
    0x0003ec14 addiu s4, s4, 1               |     s4++;
    0x0003ec18 b 0x3eb30                     |     goto label_16;
                                             | label_76:
    0x0003ec1c lw t9, -0x7514(gp)            |     t9 = sym.imp.strcpy;
    0x0003ec20 move a1, v1                   |     a1 = v1;
    0x0003ec24 move a0, s2                   |     a0 = s2;
    0x0003ec28 jalr t9                       |     t9 ();
    0x0003ec2c lw gp, 0x28(sp)               |     gp = *(var_28h);
    0x0003ec30 lw t9, -0x74c4(gp)            |     t9 = sym.imp.strlen;
    0x0003ec34 lw a0, 0xe8(s1)               |     a0 = *((s1 + 58));
    0x0003ec38 jalr t9                       |     t9 ();
    0x0003ec3c sw v0, 0x3c(sp)               |     *(var_3ch_2) = v0;
    0x0003ec40 lw gp, 0x28(sp)               |     gp = *(var_28h);
    0x0003ec44 b 0x3eb0c                     |     goto label_17;
                                             | label_73:
    0x0003ec48 sw zero, 0x94(sp)             |     *(var_94h) = 0;
                                             | label_70:
    0x0003ec4c lw v1, 0x16c(s1)              |     v1 = *(s1);
                                             | label_69:
    0x0003ec50 addiu v0, sp, 0x88            |     v0 = sp + 0x88;
                                             |     if (v1 == 0) {
    0x0003ec54 beqz v1, 0x3eec0              |         goto label_81;
                                             |     }
    0x0003ec58 addiu v0, zero, 6             |     v0 = 6;
    0x0003ec5c addiu v0, sp, 0x88            |     v0 = sp + 0x88;
                                             |     if (v1 == v0) {
    0x0003ec60 beq v1, v0, 0x3eec0           |         goto label_81;
                                             |     }
                                             | label_22:
    0x0003ec64 lw v0, 0x58(sp)               |     v0 = *(var_58h_2);
    0x0003ec68 lw v0, 0x30(sp)               |     v0 = *(var_30h_2);
                                             |     if (v0 != 0) {
    0x0003ec6c beqz v0, 0x3ec90              |         
    0x0003ec70 lw a1, 0xf0(s1)               |         a1 = *((s1 + 60));
    0x0003ec74 lw v0, 0x58(sp)               |         v0 = *(var_58h_2);
                                             |         if (a1 != 0) {
    0x0003ec78 beqz a1, 0x3ec88              |             
    0x0003ec7c lb v0, (a1)                   |             v0 = *(a1);
    0x0003ec80 lw v0, 0x58(sp)               |             v0 = *(var_58h_2);
                                             |             if (v0 != 0) {
    0x0003ec84 bnez v0, 0x3f128              |                 goto label_82;
                                             |             }
                                             |         }
    0x0003ec88 sw v0, 0xf0(s1)               |         *((s1 + 60)) = v0;
                                             | label_37:
    0x0003ec8c lw v0, 0x30(sp)               |         v0 = *(var_30h_2);
                                             |     }
    0x0003ec90 slt v0, s0, v0                |     v0 = (s0 < v0) ? 1 : 0;
    0x0003ec94 lw v0, 0x30(sp)               |     v0 = *(var_30h_2);
                                             |     if (v0 == 0) {
    0x0003ec98 beqz v0, 0x3ee04              |         goto label_83;
                                             |     }
    0x0003ec9c sll t0, s0, 2                 |     t0 = s0 << 2;
    0x0003eca0 sll s7, v0, 2                 |     s7 = v0 << 2;
    0x0003eca4 lw v0, 0x4c(sp)               |     v0 = *(var_4ch_2);
    0x0003eca8 addiu s4, sp, 0x78            |     s4 = sp + 0x78;
    0x0003ecac addu s2, v0, t0               |     s2 = v0 + t0;
    0x0003ecb0 addu v0, v0, s7               |     v0 += s7;
    0x0003ecb4 sw v0, 0x38(sp)               |     *(var_38h_2) = v0;
    0x0003ecb8 lw v0, -0x7c54(gp)            |     v0 = *(gp);
    0x0003ecbc addiu v0, v0, -0x4580         |     v0 += -0x4580;
    0x0003ecc0 sw v0, 0x54(sp)               |     *(var_54h_2) = v0;
    0x0003ecc4 lw v0, -0x7fac(gp)            |     v0 = *(gp);
                                             |     /* str.directory_walk_rxpool */
    0x0003ecc8 addiu fp, v0, -0xdc0          |     fp = v0 + -aav.0x00000dc0;
    0x0003eccc b 0x3ed2c                     |     goto label_20;
                                             | label_18:
    0x0003ecd0 lw t9, -0x737c(gp)            |     t9 = sym.imp.apr_pool_create_ex;
                                             |     if (a0 == 0) {
    0x0003ecd4 beqz a0, 0x3f078              |         goto label_84;
                                             |     }
                                             | label_35:
    0x0003ecd8 lw t9, -0x7544(gp)            |     t9 = sym.imp.apr_palloc;
    0x0003ecdc sw t2, 0x30(sp)               |     *(var_30h_2) = t2;
    0x0003ece0 sll a1, s0, 3                 |     a1 = s0 << 3;
    0x0003ece4 jalr t9                       |     t9 ();
    0x0003ece8 lw gp, 0x28(sp)               |     gp = *(var_28h);
    0x0003ecec lw t2, 0x30(sp)               |     t2 = *(var_30h_2);
    0x0003ecf0 lw a1, 0xe8(s1)               |     a1 = *((s1 + 58));
    0x0003ecf4 lw t9, -0x7b30(gp)            |     t9 = sym.ap_regexec;
    0x0003ecf8 lw a0, 0x38(t2)               |     a0 = *((t2 + 14));
    0x0003ecfc move a3, v0                   |     a3 = v0;
    0x0003ed00 sw zero, 0x10(sp)             |     *(var_10h_3) = 0;
    0x0003ed04 move a2, s0                   |     a2 = s0;
    0x0003ed08 move s7, v0                   |     s7 = v0;
    0x0003ed0c bal 0x26774                   |     sym_ap_regexec ();
    0x0003ed10 move v1, v0                   |     v1 = v0;
    0x0003ed14 lw gp, 0x28(sp)               |     gp = *(var_28h);
                                             |     if (v0 == 0) {
    0x0003ed18 beqz v0, 0x3ef18              |         goto label_85;
                                             |     }
                                             | label_19:
    0x0003ed1c lw v0, 0x38(sp)               |     v0 = *(var_38h_2);
                                             |     do {
    0x0003ed20 addiu s2, s2, 4               |         s2 += 4;
    0x0003ed24 lw a0, 0x70(sp)               |         a0 = *(var_70h_2);
                                             |         if (v0 == s2) {
    0x0003ed28 beq v0, s2, 0x3ee08           |             goto label_86;
                                             |         }
                                             | label_20:
    0x0003ed2c lw v0, (s2)                   |         v0 = *(s2);
    0x0003ed30 lw t2, (v0)                   |         t2 = *(v0);
    0x0003ed34 lw a0, 0x38(t2)               |         a0 = *((t2 + 14));
    0x0003ed38 lw v0, 0x38(sp)               |         v0 = *(var_38h_2);
    0x0003ed3c beqz a0, 0x3ed20              |         
                                             |     } while (a0 == 0);
    0x0003ed40 lw v0, 0x78(t2)               |     v0 = *((t2 + 30));
    0x0003ed44 lw t9, -0x7b30(gp)            |     t9 = sym.ap_regexec;
                                             |     if (v0 == 0) {
    0x0003ed48 beqz v0, 0x3ed5c              |         goto label_87;
                                             |     }
    0x0003ed4c lw s0, 8(v0)                  |     s0 = *((v0 + 2));
    0x0003ed50 lw a0, 0x70(sp)               |     a0 = *(var_70h_2);
                                             |     if (s0 == 0) {
    0x0003ed54 bnel s0, zero, 0x3ecd0        |         goto label_18;
                                             |     }
    0x0003ed58 lw t9, -0x7b30(gp)            |     t9 = sym.ap_regexec;
                                             | label_87:
    0x0003ed5c lw a1, 0xe8(s1)               |     a1 = *((s1 + 58));
    0x0003ed60 move a3, zero                 |     a3 = 0;
    0x0003ed64 sw zero, 0x10(sp)             |     *(var_10h_3) = 0;
    0x0003ed68 move a2, zero                 |     a2 = 0;
    0x0003ed6c bal 0x26774                   |     sym_ap_regexec ();
    0x0003ed70 lw gp, 0x28(sp)               |     gp = *(var_28h);
                                             |     if (v0 != 0) {
    0x0003ed74 bnez v0, 0x3ed1c              |         goto label_19;
                                             |     }
                                             | label_25:
    0x0003ed78 lw a0, (s2)                   |     a0 = *(s2);
                                             | label_26:
    0x0003ed7c lw t9, 0x54(sp)               |     t9 = *(var_54h_2);
    0x0003ed80 move a1, s4                   |     a1 = s4;
    0x0003ed84 jalr t9                       |     t9 ();
    0x0003ed88 lw gp, 0x28(sp)               |     gp = *(var_28h);
                                             |     if (s6 == 0) {
    0x0003ed8c beqz s6, 0x3ef08              |         goto label_88;
                                             |     }
    0x0003ed90 lw a2, (s2)                   |     a2 = *(s2);
    0x0003ed94 lw v0, (s3)                   |     v0 = *(s3);
    0x0003ed98 lw v0, 0x34(sp)               |     v0 = *(var_34h_2);
                                             |     if (v0 == a2) {
    0x0003ed9c beq v0, a2, 0x3f170           |         goto label_89;
                                             |     }
    0x0003eda0 sw zero, 0x40(sp)             |     *(var_40h_2) = 0;
    0x0003eda4 lw v1, 0x10(v0)               |     v1 = *((v0 + 4));
    0x0003eda8 lw v0, 8(v1)                  |     v0 = *((v1 + 2));
    0x0003edac subu s6, v0, s6               |     __asm ("subu s6, v0, s6");
    0x0003edb0 sw s6, 8(v1)                  |     *((v1 + 2)) = s6;
                                             |     if (s5 == 0) {
    0x0003edb4 beqz s5, 0x3ef10              |         goto label_90;
                                             |     }
                                             | label_23:
    0x0003edb8 lw t9, -0x7b54(gp)            |     t9 = sym.ap_merge_per_dir_configs;
    0x0003edbc lw a0, (s1)                   |     a0 = *(s1);
    0x0003edc0 move a1, s5                   |     a1 = s5;
    0x0003edc4 bal 0x4b8c8                   |     sym_ap_merge_per_dir_configs ();
    0x0003edc8 lw gp, 0x28(sp)               |     gp = *(var_28h);
    0x0003edcc move s5, v0                   |     s5 = v0;
                                             | label_24:
    0x0003edd0 lw v0, 0x34(sp)               |     v0 = *(var_34h_2);
    0x0003edd4 lw t9, -0x7324(gp)            |     t9 = sym.imp.apr_array_push;
    0x0003edd8 addiu s2, s2, 4               |     s2 += 4;
    0x0003eddc lw a0, 0x10(v0)               |     a0 = *((v0 + 4));
    0x0003ede0 move s6, zero                 |     s6 = 0;
    0x0003ede4 jalr t9                       |     t9 ();
    0x0003ede8 move s3, v0                   |     s3 = v0;
    0x0003edec lw v0, -4(s2)                 |     v0 = *((s2 - 1));
    0x0003edf0 lw gp, 0x28(sp)               |     gp = *(var_28h);
    0x0003edf4 sw v0, (s3)                   |     *(s3) = v0;
    0x0003edf8 lw v0, 0x38(sp)               |     v0 = *(var_38h_2);
    0x0003edfc sw s5, 4(s3)                  |     *((s3 + 1)) = s5;
                                             |     if (v0 != s2) {
    0x0003ee00 bne v0, s2, 0x3ed2c           |         goto label_20;
                                             |     }
                                             | label_83:
    0x0003ee04 lw a0, 0x70(sp)               |     a0 = *(var_70h_2);
                                             | label_86:
    0x0003ee08 lw t9, -0x7428(gp)            |     t9 = *(gp);
                                             |     if (a0 != 0) {
    0x0003ee0c beqz a0, 0x3ee1c              |         
    0x0003ee10 jalr t9                       |         t9 ();
    0x0003ee14 nop                           |         
    0x0003ee18 lw gp, 0x28(sp)               |         gp = *(var_28h);
                                             |     }
    0x0003ee1c lw v0, 0x34(sp)               |     v0 = *(var_34h_2);
    0x0003ee20 lw v1, 0x10(v0)               |     v1 = *((v0 + 4));
    0x0003ee24 lw v0, 8(v1)                  |     v0 = *((v1 + 2));
                                             |     if (s6 == 0) {
    0x0003ee28 beqz s6, 0x3f060              |         goto label_91;
                                             |     }
    0x0003ee2c subu v0, v0, s6               |     __asm ("subu v0, v0, s6");
    0x0003ee30 sw v0, 8(v1)                  |     *((v1 + 2)) = v0;
    0x0003ee34 lw v1, 0x16c(s1)              |     v1 = *(s1);
    0x0003ee38 sw zero, 0x40(sp)             |     *(var_40h_2) = 0;
                                             | label_34:
    0x0003ee3c lw a1, 0xe8(s1)               |     a1 = *((s1 + 58));
    0x0003ee40 addiu v0, zero, 2             |     v0 = 2;
    0x0003ee44 sw a1, 0xec(s1)               |     *((s1 + 59)) = a1;
    0x0003ee48 lw a0, (s1)                   |     a0 = *(s1);
                                             |     if (v1 == v0) {
    0x0003ee4c beq v1, v0, 0x3f154           |         goto label_92;
                                             |     }
    0x0003ee50 lw t9, -0x7e88(gp)            |     t9 = sym.ap_make_dirstr_parent;
    0x0003ee54 jalr t9                       |     t9 ();
    0x0003ee58 nop                           |     
    0x0003ee5c lw v1, 0x34(sp)               |     v1 = *(var_34h_2);
    0x0003ee60 lw gp, 0x28(sp)               |     gp = *(var_28h);
    0x0003ee64 sw v0, (v1)                   |     *(v1) = v0;
                                             | label_39:
    0x0003ee68 lw v1, 0x40(sp)               |     v1 = *(var_40h_2);
    0x0003ee6c lw v0, 0x100(s1)              |     v0 = *(s1);
                                             |     if (v1 != 0) {
    0x0003ee70 beqz v1, 0x3ee84              |         
    0x0003ee74 lw v1, 0x34(sp)               |         v1 = *(var_34h_2);
    0x0003ee78 lw v1, 8(v1)                  |         v1 = *((v1 + 2));
                                             |         if (v1 == v0) {
    0x0003ee7c beql v1, v0, 0x3f254          |             goto label_93;
                                             |         }
    0x0003ee80 lw v0, 0x34(sp)               |         v0 = *(var_34h_2);
                                             |     }
    0x0003ee84 lw v1, 0x34(sp)               |     v1 = *(var_34h_2);
    0x0003ee88 lw a0, 0x4c(sp)               |     a0 = *(var_4ch_2);
    0x0003ee8c sw v0, 8(v1)                  |     *((v1 + 2)) = v0;
    0x0003ee90 sw a0, 4(v1)                  |     *((v1 + 1)) = a0;
                                             |     if (s5 != 0) {
    0x0003ee94 beqz s5, 0x3eeb4              |         
    0x0003ee98 lw t9, -0x7b54(gp)            |         t9 = sym.ap_merge_per_dir_configs;
    0x0003ee9c lw a0, (s1)                   |         a0 = *(s1);
    0x0003eea0 move a1, v0                   |         a1 = v0;
    0x0003eea4 move a2, s5                   |         a2 = s5;
    0x0003eea8 bal 0x4b8c8                   |         sym_ap_merge_per_dir_configs ();
    0x0003eeac lw gp, 0x28(sp)               |         gp = *(var_28h);
    0x0003eeb0 sw v0, 0x100(s1)              |         *(s1) = v0;
                                             |     }
    0x0003eeb4 lw v1, 0x34(sp)               |     v1 = *(var_34h_2);
    0x0003eeb8 sw v0, 0xc(v1)                |     *((v1 + 3)) = v0;
    0x0003eebc b 0x3e328                     |     goto label_21;
                                             | label_81:
    0x0003eec0 addiu v1, s1, 0x160           |     v1 = s1 + aav.0x00000160;
    0x0003eec4 addiu t0, sp, 0xe8            |     t0 = sp + 0xe8;
                                             |     do {
    0x0003eec8 lw a3, (v0)                   |         a3 = *(v0);
    0x0003eecc lw a2, 4(v0)                  |         a2 = *((v0 + 1));
    0x0003eed0 lw a1, 8(v0)                  |         a1 = *((v0 + 2));
    0x0003eed4 lw a0, 0xc(v0)                |         a0 = *((v0 + 3));
    0x0003eed8 addiu v0, v0, 0x10            |         v0 += 0x10;
    0x0003eedc sw a3, (v1)                   |         *(v1) = a3;
    0x0003eee0 sw a2, 4(v1)                  |         *((v1 + 1)) = a2;
    0x0003eee4 sw a1, 8(v1)                  |         *((v1 + 2)) = a1;
    0x0003eee8 sw a0, 0xc(v1)                |         *((v1 + 3)) = a0;
    0x0003eeec addiu v1, v1, 0x10            |         v1 += 0x10;
    0x0003eef0 bne v0, t0, 0x3eec8           |         
                                             |     } while (v0 != t0);
    0x0003eef4 lw a0, (v0)                   |     a0 = *(v0);
    0x0003eef8 lw v0, 4(v0)                  |     v0 = *((v0 + 1));
    0x0003eefc sw a0, (v1)                   |     *(v1) = a0;
    0x0003ef00 sw v0, 4(v1)                  |     *((v1 + 1)) = v0;
    0x0003ef04 b 0x3ec64                     |     goto label_22;
                                             | label_88:
    0x0003ef08 lw a2, (s2)                   |     a2 = *(s2);
                                             |     if (s5 != 0) {
    0x0003ef0c bnez s5, 0x3edb8              |         goto label_23;
                                             |     }
                                             | label_90:
    0x0003ef10 move s5, a2                   |     s5 = a2;
    0x0003ef14 b 0x3edd0                     |     goto label_24;
                                             | label_85:
    0x0003ef18 lw t2, 0x30(sp)               |     t2 = *(var_30h_2);
                                             |     if (s0 <= 0) {
    0x0003ef1c blez s0, 0x3ed78              |         goto label_25;
                                             |     }
                                             |     do {
    0x0003ef20 lw v0, (s7)                   |         v0 = *(s7);
                                             |         if (v0 >= 0) {
    0x0003ef24 bltzl v0, 0x3efa4             |             
    0x0003ef28 addiu v1, v1, 1               |             v1++;
    0x0003ef2c lw a2, 4(s7)                  |             a2 = *((s7 + 1));
    0x0003ef30 sll a3, v1, 2                 |             a3 = v1 << 2;
                                             |             if (a2 >= 0) {
    0x0003ef34 bltz a2, 0x3efa0              |                 
    0x0003ef38 lw a0, 0x78(t2)               |                 a0 = *((t2 + 30));
    0x0003ef3c lw a0, 0x10(a0)               |                 a0 = *((a0 + 4));
    0x0003ef40 lwx a3, a3(a0)                |                 __asm ("lwx a3, a3(a0)");
    0x0003ef44 sw a3, 0x30(sp)               |                 *(var_30h_2) = a3;
                                             |                 if (a3 == 0) {
    0x0003ef48 beqz a3, 0x3efa0              |                     goto label_94;
                                             |                 }
    0x0003ef4c lw t4, 0xbc(s1)               |                 t4 = *((s1 + 47));
    0x0003ef50 lw a1, 0xe8(s1)               |                 a1 = *((s1 + 58));
    0x0003ef54 lw t9, -0x74d4(gp)            |                 t9 = sym.imp.apr_pstrndup;
    0x0003ef58 lw a0, (s1)                   |                 a0 = *(s1);
    0x0003ef5c sw v1, 0x48(sp)               |                 *(var_48h_2) = v1;
    0x0003ef60 sw t2, 0x44(sp)               |                 *(var_44h_2) = t2;
    0x0003ef64 sw t4, 0x3c(sp)               |                 *(var_3ch_2) = t4;
    0x0003ef68 subu a2, a2, v0               |                 __asm ("subu a2, a2, v0");
    0x0003ef6c addu a1, a1, v0               |                 a1 += v0;
    0x0003ef70 jalr t9                       |                 t9 ();
    0x0003ef74 lw gp, 0x28(sp)               |                 gp = *(var_28h);
    0x0003ef78 lw a3, 0x30(sp)               |                 a3 = *(var_30h_2);
    0x0003ef7c lw t4, 0x3c(sp)               |                 t4 = *(var_3ch_2);
    0x0003ef80 lw t9, -0x7590(gp)            |                 t9 = sym.imp.apr_table_setn;
    0x0003ef84 move a2, v0                   |                 a2 = v0;
    0x0003ef88 move a1, a3                   |                 a1 = a3;
    0x0003ef8c move a0, t4                   |                 a0 = t4;
    0x0003ef90 jalr t9                       |                 t9 ();
    0x0003ef94 lw gp, 0x28(sp)               |                 gp = *(var_28h);
    0x0003ef98 lw v1, 0x48(sp)               |                 v1 = *(var_48h_2);
    0x0003ef9c lw t2, 0x44(sp)               |                 t2 = *(var_44h_2);
                                             |             }
                                             | label_94:
    0x0003efa0 addiu v1, v1, 1               |             v1++;
                                             |         }
    0x0003efa4 addiu s7, s7, 8               |         s7 += 8;
    0x0003efa8 bne v1, s0, 0x3ef20           |         
                                             |     } while (v1 != s0);
    0x0003efac lw a0, (s2)                   |     a0 = *(s2);
    0x0003efb0 b 0x3ed7c                     |     goto label_26;
                                             | label_68:
    0x0003efb4 move s5, a2                   |     s5 = a2;
    0x0003efb8 b 0x3e974                     |     goto label_27;
                                             | label_54:
    0x0003efbc lw v1, 0xf0(s1)               |     v1 = *((s1 + 60));
    0x0003efc0 lw a1, 0xe4(s1)               |     a1 = *((s1 + 57));
    0x0003efc4 sw v1, 0x20(sp)               |     *(var_20h_2) = v1;
    0x0003efc8 lw v1, -0x7fac(gp)            |     v1 = *(gp);
    0x0003efcc lw t9, -0x7f08(gp)            |     t9 = sym.ap_log_rerror_;
                                             |     /* str.AH00034:_dir_walk_error__could_not_determine_the_root_path_of_filename__s_s_for_uri__s */
    0x0003efd0 addiu v1, v1, -0xf48          |     v1 += -0xf48;
    0x0003efd4 sw a1, 0x24(sp)               |     *(var_24h_2) = a1;
    0x0003efd8 sw a0, 0x1c(sp)               |     *(var_1ch_2) = a0;
    0x0003efdc sw v1, 0x18(sp)               |     *(var_18h_3) = v1;
    0x0003efe0 sw s1, 0x14(sp)               |     *(var_14h) = s1;
    0x0003efe4 sw v0, 0x10(sp)               |     *(var_10h_3) = v0;
    0x0003efe8 addiu a3, zero, 3             |     a3 = 3;
    0x0003efec move a2, zero                 |     a2 = 0;
    0x0003eff0 addiu a1, zero, 0x3bc         |     a1 = aav.0x000003bc;
                                             | label_41:
    0x0003eff4 lw a0, -0x7fac(gp)            |     a0 = *(gp);
    0x0003eff8 addiu s2, zero, 0x1f4         |     s2 = aav.0x000001f4;
                                             |     /* esilref: '/usr/src/debug/apache2/2.4.57-r0/httpd-2.4.57/server/request.c' */
    0x0003effc addiu a0, a0, -0x1258         |     a0 += -0x1258;
    0x0003f000 bal 0x530a8                   |     sym_ap_log_rerror_ ();
    0x0003f004 lw gp, 0x28(sp)               |     gp = *(var_28h);
    0x0003f008 b 0x3e32c                     |     goto label_4;
                                             | label_44:
    0x0003f00c lw v1, 0x60(v0)               |     v1 = *((v0 + 24));
    0x0003f010 lw v0, (v1)                   |     v0 = *(v1);
                                             |     if (v1 == 0) {
    0x0003f014 bnel v1, zero, 0x3e308        |         goto label_28;
                                             |     }
    0x0003f018 lw v1, 8(s1)                  |     v1 = *((s1 + 2));
    0x0003f01c addiu v1, v1, 0x10            |     v1 += 0x10;
    0x0003f020 b 0x3e304                     |     goto label_29;
                                             | label_64:
    0x0003f024 lw t9, -0x74c4(gp)            |     t9 = sym.imp.strlen;
    0x0003f028 sw zero, 0x16c(s1)            |     *(s1) = 0;
    0x0003f02c b 0x3e3bc                     |     goto label_30;
                                             | label_61:
    0x0003f030 lw v1, 0x60(v1)               |     v1 = *((v1 + 24));
                                             |     if (v1 == 0) {
    0x0003f034 beql v1, zero, 0x3e6e4        |         goto label_31;
                                             |     }
    0x0003f038 addiu v1, v0, 0x10            |     v1 = v0 + 0x10;
    0x0003f03c lw v0, (v1)                   |     v0 = *(v1);
    0x0003f040 b 0x3e6e8                     |     goto label_32;
                                             | label_50:
    0x0003f044 lw t9, -0x7e88(gp)            |     t9 = sym.ap_make_dirstr_parent;
    0x0003f048 lw a1, 0x6c(sp)               |     a1 = *(var_6ch_2);
    0x0003f04c lw a0, (s1)                   |     a0 = *(s1);
    0x0003f050 jalr t9                       |     t9 ();
    0x0003f054 sw v0, 0x6c(sp)               |     *(var_6ch_2) = v0;
    0x0003f058 lw gp, 0x28(sp)               |     gp = *(var_28h);
    0x0003f05c b 0x3e820                     |     goto label_33;
                                             | label_91:
    0x0003f060 lw v1, 0x60(sp)               |     v1 = *(var_60h_2);
    0x0003f064 slt v0, v1, v0                |     v0 = (v1 < v0) ? 1 : 0;
    0x0003f068 sw zero, 0x40(sp)             |     *(var_40h_2) = 0;
                                             |     if (v0 != 0) {
    0x0003f06c bnel v0, zero, 0x3f070        |         
                                             |     }
    0x0003f070 lw v1, 0x16c(s1)              |     v1 = *(s1);
    0x0003f074 b 0x3ee3c                     |     goto label_34;
                                             | label_84:
    0x0003f078 lw a1, (s1)                   |     a1 = *(s1);
    0x0003f07c sw t2, 0x30(sp)               |     *(var_30h_2) = t2;
    0x0003f080 move a3, zero                 |     a3 = 0;
    0x0003f084 move a2, zero                 |     a2 = 0;
    0x0003f088 addiu a0, sp, 0x70            |     a0 = sp + 0x70;
    0x0003f08c jalr t9                       |     t9 ();
    0x0003f090 lw gp, 0x28(sp)               |     gp = *(var_28h);
    0x0003f094 lw a0, 0x70(sp)               |     a0 = *(var_70h_2);
    0x0003f098 lw t9, -0x7698(gp)            |     t9 = sym.imp.apr_pool_tag;
    0x0003f09c move a1, fp                   |     a1 = fp;
    0x0003f0a0 jalr t9                       |     t9 ();
    0x0003f0a4 lw t2, 0x30(sp)               |     t2 = *(var_30h_2);
    0x0003f0a8 lw gp, 0x28(sp)               |     gp = *(var_28h);
    0x0003f0ac lw a0, 0x70(sp)               |     a0 = *(var_70h_2);
    0x0003f0b0 lw v0, 0x78(t2)               |     v0 = *((t2 + 30));
    0x0003f0b4 lw s0, 8(v0)                  |     s0 = *((v0 + 2));
    0x0003f0b8 b 0x3ecd8                     |     goto label_35;
                                             | label_66:
    0x0003f0bc lw t9, -0x7740(gp)            |     t9 = sym.imp.strcmp;
    0x0003f0c0 lw a0, 0x6c(sp)               |     a0 = *(var_6ch_2);
    0x0003f0c4 lw a1, (v0)                   |     a1 = *(v0);
    0x0003f0c8 sw v1, 0x38(sp)               |     *(var_38h_2) = v1;
    0x0003f0cc jalr t9                       |     t9 ();
    0x0003f0d0 move s2, v0                   |     s2 = v0;
    0x0003f0d4 lw gp, 0x28(sp)               |     gp = *(var_28h);
    0x0003f0d8 lw v1, 0x38(sp)               |     v1 = *(var_38h_2);
                                             |     if (v0 != 0) {
    0x0003f0dc bnez v0, 0x3e86c              |         goto label_36;
                                             |     }
    0x0003f0e0 lw a0, 0x34(sp)               |     a0 = *(var_34h_2);
    0x0003f0e4 lw v0, 0xc(a0)                |     v0 = *((a0 + 3));
    0x0003f0e8 lw a0, 8(a0)                  |     a0 = *((a0 + 2));
                                             |     if (v0 == s3) {
    0x0003f0ec beq v0, s3, 0x3f264           |         goto label_95;
                                             |     }
                                             |     if (s3 == a0) {
    0x0003f0f0 beql s3, a0, 0x3f270          |         goto label_96;
                                             |     }
    0x0003f0f4 sw v0, 0x100(s1)              |     *(s1) = v0;
    0x0003f0f8 lw v0, 0x34(sp)               |     v0 = *(var_34h_2);
    0x0003f0fc lw a0, 0x10(v0)               |     a0 = *((v0 + 4));
    0x0003f100 lw v0, 8(a0)                  |     v0 = *((a0 + 2));
                                             |     if (v0 == 0) {
    0x0003f104 beql v0, zero, 0x3f3ac        |         goto label_97;
                                             |     }
    0x0003f108 addiu v0, zero, 1             |     v0 = 1;
    0x0003f10c lw a0, 0x10(a0)               |     a0 = *((a0 + 4));
    0x0003f110 sll v0, v0, 3                 |     v0 <<= 3;
    0x0003f114 addu v0, a0, v0               |     v0 = a0 + v0;
    0x0003f118 addiu a0, zero, 1             |     a0 = 1;
    0x0003f11c sw a0, 0x40(sp)               |     *(var_40h_2) = a0;
    0x0003f120 lw s5, -4(v0)                 |     s5 = *((v0 - 1));
    0x0003f124 b 0x3ee3c                     |     goto label_34;
                                             | label_82:
    0x0003f128 lw t9, -0x7e84(gp)            |     t9 = sym.ap_make_full_path;
    0x0003f12c lw a0, (s1)                   |     a0 = *(s1);
    0x0003f130 lw a2, 0x58(sp)               |     a2 = *(var_58h_2);
    0x0003f134 jalr t9                       |     t9 ();
    0x0003f138 lw gp, 0x28(sp)               |     gp = *(var_28h);
    0x0003f13c sw v0, 0xf0(s1)               |     *((s1 + 60)) = v0;
    0x0003f140 b 0x3ec8c                     |     goto label_37;
                                             | label_67:
    0x0003f144 lw s5, 4(s3)                  |     s5 = *((s3 + 1));
    0x0003f148 addiu s6, s6, -1              |     s6 += -1;
    0x0003f14c addiu s3, s3, 8               |     s3 += 8;
    0x0003f150 b 0x3e99c                     |     goto label_38;
                                             | label_92:
    0x0003f154 lw t9, -0x7654(gp)            |     t9 = sym.imp.apr_pstrdup;
    0x0003f158 jalr t9                       |     t9 ();
    0x0003f15c nop                           |     
    0x0003f160 lw v1, 0x34(sp)               |     v1 = *(var_34h_2);
    0x0003f164 lw gp, 0x28(sp)               |     gp = *(var_28h);
    0x0003f168 sw v0, (v1)                   |     *(v1) = v0;
    0x0003f16c b 0x3ee68                     |     goto label_39;
                                             | label_89:
    0x0003f170 lw s5, 4(s3)                  |     s5 = *((s3 + 1));
    0x0003f174 addiu s6, s6, -1              |     s6 += -1;
    0x0003f178 addiu s3, s3, 8               |     s3 += 8;
    0x0003f17c b 0x3ed1c                     |     goto label_19;
                                             | label_75:
    0x0003f180 lw v1, 0xe4(s1)               |     v1 = *((s1 + 57));
    0x0003f184 lw a0, 0xe8(s1)               |     a0 = *((s1 + 58));
    0x0003f188 sw v1, 0x1c(sp)               |     *(var_1ch_2) = v1;
    0x0003f18c lw v1, -0x7fac(gp)            |     v1 = *(gp);
    0x0003f190 lw t9, -0x7f08(gp)            |     t9 = sym.ap_log_rerror_;
                                             |     /* str.AH00036:_access_to__s_failed__filesystem_path__s_ */
    0x0003f194 addiu v1, v1, -0xe78          |     v1 += -0xe78;
    0x0003f198 sw a0, 0x20(sp)               |     *(var_20h_2) = a0;
    0x0003f19c sw v1, 0x18(sp)               |     *(var_18h_3) = v1;
    0x0003f1a0 sw s1, 0x14(sp)               |     *(var_14h) = s1;
    0x0003f1a4 sw v0, 0x10(sp)               |     *(var_10h_3) = v0;
    0x0003f1a8 addiu a3, zero, 3             |     a3 = 3;
    0x0003f1ac move a2, zero                 |     a2 = 0;
    0x0003f1b0 addiu a1, zero, 0x4ce         |     a1 = 0x4ce;
                                             |     do {
                                             | label_42:
    0x0003f1b4 lw a0, -0x7fac(gp)            |         a0 = *(gp);
    0x0003f1b8 addiu s2, zero, 0x193         |         s2 = 0x193;
                                             |         /* esilref: '/usr/src/debug/apache2/2.4.57-r0/httpd-2.4.57/server/request.c' */
    0x0003f1bc addiu a0, a0, -0x1258         |         a0 += -0x1258;
    0x0003f1c0 bal 0x530a8                   |         sym_ap_log_rerror_ ();
    0x0003f1c4 addiu v0, zero, 0x193         |         v0 = 0x193;
    0x0003f1c8 lw gp, 0x28(sp)               |         gp = *(var_28h);
    0x0003f1cc sw v0, 0x44(s1)               |         *((s1 + 17)) = v0;
    0x0003f1d0 b 0x3e32c                     |         goto label_4;
                                             | label_74:
    0x0003f1d4 lw a0, 0xe8(s1)               |         a0 = *((s1 + 58));
    0x0003f1d8 sw v1, 0x1c(sp)               |         *(var_1ch_2) = v1;
    0x0003f1dc lw v1, -0x7fac(gp)            |         v1 = *(gp);
    0x0003f1e0 lw t9, -0x7f08(gp)            |         t9 = sym.ap_log_rerror_;
                                             |         /* str.AH00035:_access_to__s_denied__filesystem_path__s__because_search_permissions_are_missing_on_a_component_of_the_path */
    0x0003f1e4 addiu v1, v1, -0xef0          |         v1 += -0xef0;
    0x0003f1e8 sw a0, 0x20(sp)               |         *(var_20h_2) = a0;
    0x0003f1ec sw v1, 0x18(sp)               |         *(var_18h_3) = v1;
    0x0003f1f0 sw s1, 0x14(sp)               |         *(var_14h) = s1;
    0x0003f1f4 sw v0, 0x10(sp)               |         *(var_10h_3) = v0;
    0x0003f1f8 addiu a3, zero, 3             |         a3 = 3;
    0x0003f1fc move a2, zero                 |         a2 = 0;
    0x0003f200 addiu a1, zero, 0x4c4         |         a1 = aav.0x000004c4;
    0x0003f204 b 0x3f1b4                     |         
                                             |     } while (1);
                                             | label_78:
    0x0003f208 lw v0, 0xe8(s1)               |     v0 = *((s1 + 58));
    0x0003f20c lw a0, -0x7fac(gp)            |     a0 = *(gp);
    0x0003f210 sw v0, 0x1c(sp)               |     *(var_1ch_2) = v0;
    0x0003f214 lw v0, -0x7fac(gp)            |     v0 = *(gp);
    0x0003f218 lw t9, -0x7f08(gp)            |     t9 = sym.ap_log_rerror_;
                                             |     /* str.AH00038:_Forbidden:__s_doesnt_point_to_a_file_or_directory */
    0x0003f21c addiu v0, v0, -0xdfc          |     v0 += -aav.0x00000dfc;
    0x0003f220 sw v0, 0x18(sp)               |     *(var_18h_3) = v0;
    0x0003f224 sw s1, 0x14(sp)               |     *(var_14h) = s1;
    0x0003f228 sw zero, 0x10(sp)             |     *(var_10h_3) = 0;
    0x0003f22c addiu a3, zero, 3             |     a3 = 3;
    0x0003f230 move a2, zero                 |     a2 = 0;
    0x0003f234 addiu a1, zero, 0x4f7         |     a1 = 0x4f7;
                                             |     /* esilref: '/usr/src/debug/apache2/2.4.57-r0/httpd-2.4.57/server/request.c' */
    0x0003f238 addiu a0, a0, -0x1258         |     a0 += -0x1258;
    0x0003f23c bal 0x530a8                   |     sym_ap_log_rerror_ ();
    0x0003f240 addiu v0, zero, 0x193         |     v0 = 0x193;
    0x0003f244 lw gp, 0x28(sp)               |     gp = *(var_28h);
    0x0003f248 sw v0, 0x44(s1)               |     *((s1 + 17)) = v0;
    0x0003f24c addiu s2, zero, 0x193         |     s2 = 0x193;
    0x0003f250 b 0x3e32c                     |     goto label_4;
                                             | label_93:
    0x0003f254 move s2, zero                 |     s2 = 0;
    0x0003f258 lw v0, 0xc(v0)                |     v0 = *((v0 + 3));
    0x0003f25c sw v0, 0x100(s1)              |     *(s1) = v0;
    0x0003f260 b 0x3e32c                     |     goto label_4;
                                             | label_95:
    0x0003f264 lw v0, (s3)                   |     v0 = *(s3);
                                             |     if (s3 != a0) {
    0x0003f268 bnel s3, a0, 0x3f278          |         
    0x0003f26c sw v0, 0x100(s1)              |         *(s1) = v0;
                                             | label_96:
    0x0003f270 move s3, v0                   |         s3 = v0;
    0x0003f274 lw v0, (s3)                   |         v0 = *(s3);
                                             |     }
    0x0003f278 lbu s0, 8(v0)                 |     s0 = *((v0 + 8));
    0x0003f27c andi v0, s0, 4                |     v0 = s0 & 4;
    0x0003f280 lw v0, 0x50(sp)               |     v0 = *(var_50h);
                                             |     if (v0 != 0) {
    0x0003f284 bnez v0, 0x3e330              |         goto label_40;
                                             |     }
    0x0003f288 addiu v0, sp, 0x88            |     v0 = sp + 0x88;
    0x0003f28c lw t9, -0x7b38(gp)            |     t9 = sym.ap_run_dirwalk_stat;
    0x0003f290 lui a2, 0x200                 |     a2 = 0x8171;
    0x0003f294 ori a2, a2, 0x8171            |     
    0x0003f298 move a1, s1                   |     a1 = s1;
    0x0003f29c move a0, v0                   |     a0 = v0;
    0x0003f2a0 move s7, v0                   |     s7 = v0;
    0x0003f2a4 bal 0x3de90                   |     sym_ap_run_dirwalk_stat ();
    0x0003f2a8 lui v1, 1                     |     v1 = 0x11178;
    0x0003f2ac addiu v1, v1, 0x1178          |     
    0x0003f2b0 lw gp, 0x28(sp)               |     gp = *(var_28h);
                                             |     if (v0 != v1) {
    0x0003f2b4 beq v0, v1, 0x3f2c0           |         
    0x0003f2b8 lw v1, 0xe4(s1)               |         v1 = *((s1 + 57));
                                             |         if (v0 == 0) {
    0x0003f2bc bnel v0, zero, 0x3f3b8        |             goto label_98;
                                             |         }
                                             |     }
    0x0003f2c0 lw v1, 0x94(sp)               |     v1 = *(var_94h);
    0x0003f2c4 addiu v0, zero, 6             |     v0 = 6;
    0x0003f2c8 lw v0, 0x50(sp)               |     v0 = *(var_50h);
                                             |     if (v1 != v0) {
    0x0003f2cc bne v1, v0, 0x3e330           |         goto label_40;
                                             |     }
    0x0003f2d0 lw t9, -0x7c54(gp)            |     t9 = *(gp);
    0x0003f2d4 lw a3, (s1)                   |     a3 = *(s1);
    0x0003f2d8 lw a0, 0xe8(s1)               |     a0 = *((s1 + 58));
    0x0003f2dc move a2, s0                   |     a2 = s0;
                                             |     /* fcn.0003bcec */
    0x0003f2e0 addiu t9, t9, -0x4314         |     t9 += -0x4314;
    0x0003f2e4 move a1, s7                   |     a1 = s7;
    0x0003f2e8 bal 0x3bcec                   |     fcn_0003bcec ();
    0x0003f2ec move s2, v0                   |     s2 = v0;
    0x0003f2f0 lw gp, 0x28(sp)               |     gp = *(var_28h);
                                             |     if (v0 == 0) {
    0x0003f2f4 beqz v0, 0x3e32c              |         goto label_4;
                                             |     }
    0x0003f2f8 lw v0, 0xe8(s1)               |     v0 = *((s1 + 58));
    0x0003f2fc lw t9, -0x7f08(gp)            |     t9 = sym.ap_log_rerror_;
    0x0003f300 sw v0, 0x1c(sp)               |     *(var_1ch_2) = v0;
    0x0003f304 lw v0, -0x7fac(gp)            |     v0 = *(gp);
    0x0003f308 sw s1, 0x14(sp)               |     *(var_14h) = s1;
                                             |     /* str.AH00032:_Symbolic_link_not_allowed_or_link_target_not_accessible:__s */
    0x0003f30c addiu v0, v0, -0xfec          |     v0 += -0xfec;
    0x0003f310 sw v0, 0x18(sp)               |     *(var_18h_3) = v0;
    0x0003f314 sw zero, 0x10(sp)             |     *(var_10h_3) = 0;
    0x0003f318 addiu a3, zero, 3             |     a3 = 3;
    0x0003f31c move a2, zero                 |     a2 = 0;
    0x0003f320 addiu a1, zero, 0x332         |     a1 = 0x332;
                                             |     do {
    0x0003f324 lw a0, -0x7fac(gp)            |         a0 = *(gp);
                                             |         /* esilref: '/usr/src/debug/apache2/2.4.57-r0/httpd-2.4.57/server/request.c' */
    0x0003f328 addiu a0, a0, -0x1258         |         a0 += -0x1258;
    0x0003f32c bal 0x530a8                   |         sym_ap_log_rerror_ ();
    0x0003f330 lw gp, 0x28(sp)               |         gp = *(var_28h);
    0x0003f334 sw s2, 0x44(s1)               |         *((s1 + 17)) = s2;
    0x0003f338 b 0x3e32c                     |         goto label_4;
                                             | label_63:
    0x0003f33c lw v1, 0xf0(s1)               |         v1 = *((s1 + 60));
    0x0003f340 lw a1, 0xe4(s1)               |         a1 = *((s1 + 57));
    0x0003f344 lw a0, 0xe8(s1)               |         a0 = *((s1 + 58));
    0x0003f348 sw v1, 0x1c(sp)               |         *(var_1ch_2) = v1;
    0x0003f34c lw v1, -0x7fac(gp)            |         v1 = *(gp);
    0x0003f350 sw a1, 0x24(sp)               |         *(var_24h_2) = a1;
                                             |         /* str.AH00033:_dir_walk_error__path_info__s_is_not_relative_to_the_filename_path__s_for_uri__s */
    0x0003f354 addiu v1, v1, -0xfa4          |         v1 += -0xfa4;
    0x0003f358 lw t9, -0x7f08(gp)            |         t9 = sym.ap_log_rerror_;
    0x0003f35c sw a0, 0x20(sp)               |         *(var_20h_2) = a0;
    0x0003f360 sw v1, 0x18(sp)               |         *(var_18h_3) = v1;
    0x0003f364 sw s1, 0x14(sp)               |         *(var_14h) = s1;
    0x0003f368 sw v0, 0x10(sp)               |         *(var_10h_3) = v0;
    0x0003f36c addiu a3, zero, 3             |         a3 = 3;
    0x0003f370 move a2, zero                 |         a2 = 0;
    0x0003f374 addiu a1, zero, 0x379         |         a1 = 0x379;
    0x0003f378 b 0x3eff4                     |         goto label_41;
                                             | label_80:
    0x0003f37c lw v0, 0xe8(s1)               |         v0 = *((s1 + 58));
    0x0003f380 lw t9, -0x7f08(gp)            |         t9 = sym.ap_log_rerror_;
    0x0003f384 sw v0, 0x1c(sp)               |         *(var_1ch_2) = v0;
    0x0003f388 lw v0, -0x7fac(gp)            |         v0 = *(gp);
    0x0003f38c sw s1, 0x14(sp)               |         *(var_14h) = s1;
                                             |         /* str.AH00037:_Symbolic_link_not_allowed_or_link_target_not_accessible:__s */
    0x0003f390 addiu v0, v0, -0xe44          |         v0 += -0xe44;
    0x0003f394 sw v0, 0x18(sp)               |         *(var_18h_3) = v0;
    0x0003f398 sw zero, 0x10(sp)             |         *(var_10h_3) = 0;
    0x0003f39c addiu a3, zero, 3             |         a3 = 3;
    0x0003f3a0 move a2, zero                 |         a2 = 0;
    0x0003f3a4 addiu a1, zero, 0x4e6         |         a1 = 0x4e6;
    0x0003f3a8 b 0x3f324                     |         
                                             |     } while (1);
                                             | label_97:
    0x0003f3ac sw v0, 0x40(sp)               |     *(var_40h_2) = v0;
    0x0003f3b0 move s5, zero                 |     s5 = 0;
    0x0003f3b4 b 0x3ee3c                     |     goto label_34;
                                             | label_98:
    0x0003f3b8 lw a0, 0xe8(s1)               |     a0 = *((s1 + 58));
    0x0003f3bc sw v1, 0x1c(sp)               |     *(var_1ch_2) = v1;
    0x0003f3c0 lw v1, -0x7fac(gp)            |     v1 = *(gp);
    0x0003f3c4 lw t9, -0x7f08(gp)            |     t9 = sym.ap_log_rerror_;
                                             |     /* str.AH00031:_access_to__s_failed__stat_of__s_failed. */
    0x0003f3c8 addiu v1, v1, -0x1020         |     v1 += -0x1020;
    0x0003f3cc sw a0, 0x20(sp)               |     *(var_20h_2) = a0;
    0x0003f3d0 sw v1, 0x18(sp)               |     *(var_18h_3) = v1;
    0x0003f3d4 sw s1, 0x14(sp)               |     *(var_14h) = s1;
    0x0003f3d8 sw v0, 0x10(sp)               |     *(var_10h_3) = v0;
    0x0003f3dc addiu a3, zero, 3             |     a3 = 3;
    0x0003f3e0 move a2, zero                 |     a2 = 0;
    0x0003f3e4 addiu a1, zero, 0x328         |     a1 = aav.0x00000328;
    0x0003f3e8 b 0x3f1b4                     |     goto label_42;
                                             | label_48:
    0x0003f3ec lw t9, -0x75e8(gp)            |     t9 = sym.imp.__stack_chk_fail;
    0x0003f3f0 jalr t9                       |     t9 ();
    0x0003f3f4 nop                           |     
                                             | }
    ; assembly                                       | /* r2dec pseudo code output */
                                                     | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x37344 */
                                                     | #include <stdint.h>
                                                     |  
    ; (fcn) sym.ap_get_server_name_for_url ()        | void ap_get_server_name_for_url () {
    0x00037344 lui gp, 7                             |     
    0x00037348 addiu gp, gp, -0x4424                 |     
    0x0003734c addu gp, gp, t9                       |     gp += t9;
    0x00037350 addiu sp, sp, -0x30                   |     
    0x00037354 lw t9, -0x7bd4(gp)                    |     t9 = sym.ap_get_server_name;
    0x00037358 sw gp, 0x18(sp)                       |     *(var_18h) = gp;
    0x0003735c sw ra, 0x2c(sp)                       |     *(var_2ch) = ra;
    0x00037360 sw s1, 0x28(sp)                       |     *(var_28h) = s1;
    0x00037364 sw s0, 0x24(sp)                       |     *(var_24h) = s0;
    0x00037368 move s1, a0                           |     s1 = a0;
    0x0003736c bal 0x37200                           |     sym_ap_get_server_name ();
    0x00037370 lw gp, 0x18(sp)                       |     gp = *(var_18h);
    0x00037374 addiu a1, zero, 0x3a                  |     a1 = 0x3a;
    0x00037378 move a0, v0                           |     a0 = v0;
    0x0003737c lw t9, -0x72b8(gp)                    |     t9 = sym.imp.strchr;
    0x00037380 move s0, v0                           |     s0 = v0;
    0x00037384 jalr t9                               |     t9 ();
    0x00037388 lw gp, 0x18(sp)                       |     gp = *(var_18h);
                                                     |     if (v0 != 0) {
    0x0003738c beqz v0, 0x373b8                      |         
    0x00037390 lw a3, -0x7fac(gp)                    |         a3 = *(gp);
    0x00037394 lw a1, -0x7fac(gp)                    |         a1 = *(gp);
    0x00037398 lw t9, -0x76e8(gp)                    |         t9 = sym.imp.apr_pstrcat
    0x0003739c lw a0, (s1)                           |         a0 = *(s1);
    0x000373a0 move a2, s0                           |         a2 = s0;
    0x000373a4 sw zero, 0x10(sp)                     |         *(var_10h) = 0;
    0x000373a8 addiu a3, a3, 0x2254                  |         a3 += 0x2254;
    0x000373ac addiu a1, a1, -0x77f4                 |         a1 += -0x77f4;
    0x000373b0 jalr t9                               |         t9 ();
    0x000373b4 move s0, v0                           |         s0 = v0;
                                                     |     }
    0x000373b8 lw ra, 0x2c(sp)                       |     ra = *(var_2ch);
    0x000373bc move v0, s0                           |     v0 = s0;
    0x000373c0 lw s1, 0x28(sp)                       |     s1 = *(var_28h);
    0x000373c4 lw s0, 0x24(sp)                       |     s0 = *(var_24h);
    0x000373c8 addiu sp, sp, 0x30                    |     
    0x000373cc jr ra                                 |     return v0;
                                                     | }
    ; assembly                           | /* r2dec pseudo code output */
                                         | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x30578 */
                                         | #include <stdint.h>
                                         |  
    ; (fcn) sym.ap_limit_section ()      | void ap_limit_section () {
    0x00030578 lui gp, 7                 |     
    0x0003057c addiu gp, gp, 0x29a8      |     
    0x00030580 addu gp, gp, t9           |     gp += t9;
    0x00030584 lw v0, -0x7534(gp)        |     v0 = *(gp);
    0x00030588 addiu sp, sp, -0x58       |     
    0x0003058c lw t9, -0x7358(gp)        |     t9 = sym.imp.strrchr;
    0x00030590 sw v0, 0x1c(sp)           |     *(var_1ch) = v0;
    0x00030594 lw v0, (v0)               |     v0 = *(v0);
    0x00030598 sw gp, 0x10(sp)           |     *(var_10h) = gp;
    0x0003059c sw s1, 0x34(sp)           |     *(var_34h) = s1;
    0x000305a0 sw s0, 0x30(sp)           |     *(var_30h) = s0;
    0x000305a4 sw ra, 0x54(sp)           |     *(var_54h) = ra;
    0x000305a8 move s0, a0               |     s0 = a0;
    0x000305ac sw fp, 0x50(sp)           |     *(var_50h) = fp;
    0x000305b0 sw s7, 0x4c(sp)           |     *(var_4ch) = s7;
    0x000305b4 sw s6, 0x48(sp)           |     *(var_48h) = s6;
    0x000305b8 sw s5, 0x44(sp)           |     *(var_44h) = s5;
    0x000305bc sw s4, 0x40(sp)           |     *(var_40h) = s4;
    0x000305c0 sw s3, 0x3c(sp)           |     *(var_3ch) = s3;
    0x000305c4 sw s2, 0x38(sp)           |     *(var_38h) = s2;
    0x000305c8 addiu a1, zero, 0x3e      |     a1 = 0x3e;
    0x000305cc move a0, a2               |     a0 = a2;
    0x000305d0 sw v0, 0x2c(sp)           |     *(var_2ch) = v0;
    0x000305d4 move s1, a2               |     s1 = a2;
    0x000305d8 jalr t9                   |     t9 ();
    0x000305dc lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x000305e0 lw v1, 0x38(s0)           |     v1 = *((s0 + 14));
                                         |     if (v0 == 0) {
    0x000305e4 beqz v0, 0x307c0          |         goto label_4;
                                         |     }
    0x000305e8 subu a2, v0, s1           |     __asm ("subu a2, v0, s1");
    0x000305ec lw v0, 8(v1)              |     v0 = *((v1 + 2));
    0x000305f0 lw t9, -0x7708(gp)        |     t9 = sym.imp.apr_pstrmemdup;
    0x000305f4 sw v0, 0x18(sp)           |     *(var_18h) = v0;
    0x000305f8 lw v0, 0x10(s0)           |     v0 = *((s0 + 4));
    0x000305fc lw a0, 0x2c(s0)           |     a0 = *((s0 + 11));
    0x00030600 sw v0, 0x20(sp)           |     *(var_20h) = v0;
    0x00030604 lw v0, 0x14(s0)           |     v0 = *((s0 + 5));
    0x00030608 move a1, s1               |     a1 = s1;
    0x0003060c sw v0, 0x24(sp)           |     *(var_24h) = v0;
    0x00030610 jalr t9                   |     t9 ();
    0x00030614 sw v0, 0x28(sp)           |     *(var_28h) = v0;
    0x00030618 lb v0, (v0)               |     v0 = *(v0);
    0x0003061c lw gp, 0x10(sp)           |     gp = *(var_10h);
                                         |     if (v0 == 0) {
    0x00030620 beqz v0, 0x307e4          |         goto label_5;
                                         |     }
    0x00030624 move s2, zero             |     s2 = 0;
    0x00030628 move s1, zero             |     s1 = 0;
    0x0003062c addiu s6, sp, 0x28        |     s6 = sp + 0x28;
    0x00030630 addiu s3, zero, 6         |     s3 = 6;
    0x00030634 addiu s4, zero, 0x1a      |     s4 = 0x1a;
    0x00030638 addiu s5, zero, 1         |     s5 = 1;
    0x0003063c b 0x30670                 |     
                                         |     if (v0 == s4) {
                                         |         while (v0 != s3) {
    0x00030640 beql v0, s4, 0x30778      |             goto label_6;
                                         |         }
    0x00030644 lw fp, 0x28(s0)           |         fp = *((s0 + 10));
    0x00030648 andi a0, v0, 0x20         |         a0 = v0 & 0x20;
    0x0003064c sllv v0, s5, v0           |         v0 = s5 << v0;
    0x00030650 move v1, v0               |         v1 = v0;
                                         |         if (a0 != 0) {
    0x00030654 movz v1, zero, a0         |             v1 = 0;
                                         |         }
                                         |         if (a0 == 0) {
    0x00030658 movn v0, zero, a0         |             v0 = 0;
                                         |         }
                                         | label_1:
    0x0003065c or s2, s2, v0             |         s2 |= v0;
    0x00030660 lw v0, 0x28(sp)           |         v0 = *(var_28h);
    0x00030664 lb v0, (v0)               |         v0 = *(v0);
    0x00030668 or s1, s1, v1             |         s1 |= v1;
                                         |         if (v0 == 0) {
    0x0003066c beqz v0, 0x306c0          |             goto label_7;
                                         |         }
                                         | label_0:
    0x00030670 lw t9, -0x7f00(gp)        |         t9 = sym.ap_getword_conf;
    0x00030674 lw a0, 0x2c(s0)           |         a0 = *((s0 + 11));
    0x00030678 move a1, s6               |         a1 = s6;
    0x0003067c bal 0x1c75c               |         sym_ap_getword_conf ();
    0x00030680 lw gp, 0x10(sp)           |         gp = *(var_10h);
    0x00030684 move a0, v0               |         a0 = v0;
    0x00030688 lw t9, -0x7d88(gp)        |         t9 = sym.ap_method_number_of;
    0x0003068c move s7, v0               |         s7 = v0;
    0x00030690 jalr t9                   |         t9 ();
    0x00030694 lw gp, 0x10(sp)           |         gp = *(var_10h);
    0x00030698 bne v0, s3, 0x30640       |         
                                         |     }
    0x0003069c lw v0, 0x18(sp)           |     v0 = *(var_18h);
    0x000306a0 move v1, zero             |     v1 = 0;
                                         |     if (v0 == 0) {
    0x000306a4 beqz v0, 0x3080c          |         goto label_8;
                                         |     }
    0x000306a8 addiu v0, zero, 0x40      |     v0 = 0x40;
    0x000306ac or s2, s2, v0             |     s2 |= v0;
    0x000306b0 lw v0, 0x28(sp)           |     v0 = *(var_28h);
    0x000306b4 lb v0, (v0)               |     v0 = *(v0);
    0x000306b8 or s1, s1, v1             |     s1 |= v1;
                                         |     if (v0 != 0) {
    0x000306bc bnez v0, 0x30670          |         goto label_0;
                                         |     }
                                         | label_7:
    0x000306c0 lw v0, 0x18(sp)           |     v0 = *(var_18h);
    0x000306c4 lw v0, 0x20(sp)           |     v0 = *(var_20h);
                                         |     if (v0 != 0) {
    0x000306c8 beqz v0, 0x306d4          |         
    0x000306cc nor s2, zero, s2          |         __asm ("nor s2, zero, s2");
    0x000306d0 nor s1, zero, s1          |         __asm ("nor s1, zero, s1");
                                         |     }
    0x000306d4 lw v1, 0x24(sp)           |     v1 = *(var_24h);
    0x000306d8 and v0, s2, v0            |     v0 = s2 & v0;
    0x000306dc and v1, s1, v1            |     v1 = s1 & v1;
    0x000306e0 or a0, v0, v1             |     a0 = v0 | v1;
    0x000306e4 lw a0, 0x20(sp)           |     a0 = *(var_20h);
                                         |     if (a0 == 0) {
    0x000306e8 beqz a0, 0x30840          |         goto label_9;
                                         |     }
    0x000306ec lw v0, 0x24(sp)           |     v0 = *(var_24h);
                                         |     if (v0 == a0) {
    0x000306f0 beq v0, a0, 0x30868       |         goto label_10;
                                         |     }
    0x000306f4 lw a0, 0x24(s0)           |     a0 = *((s0 + 9));
                                         | label_3:
    0x000306f8 lw v1, 0x10(s0)           |     v1 = *((s0 + 4));
    0x000306fc lw v0, 0x14(s0)           |     v0 = *((s0 + 5));
    0x00030700 and s2, v1, s2            |     s2 = v1 & s2;
    0x00030704 lw t9, -0x7d24(gp)        |     t9 = sym.ap_walk_config;
    0x00030708 lw a0, 0xc(a0)            |     a0 = *((a0 + 3));
    0x0003070c and s1, v0, s1            |     s1 = v0 & s1;
    0x00030710 lw a2, 0x3c(s0)           |     a2 = *((s0 + 15));
    0x00030714 sw s2, 0x10(s0)           |     *((s0 + 4)) = s2;
    0x00030718 sw s1, 0x14(s0)           |     *((s0 + 5)) = s1;
    0x0003071c move a1, s0               |     a1 = s0;
    0x00030720 bal 0x4ca70               |     sym_ap_walk_config ();
    0x00030724 lw v1, 0x20(sp)           |     v1 = *(var_20h);
    0x00030728 lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x0003072c sw v1, 0x10(s0)           |     *((s0 + 4)) = v1;
    0x00030730 lw v1, 0x24(sp)           |     v1 = *(var_24h);
    0x00030734 sw v1, 0x14(s0)           |     *((s0 + 5)) = v1;
                                         |     do {
                                         | label_2:
    0x00030738 lw v1, 0x1c(sp)           |         v1 = *(var_1ch);
    0x0003073c lw a0, 0x2c(sp)           |         a0 = *(var_2ch);
    0x00030740 lw v1, (v1)               |         v1 = *(v1);
    0x00030744 lw ra, 0x54(sp)           |         ra = *(var_54h);
                                         |         if (a0 != v1) {
    0x00030748 bne a0, v1, 0x30898       |             goto label_11;
                                         |         }
    0x0003074c lw fp, 0x50(sp)           |         fp = *(var_50h);
    0x00030750 lw s7, 0x4c(sp)           |         s7 = *(var_4ch);
    0x00030754 lw s6, 0x48(sp)           |         s6 = *(var_48h);
    0x00030758 lw s5, 0x44(sp)           |         s5 = *(var_44h);
    0x0003075c lw s4, 0x40(sp)           |         s4 = *(var_40h);
    0x00030760 lw s3, 0x3c(sp)           |         s3 = *(var_3ch);
    0x00030764 lw s2, 0x38(sp)           |         s2 = *(var_38h);
    0x00030768 lw s1, 0x34(sp)           |         s1 = *(var_34h);
    0x0003076c lw s0, 0x30(sp)           |         s0 = *(var_30h);
    0x00030770 addiu sp, sp, 0x58        |         
    0x00030774 jr ra                     |         return v0;
                                         | label_6:
    0x00030778 lw v0, 0x2c(s0)           |         v0 = *((s0 + 11));
    0x0003077c lw t9, -0x7654(gp)        |         t9 = sym.imp.apr_pstrdup;
                                         |         if (fp == v0) {
    0x00030780 beq fp, v0, 0x30818       |             goto label_12;
                                         |         }
    0x00030784 move a1, s7               |         a1 = s7;
    0x00030788 move a0, fp               |         a0 = fp;
    0x0003078c jalr t9                   |         t9 ();
    0x00030790 lw gp, 0x10(sp)           |         gp = *(var_10h);
    0x00030794 move a0, fp               |         a0 = fp;
    0x00030798 lw t9, -0x7d20(gp)        |         t9 = sym.ap_method_register;
    0x0003079c move a1, v0               |         a1 = v0;
    0x000307a0 jalr t9                   |         t9 ();
    0x000307a4 andi a0, v0, 0x20         |         a0 = v0 & 0x20;
    0x000307a8 sllv v0, s5, v0           |         v0 = s5 << v0;
    0x000307ac move v1, v0               |         v1 = v0;
    0x000307b0 lw gp, 0x10(sp)           |         gp = *(var_10h);
                                         |         if (a0 != 0) {
    0x000307b4 movz v1, zero, a0         |             v1 = 0;
                                         |         }
                                         |         if (a0 == 0) {
    0x000307b8 movn v0, zero, a0         |             v0 = 0;
                                         |         }
    0x000307bc b 0x3065c                 |         goto label_1;
                                         | label_4:
    0x000307c0 lw a2, -0x7fac(gp)        |         a2 = *(gp);
    0x000307c4 lw t9, -0x76e8(gp)        |         t9 = sym.imp.apr_pstrcat
    0x000307c8 lw a1, (v1)               |         a1 = *(v1);
    0x000307cc lw a0, 0x28(s0)           |         a0 = *((s0 + 10));
    0x000307d0 move a3, zero             |         a3 = 0;
                                         |         /* str.__directive_missing_closing__ */
    0x000307d4 addiu a2, a2, -0x4cb0     |         a2 += -0x4cb0;
    0x000307d8 jalr t9                   |         t9 ();
    0x000307dc lw gp, 0x10(sp)           |         gp = *(var_10h);
    0x000307e0 b 0x30738                 |         
                                         |     } while (1);
                                         | label_5:
    0x000307e4 lw v0, 0x38(s0)           |     v0 = *((s0 + 14));
    0x000307e8 lw a2, -0x7fac(gp)        |     a2 = *(gp);
    0x000307ec lw t9, -0x76e8(gp)        |     t9 = sym.imp.apr_pstrcat
    0x000307f0 lw a1, (v0)               |     a1 = *(v0);
    0x000307f4 lw a0, 0x28(s0)           |     a0 = *((s0 + 10));
    0x000307f8 move a3, zero             |     a3 = 0;
                                         |     /* str.__directive_requires_additional_arguments */
    0x000307fc addiu a2, a2, -0x4c90     |     a2 += -0x4c90;
    0x00030800 jalr t9                   |     t9 ();
    0x00030804 lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x00030808 b 0x30738                 |     goto label_2;
                                         | label_8:
    0x0003080c lw v0, -0x7fac(gp)        |     v0 = *(gp);
                                         |     /* str.TRACE_cannot_be_controlled_by__Limit___see_TraceEnable */
    0x00030810 addiu v0, v0, -0x4ce8     |     v0 += -0x4ce8;
    0x00030814 b 0x30738                 |     goto label_2;
                                         | label_12:
    0x00030818 lw v0, 0x38(s0)           |     v0 = *((s0 + 14));
    0x0003081c lw a1, -0x7fac(gp)        |     a1 = *(gp);
    0x00030820 lw t9, -0x7540(gp)        |     t9 = sym.imp.apr_psprintf;
    0x00030824 lw a3, (v0)               |     a3 = *(v0);
    0x00030828 move a2, s7               |     a2 = s7;
                                         |     /* str.Could_not_register_method__s_for__s_from_.htaccess_configuration */
    0x0003082c addiu a1, a1, -0x4c64     |     a1 += -0x4c64;
    0x00030830 move a0, fp               |     a0 = fp;
    0x00030834 jalr t9                   |     t9 ();
    0x00030838 lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x0003083c b 0x30738                 |     goto label_2;
                                         | label_9:
    0x00030840 lw v0, 0x38(s0)           |     v0 = *((s0 + 14));
    0x00030844 lw a2, -0x7fac(gp)        |     a2 = *(gp);
    0x00030848 lw t9, -0x76e8(gp)        |     t9 = sym.imp.apr_pstrcat
    0x0003084c lw a1, (v0)               |     a1 = *(v0);
    0x00030850 lw a0, 0x28(s0)           |     a0 = *((s0 + 10));
    0x00030854 move a3, zero             |     a3 = 0;
                                         |     /* str.__directive_excludes_all_methods */
    0x00030858 addiu a2, a2, -0x4c20     |     a2 += -0x4c20;
    0x0003085c jalr t9                   |     t9 ();
    0x00030860 lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x00030864 b 0x30738                 |     goto label_2;
                                         | label_10:
    0x00030868 lw a0, 0x24(s0)           |     a0 = *((s0 + 9));
                                         |     if (v1 == v0) {
    0x0003086c bnel v1, v0, 0x306f8      |         goto label_3;
                                         |     }
    0x00030870 lw v0, 0x38(s0)           |     v0 = *((s0 + 14));
    0x00030874 lw a2, -0x7fac(gp)        |     a2 = *(gp);
    0x00030878 lw t9, -0x76e8(gp)        |     t9 = sym.imp.apr_pstrcat
    0x0003087c lw a1, (v0)               |     a1 = *(v0);
    0x00030880 lw a0, 0x28(s0)           |     a0 = *((s0 + 10));
    0x00030884 move a3, zero             |     a3 = 0;
                                         |     /* str.__directive_specifies_methods_already_excluded */
    0x00030888 addiu a2, a2, -0x4bfc     |     a2 += -0x4bfc;
    0x0003088c jalr t9                   |     t9 ();
    0x00030890 lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x00030894 b 0x30738                 |     goto label_2;
                                         | label_11:
    0x00030898 lw t9, -0x75e8(gp)        |     t9 = sym.imp.__stack_chk_fail;
    0x0003089c jalr t9                   |     t9 ();
    0x000308a0 nop                       |     
    0x000308a4 lui gp, 7                 |     
    0x000308a8 addiu gp, gp, 0x267c      |     
    0x000308ac addu gp, gp, t9           |     gp += t9;
    0x000308b0 lw v0, -0x7f84(gp)        |     v0 = *(gp);
    0x000308b4 lw t9, -0x7d9c(gp)        |     t9 = sym.ap_array_str_contains;
    0x000308b8 lw a0, (v0)               |     a0 = *(v0);
    0x000308bc b 0x21b0c                 |     return void (*0x21b0c)() ();
                                         | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x52d80 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.ap_log_pid ()                | void ap_log_pid () {
    0x00052d80 lui gp, 5                     |     
    0x00052d84 addiu gp, gp, 0x1a0           |     
    0x00052d88 addu gp, gp, t9               |     gp += t9;
    0x00052d8c addiu sp, sp, -0x108          |     
    0x00052d90 sw s1, 0xec(sp)               |     *(var_ech) = s1;
    0x00052d94 lw s1, -0x7534(gp)            |     s1 = *(gp);
    0x00052d98 sw gp, 0x28(sp)               |     *(var_28h) = gp;
    0x00052d9c sw ra, 0x104(sp)              |     *(var_104h) = ra;
    0x00052da0 lw v0, (s1)                   |     v0 = *(s1);
    0x00052da4 sw s6, 0x100(sp)              |     *(var_100h) = s6;
    0x00052da8 sw s5, 0xfc(sp)               |     *(var_fch) = s5;
    0x00052dac sw s4, 0xf8(sp)               |     *(var_f8h) = s4;
    0x00052db0 sw s3, 0xf4(sp)               |     *(var_f4h) = s3;
    0x00052db4 sw s2, 0xf0(sp)               |     *(var_f0h) = s2;
    0x00052db8 sw s0, 0xe8(sp)               |     *(var_e8h) = s0;
    0x00052dbc sw zero, 0x34(sp)             |     *(var_34h) = 0;
    0x00052dc0 sw v0, 0xe4(sp)               |     *(var_e4h) = v0;
    0x00052dc4 lw t9, -0x7e50(gp)            |     t9 = sym.ap_server_root_relative;
                                             |     if (a1 == 0) {
    0x00052dc8 beqz a1, 0x52ef8              |         goto label_1;
                                             |     }
    0x00052dcc move s3, a1                   |     s3 = a1;
    0x00052dd0 move s0, a0                   |     s0 = a0;
    0x00052dd4 bal 0x4d3e0                   |     sym_ap_server_root_relative ();
    0x00052dd8 move s2, v0                   |     s2 = v0;
    0x00052ddc lw gp, 0x28(sp)               |     gp = *(var_28h);
                                             |     if (v0 == 0) {
    0x00052de0 beqz v0, 0x52f88              |         goto label_2;
                                             |     }
    0x00052de4 lw s6, -0x7f14(gp)            |     s6 = *((gp - 8133));
    0x00052de8 lw t9, -0x7224(gp)            |     t9 = sym.imp.getpid;
    0x00052dec jalr t9                       |     t9 ();
    0x00052df0 nop                           |     
    0x00052df4 lw v1, -0x5250(s6)            |     v1 = *((s6 - 5268));
    0x00052df8 lw gp, 0x28(sp)               |     gp = *(var_28h);
    0x00052dfc move s5, v0                   |     s5 = v0;
    0x00052e00 bne v1, v0, 0x52f2c           |     
                                             |     while (v0 != 0) {
                                             | label_0:
    0x00052e04 lw a2, -0x7fac(gp)            |         a2 = *(gp);
    0x00052e08 lw t9, -0x76e8(gp)            |         t9 = sym.imp.apr_pstrcat
    0x00052e0c move a3, zero                 |         a3 = 0;
                                             |         /* str..XXXXXX */
    0x00052e10 addiu a2, a2, 0x1244          |         a2 += 0x1244;
    0x00052e14 move a1, s2                   |         a1 = s2;
    0x00052e18 move a0, s0                   |         a0 = s0;
    0x00052e1c jalr t9                       |         t9 ();
    0x00052e20 lw gp, 0x28(sp)               |         gp = *(var_28h);
    0x00052e24 move a3, s0                   |         a3 = s0;
    0x00052e28 addiu a2, zero, 0x16          |         a2 = 0x16;
    0x00052e2c lw t9, -0x75cc(gp)            |         t9 = sym.imp.apr_file_mktemp;
    0x00052e30 move a1, v0                   |         a1 = v0;
    0x00052e34 addiu a0, sp, 0x34            |         a0 = sp + 0x34;
    0x00052e38 move s3, v0                   |         s3 = v0;
    0x00052e3c jalr t9                       |         t9 ();
    0x00052e40 lw gp, 0x28(sp)               |         gp = *(var_28h);
                                             |         if (v0 != 0) {
    0x00052e44 bnez v0, 0x53030              |             goto label_3;
                                             |         }
    0x00052e48 lw a2, -0x7fac(gp)            |         a2 = *(gp);
    0x00052e4c lw t9, -0x7568(gp)            |         t9 = sym.imp.apr_snprintf;
    0x00052e50 addiu s4, sp, 0xa4            |         s4 = sp + 0xa4;
    0x00052e54 move a3, s5                   |         a3 = s5;
                                             |         /* esilref: '&d
' */
    0x00052e58 addiu a2, a2, 0x1298          |         a2 += 0x1298;
    0x00052e5c addiu a1, zero, 0x40          |         a1 = 0x40;
    0x00052e60 move a0, s4                   |         a0 = s4;
    0x00052e64 jalr t9                       |         t9 ();
    0x00052e68 lw gp, 0x28(sp)               |         gp = *(var_28h);
    0x00052e6c addiu a1, zero, 0x644         |         a1 = aav.0x00000644;
    0x00052e70 lw t9, -0x742c(gp)            |         t9 = sym.imp.apr_file_perms_set;
    0x00052e74 move a0, s3                   |         a0 = s3;
    0x00052e78 jalr t9                       |         t9 ();
    0x00052e7c lw gp, 0x28(sp)               |         gp = *(var_28h);
                                             |         if (v0 != 0) {
    0x00052e80 beqz v0, 0x52e94              |             
    0x00052e84 lui v1, 1                     |             v1 = 0x11187;
                                             |             /* esilref: 't_name_virtual_host' */
    0x00052e88 addiu v1, v1, 0x1187          |             
    0x00052e8c lw v1, -0x7f98(gp)            |             v1 = *(gp);
                                             |             if (v0 != v1) {
    0x00052e90 bne v0, v1, 0x52fd4           |                 goto label_4;
                                             |             }
                                             |         }
    0x00052e94 lw t9, -0x74c4(gp)            |         t9 = sym.imp.strlen;
    0x00052e98 move a0, s4                   |         a0 = s4;
    0x00052e9c jalr t9                       |         t9 ();
    0x00052ea0 lw gp, 0x28(sp)               |         gp = *(var_28h);
    0x00052ea4 lw a0, 0x34(sp)               |         a0 = *(var_34h);
    0x00052ea8 move a3, zero                 |         a3 = 0;
    0x00052eac lw t9, -0x72c0(gp)            |         t9 = sym.imp.apr_file_write_full;
    0x00052eb0 move a2, v0                   |         a2 = v0;
    0x00052eb4 move a1, s4                   |         a1 = s4;
    0x00052eb8 jalr t9                       |         t9 ();
    0x00052ebc lw gp, 0x28(sp)               |         gp = *(var_28h);
                                             |         if (v0 != 0) {
    0x00052ec0 bnez v0, 0x52fd0              |             goto label_5;
                                             |         }
    0x00052ec4 lw t9, -0x7760(gp)            |         t9 = sym.imp.apr_file_close;
    0x00052ec8 lw a0, 0x34(sp)               |         a0 = *(var_34h);
    0x00052ecc jalr t9                       |         t9 ();
    0x00052ed0 lw gp, 0x28(sp)               |         gp = *(var_28h);
                                             |         if (v0 != 0) {
    0x00052ed4 bnez v0, 0x52fd0              |             goto label_5;
                                             |         }
    0x00052ed8 lw t9, -0x73a0(gp)            |         t9 = sym.imp.apr_file_rename;
    0x00052edc move a2, s0                   |         a2 = s0;
    0x00052ee0 move a1, s2                   |         a1 = s2;
    0x00052ee4 move a0, s3                   |         a0 = s3;
    0x00052ee8 jalr t9                       |         t9 ();
    0x00052eec lw gp, 0x28(sp)               |         gp = *(var_28h);
                                             |         if (v0 != 0) {
    0x00052ef0 bnez v0, 0x52fd0              |             goto label_5;
                                             |         }
    0x00052ef4 sw s5, -0x5250(s6)            |         *((s6 - 5268)) = s5;
                                             | label_1:
    0x00052ef8 lw v1, 0xe4(sp)               |         v1 = *(var_e4h);
    0x00052efc lw v0, (s1)                   |         v0 = *(s1);
    0x00052f00 lw ra, 0x104(sp)              |         ra = *(var_104h);
                                             |         if (v1 != v0) {
    0x00052f04 bne v1, v0, 0x53024           |             goto label_6;
                                             |         }
    0x00052f08 lw s6, 0x100(sp)              |         s6 = *(var_100h);
    0x00052f0c lw s5, 0xfc(sp)               |         s5 = *(var_fch);
    0x00052f10 lw s4, 0xf8(sp)               |         s4 = *(var_f8h);
    0x00052f14 lw s3, 0xf4(sp)               |         s3 = *(var_f4h);
    0x00052f18 lw s2, 0xf0(sp)               |         s2 = *(var_f0h);
    0x00052f1c lw s1, 0xec(sp)               |         s1 = *(var_ech);
    0x00052f20 lw s0, 0xe8(sp)               |         s0 = *(var_e8h);
    0x00052f24 addiu sp, sp, 0x108           |         
    0x00052f28 jr ra                         |         return v0;
    0x00052f2c lw t9, -0x7250(gp)            |         t9 = sym.imp.apr_stat;
    0x00052f30 move a3, s0                   |         a3 = s0;
    0x00052f34 addiu a2, zero, 0x10          |         a2 = 0x10;
    0x00052f38 move a1, s2                   |         a1 = s2;
    0x00052f3c addiu a0, sp, 0x38            |         a0 = sp + 0x38;
    0x00052f40 jalr t9                       |         t9 ();
    0x00052f44 lw gp, 0x28(sp)               |         gp = *(var_28h);
    0x00052f48 bnez v0, 0x52e04              |         
                                             |     }
    0x00052f4c lw v0, -0x7fac(gp)            |     v0 = *(gp);
    0x00052f50 lw a0, -0x7fac(gp)            |     a0 = *(gp);
                                             |     /* str.AH00098:_pid_file__s_overwritten____Unclean_shutdown_of_previous_Apache_run_ */
    0x00052f54 addiu v0, v0, 0x11f4          |     v0 += 0x11f4;
    0x00052f58 lw t9, -0x7ec8(gp)            |     t9 = sym.ap_log_perror_;
    0x00052f5c sw s2, 0x1c(sp)               |     *(var_1ch) = s2;
    0x00052f60 sw v0, 0x18(sp)               |     *(var_18h) = v0;
    0x00052f64 sw s0, 0x14(sp)               |     *(var_14h) = s0;
    0x00052f68 sw zero, 0x10(sp)             |     *(var_10h) = 0;
    0x00052f6c addiu a3, zero, 4             |     a3 = 4;
    0x00052f70 move a2, zero                 |     a2 = 0;
    0x00052f74 addiu a1, zero, 0x65c         |     a1 = aav.0x0000065c;
                                             |     /* str._usr_src_debug_apache2_2.4.57_r0_httpd_2.4.57_server_log.c */
    0x00052f78 addiu a0, a0, 0xd98           |     a0 += 0xd98;
    0x00052f7c bal 0x52cec                   |     sym_ap_log_perror_ ();
    0x00052f80 lw gp, 0x28(sp)               |     gp = *(var_28h);
    0x00052f84 b 0x52e04                     |     goto label_0;
                                             | label_2:
    0x00052f88 lw v0, -0x7fc0(gp)            |     v0 = *(gp);
    0x00052f8c lw a0, -0x7fac(gp)            |     a0 = *(gp);
    0x00052f90 lw t9, -0x7fb0(gp)            |     t9 = sym.ap_log_error_;
    0x00052f94 lw v1, (v0)                   |     v1 = *(v0);
    0x00052f98 lw v0, -0x7fac(gp)            |     v0 = *(gp);
    0x00052f9c sw s3, 0x1c(sp)               |     *(var_1ch) = s3;
                                             |     /* str.AH00097:_Invalid_PID_file_path__s__ignoring. */
    0x00052fa0 addiu v0, v0, 0x11c4          |     v0 += 0x11c4;
    0x00052fa4 sw v0, 0x18(sp)               |     *(var_18h) = v0;
    0x00052fa8 addiu v0, zero, 0x4e38        |     v0 = 0x4e38;
    0x00052fac sw v1, 0x14(sp)               |     *(var_14h) = v1;
    0x00052fb0 sw v0, 0x10(sp)               |     *(var_10h) = v0;
    0x00052fb4 addiu a3, zero, 0x42          |     a3 = 0x42;
    0x00052fb8 move a2, zero                 |     a2 = 0;
    0x00052fbc addiu a1, zero, 0x64e         |     a1 = 0x64e;
                                             |     /* str._usr_src_debug_apache2_2.4.57_r0_httpd_2.4.57_server_log.c */
    0x00052fc0 addiu a0, a0, 0xd98           |     a0 += 0xd98;
    0x00052fc4 bal 0x515e8                   |     sym_ap_log_error_ ();
    0x00052fc8 lw gp, 0x28(sp)               |     gp = *(var_28h);
    0x00052fcc b 0x52ef8                     |     goto label_1;
                                             | label_5:
    0x00052fd0 lw v1, -0x7f98(gp)            |     v1 = *(gp);
                                             | label_4:
    0x00052fd4 lw a0, -0x7fac(gp)            |     a0 = *(gp);
    0x00052fd8 lw t9, -0x7fb0(gp)            |     t9 = sym.ap_log_error_;
    0x00052fdc lw v1, (v1)                   |     v1 = *(v1);
                                             |     /* str._usr_src_debug_apache2_2.4.57_r0_httpd_2.4.57_server_log.c */
    0x00052fe0 addiu a0, a0, 0xd98           |     a0 += 0xd98;
    0x00052fe4 sw v1, 0x1c(sp)               |     *(var_1ch) = v1;
    0x00052fe8 lw v1, -0x7fac(gp)            |     v1 = *(gp);
    0x00052fec sw s3, 0x20(sp)               |     *(var_20h) = s3;
                                             |     /* str.AH10231:__s:_Failed_creating_pid_file__s */
    0x00052ff0 addiu v1, v1, 0x129c          |     v1 += 0x129c;
    0x00052ff4 sw v1, 0x18(sp)               |     *(var_18h) = v1;
    0x00052ff8 sw zero, 0x14(sp)             |     *(var_14h) = 0;
    0x00052ffc sw v0, 0x10(sp)               |     *(var_10h) = v0;
    0x00053000 addiu a3, zero, 3             |     a3 = 3;
    0x00053004 move a2, zero                 |     a2 = 0;
    0x00053008 addiu a1, zero, 0x677         |     a1 = 0x677;
                                             |     do {
    0x0005300c bal 0x515e8                   |         sym_ap_log_error_ ();
    0x00053010 nop                           |         
    0x00053014 lw gp, 0x28(sp)               |         gp = *(var_28h);
    0x00053018 lw t9, -0x774c(gp)            |         t9 = sym.imp.exit;
    0x0005301c addiu a0, zero, 1             |         a0 = 1;
    0x00053020 jalr t9                       |         t9 ();
                                             | label_6:
    0x00053024 lw t9, -0x75e8(gp)            |         t9 = sym.imp.__stack_chk_fail;
    0x00053028 jalr t9                       |         t9 ();
    0x0005302c nop                           |         
                                             | label_3:
    0x00053030 lw v1, -0x7fac(gp)            |         v1 = *(gp);
    0x00053034 lw s1, -0x7fac(gp)            |         s1 = *(gp);
    0x00053038 lw s0, -0x7fb0(gp)            |         s0 = sym.ap_log_error_;
                                             |         /* str.AH00099:_could_not_create__s */
    0x0005303c addiu v1, v1, 0x124c          |         v1 += 0x124c;
    0x00053040 addiu a3, zero, 3             |         a3 = 3;
    0x00053044 move a2, zero                 |         a2 = 0;
    0x00053048 addiu a1, zero, 0x667         |         a1 = 0x667;
                                             |         /* str._usr_src_debug_apache2_2.4.57_r0_httpd_2.4.57_server_log.c */
    0x0005304c addiu a0, s1, 0xd98           |         a0 = s1 + 0xd98;
    0x00053050 sw v0, 0x10(sp)               |         *(var_10h) = v0;
    0x00053054 move t9, s0                   |         t9 = s0;
    0x00053058 sw s3, 0x1c(sp)               |         *(var_1ch) = s3;
    0x0005305c sw v1, 0x18(sp)               |         *(var_18h) = v1;
    0x00053060 sw zero, 0x14(sp)             |         *(var_14h) = 0;
    0x00053064 bal 0x515e8                   |         sym_ap_log_error_ ();
    0x00053068 lw gp, 0x28(sp)               |         gp = *(var_28h);
                                             |         /* str._usr_src_debug_apache2_2.4.57_r0_httpd_2.4.57_server_log.c */
    0x0005306c addiu a0, s1, 0xd98           |         a0 = s1 + 0xd98;
    0x00053070 addiu a3, zero, 3             |         a3 = 3;
    0x00053074 lw v0, -0x7f98(gp)            |         v0 = *(gp);
    0x00053078 move a2, zero                 |         a2 = 0;
    0x0005307c addiu a1, zero, 0x66a         |         a1 = 0x66a;
    0x00053080 lw v0, (v0)                   |         v0 = *(v0);
    0x00053084 sw s2, 0x20(sp)               |         *(var_20h) = s2;
    0x00053088 sw v0, 0x1c(sp)               |         *(var_1ch) = v0;
    0x0005308c lw v0, -0x7fac(gp)            |         v0 = *(gp);
    0x00053090 sw zero, 0x14(sp)             |         *(var_14h) = 0;
                                             |         /* str.AH00100:__s:_could_not_log_pid_to_file__s */
    0x00053094 addiu v0, v0, 0x126c          |         v0 += aav.0x0000126c;
    0x00053098 sw v0, 0x18(sp)               |         *(var_18h) = v0;
    0x0005309c sw zero, 0x10(sp)             |         *(var_10h) = 0;
    0x000530a0 move t9, s0                   |         t9 = s0;
    0x000530a4 b 0x5300c                     |         
                                             |     } while (1);
                                             | }
    ; assembly                                   | /* r2dec pseudo code output */
                                                 | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x240ec */
                                                 | #include <stdint.h>
                                                 |  
    ; (fcn) sym.ap_mpm_set_coredumpdir ()        | void ap_mpm_set_coredumpdir () {
    0x000240ec lui gp, 8                         |     
    0x000240f0 addiu gp, gp, -0x11cc             |     
    0x000240f4 addu gp, gp, t9                   |     gp += t9;
    0x000240f8 addiu sp, sp, -0xa8               |     
    0x000240fc lw t9, -0x7e54(gp)                |     t9 = sym.ap_check_cmd_context;
    0x00024100 sw s1, 0x94(sp)                   |     *(var_94h) = s1;
    0x00024104 lw s1, -0x7534(gp)                |     s1 = *(gp);
    0x00024108 sw gp, 0x18(sp)                   |     *(var_18h) = gp;
    0x0002410c sw s3, 0x9c(sp)                   |     *(var_9ch) = s3;
    0x00024110 lw v0, (s1)                       |     v0 = *(s1);
    0x00024114 sw s2, 0x98(sp)                   |     *(var_98h) = s2;
    0x00024118 sw s0, 0x90(sp)                   |     *(var_90h) = s0;
    0x0002411c sw ra, 0xa4(sp)                   |     *(var_a4h) = ra;
    0x00024120 sw s4, 0xa0(sp)                   |     *(var_a0h) = s4;
    0x00024124 addiu a1, zero, 0x5f              |     a1 = 0x5f;
    0x00024128 sw v0, 0x8c(sp)                   |     *(var_8ch) = v0;
    0x0002412c move s2, a0                       |     s2 = a0;
    0x00024130 move s3, a2                       |     s3 = a2;
    0x00024134 bal 0x37600                       |     sym_ap_check_cmd_context ();
    0x00024138 move s0, v0                       |     s0 = v0;
    0x0002413c lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x00024140 beqz v0, 0x24174                  |     
                                                 |     while (1) {
                                                 | label_0:
    0x00024144 lw a0, 0x8c(sp)                   |         a0 = *(var_8ch);
    0x00024148 lw v1, (s1)                       |         v1 = *(s1);
    0x0002414c move v0, s0                       |         v0 = s0;
                                                 |         if (a0 != v1) {
    0x00024150 bne a0, v1, 0x24254               |             goto label_2;
                                                 |         }
    0x00024154 lw ra, 0xa4(sp)                   |         ra = *(var_a4h);
    0x00024158 lw s4, 0xa0(sp)                   |         s4 = *(var_a0h);
    0x0002415c lw s3, 0x9c(sp)                   |         s3 = *(var_9ch);
    0x00024160 lw s2, 0x98(sp)                   |         s2 = *(var_98h);
    0x00024164 lw s1, 0x94(sp)                   |         s1 = *(var_94h);
    0x00024168 lw s0, 0x90(sp)                   |         s0 = *(var_90h);
    0x0002416c addiu sp, sp, 0xa8                |         
    0x00024170 jr ra                             |         return v1;
    0x00024174 lw t9, -0x7e50(gp)                |         t9 = sym.ap_server_root_relative;
    0x00024178 lw a0, 0x2c(s2)                   |         a0 = *((s2 + 11));
    0x0002417c move a1, s3                       |         a1 = s3;
    0x00024180 jalr t9                           |         t9 ();
    0x00024184 move s4, v0                       |         s4 = v0;
    0x00024188 lw gp, 0x18(sp)                   |         gp = *(var_18h);
                                                 |         if (v0 == 0) {
    0x0002418c beqz v0, 0x24214                  |             goto label_3;
                                                 |         }
    0x00024190 lw t9, -0x7250(gp)                |         t9 = sym.imp.apr_stat;
    0x00024194 lw a3, 0x28(s2)                   |         a3 = *((s2 + 10));
    0x00024198 ori a2, zero, 0x8000              |         a2 = 0x8000;
    0x0002419c move a1, v0                       |         a1 = v0;
    0x000241a0 addiu a0, sp, 0x20                |         a0 = sp + 0x20;
    0x000241a4 jalr t9                           |         t9 ();
    0x000241a8 lw gp, 0x18(sp)                   |         gp = *(var_18h);
                                                 |         if (v0 != 0) {
    0x000241ac bnez v0, 0x2423c                  |             goto label_4;
                                                 |         }
    0x000241b0 lw v1, 0x2c(sp)                   |         v1 = *(var_2ch);
    0x000241b4 addiu v0, zero, 2                 |         v0 = 2;
    0x000241b8 lw a3, -0x7fac(gp)                |         a3 = *(gp);
                                                 |         if (v1 == v0) {
    0x000241bc beq v1, v0, 0x241ec               |             goto label_5;
                                                 |         }
    0x000241c0 lw t9, -0x76e8(gp)                |         t9 = sym.imp.apr_pstrcat
    0x000241c4 lw a0, 0x28(s2)                   |         a0 = *((s2 + 10));
                                                 |         /* str._is_not_a_directory */
    0x000241c8 addiu a3, a3, -0x64a8             |         a3 += -0x64a8;
    0x000241cc sw zero, 0x10(sp)                 |         *(var_10h_2) = 0;
                                                 | label_1:
    0x000241d0 lw a1, -0x7fac(gp)                |         a1 = *(gp);
    0x000241d4 move a2, s4                       |         a2 = s4;
                                                 |         /* str.CoreDumpDirectory_ */
    0x000241d8 addiu a1, a1, -0x64bc             |         a1 += -0x64bc;
    0x000241dc jalr t9                           |         t9 ();
    0x000241e0 move s0, v0                       |         s0 = v0;
    0x000241e4 lw gp, 0x18(sp)                   |         gp = *(var_18h);
    0x000241e8 b 0x24144                         |         
                                                 |     }
                                                 | label_5:
    0x000241ec lw t9, -0x7260(gp)                |     t9 = sym.imp.apr_cpystrn;
    0x000241f0 lw a0, -0x7e70(gp)                |     a0 = *(gp);
    0x000241f4 addiu a2, zero, 0x2000            |     a2 = aav.0x00002000;
    0x000241f8 move a1, s4                       |     a1 = s4;
    0x000241fc jalr t9                           |     t9 ();
    0x00024200 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x00024204 addiu v1, zero, 1                 |     v1 = 1;
    0x00024208 lw v0, -0x7e6c(gp)                |     v0 = *(gp);
    0x0002420c sw v1, (v0)                       |     *(v0) = v1;
    0x00024210 b 0x24144                         |     goto label_0;
                                                 | label_3:
    0x00024214 lw a1, -0x7fac(gp)                |     a1 = *(gp);
    0x00024218 lw t9, -0x76e8(gp)                |     t9 = sym.imp.apr_pstrcat
    0x0002421c lw a0, 0x28(s2)                   |     a0 = *((s2 + 10));
    0x00024220 move a3, zero                     |     a3 = 0;
    0x00024224 move a2, s3                       |     a2 = s3;
                                                 |     /* str.Invalid_CoreDumpDirectory_path_ */
    0x00024228 addiu a1, a1, -0x64ec             |     a1 += -0x64ec;
    0x0002422c jalr t9                           |     t9 ();
    0x00024230 move s0, v0                       |     s0 = v0;
    0x00024234 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x00024238 b 0x24144                         |     goto label_0;
                                                 | label_4:
    0x0002423c lw a3, -0x7fac(gp)                |     a3 = *(gp);
    0x00024240 lw a0, 0x28(s2)                   |     a0 = *((s2 + 10));
    0x00024244 lw t9, -0x76e8(gp)                |     t9 = sym.imp.apr_pstrcat
    0x00024248 sw zero, 0x10(sp)                 |     *(var_10h_2) = 0;
                                                 |     /* str._does_not_exist */
    0x0002424c addiu a3, a3, -0x64cc             |     a3 += -0x64cc;
    0x00024250 b 0x241d0                         |     goto label_1;
                                                 | label_2:
    0x00024254 lw t9, -0x75e8(gp)                |     t9 = sym.imp.__stack_chk_fail;
    0x00024258 jalr t9                           |     t9 ();
    0x0002425c nop                               |     
                                                 | }
    ; assembly                                   | /* r2dec pseudo code output */
                                                 | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x2c488 */
                                                 | #include <stdint.h>
                                                 |  
    ; (fcn) sym.ap_parse_request_line ()         | void ap_parse_request_line () {
    0x0002c488 lui gp, 7                         |     
    0x0002c48c addiu gp, gp, 0x6a98              |     
    0x0002c490 addu gp, gp, t9                   |     gp += t9;
    0x0002c494 lw v0, 8(a0)                      |     v0 = *((a0 + 2));
    0x0002c498 addiu sp, sp, -0x58               |     
    0x0002c49c lw t9, -0x744c(gp)                |     t9 = *(gp);
    0x0002c4a0 lw v0, 0x18(v0)                   |     v0 = *((v0 + 6));
    0x0002c4a4 sw s3, 0x3c(sp)                   |     *(var_3ch) = s3;
    0x0002c4a8 sw s4, 0x40(sp)                   |     *(var_40h) = s4;
    0x0002c4ac lw s3, (v0)                       |     s3 = *(v0);
    0x0002c4b0 lw s4, 0x18(a0)                   |     s4 = *((a0 + 6));
    0x0002c4b4 sw gp, 0x28(sp)                   |     *(var_28h) = gp;
    0x0002c4b8 sw s1, 0x34(sp)                   |     *(var_34h) = s1;
    0x0002c4bc sw s0, 0x30(sp)                   |     *(var_30h) = s0;
    0x0002c4c0 sw ra, 0x54(sp)                   |     *(var_54h) = ra;
    0x0002c4c4 sw fp, 0x50(sp)                   |     *(var_50h) = fp;
    0x0002c4c8 sw s7, 0x4c(sp)                   |     *(var_4ch) = s7;
    0x0002c4cc sw s6, 0x48(sp)                   |     *(var_48h) = s6;
    0x0002c4d0 sw s5, 0x44(sp)                   |     *(var_44h) = s5;
    0x0002c4d4 sw s2, 0x38(sp)                   |     *(var_38h) = s2;
    0x0002c4d8 lb s2, 0x41(s3)                   |     s2 = *((s3 + 65));
    0x0002c4dc sw s4, 0x4c(a0)                   |     *((a0 + 19)) = s4;
    0x0002c4e0 move s0, a0                       |     s0 = a0;
    0x0002c4e4 jalr t9                           |     t9 ();
    0x0002c4e8 move s1, v0                       |     s1 = v0;
    0x0002c4ec lbu v0, (s4)                      |     v0 = *(s4);
    0x0002c4f0 lw a0, (s1)                       |     a0 = *(s1);
    0x0002c4f4 sll v0, v0, 1                     |     v0 <<= 1;
    0x0002c4f8 addu v0, a0, v0                   |     v0 = a0 + v0;
    0x0002c4fc lhu v0, (v0)                      |     v0 = *(v0);
    0x0002c500 andi v0, v0, 0x2000               |     v0 &= aav.0x00002000;
    0x0002c504 lw gp, 0x28(sp)                   |     gp = *(var_28h);
                                                 |     if (v0 == 0) {
    0x0002c508 beqz v0, 0x2c8a8                  |         goto label_80;
                                                 |     }
    0x0002c50c addiu v1, s4, 1                   |     v1 = s4 + 1;
                                                 |     do {
    0x0002c510 sw v1, 0x4c(s0)                   |         *((s0 + 19)) = v1;
    0x0002c514 lbu v0, (v1)                      |         v0 = *(v1);
    0x0002c518 move s4, v1                       |         s4 = v1;
    0x0002c51c sll v0, v0, 1                     |         v0 <<= 1;
    0x0002c520 addu v0, a0, v0                   |         v0 = a0 + v0;
    0x0002c524 lhu v0, (v0)                      |         v0 = *(v0);
    0x0002c528 andi v0, v0, 0x2000               |         v0 &= aav.0x00002000;
    0x0002c52c addiu v1, v1, 1                   |         v1++;
    0x0002c530 bnez v0, 0x2c510                  |         
                                                 |     } while (v0 != 0);
    0x0002c534 addiu v0, zero, 1                 |     v0 = 1;
    0x0002c538 addiu s5, zero, 2                 |     s5 = 2;
                                                 |     if (s2 != v0) {
    0x0002c53c bne s2, v0, 0x2c8b4               |         goto label_81;
                                                 |     }
                                                 | label_0:
    0x0002c540 lw t9, -0x7d8c(gp)                |     t9 = sym.ap_scan_vchar_obstext;
    0x0002c544 move a0, s4                       |     a0 = s4;
    0x0002c548 bal 0x1d8c8                       |     sym_ap_scan_vchar_obstext ();
    0x0002c54c lw s7, 0x4c(s0)                   |     s7 = *((s0 + 19));
    0x0002c550 move s4, v0                       |     s4 = v0;
    0x0002c554 lw gp, 0x28(sp)                   |     gp = *(var_28h);
                                                 |     if (s7 != s4) {
    0x0002c558 bne s7, s4, 0x2c8d0               |         goto label_82;
                                                 |     }
                                                 | label_1:
    0x0002c55c lw a1, -0x7fac(gp)                |     a1 = *(gp);
                                                 |     if (s5 == 0) {
    0x0002c560 beqz s5, 0x2ca0c                  |         goto label_16;
                                                 |     }
    0x0002c564 lw v0, -0x7fac(gp)                |     v0 = *(gp);
                                                 |     if (s4 == 0) {
    0x0002c568 beqz s4, 0x2ca30                  |         goto label_83;
                                                 |     }
    0x0002c56c lb v1, (s4)                       |     v1 = *(s4);
    0x0002c570 lw a0, (s1)                       |     a0 = *(s1);
    0x0002c574 andi v0, v1, 0xff                 |     v0 = v1 & 0xff;
    0x0002c578 sll v0, v0, 1                     |     v0 <<= 1;
    0x0002c57c addu v0, a0, v0                   |     v0 = a0 + v0;
    0x0002c580 lhu v0, (v0)                      |     v0 = *(v0);
    0x0002c584 andi v0, v0, 0x2000               |     v0 &= aav.0x00002000;
                                                 | label_2:
    0x0002c588 move a2, s4                       |     a2 = s4;
                                                 |     if (v0 == 0) {
    0x0002c58c beqz v0, 0x2cc58                  |         goto label_84;
                                                 |     }
                                                 | label_3:
    0x0002c590 addiu a1, zero, 0x20              |     a1 = 0x20;
                                                 |     do {
    0x0002c594 addiu s4, s4, 1                   |         s4++;
                                                 |         if (v1 != a1) {
    0x0002c598 beq v1, a1, 0x2c5a4               |             
                                                 |             if (s5 == 0) {
    0x0002c59c beql s5, zero, 0x2c5a4            |                 goto label_85;
                                                 |             }
    0x0002c5a0 addiu s5, zero, 2                 |             s5 = 2;
                                                 |         }
                                                 | label_85:
    0x0002c5a4 lb v1, (s4)                       |         v1 = *(s4);
    0x0002c5a8 andi v0, v1, 0xff                 |         v0 = v1 & 0xff;
    0x0002c5ac sll v0, v0, 1                     |         v0 <<= 1;
    0x0002c5b0 addu v0, a0, v0                   |         v0 = a0 + v0;
    0x0002c5b4 lhu v0, (v0)                      |         v0 = *(v0);
    0x0002c5b8 andi v0, v0, 0x2000               |         v0 &= aav.0x00002000;
    0x0002c5bc bnez v0, 0x2c594                  |         
                                                 |     } while (v0 != 0);
    0x0002c5c0 nop                               |     
                                                 | label_18:
    0x0002c5c4 sb zero, (a2)                     |     *(a2) = 0;
                                                 | label_15:
    0x0002c5c8 lb v0, (s4)                       |     v0 = *(s4);
    0x0002c5cc lw t9, -0x7d8c(gp)                |     t9 = sym.ap_scan_vchar_obstext;
                                                 |     if (v0 == 0) {
    0x0002c5d0 bnez v0, 0x2c5e0                  |         
                                                 |         if (s5 == 0) {
    0x0002c5d4 beql s5, zero, 0x2c5e0            |             goto label_86;
                                                 |         }
    0x0002c5d8 addiu s5, zero, 4                 |         s5 = 4;
                                                 | label_17:
    0x0002c5dc lw t9, -0x7d8c(gp)                |         t9 = sym.ap_scan_vchar_obstext;
                                                 |     }
                                                 | label_86:
    0x0002c5e0 move a0, s4                       |     a0 = s4;
    0x0002c5e4 bal 0x1d8c8                       |     sym_ap_scan_vchar_obstext ();
    0x0002c5e8 move s6, v0                       |     s6 = v0;
    0x0002c5ec lw gp, 0x28(sp)                   |     gp = *(var_28h);
                                                 |     if (v0 == s4) {
    0x0002c5f0 beq v0, s4, 0x2c9d8               |         goto label_87;
                                                 |     }
    0x0002c5f4 lb v0, (v0)                       |     v0 = *(v0);
    0x0002c5f8 lw a1, (s1)                       |     a1 = *(s1);
                                                 |     if (v0 != 0) {
    0x0002c5fc bnez v0, 0x2c92c                  |         goto label_88;
                                                 |     }
                                                 | label_5:
    0x0002c600 sw s6, 0x2c(s0)                   |     *((s0 + 11)) = s6;
                                                 | label_4:
    0x0002c604 lb a0, (s6)                       |     a0 = *(s6);
    0x0002c608 andi v0, a0, 0xff                 |     v0 = a0 & 0xff;
    0x0002c60c sll v0, v0, 1                     |     v0 <<= 1;
    0x0002c610 addu v0, a1, v0                   |     v0 = a1 + v0;
    0x0002c614 lhu v0, (v0)                      |     v0 = *(v0);
    0x0002c618 andi v0, v0, 0x2000               |     v0 &= aav.0x00002000;
    0x0002c61c addiu v1, s6, 1                   |     v1 = s6 + 1;
                                                 |     if (v0 == 0) {
    0x0002c620 beqz v0, 0x2c65c                  |         goto label_89;
                                                 |     }
    0x0002c624 addiu a2, zero, 0x20              |     a2 = 0x20;
                                                 |     do {
                                                 |         if (a0 != a2) {
    0x0002c628 beql a0, a2, 0x2c63c              |             
    0x0002c62c sw v1, 0x2c(s0)                   |             *((s0 + 11)) = v1;
                                                 |             if (s5 != 0) {
    0x0002c630 beql s5, zero, 0x2c638            |                 
    0x0002c634 addiu s5, zero, 2                 |                 s5 = 2;
                                                 |             }
    0x0002c638 sw v1, 0x2c(s0)                   |             *((s0 + 11)) = v1;
                                                 |         }
    0x0002c63c lb a0, (v1)                       |         a0 = *(v1);
    0x0002c640 andi v0, a0, 0xff                 |         v0 = a0 & 0xff;
    0x0002c644 sll v0, v0, 1                     |         v0 <<= 1;
    0x0002c648 addu v0, a1, v0                   |         v0 = a1 + v0;
    0x0002c64c lhu v0, (v0)                      |         v0 = *(v0);
    0x0002c650 andi v0, v0, 0x2000               |         v0 &= aav.0x00002000;
    0x0002c654 addiu v1, v1, 1                   |         v1++;
    0x0002c658 bnez v0, 0x2c628                  |         
                                                 |     } while (v0 != 0);
                                                 | label_89:
    0x0002c65c sb zero, (s6)                     |     *(s6) = 0;
    0x0002c660 lw t9, -0x7d8c(gp)                |     t9 = sym.ap_scan_vchar_obstext;
    0x0002c664 lw a0, 0x2c(s0)                   |     a0 = *((s0 + 11));
    0x0002c668 bal 0x1d8c8                       |     sym_ap_scan_vchar_obstext ();
    0x0002c66c lw gp, 0x28(sp)                   |     gp = *(var_28h);
                                                 |     if (v0 == 0) {
    0x0002c670 beqz v0, 0x2d0e0                  |         goto label_90;
                                                 |     }
    0x0002c674 lb a0, (v0)                       |     a0 = *(v0);
    0x0002c678 lw a1, (s1)                       |     a1 = *(s1);
    0x0002c67c andi v1, a0, 0xff                 |     v1 = a0 & 0xff;
    0x0002c680 sll v1, v1, 1                     |     v1 <<= 1;
    0x0002c684 addu v1, a1, v1                   |     v1 = a1 + v1;
    0x0002c688 lw s7, 0x2c(s0)                   |     s7 = *((s0 + 11));
    0x0002c68c lhu v1, (v1)                      |     v1 = *(v1);
    0x0002c690 subu s7, v0, s7                   |     __asm ("subu s7, v0, s7");
    0x0002c694 andi v1, v1, 0x2000               |     v1 &= aav.0x00002000;
                                                 |     if (a0 == 0) {
    0x0002c698 beqz a0, 0x2c980                  |         goto label_91;
                                                 |     }
    0x0002c69c move s6, v0                       |     s6 = v0;
                                                 |     if (v1 == 0) {
    0x0002c6a0 beqz v1, 0x2cc60                  |         goto label_92;
                                                 |     }
    0x0002c6a4 addiu v1, zero, 1                 |     v1 = 1;
    0x0002c6a8 addiu a2, zero, 0x20              |     a2 = 0x20;
                                                 |     if (s2 == v1) {
    0x0002c6ac beq s2, v1, 0x2c990               |         goto label_93;
                                                 |     }
    0x0002c6b0 addiu s5, zero, 3                 |     s5 = 3;
                                                 | label_6:
    0x0002c6b4 sb zero, (v0)                     |     *(v0) = 0;
                                                 | label_7:
    0x0002c6b8 lw fp, 0x2c(s0)                   |     fp = *((s0 + 11));
                                                 | label_28:
    0x0002c6bc lb v1, (s4)                       |     v1 = *(s4);
    0x0002c6c0 lw a0, (s0)                       |     a0 = *(s0);
    0x0002c6c4 lw a1, 0x4c(s0)                   |     a1 = *((s0 + 19));
    0x0002c6c8 lb v0, (fp)                       |     v0 = *(fp);
                                                 |     if (v1 == 0) {
    0x0002c6cc beqz v1, 0x2cbd0                  |         goto label_94;
                                                 |     }
    0x0002c6d0 lw a2, -0x7fac(gp)                |     a2 = *(gp);
    0x0002c6d4 addiu a2, a2, 0x6730              |     a2 += 0x6730;
                                                 | label_13:
    0x0002c6d8 lw t9, -0x76e8(gp)                |     t9 = sym.imp.apr_pstrcat
                                                 |     if (v0 != 0) {
    0x0002c6dc beqz v0, 0x2c6e8                  |         
    0x0002c6e0 lw v0, -0x7fac(gp)                |         v0 = *(gp);
    0x0002c6e4 addiu v0, v0, 0x6730              |         v0 += 0x6730;
                                                 |     }
    0x0002c6e8 sw zero, 0x18(sp)                 |     *(var_18h) = 0;
    0x0002c6ec sw fp, 0x14(sp)                   |     *(var_14h) = fp;
    0x0002c6f0 sw v0, 0x10(sp)                   |     *(var_10h) = v0;
    0x0002c6f4 move a3, s4                       |     a3 = s4;
    0x0002c6f8 jalr t9                           |     t9 ();
    0x0002c6fc addiu v1, zero, 8                 |     v1 = 8;
    0x0002c700 lw gp, 0x28(sp)                   |     gp = *(var_28h);
    0x0002c704 sw v0, 0x18(s0)                   |     *((s0 + 6)) = v0;
                                                 |     if (s7 != v1) {
    0x0002c708 bne s7, v1, 0x2ca6c               |         goto label_95;
                                                 |     }
    0x0002c70c lw v1, 0x2c(s0)                   |     v1 = *((s0 + 11));
    0x0002c710 addiu a0, zero, 0x48              |     a0 = 0x48;
    0x0002c714 lb v0, (v1)                       |     v0 = *(v1);
    0x0002c718 addiu a0, zero, 0x68              |     a0 = 0x68;
                                                 |     if (v0 == a0) {
    0x0002c71c beq v0, a0, 0x2d100               |         goto label_96;
                                                 |     }
                                                 |     if (v0 == a0) {
    0x0002c720 beql v0, a0, 0x2cc8c              |         goto label_97;
                                                 |     }
    0x0002c724 lb a0, 1(v1)                      |     a0 = *((v1 + 1));
                                                 | label_22:
    0x0002c728 lw a1, -0x7fac(gp)                |     a1 = *(gp);
                                                 |     if (v0 == 0) {
    0x0002c72c beqz v0, 0x2ca80                  |         goto label_98;
                                                 |     }
    0x0002c730 addiu v0, zero, 9                 |     v0 = 9;
                                                 | label_9:
    0x0002c734 sw v0, 0x28(s0)                   |     *((s0 + 10)) = v0;
                                                 |     if (s5 == 0) {
    0x0002c738 beqz s5, 0x2ca04                  |         goto label_99;
                                                 |     }
                                                 | label_8:
    0x0002c73c lw t9, -0x7d88(gp)                |     t9 = sym.ap_method_number_of;
    0x0002c740 lw a0, 0x4c(s0)                   |     a0 = *((s0 + 19));
    0x0002c744 jalr t9                           |     t9 ();
    0x0002c748 lw gp, 0x28(sp)                   |     gp = *(var_28h);
    0x0002c74c sw v0, 0x48(s0)                   |     *((s0 + 18)) = v0;
                                                 |     if (v0 == 0) {
    0x0002c750 bnez v0, 0x2c770                  |         
    0x0002c754 lw v1, 0x4c(s0)                   |         v1 = *((s0 + 19));
    0x0002c758 addiu v0, zero, 0x48              |         v0 = 0x48;
    0x0002c75c lb v1, (v1)                       |         v1 = *(v1);
    0x0002c760 lw t9, -0x7d84(gp)                |         t9 = sym.ap_parse_uri;
                                                 |         if (v1 != v0) {
    0x0002c764 bne v1, v0, 0x2c774               |             goto label_100;
                                                 |         }
    0x0002c768 addiu v0, zero, 1                 |         v0 = 1;
    0x0002c76c sw v0, 0x24(s0)                   |         *((s0 + 9)) = v0;
                                                 |     }
    0x0002c770 lw t9, -0x7d84(gp)                |     t9 = sym.ap_parse_uri;
                                                 | label_100:
    0x0002c774 move a1, s4                       |     a1 = s4;
    0x0002c778 move a0, s0                       |     a0 = s0;
    0x0002c77c bal 0x2c2e0                       |     sym_ap_parse_uri ();
    0x0002c780 lw v1, 0x44(s0)                   |     v1 = *((s0 + 17));
    0x0002c784 addiu v0, zero, 0xc8              |     v0 = 0xc8;
    0x0002c788 lw gp, 0x28(sp)                   |     gp = *(var_28h);
                                                 |     if (v1 == v0) {
    0x0002c78c beq v1, v0, 0x2cba4               |         goto label_101;
                                                 |     }
                                                 | label_12:
    0x0002c790 lw v0, 0x28(s0)                   |     v0 = *((s0 + 10));
    0x0002c794 addiu v1, zero, 9                 |     v1 = 9;
                                                 |     if (v0 == v1) {
    0x0002c798 beq v0, v1, 0x2caac               |         goto label_102;
                                                 |     }
    0x0002c79c nop                               |     
    0x0002c7a0 addiu v1, zero, 1                 |     v1 = 1;
                                                 |     if (s5 != 0) {
    0x0002c7a4 bnez s5, 0x2cb28                  |         goto label_103;
                                                 |     }
    0x0002c7a8 lb a0, 0x42(s3)                   |     a0 = *((s3 + 66));
                                                 | label_10:
    0x0002c7ac addiu v1, zero, 2                 |     v1 = 2;
                                                 |     if (a0 == v1) {
    0x0002c7b0 beql a0, v1, 0x2cf54              |         goto label_104;
                                                 |     }
    0x0002c7b4 lw a0, 0x48(s0)                   |     a0 = *((s0 + 18));
    0x0002c7b8 lw a0, 0x44(s0)                   |     a0 = *((s0 + 17));
                                                 | label_25:
    0x0002c7bc addiu v1, zero, 0xc8              |     v1 = 0xc8;
    0x0002c7c0 addiu v1, zero, 1                 |     v1 = 1;
                                                 |     if (a0 == v1) {
    0x0002c7c4 beq a0, v1, 0x2cbd8               |         goto label_105;
                                                 |     }
    0x0002c7c8 lw a0, 0x108(s0)                  |     a0 = *(s0);
                                                 |     if (a0 == 0) {
                                                 | label_11:
    0x0002c7cc beql a0, zero, 0x2cc74            |         goto label_106;
                                                 |     }
    0x0002c7d0 lw v1, 4(s0)                      |     v1 = *((s0 + 1));
                                                 | label_21:
    0x0002c7d4 lw v1, (a0)                       |     v1 = *(a0);
                                                 |     if (v1 == 0) {
                                                 | label_20:
    0x0002c7d8 beql v1, zero, 0x2cc68            |         goto label_107;
                                                 |     }
    0x0002c7dc lw v1, 4(a0)                      |     v1 = *((a0 + 1));
    0x0002c7e0 lb v1, (v1)                       |     v1 = *(v1);
                                                 |     if (v1 < 0) {
    0x0002c7e4 bltzl v1, 0x2cc68                 |         goto label_107;
                                                 |     }
    0x0002c7e8 lw v1, 4(a0)                      |     v1 = *((a0 + 1));
    0x0002c7ec slti v1, v1, 7                    |     v1 = (v1 < 7) ? 1 : 0;
    0x0002c7f0 xori v1, v1, 1                    |     v1 ^= 1;
                                                 | label_19:
    0x0002c7f4 addiu v1, zero, 9                 |     v1 = 9;
                                                 |     if (v1 != 0) {
    0x0002c7f8 beqz v1, 0x2c86c                  |         
    0x0002c7fc lw s1, 0xe4(s0)                   |         s1 = *((s0 + 57));
    0x0002c800 lw t9, -0x72b8(gp)                |         t9 = sym.imp.strchr;
    0x0002c804 addiu a1, zero, 0x3a              |         a1 = 0x3a;
    0x0002c808 move a0, s1                       |         a0 = s1;
    0x0002c80c jalr t9                           |         t9 ();
    0x0002c810 lw gp, 0x28(sp)                   |         gp = *(var_28h);
                                                 |         if (v0 == 0) {
    0x0002c814 beqz v0, 0x2d440                  |             goto label_108;
                                                 |         }
    0x0002c818 subu v0, v0, s1                   |         __asm ("subu v0, v0, s1");
    0x0002c81c slti a0, v0, 0x51                 |         a0 = (v0 < 0x51) ? 1 : 0;
    0x0002c820 addiu v1, zero, 0x50              |         v1 = 0x50;
                                                 |         if (a0 != 0) {
    0x0002c824 movz v0, v1, a0                   |             v0 = v1;
                                                 |         }
                                                 | label_54:
    0x0002c828 sw v0, 0x1c(sp)                   |         *(var_1ch) = v0;
    0x0002c82c lw v0, -0x7fac(gp)                |         v0 = *(gp);
    0x0002c830 lw a0, -0x7fac(gp)                |         a0 = *(gp);
    0x0002c834 lw t9, -0x7f08(gp)                |         t9 = sym.ap_log_rerror_;
                                                 |         /* str.AH03450:_HTTP_Request_Line__Unable_to_parse_URI:__.s */
    0x0002c838 addiu v0, v0, -0x54b4             |         v0 += -0x54b4;
    0x0002c83c sw v0, 0x18(sp)                   |         *(var_18h) = v0;
    0x0002c840 sw s1, 0x20(sp)                   |         *(var_20h) = s1;
    0x0002c844 sw s0, 0x14(sp)                   |         *(var_14h) = s0;
    0x0002c848 sw zero, 0x10(sp)                 |         *(var_10h) = 0;
    0x0002c84c addiu a3, zero, 7                 |         a3 = 7;
    0x0002c850 move a2, zero                     |         a2 = 0;
    0x0002c854 addiu a1, zero, 0x3c0             |         a1 = aav.0x000003c0;
                                                 |         /* str._usr_src_debug_apache2_2.4.57_r0_httpd_2.4.57_server_protocol.c */
    0x0002c858 addiu a0, a0, -0x5ed4             |         a0 += -0x5ed4;
    0x0002c85c jalr t9                           |         t9 ();
    0x0002c860 lw gp, 0x28(sp)                   |         gp = *(var_28h);
    0x0002c864 lw v0, 0x28(s0)                   |         v0 = *((s0 + 10));
    0x0002c868 addiu v1, zero, 9                 |         v1 = 9;
                                                 |     }
                                                 |     if (v0 == v1) {
    0x0002c86c beql v0, v1, 0x2ce1c              |         goto label_109;
                                                 |     }
    0x0002c870 lw v0, 4(s0)                      |     v0 = *((s0 + 1));
    0x0002c874 move v0, zero                     |     v0 = 0;
                                                 | label_23:
    0x0002c878 lw ra, 0x54(sp)                   |     ra = *(var_54h);
    0x0002c87c lw fp, 0x50(sp)                   |     fp = *(var_50h);
    0x0002c880 lw s7, 0x4c(sp)                   |     s7 = *(var_4ch);
    0x0002c884 lw s6, 0x48(sp)                   |     s6 = *(var_48h);
    0x0002c888 lw s5, 0x44(sp)                   |     s5 = *(var_44h);
    0x0002c88c lw s4, 0x40(sp)                   |     s4 = *(var_40h);
    0x0002c890 lw s3, 0x3c(sp)                   |     s3 = *(var_3ch);
    0x0002c894 lw s2, 0x38(sp)                   |     s2 = *(var_38h);
    0x0002c898 lw s1, 0x34(sp)                   |     s1 = *(var_34h);
    0x0002c89c lw s0, 0x30(sp)                   |     s0 = *(var_30h);
    0x0002c8a0 addiu sp, sp, 0x58                |     
    0x0002c8a4 jr ra                             |     return v0;
                                                 | label_80:
    0x0002c8a8 addiu v0, zero, 1                 |     v0 = 1;
    0x0002c8ac move s5, zero                     |     s5 = 0;
                                                 |     if (s2 == v0) {
    0x0002c8b0 beq s2, v0, 0x2c540               |         goto label_0;
                                                 |     }
                                                 | label_81:
    0x0002c8b4 lw t9, -0x7dc8(gp)                |     t9 = sym.ap_scan_http_token;
    0x0002c8b8 move a0, s4                       |     a0 = s4;
    0x0002c8bc bal 0x1d884                       |     sym_ap_scan_http_token ();
    0x0002c8c0 lw s7, 0x4c(s0)                   |     s7 = *((s0 + 19));
    0x0002c8c4 move s4, v0                       |     s4 = v0;
    0x0002c8c8 lw gp, 0x28(sp)                   |     gp = *(var_28h);
                                                 |     if (s7 == s4) {
    0x0002c8cc beq s7, s4, 0x2c55c               |         goto label_1;
                                                 |     }
                                                 | label_82:
    0x0002c8d0 lb v1, (s4)                       |     v1 = *(s4);
    0x0002c8d4 lw a0, (s1)                       |     a0 = *(s1);
    0x0002c8d8 andi v0, v1, 0xff                 |     v0 = v1 & 0xff;
    0x0002c8dc sll v0, v0, 1                     |     v0 <<= 1;
    0x0002c8e0 addu v0, a0, v0                   |     v0 = a0 + v0;
    0x0002c8e4 lhu v0, (v0)                      |     v0 = *(v0);
    0x0002c8e8 andi v0, v0, 0x2000               |     v0 &= aav.0x00002000;
                                                 |     if (v1 == 0) {
    0x0002c8ec beqz v1, 0x2c588                  |         goto label_2;
                                                 |     }
    0x0002c8f0 addiu a1, zero, 1                 |     a1 = 1;
                                                 |     if (v0 == 0) {
    0x0002c8f4 beqz v0, 0x2cc44                  |         goto label_110;
                                                 |     }
    0x0002c8f8 move a2, s4                       |     a2 = s4;
                                                 |     if (s2 == a1) {
    0x0002c8fc beq s2, a1, 0x2c590               |         goto label_3;
                                                 |     }
    0x0002c900 lbu a1, 1(s4)                     |     a1 = *((s4 + 1));
    0x0002c904 sll a1, a1, 1                     |     a1 <<= 1;
    0x0002c908 addu a1, a0, a1                   |     a1 = a0 + a1;
    0x0002c90c lhu a1, (a1)                      |     a1 = *(a1);
    0x0002c910 andi a1, a1, 0x2000               |     a1 &= aav.0x00002000;
                                                 |     if (a1 == 0) {
    0x0002c914 beqz a1, 0x2c588                  |         goto label_2;
                                                 |     }
    0x0002c918 nop                               |     
                                                 |     if (s5 == 0) {
    0x0002c91c beql s5, zero, 0x2c588            |         goto label_2;
                                                 |     }
    0x0002c920 addiu s5, zero, 3                 |     s5 = 3;
    0x0002c924 b 0x2c588                         |     goto label_2;
    0x0002c928 nop                               |     
                                                 | label_88:
    0x0002c92c andi v0, v0, 0xff                 |     v0 &= 0xff;
    0x0002c930 sll v0, v0, 1                     |     v0 <<= 1;
    0x0002c934 addu v0, a1, v0                   |     v0 = a1 + v0;
    0x0002c938 lhu v0, (v0)                      |     v0 = *(v0);
    0x0002c93c andi v0, v0, 0x2000               |     v0 &= aav.0x00002000;
                                                 |     if (v0 == 0) {
    0x0002c940 beql v0, zero, 0x2c9dc            |         goto label_111;
                                                 |     }
    0x0002c944 lw a1, -0x7fac(gp)                |     a1 = *(gp);
    0x0002c948 addiu v0, zero, 1                 |     v0 = 1;
                                                 |     if (s2 == v0) {
    0x0002c94c beql s2, v0, 0x2c604              |         goto label_4;
                                                 |     }
    0x0002c950 sw s6, 0x2c(s0)                   |     *((s0 + 11)) = s6;
    0x0002c954 lbu v0, 1(s6)                     |     v0 = *((s6 + 1));
    0x0002c958 sll v0, v0, 1                     |     v0 <<= 1;
                                                 |     /* aav.0x00080000 */
    0x0002c95c addu v0, a1, v0                   |     v0 = a1 + v0;
    0x0002c960 lhu v0, (v0)                      |     v0 = *(v0);
    0x0002c964 andi v0, v0, 0x2000               |     v0 &= aav.0x00002000;
                                                 |     if (v0 == 0) {
    0x0002c968 beql v0, zero, 0x2c604            |         goto label_4;
                                                 |     }
    0x0002c96c sw s6, 0x2c(s0)                   |     *((s0 + 11)) = s6;
                                                 |     if (s5 == 0) {
    0x0002c970 beql s5, zero, 0x2c600            |         goto label_5;
                                                 |     }
    0x0002c974 addiu s5, zero, 3                 |     s5 = 3;
    0x0002c978 sw s6, 0x2c(s0)                   |     *((s0 + 11)) = s6;
    0x0002c97c b 0x2c604                         |     goto label_4;
                                                 | label_91:
    0x0002c980 move s6, v0                       |     s6 = v0;
                                                 |     if (v1 == 0) {
    0x0002c984 beqz v1, 0x2c6b4                  |         goto label_6;
                                                 |     }
    0x0002c988 move s6, v0                       |     s6 = v0;
    0x0002c98c addiu a2, zero, 0x20              |     a2 = 0x20;
                                                 |     do {
                                                 | label_93:
    0x0002c990 addiu s6, s6, 1                   |         s6++;
                                                 |         if (a0 != a2) {
    0x0002c994 beq a0, a2, 0x2c9a0               |             
                                                 |             if (s5 == 0) {
    0x0002c998 beql s5, zero, 0x2c9a0            |                 goto label_112;
                                                 |             }
    0x0002c99c addiu s5, zero, 2                 |             s5 = 2;
                                                 |         }
                                                 | label_112:
    0x0002c9a0 lb a0, (s6)                       |         a0 = *(s6);
    0x0002c9a4 andi v1, a0, 0xff                 |         v1 = a0 & 0xff;
    0x0002c9a8 sll v1, v1, 1                     |         v1 <<= 1;
    0x0002c9ac addu v1, a1, v1                   |         v1 = a1 + v1;
    0x0002c9b0 lhu v1, (v1)                      |         v1 = *(v1);
    0x0002c9b4 andi v1, v1, 0x2000               |         v1 &= aav.0x00002000;
    0x0002c9b8 bnez v1, 0x2c990                  |         
                                                 |     } while (v1 != 0);
    0x0002c9bc nop                               |     
                                                 |     if (a0 == 0) {
    0x0002c9c0 beql a0, zero, 0x2c6b8            |         goto label_7;
                                                 |     }
    0x0002c9c4 sb zero, (v0)                     |     *(v0) = 0;
                                                 |     if (s5 == 0) {
    0x0002c9c8 beql s5, zero, 0x2c6b4            |         goto label_6;
                                                 |     }
    0x0002c9cc addiu s5, zero, 7                 |     s5 = 7;
    0x0002c9d0 sb zero, (v0)                     |     *(v0) = 0;
    0x0002c9d4 b 0x2c6b8                         |     goto label_7;
                                                 | label_87:
    0x0002c9d8 lw a1, -0x7fac(gp)                |     a1 = *(gp);
                                                 | label_111:
    0x0002c9dc lw t9, -0x76e0(gp)                |     t9 = sym.imp.strpbrk;
    0x0002c9e0 move a0, s6                       |     a0 = s6;
                                                 |     /* str._t_n_v_f_r_ */
    0x0002c9e4 addiu a1, a1, -0x5a2c             |     a1 += -0x5a2c;
    0x0002c9e8 jalr t9                           |     t9 ();
    0x0002c9ec move s6, v0                       |     s6 = v0;
    0x0002c9f0 lw gp, 0x28(sp)                   |     gp = *(var_28h);
                                                 |     if (v0 == 0) {
    0x0002c9f4 beqz v0, 0x2d008                  |         goto label_113;
                                                 |     }
    0x0002c9f8 lw a1, (s1)                       |     a1 = *(s1);
    0x0002c9fc addiu s5, zero, 5                 |     s5 = 5;
    0x0002ca00 b 0x2c600                         |     goto label_5;
                                                 | label_99:
    0x0002ca04 addiu s5, zero, 6                 |     s5 = 6;
    0x0002ca08 b 0x2c73c                         |     goto label_8;
                                                 | label_16:
    0x0002ca0c lw t9, -0x76e0(gp)                |     t9 = sym.imp.strpbrk;
    0x0002ca10 move a0, s4                       |     a0 = s4;
                                                 |     /* str._t_n_v_f_r_ */
    0x0002ca14 addiu a1, a1, -0x5a2c             |     a1 += -0x5a2c;
    0x0002ca18 jalr t9                           |     t9 ();
    0x0002ca1c move s4, v0                       |     s4 = v0;
    0x0002ca20 lw gp, 0x28(sp)                   |     gp = *(var_28h);
                                                 |     if (v0 != 0) {
    0x0002ca24 bnez v0, 0x2cc14                  |         goto label_114;
                                                 |     }
    0x0002ca28 addiu s5, zero, 1                 |     s5 = 1;
    0x0002ca2c lw v0, -0x7fac(gp)                |     v0 = *(gp);
                                                 | label_83:
    0x0002ca30 lw a0, (s0)                       |     a0 = *(s0);
    0x0002ca34 addiu v0, v0, 0x47dc              |     v0 += 0x47dc;
    0x0002ca38 sw v0, 0x2c(s0)                   |     *((s0 + 11)) = v0;
    0x0002ca3c move s4, v0                       |     s4 = v0;
    0x0002ca40 move a2, zero                     |     a2 = 0;
                                                 | label_26:
    0x0002ca44 lw t9, -0x76e8(gp)                |     t9 = sym.imp.apr_pstrcat
    0x0002ca48 sw zero, 0x18(sp)                 |     *(var_18h) = 0;
    0x0002ca4c sw v0, 0x14(sp)                   |     *(var_14h) = v0;
    0x0002ca50 sw zero, 0x10(sp)                 |     *(var_10h) = 0;
    0x0002ca54 move a3, s4                       |     a3 = s4;
    0x0002ca58 move a1, s7                       |     a1 = s7;
    0x0002ca5c jalr t9                           |     t9 ();
    0x0002ca60 move s6, zero                     |     s6 = 0;
    0x0002ca64 lw gp, 0x28(sp)                   |     gp = *(var_28h);
    0x0002ca68 sw v0, 0x18(s0)                   |     *((s0 + 6)) = v0;
                                                 | label_95:
    0x0002ca6c lw v0, 0x2c(s0)                   |     v0 = *((s0 + 11));
    0x0002ca70 lb v0, (v0)                       |     v0 = *(v0);
                                                 | label_33:
    0x0002ca74 addiu v0, zero, 9                 |     v0 = 9;
                                                 |     if (v0 != 0) {
    0x0002ca78 bnez v0, 0x2c734                  |         goto label_9;
                                                 |     }
    0x0002ca7c lw a1, -0x7fac(gp)                |     a1 = *(gp);
                                                 | label_98:
    0x0002ca80 lw t9, -0x7654(gp)                |     t9 = sym.imp.apr_pstrdup;
    0x0002ca84 addiu v0, zero, 1                 |     v0 = 1;
    0x0002ca88 lw a0, (s0)                       |     a0 = *(s0);
    0x0002ca8c sw v0, 0x1c(s0)                   |     *((s0 + 7)) = v0;
                                                 |     /* str.HTTP_0.9 */
    0x0002ca90 addiu a1, a1, -0x57a4             |     a1 += -0x57a4;
    0x0002ca94 jalr t9                           |     t9 ();
    0x0002ca98 lw gp, 0x28(sp)                   |     gp = *(var_28h);
    0x0002ca9c sw v0, 0x2c(s0)                   |     *((s0 + 11)) = v0;
    0x0002caa0 addiu v0, zero, 9                 |     v0 = 9;
    0x0002caa4 sw v0, 0x28(s0)                   |     *((s0 + 10)) = v0;
    0x0002caa8 b 0x2c73c                         |     goto label_8;
                                                 | label_102:
    0x0002caac addiu v1, zero, 1                 |     v1 = 1;
                                                 |     if (s5 != 0) {
    0x0002cab0 bnez s5, 0x2cb28                  |         goto label_103;
                                                 |     }
    0x0002cab4 lb a0, 0x40(s3)                   |     a0 = *((s3 + 64));
    0x0002cab8 addiu v1, zero, 2                 |     v1 = 2;
    0x0002cabc addiu v1, zero, 1                 |     v1 = 1;
                                                 |     if (a0 == v1) {
    0x0002cac0 beq a0, v1, 0x2d4a4               |         goto label_115;
                                                 |     }
                                                 |     if (s2 == v1) {
    0x0002cac4 beql s2, v1, 0x2c7ac              |         goto label_10;
                                                 |     }
    0x0002cac8 lb a0, 0x42(s3)                   |     a0 = *((s3 + 66));
    0x0002cacc lw v1, 0x48(s0)                   |     v1 = *((s0 + 18));
    0x0002cad0 lw v1, 0x108(s0)                  |     v1 = *(s0);
                                                 |     if (v1 == 0) {
    0x0002cad4 bnel v1, zero, 0x2cebc            |         goto label_116;
                                                 |     }
    0x0002cad8 lw v1, 0x24(s0)                   |     v1 = *((s0 + 9));
    0x0002cadc addiu v1, zero, 0xc8              |     v1 = 0xc8;
                                                 |     if (v1 != 0) {
    0x0002cae0 bnez v1, 0x2ceb8                  |         goto label_117;
                                                 |     }
    0x0002cae4 lw a0, 0x44(s0)                   |     a0 = *((s0 + 17));
    0x0002cae8 lw a0, 0x108(s0)                  |     a0 = *(s0);
                                                 |     if (a0 == v1) {
    0x0002caec bnel a0, v1, 0x2c7cc              |         goto label_11;
                                                 |     }
    0x0002caf0 lw v1, 0x150(s0)                  |     v1 = *(s0);
                                                 |     if (v1 == 0) {
                                                 | label_14:
    0x0002caf4 beql v1, zero, 0x2d1bc            |         goto label_118;
                                                 |     }
    0x0002caf8 lw v1, 0x138(s0)                  |     v1 = *(s0);
    0x0002cafc lw a0, 0x108(s0)                  |     a0 = *(s0);
                                                 |     if (a0 == 0) {
    0x0002cb00 beql a0, zero, 0x2d3ec            |         goto label_119;
                                                 |     }
    0x0002cb04 lw v1, 4(s0)                      |     v1 = *((s0 + 1));
                                                 | label_48:
    0x0002cb08 lw v1, (a0)                       |     v1 = *(a0);
                                                 |     if (v1 == 0) {
                                                 | label_47:
    0x0002cb0c beql v1, zero, 0x2ce80            |         goto label_120;
                                                 |     }
    0x0002cb10 lw v1, 4(a0)                      |     v1 = *((a0 + 1));
    0x0002cb14 lb v1, (v1)                       |     v1 = *(v1);
    0x0002cb18 slti v1, v1, 7                    |     v1 = (v1 < 7) ? 1 : 0;
                                                 |     if (v1 < 0) {
    0x0002cb1c bltz v1, 0x2ce7c                  |         goto label_121;
                                                 |     }
    0x0002cb20 xori v1, v1, 1                    |     v1 ^= 1;
    0x0002cb24 b 0x2ce88                         |     goto label_122;
                                                 | label_103:
    0x0002cb28 addiu v1, zero, 4                 |     v1 = 4;
                                                 |     if (s5 == v1) {
    0x0002cb2c beq s5, v1, 0x2d034               |         goto label_123;
                                                 |     }
    0x0002cb30 addiu v1, zero, 5                 |     v1 = 5;
                                                 |     if (s5 == v1) {
    0x0002cb34 beq s5, v1, 0x2cd98               |         goto label_124;
                                                 |     }
    0x0002cb38 addiu v1, zero, 2                 |     v1 = 2;
                                                 |     if (s5 == v1) {
    0x0002cb3c beq s5, v1, 0x2d288               |         goto label_125;
                                                 |     }
    0x0002cb40 addiu v1, zero, 3                 |     v1 = 3;
                                                 |     if (s5 != v1) {
    0x0002cb44 bne s5, v1, 0x2d328               |         goto label_126;
                                                 |     }
    0x0002cb48 lw a0, 0x108(s0)                  |     a0 = *(s0);
                                                 |     if (a0 == 0) {
    0x0002cb4c beql a0, zero, 0x2d484            |         goto label_127;
                                                 |     }
    0x0002cb50 lw v1, 4(s0)                      |     v1 = *((s0 + 1));
                                                 | label_61:
    0x0002cb54 lw v1, (a0)                       |     v1 = *(a0);
                                                 |     if (v1 == 0) {
                                                 | label_60:
    0x0002cb58 beql v1, zero, 0x2d434            |         goto label_128;
                                                 |     }
    0x0002cb5c lw v1, 4(a0)                      |     v1 = *((a0 + 1));
    0x0002cb60 lb v1, (v1)                       |     v1 = *(v1);
                                                 |     if (v1 < 0) {
    0x0002cb64 bltzl v1, 0x2d434                 |         goto label_128;
                                                 |     }
    0x0002cb68 lw v1, 4(a0)                      |     v1 = *((a0 + 1));
    0x0002cb6c slti v1, v1, 7                    |     v1 = (v1 < 7) ? 1 : 0;
    0x0002cb70 xori v1, v1, 1                    |     v1 ^= 1;
                                                 | label_53:
    0x0002cb74 addiu v1, zero, 0x190             |     v1 = aav.0x00000190;
                                                 |     if (v1 == 0) {
    0x0002cb78 beqz v1, 0x2ce08                  |         goto label_24;
                                                 |     }
    0x0002cb7c lw v0, -0x7fac(gp)                |     v0 = *(gp);
    0x0002cb80 lw t9, -0x7f08(gp)                |     t9 = sym.ap_log_rerror_;
                                                 |     /* str.AH03447:_HTTP_Request_Line__Invalid_whitespace */
    0x0002cb84 addiu v0, v0, -0x5690             |     v0 += -0x5690;
    0x0002cb88 sw v0, 0x18(sp)                   |     *(var_18h) = v0;
    0x0002cb8c sw s0, 0x14(sp)                   |     *(var_14h) = s0;
    0x0002cb90 sw zero, 0x10(sp)                 |     *(var_10h) = 0;
    0x0002cb94 addiu a3, zero, 7                 |     a3 = 7;
    0x0002cb98 move a2, zero                     |     a2 = 0;
    0x0002cb9c addiu a1, zero, 0x39c             |     a1 = aav.0x0000039c;
    0x0002cba0 b 0x2cdf0                         |     goto label_38;
                                                 | label_101:
    0x0002cba4 lw a0, 0x148(s0)                  |     a0 = *(s0);
    0x0002cba8 addiu v0, zero, 0x2f              |     v0 = 0x2f;
                                                 |     if (a0 == 0) {
    0x0002cbac beqz a0, 0x2c790                  |         goto label_12;
                                                 |     }
    0x0002cbb0 lb v1, (a0)                       |     v1 = *(a0);
    0x0002cbb4 addiu v0, zero, 5                 |     v0 = 5;
                                                 |     if (v1 == v0) {
    0x0002cbb8 beq v1, v0, 0x2c790               |         goto label_12;
                                                 |     }
    0x0002cbbc lw v1, 0x48(s0)                   |     v1 = *((s0 + 18));
    0x0002cbc0 addiu v0, zero, 0x190             |     v0 = aav.0x00000190;
                                                 |     if (v1 == v0) {
    0x0002cbc4 beq v1, v0, 0x2cd74               |         goto label_129;
                                                 |     }
    0x0002cbc8 sw v0, 0x44(s0)                   |     *((s0 + 17)) = v0;
    0x0002cbcc b 0x2c790                         |     goto label_12;
                                                 | label_94:
    0x0002cbd0 move a2, zero                     |     a2 = 0;
    0x0002cbd4 b 0x2c6d8                         |     goto label_13;
                                                 | label_105:
    0x0002cbd8 lw v1, 0x150(s0)                  |     v1 = *(s0);
                                                 |     if (s2 == v1) {
    0x0002cbdc bnel s2, v1, 0x2caf4              |         goto label_14;
                                                 |     }
    0x0002cbe0 lw ra, 0x54(sp)                   |     ra = *(var_54h);
                                                 | label_37:
    0x0002cbe4 lw fp, 0x50(sp)                   |     fp = *(var_50h);
    0x0002cbe8 lw s7, 0x4c(sp)                   |     s7 = *(var_4ch);
    0x0002cbec lw s6, 0x48(sp)                   |     s6 = *(var_48h);
    0x0002cbf0 lw s5, 0x44(sp)                   |     s5 = *(var_44h);
    0x0002cbf4 lw s4, 0x40(sp)                   |     s4 = *(var_40h);
    0x0002cbf8 lw s3, 0x3c(sp)                   |     s3 = *(var_3ch);
    0x0002cbfc lw s2, 0x38(sp)                   |     s2 = *(var_38h);
    0x0002cc00 lw s1, 0x34(sp)                   |     s1 = *(var_34h);
    0x0002cc04 lw s0, 0x30(sp)                   |     s0 = *(var_30h);
    0x0002cc08 addiu v0, zero, 1                 |     v0 = 1;
    0x0002cc0c addiu sp, sp, 0x58                |     
    0x0002cc10 jr ra                             |     return v0;
                                                 | label_114:
    0x0002cc14 lb v1, (v0)                       |     v1 = *(v0);
    0x0002cc18 lw a0, (s1)                       |     a0 = *(s1);
    0x0002cc1c andi v0, v1, 0xff                 |     v0 = v1 & 0xff;
    0x0002cc20 sll v0, v0, 1                     |     v0 <<= 1;
    0x0002cc24 addu v0, a0, v0                   |     v0 = a0 + v0;
    0x0002cc28 addiu s5, zero, 1                 |     s5 = 1;
    0x0002cc2c lhu v0, (v0)                      |     v0 = *(v0);
    0x0002cc30 andi v0, v0, 0x2000               |     v0 &= aav.0x00002000;
    0x0002cc34 move a2, s4                       |     a2 = s4;
                                                 |     if (v0 != 0) {
    0x0002cc38 bnez v0, 0x2c590                  |         goto label_3;
                                                 |     }
    0x0002cc3c sb zero, (a2)                     |     *(a2) = 0;
    0x0002cc40 b 0x2c5c8                         |     goto label_15;
                                                 | label_110:
    0x0002cc44 lw a1, -0x7fac(gp)                |     a1 = *(gp);
                                                 |     if (s5 == 0) {
    0x0002cc48 beqz s5, 0x2ca0c                  |         goto label_16;
                                                 |     }
    0x0002cc4c addiu v0, zero, 1                 |     v0 = 1;
                                                 |     if (s2 == v0) {
    0x0002cc50 beql s2, v0, 0x2c5dc              |         goto label_17;
                                                 |     }
    0x0002cc54 sb zero, (s4)                     |     *(s4) = 0;
                                                 | label_84:
    0x0002cc58 move a2, s4                       |     a2 = s4;
    0x0002cc5c b 0x2c5c4                         |     goto label_18;
                                                 | label_92:
    0x0002cc60 addiu s5, zero, 6                 |     s5 = 6;
    0x0002cc64 b 0x2c6b4                         |     goto label_6;
                                                 | label_107:
    0x0002cc68 slti v1, v1, 7                    |     v1 = (v1 < 7) ? 1 : 0;
    0x0002cc6c xori v1, v1, 1                    |     v1 ^= 1;
    0x0002cc70 b 0x2c7f4                         |     goto label_19;
                                                 | label_106:
    0x0002cc74 lw a0, 0x60(v1)                   |     a0 = *((v1 + 24));
    0x0002cc78 lw v1, (a0)                       |     v1 = *(a0);
                                                 |     if (a0 == 0) {
    0x0002cc7c bnel a0, zero, 0x2c7d8            |         goto label_20;
                                                 |     }
    0x0002cc80 lw a0, 8(s0)                      |     a0 = *((s0 + 2));
    0x0002cc84 addiu a0, a0, 0x10                |     a0 += 0x10;
    0x0002cc88 b 0x2c7d4                         |     goto label_21;
                                                 | label_97:
    0x0002cc8c addiu a1, zero, -0x21             |     a1 = -0x21;
                                                 | label_29:
    0x0002cc90 and a0, a0, a1                    |     a0 &= a1;
    0x0002cc94 addiu a1, zero, 0x54              |     a1 = 0x54;
    0x0002cc98 addiu v0, zero, 9                 |     v0 = 9;
                                                 |     if (a0 == a1) {
    0x0002cc9c bnel a0, a1, 0x2c734              |         goto label_9;
                                                 |     }
                                                 | label_31:
    0x0002cca0 lbu a0, 2(v1)                     |     a0 = *((v1 + 2));
                                                 | label_30:
    0x0002cca4 addiu a1, zero, -0x21             |     a1 = -0x21;
    0x0002cca8 and a0, a0, a1                    |     a0 &= a1;
    0x0002ccac seb a0, a0                        |     __asm ("seb a0, a0");
    0x0002ccb0 addiu a2, zero, 0x54              |     a2 = 0x54;
    0x0002ccb4 addiu a2, zero, 0x50              |     a2 = 0x50;
                                                 |     if (a0 != a2) {
    0x0002ccb8 bne a0, a2, 0x2c728               |         goto label_22;
                                                 |     }
    0x0002ccbc lbu a0, 3(v1)                     |     a0 = *((v1 + 3));
    0x0002ccc0 and a0, a0, a1                    |     a0 &= a1;
    0x0002ccc4 seb a0, a0                        |     __asm ("seb a0, a0");
    0x0002ccc8 addiu a0, zero, 0x2f              |     a0 = 0x2f;
                                                 |     if (a0 != a2) {
    0x0002cccc bne a0, a2, 0x2c728               |         goto label_22;
                                                 |     }
    0x0002ccd0 lb a1, 4(v1)                      |     a1 = *((v1 + 4));
                                                 |     if (a1 != a0) {
    0x0002ccd4 bne a1, a0, 0x2c728               |         goto label_22;
                                                 |     }
    0x0002ccd8 nop                               |     
    0x0002ccdc lb a2, 5(v1)                      |     a2 = *((v1 + 5));
    0x0002cce0 lw a1, (s1)                       |     a1 = *(s1);
    0x0002cce4 andi a0, a2, 0xff                 |     a0 = a2 & 0xff;
    0x0002cce8 sll a0, a0, 1                     |     a0 <<= 1;
    0x0002ccec addu a0, a1, a0                   |     a0 = a1 + a0;
    0x0002ccf0 lhu a0, (a0)                      |     a0 = *(a0);
    0x0002ccf4 andi a0, a0, 0x800                |     a0 &= 0x800;
    0x0002ccf8 addiu a0, zero, 0x2e              |     a0 = 0x2e;
                                                 |     if (a0 == 0) {
    0x0002ccfc beqz a0, 0x2c728                  |         goto label_22;
                                                 |     }
    0x0002cd00 lb a3, 6(v1)                      |     a3 = *((v1 + 6));
                                                 |     if (a3 != a0) {
    0x0002cd04 bne a3, a0, 0x2c728               |         goto label_22;
                                                 |     }
    0x0002cd08 nop                               |     
    0x0002cd0c lbu a0, 7(v1)                     |     a0 = *((v1 + 7));
    0x0002cd10 sll a0, a0, 1                     |     a0 <<= 1;
    0x0002cd14 addu a1, a1, a0                   |     a1 += a0;
    0x0002cd18 lhu a0, (a1)                      |     a0 = *(a1);
    0x0002cd1c andi a0, a0, 0x800                |     a0 &= 0x800;
    0x0002cd20 addiu a0, zero, 0x30              |     a0 = 0x30;
                                                 |     if (a0 == 0) {
    0x0002cd24 beqz a0, 0x2c728                  |         goto label_22;
                                                 |     }
    0x0002cd28 addiu a1, zero, 0x3e8             |     a1 = aav.0x000003e8;
                                                 |     if (a2 == a0) {
    0x0002cd2c beq a2, a0, 0x2c728               |         goto label_22;
                                                 |     }
    0x0002cd30 sw zero, 0x1c(s0)                 |     *((s0 + 7)) = 0;
    0x0002cd34 lb v0, 5(v1)                      |     v0 = *((v1 + 5));
    0x0002cd38 addiu v0, v0, -0x30               |     v0 += -0x30;
    0x0002cd3c mul a2, v0, a1                    |     __asm ("mul a2, v0, a1");
    0x0002cd40 lb a0, 7(v1)                      |     a0 = *((v1 + 7));
    0x0002cd44 addiu a0, a0, -0x30               |     a0 += -0x30;
    0x0002cd48 addu v0, a2, a0                   |     v0 = a2 + a0;
    0x0002cd4c addiu a0, zero, 1                 |     a0 = 1;
    0x0002cd50 sw v0, 0x28(s0)                   |     *((s0 + 10)) = v0;
                                                 |     if (s2 == a0) {
    0x0002cd54 beq s2, a0, 0x2cd60               |         goto label_130;
                                                 |     }
                                                 |     if (s5 == 0) {
    0x0002cd58 beql s5, zero, 0x2c73c            |         goto label_8;
                                                 |     }
    0x0002cd5c addiu s5, zero, 6                 |     s5 = 6;
                                                 | label_130:
    0x0002cd60 lw v0, -0x7fac(gp)                |     v0 = *(gp);
    0x0002cd64 lw v0, -0x57ac(v0)                |     v0 = *((v0 - 5611));
    0x0002cd68 swl v0, 3(v1)                     |     __asm ("swl v0, 3(v1)");
    0x0002cd6c swr v0, (v1)                      |     __asm ("swr v0, (v1)");
    0x0002cd70 b 0x2c73c                         |     goto label_8;
                                                 | label_129:
    0x0002cd74 lw a1, -0x7fac(gp)                |     a1 = *(gp);
    0x0002cd78 lw t9, -0x7740(gp)                |     t9 = sym.imp.strcmp;
                                                 |     /* esilref: ' ' */
    0x0002cd7c addiu a1, a1, -0x7950             |     a1 += -aav.0x00007950;
    0x0002cd80 jalr t9                           |     t9 ();
    0x0002cd84 lw gp, 0x28(sp)                   |     gp = *(var_28h);
                                                 |     if (v0 == 0) {
    0x0002cd88 beqz v0, 0x2c790                  |         goto label_12;
                                                 |     }
    0x0002cd8c addiu v0, zero, 0x190             |     v0 = aav.0x00000190;
    0x0002cd90 sw v0, 0x44(s0)                   |     *((s0 + 17)) = v0;
    0x0002cd94 b 0x2c790                         |     goto label_12;
                                                 | label_124:
    0x0002cd98 lw a0, 0x108(s0)                  |     a0 = *(s0);
                                                 |     if (a0 == 0) {
    0x0002cd9c beql a0, zero, 0x2d3bc            |         goto label_131;
                                                 |     }
    0x0002cda0 lw v1, 4(s0)                      |     v1 = *((s0 + 1));
                                                 | label_44:
    0x0002cda4 lw v1, (a0)                       |     v1 = *(a0);
                                                 |     if (v1 == 0) {
                                                 | label_43:
    0x0002cda8 beql v1, zero, 0x2d3b0            |         goto label_132;
                                                 |     }
    0x0002cdac lw v1, 4(a0)                      |     v1 = *((a0 + 1));
    0x0002cdb0 lb v1, (v1)                       |     v1 = *(v1);
                                                 |     if (v1 < 0) {
    0x0002cdb4 bltzl v1, 0x2d3b0                 |         goto label_132;
                                                 |     }
    0x0002cdb8 lw v1, 4(a0)                      |     v1 = *((a0 + 1));
    0x0002cdbc slti v1, v1, 7                    |     v1 = (v1 < 7) ? 1 : 0;
    0x0002cdc0 xori v1, v1, 1                    |     v1 ^= 1;
                                                 | label_42:
    0x0002cdc4 addiu v1, zero, 0x190             |     v1 = aav.0x00000190;
                                                 |     if (v1 != 0) {
    0x0002cdc8 beqz v1, 0x2ce08                  |         
    0x0002cdcc lw v0, -0x7fac(gp)                |         v0 = *(gp);
    0x0002cdd0 lw t9, -0x7f08(gp)                |         t9 = sym.ap_log_rerror_;
                                                 |         /* str.AH03446:_HTTP_Request_Line__Missing_URI */
    0x0002cdd4 addiu v0, v0, -0x56f4             |         v0 += -0x56f4;
    0x0002cdd8 sw v0, 0x18(sp)                   |         *(var_18h) = v0;
    0x0002cddc sw s0, 0x14(sp)                   |         *(var_14h) = s0;
    0x0002cde0 sw zero, 0x10(sp)                 |         *(var_10h) = 0;
    0x0002cde4 addiu a3, zero, 7                 |         a3 = 7;
    0x0002cde8 move a2, zero                     |         a2 = 0;
    0x0002cdec addiu a1, zero, 0x395             |         a1 = 0x395;
                                                 | label_38:
    0x0002cdf0 lw a0, -0x7fac(gp)                |         a0 = *(gp);
                                                 |         /* str._usr_src_debug_apache2_2.4.57_r0_httpd_2.4.57_server_protocol.c */
    0x0002cdf4 addiu a0, a0, -0x5ed4             |         a0 += -0x5ed4;
    0x0002cdf8 jalr t9                           |         t9 ();
    0x0002cdfc lw gp, 0x28(sp)                   |         gp = *(var_28h);
    0x0002ce00 lw v0, 0x28(s0)                   |         v0 = *((s0 + 10));
    0x0002ce04 addiu v1, zero, 0x190             |         v1 = aav.0x00000190;
                                                 |     }
                                                 | label_24:
    0x0002ce08 sw v1, 0x44(s0)                   |     *((s0 + 17)) = v1;
                                                 | label_27:
    0x0002ce0c addiu v1, zero, 9                 |     v1 = 9;
    0x0002ce10 move v0, zero                     |     v0 = 0;
                                                 |     if (v0 != v1) {
    0x0002ce14 bne v0, v1, 0x2c878               |         goto label_23;
                                                 |     }
                                                 | label_34:
    0x0002ce18 lw v0, 4(s0)                      |     v0 = *((s0 + 1));
                                                 | label_109:
    0x0002ce1c lw a1, -0x7fac(gp)                |     a1 = *(gp);
    0x0002ce20 addiu v1, zero, 1                 |     v1 = 1;
    0x0002ce24 lw a0, (s0)                       |     a0 = *(s0);
    0x0002ce28 lw t9, -0x7654(gp)                |     t9 = sym.imp.apr_pstrdup;
    0x0002ce2c sw zero, 0x1c(s0)                 |     *((s0 + 7)) = 0;
    0x0002ce30 sw v1, 0x58(v0)                   |     *((v0 + 22)) = v1;
    0x0002ce34 addiu v0, zero, 0x3e8             |     v0 = aav.0x000003e8;
                                                 |     /* str.HTTP_1.0 */
    0x0002ce38 addiu a1, a1, -0x53f8             |     a1 += -0x53f8;
    0x0002ce3c sw v0, 0x28(s0)                   |     *((s0 + 10)) = v0;
    0x0002ce40 jalr t9                           |     t9 ();
    0x0002ce44 lw ra, 0x54(sp)                   |     ra = *(var_54h);
    0x0002ce48 sw v0, 0x2c(s0)                   |     *((s0 + 11)) = v0;
    0x0002ce4c lw fp, 0x50(sp)                   |     fp = *(var_50h);
    0x0002ce50 lw s7, 0x4c(sp)                   |     s7 = *(var_4ch);
    0x0002ce54 lw s6, 0x48(sp)                   |     s6 = *(var_48h);
    0x0002ce58 lw s5, 0x44(sp)                   |     s5 = *(var_44h);
    0x0002ce5c lw s4, 0x40(sp)                   |     s4 = *(var_40h);
    0x0002ce60 lw s3, 0x3c(sp)                   |     s3 = *(var_3ch);
    0x0002ce64 lw s2, 0x38(sp)                   |     s2 = *(var_38h);
    0x0002ce68 lw s1, 0x34(sp)                   |     s1 = *(var_34h);
    0x0002ce6c lw s0, 0x30(sp)                   |     s0 = *(var_30h);
    0x0002ce70 move v0, zero                     |     v0 = 0;
    0x0002ce74 addiu sp, sp, 0x58                |     
    0x0002ce78 jr ra                             |     return v0;
                                                 | label_121:
    0x0002ce7c lw v1, 4(a0)                      |     v1 = *((a0 + 1));
                                                 | label_120:
    0x0002ce80 slti v1, v1, 7                    |     v1 = (v1 < 7) ? 1 : 0;
    0x0002ce84 xori v1, v1, 1                    |     v1 ^= 1;
                                                 | label_122:
    0x0002ce88 addiu v1, zero, 0x190             |     v1 = aav.0x00000190;
                                                 |     if (v1 == 0) {
    0x0002ce8c beqz v1, 0x2ce08                  |         goto label_24;
                                                 |     }
    0x0002ce90 lw v0, -0x7fac(gp)                |     v0 = *(gp);
    0x0002ce94 lw t9, -0x7f08(gp)                |     t9 = sym.ap_log_rerror_;
                                                 |     /* str.AH02421:_HTTP_Request_Line__URI_must_not_contain_a_fragment */
    0x0002ce98 addiu v0, v0, -0x547c             |     v0 += -0x547c;
    0x0002ce9c sw v0, 0x18(sp)                   |     *(var_18h) = v0;
    0x0002cea0 sw s0, 0x14(sp)                   |     *(var_14h) = s0;
    0x0002cea4 sw zero, 0x10(sp)                 |     *(var_10h) = 0;
    0x0002cea8 addiu a3, zero, 7                 |     a3 = 7;
    0x0002ceac move a2, zero                     |     a2 = 0;
    0x0002ceb0 addiu a1, zero, 0x3c8             |     a1 = aav.0x000003c8;
    0x0002ceb4 b 0x2d21c                         |     goto label_133;
                                                 | label_117:
    0x0002ceb8 lw v1, 0x108(s0)                  |     v1 = *(s0);
                                                 |     if (v1 == 0) {
                                                 | label_116:
    0x0002cebc beql v1, zero, 0x2d404            |         goto label_134;
                                                 |     }
    0x0002cec0 lw v0, 4(s0)                      |     v0 = *((s0 + 1));
                                                 | label_50:
    0x0002cec4 lw v0, (v1)                       |     v0 = *(v1);
                                                 |     if (v0 != 0) {
                                                 | label_49:
    0x0002cec8 beql v0, zero, 0x2cee8            |         
    0x0002cecc lw v0, 4(v1)                      |         v0 = *((v1 + 1));
    0x0002ced0 lb v0, (v0)                       |         v0 = *(v0);
    0x0002ced4 slti v0, v0, 7                    |         v0 = (v0 < 7) ? 1 : 0;
                                                 |         if (v0 >= 0) {
    0x0002ced8 bltz v0, 0x2cee4                  |             
    0x0002cedc xori v0, v0, 1                    |             v0 ^= 1;
    0x0002cee0 b 0x2cef0                         |             goto label_135;
                                                 |         }
    0x0002cee4 lw v0, 4(v1)                      |         v0 = *((v1 + 1));
                                                 |     }
    0x0002cee8 slti v0, v0, 7                    |     v0 = (v0 < 7) ? 1 : 0;
    0x0002ceec xori v0, v0, 1                    |     v0 ^= 1;
                                                 | label_135:
    0x0002cef0 addiu v0, zero, 0x190             |     v0 = aav.0x00000190;
                                                 |     if (v0 == 0) {
    0x0002cef4 beqz v0, 0x2d280                  |         goto label_63;
                                                 |     }
    0x0002cef8 lw s1, 0x4c(s0)                   |     s1 = *((s0 + 19));
    0x0002cefc lw t9, -0x72b8(gp)                |     t9 = sym.imp.strchr;
    0x0002cf00 addiu a1, zero, 0x3a              |     a1 = 0x3a;
    0x0002cf04 move a0, s1                       |     a0 = s1;
    0x0002cf08 jalr t9                           |     t9 ();
    0x0002cf0c lw gp, 0x28(sp)                   |     gp = *(var_28h);
                                                 |     if (v0 == 0) {
    0x0002cf10 beqz v0, 0x2d66c                  |         goto label_136;
                                                 |     }
    0x0002cf14 subu v0, v0, s1                   |     __asm ("subu v0, v0, s1");
    0x0002cf18 slti a0, v0, 0x51                 |     a0 = (v0 < 0x51) ? 1 : 0;
    0x0002cf1c addiu v1, zero, 0x50              |     v1 = 0x50;
                                                 |     if (a0 != 0) {
    0x0002cf20 movz v0, v1, a0                   |         v0 = v1;
                                                 |     }
                                                 | label_67:
    0x0002cf24 sw v0, 0x1c(sp)                   |     *(var_1ch) = v0;
    0x0002cf28 lw v0, -0x7fac(gp)                |     v0 = *(gp);
    0x0002cf2c lw t9, -0x7f08(gp)                |     t9 = sym.ap_log_rerror_;
                                                 |     /* str.AH03444:_HTTP_Request_Line__Invalid_method_token:__.s__only_GET_is_allowed_for_HTTP_0.9_requests_ */
    0x0002cf30 addiu v0, v0, -0x575c             |     v0 += -0x575c;
    0x0002cf34 sw s1, 0x20(sp)                   |     *(var_20h) = s1;
    0x0002cf38 sw v0, 0x18(sp)                   |     *(var_18h) = v0;
    0x0002cf3c sw s0, 0x14(sp)                   |     *(var_14h) = s0;
    0x0002cf40 sw zero, 0x10(sp)                 |     *(var_10h) = 0;
    0x0002cf44 addiu a3, zero, 7                 |     a3 = 7;
    0x0002cf48 move a2, zero                     |     a2 = 0;
    0x0002cf4c addiu a1, zero, 0x392             |     a1 = 0x392;
    0x0002cf50 b 0x2d0c0                         |     goto label_35;
                                                 | label_104:
    0x0002cf54 addiu v1, zero, 0x1a              |     v1 = 0x1a;
    0x0002cf58 lw a0, 0x44(s0)                   |     a0 = *((s0 + 17));
                                                 |     if (a0 == v1) {
    0x0002cf5c bnel a0, v1, 0x2c7bc              |         goto label_25;
                                                 |     }
    0x0002cf60 lw v1, 0x108(s0)                  |     v1 = *(s0);
                                                 |     if (v1 == 0) {
    0x0002cf64 beql v1, zero, 0x2d448            |         goto label_137;
                                                 |     }
    0x0002cf68 lw v0, 4(s0)                      |     v0 = *((s0 + 1));
                                                 | label_56:
    0x0002cf6c lw v0, (v1)                       |     v0 = *(v1);
                                                 |     if (v0 == 0) {
                                                 | label_55:
    0x0002cf70 beql v0, zero, 0x2d41c            |         goto label_138;
                                                 |     }
    0x0002cf74 lw v0, 4(v1)                      |     v0 = *((v1 + 1));
    0x0002cf78 lb v0, (v0)                       |     v0 = *(v0);
                                                 |     if (v0 < 0) {
    0x0002cf7c bltzl v0, 0x2d41c                 |         goto label_138;
                                                 |     }
    0x0002cf80 lw v0, 4(v1)                      |     v0 = *((v1 + 1));
    0x0002cf84 slti v0, v0, 7                    |     v0 = (v0 < 7) ? 1 : 0;
    0x0002cf88 xori v0, v0, 1                    |     v0 ^= 1;
                                                 | label_51:
    0x0002cf8c addiu v0, zero, 0x1f5             |     v0 = 0x1f5;
                                                 |     if (v0 != 0) {
    0x0002cf90 beqz v0, 0x2cffc                  |         
    0x0002cf94 lw s1, 0x4c(s0)                   |         s1 = *((s0 + 19));
    0x0002cf98 lw t9, -0x72b8(gp)                |         t9 = sym.imp.strchr;
    0x0002cf9c addiu a1, zero, 0x3a              |         a1 = 0x3a;
    0x0002cfa0 move a0, s1                       |         a0 = s1;
    0x0002cfa4 jalr t9                           |         t9 ();
    0x0002cfa8 lw gp, 0x28(sp)                   |         gp = *(var_28h);
                                                 |         if (v0 == 0) {
    0x0002cfac beqz v0, 0x2d6a4                  |             goto label_139;
                                                 |         }
    0x0002cfb0 subu v0, v0, s1                   |         __asm ("subu v0, v0, s1");
    0x0002cfb4 slti a0, v0, 0x51                 |         a0 = (v0 < 0x51) ? 1 : 0;
    0x0002cfb8 addiu v1, zero, 0x50              |         v1 = 0x50;
                                                 |         if (a0 != 0) {
    0x0002cfbc movz v0, v1, a0                   |             v0 = v1;
                                                 |         }
                                                 | label_72:
    0x0002cfc0 sw v0, 0x1c(sp)                   |         *(var_1ch) = v0;
    0x0002cfc4 lw v0, -0x7fac(gp)                |         v0 = *(gp);
    0x0002cfc8 lw a0, -0x7fac(gp)                |         a0 = *(gp);
    0x0002cfcc lw t9, -0x7f08(gp)                |         t9 = sym.ap_log_rerror_;
                                                 |         /* str.AH02423:_HTTP_Request_Line__Unrecognized_HTTP_method:__.s__disallowed_by_RegisteredMethods_ */
    0x0002cfd0 addiu v0, v0, -0x5514             |         v0 += -aav.0x00005514;
    0x0002cfd4 sw s1, 0x20(sp)                   |         *(var_20h) = s1;
    0x0002cfd8 sw v0, 0x18(sp)                   |         *(var_18h) = v0;
    0x0002cfdc sw s0, 0x14(sp)                   |         *(var_14h) = s0;
    0x0002cfe0 sw zero, 0x10(sp)                 |         *(var_10h) = 0;
    0x0002cfe4 addiu a3, zero, 7                 |         a3 = 7;
    0x0002cfe8 move a2, zero                     |         a2 = 0;
    0x0002cfec addiu a1, zero, 0x3b7             |         a1 = 0x3b7;
                                                 |         /* str._usr_src_debug_apache2_2.4.57_r0_httpd_2.4.57_server_protocol.c */
    0x0002cff0 addiu a0, a0, -0x5ed4             |         a0 += -0x5ed4;
    0x0002cff4 jalr t9                           |         t9 ();
    0x0002cff8 addiu v0, zero, 0x1f5             |         v0 = 0x1f5;
                                                 |     }
    0x0002cffc sw v0, 0x44(s0)                   |     *((s0 + 17)) = v0;
    0x0002d000 move v0, zero                     |     v0 = 0;
    0x0002d004 b 0x2c878                         |     goto label_23;
                                                 | label_113:
    0x0002d008 lw v0, -0x7fac(gp)                |     v0 = *(gp);
    0x0002d00c lw a0, (s0)                       |     a0 = *(s0);
    0x0002d010 addiu v0, v0, 0x47dc              |     v0 += 0x47dc;
    0x0002d014 sw v0, 0x2c(s0)                   |     *((s0 + 11)) = v0;
    0x0002d018 lb v1, (s4)                       |     v1 = *(s4);
    0x0002d01c lw s7, 0x4c(s0)                   |     s7 = *((s0 + 19));
                                                 |     if (v1 == 0) {
    0x0002d020 beqz v1, 0x2d248                  |         goto label_140;
                                                 |     }
    0x0002d024 lw a2, -0x7fac(gp)                |     a2 = *(gp);
    0x0002d028 addiu s5, zero, 5                 |     s5 = 5;
    0x0002d02c addiu a2, a2, 0x6730              |     a2 += 0x6730;
    0x0002d030 b 0x2ca44                         |     goto label_26;
                                                 | label_123:
    0x0002d034 lw a0, 0x108(s0)                  |     a0 = *(s0);
                                                 |     if (a0 == 0) {
    0x0002d038 beql a0, zero, 0x2d3d4            |         goto label_141;
                                                 |     }
    0x0002d03c lw v1, 4(s0)                      |     v1 = *((s0 + 1));
                                                 | label_46:
    0x0002d040 lw v1, (a0)                       |     v1 = *(a0);
                                                 |     if (v1 == 0) {
                                                 | label_45:
    0x0002d044 beql v1, zero, 0x2d23c            |         goto label_142;
                                                 |     }
    0x0002d048 lw v1, 4(a0)                      |     v1 = *((a0 + 1));
    0x0002d04c lb v1, (v1)                       |     v1 = *(v1);
                                                 |     if (v1 < 0) {
    0x0002d050 bltzl v1, 0x2d23c                 |         goto label_142;
                                                 |     }
    0x0002d054 lw v1, 4(a0)                      |     v1 = *((a0 + 1));
    0x0002d058 slti v1, v1, 7                    |     v1 = (v1 < 7) ? 1 : 0;
    0x0002d05c xori v1, v1, 1                    |     v1 ^= 1;
                                                 | label_32:
    0x0002d060 addiu v1, zero, 0x190             |     v1 = aav.0x00000190;
                                                 |     if (v1 == 0) {
    0x0002d064 beqz v1, 0x2ce08                  |         goto label_24;
                                                 |     }
    0x0002d068 lw s1, 0x4c(s0)                   |     s1 = *((s0 + 19));
    0x0002d06c lw t9, -0x72b8(gp)                |     t9 = sym.imp.strchr;
    0x0002d070 addiu a1, zero, 0x3a              |     a1 = 0x3a;
    0x0002d074 move a0, s1                       |     a0 = s1;
    0x0002d078 jalr t9                           |     t9 ();
    0x0002d07c lw gp, 0x28(sp)                   |     gp = *(var_28h);
                                                 |     if (v0 == 0) {
    0x0002d080 beqz v0, 0x2d49c                  |         goto label_143;
                                                 |     }
    0x0002d084 subu v0, v0, s1                   |     __asm ("subu v0, v0, s1");
    0x0002d088 slti a0, v0, 0x51                 |     a0 = (v0 < 0x51) ? 1 : 0;
    0x0002d08c addiu v1, zero, 0x50              |     v1 = 0x50;
                                                 |     if (a0 != 0) {
    0x0002d090 movz v0, v1, a0                   |         v0 = v1;
                                                 |     }
                                                 | label_62:
    0x0002d094 sw v0, 0x1c(sp)                   |     *(var_1ch) = v0;
    0x0002d098 lw v0, -0x7fac(gp)                |     v0 = *(gp);
    0x0002d09c lw t9, -0x7f08(gp)                |     t9 = sym.ap_log_rerror_;
                                                 |     /* str.AH03445:_HTTP_Request_Line__Invalid_method_token:__.s */
    0x0002d0a0 addiu v0, v0, -0x5798             |     v0 += -0x5798;
    0x0002d0a4 sw s1, 0x20(sp)                   |     *(var_20h) = s1;
    0x0002d0a8 sw v0, 0x18(sp)                   |     *(var_18h) = v0;
    0x0002d0ac sw s0, 0x14(sp)                   |     *(var_14h) = s0;
    0x0002d0b0 sw zero, 0x10(sp)                 |     *(var_10h) = 0;
    0x0002d0b4 addiu a3, zero, 7                 |     a3 = 7;
    0x0002d0b8 move a2, zero                     |     a2 = 0;
    0x0002d0bc addiu a1, zero, 0x38d             |     a1 = 0x38d;
                                                 | label_35:
    0x0002d0c0 lw a0, -0x7fac(gp)                |     a0 = *(gp);
                                                 |     /* str._usr_src_debug_apache2_2.4.57_r0_httpd_2.4.57_server_protocol.c */
    0x0002d0c4 addiu a0, a0, -0x5ed4             |     a0 += -0x5ed4;
    0x0002d0c8 jalr t9                           |     t9 ();
    0x0002d0cc addiu v1, zero, 0x190             |     v1 = aav.0x00000190;
    0x0002d0d0 lw gp, 0x28(sp)                   |     gp = *(var_28h);
    0x0002d0d4 lw v0, 0x28(s0)                   |     v0 = *((s0 + 10));
    0x0002d0d8 sw v1, 0x44(s0)                   |     *((s0 + 17)) = v1;
    0x0002d0dc b 0x2ce0c                         |     goto label_27;
                                                 | label_90:
    0x0002d0e0 lw fp, 0x2c(s0)                   |     fp = *((s0 + 11));
    0x0002d0e4 lw t9, -0x74c4(gp)                |     t9 = sym.imp.strlen;
    0x0002d0e8 move a0, fp                       |     a0 = fp;
    0x0002d0ec jalr t9                           |     t9 ();
    0x0002d0f0 move s7, v0                       |     s7 = v0;
    0x0002d0f4 lw gp, 0x28(sp)                   |     gp = *(var_28h);
    0x0002d0f8 move s6, zero                     |     s6 = 0;
    0x0002d0fc b 0x2c6bc                         |     goto label_28;
                                                 | label_96:
    0x0002d100 lb a0, 1(v1)                      |     a0 = *((v1 + 1));
    0x0002d104 addiu a1, zero, 0x54              |     a1 = 0x54;
    0x0002d108 addiu a1, zero, -0x21             |     a1 = -0x21;
                                                 |     if (a0 != a1) {
    0x0002d10c bne a0, a1, 0x2cc90               |         goto label_29;
                                                 |     }
    0x0002d110 lb a1, 2(v1)                      |     a1 = *((v1 + 2));
    0x0002d114 lbu a0, 2(v1)                     |     a0 = *((v1 + 2));
                                                 |     if (a1 == a0) {
    0x0002d118 bnel a1, a0, 0x2cca4              |         goto label_30;
                                                 |     }
    0x0002d11c lb a1, 3(v1)                      |     a1 = *((v1 + 3));
    0x0002d120 addiu a0, zero, 0x50              |     a0 = 0x50;
    0x0002d124 lbu a0, 2(v1)                     |     a0 = *((v1 + 2));
                                                 |     if (a1 == a0) {
    0x0002d128 bnel a1, a0, 0x2cca4              |         goto label_30;
                                                 |     }
    0x0002d12c lb a1, 4(v1)                      |     a1 = *((v1 + 4));
    0x0002d130 addiu a0, zero, 0x2f              |     a0 = 0x2f;
    0x0002d134 lbu a0, 2(v1)                     |     a0 = *((v1 + 2));
                                                 |     if (a1 == a0) {
    0x0002d138 bnel a1, a0, 0x2cca4              |         goto label_30;
                                                 |     }
    0x0002d13c lb a2, 5(v1)                      |     a2 = *((v1 + 5));
    0x0002d140 lw a1, (s1)                       |     a1 = *(s1);
    0x0002d144 andi a0, a2, 0xff                 |     a0 = a2 & 0xff;
    0x0002d148 sll a0, a0, 1                     |     a0 <<= 1;
    0x0002d14c addu a0, a1, a0                   |     a0 = a1 + a0;
    0x0002d150 lhu a0, (a0)                      |     a0 = *(a0);
    0x0002d154 andi a0, a0, 0x800                |     a0 &= 0x800;
                                                 |     if (a0 == 0) {
    0x0002d158 beql a0, zero, 0x2cca4            |         goto label_30;
                                                 |     }
    0x0002d15c lbu a0, 2(v1)                     |     a0 = *((v1 + 2));
    0x0002d160 lb a3, 6(v1)                      |     a3 = *((v1 + 6));
    0x0002d164 addiu a0, zero, 0x2e              |     a0 = 0x2e;
    0x0002d168 lbu a0, 2(v1)                     |     a0 = *((v1 + 2));
                                                 |     if (a3 == a0) {
    0x0002d16c bnel a3, a0, 0x2cca4              |         goto label_30;
                                                 |     }
    0x0002d170 lbu a0, 7(v1)                     |     a0 = *((v1 + 7));
    0x0002d174 sll a0, a0, 1                     |     a0 <<= 1;
    0x0002d178 addu a1, a1, a0                   |     a1 += a0;
    0x0002d17c lhu a0, (a1)                      |     a0 = *(a1);
    0x0002d180 andi a0, a0, 0x800                |     a0 &= 0x800;
                                                 |     if (a0 == 0) {
    0x0002d184 beql a0, zero, 0x2cca4            |         goto label_30;
                                                 |     }
    0x0002d188 lbu a0, 2(v1)                     |     a0 = *((v1 + 2));
    0x0002d18c addiu a0, zero, 0x30              |     a0 = 0x30;
    0x0002d190 addiu a0, zero, 0x3e8             |     a0 = aav.0x000003e8;
                                                 |     if (a2 == a0) {
    0x0002d194 beq a2, a0, 0x2cca0               |         goto label_31;
                                                 |     }
    0x0002d198 sw zero, 0x1c(s0)                 |     *((s0 + 7)) = 0;
    0x0002d19c lb v0, 5(v1)                      |     v0 = *((v1 + 5));
    0x0002d1a0 addiu v0, v0, -0x30               |     v0 += -0x30;
    0x0002d1a4 mul a1, v0, a0                    |     __asm ("mul a1, v0, a0");
    0x0002d1a8 lb v1, 7(v1)                      |     v1 = *((v1 + 7));
    0x0002d1ac addiu v1, v1, -0x30               |     v1 += -0x30;
    0x0002d1b0 addu v0, a1, v1                   |     v0 = a1 + v1;
    0x0002d1b4 sw v0, 0x28(s0)                   |     *((s0 + 10)) = v0;
    0x0002d1b8 b 0x2c73c                         |     goto label_8;
                                                 |     if (v1 == 0) {
                                                 | label_118:
    0x0002d1bc beql v1, zero, 0x2d318            |         goto label_144;
                                                 |     }
    0x0002d1c0 lw v1, 0x13c(s0)                  |     v1 = *(s0);
    0x0002d1c4 lw a0, 0x108(s0)                  |     a0 = *(s0);
                                                 |     if (a0 == 0) {
                                                 | label_36:
    0x0002d1c8 beql a0, zero, 0x2d398            |         goto label_145;
                                                 |     }
    0x0002d1cc lw v1, 4(s0)                      |     v1 = *((s0 + 1));
                                                 | label_41:
    0x0002d1d0 lw v1, (a0)                       |     v1 = *(a0);
                                                 |     if (v1 == 0) {
                                                 | label_40:
    0x0002d1d4 beql v1, zero, 0x2d38c            |         goto label_146;
                                                 |     }
    0x0002d1d8 lw v1, 4(a0)                      |     v1 = *((a0 + 1));
    0x0002d1dc lb v1, (v1)                       |     v1 = *(v1);
                                                 |     if (v1 < 0) {
    0x0002d1e0 bltzl v1, 0x2d38c                 |         goto label_146;
                                                 |     }
    0x0002d1e4 lw v1, 4(a0)                      |     v1 = *((a0 + 1));
    0x0002d1e8 slti v1, v1, 7                    |     v1 = (v1 < 7) ? 1 : 0;
    0x0002d1ec xori v1, v1, 1                    |     v1 ^= 1;
                                                 | label_39:
    0x0002d1f0 addiu v1, zero, 0x190             |     v1 = aav.0x00000190;
                                                 |     if (v1 == 0) {
    0x0002d1f4 beqz v1, 0x2ce08                  |         goto label_24;
                                                 |     }
    0x0002d1f8 lw v0, -0x7fac(gp)                |     v0 = *(gp);
    0x0002d1fc lw t9, -0x7f08(gp)                |     t9 = sym.ap_log_rerror_;
                                                 |     /* str.AH02422:_HTTP_Request_Line__URI_must_not_contain_a_username_password */
    0x0002d200 addiu v0, v0, -0x5440             |     v0 += -0x5440;
    0x0002d204 sw v0, 0x18(sp)                   |     *(var_18h) = v0;
    0x0002d208 sw s0, 0x14(sp)                   |     *(var_14h) = s0;
    0x0002d20c sw zero, 0x10(sp)                 |     *(var_10h) = 0;
    0x0002d210 addiu a3, zero, 7                 |     a3 = 7;
    0x0002d214 move a2, zero                     |     a2 = 0;
    0x0002d218 addiu a1, zero, 0x3cf             |     a1 = 0x3cf;
                                                 | label_133:
    0x0002d21c lw a0, -0x7fac(gp)                |     a0 = *(gp);
                                                 |     /* str._usr_src_debug_apache2_2.4.57_r0_httpd_2.4.57_server_protocol.c */
    0x0002d220 addiu a0, a0, -0x5ed4             |     a0 += -0x5ed4;
    0x0002d224 jalr t9                           |     t9 ();
    0x0002d228 addiu v1, zero, 0x190             |     v1 = aav.0x00000190;
    0x0002d22c lw gp, 0x28(sp)                   |     gp = *(var_28h);
    0x0002d230 lw v0, 0x28(s0)                   |     v0 = *((s0 + 10));
    0x0002d234 sw v1, 0x44(s0)                   |     *((s0 + 17)) = v1;
    0x0002d238 b 0x2ce0c                         |     goto label_27;
                                                 | label_142:
    0x0002d23c slti v1, v1, 7                    |     v1 = (v1 < 7) ? 1 : 0;
    0x0002d240 xori v1, v1, 1                    |     v1 ^= 1;
    0x0002d244 b 0x2d060                         |     goto label_32;
                                                 | label_140:
    0x0002d248 lw t9, -0x76e8(gp)                |     t9 = sym.imp.apr_pstrcat
    0x0002d24c sw zero, 0x18(sp)                 |     *(var_18h) = 0;
    0x0002d250 sw v0, 0x14(sp)                   |     *(var_14h) = v0;
    0x0002d254 sw zero, 0x10(sp)                 |     *(var_10h) = 0;
    0x0002d258 move a3, s4                       |     a3 = s4;
    0x0002d25c move a2, zero                     |     a2 = 0;
    0x0002d260 move a1, s7                       |     a1 = s7;
    0x0002d264 jalr t9                           |     t9 ();
    0x0002d268 lw gp, 0x28(sp)                   |     gp = *(var_28h);
    0x0002d26c sw v0, 0x18(s0)                   |     *((s0 + 6)) = v0;
    0x0002d270 lw v0, 0x2c(s0)                   |     v0 = *((s0 + 11));
    0x0002d274 addiu s5, zero, 5                 |     s5 = 5;
    0x0002d278 lb v0, (v0)                       |     v0 = *(v0);
    0x0002d27c b 0x2ca74                         |     goto label_33;
                                                 | label_63:
    0x0002d280 sw v0, 0x44(s0)                   |     *((s0 + 17)) = v0;
    0x0002d284 b 0x2ce18                         |     goto label_34;
                                                 | label_125:
    0x0002d288 lw a0, 0x108(s0)                  |     a0 = *(s0);
                                                 |     if (a0 == 0) {
    0x0002d28c beql a0, zero, 0x2d460            |         goto label_147;
                                                 |     }
    0x0002d290 lw v1, 4(s0)                      |     v1 = *((s0 + 1));
                                                 | label_58:
    0x0002d294 lw v1, (a0)                       |     v1 = *(a0);
                                                 |     if (v1 == 0) {
                                                 | label_57:
    0x0002d298 beql v1, zero, 0x2d428            |         goto label_148;
                                                 |     }
    0x0002d29c lw v1, 4(a0)                      |     v1 = *((a0 + 1));
    0x0002d2a0 lb v1, (v1)                       |     v1 = *(v1);
                                                 |     if (v1 < 0) {
    0x0002d2a4 bltzl v1, 0x2d428                 |         goto label_148;
                                                 |     }
    0x0002d2a8 lw v1, 4(a0)                      |     v1 = *((a0 + 1));
    0x0002d2ac slti v1, v1, 7                    |     v1 = (v1 < 7) ? 1 : 0;
    0x0002d2b0 xori v1, v1, 1                    |     v1 ^= 1;
                                                 | label_52:
    0x0002d2b4 addiu v1, zero, 0x190             |     v1 = aav.0x00000190;
                                                 |     if (v1 == 0) {
    0x0002d2b8 beqz v1, 0x2ce08                  |         goto label_24;
                                                 |     }
    0x0002d2bc lw s1, 0xe0(s0)                   |     s1 = *((s0 + 56));
    0x0002d2c0 lw t9, -0x72b8(gp)                |     t9 = sym.imp.strchr;
    0x0002d2c4 addiu a1, zero, 0x3a              |     a1 = 0x3a;
    0x0002d2c8 move a0, s1                       |     a0 = s1;
    0x0002d2cc jalr t9                           |     t9 ();
    0x0002d2d0 lw gp, 0x28(sp)                   |     gp = *(var_28h);
                                                 |     if (v0 == 0) {
    0x0002d2d4 beqz v0, 0x2d6c4                  |         goto label_149;
                                                 |     }
    0x0002d2d8 subu v0, v0, s1                   |     __asm ("subu v0, v0, s1");
    0x0002d2dc slti a0, v0, 0x51                 |     a0 = (v0 < 0x51) ? 1 : 0;
    0x0002d2e0 addiu v1, zero, 0x50              |     v1 = 0x50;
                                                 |     if (a0 != 0) {
    0x0002d2e4 movz v0, v1, a0                   |         v0 = v1;
                                                 |     }
                                                 | label_75:
    0x0002d2e8 sw v0, 0x1c(sp)                   |     *(var_1ch) = v0;
    0x0002d2ec lw v0, -0x7fac(gp)                |     v0 = *(gp);
    0x0002d2f0 lw t9, -0x7f08(gp)                |     t9 = sym.ap_log_rerror_;
                                                 |     /* str.AH03454:_HTTP_Request_Line__URI_incorrectly_encoded:__.s */
    0x0002d2f4 addiu v0, v0, -0x56cc             |     v0 += -0x56cc;
    0x0002d2f8 sw s1, 0x20(sp)                   |     *(var_20h) = s1;
    0x0002d2fc sw v0, 0x18(sp)                   |     *(var_18h) = v0;
    0x0002d300 sw s0, 0x14(sp)                   |     *(var_14h) = s0;
    0x0002d304 sw zero, 0x10(sp)                 |     *(var_10h) = 0;
    0x0002d308 addiu a3, zero, 7                 |     a3 = 7;
    0x0002d30c move a2, zero                     |     a2 = 0;
    0x0002d310 addiu a1, zero, 0x399             |     a1 = 0x399;
    0x0002d314 b 0x2d0c0                         |     goto label_35;
                                                 | label_144:
    0x0002d318 lw a0, 0x108(s0)                  |     a0 = *(s0);
                                                 |     if (v1 == 0) {
    0x0002d31c bnel v1, zero, 0x2d1c8            |         goto label_36;
                                                 |     }
    0x0002d320 lw ra, 0x54(sp)                   |     ra = *(var_54h);
    0x0002d324 b 0x2cbe4                         |     goto label_37;
                                                 | label_126:
    0x0002d328 addiu v1, zero, 7                 |     v1 = 7;
                                                 |     if (s5 != v1) {
    0x0002d32c bne s5, v1, 0x2d518               |         goto label_150;
                                                 |     }
    0x0002d330 lw a0, 0x108(s0)                  |     a0 = *(s0);
                                                 |     if (a0 == 0) {
    0x0002d334 beql a0, zero, 0x2d500            |         goto label_151;
                                                 |     }
    0x0002d338 lw v1, 4(s0)                      |     v1 = *((s0 + 1));
                                                 | label_65:
    0x0002d33c lw v1, (a0)                       |     v1 = *(a0);
                                                 |     if (v1 == 0) {
                                                 | label_64:
    0x0002d340 beql v1, zero, 0x2d478            |         goto label_152;
                                                 |     }
    0x0002d344 lw v1, 4(a0)                      |     v1 = *((a0 + 1));
    0x0002d348 lb v1, (v1)                       |     v1 = *(v1);
                                                 |     if (v1 < 0) {
    0x0002d34c bltzl v1, 0x2d478                 |         goto label_152;
                                                 |     }
    0x0002d350 lw v1, 4(a0)                      |     v1 = *((a0 + 1));
    0x0002d354 slti v1, v1, 7                    |     v1 = (v1 < 7) ? 1 : 0;
    0x0002d358 xori v1, v1, 1                    |     v1 ^= 1;
                                                 | label_59:
    0x0002d35c addiu v1, zero, 0x190             |     v1 = aav.0x00000190;
                                                 |     if (v1 == 0) {
    0x0002d360 beqz v1, 0x2ce08                  |         goto label_24;
                                                 |     }
    0x0002d364 lw v0, -0x7fac(gp)                |     v0 = *(gp);
    0x0002d368 lw t9, -0x7f08(gp)                |     t9 = sym.ap_log_rerror_;
                                                 |     /* str.AH03448:_HTTP_Request_Line__Excess_whitespace__disallowed_by_HttpProtocolOptions_Strict_ */
    0x0002d36c addiu v0, v0, -0x5660             |     v0 += -0x5660;
    0x0002d370 sw v0, 0x18(sp)                   |     *(var_18h) = v0;
    0x0002d374 sw s0, 0x14(sp)                   |     *(var_14h) = s0;
    0x0002d378 sw zero, 0x10(sp)                 |     *(var_10h) = 0;
    0x0002d37c addiu a3, zero, 7                 |     a3 = 7;
    0x0002d380 move a2, zero                     |     a2 = 0;
    0x0002d384 addiu a1, zero, 0x3a0             |     a1 = aav.0x000003a0;
    0x0002d388 b 0x2cdf0                         |     goto label_38;
                                                 | label_146:
    0x0002d38c slti v1, v1, 7                    |     v1 = (v1 < 7) ? 1 : 0;
    0x0002d390 xori v1, v1, 1                    |     v1 ^= 1;
    0x0002d394 b 0x2d1f0                         |     goto label_39;
                                                 | label_145:
    0x0002d398 lw a0, 0x60(v1)                   |     a0 = *((v1 + 24));
    0x0002d39c lw v1, (a0)                       |     v1 = *(a0);
                                                 |     if (a0 == 0) {
    0x0002d3a0 bnel a0, zero, 0x2d1d4            |         goto label_40;
                                                 |     }
    0x0002d3a4 lw a0, 8(s0)                      |     a0 = *((s0 + 2));
    0x0002d3a8 addiu a0, a0, 0x10                |     a0 += 0x10;
    0x0002d3ac b 0x2d1d0                         |     goto label_41;
                                                 | label_132:
    0x0002d3b0 slti v1, v1, 7                    |     v1 = (v1 < 7) ? 1 : 0;
    0x0002d3b4 xori v1, v1, 1                    |     v1 ^= 1;
    0x0002d3b8 b 0x2cdc4                         |     goto label_42;
                                                 | label_131:
    0x0002d3bc lw a0, 0x60(v1)                   |     a0 = *((v1 + 24));
    0x0002d3c0 lw v1, (a0)                       |     v1 = *(a0);
                                                 |     if (a0 == 0) {
    0x0002d3c4 bnel a0, zero, 0x2cda8            |         goto label_43;
                                                 |     }
    0x0002d3c8 lw a0, 8(s0)                      |     a0 = *((s0 + 2));
    0x0002d3cc addiu a0, a0, 0x10                |     a0 += 0x10;
    0x0002d3d0 b 0x2cda4                         |     goto label_44;
                                                 | label_141:
    0x0002d3d4 lw a0, 0x60(v1)                   |     a0 = *((v1 + 24));
    0x0002d3d8 lw v1, (a0)                       |     v1 = *(a0);
                                                 |     if (a0 == 0) {
    0x0002d3dc bnel a0, zero, 0x2d044            |         goto label_45;
                                                 |     }
    0x0002d3e0 lw a0, 8(s0)                      |     a0 = *((s0 + 2));
    0x0002d3e4 addiu a0, a0, 0x10                |     a0 += 0x10;
    0x0002d3e8 b 0x2d040                         |     goto label_46;
                                                 | label_119:
    0x0002d3ec lw a0, 0x60(v1)                   |     a0 = *((v1 + 24));
    0x0002d3f0 lw v1, (a0)                       |     v1 = *(a0);
                                                 |     if (a0 == 0) {
    0x0002d3f4 bnel a0, zero, 0x2cb0c            |         goto label_47;
                                                 |     }
    0x0002d3f8 lw a0, 8(s0)                      |     a0 = *((s0 + 2));
    0x0002d3fc addiu a0, a0, 0x10                |     a0 += 0x10;
    0x0002d400 b 0x2cb08                         |     goto label_48;
                                                 | label_134:
    0x0002d404 lw v1, 0x60(v0)                   |     v1 = *((v0 + 24));
    0x0002d408 lw v0, (v1)                       |     v0 = *(v1);
                                                 |     if (v1 == 0) {
    0x0002d40c bnel v1, zero, 0x2cec8            |         goto label_49;
                                                 |     }
    0x0002d410 lw v1, 8(s0)                      |     v1 = *((s0 + 2));
    0x0002d414 addiu v1, v1, 0x10                |     v1 += 0x10;
    0x0002d418 b 0x2cec4                         |     goto label_50;
                                                 | label_138:
    0x0002d41c slti v0, v0, 7                    |     v0 = (v0 < 7) ? 1 : 0;
    0x0002d420 xori v0, v0, 1                    |     v0 ^= 1;
    0x0002d424 b 0x2cf8c                         |     goto label_51;
                                                 | label_148:
    0x0002d428 slti v1, v1, 7                    |     v1 = (v1 < 7) ? 1 : 0;
    0x0002d42c xori v1, v1, 1                    |     v1 ^= 1;
    0x0002d430 b 0x2d2b4                         |     goto label_52;
                                                 | label_128:
    0x0002d434 slti v1, v1, 7                    |     v1 = (v1 < 7) ? 1 : 0;
    0x0002d438 xori v1, v1, 1                    |     v1 ^= 1;
    0x0002d43c b 0x2cb74                         |     goto label_53;
                                                 | label_108:
    0x0002d440 addiu v0, zero, 0x50              |     v0 = 0x50;
    0x0002d444 b 0x2c828                         |     goto label_54;
                                                 | label_137:
    0x0002d448 lw v1, 0x60(v0)                   |     v1 = *((v0 + 24));
    0x0002d44c lw v0, (v1)                       |     v0 = *(v1);
                                                 |     if (v1 == 0) {
    0x0002d450 bnel v1, zero, 0x2cf70            |         goto label_55;
                                                 |     }
    0x0002d454 lw v1, 8(s0)                      |     v1 = *((s0 + 2));
    0x0002d458 addiu v1, v1, 0x10                |     v1 += 0x10;
    0x0002d45c b 0x2cf6c                         |     goto label_56;
                                                 | label_147:
    0x0002d460 lw a0, 0x60(v1)                   |     a0 = *((v1 + 24));
    0x0002d464 lw v1, (a0)                       |     v1 = *(a0);
                                                 |     if (a0 == 0) {
    0x0002d468 bnel a0, zero, 0x2d298            |         goto label_57;
                                                 |     }
    0x0002d46c lw a0, 8(s0)                      |     a0 = *((s0 + 2));
    0x0002d470 addiu a0, a0, 0x10                |     a0 += 0x10;
    0x0002d474 b 0x2d294                         |     goto label_58;
                                                 | label_152:
    0x0002d478 slti v1, v1, 7                    |     v1 = (v1 < 7) ? 1 : 0;
    0x0002d47c xori v1, v1, 1                    |     v1 ^= 1;
    0x0002d480 b 0x2d35c                         |     goto label_59;
                                                 | label_127:
    0x0002d484 lw a0, 0x60(v1)                   |     a0 = *((v1 + 24));
    0x0002d488 lw v1, (a0)                       |     v1 = *(a0);
                                                 |     if (a0 == 0) {
    0x0002d48c bnel a0, zero, 0x2cb58            |         goto label_60;
                                                 |     }
    0x0002d490 lw a0, 8(s0)                      |     a0 = *((s0 + 2));
    0x0002d494 addiu a0, a0, 0x10                |     a0 += 0x10;
    0x0002d498 b 0x2cb54                         |     goto label_61;
                                                 | label_143:
    0x0002d49c addiu v0, zero, 0x50              |     v0 = 0x50;
    0x0002d4a0 b 0x2d094                         |     goto label_62;
                                                 | label_115:
    0x0002d4a4 lw v1, 0x108(s0)                  |     v1 = *(s0);
                                                 |     if (v1 == 0) {
    0x0002d4a8 beql v1, zero, 0x2d6ac            |         goto label_153;
                                                 |     }
    0x0002d4ac lw v0, 4(s0)                      |     v0 = *((s0 + 1));
                                                 | label_74:
    0x0002d4b0 lw v0, (v1)                       |     v0 = *(v1);
                                                 |     if (v0 == 0) {
                                                 | label_73:
    0x0002d4b4 beql v0, zero, 0x2d674            |         goto label_154;
                                                 |     }
    0x0002d4b8 lw v0, 4(v1)                      |     v0 = *((v1 + 1));
    0x0002d4bc lb v0, (v0)                       |     v0 = *(v0);
                                                 |     if (v0 < 0) {
    0x0002d4c0 bltzl v0, 0x2d674                 |         goto label_154;
                                                 |     }
    0x0002d4c4 lw v0, 4(v1)                      |     v0 = *((v1 + 1));
    0x0002d4c8 slti v0, v0, 7                    |     v0 = (v0 < 7) ? 1 : 0;
    0x0002d4cc xori v0, v0, 1                    |     v0 ^= 1;
                                                 | label_68:
    0x0002d4d0 addiu v0, zero, 0x190             |     v0 = aav.0x00000190;
                                                 |     if (v0 == 0) {
    0x0002d4d4 beqz v0, 0x2d280                  |         goto label_63;
                                                 |     }
    0x0002d4d8 lw v0, -0x7fac(gp)                |     v0 = *(gp);
    0x0002d4dc lw t9, -0x7f08(gp)                |     t9 = sym.ap_log_rerror_;
                                                 |     /* str.AH02401:_HTTP_Request_Line__Rejected_HTTP_0.9_request */
    0x0002d4e0 addiu v0, v0, -0x55a8             |     v0 += -0x55a8;
    0x0002d4e4 sw v0, 0x18(sp)                   |     *(var_18h) = v0;
    0x0002d4e8 sw s0, 0x14(sp)                   |     *(var_14h) = s0;
    0x0002d4ec sw zero, 0x10(sp)                 |     *(var_10h) = 0;
    0x0002d4f0 addiu a3, zero, 7                 |     a3 = 7;
    0x0002d4f4 move a2, zero                     |     a2 = 0;
    0x0002d4f8 addiu a1, zero, 0x3a8             |     a1 = aav.0x000003a8;
    0x0002d4fc b 0x2cdf0                         |     goto label_38;
                                                 | label_151:
    0x0002d500 lw a0, 0x60(v1)                   |     a0 = *((v1 + 24));
    0x0002d504 lw v1, (a0)                       |     v1 = *(a0);
                                                 |     if (a0 == 0) {
    0x0002d508 bnel a0, zero, 0x2d340            |         goto label_64;
                                                 |     }
    0x0002d50c lw a0, 8(s0)                      |     a0 = *((s0 + 2));
    0x0002d510 addiu a0, a0, 0x10                |     a0 += 0x10;
    0x0002d514 b 0x2d33c                         |     goto label_65;
                                                 | label_150:
    0x0002d518 addiu v1, zero, 6                 |     v1 = 6;
                                                 |     if (s5 == v1) {
    0x0002d51c beq s5, v1, 0x2d5d4               |         goto label_155;
                                                 |     }
    0x0002d520 addiu v1, zero, 0x190             |     v1 = aav.0x00000190;
                                                 |     if (s5 != v1) {
    0x0002d524 bne s5, v1, 0x2ce08               |         goto label_24;
                                                 |     }
    0x0002d528 lw a0, 0x108(s0)                  |     a0 = *(s0);
                                                 |     if (a0 == 0) {
    0x0002d52c beql a0, zero, 0x2d6cc            |         goto label_156;
                                                 |     }
    0x0002d530 lw v1, 4(s0)                      |     v1 = *((s0 + 1));
                                                 | label_77:
    0x0002d534 lw v1, (a0)                       |     v1 = *(a0);
                                                 |     if (v1 == 0) {
                                                 | label_76:
    0x0002d538 beql v1, zero, 0x2d698            |         goto label_157;
                                                 |     }
    0x0002d53c lw v1, 4(a0)                      |     v1 = *((a0 + 1));
    0x0002d540 lb v1, (v1)                       |     v1 = *(v1);
                                                 |     if (v1 < 0) {
    0x0002d544 bltzl v1, 0x2d698                 |         goto label_157;
                                                 |     }
    0x0002d548 lw v1, 4(a0)                      |     v1 = *((a0 + 1));
    0x0002d54c slti v1, v1, 7                    |     v1 = (v1 < 7) ? 1 : 0;
    0x0002d550 xori v1, v1, 1                    |     v1 ^= 1;
                                                 | label_71:
    0x0002d554 addiu v1, zero, 0x190             |     v1 = aav.0x00000190;
                                                 |     if (v1 == 0) {
    0x0002d558 beqz v1, 0x2ce08                  |         goto label_24;
                                                 |     }
    0x0002d55c lw s1, 0x2c(s0)                   |     s1 = *((s0 + 11));
    0x0002d560 lw t9, -0x72b8(gp)                |     t9 = sym.imp.strchr;
    0x0002d564 addiu a1, zero, 0x3a              |     a1 = 0x3a;
    0x0002d568 move a0, s1                       |     a0 = s1;
    0x0002d56c jalr t9                           |     t9 ();
    0x0002d570 lw gp, 0x28(sp)                   |     gp = *(var_28h);
                                                 |     if (v0 == 0) {
    0x0002d574 beqz v0, 0x2d6ec                  |         goto label_158;
                                                 |     }
    0x0002d578 subu v0, v0, s1                   |     __asm ("subu v0, v0, s1");
    0x0002d57c slti a0, v0, 0x51                 |     a0 = (v0 < 0x51) ? 1 : 0;
    0x0002d580 addiu v1, zero, 0x50              |     v1 = 0x50;
                                                 |     if (a0 != 0) {
    0x0002d584 movz v0, v1, a0                   |         v0 = v1;
                                                 |     }
                                                 | label_79:
    0x0002d588 sw v0, 0x1c(sp)                   |     *(var_1ch) = v0;
    0x0002d58c lw v0, -0x7fac(gp)                |     v0 = *(gp);
    0x0002d590 lw a0, -0x7fac(gp)                |     a0 = *(gp);
    0x0002d594 lw t9, -0x7f08(gp)                |     t9 = sym.ap_log_rerror_;
                                                 |     /* str.AH02418:_HTTP_Request_Line__Unrecognized_protocol__.s__perhaps_whitespace_was_injected__ */
    0x0002d598 addiu v0, v0, -0x5570             |     v0 += -0x5570;
    0x0002d59c sw v0, 0x18(sp)                   |     *(var_18h) = v0;
    0x0002d5a0 sw s1, 0x20(sp)                   |     *(var_20h) = s1;
    0x0002d5a4 sw s0, 0x14(sp)                   |     *(var_14h) = s0;
    0x0002d5a8 sw zero, 0x10(sp)                 |     *(var_10h) = 0;
    0x0002d5ac addiu a3, zero, 7                 |     a3 = 7;
    0x0002d5b0 move a2, zero                     |     a2 = 0;
    0x0002d5b4 addiu a1, zero, 0x3ad             |     a1 = 0x3ad;
                                                 |     /* str._usr_src_debug_apache2_2.4.57_r0_httpd_2.4.57_server_protocol.c */
    0x0002d5b8 addiu a0, a0, -0x5ed4             |     a0 += -0x5ed4;
    0x0002d5bc jalr t9                           |     t9 ();
    0x0002d5c0 addiu v1, zero, 0x190             |     v1 = aav.0x00000190;
    0x0002d5c4 lw gp, 0x28(sp)                   |     gp = *(var_28h);
    0x0002d5c8 lw v0, 0x28(s0)                   |     v0 = *((s0 + 10));
    0x0002d5cc sw v1, 0x44(s0)                   |     *((s0 + 17)) = v1;
    0x0002d5d0 b 0x2ce0c                         |     goto label_27;
                                                 | label_155:
    0x0002d5d4 lw a0, 0x108(s0)                  |     a0 = *(s0);
                                                 |     if (a0 == 0) {
    0x0002d5d8 beql a0, zero, 0x2d680            |         goto label_159;
                                                 |     }
    0x0002d5dc lw v1, 4(s0)                      |     v1 = *((s0 + 1));
                                                 | label_70:
    0x0002d5e0 lw v1, (a0)                       |     v1 = *(a0);
                                                 |     if (v1 == 0) {
                                                 | label_69:
    0x0002d5e4 beql v1, zero, 0x2d660            |         goto label_160;
                                                 |     }
    0x0002d5e8 lw v1, 4(a0)                      |     v1 = *((a0 + 1));
    0x0002d5ec lb v1, (v1)                       |     v1 = *(v1);
                                                 |     if (v1 < 0) {
    0x0002d5f0 bltzl v1, 0x2d660                 |         goto label_160;
                                                 |     }
    0x0002d5f4 lw v1, 4(a0)                      |     v1 = *((a0 + 1));
    0x0002d5f8 slti v1, v1, 7                    |     v1 = (v1 < 7) ? 1 : 0;
    0x0002d5fc xori v1, v1, 1                    |     v1 ^= 1;
                                                 | label_66:
    0x0002d600 addiu v1, zero, 0x190             |     v1 = aav.0x00000190;
                                                 |     if (v1 == 0) {
    0x0002d604 beqz v1, 0x2ce08                  |         goto label_24;
                                                 |     }
    0x0002d608 lw t9, -0x72b8(gp)                |     t9 = sym.imp.strchr;
    0x0002d60c addiu a1, zero, 0x3a              |     a1 = 0x3a;
    0x0002d610 move a0, s6                       |     a0 = s6;
    0x0002d614 jalr t9                           |     t9 ();
    0x0002d618 lw gp, 0x28(sp)                   |     gp = *(var_28h);
                                                 |     if (v0 == 0) {
    0x0002d61c beqz v0, 0x2d6e4                  |         goto label_161;
                                                 |     }
    0x0002d620 subu v0, v0, s6                   |     __asm ("subu v0, v0, s6");
    0x0002d624 slti a0, v0, 0x51                 |     a0 = (v0 < 0x51) ? 1 : 0;
    0x0002d628 addiu v1, zero, 0x50              |     v1 = 0x50;
                                                 |     if (a0 != 0) {
    0x0002d62c movz v0, v1, a0                   |         v0 = v1;
                                                 |     }
                                                 | label_78:
    0x0002d630 sw v0, 0x1c(sp)                   |     *(var_1ch) = v0;
    0x0002d634 lw v0, -0x7fac(gp)                |     v0 = *(gp);
    0x0002d638 lw t9, -0x7f08(gp)                |     t9 = sym.ap_log_rerror_;
                                                 |     /* str.AH03449:_HTTP_Request_Line__Extraneous_text_found__.s__perhaps_whitespace_was_injected__ */
    0x0002d63c addiu v0, v0, -0x5604             |     v0 += -0x5604;
    0x0002d640 sw s6, 0x20(sp)                   |     *(var_20h) = s6;
    0x0002d644 sw v0, 0x18(sp)                   |     *(var_18h) = v0;
    0x0002d648 sw s0, 0x14(sp)                   |     *(var_14h) = s0;
    0x0002d64c sw zero, 0x10(sp)                 |     *(var_10h) = 0;
    0x0002d650 addiu a3, zero, 7                 |     a3 = 7;
    0x0002d654 move a2, zero                     |     a2 = 0;
    0x0002d658 addiu a1, zero, 0x3a5             |     a1 = 0x3a5;
    0x0002d65c b 0x2d0c0                         |     goto label_35;
                                                 | label_160:
    0x0002d660 slti v1, v1, 7                    |     v1 = (v1 < 7) ? 1 : 0;
    0x0002d664 xori v1, v1, 1                    |     v1 ^= 1;
    0x0002d668 b 0x2d600                         |     goto label_66;
                                                 | label_136:
    0x0002d66c addiu v0, zero, 0x50              |     v0 = 0x50;
    0x0002d670 b 0x2cf24                         |     goto label_67;
                                                 | label_154:
    0x0002d674 slti v0, v0, 7                    |     v0 = (v0 < 7) ? 1 : 0;
    0x0002d678 xori v0, v0, 1                    |     v0 ^= 1;
    0x0002d67c b 0x2d4d0                         |     goto label_68;
                                                 | label_159:
    0x0002d680 lw a0, 0x60(v1)                   |     a0 = *((v1 + 24));
    0x0002d684 lw v1, (a0)                       |     v1 = *(a0);
                                                 |     if (a0 == 0) {
    0x0002d688 bnel a0, zero, 0x2d5e4            |         goto label_69;
                                                 |     }
    0x0002d68c lw a0, 8(s0)                      |     a0 = *((s0 + 2));
    0x0002d690 addiu a0, a0, 0x10                |     a0 += 0x10;
    0x0002d694 b 0x2d5e0                         |     goto label_70;
                                                 | label_157:
    0x0002d698 slti v1, v1, 7                    |     v1 = (v1 < 7) ? 1 : 0;
    0x0002d69c xori v1, v1, 1                    |     v1 ^= 1;
    0x0002d6a0 b 0x2d554                         |     goto label_71;
                                                 | label_139:
    0x0002d6a4 addiu v0, zero, 0x50              |     v0 = 0x50;
    0x0002d6a8 b 0x2cfc0                         |     goto label_72;
                                                 | label_153:
    0x0002d6ac lw v1, 0x60(v0)                   |     v1 = *((v0 + 24));
    0x0002d6b0 lw v0, (v1)                       |     v0 = *(v1);
                                                 |     if (v1 == 0) {
    0x0002d6b4 bnel v1, zero, 0x2d4b4            |         goto label_73;
                                                 |     }
    0x0002d6b8 lw v1, 8(s0)                      |     v1 = *((s0 + 2));
    0x0002d6bc addiu v1, v1, 0x10                |     v1 += 0x10;
    0x0002d6c0 b 0x2d4b0                         |     goto label_74;
                                                 | label_149:
    0x0002d6c4 addiu v0, zero, 0x50              |     v0 = 0x50;
    0x0002d6c8 b 0x2d2e8                         |     goto label_75;
                                                 | label_156:
    0x0002d6cc lw a0, 0x60(v1)                   |     a0 = *((v1 + 24));
    0x0002d6d0 lw v1, (a0)                       |     v1 = *(a0);
                                                 |     if (a0 == 0) {
    0x0002d6d4 bnel a0, zero, 0x2d538            |         goto label_76;
                                                 |     }
    0x0002d6d8 lw a0, 8(s0)                      |     a0 = *((s0 + 2));
    0x0002d6dc addiu a0, a0, 0x10                |     a0 += 0x10;
    0x0002d6e0 b 0x2d534                         |     goto label_77;
                                                 | label_161:
    0x0002d6e4 addiu v0, zero, 0x50              |     v0 = 0x50;
    0x0002d6e8 b 0x2d630                         |     goto label_78;
                                                 | label_158:
    0x0002d6ec addiu v0, zero, 0x50              |     v0 = 0x50;
    0x0002d6f0 b 0x2d588                         |     goto label_79;
                                                 | }
    ; assembly                                       | /* r2dec pseudo code output */
                                                     | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x4dbe4 */
                                                     | #include <stdint.h>
                                                     |  
    ; (fcn) sym.ap_process_fnmatch_configs ()        | void ap_process_fnmatch_configs () {
    0x0004dbe4 lui gp, 5                             |     
    0x0004dbe8 addiu gp, gp, 0x533c                  |     
    0x0004dbec addu gp, gp, t9                       |     gp += t9;
    0x0004dbf0 lw v0, -0x7f90(gp)                    |     v0 = *(gp);
    0x0004dbf4 addiu sp, sp, -0xc8                   |     
    0x0004dbf8 addiu t1, zero, 3                     |     t1 = 3;
    0x0004dbfc lw v0, (v0)                           |     v0 = *(v0);
    0x0004dc00 sw s2, 0xbc(sp)                       |     *(var_bch) = s2;
    0x0004dc04 lw s2, -0x7534(gp)                    |     s2 = *(gp);
    0x0004dc08 lw t0, 8(v0)                          |     t0 = *((v0 + 2));
    0x0004dc0c lw v0, 0xdc(sp)                       |     v0 = *(arg_dch);
    0x0004dc10 lw v1, (s2)                           |     v1 = *(s2);
    0x0004dc14 sw s3, 0xc0(sp)                       |     *(var_c0h) = s3;
    0x0004dc18 move s3, a3                           |     s3 = a3;
    0x0004dc1c addiu a3, zero, 2                     |     a3 = 2;
                                                     |     if (v0 == 0) {
    0x0004dc20 movn a3, t1, v0                       |         a3 = t1;
                                                     |     }
    0x0004dc24 lw v0, -0x7a1c(gp)                    |     v0 = *(gp);
    0x0004dc28 sw v1, 0xac(sp)                       |     *(var_ach) = v1;
    0x0004dc2c lw v1, -0x7fac(gp)                    |     v1 = *(gp);
    0x0004dc30 addiu v0, v0, -0x2464                 |     v0 += -0x2464;
    0x0004dc34 sw s1, 0xb8(sp)                       |     *(var_b8h) = s1;
    0x0004dc38 lw s1, 0xd8(sp)                       |     s1 = *(arg_d8h);
    0x0004dc3c sw gp, 0x10(sp)                       |     *(var_10h) = gp;
                                                     |     /* str.Include_IncludeOptional:_ */
    0x0004dc40 addiu v1, v1, 0x8fc                   |     v1 += 0x8fc;
    0x0004dc44 sw v0, 0x30(sp)                       |     *(var_30h) = v0;
    0x0004dc48 addiu v0, sp, 0x1c                    |     v0 = sp + 0x1c;
    0x0004dc4c sw s0, 0xb4(sp)                       |     *(var_b4h) = s0;
    0x0004dc50 sw ra, 0xc4(sp)                       |     *(var_c4h) = ra;
    0x0004dc54 move s0, a1                           |     s0 = a1;
    0x0004dc58 sw a0, 0x1c(sp)                       |     *(var_1ch) = a0;
    0x0004dc5c sw a2, 0x20(sp)                       |     *(var_20h) = a2;
    0x0004dc60 sw v1, 0x2c(sp)                       |     *(var_2ch) = v1;
    0x0004dc64 sw s3, 0x24(sp)                       |     *(var_24h) = s3;
    0x0004dc68 sw s1, 0x28(sp)                       |     *(var_28h) = s1;
    0x0004dc6c sw a3, 0x38(sp)                       |     *(var_38h) = a3;
    0x0004dc70 sw v0, 0x34(sp)                       |     *(var_34h) = v0;
    0x0004dc74 sw zero, 0x3c(sp)                     |     *(var_3ch) = 0;
                                                     |     if (t0 != 0) {
    0x0004dc78 bnez t0, 0x4dd14                      |         goto label_2;
                                                     |     }
    0x0004dc7c lw v0, -0x7f88(gp)                    |     v0 = *(gp);
    0x0004dc80 lw v0, (v0)                           |     v0 = *(v0);
    0x0004dc84 lw v0, 8(v0)                          |     v0 = *((v0 + 2));
    0x0004dc88 lw a1, -0x7fac(gp)                    |     a1 = *(gp);
    0x0004dc8c bnez v0, 0x4dd18                      |     
                                                     |     while (v0 != 0) {
                                                     | label_0:
    0x0004dc90 lw t9, -0x7604(gp)                    |         t9 = sym.imp.apr_fnmatch_test;
    0x0004dc94 move a0, s0                           |         a0 = s0;
    0x0004dc98 jalr t9                               |         t9 ();
    0x0004dc9c lw gp, 0x10(sp)                       |         gp = *(var_10h);
                                                     |         if (v0 == 0) {
    0x0004dca0 beqz v0, 0x4dd6c                      |             goto label_3;
                                                     |         }
    0x0004dca4 lw t9, -0x7518(gp)                    |         t9 = *(gp);
    0x0004dca8 move a3, s1                           |         a3 = s1;
    0x0004dcac addiu a2, zero, 0x20                  |         a2 = 0x20;
    0x0004dcb0 addiu a1, sp, 0x40                    |         a1 = sp + 0x40;
    0x0004dcb4 addiu a0, sp, 0x18                    |         a0 = sp + 0x18;
    0x0004dcb8 sw s0, 0x40(sp)                       |         *(var_40h_2) = s0;
    0x0004dcbc jalr t9                               |         t9 ();
    0x0004dcc0 addiu v1, zero, 0x4e35                |         v1 = 0x4e35;
    0x0004dcc4 lw gp, 0x10(sp)                       |         gp = *(var_10h);
                                                     |         if (v0 == v1) {
    0x0004dcc8 beq v0, v1, 0x4dda8                   |             goto label_4;
                                                     |         }
    0x0004dccc addiu v1, zero, 0x4e38                |         v1 = 0x4e38;
    0x0004dcd0 lw t9, -0x7e7c(gp)                    |         t9 = sym.ap_dir_fnmatch;
                                                     |         if (v0 == v1) {
    0x0004dcd4 beq v0, v1, 0x4dd84                   |             goto label_5;
                                                     |         }
    0x0004dcd8 lw a2, 0x40(sp)                       |         a2 = *(var_40h_2);
    0x0004dcdc lw a1, 0x18(sp)                       |         a1 = *(var_18h_3);
    0x0004dce0 addiu a0, sp, 0x24                    |         a0 = sp + 0x24;
    0x0004dce4 jalr t9                               |         t9 ();
    0x0004dce8 lw gp, 0x10(sp)                       |         gp = *(var_10h);
                                                     | label_1:
    0x0004dcec lw a0, 0xac(sp)                       |         a0 = *(var_ach);
    0x0004dcf0 lw v1, (s2)                           |         v1 = *(s2);
    0x0004dcf4 lw ra, 0xc4(sp)                       |         ra = *(var_c4h);
                                                     |         if (a0 != v1) {
    0x0004dcf8 bne a0, v1, 0x4ddcc                   |             goto label_6;
                                                     |         }
    0x0004dcfc lw s3, 0xc0(sp)                       |         s3 = *(var_c0h);
    0x0004dd00 lw s2, 0xbc(sp)                       |         s2 = *(var_bch);
    0x0004dd04 lw s1, 0xb8(sp)                       |         s1 = *(var_b8h);
    0x0004dd08 lw s0, 0xb4(sp)                       |         s0 = *(var_b4h);
    0x0004dd0c addiu sp, sp, 0xc8                    |         
    0x0004dd10 jr ra                                 |         return v0;
                                                     | label_2:
    0x0004dd14 lw a1, -0x7fac(gp)                    |         a1 = *(gp);
    0x0004dd18 lw t9, -0x7e50(gp)                    |         t9 = sym.ap_server_root_relative;
                                                     |         /* str._run_apache2_httpd.conf */
    0x0004dd1c addiu a1, a1, -0x7f2c                 |         a1 += -0x7f2c;
    0x0004dd20 move a0, s1                           |         a0 = s1;
    0x0004dd24 bal 0x4d3e0                           |         sym_ap_server_root_relative ();
    0x0004dd28 lw gp, 0x10(sp)                       |         gp = *(var_10h);
    0x0004dd2c move a1, v0                           |         a1 = v0;
    0x0004dd30 lw t9, -0x7740(gp)                    |         t9 = sym.imp.strcmp;
    0x0004dd34 move a0, s0                           |         a0 = s0;
    0x0004dd38 jalr t9                               |         t9 ();
    0x0004dd3c lw gp, 0x10(sp)                       |         gp = *(var_10h);
    0x0004dd40 bnez v0, 0x4dc90                      |         
                                                     |     }
    0x0004dd44 lw t9, -0x7250(gp)                    |     t9 = sym.imp.apr_stat;
    0x0004dd48 move a3, s1                           |     a3 = s1;
    0x0004dd4c ori a2, zero, 0x8001                  |     a2 = 0x8001;
    0x0004dd50 move a1, s0                           |     a1 = s0;
    0x0004dd54 addiu a0, sp, 0x40                    |     a0 = sp + 0x40;
    0x0004dd58 jalr t9                               |     t9 ();
    0x0004dd5c lw gp, 0x10(sp)                       |     gp = *(var_10h);
                                                     |     if (v0 == 0) {
    0x0004dd60 beqz v0, 0x4dc90                      |         goto label_0;
                                                     |     }
    0x0004dd64 move v0, zero                         |     v0 = 0;
    0x0004dd68 b 0x4dcec                             |     goto label_1;
                                                     | label_3:
    0x0004dd6c lw t9, -0x7e80(gp)                    |     t9 = sym.ap_dir_nofnmatch;
    0x0004dd70 move a1, s0                           |     a1 = s0;
    0x0004dd74 addiu a0, sp, 0x24                    |     a0 = sp + 0x24;
    0x0004dd78 jalr t9                               |     t9 ();
    0x0004dd7c lw gp, 0x10(sp)                       |     gp = *(var_10h);
    0x0004dd80 b 0x4dcec                             |     goto label_1;
                                                     | label_5:
    0x0004dd84 lw a1, -0x7fac(gp)                    |     a1 = *(gp);
    0x0004dd88 lw t9, -0x76e8(gp)                    |     t9 = sym.imp.apr_pstrcat
    0x0004dd8c move a3, zero                         |     a3 = 0;
    0x0004dd90 move a2, s0                           |     a2 = s0;
                                                     |     /* str.Include_has_a_bad_path__ */
    0x0004dd94 addiu a1, a1, 0x940                   |     a1 += 0x940;
    0x0004dd98 move a0, s3                           |     a0 = s3;
    0x0004dd9c jalr t9                               |     t9 ();
    0x0004dda0 lw gp, 0x10(sp)                       |     gp = *(var_10h);
    0x0004dda4 b 0x4dcec                             |     goto label_1;
                                                     | label_4:
    0x0004dda8 lw a1, -0x7fac(gp)                    |     a1 = *(gp);
    0x0004ddac lw t9, -0x76e8(gp)                    |     t9 = sym.imp.apr_pstrcat
    0x0004ddb0 move a3, zero                         |     a3 = 0;
    0x0004ddb4 move a2, s0                           |     a2 = s0;
                                                     |     /* str.Include_must_have_an_absolute_path__ */
    0x0004ddb8 addiu a1, a1, 0x918                   |     a1 += 0x918;
    0x0004ddbc move a0, s3                           |     a0 = s3;
    0x0004ddc0 jalr t9                               |     t9 ();
    0x0004ddc4 lw gp, 0x10(sp)                       |     gp = *(var_10h);
    0x0004ddc8 b 0x4dcec                             |     goto label_1;
                                                     | label_6:
    0x0004ddcc lw t9, -0x75e8(gp)                    |     t9 = sym.imp.__stack_chk_fail;
    0x0004ddd0 jalr t9                               |     t9 ();
    0x0004ddd4 nop                                   |     
                                                     | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x3acac */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.ap_psignature ()             | void ap_psignature () {
    0x0003acac lui gp, 7                     |     
    0x0003acb0 addiu gp, gp, -0x7d8c         |     
    0x0003acb4 addu gp, gp, t9               |     gp += t9;
    0x0003acb8 addiu sp, sp, -0x80           |     
    0x0003acbc lw v1, 0x100(a1)              |     v1 = *(a1);
    0x0003acc0 sw s1, 0x60(sp)               |     *(var_60h) = s1;
    0x0003acc4 lw s1, -0x7534(gp)            |     s1 = *(gp);
    0x0003acc8 sw s2, 0x64(sp)               |     *(var_64h) = s2;
    0x0003accc lw s2, (v1)                   |     s2 = *(v1);
    0x0003acd0 lw v0, (s1)                   |     v0 = *(s1);
    0x0003acd4 sw gp, 0x38(sp)               |     *(var_38h) = gp;
    0x0003acd8 sw v0, 0x54(sp)               |     *(var_54h) = v0;
    0x0003acdc lw v0, 0x2c(s2)               |     v0 = *((s2 + 11));
    0x0003ace0 sw ra, 0x7c(sp)               |     *(var_7ch) = ra;
    0x0003ace4 sltiu v0, v0, 2               |     v0 = (v0 < 2) ? 1 : 0;
    0x0003ace8 sw s7, 0x78(sp)               |     *(var_78h) = s7;
    0x0003acec sw s6, 0x74(sp)               |     *(var_74h) = s6;
    0x0003acf0 sw s5, 0x70(sp)               |     *(var_70h) = s5;
    0x0003acf4 sw s4, 0x6c(sp)               |     *(var_6ch) = s4;
    0x0003acf8 sw s3, 0x68(sp)               |     *(var_68h) = s3;
    0x0003acfc sw s0, 0x5c(sp)               |     *(var_5ch) = s0;
    0x0003ad00 lw t9, -0x7bd0(gp)            |     t9 = sym.ap_get_server_port;
                                             |     if (v0 != 0) {
    0x0003ad04 bnez v0, 0x3ae10              |         goto label_3;
                                             |     }
    0x0003ad08 move s3, a0                   |     s3 = a0;
    0x0003ad0c move a0, a1                   |     a0 = a1;
    0x0003ad10 move s0, a1                   |     s0 = a1;
    0x0003ad14 bal 0x373d0                   |     sym_ap_get_server_port ();
    0x0003ad18 lw gp, 0x38(sp)               |     gp = *(var_38h);
    0x0003ad1c addiu s5, sp, 0x40            |     s5 = sp + 0x40;
    0x0003ad20 move a3, v0                   |     a3 = v0;
    0x0003ad24 lw a2, -0x7fac(gp)            |     a2 = *(gp);
    0x0003ad28 lw t9, -0x7568(gp)            |     t9 = sym.imp.apr_snprintf;
                                             |     /* esilref: '&u' */
    0x0003ad2c addiu a2, a2, -0x3f20         |     a2 += -0x3f20;
    0x0003ad30 addiu a1, zero, 0x14          |     a1 = 0x14;
    0x0003ad34 move a0, s5                   |     a0 = s5;
    0x0003ad38 jalr t9                       |     t9 ();
    0x0003ad3c lw v1, 0x2c(s2)               |     v1 = *((s2 + 11));
    0x0003ad40 addiu v0, zero, 3             |     v0 = 3;
    0x0003ad44 lw gp, 0x38(sp)               |     gp = *(var_38h);
    0x0003ad48 lw s2, (s0)                   |     s2 = *(s0);
                                             |     if (v1 == v0) {
    0x0003ad4c beq v1, v0, 0x3ae1c           |         goto label_4;
                                             |     }
    0x0003ad50 lw v0, -0x7f14(gp)            |     v0 = *((gp - 8133));
    0x0003ad54 lw s4, -0x3d60(v0)            |     s4 = *((v0 - 3928));
                                             |     if (s4 == 0) {
    0x0003ad58 beql s4, zero, 0x3af00        |         goto label_5;
                                             |     }
    0x0003ad5c lw s4, -0x7fac(gp)            |     s4 = *(gp);
                                             | label_1:
    0x0003ad60 lw t9, -0x7bd4(gp)            |     t9 = sym.ap_get_server_name;
    0x0003ad64 move a0, s0                   |     a0 = s0;
    0x0003ad68 bal 0x37200                   |     sym_ap_get_server_name ();
    0x0003ad6c lw gp, 0x38(sp)               |     gp = *(var_38h);
    0x0003ad70 move a2, zero                 |     a2 = 0;
    0x0003ad74 move a1, v0                   |     a1 = v0;
    0x0003ad78 lw t9, -0x7b94(gp)            |     t9 = sym.ap_escape_html2;
    0x0003ad7c move a0, s2                   |     a0 = s2;
    0x0003ad80 bal 0x1e334                   |     sym_ap_escape_html2 ();
    0x0003ad84 lw gp, 0x38(sp)               |     gp = *(var_38h);
    0x0003ad88 sw v0, 0x14(sp)               |     *(var_14h) = v0;
    0x0003ad8c sw zero, 0x24(sp)             |     *(var_24h) = 0;
    0x0003ad90 lw v1, -0x7fac(gp)            |     v1 = *(gp);
    0x0003ad94 lw v0, -0x7fac(gp)            |     v0 = *(gp);
                                             |     /* str.__address__n */
    0x0003ad98 addiu v1, v1, -0x3284         |     v1 += -0x3284;
    0x0003ad9c sw v1, 0x20(sp)               |     *(var_20h) = v1;
    0x0003ada0 lw v1, -0x7fac(gp)            |     v1 = *(gp);
    0x0003ada4 lw a2, -0x7fac(gp)            |     a2 = *(gp);
    0x0003ada8 lw t9, -0x76e8(gp)            |     t9 = sym.imp.apr_pstrcat
                                             |     /* esilref: ' Port ' */
    0x0003adac addiu v1, v1, -0x3274         |     v1 += -0x3274;
                                             |     /* str._Server_at_ */
    0x0003adb0 addiu v0, v0, -0x3250         |     v0 += -0x3250;
    0x0003adb4 sw s5, 0x1c(sp)               |     *(var_1ch) = s5;
    0x0003adb8 sw v1, 0x18(sp)               |     *(var_18h) = v1;
    0x0003adbc sw v0, 0x10(sp)               |     *(var_10h) = v0;
    0x0003adc0 move a3, s4                   |     a3 = s4;
                                             |     /* str._address_ */
    0x0003adc4 addiu a2, a2, -0x3290         |     a2 += -0x3290;
    0x0003adc8 move a1, s3                   |     a1 = s3;
    0x0003adcc move a0, s2                   |     a0 = s2;
    0x0003add0 jalr t9                       |     t9 ();
    0x0003add4 lw gp, 0x38(sp)               |     gp = *(var_38h);
                                             |     do {
                                             | label_0:
    0x0003add8 lw a0, 0x54(sp)               |         a0 = *(var_54h);
    0x0003addc lw v1, (s1)                   |         v1 = *(s1);
    0x0003ade0 lw ra, 0x7c(sp)               |         ra = *(var_7ch);
                                             |         if (a0 != v1) {
    0x0003ade4 bne a0, v1, 0x3af1c           |             goto label_6;
                                             |         }
    0x0003ade8 lw s7, 0x78(sp)               |         s7 = *(var_78h);
    0x0003adec lw s6, 0x74(sp)               |         s6 = *(var_74h);
    0x0003adf0 lw s5, 0x70(sp)               |         s5 = *(var_70h);
    0x0003adf4 lw s4, 0x6c(sp)               |         s4 = *(var_6ch);
    0x0003adf8 lw s3, 0x68(sp)               |         s3 = *(var_68h);
    0x0003adfc lw s2, 0x64(sp)               |         s2 = *(var_64h);
    0x0003ae00 lw s1, 0x60(sp)               |         s1 = *(var_60h);
    0x0003ae04 lw s0, 0x5c(sp)               |         s0 = *(var_5ch);
    0x0003ae08 addiu sp, sp, 0x80            |         
    0x0003ae0c jr ra                         |         return v0;
                                             | label_3:
    0x0003ae10 lw v0, -0x7fac(gp)            |         v0 = *(gp);
    0x0003ae14 addiu v0, v0, 0x47dc          |         v0 += 0x47dc;
    0x0003ae18 b 0x3add8                     |         
                                             |     } while (1);
                                             | label_4:
    0x0003ae1c lw v0, -0x7f14(gp)            |     v0 = *((gp - 8133));
    0x0003ae20 lw s4, -0x3d60(v0)            |     s4 = *((v0 - 3928));
                                             |     if (s4 == 0) {
    0x0003ae24 beql s4, zero, 0x3af14        |         goto label_7;
                                             |     }
    0x0003ae28 lw s4, -0x7fac(gp)            |     s4 = *(gp);
                                             | label_2:
    0x0003ae2c lw v0, 8(s0)                  |     v0 = *((s0 + 2));
    0x0003ae30 lw t9, -0x7ca8(gp)            |     t9 = sym.ap_is_url;
    0x0003ae34 lw a0, 0x30(v0)               |     a0 = *((v0 + 12));
    0x0003ae38 bal 0x1ece4                   |     sym_ap_is_url ();
    0x0003ae3c lw gp, 0x38(sp)               |     gp = *(var_38h);
                                             |     if (v0 != 0) {
    0x0003ae40 bnez v0, 0x3af08              |         goto label_8;
                                             |     }
    0x0003ae44 lw s6, -0x7fac(gp)            |     s6 = *(gp);
                                             |     /* str.mailto: */
    0x0003ae48 addiu s6, s6, -0x3298         |     s6 += -0x3298;
                                             |     do {
    0x0003ae4c lw v0, 8(s0)                  |         v0 = *((s0 + 2));
    0x0003ae50 lw t9, -0x7b94(gp)            |         t9 = sym.ap_escape_html2;
    0x0003ae54 lw a0, (s0)                   |         a0 = *(s0);
    0x0003ae58 lw a1, 0x30(v0)               |         a1 = *((v0 + 12));
    0x0003ae5c move a2, zero                 |         a2 = 0;
    0x0003ae60 bal 0x1e334                   |         sym_ap_escape_html2 ();
    0x0003ae64 lw gp, 0x38(sp)               |         gp = *(var_38h);
    0x0003ae68 move a0, s0                   |         a0 = s0;
    0x0003ae6c lw s7, (s0)                   |         s7 = *(s0);
    0x0003ae70 lw t9, -0x7bd4(gp)            |         t9 = sym.ap_get_server_name;
    0x0003ae74 move s0, v0                   |         s0 = v0;
    0x0003ae78 bal 0x37200                   |         sym_ap_get_server_name ();
    0x0003ae7c lw gp, 0x38(sp)               |         gp = *(var_38h);
    0x0003ae80 move a2, zero                 |         a2 = 0;
    0x0003ae84 move a1, v0                   |         a1 = v0;
    0x0003ae88 lw t9, -0x7b94(gp)            |         t9 = sym.ap_escape_html2;
    0x0003ae8c move a0, s7                   |         a0 = s7;
    0x0003ae90 bal 0x1e334                   |         sym_ap_escape_html2 ();
    0x0003ae94 lw gp, 0x38(sp)               |         gp = *(var_38h);
    0x0003ae98 sw v0, 0x20(sp)               |         *(var_20h) = v0;
    0x0003ae9c sw zero, 0x30(sp)             |         *(var_30h) = 0;
    0x0003aea0 lw v1, -0x7fac(gp)            |         v1 = *(gp);
    0x0003aea4 lw v0, -0x7fac(gp)            |         v0 = *(gp);
                                             |         /* str.__address__n */
    0x0003aea8 addiu v1, v1, -0x3284         |         v1 += -0x3284;
                                             |         /* esilref: '">' */
    0x0003aeac addiu v0, v0, -0x326c         |         v0 += -aav.0x0000326c;
    0x0003aeb0 sw v1, 0x2c(sp)               |         *(var_2ch) = v1;
    0x0003aeb4 sw v0, 0x1c(sp)               |         *(var_1ch) = v0;
    0x0003aeb8 lw v1, -0x7fac(gp)            |         v1 = *(gp);
    0x0003aebc lw v0, -0x7fac(gp)            |         v0 = *(gp);
    0x0003aec0 lw a2, -0x7fac(gp)            |         a2 = *(gp);
    0x0003aec4 lw t9, -0x76e8(gp)            |         t9 = sym.imp.apr_pstrcat
                                             |         /* str.__a__Port_ */
    0x0003aec8 addiu v1, v1, -0x3278         |         v1 += -0x3278;
                                             |         /* str._Server_at__a_href_ */
    0x0003aecc addiu v0, v0, -0x3268         |         v0 += -0x3268;
    0x0003aed0 sw s5, 0x28(sp)               |         *(var_28h) = s5;
    0x0003aed4 sw v1, 0x24(sp)               |         *(var_24h) = v1;
    0x0003aed8 sw s0, 0x18(sp)               |         *(var_18h) = s0;
    0x0003aedc sw s6, 0x14(sp)               |         *(var_14h) = s6;
    0x0003aee0 sw v0, 0x10(sp)               |         *(var_10h) = v0;
    0x0003aee4 move a3, s4                   |         a3 = s4;
                                             |         /* str._address_ */
    0x0003aee8 addiu a2, a2, -0x3290         |         a2 += -0x3290;
    0x0003aeec move a1, s3                   |         a1 = s3;
    0x0003aef0 move a0, s2                   |         a0 = s2;
    0x0003aef4 jalr t9                       |         t9 ();
    0x0003aef8 lw gp, 0x38(sp)               |         gp = *(var_38h);
    0x0003aefc b 0x3add8                     |         goto label_0;
                                             |         /* str.Apache_2.4.57 */
                                             | label_5:
    0x0003af00 addiu s4, s4, -0x32a8         |         s4 += -0x32a8;
    0x0003af04 b 0x3ad60                     |         goto label_1;
                                             | label_8:
    0x0003af08 lw s6, -0x7fac(gp)            |         s6 = *(gp);
    0x0003af0c addiu s6, s6, 0x47dc          |         s6 += 0x47dc;
    0x0003af10 b 0x3ae4c                     |         
                                             |     } while (1);
                                             |     /* str.Apache_2.4.57 */
                                             | label_7:
    0x0003af14 addiu s4, s4, -0x32a8         |     s4 += -0x32a8;
    0x0003af18 b 0x3ae2c                     |     goto label_2;
                                             | label_6:
    0x0003af1c lw t9, -0x75e8(gp)            |     t9 = sym.imp.__stack_chk_fail;
    0x0003af20 jalr t9                       |     t9 ();
    0x0003af24 nop                           |     
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x267f4 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.ap_regname ()                | void ap_regname () {
    0x000267f4 lui gp, 8                     |     
    0x000267f8 addiu gp, gp, -0x38d4         |     
    0x000267fc addu gp, gp, t9               |     gp += t9;
    0x00026800 addiu sp, sp, -0x48           |     
    0x00026804 lw t9, -0x7510(gp)            |     t9 = sym.imp.pcre_fullinfo;
    0x00026808 sw s6, 0x40(sp)               |     *(var_40h) = s6;
    0x0002680c lw s6, -0x7534(gp)            |     s6 = *(gp);
    0x00026810 sw s1, 0x2c(sp)               |     *(var_2ch) = s1;
    0x00026814 move s1, a0                   |     s1 = a0;
    0x00026818 lw v0, (s6)                   |     v0 = *(s6);
    0x0002681c lw a0, (a0)                   |     a0 = *(a0);
    0x00026820 sw ra, 0x44(sp)               |     *(var_44h) = ra;
    0x00026824 sw gp, 0x10(sp)               |     *(var_10h) = gp;
    0x00026828 sw s5, 0x3c(sp)               |     *(var_3ch) = s5;
    0x0002682c sw s4, 0x38(sp)               |     *(var_38h) = s4;
    0x00026830 sw s0, 0x28(sp)               |     *(var_28h) = s0;
    0x00026834 sw s3, 0x34(sp)               |     *(var_34h) = s3;
    0x00026838 sw s2, 0x30(sp)               |     *(var_30h) = s2;
    0x0002683c move s0, a1                   |     s0 = a1;
    0x00026840 move s4, a2                   |     s4 = a2;
    0x00026844 move a1, zero                 |     a1 = 0;
    0x00026848 addiu a2, zero, 8             |     a2 = 8;
    0x0002684c move s5, a3                   |     s5 = a3;
    0x00026850 sw v0, 0x24(sp)               |     *(var_24h) = v0;
    0x00026854 addiu a3, sp, 0x1c            |     a3 = sp + 0x1c;
    0x00026858 jalr t9                       |     t9 ();
    0x0002685c lw gp, 0x10(sp)               |     gp = *(var_10h);
    0x00026860 lw a0, (s1)                   |     a0 = *(s1);
    0x00026864 addiu a3, sp, 0x20            |     a3 = sp + 0x20;
    0x00026868 lw t9, -0x7510(gp)            |     t9 = sym.imp.pcre_fullinfo;
    0x0002686c addiu a2, zero, 7             |     a2 = 7;
    0x00026870 move a1, zero                 |     a1 = 0;
    0x00026874 jalr t9                       |     t9 ();
    0x00026878 lw gp, 0x10(sp)               |     gp = *(var_10h);
    0x0002687c lw a0, (s1)                   |     a0 = *(s1);
    0x00026880 addiu a3, sp, 0x18            |     a3 = sp + 0x18;
    0x00026884 lw t9, -0x7510(gp)            |     t9 = sym.imp.pcre_fullinfo;
    0x00026888 addiu a2, zero, 9             |     a2 = 9;
    0x0002688c move a1, zero                 |     a1 = 0;
    0x00026890 jalr t9                       |     t9 ();
    0x00026894 lw v0, 0x1c(sp)               |     v0 = *(var_1ch);
    0x00026898 lw gp, 0x10(sp)               |     gp = *(var_10h);
                                             |     if (v0 <= 0) {
    0x0002689c blez v0, 0x26948              |         goto label_3;
                                             |     }
    0x000268a0 move s3, zero                 |     s3 = 0;
    0x000268a4 lw s2, 0x20(sp)               |     s2 = *(var_20h);
                                             | label_0:
    0x000268a8 lw a1, 0x18(sp)               |     a1 = *(var_18h);
    0x000268ac mul v1, s3, s2                |     __asm ("mul v1, s3, s2");
    0x000268b0 lw v0, 8(s0)                  |     v0 = *((s0 + 2));
    0x000268b4 addu s2, v1, a1               |     s2 = v1 + a1;
    0x000268b8 lb s1, (s2)                   |     s1 = *(s2);
    0x000268bc lb v1, 1(s2)                  |     v1 = *((s2 + 1));
    0x000268c0 sll s1, s1, 8                 |     s1 <<= 8;
    0x000268c4 addu s1, s1, v1               |     s1 += v1;
    0x000268c8 slt v0, s1, v0                |     v0 = (s1 < v0) ? 1 : 0;
    0x000268cc sll s1, s1, 2                 |     s1 <<= 2;
                                             |     if (v0 == 0) {
    0x000268d0 bnel v0, zero, 0x268f4        |         goto label_4;
                                             |     }
                                             |     do {
    0x000268d4 lw t9, -0x7324(gp)            |         t9 = sym.imp.apr_array_push;
    0x000268d8 move a0, s0                   |         a0 = s0;
    0x000268dc jalr t9                       |         t9 ();
    0x000268e0 lw v0, 8(s0)                  |         v0 = *((s0 + 2));
    0x000268e4 slt v0, s1, v0                |         v0 = (s1 < v0) ? 1 : 0;
    0x000268e8 lw gp, 0x10(sp)               |         gp = *(var_10h);
    0x000268ec beqz v0, 0x268d4              |         
                                             |     } while (v0 == 0);
    0x000268f0 sll s1, s1, 2                 |     s1 <<= 2;
                                             | label_4:
    0x000268f4 addiu a2, s2, 2               |     a2 = s2 + 2;
                                             |     if (s5 == 0) {
    0x000268f8 beqz s5, 0x2697c              |         goto label_5;
                                             |     }
    0x000268fc lw a0, (s0)                   |     a0 = *(s0);
                                             |     if (s4 == 0) {
    0x00026900 beqz s4, 0x269a8              |         goto label_6;
                                             |     }
    0x00026904 lw t9, -0x76e8(gp)            |     t9 = sym.imp.apr_pstrcat
    0x00026908 move a3, zero                 |     a3 = 0;
    0x0002690c move a1, s4                   |     a1 = s4;
    0x00026910 jalr t9                       |     t9 ();
    0x00026914 lw v1, 0x10(s0)               |     v1 = *((s0 + 4));
    0x00026918 lw gp, 0x10(sp)               |     gp = *(var_10h);
    0x0002691c addu s1, v1, s1               |     s1 = v1 + s1;
    0x00026920 sw v0, (s1)                   |     *(s1) = v0;
                                             | label_2:
    0x00026924 lw t9, -0x7e1c(gp)            |     t9 = sym.ap_str_toupper;
    0x00026928 move a0, v0                   |     a0 = v0;
    0x0002692c bal 0x1eea4                   |     sym_ap_str_toupper ();
    0x00026930 lw gp, 0x10(sp)               |     gp = *(var_10h);
                                             | label_1:
    0x00026934 lw v0, 0x1c(sp)               |     v0 = *(var_1ch);
    0x00026938 addiu s3, s3, 1               |     s3++;
    0x0002693c slt v1, s3, v0                |     v1 = (s3 < v0) ? 1 : 0;
    0x00026940 lw s2, 0x20(sp)               |     s2 = *(var_20h);
                                             |     if (v1 == 0) {
    0x00026944 bnel v1, zero, 0x268a8        |         goto label_0;
                                             |     }
                                             | label_3:
    0x00026948 lw a0, 0x24(sp)               |     a0 = *(var_24h);
    0x0002694c lw v1, (s6)                   |     v1 = *(s6);
    0x00026950 lw ra, 0x44(sp)               |     ra = *(var_44h);
                                             |     if (a0 == v1) {
    0x00026954 bne a0, v1, 0x269d8           |         
    0x00026958 lw s6, 0x40(sp)               |         s6 = *(var_40h);
    0x0002695c lw s5, 0x3c(sp)               |         s5 = *(var_3ch);
    0x00026960 lw s4, 0x38(sp)               |         s4 = *(var_38h);
    0x00026964 lw s3, 0x34(sp)               |         s3 = *(var_34h);
    0x00026968 lw s2, 0x30(sp)               |         s2 = *(var_30h);
    0x0002696c lw s1, 0x2c(sp)               |         s1 = *(var_2ch);
    0x00026970 lw s0, 0x28(sp)               |         s0 = *(var_28h);
    0x00026974 addiu sp, sp, 0x48            |         
    0x00026978 jr ra                         |         return v0;
                                             | label_5:
    0x0002697c lw t9, -0x76e8(gp)            |         t9 = sym.imp.apr_pstrcat
                                             |         if (s4 != 0) {
    0x00026980 beqz s4, 0x269c8              |             
    0x00026984 lw a0, (s0)                   |             a0 = *(s0);
    0x00026988 move a3, zero                 |             a3 = 0;
    0x0002698c move a1, s4                   |             a1 = s4;
    0x00026990 jalr t9                       |             t9 ();
    0x00026994 lw v1, 0x10(s0)               |             v1 = *((s0 + 4));
    0x00026998 lw gp, 0x10(sp)               |             gp = *(var_10h);
    0x0002699c addu s1, v1, s1               |             s1 = v1 + s1;
    0x000269a0 sw v0, (s1)                   |             *(s1) = v0;
    0x000269a4 b 0x26934                     |             goto label_1;
                                             | label_6:
    0x000269a8 lw t9, -0x7654(gp)            |             t9 = sym.imp.apr_pstrdup;
    0x000269ac move a1, a2                   |             a1 = a2;
    0x000269b0 jalr t9                       |             t9 ();
    0x000269b4 lw v1, 0x10(s0)               |             v1 = *((s0 + 4));
    0x000269b8 lw gp, 0x10(sp)               |             gp = *(var_10h);
    0x000269bc addu s1, v1, s1               |             s1 = v1 + s1;
    0x000269c0 sw v0, (s1)                   |             *(s1) = v0;
    0x000269c4 b 0x26924                     |             goto label_2;
                                             |         }
    0x000269c8 lw v0, 0x10(s0)               |         v0 = *((s0 + 4));
    0x000269cc addu s1, v0, s1               |         s1 = v0 + s1;
    0x000269d0 sw a2, (s1)                   |         *(s1) = a2;
    0x000269d4 b 0x26934                     |         goto label_1;
                                             |     }
    0x000269d8 lw t9, -0x75e8(gp)            |     t9 = sym.imp.__stack_chk_fail;
    0x000269dc jalr t9                       |     t9 ();
    0x000269e0 nop                           |     
    0x000269e4 nop                           |     
    0x000269e8 nop                           |     
    0x000269ec nop                           |     
                                             | }
    ; assembly                                   | /* r2dec pseudo code output */
                                                 | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x694fc */
                                                 | #include <stdint.h>
                                                 |  
    ; (fcn) sym.ap_send_error_response ()        | void ap_send_error_response () {
    0x000694fc lui gp, 4                         |     
    0x00069500 addiu gp, gp, -0x65dc             |     
    0x00069504 addu gp, gp, t9                   |     gp += t9;
    0x00069508 addiu sp, sp, -0x60               |     
    0x0006950c sw s4, 0x48(sp)                   |     *(var_48h) = s4;
    0x00069510 lw s4, -0x7534(gp)                |     s4 = *(gp);
    0x00069514 sw s1, 0x3c(sp)                   |     *(var_3ch) = s1;
    0x00069518 lw s1, 0x44(a0)                   |     s1 = *((a0 + 17));
    0x0006951c lw v1, (s4)                       |     v1 = *(s4);
    0x00069520 addiu v0, s1, -0x64               |     v0 = s1 + -0x64;
    0x00069524 sw gp, 0x20(sp)                   |     *(var_20h) = gp;
    0x00069528 sltiu v0, v0, 0x384               |     v0 = (v0 < aav.0x00000384) ? 1 : 0;
    0x0006952c sw s0, 0x38(sp)                   |     *(var_38h) = s0;
    0x00069530 sw ra, 0x5c(sp)                   |     *(var_5ch) = ra;
    0x00069534 sw fp, 0x58(sp)                   |     *(var_58h) = fp;
    0x00069538 sw s7, 0x54(sp)                   |     *(var_54h) = s7;
    0x0006953c sw s6, 0x50(sp)                   |     *(var_50h) = s6;
    0x00069540 sw s5, 0x4c(sp)                   |     *(var_4ch) = s5;
    0x00069544 sw s3, 0x44(sp)                   |     *(var_44h) = s3;
    0x00069548 sw s2, 0x40(sp)                   |     *(var_40h) = s2;
    0x0006954c move s0, a0                       |     s0 = a0;
    0x00069550 sw a1, 0x64(sp)                   |     *(arg_64h) = a1;
    0x00069554 sw v1, 0x34(sp)                   |     *(var_34h) = v1;
    0x00069558 lw t9, -0x7944(gp)                |     t9 = *(gp);
                                                 |     if (v0 == 0) {
    0x0006955c beqz v0, 0x6981c                  |         goto label_10;
                                                 |     }
                                                 |     /* fcn.000673ac */
    0x00069560 addiu t9, t9, 0x73ac              |     t9 += aav.0x000073ac;
    0x00069564 move a0, s1                       |     a0 = s1;
    0x00069568 bal 0x673ac                       |     fcn_000673ac ();
    0x0006956c move s3, v0                       |     s3 = v0;
    0x00069570 lw gp, 0x20(sp)                   |     gp = *(var_20h);
                                                 |     if (v0 < 0) {
    0x00069574 bltz v0, 0x6981c                  |         goto label_10;
                                                 |     }
                                                 | label_0:
    0x00069578 lw s6, -0x7fac(gp)                |     s6 = *(gp);
    0x0006957c lw s2, -0x7f14(gp)                |     s2 = *((gp - 8133));
    0x00069580 lw t9, -0x7668(gp)                |     t9 = sym.imp.apr_table_get;
    0x00069584 lw a0, 0xb4(s0)                   |     a0 = *((s0 + 45));
                                                 |     /* esilref: 'Location' */
    0x00069588 addiu a1, s6, -0x58e8             |     a1 = s6 + -0x58e8;
    0x0006958c jalr t9                           |     t9 ();
    0x00069590 lw a0, 0x11c(s0)                  |     a0 = *(s0);
    0x00069594 lw v1, -0x337c(s2)                |     v1 = *((s2 - 3295));
    0x00069598 lw gp, 0x20(sp)                   |     gp = *(var_20h);
    0x0006959c move s5, v0                       |     s5 = v0;
    0x000695a0 sw zero, 0xfc(s0)                 |     *((s0 + 63)) = 0;
    0x000695a4 sw a0, 0x114(s0)                  |     *(s0) = a0;
                                                 |     if (v1 == 0) {
    0x000695a8 beqz v1, 0x695e4                  |         goto label_11;
                                                 |     }
    0x000695ac lw v0, 8(v1)                      |     v0 = *((v1 + 2));
    0x000695b0 lw fp, 0x10(v1)                   |     fp = *((v1 + 4));
                                                 |     if (v0 <= 0) {
    0x000695b4 blez v0, 0x695e4                  |         goto label_11;
                                                 |     }
    0x000695b8 move s7, zero                     |     s7 = 0;
                                                 |     do {
    0x000695bc lw t9, (fp)                       |         t9 = *(fp);
    0x000695c0 move a0, s0                       |         a0 = s0;
    0x000695c4 jalr t9                           |         t9 ();
    0x000695c8 lw v0, -0x337c(s2)                |         v0 = *((s2 - 3295));
    0x000695cc addiu s7, s7, 1                   |         s7++;
    0x000695d0 lw gp, 0x20(sp)                   |         gp = *(var_20h);
    0x000695d4 lw v0, 8(v0)                      |         v0 = *((v0 + 2));
    0x000695d8 slt v0, s7, v0                    |         v0 = (s7 < v0) ? 1 : 0;
    0x000695dc addiu fp, fp, 0x14                |         fp += 0x14;
    0x000695e0 bnez v0, 0x695bc                  |         
                                                 |     } while (v0 != 0);
                                                 | label_11:
    0x000695e4 addiu v0, zero, 0xcc              |     v0 = 0xcc;
    0x000695e8 addiu v0, zero, 0x130             |     v0 = aav.0x00000130;
                                                 |     if (s1 == v0) {
    0x000695ec beq s1, v0, 0x697b0               |         goto label_12;
                                                 |     }
    0x000695f0 lw t9, -0x7834(gp)                |     t9 = sym.ap_finalize_request_protocol;
                                                 |     if (s1 == v0) {
    0x000695f4 beq s1, v0, 0x697b4               |         goto label_13;
                                                 |     }
    0x000695f8 lw t9, -0x7668(gp)                |     t9 = sym.imp.apr_table_get;
                                                 |     if (s5 == 0) {
    0x000695fc beqz s5, 0x698f4                  |         goto label_14;
                                                 |     }
                                                 | label_6:
    0x00069600 lw v0, 0x1c(s0)                   |     v0 = *((s0 + 7));
    0x00069604 lw t9, -0x7830(gp)                |     t9 = sym.ap_response_code_string;
                                                 |     if (v0 != 0) {
    0x00069608 bnez v0, 0x696c4                  |         goto label_15;
                                                 |     }
    0x0006960c lw v0, 0xb8(s0)                   |     v0 = *((s0 + 46));
    0x00069610 lw a0, 0xb4(s0)                   |     a0 = *((s0 + 45));
    0x00069614 lw t9, -0x7414(gp)                |     t9 = sym.imp.apr_table_clear;
    0x00069618 sw v0, 0xb4(s0)                   |     *((s0 + 45)) = v0;
    0x0006961c sw a0, 0xb8(s0)                   |     *((s0 + 46)) = a0;
    0x00069620 jalr t9                           |     t9 ();
    0x00069624 addiu v0, s1, -0x12c              |     v0 = s1 + -aav.0x0000012c;
    0x00069628 sltiu v0, v0, 0x64                |     v0 = (v0 < 0x64) ? 1 : 0;
    0x0006962c lw gp, 0x20(sp)                   |     gp = *(var_20h);
                                                 |     if (v0 != 0) {
    0x00069630 bnez v0, 0x697fc                  |         goto label_16;
                                                 |     }
    0x00069634 addiu v0, zero, 0xc9              |     v0 = 0xc9;
                                                 |     if (s1 == v0) {
    0x00069638 beq s1, v0, 0x697fc               |         goto label_16;
                                                 |     }
    0x0006963c nop                               |     
                                                 |     do {
                                                 | label_4:
    0x00069640 lw a1, -0x7fac(gp)                |         a1 = *(gp);
    0x00069644 lw t9, -0x7668(gp)                |         t9 = sym.imp.apr_table_get;
    0x00069648 move v0, zero                     |         v0 = 0;
    0x0006964c move v1, zero                     |         v1 = 0;
    0x00069650 lw a0, 0xbc(s0)                   |         a0 = *((s0 + 47));
    0x00069654 sw zero, 0xd0(s0)                 |         *((s0 + 52)) = 0;
    0x00069658 sw zero, 0xcc(s0)                 |         *((s0 + 51)) = 0;
    0x0006965c sw v0, 0x80(s0)                   |         *((s0 + 32)) = v0;
    0x00069660 sw v1, 0x84(s0)                   |         *((s0 + 33)) = v1;
                                                 |         /* str.suppress_error_charset */
    0x00069664 addiu a1, a1, 0x6088              |         a1 += 0x6088;
    0x00069668 jalr t9                           |         t9 ();
    0x0006966c lw gp, 0x20(sp)                   |         gp = *(var_20h);
                                                 |         if (v0 == 0) {
    0x00069670 beqz v0, 0x6990c                  |             goto label_17;
                                                 |         }
    0x00069674 lw v0, 0x104(s0)                  |         v0 = *(s0);
    0x00069678 lw a0, 0xc4(s0)                   |         a0 = *((s0 + 49));
    0x0006967c addiu v1, zero, 1                 |         v1 = 1;
    0x00069680 lw v0, (v0)                       |         v0 = *(v0);
    0x00069684 lw s2, -0x7fac(gp)                |         s2 = *(gp);
    0x00069688 sw v1, 0x1c(v0)                   |         *((v0 + 7)) = v1;
                                                 |         if (a0 == 0) {
    0x0006968c beqz a0, 0x69898                  |             goto label_18;
                                                 |         }
    0x00069690 lw t9, -0x7740(gp)                |         t9 = sym.imp.strcmp;
                                                 |         /* str.text_html */
    0x00069694 addiu a1, s2, -0x5e30             |         a1 = s2 + -0x5e30;
    0x00069698 jalr t9                           |         t9 ();
    0x0006969c lw gp, 0x20(sp)                   |         gp = *(var_20h);
                                                 |         if (v0 != 0) {
    0x000696a0 bnez v0, 0x69898                  |             goto label_18;
                                                 |         }
                                                 | label_3:
    0x000696a4 addiu v0, zero, 0x195             |         v0 = 0x195;
    0x000696a8 addiu v0, zero, 0x1f5             |         v0 = 0x1f5;
                                                 |         if (s1 == v0) {
    0x000696ac beq s1, v0, 0x698bc               |             goto label_19;
                                                 |         }
    0x000696b0 lw t9, -0x7944(gp)                |         t9 = *(gp);
                                                 |         if (s1 == v0) {
    0x000696b4 beq s1, v0, 0x698c0               |             goto label_20;
                                                 |         }
                                                 | label_5:
    0x000696b8 lw v0, 0x24(s0)                   |         v0 = *((s0 + 9));
    0x000696bc lw t9, -0x7830(gp)                |         t9 = sym.ap_response_code_string;
                                                 |         if (v0 == 0) {
    0x000696c0 bnez v0, 0x697b0                  |             
                                                 | label_15:
    0x000696c4 move a1, s3                       |             a1 = s3;
    0x000696c8 move a0, s0                       |             a0 = s0;
    0x000696cc jalr t9                           |             t9 ();
    0x000696d0 lw gp, 0x20(sp)                   |             gp = *(var_20h);
                                                 |             if (v0 != 0) {
    0x000696d4 beqz v0, 0x696e8                  |                 
    0x000696d8 lb a0, (v0)                       |                 a0 = *(v0);
    0x000696dc addiu v1, zero, 0x22              |                 v1 = 0x22;
    0x000696e0 lw t9, -0x74c4(gp)                |                 t9 = sym.imp.strlen;
                                                 |                 if (a0 == v1) {
    0x000696e4 beq a0, v1, 0x69784               |                     goto label_21;
                                                 |                 }
                                                 |             }
    0x000696e8 lw s2, -0x7f14(gp)                |             s2 = *((gp - 8133));
    0x000696ec sll s3, s3, 2                     |             s3 <<= 2;
                                                 |             /* esilref: '100 Continue' */
    0x000696f0 addiu s2, s2, -0x6b60             |             s2 += -0x6b60;
    0x000696f4 lw s6, 0x40(s0)                   |             s6 = *((s0 + 16));
    0x000696f8 lwx s3, s3(s2)                    |             __asm ("lwx s3, s3(s2)");
                                                 |             if (s6 != 0) {
    0x000696fc beqz s6, 0x6971c                  |                 
    0x00069700 lw t9, -0x74c4(gp)                |                 t9 = sym.imp.strlen;
    0x00069704 move a0, s6                       |                 a0 = s6;
    0x00069708 jalr t9                           |                 t9 ();
    0x0006970c move fp, v0                       |                 fp = v0;
    0x00069710 sltiu v0, v0, 3                   |                 v0 = (v0 < 3) ? 1 : 0;
    0x00069714 lw gp, 0x20(sp)                   |                 gp = *(var_20h);
                                                 |                 if (v0 == 0) {
    0x00069718 beqz v0, 0x69824                  |                     goto label_22;
                                                 |                 }
                                                 |             }
                                                 | label_1:
    0x0006971c lw v0, -0x7fac(gp)                |             v0 = *(gp);
                                                 | label_2:
    0x00069720 lw a3, -0x7fac(gp)                |             a3 = *(gp);
    0x00069724 lw a1, -0x7fac(gp)                |             a1 = *(gp);
    0x00069728 lw t9, -0x782c(gp)                |             t9 = sym.ap_rvputs;
    0x0006972c addiu v1, s3, 4                   |             v1 = s3 + 4;
                                                 |             /* str.__h1__n */
    0x00069730 addiu v0, v0, 0x6144              |             v0 += aav.0x00006144;
    0x00069734 move a2, s3                       |             a2 = s3;
    0x00069738 sw zero, 0x18(sp)                 |             *(var_18h_2) = 0;
    0x0006973c sw v0, 0x14(sp)                   |             *(var_14h) = v0;
    0x00069740 sw v1, 0x10(sp)                   |             *(var_10h_2) = v1;
                                                 |             /* str.__title__n__head__body__n_h1_ */
    0x00069744 addiu a3, a3, 0x60e0              |             a3 += 0x60e0;
                                                 |             /* str.__DOCTYPE_HTML_PUBLIC_____IETF__DTD_HTML_2.0__EN___n_html__head__n_title_ */
    0x00069748 addiu a1, a1, 0x60fc              |             a1 += 0x60fc;
    0x0006974c move a0, s0                       |             a0 = s0;
    0x00069750 addiu s1, s1, -0x12c              |             s1 += -aav.0x0000012c;
    0x00069754 jalr t9                           |             t9 ();
    0x00069758 sltiu v0, s1, 0xd4                |             v0 = (s1 < 0xd4) ? 1 : 0;
    0x0006975c lw gp, 0x20(sp)                   |             gp = *(var_20h);
    0x00069760 lw s3, (s0)                       |             s3 = *(s0);
                                                 |             if (v0 == 0) {
    0x00069764 beqz v0, 0x69e44                  |                 goto label_23;
                                                 |             }
    0x00069768 lw v0, -0x7fac(gp)                |             v0 = *(gp);
    0x0006976c sll s1, s1, 2                     |             s1 <<= 2;
    0x00069770 addiu v0, v0, 0x6d90              |             v0 += 0x6d90;
    0x00069774 lwx v0, s1(v0)                    |             __asm ("lwx v0, s1(v0)");
    0x00069778 addu v0, v0, gp                   |             v0 += gp;
    0x0006977c jr v0                             |             v0 ();
    0x00069780 nop                               |             
                                                 | label_21:
    0x00069784 addiu s1, v0, 1                   |             s1 = v0 + 1;
    0x00069788 move a0, s1                       |             a0 = s1;
    0x0006978c jalr t9                           |             t9 ();
    0x00069790 lw gp, 0x20(sp)                   |             gp = *(var_20h);
    0x00069794 move a2, s0                       |             a2 = s0;
    0x00069798 move a1, v0                       |             a1 = v0;
    0x0006979c lw t9, -0x7828(gp)                |             t9 = sym.ap_rwrite;
    0x000697a0 move a0, s1                       |             a0 = s1;
                                                 | label_7:
    0x000697a4 jalr t9                           |             t9 ();
    0x000697a8 nop                               |             
    0x000697ac lw gp, 0x20(sp)                   |             gp = *(var_20h);
                                                 |         }
                                                 | label_12:
    0x000697b0 lw t9, -0x7834(gp)                |         t9 = sym.ap_finalize_request_protocol;
                                                 | label_13:
    0x000697b4 move a0, s0                       |         a0 = s0;
    0x000697b8 jalr t9                           |         t9 ();
    0x000697bc lw v1, 0x34(sp)                   |         v1 = *(var_34h);
    0x000697c0 lw v0, (s4)                       |         v0 = *(s4);
    0x000697c4 lw gp, 0x20(sp)                   |         gp = *(var_20h);
                                                 |         if (v1 != v0) {
    0x000697c8 bne v1, v0, 0x69fa0               |             goto label_24;
                                                 |         }
    0x000697cc lw ra, 0x5c(sp)                   |         ra = *(var_5ch);
    0x000697d0 lw fp, 0x58(sp)                   |         fp = *(var_58h);
    0x000697d4 lw s7, 0x54(sp)                   |         s7 = *(var_54h);
    0x000697d8 lw s6, 0x50(sp)                   |         s6 = *(var_50h);
    0x000697dc lw s5, 0x4c(sp)                   |         s5 = *(var_4ch);
    0x000697e0 lw s4, 0x48(sp)                   |         s4 = *(var_48h);
    0x000697e4 lw s3, 0x44(sp)                   |         s3 = *(var_44h);
    0x000697e8 lw s2, 0x40(sp)                   |         s2 = *(var_40h);
    0x000697ec lw s1, 0x3c(sp)                   |         s1 = *(var_3ch);
    0x000697f0 lw s0, 0x38(sp)                   |         s0 = *(var_38h);
    0x000697f4 addiu sp, sp, 0x60                |         
    0x000697f8 jr ra                             |         return v0;
                                                 |         if (s5 != 0) {
                                                 | label_16:
    0x000697fc beql s5, zero, 0x69814            |             
    0x00069800 lw s5, -0x7fac(gp)                |             s5 = *(gp);
    0x00069804 lb v0, (s5)                       |             v0 = *(s5);
    0x00069808 lw t9, -0x7590(gp)                |             t9 = sym.imp.apr_table_setn;
                                                 |             if (v0 != 0) {
    0x0006980c bnez v0, 0x698a4                  |                 goto label_25;
                                                 |             }
    0x00069810 lw s5, -0x7fac(gp)                |             s5 = *(gp);
                                                 |         }
    0x00069814 addiu s5, s5, 0x47dc              |         s5 += 0x47dc;
    0x00069818 b 0x69640                         |         
                                                 |     } while (1);
                                                 | label_10:
    0x0006981c addiu s3, zero, 0x5b              |     s3 = 0x5b;
    0x00069820 b 0x69578                         |     goto label_0;
                                                 | label_22:
    0x00069824 lw t9, -0x7424(gp)                |     t9 = sym.imp.apr_strtoi64;
    0x00069828 addiu a1, sp, 0x30                |     a1 = sp + 0x30;
    0x0006982c move a0, s6                       |     a0 = s6;
    0x00069830 addiu a2, zero, 0xa               |     a2 = 0xa;
    0x00069834 jalr t9                           |     t9 ();
    0x00069838 lw a0, 0x44(s0)                   |     a0 = *((s0 + 17));
    0x0006983c lw gp, 0x20(sp)                   |     gp = *(var_20h);
    0x00069840 sra a1, a0, 0x1f                  |     a1 = a0 >> 0x1f;
                                                 |     if (v0 != a0) {
    0x00069844 bne v0, a0, 0x6971c               |         goto label_1;
                                                 |     }
    0x00069848 lw v0, -0x7fac(gp)                |     v0 = *(gp);
                                                 |     if (v1 != a1) {
    0x0006984c bne v1, a1, 0x69720               |         goto label_2;
                                                 |     }
    0x00069850 lw v0, 0x30(sp)                   |     v0 = *(var_30h);
    0x00069854 lw a1, 0x40(s0)                   |     a1 = *((s0 + 16));
    0x00069858 addiu v0, v0, -3                  |     v0 += -3;
    0x0006985c lw v0, -0x7fac(gp)                |     v0 = *(gp);
                                                 |     if (a1 != v0) {
    0x00069860 bne a1, v0, 0x69720               |         goto label_2;
                                                 |     }
    0x00069864 addiu v0, zero, 3                 |     v0 = 3;
    0x00069868 lw t9, -0x744c(gp)                |     t9 = *(gp);
                                                 |     if (fp != v0) {
    0x0006986c bne fp, v0, 0x69f00               |         goto label_26;
                                                 |     }
    0x00069870 lw a2, -0x7fac(gp)                |     a2 = *(gp);
    0x00069874 lw t9, -0x76e8(gp)                |     t9 = sym.imp.apr_pstrcat
    0x00069878 lw a0, (s0)                       |     a0 = *(s0);
    0x0006987c move a3, zero                     |     a3 = 0;
                                                 |     /* str._Unknown_Reason */
    0x00069880 addiu a2, a2, 0x60c0              |     a2 += 0x60c0;
    0x00069884 jalr t9                           |     t9 ();
    0x00069888 move s3, v0                       |     s3 = v0;
    0x0006988c lw gp, 0x20(sp)                   |     gp = *(var_20h);
    0x00069890 sw v0, 0x40(s0)                   |     *((s0 + 16)) = v0;
    0x00069894 b 0x6971c                         |     goto label_1;
                                                 |     /* str.text_html */
                                                 | label_18:
    0x00069898 addiu s2, s2, -0x5e30             |     s2 += -0x5e30;
    0x0006989c sw s2, 0xc4(s0)                   |     *((s0 + 49)) = s2;
    0x000698a0 b 0x696a4                         |     goto label_3;
                                                 | label_25:
    0x000698a4 lw a0, 0xb4(s0)                   |     a0 = *((s0 + 45));
    0x000698a8 move a2, s5                       |     a2 = s5;
                                                 |     /* esilref: 'Location' */
    0x000698ac addiu a1, s6, -0x58e8             |     a1 = s6 + -0x58e8;
    0x000698b0 jalr t9                           |     t9 ();
    0x000698b4 lw gp, 0x20(sp)                   |     gp = *(var_20h);
    0x000698b8 b 0x69640                         |     goto label_4;
                                                 | label_19:
    0x000698bc lw t9, -0x7944(gp)                |     t9 = *(gp);
                                                 | label_20:
    0x000698c0 move a0, s0                       |     a0 = s0;
                                                 |     /* fcn.000671a0 */
    0x000698c4 addiu t9, t9, 0x71a0              |     t9 += 0x71a0;
    0x000698c8 lw s2, 0xb4(s0)                   |     s2 = *((s0 + 45));
    0x000698cc bal 0x671a0                       |     fcn_000671a0 ();
    0x000698d0 lw gp, 0x20(sp)                   |     gp = *(var_20h);
    0x000698d4 move a2, v0                       |     a2 = v0;
    0x000698d8 move a0, s2                       |     a0 = s2;
    0x000698dc lw a1, -0x7fac(gp)                |     a1 = *(gp);
    0x000698e0 lw t9, -0x7590(gp)                |     t9 = sym.imp.apr_table_setn;
                                                 |     /* str.Allow */
    0x000698e4 addiu a1, a1, 0x5510              |     a1 += 0x5510;
    0x000698e8 jalr t9                           |     t9 ();
    0x000698ec lw gp, 0x20(sp)                   |     gp = *(var_20h);
    0x000698f0 b 0x696b8                         |     goto label_5;
                                                 | label_14:
    0x000698f4 lw a0, 0xb8(s0)                   |     a0 = *((s0 + 46));
                                                 |     /* esilref: 'Location' */
    0x000698f8 addiu a1, s6, -0x58e8             |     a1 = s6 + -0x58e8;
    0x000698fc jalr t9                           |     t9 ();
    0x00069900 move s5, v0                       |     s5 = v0;
    0x00069904 lw gp, 0x20(sp)                   |     gp = *(var_20h);
    0x00069908 b 0x69600                         |     goto label_6;
                                                 | label_17:
    0x0006990c lw a0, 0xc4(s0)                   |     a0 = *((s0 + 49));
    0x00069910 lw s2, -0x7fac(gp)                |     s2 = *(gp);
                                                 |     if (a0 == 0) {
    0x00069914 beqz a0, 0x6992c                  |         goto label_27;
                                                 |     }
    0x00069918 lw t9, -0x7740(gp)                |     t9 = sym.imp.strcmp;
                                                 |     /* str.text_html__charsetiso_8859_1 */
    0x0006991c addiu a1, s2, 0x60a0              |     a1 = s2 + 0x60a0;
    0x00069920 jalr t9                           |     t9 ();
    0x00069924 lw gp, 0x20(sp)                   |     gp = *(var_20h);
                                                 |     if (v0 == 0) {
    0x00069928 beqz v0, 0x696a4                  |         goto label_3;
                                                 |     }
                                                 |     /* str.text_html__charsetiso_8859_1 */
                                                 | label_27:
    0x0006992c addiu s2, s2, 0x60a0              |     s2 += 0x60a0;
    0x00069930 sw s2, 0xc4(s0)                   |     *((s0 + 49)) = s2;
    0x00069934 b 0x696a4                         |     goto label_3;
                                                 |     do {
                                                 | label_9:
    0x00069940 lw t9, -0x782c(gp)                |         t9 = sym.ap_rvputs;
    0x00069944 move a2, zero                     |         a2 = 0;
    0x00069948 move a0, s0                       |         a0 = s0;
    0x0006994c jalr t9                           |         t9 ();
    0x00069950 lw v0, 0x64(sp)                   |         v0 = *(arg_64h);
    0x00069954 lw gp, 0x20(sp)                   |         gp = *(var_20h);
                                                 |         if (v0 != 0) {
    0x00069958 beqz v0, 0x699b0                  |             
    0x0006995c addiu v0, v0, -0x64               |             v0 += -0x64;
    0x00069960 sltiu v0, v0, 0x384               |             v0 = (v0 < aav.0x00000384) ? 1 : 0;
    0x00069964 lw a2, -0x7fac(gp)                |             a2 = *(gp);
                                                 |             if (v0 == 0) {
    0x00069968 beqz v0, 0x69eec                  |                 goto label_28;
                                                 |             }
    0x0006996c lw t9, -0x7944(gp)                |             t9 = *(gp);
                                                 |             /* fcn.000673ac */
    0x00069970 addiu t9, t9, 0x73ac              |             t9 += aav.0x000073ac;
    0x00069974 lw a0, 0x64(sp)                   |             a0 = *(arg_64h);
    0x00069978 bal 0x673ac                       |             fcn_000673ac ();
    0x0006997c lw gp, 0x20(sp)                   |             gp = *(var_20h);
                                                 |             if (v0 < 0) {
    0x00069980 bltz v0, 0x69ee8                  |                 goto label_29;
                                                 |             }
    0x00069984 sll v0, v0, 2                     |             v0 <<= 2;
    0x00069988 lwx a2, v0(s2)                    |             __asm ("lwx a2, v0(s2)");
                                                 | label_8:
    0x0006998c lw a3, -0x7fac(gp)                |             a3 = *(gp);
    0x00069990 lw a1, -0x7fac(gp)                |             a1 = *(gp);
    0x00069994 lw t9, -0x782c(gp)                |             t9 = sym.ap_rvputs;
    0x00069998 sw zero, 0x10(sp)                 |             *(var_10h_2) = 0;
                                                 |             /* str._nerror_was_encountered_while_trying_to_use_an_ErrorDocument_to_handle_the_request.__p__n */
    0x0006999c addiu a3, a3, 0x6734              |             a3 += 0x6734;
                                                 |             /* str._p_Additionally__a_ */
    0x000699a0 addiu a1, a1, 0x678c              |             a1 += 0x678c;
    0x000699a4 move a0, s0                       |             a0 = s0;
    0x000699a8 jalr t9                           |             t9 ();
    0x000699ac lw gp, 0x20(sp)                   |             gp = *(var_20h);
                                                 |         }
    0x000699b0 lw a0, -0x7fac(gp)                |         a0 = *(gp);
    0x000699b4 lw t9, -0x7994(gp)                |         t9 = sym.ap_psignature;
    0x000699b8 move a1, s0                       |         a1 = s0;
                                                 |         /* str._hr__n */
    0x000699bc addiu a0, a0, 0x67a0              |         a0 += 0x67a0;
    0x000699c0 jalr t9                           |         t9 ();
    0x000699c4 lw gp, 0x20(sp)                   |         gp = *(var_20h);
    0x000699c8 move a2, zero                     |         a2 = 0;
    0x000699cc move a1, v0                       |         a1 = v0;
    0x000699d0 lw t9, -0x782c(gp)                |         t9 = sym.ap_rvputs;
    0x000699d4 move a0, s0                       |         a0 = s0;
    0x000699d8 jalr t9                           |         t9 ();
    0x000699dc lw gp, 0x20(sp)                   |         gp = *(var_20h);
    0x000699e0 move a2, zero                     |         a2 = 0;
    0x000699e4 move a0, s0                       |         a0 = s0;
    0x000699e8 lw a1, -0x7fac(gp)                |         a1 = *(gp);
    0x000699ec lw t9, -0x782c(gp)                |         t9 = sym.ap_rvputs;
                                                 |         /* str.__body___html__n */
    0x000699f0 addiu a1, a1, 0x67a8              |         a1 += 0x67a8;
    0x000699f4 b 0x697a4                         |         goto label_7;
                                                 | label_23:
    0x00069e44 lw a1, -0x7fac(gp)                |         a1 = *(gp);
    0x00069e48 lw t9, -0x7668(gp)                |         t9 = sym.imp.apr_table_get;
    0x00069e4c lw a0, 0xc0(s0)                   |         a0 = *((s0 + 48));
                                                 |         /* str.error_notes */
    0x00069e50 addiu a1, a1, -0x5ee0             |         a1 += -0x5ee0;
    0x00069e54 jalr t9                           |         t9 ();
    0x00069e58 move s1, v0                       |         s1 = v0;
    0x00069e5c lw gp, 0x20(sp)                   |         gp = *(var_20h);
                                                 |         if (v0 != 0) {
    0x00069e60 beqz v0, 0x69e9c                  |             
    0x00069e64 lw a1, -0x7fac(gp)                |             a1 = *(gp);
    0x00069e68 lw t9, -0x7668(gp)                |             t9 = sym.imp.apr_table_get;
    0x00069e6c lw a0, 0xc0(s0)                   |             a0 = *((s0 + 48));
                                                 |             /* str.verbose_error_to */
    0x00069e70 addiu a1, a1, 0x65b8              |             a1 += 0x65b8;
    0x00069e74 jalr t9                           |             t9 ();
    0x00069e78 lw gp, 0x20(sp)                   |             gp = *(var_20h);
                                                 |             if (v0 == 0) {
    0x00069e7c beqz v0, 0x69e9c                  |                 goto label_30;
                                                 |             }
    0x00069e80 lw a1, -0x7fac(gp)                |             a1 = *(gp);
    0x00069e84 lw t9, -0x7740(gp)                |             t9 = sym.imp.strcmp;
                                                 |             /* esilref: ' ' */
    0x00069e88 addiu a1, a1, -0x7950             |             a1 += -aav.0x00007950;
    0x00069e8c move a0, v0                       |             a0 = v0;
    0x00069e90 jalr t9                           |             t9 ();
    0x00069e94 lw gp, 0x20(sp)                   |             gp = *(var_20h);
                                                 |             if (v0 == 0) {
    0x00069e98 beqz v0, 0x69f54                  |                 goto label_31;
                                                 |             }
                                                 |         }
                                                 | label_30:
    0x00069e9c lw v0, 8(s0)                      |         v0 = *((s0 + 2));
    0x00069ea0 lw t9, -0x7b94(gp)                |         t9 = sym.ap_escape_html2;
    0x00069ea4 lw a0, (s0)                       |         a0 = *(s0);
    0x00069ea8 lw a1, 0x30(v0)                   |         a1 = *((v0 + 12));
    0x00069eac move a2, zero                     |         a2 = 0;
    0x00069eb0 jalr t9                           |         t9 ();
    0x00069eb4 lw gp, 0x20(sp)                   |         gp = *(var_20h);
    0x00069eb8 sw zero, 0x10(sp)                 |         *(var_10h_2) = 0;
    0x00069ebc move a2, v0                       |         a2 = v0;
    0x00069ec0 lw a3, -0x7fac(gp)                |         a3 = *(gp);
    0x00069ec4 lw a1, -0x7fac(gp)                |         a1 = *(gp);
    0x00069ec8 lw t9, -0x76e8(gp)                |         t9 = sym.imp.apr_pstrcat
                                                 |         /* str._p_The_server_encountered_an_internal_error_or_nmisconfiguration_and_was_unable_to_complete_nyour_request.__p__n_p_Please_contact_the_server_administrator_at__n_ */
    0x00069ecc addiu a1, a1, 0x6694              |         a1 += 0x6694;
                                                 |         /* str._to_inform_them_of_the_time_this_error_occurred__n_and_the_actions_you_performed_just_before_this_error.__p__n_p_More_information_about_this_error_may_be_available_nin_the_server_error_log.__p__n */
    0x00069ed0 addiu a3, a3, 0x65d4              |         a3 += 0x65d4;
    0x00069ed4 move a0, s3                       |         a0 = s3;
    0x00069ed8 jalr t9                           |         t9 ();
    0x00069edc move a1, v0                       |         a1 = v0;
    0x00069ee0 lw gp, 0x20(sp)                   |         gp = *(var_20h);
    0x00069ee4 b 0x69940                         |         
                                                 |     } while (1);
                                                 | label_29:
    0x00069ee8 lw a2, -0x7fac(gp)                |     a2 = *(gp);
                                                 |     /* str.500_Internal_Server_Error */
                                                 | label_28:
    0x00069eec addiu a2, a2, 0x54e4              |     a2 += 0x54e4;
    0x00069ef0 b 0x6998c                         |     goto label_8;
                                                 | label_26:
    0x00069f00 sw a1, 0x2c(sp)                   |     *(var_2ch) = a1;
    0x00069f04 jalr t9                           |     t9 ();
    0x00069f08 lw a1, 0x2c(sp)                   |     a1 = *(var_2ch);
    0x00069f0c lw a0, (v0)                       |     a0 = *(v0);
    0x00069f10 lbu v1, 3(a1)                     |     v1 = *((a1 + 3));
    0x00069f14 sll v0, v1, 1                     |     v0 = v1 << 1;
    0x00069f18 addu v0, a0, v0                   |     v0 = a0 + v0;
    0x00069f1c lhu v0, (v0)                      |     v0 = *(v0);
    0x00069f20 andi v0, v0, 0x2000               |     v0 &= aav.0x00002000;
    0x00069f24 lw gp, 0x20(sp)                   |     gp = *(var_20h);
                                                 |     if (v0 == 0) {
    0x00069f28 beqz v0, 0x6971c                  |         goto label_1;
                                                 |     }
    0x00069f2c addiu v0, zero, 4                 |     v0 = 4;
    0x00069f30 lw a2, -0x7fac(gp)                |     a2 = *(gp);
                                                 |     if (fp != v0) {
    0x00069f34 beq fp, v0, 0x69f7c               |         
    0x00069f38 lbu v0, 4(a1)                     |         v0 = *((a1 + 4));
    0x00069f3c sll v0, v0, 1                     |         v0 <<= 1;
    0x00069f40 addu a0, a0, v0                   |         a0 += v0;
    0x00069f44 lhu v0, (a0)                      |         v0 = *(a0);
    0x00069f48 andi v0, v0, 8                    |         v0 &= 8;
                                                 |         if (v0 == 0) {
    0x00069f4c movn s3, a1, v0                   |             s3 = a1;
                                                 |         }
    0x00069f50 b 0x6971c                         |         goto label_1;
                                                 | label_31:
    0x00069f54 lw a2, -0x7fac(gp)                |         a2 = *(gp);
    0x00069f58 lw t9, -0x76e8(gp)                |         t9 = sym.imp.apr_pstrcat
    0x00069f5c move a1, s1                       |         a1 = s1;
    0x00069f60 move a3, zero                     |         a3 = 0;
                                                 |         /* str._p____n */
    0x00069f64 addiu a2, a2, 0x65cc              |         a2 += 0x65cc;
    0x00069f68 move a0, s3                       |         a0 = s3;
    0x00069f6c jalr t9                           |         t9 ();
    0x00069f70 move a1, v0                       |         a1 = v0;
    0x00069f74 lw gp, 0x20(sp)                   |         gp = *(var_20h);
    0x00069f78 b 0x69940                         |         goto label_9;
                                                 |     }
    0x00069f7c lw t9, -0x76e8(gp)                |     t9 = sym.imp.apr_pstrcat
    0x00069f80 lw a0, (s0)                       |     a0 = *(s0);
    0x00069f84 move a3, zero                     |     a3 = 0;
                                                 |     /* str.Unknown_Reason */
    0x00069f88 addiu a2, a2, 0x60d0              |     a2 += aav.0x000060d0;
    0x00069f8c jalr t9                           |     t9 ();
    0x00069f90 move s3, v0                       |     s3 = v0;
    0x00069f94 lw gp, 0x20(sp)                   |     gp = *(var_20h);
    0x00069f98 sw v0, 0x40(s0)                   |     *((s0 + 16)) = v0;
    0x00069f9c b 0x6971c                         |     goto label_1;
                                                 | label_24:
    0x00069fa0 lw t9, -0x75e8(gp)                |     t9 = sym.imp.__stack_chk_fail;
    0x00069fa4 jalr t9                           |     t9 ();
    0x00069fa8 nop                               |     
                                                 | }
    ; assembly                                       | /* r2dec pseudo code output */
                                                     | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x2b764 */
                                                     | #include <stdint.h>
                                                     |  
    ; (fcn) sym.ap_send_interim_response ()          | void ap_send_interim_response () {
    0x0002b764 lui gp, 7                             |     
    0x0002b768 addiu gp, gp, 0x77bc                  |     
    0x0002b76c addu gp, gp, t9                       |     gp += t9;
    0x0002b770 addiu sp, sp, -0x58                   |     
    0x0002b774 lw v0, 0x28(a0)                       |     v0 = *((a0 + 10));
    0x0002b778 sw s1, 0x40(sp)                       |     *(var_40h) = s1;
    0x0002b77c lw s1, -0x7534(gp)                    |     s1 = *(gp);
    0x0002b780 sw gp, 0x20(sp)                       |     *(var_20h) = gp;
    0x0002b784 slti v0, v0, 0x3e9                    |     v0 = (v0 < 0x3e9) ? 1 : 0;
    0x0002b788 lw v1, (s1)                           |     v1 = *(s1);
    0x0002b78c sw ra, 0x54(sp)                       |     *(var_54h) = ra;
    0x0002b790 sw s5, 0x50(sp)                       |     *(var_50h) = s5;
    0x0002b794 sw s4, 0x4c(sp)                       |     *(var_4ch) = s4;
    0x0002b798 sw s3, 0x48(sp)                       |     *(var_48h) = s3;
    0x0002b79c sw s2, 0x44(sp)                       |     *(var_44h) = s2;
    0x0002b7a0 sw s0, 0x3c(sp)                       |     *(var_3ch) = s0;
    0x0002b7a4 sw v1, 0x34(sp)                       |     *(var_34h) = v1;
    0x0002b7a8 move s2, a1                           |     s2 = a1;
                                                     |     if (v0 != 0) {
    0x0002b7ac bnez v0, 0x2b8a4                      |         goto label_0;
                                                     |     }
    0x0002b7b0 lw a1, 0x44(a0)                       |     a1 = *((a0 + 17));
    0x0002b7b4 addiu v0, a1, -0x64                   |     v0 = a1 + -0x64;
    0x0002b7b8 sltiu v0, v0, 0x64                    |     v0 = (v0 < 0x64) ? 1 : 0;
    0x0002b7bc move s0, a0                           |     s0 = a0;
                                                     |     if (v0 == 0) {
    0x0002b7c0 beqz v0, 0x2b8d4                      |         goto label_7;
                                                     |     }
    0x0002b7c4 addiu v0, zero, 0x64                  |     v0 = 0x64;
                                                     |     if (a1 == v0) {
    0x0002b7c8 beql a1, v0, 0x2b964                  |         goto label_8;
                                                     |     }
    0x0002b7cc lw v0, 0x94(a0)                       |     v0 = *((a0 + 37));
    0x0002b7d0 lw a2, 0x40(s0)                       |     a2 = *((s0 + 16));
                                                     | label_4:
    0x0002b7d4 lw a0, (s0)                           |     a0 = *(s0);
                                                     |     if (a2 == 0) {
    0x0002b7d8 beqz a2, 0x2b9b8                      |         goto label_9;
                                                     |     }
                                                     | label_6:
    0x0002b7dc lw s3, -0x7fac(gp)                    |     s3 = *(gp);
    0x0002b7e0 lw a1, -0x7fac(gp)                    |     a1 = *(gp);
    0x0002b7e4 lw t9, -0x76e8(gp)                    |     t9 = sym.imp.apr_pstrcat
                                                     |     /* esilref: '
' */
    0x0002b7e8 addiu a3, s3, 0x7a00                  |     a3 = s3 + aav.0x00007a00;
                                                     |     /* str.HTTP_1.1_ */
    0x0002b7ec addiu a1, a1, -0x5808                 |     a1 += -0x5808;
    0x0002b7f0 sw zero, 0x10(sp)                     |     *(var_10h_2) = 0;
    0x0002b7f4 jalr t9                               |     t9 ();
    0x0002b7f8 lw v1, 4(s0)                          |     v1 = *((s0 + 1));
    0x0002b7fc lw gp, 0x20(sp)                       |     gp = *(var_20h);
    0x0002b800 lw a0, (s0)                           |     a0 = *(s0);
    0x0002b804 lw a1, 0x40(v1)                       |     a1 = *((v1 + 16));
    0x0002b808 lw v1, 0x38(v1)                       |     v1 = *((v1 + 14));
    0x0002b80c lw t9, -0x7344(gp)                    |     t9 = sym.imp.apr_brigade_create;
    0x0002b810 sw v1, 0x2c(sp)                       |     *(var_2ch) = v1;
    0x0002b814 move s5, v0                           |     s5 = v0;
    0x0002b818 jalr t9                               |     t9 ();
    0x0002b81c lw gp, 0x20(sp)                       |     gp = *(var_20h);
    0x0002b820 move a0, s5                           |     a0 = s5;
    0x0002b824 sw v0, 0x30(sp)                       |     *(var_30h) = v0;
    0x0002b828 lw t9, -0x74c4(gp)                    |     t9 = sym.imp.strlen;
    0x0002b82c move s4, v0                           |     s4 = v0;
    0x0002b830 jalr t9                               |     t9 ();
    0x0002b834 lw gp, 0x20(sp)                       |     gp = *(var_20h);
    0x0002b838 lw a2, 0x2c(sp)                       |     a2 = *(var_2ch);
    0x0002b83c sw v0, 0x10(sp)                       |     *(var_10h_2) = v0;
    0x0002b840 lw t9, -0x7264(gp)                    |     t9 = sym.imp.apr_brigade_write;
    0x0002b844 lw a1, -0x7e2c(gp)                    |     a1 = sym.ap_filter_flush;
    0x0002b848 move a3, s5                           |     a3 = s5;
    0x0002b84c move a0, s4                           |     a0 = s4;
    0x0002b850 jalr t9                               |     t9 ();
    0x0002b854 lw gp, 0x20(sp)                       |     gp = *(var_20h);
                                                     |     if (s2 != 0) {
    0x0002b858 bnez s2, 0x2b984                      |         goto label_10;
                                                     |     }
                                                     | label_5:
    0x0002b85c lw t9, -0x7264(gp)                    |     t9 = sym.imp.apr_brigade_write;
    0x0002b860 lw a2, 0x2c(sp)                       |     a2 = *(var_2ch);
    0x0002b864 lw a1, -0x7e2c(gp)                    |     a1 = sym.ap_filter_flush;
    0x0002b868 lw a0, 0x30(sp)                       |     a0 = *(var_30h);
    0x0002b86c addiu v0, zero, 2                     |     v0 = 2;
                                                     |     /* esilref: '
' */
    0x0002b870 addiu a3, s3, 0x7a00                  |     a3 = s3 + aav.0x00007a00;
    0x0002b874 sw v0, 0x10(sp)                       |     *(var_10h_2) = v0;
    0x0002b878 jalr t9                               |     t9 ();
    0x0002b87c lw gp, 0x20(sp)                       |     gp = *(var_20h);
    0x0002b880 lw a1, 0x30(sp)                       |     a1 = *(var_30h);
    0x0002b884 lw t9, -0x7da4(gp)                    |     t9 = sym.ap_fflush;
    0x0002b888 lw a0, 0x2c(sp)                       |     a0 = *(var_2ch);
    0x0002b88c bal 0x25eac                           |     sym_ap_fflush ();
    0x0002b890 lw gp, 0x20(sp)                       |     gp = *(var_20h);
    0x0002b894 lw t9, -0x7700(gp)                    |     t9 = sym.imp.apr_brigade_destroy;
    0x0002b898 lw a0, 0x30(sp)                       |     a0 = *(var_30h);
    0x0002b89c jalr t9                               |     t9 ();
    0x0002b8a0 lw gp, 0x20(sp)                       |     gp = *(var_20h);
                                                     |     do {
                                                     | label_0:
    0x0002b8a4 lw v1, 0x34(sp)                       |         v1 = *(var_34h);
    0x0002b8a8 lw v0, (s1)                           |         v0 = *(s1);
    0x0002b8ac lw ra, 0x54(sp)                       |         ra = *(var_54h);
                                                     |         if (v1 != v0) {
    0x0002b8b0 bne v1, v0, 0x2b9d4                   |             goto label_11;
                                                     |         }
    0x0002b8b4 lw s5, 0x50(sp)                       |         s5 = *(var_50h);
    0x0002b8b8 lw s4, 0x4c(sp)                       |         s4 = *(var_4ch);
    0x0002b8bc lw s3, 0x48(sp)                       |         s3 = *(var_48h);
    0x0002b8c0 lw s2, 0x44(sp)                       |         s2 = *(var_44h);
    0x0002b8c4 lw s1, 0x40(sp)                       |         s1 = *(var_40h);
    0x0002b8c8 lw s0, 0x3c(sp)                       |         s0 = *(var_3ch);
    0x0002b8cc addiu sp, sp, 0x58                    |         
    0x0002b8d0 jr ra                                 |         return v0;
                                                     | label_7:
    0x0002b8d4 lw v1, 0x108(a0)                      |         v1 = *(a0);
                                                     |         if (v1 == 0) {
    0x0002b8d8 beql v1, zero, 0x2b94c                |             goto label_12;
                                                     |         }
    0x0002b8dc lw v0, 4(a0)                          |         v0 = *((a0 + 1));
                                                     | label_3:
    0x0002b8e0 lw v0, (v1)                           |         v0 = *(v1);
                                                     |         if (v0 == 0) {
                                                     | label_2:
    0x0002b8e4 beql v0, zero, 0x2b940                |             goto label_13;
                                                     |         }
    0x0002b8e8 lw v0, 4(v1)                          |         v0 = *((v1 + 1));
    0x0002b8ec lb v0, (v0)                           |         v0 = *(v0);
                                                     |         if (v0 < 0) {
    0x0002b8f0 bltzl v0, 0x2b940                     |             goto label_13;
                                                     |         }
    0x0002b8f4 lw v0, 4(v1)                          |         v0 = *((v1 + 1));
    0x0002b8f8 slti v0, v0, 7                        |         v0 = (v0 < 7) ? 1 : 0;
    0x0002b8fc xori v0, v0, 1                        |         v0 ^= 1;
                                                     | label_1:
    0x0002b900 lw v0, -0x7fac(gp)                    |         v0 = *(gp);
    0x0002b904 beqz v0, 0x2b8a4                      |         
                                                     |     } while (v0 == 0);
    0x0002b908 lw a0, -0x7fac(gp)                    |     a0 = *(gp);
    0x0002b90c lw t9, -0x7f08(gp)                    |     t9 = sym.ap_log_rerror_;
                                                     |     /* str.AH00575:_Status_is__d___not_sending_interim_response */
    0x0002b910 addiu v0, v0, -0x5840                 |     v0 += -0x5840;
    0x0002b914 sw a1, 0x1c(sp)                       |     *(var_1ch_2) = a1;
    0x0002b918 sw v0, 0x18(sp)                       |     *(var_18h) = v0;
    0x0002b91c sw s0, 0x14(sp)                       |     *(var_14h) = s0;
    0x0002b920 sw zero, 0x10(sp)                     |     *(var_10h_2) = 0;
    0x0002b924 addiu a3, zero, 7                     |     a3 = 7;
    0x0002b928 move a2, zero                         |     a2 = 0;
    0x0002b92c addiu a1, zero, 0x919                 |     a1 = 0x919;
                                                     |     /* str._usr_src_debug_apache2_2.4.57_r0_httpd_2.4.57_server_protocol.c */
    0x0002b930 addiu a0, a0, -0x5ed4                 |     a0 += -0x5ed4;
    0x0002b934 jalr t9                               |     t9 ();
    0x0002b938 lw gp, 0x20(sp)                       |     gp = *(var_20h);
    0x0002b93c b 0x2b8a4                             |     goto label_0;
                                                     | label_13:
    0x0002b940 slti v0, v0, 7                        |     v0 = (v0 < 7) ? 1 : 0;
    0x0002b944 xori v0, v0, 1                        |     v0 ^= 1;
    0x0002b948 b 0x2b900                             |     goto label_1;
                                                     | label_12:
    0x0002b94c lw v1, 0x60(v0)                       |     v1 = *((v0 + 24));
    0x0002b950 lw v0, (v1)                           |     v0 = *(v1);
                                                     |     if (v1 == 0) {
    0x0002b954 bnel v1, zero, 0x2b8e4                |         goto label_2;
                                                     |     }
    0x0002b958 lw v1, 8(a0)                          |     v1 = *((a0 + 2));
    0x0002b95c addiu v1, v1, 0x10                    |     v1 += 0x10;
    0x0002b960 b 0x2b8e0                             |     goto label_3;
                                                     | label_8:
    0x0002b964 move v0, a0                           |     v0 = a0;
                                                     |     if (v0 == 0) {
    0x0002b968 beqz v0, 0x2b8a4                      |         goto label_0;
                                                     |     }
    0x0002b96c sw zero, 0x94(v0)                     |     *((v0 + 37)) = 0;
                                                     |     do {
    0x0002b970 lw v0, 0x14(v0)                       |         v0 = *((v0 + 5));
    0x0002b974 sw zero, 0x94(v0)                     |         *((v0 + 37)) = 0;
    0x0002b978 bnel v0, zero, 0x2b970                |         
                                                     |     } while (v0 == 0);
    0x0002b97c lw a2, 0x40(s0)                       |     a2 = *((s0 + 16));
    0x0002b980 b 0x2b7d4                             |     goto label_4;
                                                     | label_10:
    0x0002b984 lw a0, -0x7dd4(gp)                    |     a0 = *(gp);
    0x0002b988 lw t9, -0x73b8(gp)                    |     t9 = sym.imp.apr_table_do;
    0x0002b98c lw a2, 0xb4(s0)                       |     a2 = *((s0 + 45));
    0x0002b990 move a3, zero                         |     a3 = 0;
    0x0002b994 addiu a1, sp, 0x2c                    |     a1 = sp + 0x2c;
    0x0002b998 addiu a0, a0, -0x7b0c                 |     a0 += -0x7b0c;
    0x0002b99c jalr t9                               |     t9 ();
    0x0002b9a0 lw gp, 0x20(sp)                       |     gp = *(var_20h);
    0x0002b9a4 lw t9, -0x7414(gp)                    |     t9 = sym.imp.apr_table_clear;
    0x0002b9a8 lw a0, 0xb4(s0)                       |     a0 = *((s0 + 45));
    0x0002b9ac jalr t9                               |     t9 ();
    0x0002b9b0 lw gp, 0x20(sp)                       |     gp = *(var_20h);
    0x0002b9b4 b 0x2b85c                             |     goto label_5;
                                                     | label_9:
    0x0002b9b8 lw t9, -0x7da0(gp)                    |     t9 = sym.ap_get_status_line_ex;
    0x0002b9bc jalr t9                               |     t9 ();
    0x0002b9c0 nop                                   |     
    0x0002b9c4 move a2, v0                           |     a2 = v0;
    0x0002b9c8 lw gp, 0x20(sp)                       |     gp = *(var_20h);
    0x0002b9cc lw a0, (s0)                           |     a0 = *(s0);
    0x0002b9d0 b 0x2b7dc                             |     goto label_6;
                                                     | label_11:
    0x0002b9d4 lw t9, -0x75e8(gp)                    |     t9 = sym.imp.__stack_chk_fail;
    0x0002b9d8 jalr t9                               |     t9 ();
    0x0002b9dc nop                                   |     
                                                     | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x4d488 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.ap_set_file_slot ()          | void ap_set_file_slot () {
    0x0004d488 lui gp, 5                     |     
    0x0004d48c addiu gp, gp, 0x5a98          |     
    0x0004d490 addu gp, gp, t9               |     gp += t9;
    0x0004d494 addiu sp, sp, -0x38           |     
    0x0004d498 lw t9, -0x7e50(gp)            |     t9 = sym.ap_server_root_relative;
    0x0004d49c sw s0, 0x24(sp)               |     *(var_24h) = s0;
    0x0004d4a0 move s0, a0                   |     s0 = a0;
    0x0004d4a4 lw a0, 0x28(a0)               |     a0 = *((a0 + 10));
    0x0004d4a8 sw gp, 0x18(sp)               |     *(var_18h) = gp;
    0x0004d4ac sw s3, 0x30(sp)               |     *(var_30h) = s3;
    0x0004d4b0 sw s2, 0x2c(sp)               |     *(var_2ch) = s2;
    0x0004d4b4 sw s1, 0x28(sp)               |     *(var_28h) = s1;
    0x0004d4b8 sw ra, 0x34(sp)               |     *(var_34h) = ra;
    0x0004d4bc move s1, a1                   |     s1 = a1;
    0x0004d4c0 move a1, a2                   |     a1 = a2;
    0x0004d4c4 move s2, a2                   |     s2 = a2;
    0x0004d4c8 lw s3, (s0)                   |     s3 = *(s0);
    0x0004d4cc bal 0x4d3e0                   |     sym_ap_server_root_relative ();
    0x0004d4d0 lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     if (v0 != 0) {
    0x0004d4d4 beqz v0, 0x4d504              |         
    0x0004d4d8 addu s1, s1, s3               |         s1 += s3;
    0x0004d4dc lw ra, 0x34(sp)               |         ra = *(var_34h);
    0x0004d4e0 move v1, v0                   |         v1 = v0;
    0x0004d4e4 sw v1, (s1)                   |         *(s1) = v1;
    0x0004d4e8 lw s3, 0x30(sp)               |         s3 = *(var_30h);
    0x0004d4ec lw s2, 0x2c(sp)               |         s2 = *(var_2ch);
    0x0004d4f0 lw s1, 0x28(sp)               |         s1 = *(var_28h);
    0x0004d4f4 lw s0, 0x24(sp)               |         s0 = *(var_24h);
    0x0004d4f8 move v0, zero                 |         v0 = 0;
    0x0004d4fc addiu sp, sp, 0x38            |         
    0x0004d500 jr ra                         |         return v0;
                                             |     }
    0x0004d504 lw v0, 0x38(s0)               |     v0 = *((s0 + 14));
    0x0004d508 lw a2, -0x7fac(gp)            |     a2 = *(gp);
    0x0004d50c lw a0, 0x28(s0)               |     a0 = *((s0 + 10));
    0x0004d510 lw a1, (v0)                   |     a1 = *(v0);
    0x0004d514 lw v0, -0x7fac(gp)            |     v0 = *(gp);
    0x0004d518 lw t9, -0x76e8(gp)            |     t9 = sym.imp.apr_pstrcat
                                             |     /* esilref: 'p4' */
    0x0004d51c addiu v0, v0, 0x46c           |     v0 += aav.0x0000046c;
    0x0004d520 move a3, s2                   |     a3 = s2;
    0x0004d524 sw zero, 0x14(sp)             |     *(var_14h) = 0;
    0x0004d528 sw v0, 0x10(sp)               |     *(var_10h) = v0;
                                             |     /* str.:_Invalid_file_path_ */
    0x0004d52c addiu a2, a2, 0x850           |     a2 += 0x850;
    0x0004d530 jalr t9                       |     t9 ();
    0x0004d534 lw ra, 0x34(sp)               |     ra = *(var_34h);
    0x0004d538 lw s3, 0x30(sp)               |     s3 = *(var_30h);
    0x0004d53c lw s2, 0x2c(sp)               |     s2 = *(var_2ch);
    0x0004d540 lw s1, 0x28(sp)               |     s1 = *(var_28h);
    0x0004d544 lw s0, 0x24(sp)               |     s0 = *(var_24h);
    0x0004d548 addiu sp, sp, 0x38            |     
    0x0004d54c jr ra                         |     return v0;
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x5a2d4 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.ap_set_mutex ()              | void ap_set_mutex () {
    0x0005a2d4 lui gp, 5                     |     
    0x0005a2d8 addiu gp, gp, -0x73b4         |     
    0x0005a2dc addu gp, gp, t9               |     gp += t9;
    0x0005a2e0 addiu sp, sp, -0x60           |     
    0x0005a2e4 lw t9, -0x7e54(gp)            |     t9 = sym.ap_check_cmd_context;
    0x0005a2e8 sw s3, 0x44(sp)               |     *(var_44h) = s3;
    0x0005a2ec lw s3, -0x7534(gp)            |     s3 = *(gp);
    0x0005a2f0 sw gp, 0x18(sp)               |     *(var_18h) = gp;
    0x0005a2f4 sw s2, 0x40(sp)               |     *(var_40h) = s2;
    0x0005a2f8 lw v0, (s3)                   |     v0 = *(s3);
    0x0005a2fc sw s1, 0x3c(sp)               |     *(var_3ch) = s1;
    0x0005a300 sw v0, 0x34(sp)               |     *(var_34h) = v0;
    0x0005a304 lw v0, 0x28(a0)               |     v0 = *((a0 + 10));
    0x0005a308 sw s0, 0x38(sp)               |     *(var_38h) = s0;
    0x0005a30c sw ra, 0x5c(sp)               |     *(var_5ch) = ra;
    0x0005a310 sw fp, 0x58(sp)               |     *(var_58h) = fp;
    0x0005a314 sw s7, 0x54(sp)               |     *(var_54h) = s7;
    0x0005a318 sw s6, 0x50(sp)               |     *(var_50h) = s6;
    0x0005a31c sw s5, 0x4c(sp)               |     *(var_4ch) = s5;
    0x0005a320 sw s4, 0x48(sp)               |     *(var_48h) = s4;
    0x0005a324 addiu a1, zero, 0x5f          |     a1 = 0x5f;
    0x0005a328 sw a2, 0x24(sp)               |     *(var_24h) = a2;
    0x0005a32c sw v0, 0x20(sp)               |     *(var_20h) = v0;
    0x0005a330 move s0, a0                   |     s0 = a0;
    0x0005a334 lw s2, 0x2c(a0)               |     s2 = *((a0 + 11));
    0x0005a338 jalr t9                       |     t9 ();
    0x0005a33c move s1, v0                   |     s1 = v0;
    0x0005a340 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0005a344 beqz v0, 0x5a388              |     
                                             |     while (1) {
                                             | label_0:
    0x0005a348 lw a0, 0x34(sp)               |         a0 = *(var_34h);
    0x0005a34c lw v1, (s3)                   |         v1 = *(s3);
    0x0005a350 move v0, s1                   |         v0 = s1;
                                             |         if (a0 != v1) {
    0x0005a354 bne a0, v1, 0x5a5f8           |             goto label_4;
                                             |         }
    0x0005a358 lw ra, 0x5c(sp)               |         ra = *(var_5ch);
    0x0005a35c lw fp, 0x58(sp)               |         fp = *(var_58h);
    0x0005a360 lw s7, 0x54(sp)               |         s7 = *(var_54h);
    0x0005a364 lw s6, 0x50(sp)               |         s6 = *(var_50h);
    0x0005a368 lw s5, 0x4c(sp)               |         s5 = *(var_4ch);
    0x0005a36c lw s4, 0x48(sp)               |         s4 = *(var_48h);
    0x0005a370 lw s3, 0x44(sp)               |         s3 = *(var_44h);
    0x0005a374 lw s2, 0x40(sp)               |         s2 = *(var_40h);
    0x0005a378 lw s1, 0x3c(sp)               |         s1 = *(var_3ch);
    0x0005a37c lw s0, 0x38(sp)               |         s0 = *(var_38h);
    0x0005a380 addiu sp, sp, 0x60            |         
    0x0005a384 jr ra                         |         return v1;
    0x0005a388 lw t9, -0x7f00(gp)            |         t9 = sym.ap_getword_conf;
    0x0005a38c addiu s5, sp, 0x24            |         s5 = sp + 0x24;
    0x0005a390 lw a0, 0x28(s0)               |         a0 = *((s0 + 10));
    0x0005a394 move a1, s5                   |         a1 = s5;
    0x0005a398 jalr t9                       |         t9 ();
    0x0005a39c move s4, v0                   |         s4 = v0;
    0x0005a3a0 lb v0, (v0)                   |         v0 = *(v0);
    0x0005a3a4 lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             |         if (v0 != 0) {
    0x0005a3a8 bnez v0, 0x5a3b8              |             goto label_5;
                                             |         }
    0x0005a3ac lw s1, -0x7fac(gp)            |         s1 = *(gp);
                                             |         /* str.Mutex_requires_at_least_a_mechanism_argument__Mutex_mechanisms_are:_none__default__flock:_path_to_file__fcntl:_path_to_file__file:_path_to_file__sysvsem__sem_ */
    0x0005a3b0 addiu s1, s1, 0x2048          |         s1 += 0x2048;
    0x0005a3b4 b 0x5a348                     |         
                                             |     }
                                             | label_5:
    0x0005a3b8 lw t9, -0x7938(gp)            |     t9 = sym.ap_parse_mutex;
    0x0005a3bc lw a1, 0x20(sp)               |     a1 = *(var_20h);
    0x0005a3c0 addiu a3, sp, 0x30            |     a3 = sp + 0x30;
    0x0005a3c4 addiu a2, sp, 0x2c            |     a2 = sp + 0x2c;
    0x0005a3c8 move a0, s4                   |     a0 = s4;
    0x0005a3cc bal 0x5a080                   |     sym_ap_parse_mutex ();
    0x0005a3d0 lui v1, 1                     |     v1 = 0x10000;
    0x0005a3d4 move s7, v0                   |     s7 = v0;
                                             |     /* esilref: 't_name_virtual_host' */
    0x0005a3d8 addiu v0, v1, 0x1187          |     v0 = v1 + 0x1187;
    0x0005a3dc lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     if (s7 == v0) {
    0x0005a3e0 beq s7, v0, 0x5a5c8           |         goto label_6;
                                             |     }
                                             |     /* esilref: 'hack_ap_set_name_virtual_host' */
    0x0005a3e4 addiu v1, v1, 0x117d          |     v1 += 0x117d;
    0x0005a3e8 lw a1, -0x7fac(gp)            |     a1 = *(gp);
                                             |     if (s7 == v1) {
    0x0005a3ec beq s7, v1, 0x5a53c           |         goto label_7;
                                             |     }
    0x0005a3f0 lw a1, 0x30(sp)               |     a1 = *(var_30h);
    0x0005a3f4 lw t9, -0x7bc0(gp)            |     t9 = sym.ap_is_directory;
                                             |     if (a1 != 0) {
    0x0005a3f8 beqz a1, 0x5a40c              |         
    0x0005a3fc move a0, s2                   |         a0 = s2;
    0x0005a400 jalr t9                       |         t9 ();
    0x0005a404 lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             |         if (v0 == 0) {
    0x0005a408 beqz v0, 0x5a538              |             goto label_8;
                                             |         }
                                             |     }
    0x0005a40c lw t9, -0x775c(gp)            |     t9 = sym.imp.apr_array_make;
    0x0005a410 lw a0, 0x28(s0)               |     a0 = *((s0 + 10));
    0x0005a414 addiu a2, zero, 4             |     a2 = 4;
    0x0005a418 addiu a1, zero, 4             |     a1 = 4;
    0x0005a41c jalr t9                       |     t9 ();
    0x0005a420 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0005a424 move fp, v0                   |     fp = v0;
    0x0005a428 move s4, zero                 |     s4 = 0;
    0x0005a42c lw s6, -0x7fac(gp)            |     s6 = *(gp);
                                             |     /* str.omitpid */
    0x0005a430 addiu s6, s6, 0x2138          |     s6 += 0x2138;
    0x0005a434 b 0x5a468                     |     
                                             |     while (v0 != 0) {
    0x0005a438 lw a0, 0x28(s0)               |         a0 = *((s0 + 10));
    0x0005a43c move a1, s5                   |         a1 = s5;
    0x0005a440 jalr t9                       |         t9 ();
    0x0005a444 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x0005a448 move a1, s6                   |         a1 = s6;
    0x0005a44c move a0, v0                   |         a0 = v0;
    0x0005a450 lw t9, -0x7564(gp)            |         t9 = sym.imp.strcasecmp;
    0x0005a454 move s2, v0                   |         s2 = v0;
    0x0005a458 jalr t9                       |         t9 ();
    0x0005a45c lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             |         if (v0 != 0) {
    0x0005a460 bnez v0, 0x5a520              |             goto label_9;
                                             |         }
    0x0005a464 addiu s4, zero, 1             |         s4 = 1;
                                             | label_2:
    0x0005a468 lw v0, 0x24(sp)               |         v0 = *(var_24h);
    0x0005a46c lb v0, (v0)                   |         v0 = *(v0);
    0x0005a470 lw t9, -0x7f00(gp)            |         t9 = sym.ap_getword_conf;
    0x0005a474 bnez v0, 0x5a438              |         
                                             |     }
    0x0005a478 lw t9, -0x72ec(gp)            |     t9 = sym.imp.apr_is_empty_array;
    0x0005a47c move a0, fp                   |     a0 = fp;
    0x0005a480 jalr t9                       |     t9 ();
    0x0005a484 lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     if (v0 != 0) {
    0x0005a488 bnez v0, 0x5a584              |         goto label_10;
                                             |     }
                                             | label_3:
    0x0005a48c lw s2, -0x7f14(gp)            |     s2 = *((gp - 8133));
    0x0005a490 addiu s0, zero, 1             |     s0 = 1;
    0x0005a494 addiu s5, zero, 0x4e29        |     s5 = 0x4e29;
                                             | label_1:
    0x0005a498 lw t9, -0x7370(gp)            |     t9 = *(gp);
    0x0005a49c move a0, fp                   |     a0 = fp;
    0x0005a4a0 jalr t9                       |     t9 ();
    0x0005a4a4 lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     if (v0 == 0) {
    0x0005a4a8 beqz v0, 0x5a348              |         goto label_0;
                                             |     }
                                             |     do {
    0x0005a4ac lw s6, (v0)                   |         s6 = *(v0);
    0x0005a4b0 lw t9, -0x7200(gp)            |         t9 = sym.imp.apr_hash_get;
    0x0005a4b4 lw a0, -0x33b0(s2)            |         a0 = *((s2 - 3308));
    0x0005a4b8 addiu a2, zero, -1            |         a2 = -1;
    0x0005a4bc move a1, s6                   |         a1 = s6;
    0x0005a4c0 jalr t9                       |         t9 ();
    0x0005a4c4 lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             |         if (v0 == 0) {
    0x0005a4c8 beqz v0, 0x5a560              |             goto label_11;
                                             |         }
    0x0005a4cc sw zero, 8(v0)                |         *((v0 + 2)) = 0;
    0x0005a4d0 sw s4, 0xc(v0)                |         *((v0 + 3)) = s4;
    0x0005a4d4 sw s0, 4(v0)                  |         *((v0 + 1)) = s0;
                                             |         if (s7 != s5) {
    0x0005a4d8 bne s7, s5, 0x5a508           |             goto label_12;
                                             |         }
    0x0005a4dc lw v1, (v0)                   |         v1 = *(v0);
    0x0005a4e0 andi v1, v1, 1                |         v1 &= 1;
    0x0005a4e4 lw t9, -0x7370(gp)            |         t9 = *(gp);
                                             |         if (v1 == 0) {
    0x0005a4e8 beqz v1, 0x5a5a4              |             goto label_13;
                                             |         }
    0x0005a4ec sw s0, 8(v0)                  |         *((v0 + 2)) = s0;
    0x0005a4f0 move a0, fp                   |         a0 = fp;
    0x0005a4f4 jalr t9                       |         t9 ();
    0x0005a4f8 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x0005a4fc bnez v0, 0x5a4ac              |         
                                             |     } while (v0 != 0);
    0x0005a500 b 0x5a348                     |     goto label_0;
    0x0005a504 nop                           |     
                                             | label_12:
    0x0005a508 lw a0, 0x2c(sp)               |     a0 = *(var_2ch);
    0x0005a50c lw v1, 0x30(sp)               |     v1 = *(var_30h);
    0x0005a510 sw a0, 0x10(v0)               |     *((v0 + 4)) = a0;
                                             |     if (v1 == 0) {
    0x0005a514 beqz v1, 0x5a498              |         goto label_1;
                                             |     }
    0x0005a518 sw v1, 0x14(v0)               |     *((v0 + 5)) = v1;
    0x0005a51c b 0x5a498                     |     goto label_1;
                                             | label_9:
    0x0005a520 lw t9, -0x7324(gp)            |     t9 = sym.imp.apr_array_push;
    0x0005a524 move a0, fp                   |     a0 = fp;
    0x0005a528 jalr t9                       |     t9 ();
    0x0005a52c lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0005a530 sw s2, (v0)                   |     *(v0) = s2;
    0x0005a534 b 0x5a468                     |     goto label_2;
                                             | label_8:
    0x0005a538 lw a1, -0x7fac(gp)            |     a1 = *(gp);
                                             | label_7:
    0x0005a53c lw t9, -0x76e8(gp)            |     t9 = sym.imp.apr_pstrcat
    0x0005a540 lw a0, 0x20(sp)               |     a0 = *(var_20h);
    0x0005a544 move a3, zero                 |     a3 = 0;
    0x0005a548 move a2, s4                   |     a2 = s4;
                                             |     /* str.Invalid_Mutex_directory_in_argument_ */
    0x0005a54c addiu a1, a1, 0x2110          |     a1 += 0x2110;
    0x0005a550 jalr t9                       |     t9 ();
    0x0005a554 move s1, v0                   |     s1 = v0;
    0x0005a558 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0005a55c b 0x5a348                     |     goto label_0;
                                             | label_11:
    0x0005a560 lw a1, -0x7fac(gp)            |     a1 = *(gp);
    0x0005a564 lw t9, -0x7540(gp)            |     t9 = sym.imp.apr_psprintf;
    0x0005a568 lw a0, 0x20(sp)               |     a0 = *(var_20h);
    0x0005a56c move a2, s6                   |     a2 = s6;
                                             |     /* str.Mutex_type__s_is_not_valid */
    0x0005a570 addiu a1, a1, 0x2140          |     a1 += 0x2140;
    0x0005a574 jalr t9                       |     t9 ();
    0x0005a578 move s1, v0                   |     s1 = v0;
    0x0005a57c lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0005a580 b 0x5a348                     |     goto label_0;
                                             | label_10:
    0x0005a584 lw t9, -0x7324(gp)            |     t9 = sym.imp.apr_array_push;
    0x0005a588 move a0, fp                   |     a0 = fp;
    0x0005a58c jalr t9                       |     t9 ();
    0x0005a590 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0005a594 lw v1, -0x7fac(gp)            |     v1 = *(gp);
                                             |     /* esilref: 'default' */
    0x0005a598 addiu v1, v1, 0x1a88          |     v1 += 0x1a88;
    0x0005a59c sw v1, (v0)                   |     *(v0) = v1;
    0x0005a5a0 b 0x5a48c                     |     goto label_3;
                                             | label_13:
    0x0005a5a4 lw a1, -0x7fac(gp)            |     a1 = *(gp);
    0x0005a5a8 lw t9, -0x7540(gp)            |     t9 = sym.imp.apr_psprintf;
    0x0005a5ac lw a0, 0x20(sp)               |     a0 = *(var_20h);
    0x0005a5b0 move a2, s6                   |     a2 = s6;
                                             |     /* str.None_is_not_allowed_for_mutex_type__s */
    0x0005a5b4 addiu a1, a1, 0x215c          |     a1 += aav.0x0000215c;
    0x0005a5b8 jalr t9                       |     t9 ();
    0x0005a5bc move s1, v0                   |     s1 = v0;
    0x0005a5c0 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0005a5c4 b 0x5a348                     |     goto label_0;
                                             | label_6:
    0x0005a5c8 lw a3, -0x7fac(gp)            |     a3 = *(gp);
    0x0005a5cc lw a1, -0x7fac(gp)            |     a1 = *(gp);
    0x0005a5d0 lw t9, -0x76e8(gp)            |     t9 = sym.imp.apr_pstrcat
    0x0005a5d4 lw a0, 0x20(sp)               |     a0 = *(var_20h);
    0x0005a5d8 sw zero, 0x10(sp)             |     *(var_10h) = 0;
                                             |     /* esilref: ' (Mutex mechanisms are: 'none', 'default', 'flock:/path/to/file', 'fcntl:/path/to/file', 'file:/path/to/file', 'sysvsem', 'sem')' */
    0x0005a5dc addiu a3, a3, 0x2074          |     a3 += aav.0x00002074;
    0x0005a5e0 move a2, s4                   |     a2 = s4;
                                             |     /* str.Invalid_Mutex_argument_ */
    0x0005a5e4 addiu a1, a1, 0x20f8          |     a1 += 0x20f8;
    0x0005a5e8 jalr t9                       |     t9 ();
    0x0005a5ec move s1, v0                   |     s1 = v0;
    0x0005a5f0 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0005a5f4 b 0x5a348                     |     goto label_0;
                                             | label_4:
    0x0005a5f8 lw t9, -0x75e8(gp)            |     t9 = sym.imp.__stack_chk_fail;
    0x0005a5fc jalr t9                       |     t9 ();
    0x0005a600 nop                           |     
                                             | }
    ; assembly                                   | /* r2dec pseudo code output */
                                                 | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x4d628 */
                                                 | #include <stdint.h>
                                                 |  
    ; (fcn) sym.ap_soak_end_container ()         | void ap_soak_end_container () {
                                                 | label_0:
    0x0004d628 lui gp, 5                         |     
    0x0004d62c addiu gp, gp, 0x58f8              |     
    0x0004d630 addu gp, gp, t9                   |     gp += t9;
    0x0004d634 addiu sp, sp, -0x70               |     
    0x0004d638 lw t9, -0x79f4(gp)                |     t9 = sym.ap_varbuf_init;
    0x0004d63c sw s5, 0x5c(sp)                   |     *(var_5ch) = s5;
    0x0004d640 lw s5, -0x7534(gp)                |     s5 = *(gp);
    0x0004d644 sw s0, 0x48(sp)                   |     *(var_48h) = s0;
    0x0004d648 move s0, a0                       |     s0 = a0;
    0x0004d64c lw v0, (s5)                       |     v0 = *(s5);
    0x0004d650 sw s2, 0x50(sp)                   |     *(var_50h) = s2;
    0x0004d654 lw a0, 0x2c(a0)                   |     a0 = *((a0 + 11));
    0x0004d658 lw s2, 0x28(s0)                   |     s2 = *((s0 + 10));
    0x0004d65c sw s3, 0x54(sp)                   |     *(var_54h) = s3;
    0x0004d660 xor s2, s2, a0                    |     s2 ^= a0;
    0x0004d664 sw v0, 0x44(sp)                   |     *(var_44h) = v0;
    0x0004d668 lui v1, 0x100                     |     v1 = imp.apr_hook_global_pool;
    0x0004d66c addiu s3, sp, 0x30                |     s3 = sp + 0x30;
    0x0004d670 addiu v0, zero, 0x2000            |     v0 = aav.0x00002000;
    0x0004d674 sw gp, 0x20(sp)                   |     *(var_20h) = gp;
    0x0004d678 sw fp, 0x68(sp)                   |     *(var_68h) = fp;
    0x0004d67c sw s7, 0x64(sp)                   |     *(var_64h) = s7;
    0x0004d680 sw s6, 0x60(sp)                   |     *(var_60h) = s6;
    0x0004d684 sw s4, 0x58(sp)                   |     *(var_58h) = s4;
                                                 |     if (s2 == 0) {
    0x0004d688 movn v0, v1, s2                   |         v0 = v1;
                                                 |     }
    0x0004d68c sw ra, 0x6c(sp)                   |     *(var_6ch) = ra;
    0x0004d690 sw s1, 0x4c(sp)                   |     *(var_4ch) = s1;
    0x0004d694 move s7, a1                       |     s7 = a1;
    0x0004d698 addiu a2, zero, 0xc8              |     a2 = 0xc8;
    0x0004d69c move a1, s3                       |     a1 = s3;
    0x0004d6a0 move s2, v0                       |     s2 = v0;
    0x0004d6a4 jalr t9                           |     t9 ();
    0x0004d6a8 lw gp, 0x20(sp)                   |     gp = *(var_20h);
    0x0004d6ac addiu fp, sp, 0x2c                |     fp = sp + 0x2c;
    0x0004d6b0 addiu s4, zero, 0x3c              |     s4 = 0x3c;
    0x0004d6b4 lw s6, -0x7ca0(gp)                |     s6 = sym.ap_soak_end_container;
    0x0004d6b8 b 0x4d6e4                         |     
                                                 |     while (v0 == 0) {
    0x0004d6bc lw v0, 0x30(sp)                   |         v0 = *(var_30h);
    0x0004d6c0 lw t9, -0x7f00(gp)                |         t9 = sym.ap_getword_conf;
    0x0004d6c4 lw a0, 0x2c(s0)                   |         a0 = *((s0 + 11));
    0x0004d6c8 move a1, fp                       |         a1 = fp;
    0x0004d6cc sw v0, 0x2c(sp)                   |         *(var_2ch_2) = v0;
    0x0004d6d0 jalr t9                           |         t9 ();
    0x0004d6d4 move s1, v0                       |         s1 = v0;
    0x0004d6d8 lb v0, (v0)                       |         v0 = *(v0);
    0x0004d6dc lw gp, 0x20(sp)                   |         gp = *(var_20h);
                                                 |         if (v0 == s4) {
    0x0004d6e0 beq v0, s4, 0x4d764               |             goto label_3;
                                                 |         }
                                                 | label_1:
    0x0004d6e4 lw t9, -0x79f0(gp)                |         t9 = *(gp);
    0x0004d6e8 lw a1, 0x20(s0)                   |         a1 = *((s0 + 8));
    0x0004d6ec move a2, s2                       |         a2 = s2;
    0x0004d6f0 move a0, s3                       |         a0 = s3;
    0x0004d6f4 jalr t9                           |         t9 ();
    0x0004d6f8 lw gp, 0x20(sp)                   |         gp = *(var_20h);
    0x0004d6fc beqz v0, 0x4d6bc                  |         
                                                 |     }
    0x0004d700 lui v1, 1                         |     v1 = 0x1117e;
                                                 |     /* esilref: 'ack_ap_set_name_virtual_host' */
    0x0004d704 addiu v1, v1, 0x117e              |     
    0x0004d708 lw a3, -0x7fac(gp)                |     a3 = *(gp);
                                                 |     if (v0 == v1) {
    0x0004d70c beq v0, v1, 0x4d7c0               |         goto label_4;
                                                 |     }
    0x0004d710 lw t9, -0x79e8(gp)                |     t9 = *(gp);
    0x0004d714 lw a1, 0x20(s0)                   |     a1 = *((s0 + 8));
    0x0004d718 lw a0, 0x2c(s0)                   |     a0 = *((s0 + 11));
    0x0004d71c move a2, v0                       |     a2 = v0;
    0x0004d720 jalr t9                           |     t9 ();
    0x0004d724 lw gp, 0x20(sp)                   |     gp = *(var_20h);
                                                 | label_2:
    0x0004d728 lw a0, 0x44(sp)                   |     a0 = *(var_44h);
    0x0004d72c lw v1, (s5)                       |     v1 = *(s5);
    0x0004d730 lw ra, 0x6c(sp)                   |     ra = *(var_6ch);
                                                 |     if (a0 != v1) {
    0x0004d734 bne a0, v1, 0x4d890               |         goto label_5;
                                                 |     }
    0x0004d738 lw fp, 0x68(sp)                   |     fp = *(var_68h);
    0x0004d73c lw s7, 0x64(sp)                   |     s7 = *(var_64h);
    0x0004d740 lw s6, 0x60(sp)                   |     s6 = *(var_60h);
    0x0004d744 lw s5, 0x5c(sp)                   |     s5 = *(var_5ch);
    0x0004d748 lw s4, 0x58(sp)                   |     s4 = *(var_58h);
    0x0004d74c lw s3, 0x54(sp)                   |     s3 = *(var_54h);
    0x0004d750 lw s2, 0x50(sp)                   |     s2 = *(var_50h);
    0x0004d754 lw s1, 0x4c(sp)                   |     s1 = *(var_4ch);
    0x0004d758 lw s0, 0x48(sp)                   |     s0 = *(var_48h);
    0x0004d75c addiu sp, sp, 0x70                |     
    0x0004d760 jr ra                             |     return v0;
                                                 | label_3:
    0x0004d764 lb v1, 1(s1)                      |     v1 = *((s1 + 1));
    0x0004d768 addiu v0, zero, 0x2f              |     v0 = 0x2f;
    0x0004d76c lw v0, 0x2c(sp)                   |     v0 = *(var_2ch_2);
                                                 |     if (v1 == v0) {
    0x0004d770 beq v1, v0, 0x4d808               |         goto label_6;
                                                 |     }
    0x0004d774 lb v0, (v0)                       |     v0 = *(v0);
    0x0004d778 move a1, s1                       |     a1 = s1;
                                                 |     if (v0 == 0) {
    0x0004d77c bnez v0, 0x4d7a4                  |         
    0x0004d780 lw t9, -0x74c4(gp)                |         t9 = sym.imp.strlen;
    0x0004d784 move a0, s1                       |         a0 = s1;
    0x0004d788 jalr t9                           |         t9 ();
    0x0004d78c addiu v0, v0, -1                  |         v0 += -1;
    0x0004d790 addu v0, s1, v0                   |         v0 = s1 + v0;
    0x0004d794 addiu v1, zero, 0x3e              |         v1 = 0x3e;
    0x0004d798 lb a0, (v0)                       |         a0 = *(v0);
    0x0004d79c move a1, s1                       |         a1 = s1;
                                                 |         if (a0 == v1) {
    0x0004d7a0 beq a0, v1, 0x4d7e8               |             goto label_7;
                                                 |         }
                                                 |     }
    0x0004d7a4 move t9, s6                       |     t9 = s6;
    0x0004d7a8 move a0, s0                       |     a0 = s0;
    0x0004d7ac bal 0x4d628                       |     sym_ap_soak_end_container ();
                                                 |     goto label_0;
    0x0004d7b0 lw gp, 0x20(sp)                   |     gp = *(var_20h);
                                                 |     if (v0 == 0) {
    0x0004d7b4 beqz v0, 0x4d6e4                  |         goto label_1;
                                                 |     }
    0x0004d7b8 b 0x4d728                         |     goto label_2;
    0x0004d7bc nop                               |     
                                                 | label_4:
    0x0004d7c0 lw a1, -0x7fac(gp)                |     a1 = *(gp);
    0x0004d7c4 lw t9, -0x76e8(gp)                |     t9 = sym.imp.apr_pstrcat
    0x0004d7c8 lw a0, 0x28(s0)                   |     a0 = *((s0 + 10));
                                                 |     /* str.__before_end_of_configuration */
    0x0004d7cc addiu a3, a3, 0x874               |     a3 += aav.0x00000874;
    0x0004d7d0 sw zero, 0x10(sp)                 |     *(var_c0h) = 0;
    0x0004d7d4 addiu a2, s7, 1                   |     a2 = s7 + 1;
                                                 |     /* str.Expected___ */
    0x0004d7d8 addiu a1, a1, 0x490               |     a1 += aav.0x00000490;
    0x0004d7dc jalr t9                           |     t9 ();
    0x0004d7e0 lw gp, 0x20(sp)                   |     gp = *(var_20h);
    0x0004d7e4 b 0x4d728                         |     goto label_2;
                                                 | label_7:
    0x0004d7e8 sb zero, (v0)                     |     *(v0) = 0;
    0x0004d7ec move t9, s6                       |     t9 = s6;
    0x0004d7f0 move a0, s0                       |     a0 = s0;
    0x0004d7f4 bal 0x4d628                       |     sym_ap_soak_end_container ();
                                                 |     goto label_0;
    0x0004d7f8 lw gp, 0x20(sp)                   |     gp = *(var_20h);
                                                 |     if (v0 == 0) {
    0x0004d7fc beqz v0, 0x4d6e4                  |         goto label_1;
                                                 |     }
    0x0004d800 b 0x4d728                         |     goto label_2;
    0x0004d804 nop                               |     
                                                 | label_6:
    0x0004d808 lw t9, -0x74c4(gp)                |     t9 = sym.imp.strlen;
    0x0004d80c move a0, s1                       |     a0 = s1;
    0x0004d810 jalr t9                           |     t9 ();
    0x0004d814 lw gp, 0x20(sp)                   |     gp = *(var_20h);
    0x0004d818 addu v0, s1, v0                   |     v0 = s1 + v0;
    0x0004d81c addiu s7, s7, 1                   |     s7++;
    0x0004d820 lw t9, -0x7e28(gp)                |     t9 = sym.ap_cstr_casecmp;
    0x0004d824 sb zero, -1(v0)                   |     *((v0 - 1)) = 0;
    0x0004d828 move a1, s7                       |     a1 = s7;
    0x0004d82c addiu a0, s1, 2                   |     a0 = s1 + 2;
    0x0004d830 jalr t9                           |     t9 ();
    0x0004d834 lw gp, 0x20(sp)                   |     gp = *(var_20h);
                                                 |     if (v0 != 0) {
    0x0004d838 beqz v0, 0x4d878                  |         
    0x0004d83c lw v0, -0x7fac(gp)                |         v0 = *(gp);
    0x0004d840 lw a3, -0x7fac(gp)                |         a3 = *(gp);
    0x0004d844 lw a1, -0x7fac(gp)                |         a1 = *(gp);
    0x0004d848 lw a0, 0x28(s0)                   |         a0 = *((s0 + 10));
    0x0004d84c lw t9, -0x76e8(gp)                |         t9 = sym.imp.apr_pstrcat
    0x0004d850 addiu v0, v0, 0xb98               |         v0 += 0xb98;
    0x0004d854 sw zero, 0x18(sp)                 |         *(var_18h_4) = 0;
    0x0004d858 sw v0, 0x14(sp)                   |         *(var_14h) = v0;
    0x0004d85c sw s1, 0x10(sp)                   |         *(var_c0h) = s1;
                                                 |         /* str.__but_saw_ */
    0x0004d860 addiu a3, a3, 0x484               |         a3 += aav.0x00000484;
    0x0004d864 move a2, s7                       |         a2 = s7;
                                                 |         /* str.Expected___ */
    0x0004d868 addiu a1, a1, 0x490               |         a1 += aav.0x00000490;
    0x0004d86c jalr t9                           |         t9 ();
    0x0004d870 lw gp, 0x20(sp)                   |         gp = *(var_20h);
    0x0004d874 b 0x4d728                         |         goto label_2;
                                                 |     }
    0x0004d878 lw t9, -0x79ec(gp)                |     t9 = sym.ap_varbuf_free;
    0x0004d87c move a0, s3                       |     a0 = s3;
    0x0004d880 jalr t9                           |     t9 ();
    0x0004d884 lw gp, 0x20(sp)                   |     gp = *(var_20h);
    0x0004d888 move v0, zero                     |     v0 = 0;
    0x0004d88c b 0x4d728                         |     goto label_2;
                                                 | label_5:
    0x0004d890 lw t9, -0x75e8(gp)                |     t9 = sym.imp.__stack_chk_fail;
    0x0004d894 jalr t9                           |     t9 ();
    0x0004d898 nop                               |     
                                                 | }
    ; assembly                                   | /* r2dec pseudo code output */
                                                 | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x40cb0 */
                                                 | #include <stdint.h>
                                                 |  
    ; (fcn) sym.ap_sub_req_lookup_dirent ()      | void ap_sub_req_lookup_dirent () {
    0x00040cb0 lui gp, 6                         |     
    0x00040cb4 addiu gp, gp, 0x2270              |     
    0x00040cb8 addu gp, gp, t9                   |     gp += t9;
    0x00040cbc addiu sp, sp, -0x38               |     
    0x00040cc0 lw t9, -0x7c54(gp)                |     t9 = *(gp);
    0x00040cc4 sw s2, 0x28(sp)                   |     *(var_28h) = s2;
    0x00040cc8 move s2, a1                       |     s2 = a1;
    0x00040ccc sw gp, 0x18(sp)                   |     *(var_18h) = gp;
    0x00040cd0 sw s4, 0x30(sp)                   |     *(var_30h) = s4;
    0x00040cd4 sw s1, 0x24(sp)                   |     *(var_24h) = s1;
    0x00040cd8 sw s0, 0x20(sp)                   |     *(var_20h) = s0;
    0x00040cdc sw ra, 0x34(sp)                   |     *(var_34h) = ra;
    0x00040ce0 sw s3, 0x2c(sp)                   |     *(var_2ch) = s3;
    0x00040ce4 move s0, a0                       |     s0 = a0;
    0x00040ce8 move a1, a3                       |     a1 = a3;
    0x00040cec move a0, s2                       |     a0 = s2;
                                                 |     /* fcn.0003d940 */
    0x00040cf0 addiu t9, t9, -0x26c0             |     t9 += -0x26c0;
    0x00040cf4 move s4, a2                       |     s4 = a2;
    0x00040cf8 bal 0x3d940                       |     fcn_0003d940 ();
    0x00040cfc lw v1, 0xf0(s2)                   |     v1 = *((s2 + 60));
    0x00040d00 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x00040d04 move s1, v0                       |     s1 = v0;
                                                 |     if (v1 == 0) {
    0x00040d08 beqz v1, 0x410b0                  |         goto label_9;
                                                 |     }
    0x00040d0c lb v0, (v1)                       |     v0 = *(v1);
    0x00040d10 lw a0, (s1)                       |     a0 = *(s1);
    0x00040d14 lw a1, 0xe4(s2)                   |     a1 = *((s2 + 57));
                                                 |     if (v0 != 0) {
    0x00040d18 bnez v0, 0x41028                  |         goto label_10;
                                                 |     }
                                                 | label_7:
    0x00040d1c lw t9, -0x7e88(gp)                |     t9 = sym.ap_make_dirstr_parent;
    0x00040d20 jalr t9                           |     t9 ();
    0x00040d24 nop                               |     
    0x00040d28 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x00040d2c lw s3, (s1)                       |     s3 = *(s1);
    0x00040d30 lw a2, 0x5c(s0)                   |     a2 = *((s0 + 23));
    0x00040d34 lw t9, -0x7e84(gp)                |     t9 = sym.ap_make_full_path;
    0x00040d38 move a1, v0                       |     a1 = v0;
    0x00040d3c move a0, s3                       |     a0 = s3;
    0x00040d40 jalr t9                           |     t9 ();
    0x00040d44 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x00040d48 addiu a2, zero, 1                 |     a2 = 1;
    0x00040d4c move a1, v0                       |     a1 = v0;
    0x00040d50 lw t9, -0x7ae0(gp)                |     t9 = sym.ap_os_escape_path;
    0x00040d54 move a0, s3                       |     a0 = s3;
    0x00040d58 jalr t9                           |     t9 ();
    0x00040d5c lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x00040d60 sw v0, 0xe4(s1)                   |     *((s1 + 57)) = v0;
                                                 | label_6:
    0x00040d64 lw t9, -0x7e88(gp)                |     t9 = sym.ap_make_dirstr_parent;
    0x00040d68 lw a1, 0xe8(s2)                   |     a1 = *((s2 + 58));
    0x00040d6c lw a0, (s1)                       |     a0 = *(s1);
    0x00040d70 jalr t9                           |     t9 ();
    0x00040d74 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x00040d78 lw a0, (s1)                       |     a0 = *(s1);
    0x00040d7c lw a2, 0x5c(s0)                   |     a2 = *((s0 + 23));
    0x00040d80 lw t9, -0x7e84(gp)                |     t9 = sym.ap_make_full_path;
    0x00040d84 move a1, v0                       |     a1 = v0;
    0x00040d88 jalr t9                           |     t9 ();
    0x00040d8c lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x00040d90 sw v0, 0xe8(s1)                   |     *((s1 + 58)) = v0;
    0x00040d94 lw a0, 0xec(s2)                   |     a0 = *((s2 + 59));
    0x00040d98 lw v1, 0xe8(s2)                   |     v1 = *((s2 + 58));
                                                 |     if (a0 != v1) {
    0x00040d9c beql a0, v1, 0x40da4              |         
    0x00040da0 sw v0, 0xec(s1)                   |         *((s1 + 59)) = v0;
                                                 |     }
    0x00040da4 lw a0, 8(s2)                      |     a0 = *((s2 + 2));
    0x00040da8 lw v0, 4(s0)                      |     v0 = *((s0 + 1));
    0x00040dac ori v1, zero, 0x8170              |     v1 = 0x8170;
    0x00040db0 lw a0, 0x1c(a0)                   |     a0 = *((a0 + 7));
    0x00040db4 andi v0, v0, 0x8170               |     v0 &= 0x8170;
    0x00040db8 sw a0, 0x100(s1)                  |     *(s1) = a0;
    0x00040dbc addiu s3, s1, 0x160               |     s3 = s1 + aav.0x00000160;
                                                 |     if (v0 == v1) {
    0x00040dc0 beq v0, v1, 0x40ef4               |         goto label_11;
                                                 |     }
    0x00040dc4 lw t9, -0x7acc(gp)                |     t9 = sym.ap_allow_options;
    0x00040dc8 move a0, s1                       |     a0 = s1;
    0x00040dcc bal 0x368f0                       |     sym_ap_allow_options ();
    0x00040dd0 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x00040dd4 andi v0, v0, 4                    |     v0 &= 4;
    0x00040dd8 lw a3, (s1)                       |     a3 = *(s1);
    0x00040ddc lw t9, -0x7250(gp)                |     t9 = sym.imp.apr_stat;
    0x00040de0 lw a1, 0xe8(s1)                   |     a1 = *((s1 + 58));
                                                 |     if (v0 == 0) {
    0x00040de4 beqz v0, 0x40e8c                  |         goto label_12;
                                                 |     }
    0x00040de8 ori a2, zero, 0x8170              |     a2 = 0x8170;
    0x00040dec move a0, s3                       |     a0 = s3;
    0x00040df0 jalr t9                           |     t9 ();
    0x00040df4 lw gp, 0x18(sp)                   |     gp = *(var_18h);
                                                 |     if (v0 != 0) {
    0x00040df8 bnez v0, 0x40ea0                  |         goto label_13;
                                                 |     }
                                                 |     do {
    0x00040dfc lw v0, 0x16c(s1)                  |         v0 = *(s1);
                                                 | label_0:
    0x00040e00 addiu v1, zero, 6                 |         v1 = 6;
    0x00040e04 lw t9, -0x7acc(gp)                |         t9 = sym.ap_allow_options;
                                                 |         if (v0 == v1) {
    0x00040e08 beq v0, v1, 0x40f80               |             goto label_14;
                                                 |         }
    0x00040e0c addiu v1, zero, 2                 |         v1 = 2;
                                                 |         if (v0 == v1) {
                                                 | label_3:
    0x00040e10 beql v0, v1, 0x40fc8              |             goto label_15;
                                                 |         }
    0x00040e14 lw s0, 0xe8(s1)                   |         s0 = *((s1 + 58));
                                                 | label_1:
    0x00040e18 lw a3, 0xf4(s2)                   |         a3 = *((s2 + 61));
                                                 | label_5:
    0x00040e1c lw a1, 0xe4(s1)                   |         a1 = *((s1 + 57));
                                                 |         if (a3 != 0) {
    0x00040e20 beqz a3, 0x40e3c                  |             
    0x00040e24 lb v0, (a3)                       |             v0 = *(a3);
    0x00040e28 lw t9, -0x7d84(gp)                |             t9 = sym.ap_parse_uri;
                                                 |             if (v0 == 0) {
    0x00040e2c beqz v0, 0x40e40                  |                 goto label_16;
                                                 |             }
    0x00040e30 addiu v0, zero, 1                 |             v0 = 1;
    0x00040e34 lw a2, -0x7fac(gp)                |             a2 = *(gp);
                                                 |             if (s4 == v0) {
    0x00040e38 beq s4, v0, 0x410bc               |                 goto label_17;
                                                 |             }
                                                 |         }
    0x00040e3c lw t9, -0x7d84(gp)                |         t9 = sym.ap_parse_uri;
                                                 | label_16:
    0x00040e40 move a0, s1                       |         a0 = s1;
    0x00040e44 bal 0x2c2e0                       |         sym_ap_parse_uri ();
    0x00040e48 lw gp, 0x18(sp)                   |         gp = *(var_18h);
                                                 | label_8:
    0x00040e4c lw t9, -0x7adc(gp)                |         t9 = sym.ap_is_recursion_limit_exceeded;
    0x00040e50 move a0, s2                       |         a0 = s2;
    0x00040e54 bal 0x3b310                       |         sym_ap_is_recursion_limit_exceeded ();
    0x00040e58 lw gp, 0x18(sp)                   |         gp = *(var_18h);
                                                 |         if (v0 == 0) {
    0x00040e5c beqz v0, 0x40eb8                  |             goto label_18;
                                                 |         }
    0x00040e60 addiu v0, zero, 0x1f4             |         v0 = aav.0x000001f4;
    0x00040e64 sw v0, 0x44(s1)                   |         *((s1 + 17)) = v0;
    0x00040e68 lw ra, 0x34(sp)                   |         ra = *(var_34h);
                                                 | label_2:
    0x00040e6c move v0, s1                       |         v0 = s1;
    0x00040e70 lw s4, 0x30(sp)                   |         s4 = *(var_30h);
    0x00040e74 lw s3, 0x2c(sp)                   |         s3 = *(var_2ch);
    0x00040e78 lw s2, 0x28(sp)                   |         s2 = *(var_28h);
    0x00040e7c lw s1, 0x24(sp)                   |         s1 = *(var_24h);
    0x00040e80 lw s0, 0x20(sp)                   |         s0 = *(var_20h);
    0x00040e84 addiu sp, sp, 0x38                |         
    0x00040e88 jr ra                             |         return v0;
                                                 | label_12:
    0x00040e8c ori a2, zero, 0x8171              |         a2 = 0x8171;
    0x00040e90 move a0, s3                       |         a0 = s3;
    0x00040e94 jalr t9                           |         t9 ();
    0x00040e98 lw gp, 0x18(sp)                   |         gp = *(var_18h);
    0x00040e9c beqz v0, 0x40dfc                  |         
                                                 |     } while (v0 == 0);
                                                 | label_13:
    0x00040ea0 lui v1, 1                         |     v1 = 0x11178;
    0x00040ea4 addiu v1, v1, 0x1178              |     
                                                 |     if (v0 == v1) {
    0x00040ea8 beql v0, v1, 0x40e00              |         goto label_0;
                                                 |     }
    0x00040eac lw v0, 0x16c(s1)                  |     v0 = *(s1);
    0x00040eb0 sw zero, 0x16c(s1)                |     *(s1) = 0;
    0x00040eb4 b 0x40e18                         |     goto label_1;
                                                 | label_18:
    0x00040eb8 lw t9, -0x7ad4(gp)                |     t9 = sym.ap_process_request_internal;
    0x00040ebc move a0, s1                       |     a0 = s1;
    0x00040ec0 bal 0x3f9dc                       |     sym_ap_process_request_internal ();
    0x00040ec4 lw ra, 0x34(sp)                   |     ra = *(var_34h);
                                                 |     if (v0 == 0) {
    0x00040ec8 beqz v0, 0x40e6c                  |         goto label_2;
                                                 |     }
                                                 | label_4:
    0x00040ecc lw ra, 0x34(sp)                   |     ra = *(var_34h);
    0x00040ed0 sw v0, 0x44(s1)                   |     *((s1 + 17)) = v0;
    0x00040ed4 lw s4, 0x30(sp)                   |     s4 = *(var_30h);
    0x00040ed8 move v0, s1                       |     v0 = s1;
    0x00040edc lw s3, 0x2c(sp)                   |     s3 = *(var_2ch);
    0x00040ee0 lw s2, 0x28(sp)                   |     s2 = *(var_28h);
    0x00040ee4 lw s1, 0x24(sp)                   |     s1 = *(var_24h);
    0x00040ee8 lw s0, 0x20(sp)                   |     s0 = *(var_20h);
    0x00040eec addiu sp, sp, 0x38                |     
    0x00040ef0 jr ra                             |     return v0;
                                                 | label_11:
    0x00040ef4 move a0, s0                       |     a0 = s0;
    0x00040ef8 move v0, s3                       |     v0 = s3;
    0x00040efc addiu t0, s0, 0x60                |     t0 = s0 + 0x60;
                                                 |     do {
    0x00040f00 lwl a3, 3(a0)                     |         __asm ("lwl a3, 3(a0)");
    0x00040f04 lwl a2, 7(a0)                     |         __asm ("lwl a2, 7(a0)");
    0x00040f08 lwl a1, 0xb(a0)                   |         __asm ("lwl a1, 0xb(a0)");
    0x00040f0c lwl v1, 0xf(a0)                   |         __asm ("lwl v1, 0xf(a0)");
    0x00040f10 lwr a3, (a0)                      |         __asm ("lwr a3, (a0)");
    0x00040f14 lwr a2, 4(a0)                     |         __asm ("lwr a2, 4(a0)");
    0x00040f18 lwr v1, 0xc(a0)                   |         __asm ("lwr v1, 0xc(a0)");
    0x00040f1c lwr a1, 8(a0)                     |         __asm ("lwr a1, 8(a0)");
    0x00040f20 swl a3, 3(v0)                     |         __asm ("swl a3, 3(v0)");
    0x00040f24 swr a3, (v0)                      |         __asm ("swr a3, (v0)");
    0x00040f28 swl a2, 7(v0)                     |         __asm ("swl a2, 7(v0)");
    0x00040f2c swr a2, 4(v0)                     |         __asm ("swr a2, 4(v0)");
    0x00040f30 swl a1, 0xb(v0)                   |         __asm ("swl a1, 0xb(v0)");
    0x00040f34 swr a1, 8(v0)                     |         __asm ("swr a1, 8(v0)");
    0x00040f38 addiu a0, a0, 0x10                |         a0 += 0x10;
    0x00040f3c swl v1, 0xf(v0)                   |         __asm ("swl v1, 0xf(v0)");
    0x00040f40 swr v1, 0xc(v0)                   |         __asm ("swr v1, 0xc(v0)");
    0x00040f44 addiu v0, v0, 0x10                |         v0 += 0x10;
    0x00040f48 bne a0, t0, 0x40f00               |         
                                                 |     } while (a0 != t0);
    0x00040f4c lwl a1, 3(a0)                     |     __asm ("lwl a1, 3(a0)");
    0x00040f50 lwl v1, 7(a0)                     |     __asm ("lwl v1, 7(a0)");
    0x00040f54 lwr a1, (a0)                      |     __asm ("lwr a1, (a0)");
    0x00040f58 lwr v1, 4(a0)                     |     __asm ("lwr v1, 4(a0)");
    0x00040f5c swl a1, 3(v0)                     |     __asm ("swl a1, 3(v0)");
    0x00040f60 swr a1, (v0)                      |     __asm ("swr a1, (v0)");
    0x00040f64 swl v1, 7(v0)                     |     __asm ("swl v1, 7(v0)");
    0x00040f68 swr v1, 4(v0)                     |     __asm ("swr v1, 4(v0)");
    0x00040f6c lw v0, 0x16c(s1)                  |     v0 = *(s1);
    0x00040f70 addiu v1, zero, 6                 |     v1 = 6;
    0x00040f74 addiu v1, zero, 2                 |     v1 = 2;
                                                 |     if (v0 != v1) {
    0x00040f78 bne v0, v1, 0x40e10               |         goto label_3;
                                                 |     }
    0x00040f7c lw t9, -0x7acc(gp)                |     t9 = sym.ap_allow_options;
                                                 | label_14:
    0x00040f80 move a0, s1                       |     a0 = s1;
    0x00040f84 lw s0, 0xe8(s1)                   |     s0 = *((s1 + 58));
    0x00040f88 bal 0x368f0                       |     sym_ap_allow_options ();
    0x00040f8c lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x00040f90 lw a3, (s1)                       |     a3 = *(s1);
    0x00040f94 move a2, v0                       |     a2 = v0;
    0x00040f98 lw t9, -0x7c54(gp)                |     t9 = *(gp);
    0x00040f9c move a1, s3                       |     a1 = s3;
                                                 |     /* fcn.0003bcec */
    0x00040fa0 addiu t9, t9, -0x4314             |     t9 += -0x4314;
    0x00040fa4 move a0, s0                       |     a0 = s0;
    0x00040fa8 bal 0x3bcec                       |     fcn_0003bcec ();
    0x00040fac lw gp, 0x18(sp)                   |     gp = *(var_18h);
                                                 |     if (v0 != 0) {
    0x00040fb0 bnez v0, 0x40ecc                  |         goto label_4;
                                                 |     }
    0x00040fb4 lw v0, 0x16c(s1)                  |     v0 = *(s1);
    0x00040fb8 addiu v1, zero, 2                 |     v1 = 2;
    0x00040fbc lw a3, 0xf4(s2)                   |     a3 = *((s2 + 61));
                                                 |     if (v0 == v1) {
    0x00040fc0 bnel v0, v1, 0x40e1c              |         goto label_5;
                                                 |     }
    0x00040fc4 lw s0, 0xe8(s1)                   |     s0 = *((s1 + 58));
                                                 | label_15:
    0x00040fc8 lw t9, -0x74c4(gp)                |     t9 = sym.imp.strlen;
    0x00040fcc move a0, s0                       |     a0 = s0;
    0x00040fd0 jalr t9                           |     t9 ();
    0x00040fd4 addu v0, s0, v0                   |     v0 = s0 + v0;
    0x00040fd8 addiu v1, zero, 0x2f              |     v1 = 0x2f;
    0x00040fdc lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x00040fe0 sb v1, (v0)                       |     *(v0) = v1;
    0x00040fe4 sb zero, 1(v0)                    |     *((v0 + 1)) = 0;
    0x00040fe8 lw v0, 0xf0(s1)                   |     v0 = *((s1 + 60));
                                                 |     if (v0 == 0) {
    0x00040fec beql v0, zero, 0x41004            |         goto label_19;
                                                 |     }
    0x00040ff0 lw s0, 0xe4(s1)                   |     s0 = *((s1 + 57));
    0x00040ff4 lb v0, (v0)                       |     v0 = *(v0);
    0x00040ff8 lw a3, 0xf4(s2)                   |     a3 = *((s2 + 61));
                                                 |     if (v0 == 0) {
    0x00040ffc bnel v0, zero, 0x40e1c            |         goto label_5;
                                                 |     }
    0x00041000 lw s0, 0xe4(s1)                   |     s0 = *((s1 + 57));
                                                 | label_19:
    0x00041004 lw t9, -0x74c4(gp)                |     t9 = sym.imp.strlen;
    0x00041008 move a0, s0                       |     a0 = s0;
    0x0004100c jalr t9                           |     t9 ();
    0x00041010 addu v0, s0, v0                   |     v0 = s0 + v0;
    0x00041014 addiu v1, zero, 0x2f              |     v1 = 0x2f;
    0x00041018 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0004101c sb v1, (v0)                       |     *(v0) = v1;
    0x00041020 sb zero, 1(v0)                    |     *((v0 + 1)) = 0;
    0x00041024 b 0x40e18                         |     goto label_1;
                                                 | label_10:
    0x00041028 lw t9, -0x7654(gp)                |     t9 = sym.imp.apr_pstrdup;
    0x0004102c jalr t9                           |     t9 ();
    0x00041030 nop                               |     
    0x00041034 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x00041038 lw a1, 0xf0(s2)                   |     a1 = *((s2 + 60));
    0x0004103c move a0, v0                       |     a0 = v0;
    0x00041040 lw t9, -0x7ac8(gp)                |     t9 = sym.ap_find_path_info;
    0x00041044 move s3, v0                       |     s3 = v0;
    0x00041048 bal 0x54efc                       |     sym_ap_find_path_info ();
    0x0004104c addu v0, s3, v0                   |     v0 = s3 + v0;
    0x00041050 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x00041054 sb zero, (v0)                     |     *(v0) = 0;
    0x00041058 lw a0, (s1)                       |     a0 = *(s1);
    0x0004105c lw t9, -0x7e88(gp)                |     t9 = sym.ap_make_dirstr_parent;
    0x00041060 move a1, s3                       |     a1 = s3;
    0x00041064 jalr t9                           |     t9 ();
    0x00041068 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0004106c lw a2, 0x5c(s0)                   |     a2 = *((s0 + 23));
    0x00041070 lw a0, (s1)                       |     a0 = *(s1);
    0x00041074 lw t9, -0x7e84(gp)                |     t9 = sym.ap_make_full_path;
    0x00041078 move a1, v0                       |     a1 = v0;
    0x0004107c jalr t9                           |     t9 ();
    0x00041080 move a1, v0                       |     a1 = v0;
    0x00041084 addiu v0, zero, 1                 |     v0 = 1;
    0x00041088 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0004108c sw a1, 0xe4(s1)                   |     *((s1 + 57)) = a1;
    0x00041090 beq s4, v0, 0x410ec               |     
                                                 |     while (1) {
    0x00041094 lw t9, -0x7ae0(gp)                |         t9 = sym.ap_os_escape_path;
    0x00041098 lw a0, (s1)                       |         a0 = *(s1);
    0x0004109c addiu a2, zero, 1                 |         a2 = 1;
    0x000410a0 jalr t9                           |         t9 ();
    0x000410a4 lw gp, 0x18(sp)                   |         gp = *(var_18h);
    0x000410a8 sw v0, 0xe4(s1)                   |         *((s1 + 57)) = v0;
    0x000410ac b 0x40d64                         |         goto label_6;
                                                 | label_9:
    0x000410b0 lw a0, (v0)                       |         a0 = *(v0);
    0x000410b4 lw a1, 0xe4(s2)                   |         a1 = *((s2 + 57));
    0x000410b8 b 0x40d1c                         |         goto label_7;
                                                 | label_17:
    0x000410bc lw t9, -0x76e8(gp)                |         t9 = sym.imp.apr_pstrcat
    0x000410c0 lw a0, (s2)                       |         a0 = *(s2);
    0x000410c4 addiu a2, a2, -0xc80              |         a2 += -0xc80;
    0x000410c8 sw zero, 0x10(sp)                 |         *(var_10h) = 0;
    0x000410cc jalr t9                           |         t9 ();
    0x000410d0 lw gp, 0x18(sp)                   |         gp = *(var_18h);
    0x000410d4 move a1, v0                       |         a1 = v0;
    0x000410d8 lw t9, -0x7d84(gp)                |         t9 = sym.ap_parse_uri;
    0x000410dc move a0, s1                       |         a0 = s1;
    0x000410e0 bal 0x2c2e0                       |         sym_ap_parse_uri ();
    0x000410e4 lw gp, 0x18(sp)                   |         gp = *(var_18h);
    0x000410e8 b 0x40e4c                         |         goto label_8;
    0x000410ec lw a2, 0xf0(s2)                   |         a2 = *((s2 + 60));
    0x000410f0 lw t9, -0x7e84(gp)                |         t9 = sym.ap_make_full_path;
    0x000410f4 lw a0, (s1)                       |         a0 = *(s1);
                                                 |         /* esilref: '_hack_ap_register_input_filter' */
    0x000410f8 addiu a2, a2, 1                   |         a2++;
    0x000410fc jalr t9                           |         t9 ();
    0x00041100 lw gp, 0x18(sp)                   |         gp = *(var_18h);
    0x00041104 lw a1, 0xf0(s2)                   |         a1 = *((s2 + 60));
    0x00041108 lw a0, (s1)                       |         a0 = *(s1);
    0x0004110c lw t9, -0x7654(gp)                |         t9 = sym.imp.apr_pstrdup;
    0x00041110 sw v0, 0xe4(s1)                   |         *((s1 + 57)) = v0;
    0x00041114 jalr t9                           |         t9 ();
    0x00041118 lw gp, 0x18(sp)                   |         gp = *(var_18h);
    0x0004111c lw a1, 0xe4(s1)                   |         a1 = *((s1 + 57));
    0x00041120 sw v0, 0xf0(s1)                   |         *((s1 + 60)) = v0;
    0x00041124 b 0x41094                         |         
                                                 |     }
                                                 | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x4ca70 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.ap_walk_config ()            | void ap_walk_config () {
    0x0004ca70 lui gp, 5                     |     
    0x0004ca74 addiu gp, gp, 0x64b0          |     
    0x0004ca78 addu gp, gp, t9               |     gp += t9;
    0x0004ca7c addiu sp, sp, -0x60           |     
    0x0004ca80 lw v0, 0x3c(a1)               |     v0 = *((a1 + 15));
    0x0004ca84 sw gp, 0x20(sp)               |     *(var_20h) = gp;
    0x0004ca88 sw fp, 0x58(sp)               |     *(var_58h) = fp;
    0x0004ca8c sw ra, 0x5c(sp)               |     *(var_5ch) = ra;
    0x0004ca90 sw s7, 0x54(sp)               |     *(var_54h) = s7;
    0x0004ca94 sw s6, 0x50(sp)               |     *(var_50h) = s6;
    0x0004ca98 sw s5, 0x4c(sp)               |     *(var_4ch) = s5;
    0x0004ca9c sw s4, 0x48(sp)               |     *(var_48h) = s4;
    0x0004caa0 sw s3, 0x44(sp)               |     *(var_44h) = s3;
    0x0004caa4 sw s2, 0x40(sp)               |     *(var_40h) = s2;
    0x0004caa8 sw s1, 0x3c(sp)               |     *(var_3ch) = s1;
    0x0004caac sw s0, 0x38(sp)               |     *(var_38h) = s0;
    0x0004cab0 move fp, a1                   |     fp = a1;
    0x0004cab4 sw v0, 0x30(sp)               |     *(var_30h) = v0;
    0x0004cab8 sw a2, 0x3c(a1)               |     *((a1 + 15)) = a2;
                                             |     if (a0 == 0) {
    0x0004cabc beqz a0, 0x4cbcc              |         goto label_5;
                                             |     }
    0x0004cac0 lw v0, -0x7fac(gp)            |     v0 = *(gp);
    0x0004cac4 lw s7, -0x7fac(gp)            |     s7 = *(gp);
    0x0004cac8 lw s3, -0x7a1c(gp)            |     s3 = *(gp);
    0x0004cacc lw s2, -0x7fac(gp)            |     s2 = *(gp);
    0x0004cad0 sw v0, 0x2c(sp)               |     *(var_2ch) = v0;
    0x0004cad4 lw s5, -0x7f14(gp)            |     s5 = *((gp - 8133));
                                             |     /* str.AH02296:_Unknown_directive__s_perhaps_misspelled_or_defined_by_a_module_not_included_in_the_server_configuration */
    0x0004cad8 addiu v0, s7, 0x750           |     v0 = s7 + aav.0x00000750;
    0x0004cadc move s4, a2                   |     s4 = a2;
    0x0004cae0 move s0, a0                   |     s0 = a0;
    0x0004cae4 sw v0, 0x34(sp)               |     *(var_34h) = v0;
                                             |     /* fcn.00049024 */
    0x0004cae8 addiu s3, s3, -0x6fdc         |     s3 += -0x6fdc;
    0x0004caec addiu s2, s2, 0x36c           |     s2 += aav.0x0000036c;
                                             | label_3:
    0x0004caf0 lw a1, (s0)                   |     a1 = *(s0);
                                             | label_0:
    0x0004caf4 lw t9, -0x7654(gp)            |     t9 = sym.imp.apr_pstrdup;
    0x0004caf8 lw a0, 0x2c(fp)               |     a0 = *(arg_2ch);
    0x0004cafc sw s0, 0x24(fp)               |     *(arg_24h) = s0;
    0x0004cb00 jalr t9                       |     t9 ();
    0x0004cb04 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0004cb08 move a0, v0                   |     a0 = v0;
    0x0004cb0c lw t9, -0x7ec4(gp)            |     t9 = sym.ap_str_tolower;
    0x0004cb10 move s1, v0                   |     s1 = v0;
    0x0004cb14 jalr t9                       |     t9 ();
    0x0004cb18 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0004cb1c lw a0, -0x3c50(s5)            |     a0 = *((s5 - 3860));
    0x0004cb20 addiu a2, zero, -1            |     a2 = -1;
    0x0004cb24 lw t9, -0x7200(gp)            |     t9 = sym.imp.apr_hash_get;
    0x0004cb28 move a1, s1                   |     a1 = s1;
    0x0004cb2c jalr t9                       |     t9 ();
    0x0004cb30 move s6, v0                   |     s6 = v0;
    0x0004cb34 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 == 0) {
    0x0004cb38 beqz v0, 0x4cc0c              |         goto label_6;
                                             |     }
    0x0004cb3c lw s1, -0x7bb0(gp)            |     s1 = sym.ap_set_config_vectors;
    0x0004cb40 lw v0, 0x28(fp)               |     v0 = *(arg_28h);
                                             |     do {
    0x0004cb44 lw a2, 0x34(fp)               |         a2 = *(arg_34h);
    0x0004cb48 lw a0, 0x30(fp)               |         a0 = *(arg_30h);
    0x0004cb4c lw a3, 4(s6)                  |         a3 = *((s6 + 1));
    0x0004cb50 move a1, s4                   |         a1 = s4;
    0x0004cb54 move t9, s1                   |         t9 = s1;
    0x0004cb58 sw v0, 0x10(sp)               |         *(var_10h) = v0;
    0x0004cb5c bal 0x4c74c                   |         sym_ap_set_config_vectors ();
    0x0004cb60 lw a2, 8(s6)                  |         a2 = *((s6 + 2));
    0x0004cb64 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x0004cb68 move a0, a2                   |         a0 = a2;
    0x0004cb6c lw a3, 0xc(a2)                |         a3 = *((a2 + 3));
    0x0004cb70 move a1, fp                   |         a1 = fp;
    0x0004cb74 andi a3, a3, 0x100            |         a3 &= aav.0x00000100;
    0x0004cb78 move a2, v0                   |         a2 = v0;
                                             |         if (a3 == 0) {
    0x0004cb7c bnez a3, 0x4cbb4              |             
    0x0004cb80 move t9, s3                   |             t9 = s3;
    0x0004cb84 lw a3, 4(s0)                  |             a3 = *((s0 + 1));
    0x0004cb88 bal 0x49024                   |             fcn_00049024 ();
    0x0004cb8c lw gp, 0x20(sp)               |             gp = *(var_20h);
    0x0004cb90 move a1, s2                   |             a1 = s2;
    0x0004cb94 move s7, v0                   |             s7 = v0;
    0x0004cb98 move a0, v0                   |             a0 = v0;
    0x0004cb9c lw t9, -0x7740(gp)            |             t9 = sym.imp.strcmp;
                                             |             if (v0 == 0) {
    0x0004cba0 beqz v0, 0x4cbb4              |                 goto label_7;
                                             |             }
    0x0004cba4 jalr t9                       |             t9 ();
    0x0004cba8 nop                           |             
    0x0004cbac lw gp, 0x20(sp)               |             gp = *(var_20h);
                                             |             if (v0 != 0) {
    0x0004cbb0 bnez v0, 0x4cc88              |                 goto label_8;
                                             |             }
                                             |         }
                                             | label_7:
    0x0004cbb4 lw s6, (s6)                   |         s6 = *(s6);
    0x0004cbb8 lw v0, 0x28(fp)               |         v0 = *(arg_28h);
    0x0004cbbc bnel s6, zero, 0x4cb44        |         
                                             |     } while (s6 == 0);
                                             | label_1:
    0x0004cbc0 lw s0, 8(s0)                  |     s0 = *((s0 + 2));
    0x0004cbc4 lw a1, (s0)                   |     a1 = *(s0);
                                             |     if (s0 == 0) {
    0x0004cbc8 bnel s0, zero, 0x4caf4        |         goto label_0;
                                             |     }
                                             | label_5:
    0x0004cbcc lw v0, 0x30(sp)               |     v0 = *(var_30h);
                                             | label_4:
    0x0004cbd0 lw ra, 0x5c(sp)               |     ra = *(var_5ch);
    0x0004cbd4 move s7, zero                 |     s7 = 0;
    0x0004cbd8 sw v0, 0x3c(fp)               |     *(arg_3ch) = v0;
    0x0004cbdc lw s6, 0x50(sp)               |     s6 = *(var_50h);
    0x0004cbe0 move v0, s7                   |     v0 = s7;
    0x0004cbe4 lw fp, 0x58(sp)               |     fp = *(var_58h);
    0x0004cbe8 lw s7, 0x54(sp)               |     s7 = *(var_54h);
    0x0004cbec lw s5, 0x4c(sp)               |     s5 = *(var_4ch);
    0x0004cbf0 lw s4, 0x48(sp)               |     s4 = *(var_48h);
    0x0004cbf4 lw s3, 0x44(sp)               |     s3 = *(var_44h);
    0x0004cbf8 lw s2, 0x40(sp)               |     s2 = *(var_40h);
    0x0004cbfc lw s1, 0x3c(sp)               |     s1 = *(var_3ch);
    0x0004cc00 lw s0, 0x38(sp)               |     s0 = *(var_38h);
    0x0004cc04 addiu sp, sp, 0x60            |     
    0x0004cc08 jr ra                         |     return v0;
                                             | label_6:
    0x0004cc0c lw v0, 4(fp)                  |     v0 = *(arg_4h);
    0x0004cc10 andi v0, v0, 0x400            |     v0 &= aav.0x00000400;
    0x0004cc14 sw s0, 0x40(fp)               |     *(arg_40h) = s0;
                                             |     if (v0 != 0) {
    0x0004cc18 bnez v0, 0x4cca0              |         goto label_9;
                                             |     }
    0x0004cc1c lw a1, -0x7fac(gp)            |     a1 = *(gp);
    0x0004cc20 lw v0, 0x2c(sp)               |     v0 = *(var_2ch);
    0x0004cc24 lw t9, -0x76e8(gp)            |     t9 = sym.imp.apr_pstrcat
    0x0004cc28 lw a2, (s0)                   |     a2 = *(s0);
    0x0004cc2c lw a0, 0x28(fp)               |     a0 = *(arg_28h);
    0x0004cc30 addiu a3, v0, 0x404           |     a3 = v0 + aav.0x00000404;
    0x0004cc34 sw zero, 0x10(sp)             |     *(var_10h) = 0;
                                             |     /* str.Invalid_command_ */
    0x0004cc38 addiu a1, a1, 0x45c           |     a1 += aav.0x0000045c;
    0x0004cc3c jalr t9                       |     t9 ();
    0x0004cc40 move s7, v0                   |     s7 = v0;
    0x0004cc44 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 == 0) {
    0x0004cc48 beqz v0, 0x4cbc0              |         goto label_1;
                                             |     }
    0x0004cc4c lw v0, 0x30(sp)               |     v0 = *(var_30h);
                                             |     do {
    0x0004cc50 sw v0, 0x3c(fp)               |         *(arg_3ch) = v0;
                                             | label_2:
    0x0004cc54 lw ra, 0x5c(sp)               |         ra = *(var_5ch);
    0x0004cc58 move v0, s7                   |         v0 = s7;
    0x0004cc5c lw fp, 0x58(sp)               |         fp = *(var_58h);
    0x0004cc60 lw s7, 0x54(sp)               |         s7 = *(var_54h);
    0x0004cc64 lw s6, 0x50(sp)               |         s6 = *(var_50h);
    0x0004cc68 lw s5, 0x4c(sp)               |         s5 = *(var_4ch);
    0x0004cc6c lw s4, 0x48(sp)               |         s4 = *(var_48h);
    0x0004cc70 lw s3, 0x44(sp)               |         s3 = *(var_44h);
    0x0004cc74 lw s2, 0x40(sp)               |         s2 = *(var_40h);
    0x0004cc78 lw s1, 0x3c(sp)               |         s1 = *(var_3ch);
    0x0004cc7c lw s0, 0x38(sp)               |         s0 = *(var_38h);
    0x0004cc80 addiu sp, sp, 0x60            |         
    0x0004cc84 jr ra                         |         return v0;
                                             | label_8:
    0x0004cc88 lw v0, 0x40(fp)               |         v0 = *(arg_40h);
    0x0004cc8c lw v0, 0x30(sp)               |         v0 = *(var_30h);
    0x0004cc90 bnez v0, 0x4cc50              |         
                                             |     } while (v0 != 0);
    0x0004cc94 sw s0, 0x40(fp)               |     *(arg_40h) = s0;
    0x0004cc98 sw v0, 0x3c(fp)               |     *(arg_3ch) = v0;
    0x0004cc9c b 0x4cc54                     |     goto label_2;
                                             | label_9:
    0x0004cca0 lw v0, 0x2c(fp)               |     v0 = *(arg_2ch);
    0x0004cca4 lw a0, -0x7fac(gp)            |     a0 = *(gp);
    0x0004cca8 lw v1, 0x34(sp)               |     v1 = *(var_34h);
    0x0004ccac lw t9, -0x7ec8(gp)            |     t9 = sym.ap_log_perror_;
    0x0004ccb0 sw s1, 0x1c(sp)               |     *(var_1ch) = s1;
    0x0004ccb4 sw v1, 0x18(sp)               |     *(var_18h) = v1;
    0x0004ccb8 sw v0, 0x14(sp)               |     *(var_14h) = v0;
    0x0004ccbc sw zero, 0x10(sp)             |     *(var_10h) = 0;
    0x0004ccc0 addiu a3, zero, 4             |     a3 = 4;
    0x0004ccc4 move a2, zero                 |     a2 = 0;
    0x0004ccc8 addiu a1, zero, 0x521         |     a1 = 0x521;
                                             |     /* str._usr_src_debug_apache2_2.4.57_r0_httpd_2.4.57_server_config.c */
    0x0004cccc addiu a0, a0, 0x1f0           |     a0 += aav.0x000001f0;
    0x0004ccd0 bal 0x52cec                   |     sym_ap_log_perror_ ();
    0x0004ccd4 lw s0, 8(s0)                  |     s0 = *((s0 + 2));
    0x0004ccd8 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (s0 != 0) {
    0x0004ccdc bnez s0, 0x4caf0              |         goto label_3;
                                             |     }
    0x0004cce0 lw v0, 0x30(sp)               |     v0 = *(var_30h);
    0x0004cce4 b 0x4cbd0                     |     goto label_4;
                                             | }

[*] Function strcat used 78 times httpd