[*] Binary protection state of httpd

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


[*] Function popen tear down of httpd

    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x671a0 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.000671a0 ()                  | void fcn_000671a0 () {
    0x000671a0 lui gp, 4                     |     
    0x000671a4 addiu gp, gp, -0x4280         |     
    0x000671a8 addu gp, gp, t9               |     gp += t9;
    0x000671ac addiu sp, sp, -0x58           |     
    0x000671b0 lw t9, -0x775c(gp)            |     t9 = sym.imp.apr_array_make;
    0x000671b4 sw s5, 0x44(sp)               |     *(var_44h) = s5;
    0x000671b8 lw s5, -0x7534(gp)            |     s5 = *(gp);
    0x000671bc sw s3, 0x3c(sp)               |     *(var_3ch) = s3;
    0x000671c0 move s3, a0                   |     s3 = a0;
    0x000671c4 lw v0, (s5)                   |     v0 = *(s5);
    0x000671c8 lw a0, (a0)                   |     a0 = *(a0);
    0x000671cc sw gp, 0x10(sp)               |     *(var_10h) = gp;
    0x000671d0 sw ra, 0x54(sp)               |     *(var_54h) = ra;
    0x000671d4 sw s7, 0x4c(sp)               |     *(var_4ch) = s7;
    0x000671d8 sw s4, 0x40(sp)               |     *(var_40h) = s4;
    0x000671dc sw s1, 0x34(sp)               |     *(var_34h) = s1;
    0x000671e0 sw s0, 0x30(sp)               |     *(var_30h) = s0;
    0x000671e4 addiu a2, zero, 4             |     a2 = 4;
    0x000671e8 addiu a1, zero, 0xa           |     a1 = 0xa;
    0x000671ec sw fp, 0x50(sp)               |     *(var_50h) = fp;
    0x000671f0 sw s6, 0x48(sp)               |     *(var_48h) = s6;
    0x000671f4 sw s2, 0x38(sp)               |     *(var_38h) = s2;
    0x000671f8 sw v0, 0x2c(sp)               |     *(var_2ch) = v0;
    0x000671fc jalr t9                       |     t9 ();
    0x00067200 nop                           |     
    0x00067204 lw gp, 0x10(sp)               |     gp = *(var_10h);
    0x00067208 lw a0, (s3)                   |     a0 = *(s3);
    0x0006720c move s4, v0                   |     s4 = v0;
    0x00067210 lw v1, -0x7f14(gp)            |     v1 = *((gp - 8133));
    0x00067214 lw t9, -0x763c(gp)            |     t9 = sym.imp.apr_hash_first;
    0x00067218 lw a1, -0x3380(v1)            |     a1 = *((v1 - 3296));
    0x0006721c jalr t9                       |     t9 ();
    0x00067220 lw a0, 8(s3)                  |     a0 = *((s3 + 2));
    0x00067224 move s7, v0                   |     s7 = v0;
    0x00067228 lw v1, 0x5c(s3)               |     v1 = *((s3 + 23));
    0x0006722c lw v0, 0x18(a0)               |     v0 = *((a0 + 6));
    0x00067230 lw gp, 0x10(sp)               |     gp = *(var_10h);
    0x00067234 lw s0, (v1)                   |     s0 = *(v1);
    0x00067238 lw v0, (v0)                   |     v0 = *(v0);
    0x0006723c lw s1, 4(v1)                  |     s1 = *((v1 + 1));
    0x00067240 sw v0, 0x1c(sp)               |     *(var_1ch) = v0;
                                             |     if (s7 == 0) {
    0x00067244 beqz s7, 0x672e8              |         goto label_2;
                                             |     }
    0x00067248 addiu s6, sp, 0x28            |     s6 = sp + 0x28;
    0x0006724c addiu fp, sp, 0x24            |     fp = sp + 0x24;
    0x00067250 sll s2, s1, 1                 |     s2 = s1 << 1;
    0x00067254 b 0x67270                     |     
                                             |     while (v0 == 0) {
    0x00067258 lw t9, -0x731c(gp)            |         t9 = sym.imp.apr_hash_next;
    0x0006725c move a0, s7                   |         a0 = s7;
    0x00067260 jalr t9                       |         t9 ();
    0x00067264 move s7, v0                   |         s7 = v0;
    0x00067268 lw gp, 0x10(sp)               |         gp = *(var_10h);
                                             |         if (v0 == 0) {
    0x0006726c beqz v0, 0x672e8              |             goto label_2;
                                             |         }
                                             | label_0:
    0x00067270 lw t9, -0x7398(gp)            |         t9 = sym.imp.apr_hash_this;
    0x00067274 move a1, fp                   |         a1 = fp;
    0x00067278 move a0, s7                   |         a0 = s7;
    0x0006727c move a3, s6                   |         a3 = s6;
    0x00067280 move a2, zero                 |         a2 = 0;
    0x00067284 jalr t9                       |         t9 ();
    0x00067288 lw v0, 0x28(sp)               |         v0 = *(var_28h);
    0x0006728c lw v1, (v0)                   |         v1 = *(v0);
    0x00067290 nor a0, zero, v1              |         __asm ("nor a0, zero, v1");
    0x00067294 srlv v0, s0, v1               |         v0 = s0 >> v1;
    0x00067298 sllv a0, s2, a0               |         a0 = s2 << a0;
    0x0006729c andi a1, v1, 0x20             |         a1 = v1 & 0x20;
    0x000672a0 or v0, a0, v0                 |         v0 = a0 | v0;
    0x000672a4 srav v1, s1, v1               |         __asm ("srav v1, s1, v1");
                                             |         if (a1 == 0) {
    0x000672a8 movn v0, v1, a1               |             v0 = v1;
                                             |         }
    0x000672ac andi v0, v0, 1                |         v0 &= 1;
    0x000672b0 lw gp, 0x10(sp)               |         gp = *(var_10h);
    0x000672b4 beqz v0, 0x67258              |         
                                             |     }
    0x000672b8 lw t9, -0x7324(gp)            |     t9 = sym.imp.apr_array_push;
    0x000672bc move a0, s4                   |     a0 = s4;
    0x000672c0 jalr t9                       |     t9 ();
    0x000672c4 lw gp, 0x10(sp)               |     gp = *(var_10h);
    0x000672c8 lw v1, 0x24(sp)               |     v1 = *(var_24h);
    0x000672cc move a0, s7                   |     a0 = s7;
    0x000672d0 lw t9, -0x731c(gp)            |     t9 = sym.imp.apr_hash_next;
    0x000672d4 sw v1, (v0)                   |     *(v0) = v1;
    0x000672d8 jalr t9                       |     t9 ();
    0x000672dc move s7, v0                   |     s7 = v0;
    0x000672e0 lw gp, 0x10(sp)               |     gp = *(var_10h);
                                             |     if (v0 != 0) {
    0x000672e4 bnez v0, 0x67270              |         goto label_0;
                                             |     }
                                             | label_2:
    0x000672e8 lw v0, 0x1c(sp)               |     v0 = *(var_1ch);
    0x000672ec lw v0, 0x30(v0)               |     v0 = *((v0 + 12));
    0x000672f0 lw t9, -0x7324(gp)            |     t9 = sym.imp.apr_array_push;
    0x000672f4 bnez v0, 0x67374              |     
                                             |     while (1) {
    0x000672f8 ext s0, s0, 0x1a, 1           |         __asm ("ext s0, s0, 0x1a, 1");
    0x000672fc lw t9, -0x75ec(gp)            |         t9 = sym.imp.apr_array_pstrcat;
                                             |         if (s0 != 0) {
    0x00067300 beqz s0, 0x67324              |             
    0x00067304 lw v0, 0x5c(s3)               |             v0 = *((s3 + 23));
    0x00067308 lw a1, 8(v0)                  |             a1 = *((v0 + 2));
                                             |             if (a1 == 0) {
    0x0006730c beql a1, zero, 0x67328        |                 goto label_3;
                                             |             }
    0x00067310 lw a0, (s3)                   |             a0 = *(s3);
    0x00067314 lw v0, 8(a1)                  |             v0 = *((a1 + 2));
    0x00067318 lw t9, -0x75a4(gp)            |             t9 = sym.imp.apr_array_cat;
                                             |             if (v0 != 0) {
    0x0006731c bnez v0, 0x67390              |                 goto label_4;
                                             |             }
                                             | label_1:
    0x00067320 lw t9, -0x75ec(gp)            |             t9 = sym.imp.apr_array_pstrcat;
                                             |         }
    0x00067324 lw a0, (s3)                   |         a0 = *(s3);
                                             | label_3:
    0x00067328 addiu a2, zero, 0x2c          |         a2 = 0x2c;
    0x0006732c move a1, s4                   |         a1 = s4;
    0x00067330 jalr t9                       |         t9 ();
    0x00067334 lw a0, 0x2c(sp)               |         a0 = *(var_2ch);
    0x00067338 lw v1, (s5)                   |         v1 = *(s5);
    0x0006733c lw gp, 0x10(sp)               |         gp = *(var_10h);
                                             |         if (a0 != v1) {
    0x00067340 bne a0, v1, 0x673a0           |             goto label_5;
                                             |         }
    0x00067344 lw ra, 0x54(sp)               |         ra = *(var_54h);
    0x00067348 lw fp, 0x50(sp)               |         fp = *(var_50h);
    0x0006734c lw s7, 0x4c(sp)               |         s7 = *(var_4ch);
    0x00067350 lw s6, 0x48(sp)               |         s6 = *(var_48h);
    0x00067354 lw s5, 0x44(sp)               |         s5 = *(var_44h);
    0x00067358 lw s4, 0x40(sp)               |         s4 = *(var_40h);
    0x0006735c lw s3, 0x3c(sp)               |         s3 = *(var_3ch);
    0x00067360 lw s2, 0x38(sp)               |         s2 = *(var_38h);
    0x00067364 lw s1, 0x34(sp)               |         s1 = *(var_34h);
    0x00067368 lw s0, 0x30(sp)               |         s0 = *(var_30h);
    0x0006736c addiu sp, sp, 0x58            |         
    0x00067370 jr ra                         |         return v1;
    0x00067374 move a0, s4                   |         a0 = s4;
    0x00067378 jalr t9                       |         t9 ();
    0x0006737c lw gp, 0x10(sp)               |         gp = *(var_10h);
    0x00067380 lw v1, -0x7fac(gp)            |         v1 = *(gp);
                                             |         /* str.TRACE */
    0x00067384 addiu v1, v1, 0x52a4          |         v1 += 0x52a4;
    0x00067388 sw v1, (v0)                   |         *(v0) = v1;
    0x0006738c b 0x672f8                     |         
                                             |     }
                                             | label_4:
    0x00067390 move a0, s4                   |     a0 = s4;
    0x00067394 jalr t9                       |     t9 ();
    0x00067398 lw gp, 0x10(sp)               |     gp = *(var_10h);
    0x0006739c b 0x67320                     |     goto label_1;
                                             | label_5:
    0x000673a0 lw t9, -0x75e8(gp)            |     t9 = sym.imp.__stack_chk_fail;
    0x000673a4 jalr t9                       |     t9 ();
    0x000673a8 nop                           |     
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x3657c */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.ap_add_per_dir_conf ()       | void ap_add_per_dir_conf () {
    0x0003657c lui gp, 7                     |     
    0x00036580 addiu gp, gp, -0x365c         |     
    0x00036584 addu gp, gp, t9               |     gp += t9;
    0x00036588 lw v0, 0x18(a0)               |     v0 = *((a0 + 6));
    0x0003658c addiu sp, sp, -0x20           |     
    0x00036590 lw t9, -0x7324(gp)            |     t9 = sym.imp.apr_array_push;
    0x00036594 lw v0, (v0)                   |     v0 = *(v0);
    0x00036598 sw s0, 0x18(sp)               |     *(var_18h) = s0;
    0x0003659c sw ra, 0x1c(sp)               |     *(var_1ch) = ra;
    0x000365a0 lw a0, 0xc(v0)                |     a0 = *((v0 + 3));
    0x000365a4 sw gp, 0x10(sp)               |     *(var_10h) = gp;
    0x000365a8 move s0, a1                   |     s0 = a1;
    0x000365ac jalr t9                       |     t9 ();
    0x000365b0 lw ra, 0x1c(sp)               |     ra = *(var_1ch);
    0x000365b4 sw s0, (v0)                   |     *(v0) = s0;
    0x000365b8 lw s0, 0x18(sp)               |     s0 = *(var_18h);
    0x000365bc addiu sp, sp, 0x20            |     
    0x000365c0 jr ra                         |     return v0;
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x365c4 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.ap_add_per_url_conf ()       | void ap_add_per_url_conf () {
    0x000365c4 lui gp, 7                     |     
    0x000365c8 addiu gp, gp, -0x36a4         |     
    0x000365cc addu gp, gp, t9               |     gp += t9;
    0x000365d0 lw v0, 0x18(a0)               |     v0 = *((a0 + 6));
    0x000365d4 addiu sp, sp, -0x20           |     
    0x000365d8 lw t9, -0x7324(gp)            |     t9 = sym.imp.apr_array_push;
    0x000365dc lw v0, (v0)                   |     v0 = *(v0);
    0x000365e0 sw s0, 0x18(sp)               |     *(var_18h) = s0;
    0x000365e4 sw ra, 0x1c(sp)               |     *(var_1ch) = ra;
    0x000365e8 lw a0, 0x10(v0)               |     a0 = *((v0 + 4));
    0x000365ec sw gp, 0x10(sp)               |     *(var_10h) = gp;
    0x000365f0 move s0, a1                   |     s0 = a1;
    0x000365f4 jalr t9                       |     t9 ();
    0x000365f8 lw ra, 0x1c(sp)               |     ra = *(var_1ch);
    0x000365fc sw s0, (v0)                   |     *(v0) = s0;
    0x00036600 lw s0, 0x18(sp)               |     s0 = *(var_18h);
    0x00036604 addiu sp, sp, 0x20            |     
    0x00036608 jr ra                         |     return v0;
                                             | }
    ; assembly                                       | /* r2dec pseudo code output */
                                                     | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x36774 */
                                                     | #include <stdint.h>
                                                     |  
    ; (fcn) sym.ap_core_reorder_directories ()       | void ap_core_reorder_directories () {
    0x00036774 lui gp, 7                             |     
    0x00036778 addiu gp, gp, -0x3854                 |     
    0x0003677c addu gp, gp, t9                       |     gp += t9;
    0x00036780 lw v0, 0x18(a1)                       |     v0 = *((a1 + 6));
    0x00036784 addiu sp, sp, -0x38                   |     
    0x00036788 lw v1, (v0)                           |     v1 = *(v0);
    0x0003678c sw s4, 0x30(sp)                       |     *(var_30h) = s4;
    0x00036790 sw s0, 0x20(sp)                       |     *(var_20h) = s0;
    0x00036794 lw s4, -0x7534(gp)                    |     s4 = *(gp);
    0x00036798 lw s0, 0xc(v1)                        |     s0 = *((v1 + 3));
    0x0003679c sw s2, 0x28(sp)                       |     *(var_28h) = s2;
    0x000367a0 lw v0, (s4)                           |     v0 = *(s4);
    0x000367a4 lw s2, 8(s0)                          |     s2 = *((s0 + 2));
    0x000367a8 sw gp, 0x10(sp)                       |     *(var_10h) = gp;
    0x000367ac sw ra, 0x34(sp)                       |     *(var_34h) = ra;
    0x000367b0 sw s3, 0x2c(sp)                       |     *(var_2ch) = s3;
    0x000367b4 sw s1, 0x24(sp)                       |     *(var_24h) = s1;
    0x000367b8 sw v0, 0x1c(sp)                       |     *(var_1ch) = v0;
    0x000367bc lw t9, -0x737c(gp)                    |     t9 = sym.imp.apr_pool_create_ex;
                                                     |     if (s2 == 0) {
    0x000367c0 bnez s2, 0x367f0                      |         
                                                     | label_0:
    0x000367c4 lw v1, 0x1c(sp)                       |         v1 = *(var_1ch);
    0x000367c8 lw v0, (s4)                           |         v0 = *(s4);
    0x000367cc lw ra, 0x34(sp)                       |         ra = *(var_34h);
                                                     |         if (v1 != v0) {
    0x000367d0 bne v1, v0, 0x368e4                   |             goto label_1;
                                                     |         }
    0x000367d4 lw s4, 0x30(sp)                       |         s4 = *(var_30h);
    0x000367d8 lw s3, 0x2c(sp)                       |         s3 = *(var_2ch);
    0x000367dc lw s2, 0x28(sp)                       |         s2 = *(var_28h);
    0x000367e0 lw s1, 0x24(sp)                       |         s1 = *(var_24h);
    0x000367e4 lw s0, 0x20(sp)                       |         s0 = *(var_20h);
    0x000367e8 addiu sp, sp, 0x38                    |         
    0x000367ec jr ra                                 |         return v1;
                                                     |     }
    0x000367f0 move a3, zero                         |     a3 = 0;
    0x000367f4 move a2, zero                         |     a2 = 0;
    0x000367f8 move a1, a0                           |     a1 = a0;
    0x000367fc addiu a0, sp, 0x18                    |     a0 = sp + 0x18;
    0x00036800 lw s1, 0x10(s0)                       |     s1 = *((s0 + 4));
    0x00036804 jalr t9                               |     t9 ();
    0x00036808 lw gp, 0x10(sp)                       |     gp = *(var_10h);
    0x0003680c lw a0, 0x18(sp)                       |     a0 = *(var_18h);
    0x00036810 lw a1, -0x7fac(gp)                    |     a1 = *(gp);
    0x00036814 lw t9, -0x7698(gp)                    |     t9 = sym.imp.apr_pool_tag;
                                                     |     /* str.core_reorder_directories */
    0x00036818 addiu a1, a1, -0x3b20                 |     a1 += -0x3b20;
    0x0003681c jalr t9                               |     t9 ();
    0x00036820 lw gp, 0x10(sp)                       |     gp = *(var_10h);
    0x00036824 lw a1, 8(s0)                          |     a1 = *((s0 + 2));
    0x00036828 lw a0, 0x18(sp)                       |     a0 = *(var_18h);
    0x0003682c lw t9, -0x7544(gp)                    |     t9 = sym.imp.apr_palloc;
    0x00036830 sll a1, a1, 3                         |     a1 <<= 3;
    0x00036834 jalr t9                               |     t9 ();
    0x00036838 move s3, v0                           |     s3 = v0;
    0x0003683c lw gp, 0x10(sp)                       |     gp = *(var_10h);
                                                     |     if (s2 <= 0) {
    0x00036840 blez s2, 0x368c0                      |         goto label_2;
                                                     |     }
    0x00036844 move s0, v0                           |     s0 = v0;
    0x00036848 move a1, s1                           |     a1 = s1;
    0x0003684c move a0, v0                           |     a0 = v0;
    0x00036850 move v1, zero                         |     v1 = 0;
                                                     |     do {
    0x00036854 lw a2, (a1)                           |         a2 = *(a1);
    0x00036858 sw v1, 4(a0)                          |         *((a0 + 1)) = v1;
    0x0003685c addiu v1, v1, 1                       |         v1++;
    0x00036860 sw a2, (a0)                           |         *(a0) = a2;
    0x00036864 addiu a1, a1, 4                       |         a1 += 4;
    0x00036868 addiu a0, a0, 8                       |         a0 += 8;
    0x0003686c bne s2, v1, 0x36854                   |         
                                                     |     } while (s2 != v1);
    0x00036870 lw a3, -0x7dd4(gp)                    |     a3 = *(gp);
    0x00036874 lw t9, -0x725c(gp)                    |     t9 = sym.imp.qsort;
    0x00036878 addiu a3, a3, -0x890                  |     a3 += -0x890;
    0x0003687c addiu a2, zero, 8                     |     a2 = 8;
    0x00036880 move a1, s2                           |     a1 = s2;
    0x00036884 move a0, s3                           |     a0 = s3;
    0x00036888 jalr t9                               |     t9 ();
    0x0003688c sll v0, s2, 3                         |     v0 = s2 << 3;
    0x00036890 lw gp, 0x10(sp)                       |     gp = *(var_10h);
    0x00036894 addu v0, s3, v0                       |     v0 = s3 + v0;
                                                     |     do {
    0x00036898 lw v1, (s0)                           |         v1 = *(s0);
    0x0003689c addiu s0, s0, 8                       |         s0 += 8;
    0x000368a0 sw v1, (s1)                           |         *(s1) = v1;
    0x000368a4 addiu s1, s1, 4                       |         s1 += 4;
    0x000368a8 bne s0, v0, 0x36898                   |         
                                                     |     } while (s0 != v0);
                                                     |     do {
    0x000368ac lw t9, -0x7428(gp)                    |         t9 = *(gp);
    0x000368b0 lw a0, 0x18(sp)                       |         a0 = *(var_18h);
    0x000368b4 jalr t9                               |         t9 ();
    0x000368b8 lw gp, 0x10(sp)                       |         gp = *(var_10h);
    0x000368bc b 0x367c4                             |         goto label_0;
                                                     | label_2:
    0x000368c0 lw a3, -0x7dd4(gp)                    |         a3 = *(gp);
    0x000368c4 lw t9, -0x725c(gp)                    |         t9 = sym.imp.qsort;
    0x000368c8 addiu a3, a3, -0x890                  |         a3 += -0x890;
    0x000368cc addiu a2, zero, 8                     |         a2 = 8;
    0x000368d0 move a1, s2                           |         a1 = s2;
    0x000368d4 move a0, v0                           |         a0 = v0;
    0x000368d8 jalr t9                               |         t9 ();
    0x000368dc lw gp, 0x10(sp)                       |         gp = *(var_10h);
    0x000368e0 b 0x368ac                             |         
                                                     |     } while (1);
                                                     | label_1:
    0x000368e4 lw t9, -0x75e8(gp)                    |     t9 = sym.imp.__stack_chk_fail;
    0x000368e8 jalr t9                               |     t9 ();
    0x000368ec nop                                   |     
                                                     | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x35a78 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.ap_core_translate ()         | void ap_core_translate () {
    0x00035a78 lui gp, 7                     |     
    0x00035a7c addiu gp, gp, -0x2b58         |     
    0x00035a80 addu gp, gp, t9               |     gp += t9;
    0x00035a84 addiu sp, sp, -0x50           |     
    0x00035a88 sw s2, 0x38(sp)               |     *(var_38h) = s2;
    0x00035a8c lw s2, 0x20(a0)               |     s2 = *((a0 + 8));
    0x00035a90 sw gp, 0x28(sp)               |     *(var_28h) = gp;
    0x00035a94 sw ra, 0x4c(sp)               |     *(var_4ch) = ra;
    0x00035a98 sw s6, 0x48(sp)               |     *(var_48h) = s6;
    0x00035a9c sw s5, 0x44(sp)               |     *(var_44h) = s5;
    0x00035aa0 sw s4, 0x40(sp)               |     *(var_40h) = s4;
    0x00035aa4 sw s3, 0x3c(sp)               |     *(var_3ch) = s3;
    0x00035aa8 sw s1, 0x34(sp)               |     *(var_34h) = s1;
    0x00035aac sw s0, 0x30(sp)               |     *(var_30h) = s0;
    0x00035ab0 lw ra, 0x4c(sp)               |     ra = *(var_4ch);
                                             |     if (s2 == 0) {
    0x00035ab4 bnel s2, zero, 0x35c00        |         goto label_3;
                                             |     }
    0x00035ab8 lw s0, 0xe4(a0)               |     s0 = *((a0 + 57));
    0x00035abc move s1, a0                   |     s1 = a0;
                                             |     if (s0 == 0) {
    0x00035ac0 beqz s0, 0x35c44              |         goto label_4;
                                             |     }
    0x00035ac4 lb s6, (s0)                   |     s6 = *(s0);
    0x00035ac8 addiu v0, zero, 0x2f          |     v0 = 0x2f;
    0x00035acc lw a1, -0x7fac(gp)            |     a1 = *(gp);
                                             |     if (s6 == v0) {
    0x00035ad0 beq s6, v0, 0x35bb8           |         goto label_5;
                                             |     }
    0x00035ad4 lw t9, -0x7740(gp)            |     t9 = sym.imp.strcmp;
                                             |     /* esilref: ' ' */
    0x00035ad8 addiu a1, a1, -0x7950         |     a1 += -aav.0x00007950;
    0x00035adc move a0, s0                   |     a0 = s0;
    0x00035ae0 jalr t9                       |     t9 ();
    0x00035ae4 lw gp, 0x28(sp)               |     gp = *(var_28h);
                                             |     if (v0 != 0) {
    0x00035ae8 bnez v0, 0x35c44              |         goto label_4;
                                             |     }
    0x00035aec lw s4, 8(s1)                  |     s4 = *((s1 + 2));
    0x00035af0 lw s3, 0x60(s4)               |     s3 = *((s4 + 24));
    0x00035af4 lw t9, -0x76c4(gp)            |     t9 = sym.imp.strncmp;
                                             |     if (s3 == 0) {
    0x00035af8 beqz s3, 0x35b44              |         goto label_6;
                                             |     }
    0x00035afc lw s5, 0x64(s4)               |     s5 = *((s4 + 25));
    0x00035b00 move a2, s5                   |     a2 = s5;
    0x00035b04 move a1, s3                   |     a1 = s3;
    0x00035b08 move a0, s0                   |     a0 = s0;
    0x00035b0c jalr t9                       |     t9 ();
    0x00035b10 lw gp, 0x28(sp)               |     gp = *(var_28h);
    0x00035b14 bnez v0, 0x35b44              |     
                                             |     while (v0 == 0) {
    0x00035b18 addu s3, s3, s5               |         s3 += s5;
    0x00035b1c addu s5, s0, s5               |         s5 = s0 + s5;
    0x00035b20 lb a0, -1(s3)                 |         a0 = *((s3 - 1));
    0x00035b24 addiu v1, zero, 0x2f          |         v1 = 0x2f;
    0x00035b28 lb v0, (s5)                   |         v0 = *(s5);
                                             |         if (a0 == v1) {
    0x00035b2c beq a0, v1, 0x35c2c           |             goto label_7;
                                             |         }
                                             |         if (v0 == v1) {
    0x00035b30 beql v0, v1, 0x35be8          |             goto label_8;
                                             |         }
    0x00035b34 move s0, s5                   |         s0 = s5;
    0x00035b38 move v0, s6                   |         v0 = s6;
                                             |         if (v0 != 0) {
    0x00035b3c bnez v0, 0x35c34              |             goto label_9;
                                             |         }
    0x00035b40 move s0, s5                   |         s0 = s5;
                                             | label_6:
    0x00035b44 lw v0, 0x104(s1)              |         v0 = *(s1);
                                             | label_0:
    0x00035b48 lw v0, (v0)                   |         v0 = *(v0);
    0x00035b4c lw a1, 0xc(v0)                |         a1 = *((v0 + 3));
    0x00035b50 addiu a0, s1, 0xe8            |         a0 = s1 + 0xe8;
                                             |         if (a1 == 0) {
    0x00035b54 bnez a1, 0x35b64              |             
    0x00035b58 lw v0, 0x18(s4)               |             v0 = *((s4 + 6));
    0x00035b5c lw v0, (v0)                   |             v0 = *(v0);
    0x00035b60 lw a1, 4(v0)                  |             a1 = *((v0 + 1));
                                             |         }
    0x00035b64 lw v0, (s1)                   |         v0 = *(s1);
    0x00035b68 lw t9, -0x7380(gp)            |         t9 = sym.imp.apr_filepath_merge;
    0x00035b6c sw v0, 0x10(sp)               |         *(var_10h) = v0;
    0x00035b70 addiu a3, zero, 0x23          |         a3 = 0x23;
    0x00035b74 move a2, s0                   |         a2 = s0;
    0x00035b78 jalr t9                       |         t9 ();
    0x00035b7c lw gp, 0x28(sp)               |         gp = *(var_28h);
                                             |         if (v0 != 0) {
    0x00035b80 bnez v0, 0x35cb0              |             goto label_10;
                                             |         }
    0x00035b84 lw v0, 0xe8(s1)               |         v0 = *((s1 + 58));
    0x00035b88 sw v0, 0xec(s1)               |         *((s1 + 59)) = v0;
                                             | label_2:
    0x00035b8c lw ra, 0x4c(sp)               |         ra = *(var_4ch);
    0x00035b90 move v0, s2                   |         v0 = s2;
    0x00035b94 lw s6, 0x48(sp)               |         s6 = *(var_48h);
    0x00035b98 lw s5, 0x44(sp)               |         s5 = *(var_44h);
    0x00035b9c lw s4, 0x40(sp)               |         s4 = *(var_40h);
    0x00035ba0 lw s3, 0x3c(sp)               |         s3 = *(var_3ch);
    0x00035ba4 lw s2, 0x38(sp)               |         s2 = *(var_38h);
    0x00035ba8 lw s1, 0x34(sp)               |         s1 = *(var_34h);
    0x00035bac lw s0, 0x30(sp)               |         s0 = *(var_30h);
    0x00035bb0 addiu sp, sp, 0x50            |         
    0x00035bb4 jr ra                         |         return v0;
                                             | label_5:
    0x00035bb8 lw s4, 8(a0)                  |         s4 = *((a0 + 2));
    0x00035bbc lw s3, 0x60(s4)               |         s3 = *((s4 + 24));
    0x00035bc0 lw t9, -0x76c4(gp)            |         t9 = sym.imp.strncmp;
                                             |         if (s3 == 0) {
    0x00035bc4 beqz s3, 0x35be4              |             goto label_11;
                                             |         }
    0x00035bc8 lw s5, 0x64(s4)               |         s5 = *((s4 + 25));
    0x00035bcc move a2, s5                   |         a2 = s5;
    0x00035bd0 move a1, s3                   |         a1 = s3;
    0x00035bd4 move a0, s0                   |         a0 = s0;
    0x00035bd8 jalr t9                       |         t9 ();
    0x00035bdc lw gp, 0x28(sp)               |         gp = *(var_28h);
    0x00035be0 beqz v0, 0x35b18              |         
                                             |     }
                                             | label_11:
    0x00035be4 addiu v1, zero, 0x2f          |     v1 = 0x2f;
                                             | label_8:
    0x00035be8 addiu s0, s0, 1               |     s0++;
                                             |     do {
                                             | label_1:
    0x00035bec lb v0, (s0)                   |         v0 = *(s0);
    0x00035bf0 beql v0, v1, 0x35bec          |         
                                             |     } while (v0 == v1);
    0x00035bf4 addiu s0, s0, 1               |     s0++;
    0x00035bf8 lw v0, 0x104(s1)              |     v0 = *(s1);
    0x00035bfc b 0x35b48                     |     goto label_0;
                                             | label_3:
    0x00035c00 addiu s2, zero, 0x193         |     s2 = 0x193;
    0x00035c04 move v0, s2                   |     v0 = s2;
    0x00035c08 lw s6, 0x48(sp)               |     s6 = *(var_48h);
    0x00035c0c lw s5, 0x44(sp)               |     s5 = *(var_44h);
    0x00035c10 lw s4, 0x40(sp)               |     s4 = *(var_40h);
    0x00035c14 lw s3, 0x3c(sp)               |     s3 = *(var_3ch);
    0x00035c18 lw s2, 0x38(sp)               |     s2 = *(var_38h);
    0x00035c1c lw s1, 0x34(sp)               |     s1 = *(var_34h);
    0x00035c20 lw s0, 0x30(sp)               |     s0 = *(var_30h);
    0x00035c24 addiu sp, sp, 0x50            |     
    0x00035c28 jr ra                         |     return v0;
                                             | label_7:
    0x00035c2c move s0, s5                   |     s0 = s5;
    0x00035c30 addiu v1, zero, 0x2f          |     v1 = 0x2f;
                                             |     if (v0 == v1) {
                                             | label_9:
    0x00035c34 beql v0, v1, 0x35bec          |         goto label_1;
                                             |     }
    0x00035c38 addiu s0, s0, 1               |     s0++;
    0x00035c3c lw v0, 0x104(s1)              |     v0 = *(s1);
    0x00035c40 b 0x35b48                     |     goto label_0;
                                             | label_4:
    0x00035c44 lw v0, 0x18(s1)               |     v0 = *((s1 + 6));
    0x00035c48 lw a0, -0x7fac(gp)            |     a0 = *(gp);
    0x00035c4c sw v0, 0x20(sp)               |     *(var_20h) = v0;
    0x00035c50 lw v0, -0x7fac(gp)            |     v0 = *(gp);
    0x00035c54 lw t9, -0x7f08(gp)            |     t9 = sym.ap_log_rerror_;
                                             |     /* str.AH00126:_Invalid_URI_in_request__s__s */
    0x00035c58 addiu v0, v0, -0x3c20         |     v0 += -0x3c20;
    0x00035c5c sw s0, 0x1c(sp)               |     *(var_1ch) = s0;
    0x00035c60 sw v0, 0x18(sp)               |     *(var_18h) = v0;
    0x00035c64 sw s1, 0x14(sp)               |     *(var_14h) = s1;
    0x00035c68 sw zero, 0x10(sp)             |     *(var_10h) = 0;
    0x00035c6c addiu a3, zero, 3             |     a3 = 3;
    0x00035c70 move a2, zero                 |     a2 = 0;
    0x00035c74 addiu a1, zero, 0x1281        |     a1 = 0x1281;
                                             |     /* str._usr_src_debug_apache2_2.4.57_r0_httpd_2.4.57_server_core.c */
    0x00035c78 addiu a0, a0, -0x503c         |     a0 += -0x503c;
    0x00035c7c bal 0x530a8                   |     sym_ap_log_rerror_ ();
    0x00035c80 lw ra, 0x4c(sp)               |     ra = *(var_4ch);
    0x00035c84 addiu s2, zero, 0x190         |     s2 = aav.0x00000190;
    0x00035c88 move v0, s2                   |     v0 = s2;
    0x00035c8c lw s6, 0x48(sp)               |     s6 = *(var_48h);
    0x00035c90 lw s5, 0x44(sp)               |     s5 = *(var_44h);
    0x00035c94 lw s4, 0x40(sp)               |     s4 = *(var_40h);
    0x00035c98 lw s3, 0x3c(sp)               |     s3 = *(var_3ch);
    0x00035c9c lw s2, 0x38(sp)               |     s2 = *(var_38h);
    0x00035ca0 lw s1, 0x34(sp)               |     s1 = *(var_34h);
    0x00035ca4 lw s0, 0x30(sp)               |     s0 = *(var_30h);
    0x00035ca8 addiu sp, sp, 0x50            |     
    0x00035cac jr ra                         |     return v0;
                                             | label_10:
    0x00035cb0 lw v1, 0x18(s1)               |     v1 = *((s1 + 6));
    0x00035cb4 lw a0, -0x7fac(gp)            |     a0 = *(gp);
    0x00035cb8 sw v1, 0x1c(sp)               |     *(var_1ch) = v1;
    0x00035cbc lw v1, -0x7fac(gp)            |     v1 = *(gp);
    0x00035cc0 lw t9, -0x7f08(gp)            |     t9 = sym.ap_log_rerror_;
                                             |     /* str.AH00127:_Cannot_map__s_to_file */
    0x00035cc4 addiu v1, v1, -0x3bf4         |     v1 += -0x3bf4;
    0x00035cc8 sw v1, 0x18(sp)               |     *(var_18h) = v1;
    0x00035ccc sw s1, 0x14(sp)               |     *(var_14h) = s1;
    0x00035cd0 sw v0, 0x10(sp)               |     *(var_10h) = v0;
    0x00035cd4 addiu a3, zero, 3             |     a3 = 3;
    0x00035cd8 move a2, zero                 |     a2 = 0;
    0x00035cdc addiu a1, zero, 0x12a0        |     a1 = aav.0x000012a0;
                                             |     /* str._usr_src_debug_apache2_2.4.57_r0_httpd_2.4.57_server_core.c */
    0x00035ce0 addiu a0, a0, -0x503c         |     a0 += -0x503c;
    0x00035ce4 bal 0x530a8                   |     sym_ap_log_rerror_ ();
    0x00035ce8 addiu s2, zero, 0x193         |     s2 = 0x193;
    0x00035cec b 0x35b8c                     |     goto label_2;
                                             | }
    ; 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 @ 0x36994 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.ap_document_root ()          | void ap_document_root () {
    0x00036994 lw v0, 0x104(a0)              |     v0 = *(a0);
    0x00036998 lw v0, (v0)                   |     v0 = *(v0);
    0x0003699c lw v0, 0xc(v0)                |     v0 = *((v0 + 3));
                                             |     if (v0 != 0) {
    0x000369a0 beql v0, zero, 0x369b0        |         
    0x000369a4 lw v0, 8(a0)                  |         v0 = *((a0 + 2));
    0x000369a8 jr ra                         |         return v0;
    0x000369ac nop                           |         
                                             |     }
    0x000369b0 lw v0, 0x18(v0)               |     v0 = *((v0 + 6));
    0x000369b4 lw v0, (v0)                   |     v0 = *(v0);
    0x000369b8 lw v0, 4(v0)                  |     v0 = *((v0 + 1));
    0x000369bc jr ra                         |     return v0;
                                             | }
    ; assembly                                   | /* r2dec pseudo code output */
                                                 | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x2992c */
                                                 | #include <stdint.h>
                                                 |  
    ; (fcn) sym.ap_get_mime_headers_core ()      | void ap_get_mime_headers_core () {
    0x0002992c lui gp, 8                         |     
    0x00029930 addiu gp, gp, -0x6a0c             |     
    0x00029934 addu gp, gp, t9                   |     gp += t9;
    0x00029938 addiu sp, sp, -0x80               |     
    0x0002993c lw v0, -0x7534(gp)                |     v0 = *(gp);
    0x00029940 sw s0, 0x58(sp)                   |     *(var_58h) = s0;
    0x00029944 move v1, v0                       |     v1 = v0;
    0x00029948 sw v0, 0x44(sp)                   |     *(var_44h) = v0;
    0x0002994c lw v0, 8(a0)                      |     v0 = *((a0 + 2));
    0x00029950 move s0, a0                       |     s0 = a0;
    0x00029954 lw a0, (v1)                       |     a0 = *(v1);
    0x00029958 lw v1, 0x18(v0)                   |     v1 = *((v0 + 6));
    0x0002995c sw fp, 0x78(sp)                   |     *(var_78h) = fp;
    0x00029960 sw s7, 0x74(sp)                   |     *(var_74h) = s7;
    0x00029964 lw v1, (v1)                       |     v1 = *(v1);
    0x00029968 sw s6, 0x70(sp)                   |     *(var_70h) = s6;
    0x0002996c sw s5, 0x6c(sp)                   |     *(var_6ch) = s5;
    0x00029970 sw s4, 0x68(sp)                   |     *(var_68h) = s4;
    0x00029974 sw s3, 0x64(sp)                   |     *(var_64h) = s3;
    0x00029978 sw s2, 0x60(sp)                   |     *(var_60h) = s2;
    0x0002997c sw s1, 0x5c(sp)                   |     *(var_5ch) = s1;
    0x00029980 sw gp, 0x28(sp)                   |     *(var_28h) = gp;
    0x00029984 sw ra, 0x7c(sp)                   |     *(var_7ch) = ra;
    0x00029988 lb v1, 0x41(v1)                   |     v1 = *((v1 + 65));
    0x0002998c move s6, a1                       |     s6 = a1;
    0x00029990 xori s3, v1, 1                    |     s3 = v1 ^ 1;
    0x00029994 sw v1, 0x38(sp)                   |     *(var_38h) = v1;
    0x00029998 addiu v1, zero, 2                 |     v1 = 2;
                                                 |     if (s3 != 0) {
    0x0002999c movz v1, zero, s3                 |         v1 = 0;
                                                 |     }
    0x000299a0 move s3, v1                       |     s3 = v1;
    0x000299a4 lw v1, -0x7dcc(gp)                |     v1 = sym.ap_rgetline_core;
    0x000299a8 sw a0, 0x54(sp)                   |     *(var_54h) = a0;
    0x000299ac sw v1, 0x30(sp)                   |     *(var_30h) = v1;
    0x000299b0 lw v1, -0x7fac(gp)                |     v1 = *(gp);
    0x000299b4 sw zero, 0x34(sp)                 |     *(var_34h) = 0;
                                                 |     /* str._t_n_v_f_r_ */
    0x000299b8 addiu v1, v1, -0x5a2c             |     v1 += -0x5a2c;
    0x000299bc sw v1, 0x3c(sp)                   |     *(var_3ch) = v1;
    0x000299c0 lw v1, -0x7fac(gp)                |     v1 = *(gp);
    0x000299c4 move s4, zero                     |     s4 = 0;
                                                 |     /* str._n_v_f_r */
    0x000299c8 addiu v1, v1, -0x59e4             |     v1 += -0x59e4;
    0x000299cc move s2, zero                     |     s2 = 0;
    0x000299d0 move s1, zero                     |     s1 = 0;
    0x000299d4 addiu s7, sp, 0x50                |     s7 = sp + 0x50;
    0x000299d8 addiu fp, sp, 0x4c                |     fp = sp + 0x4c;
    0x000299dc addiu s5, zero, 9                 |     s5 = 9;
    0x000299e0 sw v1, 0x40(sp)                   |     *(var_40h) = v1;
                                                 | label_1:
    0x000299e4 lw a1, 0x6c(v0)                   |     a1 = *((v0 + 27));
    0x000299e8 lw t9, 0x30(sp)                   |     t9 = *(var_30h);
    0x000299ec move a3, s0                       |     a3 = s0;
    0x000299f0 sw s6, 0x14(sp)                   |     *(var_14h) = s6;
    0x000299f4 sw s3, 0x10(sp)                   |     *(var_10h) = s3;
    0x000299f8 move a2, s7                       |     a2 = s7;
    0x000299fc addiu a1, a1, 2                   |     a1 += 2;
    0x00029a00 move a0, fp                       |     a0 = fp;
    0x00029a04 sw zero, 0x4c(sp)                 |     *(var_4ch) = 0;
    0x00029a08 jalr t9                           |     t9 ();
    0x00029a0c lw gp, 0x28(sp)                   |     gp = *(var_28h);
                                                 |     if (v0 != 0) {
    0x00029a10 bnez v0, 0x29e1c                  |         goto label_46;
                                                 |     }
    0x00029a14 lw a2, 0x50(sp)                   |     a2 = *(var_50h);
    0x00029a18 lw a1, 0x4c(sp)                   |     a1 = *(var_4ch);
    0x00029a1c sltiu v0, a2, 2                   |     v0 = (a2 < 2) ? 1 : 0;
    0x00029a20 addiu a3, zero, 0x20              |     a3 = 0x20;
                                                 |     if (v0 != 0) {
    0x00029a24 bnez v0, 0x29a5c                  |         goto label_47;
                                                 |     }
                                                 |     do {
    0x00029a28 addiu v0, a2, -1                  |         v0 = a2 + -1;
    0x00029a2c addu v1, a1, v0                   |         v1 = a1 + v0;
    0x00029a30 lb a0, (v1)                       |         a0 = *(v1);
                                                 |         if (a0 != s5) {
    0x00029a34 beql a0, s5, 0x29a48              |             
    0x00029a38 sw v0, 0x50(sp)                   |             *(var_50h) = v0;
    0x00029a3c lb v0, (a1)                       |             v0 = *(a1);
                                                 |             if (a0 == a3) {
    0x00029a40 bnel a0, a3, 0x29a60              |                 goto label_48;
                                                 |             }
    0x00029a44 sw v0, 0x50(sp)                   |             *(var_50h) = v0;
                                                 |         }
    0x00029a48 sb zero, (v1)                     |         *(v1) = 0;
    0x00029a4c lw a2, 0x50(sp)                   |         a2 = *(var_50h);
    0x00029a50 sltiu v0, a2, 2                   |         v0 = (a2 < 2) ? 1 : 0;
    0x00029a54 lw a1, 0x4c(sp)                   |         a1 = *(var_4ch);
    0x00029a58 beqz v0, 0x29a28                  |         
                                                 |     } while (v0 == 0);
                                                 | label_47:
    0x00029a5c lb v0, (a1)                       |     v0 = *(a1);
                                                 | label_48:
    0x00029a60 addiu v1, zero, 0x20              |     v1 = 0x20;
                                                 |     if (v0 == s5) {
    0x00029a64 beq v0, s5, 0x29b4c               |         goto label_49;
                                                 |     }
                                                 |     if (v0 == v1) {
    0x00029a68 beq v0, v1, 0x29b4c               |         goto label_49;
                                                 |     }
    0x00029a6c nop                               |     
                                                 |     if (s1 == 0) {
    0x00029a70 beqz s1, 0x29b34                  |         goto label_50;
                                                 |     }
    0x00029a74 nop                               |     
    0x00029a78 lw s2, 8(s0)                      |     s2 = *((s0 + 2));
    0x00029a7c lw v0, 0x70(s2)                   |     v0 = *((s2 + 28));
    0x00029a80 lw v1, 0x38(sp)                   |     v1 = *(var_38h);
                                                 |     if (v0 != 0) {
    0x00029a84 beqz v0, 0x29aa0                  |         
    0x00029a88 lw v1, 0x34(sp)                   |         v1 = *(var_34h);
    0x00029a8c addiu v1, v1, 1                   |         v1++;
    0x00029a90 slt v0, v0, v1                    |         v0 = (v0 < v1) ? 1 : 0;
    0x00029a94 sw v1, 0x34(sp)                   |         *(var_34h) = v1;
                                                 |         if (v0 != 0) {
    0x00029a98 bnez v0, 0x2a168                  |             goto label_51;
                                                 |         }
    0x00029a9c lw v1, 0x38(sp)                   |         v1 = *(var_38h);
                                                 |     }
    0x00029aa0 addiu v0, zero, 1                 |     v0 = 1;
    0x00029aa4 lw t9, -0x72b8(gp)                |     t9 = sym.imp.strchr;
                                                 |     if (v1 != v0) {
    0x00029aa8 bne v1, v0, 0x29c20               |         goto label_52;
                                                 |     }
    0x00029aac addiu a1, zero, 0x3a              |     a1 = 0x3a;
    0x00029ab0 move a0, s1                       |     a0 = s1;
    0x00029ab4 jalr t9                           |     t9 ();
    0x00029ab8 lw gp, 0x28(sp)                   |     gp = *(var_28h);
                                                 |     if (v0 == 0) {
    0x00029abc beqz v0, 0x2a268                  |         goto label_53;
                                                 |     }
    0x00029ac0 lw t9, -0x76e0(gp)                |     t9 = sym.imp.strpbrk;
                                                 |     if (s1 == v0) {
    0x00029ac4 beq s1, v0, 0x2a1f8               |         goto label_54;
                                                 |     }
    0x00029ac8 lw a1, 0x3c(sp)                   |     a1 = *(var_3ch);
    0x00029acc sb zero, (v0)                     |     *(v0) = 0;
    0x00029ad0 move a0, s1                       |     a0 = s1;
    0x00029ad4 addiu s2, v0, 1                   |     s2 = v0 + 1;
    0x00029ad8 jalr t9                           |     t9 ();
    0x00029adc lw gp, 0x28(sp)                   |     gp = *(var_28h);
                                                 |     if (v0 != 0) {
    0x00029ae0 bnez v0, 0x2a36c                  |         goto label_55;
                                                 |     }
    0x00029ae4 addiu v1, zero, 0x20              |     v1 = 0x20;
                                                 |     do {
                                                 | label_0:
    0x00029ae8 lb v0, (s2)                       |         v0 = *(s2);
    0x00029aec beql v0, v1, 0x29ae8              |         
                                                 |     } while (v0 == v1);
    0x00029af0 addiu s2, s2, 1                   |     s2++;
    0x00029af4 lw t9, -0x76e0(gp)                |     t9 = sym.imp.strpbrk;
                                                 |     if (v0 == s5) {
    0x00029af8 bne v0, s5, 0x29b04               |         
    0x00029afc addiu s2, s2, 1                   |         s2++;
    0x00029b00 b 0x29ae8                         |         goto label_0;
                                                 |     }
    0x00029b04 lw a1, 0x40(sp)                   |     a1 = *(var_40h);
    0x00029b08 move a0, s2                       |     a0 = s2;
    0x00029b0c jalr t9                           |     t9 ();
    0x00029b10 lw gp, 0x28(sp)                   |     gp = *(var_28h);
                                                 |     if (v0 != 0) {
    0x00029b14 bnez v0, 0x2a2e4                  |         goto label_56;
                                                 |     }
                                                 | label_4:
    0x00029b18 lw t9, -0x777c(gp)                |     t9 = sym.imp.apr_table_addn;
    0x00029b1c lw a0, 0xb0(s0)                   |     a0 = *((s0 + 44));
    0x00029b20 move a2, s2                       |     a2 = s2;
    0x00029b24 move a1, s1                       |     a1 = s1;
    0x00029b28 jalr t9                           |     t9 ();
    0x00029b2c lw gp, 0x28(sp)                   |     gp = *(var_28h);
    0x00029b30 lw a2, 0x50(sp)                   |     a2 = *(var_50h);
                                                 | label_50:
    0x00029b34 move s2, a2                       |     s2 = a2;
                                                 |     if (a2 == 0) {
    0x00029b38 beqz a2, 0x29f4c                  |         goto label_57;
                                                 |     }
    0x00029b3c lw s1, 0x4c(sp)                   |     s1 = *(var_4ch);
    0x00029b40 move s4, zero                     |     s4 = 0;
    0x00029b44 lw v0, 8(s0)                      |     v0 = *((s0 + 2));
    0x00029b48 b 0x299e4                         |     goto label_1;
                                                 |     if (s1 == 0) {
                                                 | label_49:
    0x00029b4c beql s1, zero, 0x2a040            |         goto label_58;
                                                 |     }
    0x00029b50 lw v1, 0x108(s0)                  |     v1 = *(s0);
    0x00029b54 lb v0, 1(a1)                      |     v0 = *((a1 + 1));
    0x00029b58 addiu v1, zero, 0x20              |     v1 = 0x20;
                                                 |     if (v0 == 0) {
    0x00029b5c beqz v0, 0x2a0ac                  |         goto label_59;
                                                 |     }
    0x00029b60 b 0x29b78                         |     goto label_60;
    0x00029b64 nop                               |     
                                                 |     do {
                                                 | label_2:
    0x00029b68 addiu a2, a2, -1                  |         a2 += -1;
    0x00029b6c sw a1, 0x4c(sp)                   |         *(var_4ch) = a1;
    0x00029b70 sw a2, 0x50(sp)                   |         *(var_50h) = a2;
    0x00029b74 lb v0, 1(a1)                      |         v0 = *((a1 + 1));
                                                 | label_60:
    0x00029b78 beql v0, s5, 0x29b68              |         
                                                 |     } while (v0 == s5);
    0x00029b7c addiu a1, a1, 1                   |     a1++;
                                                 |     if (v0 == v1) {
    0x00029b80 beql v0, v1, 0x29b68              |         goto label_2;
                                                 |     }
    0x00029b84 addiu a1, a1, 1                   |     a1++;
    0x00029b88 lw v0, 8(s0)                      |     v0 = *((s0 + 2));
    0x00029b8c addiu a2, a2, 1                   |     a2++;
    0x00029b90 addu v1, s2, a2                   |     v1 = s2 + a2;
    0x00029b94 lw v0, 0x6c(v0)                   |     v0 = *((v0 + 27));
    0x00029b98 sltu v0, v1, v0                   |     v0 = (v1 < v0) ? 1 : 0;
    0x00029b9c sltu v0, s4, v1                   |     v0 = (s4 < v1) ? 1 : 0;
                                                 |     if (v0 == 0) {
    0x00029ba0 beqz v0, 0x29cf8                  |         goto label_61;
                                                 |     }
                                                 |     if (v0 != 0) {
    0x00029ba4 beql v0, zero, 0x29bf8            |         
    0x00029ba8 addu v1, s1, s2                   |         v1 = s1 + s2;
    0x00029bac sll s4, s4, 1                     |         s4 <<= 1;
    0x00029bb0 sltu v0, v1, s4                   |         v0 = (v1 < s4) ? 1 : 0;
    0x00029bb4 lw t9, -0x7544(gp)                |         t9 = sym.imp.apr_palloc;
                                                 |         if (v0 != 0) {
    0x00029bb8 movz s4, v1, v0                   |             s4 = v1;
                                                 |         }
    0x00029bbc lw a0, (s0)                       |         a0 = *(s0);
    0x00029bc0 move a1, s4                       |         a1 = s4;
    0x00029bc4 jalr t9                           |         t9 ();
    0x00029bc8 lw gp, 0x28(sp)                   |         gp = *(var_28h);
    0x00029bcc move a1, s1                       |         a1 = s1;
    0x00029bd0 move a2, s2                       |         a2 = s2;
    0x00029bd4 lw t9, -0x74b4(gp)                |         t9 = sym.imp.memcpy;
    0x00029bd8 move a0, v0                       |         a0 = v0;
    0x00029bdc jalr t9                           |         t9 ();
    0x00029be0 lw a2, 0x50(sp)                   |         a2 = *(var_50h);
    0x00029be4 lw gp, 0x28(sp)                   |         gp = *(var_28h);
    0x00029be8 lw a1, 0x4c(sp)                   |         a1 = *(var_4ch);
    0x00029bec addiu a2, a2, 1                   |         a2++;
    0x00029bf0 move s1, v0                       |         s1 = v0;
    0x00029bf4 addu v1, s1, s2                   |         v1 = s1 + s2;
                                                 |     }
    0x00029bf8 lw t9, -0x74b4(gp)                |     t9 = sym.imp.memcpy;
    0x00029bfc move a0, v1                       |     a0 = v1;
    0x00029c00 jalr t9                           |     t9 ();
    0x00029c04 move v1, v0                       |     v1 = v0;
    0x00029c08 addiu v0, zero, 0x20              |     v0 = 0x20;
    0x00029c0c sb v0, (v1)                       |     *(v1) = v0;
    0x00029c10 lw v0, 0x50(sp)                   |     v0 = *(var_50h);
    0x00029c14 addu s2, s2, v0                   |     s2 += v0;
    0x00029c18 lw v0, 8(s0)                      |     v0 = *((s0 + 2));
    0x00029c1c b 0x299e4                         |     goto label_1;
                                                 | label_52:
    0x00029c20 lw t9, -0x7dc8(gp)                |     t9 = sym.ap_scan_http_token;
    0x00029c24 move a0, s1                       |     a0 = s1;
    0x00029c28 bal 0x1d884                       |     sym_ap_scan_http_token ();
    0x00029c2c lw gp, 0x28(sp)                   |     gp = *(var_28h);
                                                 |     if (s1 == v0) {
    0x00029c30 beq s1, v0, 0x29f88               |         goto label_62;
                                                 |     }
    0x00029c34 lb a0, (v0)                       |     a0 = *(v0);
    0x00029c38 addiu v1, zero, 0x3a              |     v1 = 0x3a;
    0x00029c3c addiu s2, v0, 1                   |     s2 = v0 + 1;
                                                 |     if (a0 != v1) {
    0x00029c40 bne a0, v1, 0x29f84               |         goto label_63;
                                                 |     }
    0x00029c44 sb zero, (v0)                     |     *(v0) = 0;
    0x00029c48 addiu v1, zero, 0x20              |     v1 = 0x20;
                                                 |     do {
                                                 | label_3:
    0x00029c4c lb v0, (s2)                       |         v0 = *(s2);
    0x00029c50 beql v0, v1, 0x29c4c              |         
                                                 |     } while (v0 == v1);
    0x00029c54 addiu s2, s2, 1                   |     s2++;
    0x00029c58 lw t9, -0x7dc4(gp)                |     t9 = sym.ap_scan_http_field_content;
                                                 |     if (v0 == s5) {
    0x00029c5c bne v0, s5, 0x29c68               |         
    0x00029c60 addiu s2, s2, 1                   |         s2++;
    0x00029c64 b 0x29c4c                         |         goto label_3;
                                                 |     }
    0x00029c68 move a0, s2                       |     a0 = s2;
    0x00029c6c bal 0x1d840                       |     sym_ap_scan_http_field_content ();
    0x00029c70 lb v0, (v0)                       |     v0 = *(v0);
    0x00029c74 lw gp, 0x28(sp)                   |     gp = *(var_28h);
                                                 |     if (v0 == 0) {
    0x00029c78 beqz v0, 0x29b18                  |         goto label_4;
                                                 |     }
    0x00029c7c lw v1, 0x108(s0)                  |     v1 = *(s0);
    0x00029c80 addiu v0, zero, 0x190             |     v0 = aav.0x00000190;
    0x00029c84 sw v0, 0x44(s0)                   |     *((s0 + 17)) = v0;
                                                 |     if (v1 == 0) {
    0x00029c88 beqz v1, 0x2a480                  |         goto label_64;
                                                 |     }
                                                 | label_31:
    0x00029c8c lw v0, (v1)                       |     v0 = *(v1);
                                                 |     if (v0 == 0) {
                                                 | label_30:
    0x00029c90 beql v0, zero, 0x2a474            |         goto label_65;
                                                 |     }
    0x00029c94 lw v0, 4(v1)                      |     v0 = *((v1 + 1));
    0x00029c98 lb v0, (v0)                       |     v0 = *(v0);
                                                 |     if (v0 < 0) {
    0x00029c9c bltzl v0, 0x2a474                 |         goto label_65;
                                                 |     }
    0x00029ca0 lw v0, 4(v1)                      |     v0 = *((v1 + 1));
    0x00029ca4 slti v0, v0, 7                    |     v0 = (v0 < 7) ? 1 : 0;
    0x00029ca8 xori v0, v0, 1                    |     v0 ^= 1;
                                                 | label_29:
    0x00029cac lw v0, 0x44(sp)                   |     v0 = *(var_44h);
                                                 |     if (v0 == 0) {
    0x00029cb0 beqz v0, 0x29db8                  |         goto label_8;
                                                 |     }
    0x00029cb4 addiu v0, zero, 0x50              |     v0 = 0x50;
    0x00029cb8 sw v0, 0x1c(sp)                   |     *(var_1ch_2) = v0;
    0x00029cbc lw v0, -0x7fac(gp)                |     v0 = *(gp);
    0x00029cc0 lw a0, -0x7fac(gp)                |     a0 = *(gp);
    0x00029cc4 lw t9, -0x7f08(gp)                |     t9 = sym.ap_log_rerror_;
                                                 |     /* str.AH02427:_Request_header_value_is_malformed:__.s */
    0x00029cc8 addiu v0, v0, -0x5964             |     v0 += -0x5964;
    0x00029ccc sw s2, 0x20(sp)                   |     *(var_20h_2) = s2;
    0x00029cd0 sw v0, 0x18(sp)                   |     *(var_18h) = v0;
    0x00029cd4 sw s0, 0x14(sp)                   |     *(var_14h) = s0;
    0x00029cd8 sw zero, 0x10(sp)                 |     *(var_10h) = 0;
    0x00029cdc addiu a3, zero, 7                 |     a3 = 7;
    0x00029ce0 move a2, zero                     |     a2 = 0;
    0x00029ce4 addiu a1, zero, 0x520             |     a1 = aav.0x00000520;
                                                 |     /* str._usr_src_debug_apache2_2.4.57_r0_httpd_2.4.57_server_protocol.c */
    0x00029ce8 addiu a0, a0, -0x5ed4             |     a0 += -0x5ed4;
    0x00029cec jalr t9                           |     t9 ();
    0x00029cf0 lw gp, 0x28(sp)                   |     gp = *(var_28h);
    0x00029cf4 b 0x29db4                         |     goto label_7;
                                                 | label_61:
    0x00029cf8 lw a2, -0x7fac(gp)                |     a2 = *(gp);
    0x00029cfc lw a1, -0x7fac(gp)                |     a1 = *(gp);
    0x00029d00 lw t9, -0x7590(gp)                |     t9 = sym.imp.apr_table_setn;
    0x00029d04 addiu v0, zero, 0x190             |     v0 = aav.0x00000190;
    0x00029d08 lw a0, 0xc0(s0)                   |     a0 = *((s0 + 48));
    0x00029d0c sw v0, 0x44(s0)                   |     *((s0 + 17)) = v0;
                                                 |     /* str.Size_of_a_request_header_field_exceeds_server_limit. */
    0x00029d10 addiu a2, a2, -0x5f18             |     a2 += -0x5f18;
                                                 |     /* str.error_notes */
    0x00029d14 addiu a1, a1, -0x5ee0             |     a1 += -0x5ee0;
    0x00029d18 jalr t9                           |     t9 ();
    0x00029d1c lw v1, 0x108(s0)                  |     v1 = *(s0);
    0x00029d20 lw gp, 0x28(sp)                   |     gp = *(var_28h);
                                                 |     if (v1 == 0) {
    0x00029d24 beqz v1, 0x29e00                  |         goto label_66;
                                                 |     }
                                                 | label_6:
    0x00029d28 lw v0, (v1)                       |     v0 = *(v1);
                                                 |     if (v0 == 0) {
                                                 | label_5:
    0x00029d2c beql v0, zero, 0x29df4            |         goto label_67;
                                                 |     }
    0x00029d30 lw v0, 4(v1)                      |     v0 = *((v1 + 1));
    0x00029d34 lb v0, (v0)                       |     v0 = *(v0);
                                                 |     if (v0 < 0) {
    0x00029d38 bltzl v0, 0x29df4                 |         goto label_67;
                                                 |     }
    0x00029d3c lw v0, 4(v1)                      |     v0 = *((v1 + 1));
    0x00029d40 slti v0, v0, 6                    |     v0 = (v0 < 6) ? 1 : 0;
    0x00029d44 xori v0, v0, 1                    |     v0 ^= 1;
                                                 |     do {
    0x00029d48 lw v0, 0x44(sp)                   |         v0 = *(var_44h);
                                                 |         if (v0 != 0) {
    0x00029d4c beqz v0, 0x29db8                  |             
    0x00029d50 lw t9, -0x72b8(gp)                |             t9 = sym.imp.strchr;
    0x00029d54 addiu a1, zero, 0x3a              |             a1 = 0x3a;
    0x00029d58 move a0, s1                       |             a0 = s1;
    0x00029d5c jalr t9                           |             t9 ();
    0x00029d60 lw gp, 0x28(sp)                   |             gp = *(var_28h);
                                                 |             if (v0 == 0) {
    0x00029d64 beqz v0, 0x2a11c                  |                 goto label_68;
                                                 |             }
    0x00029d68 subu v0, v0, s1                   |             __asm ("subu v0, v0, s1");
    0x00029d6c slti a0, v0, 0x51                 |             a0 = (v0 < 0x51) ? 1 : 0;
    0x00029d70 addiu v1, zero, 0x50              |             v1 = 0x50;
                                                 |             if (a0 != 0) {
    0x00029d74 movz v0, v1, a0                   |                 v0 = v1;
                                                 |             }
                                                 | label_13:
    0x00029d78 sw v0, 0x1c(sp)                   |             *(var_1ch_2) = v0;
    0x00029d7c lw v0, -0x7fac(gp)                |             v0 = *(gp);
    0x00029d80 lw a0, -0x7fac(gp)                |             a0 = *(gp);
    0x00029d84 lw t9, -0x7f08(gp)                |             t9 = sym.ap_log_rerror_;
                                                 |             /* str.AH00562:_Request_header_exceeds_LimitRequestFieldSize_after_folding:__.s */
    0x00029d88 addiu v0, v0, -0x5b6c             |             v0 += -0x5b6c;
    0x00029d8c sw s1, 0x20(sp)                   |             *(var_20h_2) = s1;
    0x00029d90 sw v0, 0x18(sp)                   |             *(var_18h) = v0;
    0x00029d94 sw s0, 0x14(sp)                   |             *(var_14h) = s0;
    0x00029d98 sw zero, 0x10(sp)                 |             *(var_10h) = 0;
    0x00029d9c addiu a3, zero, 6                 |             a3 = 6;
    0x00029da0 move a2, zero                     |             a2 = 0;
    0x00029da4 addiu a1, zero, 0x4ad             |             a1 = 0x4ad;
                                                 |             /* str._usr_src_debug_apache2_2.4.57_r0_httpd_2.4.57_server_protocol.c */
    0x00029da8 addiu a0, a0, -0x5ed4             |             a0 += -0x5ed4;
    0x00029dac jalr t9                           |             t9 ();
    0x00029db0 lw gp, 0x28(sp)                   |             gp = *(var_28h);
                                                 | label_7:
    0x00029db4 lw v0, 0x44(sp)                   |             v0 = *(var_44h);
                                                 |         }
                                                 | label_8:
    0x00029db8 lw v1, 0x54(sp)                   |         v1 = *(var_54h);
    0x00029dbc lw v0, (v0)                       |         v0 = *(v0);
    0x00029dc0 lw ra, 0x7c(sp)                   |         ra = *(var_7ch);
                                                 |         if (v1 != v0) {
    0x00029dc4 bne v1, v0, 0x2a55c               |             goto label_69;
                                                 |         }
    0x00029dc8 lw fp, 0x78(sp)                   |         fp = *(var_78h);
    0x00029dcc lw s7, 0x74(sp)                   |         s7 = *(var_74h);
    0x00029dd0 lw s6, 0x70(sp)                   |         s6 = *(var_70h);
    0x00029dd4 lw s5, 0x6c(sp)                   |         s5 = *(var_6ch);
    0x00029dd8 lw s4, 0x68(sp)                   |         s4 = *(var_68h);
    0x00029ddc lw s3, 0x64(sp)                   |         s3 = *(var_64h);
    0x00029de0 lw s2, 0x60(sp)                   |         s2 = *(var_60h);
    0x00029de4 lw s1, 0x5c(sp)                   |         s1 = *(var_5ch);
    0x00029de8 lw s0, 0x58(sp)                   |         s0 = *(var_58h);
    0x00029dec addiu sp, sp, 0x80                |         
    0x00029df0 jr ra                             |         return v0;
                                                 | label_67:
    0x00029df4 slti v0, v0, 6                    |         v0 = (v0 < 6) ? 1 : 0;
    0x00029df8 xori v0, v0, 1                    |         v0 ^= 1;
    0x00029dfc b 0x29d48                         |         
                                                 |     } while (1);
                                                 | label_66:
    0x00029e00 lw v0, 4(s0)                      |     v0 = *((s0 + 1));
    0x00029e04 lw v1, 0x60(v0)                   |     v1 = *((v0 + 24));
    0x00029e08 lw v0, (v1)                       |     v0 = *(v1);
                                                 |     if (v1 == 0) {
    0x00029e0c bnel v1, zero, 0x29d2c            |         goto label_5;
                                                 |     }
    0x00029e10 lw v1, 8(s0)                      |     v1 = *((s0 + 2));
    0x00029e14 addiu v1, v1, 0x10                |     v1 += 0x10;
    0x00029e18 b 0x29d28                         |     goto label_6;
                                                 | label_46:
    0x00029e1c lui v1, 1                         |     v1 = 0x11177;
                                                 |     /* esilref: 'us' */
    0x00029e20 addiu v1, v1, 0x1177              |     
                                                 |     if (v0 == v1) {
    0x00029e24 beql v0, v1, 0x2a038              |         goto label_70;
                                                 |     }
    0x00029e28 addiu v0, zero, 0x198             |     v0 = aav.0x00000198;
    0x00029e2c lw a0, 0x108(s0)                  |     a0 = *(s0);
                                                 |     if (a0 == 0) {
    0x00029e30 beql a0, zero, 0x2a354            |         goto label_71;
                                                 |     }
    0x00029e34 lw v1, 4(s0)                      |     v1 = *((s0 + 1));
                                                 | label_16:
    0x00029e38 lw v1, (a0)                       |     v1 = *(a0);
                                                 |     if (v1 == 0) {
                                                 | label_15:
    0x00029e3c beql v1, zero, 0x2a004            |         goto label_72;
                                                 |     }
    0x00029e40 lw v1, 4(a0)                      |     v1 = *((a0 + 1));
    0x00029e44 lb v1, (v1)                       |     v1 = *(v1);
                                                 |     if (v1 < 0) {
    0x00029e48 bltzl v1, 0x2a004                 |         goto label_72;
                                                 |     }
    0x00029e4c lw v1, 4(a0)                      |     v1 = *((a0 + 1));
    0x00029e50 slti v1, v1, 7                    |     v1 = (v1 < 7) ? 1 : 0;
    0x00029e54 xori v1, v1, 1                    |     v1 ^= 1;
                                                 | label_9:
    0x00029e58 lw v1, 0x4c(sp)                   |     v1 = *(var_4ch);
                                                 |     if (v1 != 0) {
    0x00029e5c bnez v1, 0x2a124                  |         goto label_73;
                                                 |     }
                                                 | label_14:
    0x00029e60 addiu a0, zero, 0x190             |     a0 = aav.0x00000190;
    0x00029e64 addiu v1, zero, 0x1c              |     v1 = 0x1c;
    0x00029e68 sw a0, 0x44(s0)                   |     *((s0 + 17)) = a0;
                                                 |     if (v0 != v1) {
    0x00029e6c bne v0, v1, 0x29db4               |         goto label_7;
                                                 |     }
    0x00029e70 lw a2, -0x7fac(gp)                |     a2 = *(gp);
    0x00029e74 lw a1, -0x7fac(gp)                |     a1 = *(gp);
    0x00029e78 lw t9, -0x7590(gp)                |     t9 = sym.imp.apr_table_setn;
    0x00029e7c lw a0, 0xc0(s0)                   |     a0 = *((s0 + 48));
                                                 |     /* str.Size_of_a_request_header_field_exceeds_server_limit. */
    0x00029e80 addiu a2, a2, -0x5f18             |     a2 += -0x5f18;
                                                 |     /* str.error_notes */
    0x00029e84 addiu a1, a1, -0x5ee0             |     a1 += -0x5ee0;
    0x00029e88 jalr t9                           |     t9 ();
    0x00029e8c lw v1, 0x108(s0)                  |     v1 = *(s0);
    0x00029e90 lw gp, 0x28(sp)                   |     gp = *(var_28h);
                                                 |     if (v1 == 0) {
    0x00029e94 beqz v1, 0x2a538                  |         goto label_74;
                                                 |     }
                                                 | label_45:
    0x00029e98 lw v0, (v1)                       |     v0 = *(v1);
                                                 |     if (v0 == 0) {
                                                 | label_44:
    0x00029e9c beql v0, zero, 0x2a468            |         goto label_75;
                                                 |     }
    0x00029ea0 lw v0, 4(v1)                      |     v0 = *((v1 + 1));
    0x00029ea4 lb v0, (v0)                       |     v0 = *(v0);
                                                 |     if (v0 < 0) {
    0x00029ea8 bltzl v0, 0x2a468                 |         goto label_75;
                                                 |     }
    0x00029eac lw v0, 4(v1)                      |     v0 = *((v1 + 1));
    0x00029eb0 slti v0, v0, 6                    |     v0 = (v0 < 6) ? 1 : 0;
    0x00029eb4 xori v0, v0, 1                    |     v0 ^= 1;
                                                 | label_28:
    0x00029eb8 lw v0, 0x44(sp)                   |     v0 = *(var_44h);
                                                 |     if (v0 == 0) {
    0x00029ebc beqz v0, 0x29db8                  |         goto label_8;
                                                 |     }
    0x00029ec0 lw s2, 0x4c(sp)                   |     s2 = *(var_4ch);
    0x00029ec4 lw s1, -0x7fac(gp)                |     s1 = *(gp);
                                                 |     if (s2 == 0) {
    0x00029ec8 beqz s2, 0x2a528                  |         goto label_76;
                                                 |     }
    0x00029ecc lb v0, (s2)                       |     v0 = *(s2);
    0x00029ed0 lw s1, -0x7fac(gp)                |     s1 = *(gp);
                                                 |     if (v0 != 0) {
    0x00029ed4 bnez v0, 0x2a49c                  |         goto label_77;
                                                 |     }
    0x00029ed8 lw s1, -0x7fac(gp)                |     s1 = *(gp);
    0x00029edc addiu s1, s1, 0x47dc              |     s1 += 0x47dc;
                                                 | label_32:
    0x00029ee0 lw t9, -0x72b8(gp)                |     t9 = sym.imp.strchr;
    0x00029ee4 addiu a1, zero, 0x3a              |     a1 = 0x3a;
    0x00029ee8 move a0, s2                       |     a0 = s2;
    0x00029eec jalr t9                           |     t9 ();
    0x00029ef0 lw gp, 0x28(sp)                   |     gp = *(var_28h);
                                                 |     if (v0 == 0) {
    0x00029ef4 beqz v0, 0x2a554                  |         goto label_78;
                                                 |     }
    0x00029ef8 subu v0, v0, s2                   |     __asm ("subu v0, v0, s2");
    0x00029efc slti a0, v0, 0x51                 |     a0 = (v0 < 0x51) ? 1 : 0;
    0x00029f00 addiu v1, zero, 0x50              |     v1 = 0x50;
                                                 |     if (a0 != 0) {
    0x00029f04 movz v0, v1, a0                   |         v0 = v1;
                                                 |     }
                                                 | label_43:
    0x00029f08 sw v0, 0x20(sp)                   |     *(var_20h_2) = v0;
    0x00029f0c lw v0, -0x7fac(gp)                |     v0 = *(gp);
    0x00029f10 lw a0, -0x7fac(gp)                |     a0 = *(gp);
    0x00029f14 lw t9, -0x7f08(gp)                |     t9 = sym.ap_log_rerror_;
                                                 |     /* str.AH00561:_Request_header_exceeds_LimitRequestFieldSize_s_.s */
    0x00029f18 addiu v0, v0, -0x5c0c             |     v0 += -0x5c0c;
    0x00029f1c sw s2, 0x24(sp)                   |     *(var_24h_2) = s2;
    0x00029f20 sw s1, 0x1c(sp)                   |     *(var_1ch_2) = s1;
    0x00029f24 sw v0, 0x18(sp)                   |     *(var_18h) = v0;
    0x00029f28 sw s0, 0x14(sp)                   |     *(var_14h) = s0;
    0x00029f2c sw zero, 0x10(sp)                 |     *(var_10h) = 0;
    0x00029f30 addiu a3, zero, 6                 |     a3 = 6;
    0x00029f34 move a2, zero                     |     a2 = 0;
    0x00029f38 addiu a1, zero, 0x470             |     a1 = aav.0x00000470;
                                                 |     /* str._usr_src_debug_apache2_2.4.57_r0_httpd_2.4.57_server_protocol.c */
    0x00029f3c addiu a0, a0, -0x5ed4             |     a0 += -0x5ed4;
    0x00029f40 jalr t9                           |     t9 ();
    0x00029f44 lw gp, 0x28(sp)                   |     gp = *(var_28h);
    0x00029f48 b 0x29db4                         |     goto label_7;
                                                 | label_57:
    0x00029f4c lw t9, -0x738c(gp)                |     t9 = sym.imp.apr_table_compress;
    0x00029f50 lw a0, 0xb0(s0)                   |     a0 = *((s0 + 44));
    0x00029f54 addiu a1, zero, 1                 |     a1 = 1;
    0x00029f58 jalr t9                           |     t9 ();
    0x00029f5c lw gp, 0x28(sp)                   |     gp = *(var_28h);
    0x00029f60 lw a2, 0xb0(s0)                   |     a2 = *((s0 + 44));
    0x00029f64 move a3, zero                     |     a3 = 0;
    0x00029f68 lw a0, -0x7dd4(gp)                |     a0 = *(gp);
    0x00029f6c lw t9, -0x73b8(gp)                |     t9 = sym.imp.apr_table_do;
    0x00029f70 move a1, s0                       |     a1 = s0;
    0x00029f74 addiu a0, a0, -0x7ab0             |     a0 += -0x7ab0;
    0x00029f78 jalr t9                           |     t9 ();
    0x00029f7c lw gp, 0x28(sp)                   |     gp = *(var_28h);
    0x00029f80 b 0x29db4                         |     goto label_7;
                                                 | label_63:
    0x00029f84 move v0, s1                       |     v0 = s1;
                                                 | label_62:
    0x00029f88 lw a0, 0x108(s0)                  |     a0 = *(s0);
    0x00029f8c addiu v1, zero, 0x190             |     v1 = aav.0x00000190;
    0x00029f90 sw v1, 0x44(s0)                   |     *((s0 + 17)) = v1;
                                                 |     if (a0 == 0) {
    0x00029f94 beqz a0, 0x2a01c                  |         goto label_79;
                                                 |     }
                                                 | label_12:
    0x00029f98 lw v1, (a0)                       |     v1 = *(a0);
                                                 |     if (v1 == 0) {
                                                 | label_11:
    0x00029f9c beql v1, zero, 0x2a010            |         goto label_80;
                                                 |     }
    0x00029fa0 lw v1, 4(a0)                      |     v1 = *((a0 + 1));
    0x00029fa4 lb v1, (v1)                       |     v1 = *(v1);
                                                 |     if (v1 < 0) {
    0x00029fa8 bltzl v1, 0x2a010                 |         goto label_80;
                                                 |     }
    0x00029fac lw v1, 4(a0)                      |     v1 = *((a0 + 1));
    0x00029fb0 slti v1, v1, 7                    |     v1 = (v1 < 7) ? 1 : 0;
    0x00029fb4 xori v1, v1, 1                    |     v1 ^= 1;
                                                 |     if (v1 == 0) {
                                                 | label_10:
    0x00029fb8 beql v1, zero, 0x29db8            |         goto label_8;
                                                 |     }
    0x00029fbc lw v0, 0x44(sp)                   |     v0 = *(var_44h);
    0x00029fc0 sw v0, 0x20(sp)                   |     *(var_20h_2) = v0;
    0x00029fc4 addiu v0, zero, 0x50              |     v0 = 0x50;
    0x00029fc8 sw v0, 0x1c(sp)                   |     *(var_1ch_2) = v0;
    0x00029fcc lw v0, -0x7fac(gp)                |     v0 = *(gp);
    0x00029fd0 lw a0, -0x7fac(gp)                |     a0 = *(gp);
    0x00029fd4 lw t9, -0x7f08(gp)                |     t9 = sym.ap_log_rerror_;
                                                 |     /* str.AH02426:_Request_header_field_name_is_malformed:__.s */
    0x00029fd8 addiu v0, v0, -0x599c             |     v0 += -0x599c;
    0x00029fdc sw v0, 0x18(sp)                   |     *(var_18h) = v0;
    0x00029fe0 sw s0, 0x14(sp)                   |     *(var_14h) = s0;
    0x00029fe4 sw zero, 0x10(sp)                 |     *(var_10h) = 0;
    0x00029fe8 addiu a3, zero, 7                 |     a3 = 7;
    0x00029fec move a2, zero                     |     a2 = 0;
    0x00029ff0 addiu a1, zero, 0x50a             |     a1 = 0x50a;
                                                 |     /* str._usr_src_debug_apache2_2.4.57_r0_httpd_2.4.57_server_protocol.c */
    0x00029ff4 addiu a0, a0, -0x5ed4             |     a0 += -0x5ed4;
    0x00029ff8 jalr t9                           |     t9 ();
    0x00029ffc lw gp, 0x28(sp)                   |     gp = *(var_28h);
    0x0002a000 b 0x29db4                         |     goto label_7;
                                                 | label_72:
    0x0002a004 slti v1, v1, 7                    |     v1 = (v1 < 7) ? 1 : 0;
    0x0002a008 xori v1, v1, 1                    |     v1 ^= 1;
    0x0002a00c b 0x29e58                         |     goto label_9;
                                                 | label_80:
    0x0002a010 slti v1, v1, 7                    |     v1 = (v1 < 7) ? 1 : 0;
    0x0002a014 xori v1, v1, 1                    |     v1 ^= 1;
    0x0002a018 b 0x29fb8                         |     goto label_10;
                                                 | label_79:
    0x0002a01c lw v1, 4(s0)                      |     v1 = *((s0 + 1));
    0x0002a020 lw a0, 0x60(v1)                   |     a0 = *((v1 + 24));
    0x0002a024 lw v1, (a0)                       |     v1 = *(a0);
                                                 |     if (a0 == 0) {
    0x0002a028 bnel a0, zero, 0x29f9c            |         goto label_11;
                                                 |     }
    0x0002a02c lw a0, 8(s0)                      |     a0 = *((s0 + 2));
    0x0002a030 addiu a0, a0, 0x10                |     a0 += 0x10;
    0x0002a034 b 0x29f98                         |     goto label_12;
                                                 | label_70:
    0x0002a038 sw v0, 0x44(s0)                   |     *((s0 + 17)) = v0;
    0x0002a03c b 0x29db4                         |     goto label_7;
                                                 | label_58:
    0x0002a040 addiu v0, zero, 0x190             |     v0 = aav.0x00000190;
    0x0002a044 sw v0, 0x44(s0)                   |     *((s0 + 17)) = v0;
                                                 |     if (v1 == 0) {
    0x0002a048 beqz v1, 0x2a424                  |         goto label_81;
                                                 |     }
                                                 | label_24:
    0x0002a04c lw v0, (v1)                       |     v0 = *(v1);
                                                 |     if (v0 == 0) {
                                                 | label_23:
    0x0002a050 beql v0, zero, 0x2a418            |         goto label_82;
                                                 |     }
    0x0002a054 lw v0, 4(v1)                      |     v0 = *((v1 + 1));
    0x0002a058 lb v0, (v0)                       |     v0 = *(v0);
                                                 |     if (v0 < 0) {
    0x0002a05c bltzl v0, 0x2a418                 |         goto label_82;
                                                 |     }
    0x0002a060 lw v0, 4(v1)                      |     v0 = *((v1 + 1));
    0x0002a064 slti v0, v0, 7                    |     v0 = (v0 < 7) ? 1 : 0;
    0x0002a068 xori v0, v0, 1                    |     v0 ^= 1;
                                                 | label_22:
    0x0002a06c lw v0, 0x44(sp)                   |     v0 = *(var_44h);
                                                 |     if (v0 == 0) {
    0x0002a070 beqz v0, 0x29db8                  |         goto label_8;
                                                 |     }
    0x0002a074 lw v0, -0x7fac(gp)                |     v0 = *(gp);
    0x0002a078 lw a0, -0x7fac(gp)                |     a0 = *(gp);
    0x0002a07c lw t9, -0x7f08(gp)                |     t9 = sym.ap_log_rerror_;
                                                 |     /* str.AH03442:_Line_folding_encountered_before_first_header_line */
    0x0002a080 addiu v0, v0, -0x5bd0             |     v0 += -0x5bd0;
    0x0002a084 sw v0, 0x18(sp)                   |     *(var_18h) = v0;
    0x0002a088 sw s0, 0x14(sp)                   |     *(var_14h) = s0;
    0x0002a08c sw zero, 0x10(sp)                 |     *(var_10h) = 0;
    0x0002a090 addiu a3, zero, 7                 |     a3 = 7;
    0x0002a094 move a2, zero                     |     a2 = 0;
    0x0002a098 addiu a1, zero, 0x489             |     a1 = 0x489;
                                                 |     /* str._usr_src_debug_apache2_2.4.57_r0_httpd_2.4.57_server_protocol.c */
    0x0002a09c addiu a0, a0, -0x5ed4             |     a0 += -0x5ed4;
    0x0002a0a0 jalr t9                           |     t9 ();
    0x0002a0a4 lw gp, 0x28(sp)                   |     gp = *(var_28h);
    0x0002a0a8 b 0x29db4                         |     goto label_7;
                                                 | label_59:
    0x0002a0ac lw v1, 0x108(s0)                  |     v1 = *(s0);
    0x0002a0b0 addiu v0, zero, 0x190             |     v0 = aav.0x00000190;
    0x0002a0b4 sw v0, 0x44(s0)                   |     *((s0 + 17)) = v0;
                                                 |     if (v1 == 0) {
    0x0002a0b8 beqz v1, 0x2a44c                  |         goto label_83;
                                                 |     }
                                                 | label_27:
    0x0002a0bc lw v0, (v1)                       |     v0 = *(v1);
                                                 |     if (v0 == 0) {
                                                 | label_26:
    0x0002a0c0 beql v0, zero, 0x2a400            |         goto label_84;
                                                 |     }
    0x0002a0c4 lw v0, 4(v1)                      |     v0 = *((v1 + 1));
    0x0002a0c8 lb v0, (v0)                       |     v0 = *(v0);
                                                 |     if (v0 < 0) {
    0x0002a0cc bltzl v0, 0x2a400                 |         goto label_84;
                                                 |     }
    0x0002a0d0 lw v0, 4(v1)                      |     v0 = *((v1 + 1));
    0x0002a0d4 slti v0, v0, 7                    |     v0 = (v0 < 7) ? 1 : 0;
    0x0002a0d8 xori v0, v0, 1                    |     v0 ^= 1;
                                                 | label_20:
    0x0002a0dc lw v0, 0x44(sp)                   |     v0 = *(var_44h);
                                                 |     if (v0 == 0) {
    0x0002a0e0 beqz v0, 0x29db8                  |         goto label_8;
                                                 |     }
    0x0002a0e4 lw v0, -0x7fac(gp)                |     v0 = *(gp);
    0x0002a0e8 lw a0, -0x7fac(gp)                |     a0 = *(gp);
    0x0002a0ec lw t9, -0x7f08(gp)                |     t9 = sym.ap_log_rerror_;
                                                 |     /* str.AH03443:_Empty_folded_line_encountered */
    0x0002a0f0 addiu v0, v0, -0x5b94             |     v0 += -0x5b94;
    0x0002a0f4 sw v0, 0x18(sp)                   |     *(var_18h) = v0;
    0x0002a0f8 sw s0, 0x14(sp)                   |     *(var_14h) = s0;
    0x0002a0fc sw zero, 0x10(sp)                 |     *(var_10h) = 0;
    0x0002a100 addiu a3, zero, 7                 |     a3 = 7;
    0x0002a104 move a2, zero                     |     a2 = 0;
    0x0002a108 addiu a1, zero, 0x490             |     a1 = aav.0x00000490;
                                                 |     /* str._usr_src_debug_apache2_2.4.57_r0_httpd_2.4.57_server_protocol.c */
    0x0002a10c addiu a0, a0, -0x5ed4             |     a0 += -0x5ed4;
    0x0002a110 jalr t9                           |     t9 ();
    0x0002a114 lw gp, 0x28(sp)                   |     gp = *(var_28h);
    0x0002a118 b 0x29db4                         |     goto label_7;
                                                 | label_68:
    0x0002a11c addiu v0, zero, 0x50              |     v0 = 0x50;
    0x0002a120 b 0x29d78                         |     goto label_13;
                                                 | label_73:
    0x0002a124 lw a0, -0x7fac(gp)                |     a0 = *(gp);
    0x0002a128 sw v1, 0x1c(sp)                   |     *(var_1ch_2) = v1;
    0x0002a12c lw v1, -0x7fac(gp)                |     v1 = *(gp);
    0x0002a130 lw t9, -0x7f08(gp)                |     t9 = sym.ap_log_rerror_;
                                                 |     /* str.Failed_to_read_request_header_line__s */
    0x0002a134 addiu v1, v1, -0x5c34             |     v1 += -0x5c34;
    0x0002a138 sw v0, 0x10(sp)                   |     *(var_10h) = v0;
    0x0002a13c sw v0, 0x30(sp)                   |     *(var_30h) = v0;
    0x0002a140 sw v1, 0x18(sp)                   |     *(var_18h) = v1;
    0x0002a144 sw s0, 0x14(sp)                   |     *(var_14h) = s0;
    0x0002a148 addiu a3, zero, 7                 |     a3 = 7;
    0x0002a14c move a2, zero                     |     a2 = 0;
    0x0002a150 addiu a1, zero, 0x45f             |     a1 = 0x45f;
                                                 |     /* str._usr_src_debug_apache2_2.4.57_r0_httpd_2.4.57_server_protocol.c */
    0x0002a154 addiu a0, a0, -0x5ed4             |     a0 += -0x5ed4;
    0x0002a158 jalr t9                           |     t9 ();
    0x0002a15c lw gp, 0x28(sp)                   |     gp = *(var_28h);
    0x0002a160 lw v0, 0x30(sp)                   |     v0 = *(var_30h);
    0x0002a164 b 0x29e60                         |     goto label_14;
                                                 | label_51:
    0x0002a168 lw a2, -0x7fac(gp)                |     a2 = *(gp);
    0x0002a16c lw a1, -0x7fac(gp)                |     a1 = *(gp);
    0x0002a170 lw t9, -0x7590(gp)                |     t9 = sym.imp.apr_table_setn;
    0x0002a174 addiu v0, zero, 0x190             |     v0 = aav.0x00000190;
    0x0002a178 lw a0, 0xc0(s0)                   |     a0 = *((s0 + 48));
    0x0002a17c sw v0, 0x44(s0)                   |     *((s0 + 17)) = v0;
                                                 |     /* str.The_number_of_request_header_fields_exceeds_this_servers_limit. */
    0x0002a180 addiu a2, a2, -0x5b20             |     a2 += -0x5b20;
                                                 |     /* str.error_notes */
    0x0002a184 addiu a1, a1, -0x5ee0             |     a1 += -0x5ee0;
    0x0002a188 jalr t9                           |     t9 ();
    0x0002a18c lw v1, 0x108(s0)                  |     v1 = *(s0);
    0x0002a190 lw gp, 0x28(sp)                   |     gp = *(var_28h);
                                                 |     if (v1 == 0) {
    0x0002a194 beqz v1, 0x2a4f0                  |         goto label_85;
                                                 |     }
                                                 | label_40:
    0x0002a198 lw v0, (v1)                       |     v0 = *(v1);
                                                 |     if (v0 == 0) {
                                                 | label_39:
    0x0002a19c beql v0, zero, 0x2a3e8            |         goto label_86;
                                                 |     }
    0x0002a1a0 lw v0, 4(v1)                      |     v0 = *((v1 + 1));
    0x0002a1a4 lb v0, (v0)                       |     v0 = *(v0);
                                                 |     if (v0 < 0) {
    0x0002a1a8 bltzl v0, 0x2a3e8                 |         goto label_86;
                                                 |     }
    0x0002a1ac lw v0, 4(v1)                      |     v0 = *((v1 + 1));
    0x0002a1b0 slti v0, v0, 6                    |     v0 = (v0 < 6) ? 1 : 0;
    0x0002a1b4 xori v0, v0, 1                    |     v0 ^= 1;
                                                 | label_18:
    0x0002a1b8 lw v0, 0x44(sp)                   |     v0 = *(var_44h);
                                                 |     if (v0 == 0) {
    0x0002a1bc beqz v0, 0x29db8                  |         goto label_8;
                                                 |     }
    0x0002a1c0 lw v0, -0x7fac(gp)                |     v0 = *(gp);
    0x0002a1c4 lw a0, -0x7fac(gp)                |     a0 = *(gp);
    0x0002a1c8 lw t9, -0x7f08(gp)                |     t9 = sym.ap_log_rerror_;
                                                 |     /* str.AH00563:_Number_of_request_headers_exceeds_LimitRequestFields */
    0x0002a1cc addiu v0, v0, -0x5adc             |     v0 += -0x5adc;
    0x0002a1d0 sw v0, 0x18(sp)                   |     *(var_18h) = v0;
    0x0002a1d4 sw s0, 0x14(sp)                   |     *(var_14h) = s0;
    0x0002a1d8 sw zero, 0x10(sp)                 |     *(var_10h) = 0;
    0x0002a1dc addiu a3, zero, 6                 |     a3 = 6;
    0x0002a1e0 move a2, zero                     |     a2 = 0;
    0x0002a1e4 addiu a1, zero, 0x4d4             |     a1 = aav.0x000004d4;
                                                 |     /* str._usr_src_debug_apache2_2.4.57_r0_httpd_2.4.57_server_protocol.c */
    0x0002a1e8 addiu a0, a0, -0x5ed4             |     a0 += -0x5ed4;
    0x0002a1ec jalr t9                           |     t9 ();
    0x0002a1f0 lw gp, 0x28(sp)                   |     gp = *(var_28h);
    0x0002a1f4 b 0x29db4                         |     goto label_7;
                                                 | label_54:
    0x0002a1f8 lw v1, 0x108(s0)                  |     v1 = *(s0);
    0x0002a1fc addiu v0, zero, 0x190             |     v0 = aav.0x00000190;
    0x0002a200 sw v0, 0x44(s0)                   |     *((s0 + 17)) = v0;
                                                 |     if (v1 == 0) {
    0x0002a204 beqz v1, 0x2a4a4                  |         goto label_87;
                                                 |     }
                                                 | label_33:
    0x0002a208 lw v0, (v1)                       |     v0 = *(v1);
                                                 |     if (v0 == 0) {
                                                 | label_34:
    0x0002a20c beql v0, zero, 0x2a40c            |         goto label_88;
                                                 |     }
    0x0002a210 lw v0, 4(v1)                      |     v0 = *((v1 + 1));
    0x0002a214 lb v0, (v0)                       |     v0 = *(v0);
                                                 |     if (v0 < 0) {
    0x0002a218 bltzl v0, 0x2a40c                 |         goto label_88;
                                                 |     }
    0x0002a21c lw v0, 4(v1)                      |     v0 = *((v1 + 1));
    0x0002a220 slti v0, v0, 7                    |     v0 = (v0 < 7) ? 1 : 0;
    0x0002a224 xori v0, v0, 1                    |     v0 ^= 1;
                                                 | label_21:
    0x0002a228 lw v0, 0x44(sp)                   |     v0 = *(var_44h);
                                                 |     if (v0 == 0) {
    0x0002a22c beqz v0, 0x29db8                  |         goto label_8;
                                                 |     }
    0x0002a230 lw v0, -0x7fac(gp)                |     v0 = *(gp);
    0x0002a234 lw a0, -0x7fac(gp)                |     a0 = *(gp);
    0x0002a238 lw t9, -0x7f08(gp)                |     t9 = sym.ap_log_rerror_;
                                                 |     /* str.AH03453:_Request_header_field_name_was_empty */
    0x0002a23c addiu v0, v0, -0x5a5c             |     v0 += -0x5a5c;
    0x0002a240 sw v0, 0x18(sp)                   |     *(var_18h) = v0;
    0x0002a244 sw s0, 0x14(sp)                   |     *(var_14h) = s0;
    0x0002a248 sw zero, 0x10(sp)                 |     *(var_10h) = 0;
    0x0002a24c addiu a3, zero, 7                 |     a3 = 7;
    0x0002a250 move a2, zero                     |     a2 = 0;
    0x0002a254 addiu a1, zero, 0x4e8             |     a1 = aav.0x000004e8;
                                                 |     /* str._usr_src_debug_apache2_2.4.57_r0_httpd_2.4.57_server_protocol.c */
    0x0002a258 addiu a0, a0, -0x5ed4             |     a0 += -0x5ed4;
    0x0002a25c jalr t9                           |     t9 ();
    0x0002a260 lw gp, 0x28(sp)                   |     gp = *(var_28h);
    0x0002a264 b 0x29db4                         |     goto label_7;
                                                 | label_53:
    0x0002a268 lw v1, 0x108(s0)                  |     v1 = *(s0);
    0x0002a26c addiu v0, zero, 0x190             |     v0 = aav.0x00000190;
    0x0002a270 sw v0, 0x44(s0)                   |     *((s0 + 17)) = v0;
                                                 |     if (v1 == 0) {
    0x0002a274 beqz v1, 0x2a4d8                  |         goto label_89;
                                                 |     }
                                                 | label_37:
    0x0002a278 lw v0, (v1)                       |     v0 = *(v1);
                                                 |     if (v0 == 0) {
                                                 | label_38:
    0x0002a27c beql v0, zero, 0x2a3dc            |         goto label_90;
                                                 |     }
    0x0002a280 lw v0, 4(v1)                      |     v0 = *((v1 + 1));
    0x0002a284 lb v0, (v0)                       |     v0 = *(v0);
                                                 |     if (v0 < 0) {
    0x0002a288 bltzl v0, 0x2a3dc                 |         goto label_90;
                                                 |     }
    0x0002a28c lw v0, 4(v1)                      |     v0 = *((v1 + 1));
    0x0002a290 slti v0, v0, 7                    |     v0 = (v0 < 7) ? 1 : 0;
    0x0002a294 xori v0, v0, 1                    |     v0 ^= 1;
                                                 | label_17:
    0x0002a298 lw v0, 0x44(sp)                   |     v0 = *(var_44h);
                                                 |     if (v0 == 0) {
    0x0002a29c beqz v0, 0x29db8                  |         goto label_8;
                                                 |     }
    0x0002a2a0 addiu v0, zero, 0x50              |     v0 = 0x50;
    0x0002a2a4 sw v0, 0x1c(sp)                   |     *(var_1ch_2) = v0;
    0x0002a2a8 lw v0, -0x7fac(gp)                |     v0 = *(gp);
    0x0002a2ac lw a0, -0x7fac(gp)                |     a0 = *(gp);
    0x0002a2b0 lw t9, -0x7f08(gp)                |     t9 = sym.ap_log_rerror_;
                                                 |     /* str.AH00564:_Request_header_field_is_missing_:_separator:__.s */
    0x0002a2b4 addiu v0, v0, -0x5a9c             |     v0 += -0x5a9c;
    0x0002a2b8 sw s1, 0x20(sp)                   |     *(var_20h_2) = s1;
    0x0002a2bc sw v0, 0x18(sp)                   |     *(var_18h) = v0;
    0x0002a2c0 sw s0, 0x14(sp)                   |     *(var_14h) = s0;
    0x0002a2c4 sw zero, 0x10(sp)                 |     *(var_10h) = 0;
    0x0002a2c8 addiu a3, zero, 7                 |     a3 = 7;
    0x0002a2cc move a2, zero                     |     a2 = 0;
    0x0002a2d0 addiu a1, zero, 0x4e1             |     a1 = 0x4e1;
                                                 |     /* str._usr_src_debug_apache2_2.4.57_r0_httpd_2.4.57_server_protocol.c */
    0x0002a2d4 addiu a0, a0, -0x5ed4             |     a0 += -0x5ed4;
    0x0002a2d8 jalr t9                           |     t9 ();
    0x0002a2dc lw gp, 0x28(sp)                   |     gp = *(var_28h);
    0x0002a2e0 b 0x29db4                         |     goto label_7;
                                                 | label_56:
    0x0002a2e4 lw v1, 0x108(s0)                  |     v1 = *(s0);
    0x0002a2e8 addiu v0, zero, 0x190             |     v0 = aav.0x00000190;
    0x0002a2ec sw v0, 0x44(s0)                   |     *((s0 + 17)) = v0;
                                                 |     if (v1 == 0) {
    0x0002a2f0 beqz v1, 0x2a4bc                  |         goto label_91;
                                                 |     }
                                                 | label_36:
    0x0002a2f4 lw v0, (v1)                       |     v0 = *(v1);
                                                 |     if (v0 == 0) {
                                                 | label_35:
    0x0002a2f8 beql v0, zero, 0x2a440            |         goto label_92;
                                                 |     }
    0x0002a2fc lw v0, 4(v1)                      |     v0 = *((v1 + 1));
    0x0002a300 lb v0, (v0)                       |     v0 = *(v0);
                                                 |     if (v0 < 0) {
    0x0002a304 bltzl v0, 0x2a440                 |         goto label_92;
                                                 |     }
    0x0002a308 lw v0, 4(v1)                      |     v0 = *((v1 + 1));
    0x0002a30c slti v0, v0, 7                    |     v0 = (v0 < 7) ? 1 : 0;
    0x0002a310 xori v0, v0, 1                    |     v0 ^= 1;
                                                 | label_25:
    0x0002a314 lw v0, 0x44(sp)                   |     v0 = *(var_44h);
                                                 |     if (v0 == 0) {
    0x0002a318 beqz v0, 0x29db8                  |         goto label_8;
                                                 |     }
    0x0002a31c lw v0, -0x7fac(gp)                |     v0 = *(gp);
    0x0002a320 lw a0, -0x7fac(gp)                |     a0 = *(gp);
    0x0002a324 lw t9, -0x7f08(gp)                |     t9 = sym.ap_log_rerror_;
                                                 |     /* str.AH03451:_Request_header_field_value_presented_bad_whitespace */
    0x0002a328 addiu v0, v0, -0x59dc             |     v0 += -0x59dc;
    0x0002a32c sw v0, 0x18(sp)                   |     *(var_18h) = v0;
    0x0002a330 sw s0, 0x14(sp)                   |     *(var_14h) = s0;
    0x0002a334 sw zero, 0x10(sp)                 |     *(var_10h) = 0;
    0x0002a338 addiu a3, zero, 7                 |     a3 = 7;
    0x0002a33c move a2, zero                     |     a2 = 0;
    0x0002a340 addiu a1, zero, 0x4fe             |     a1 = 0x4fe;
                                                 |     /* str._usr_src_debug_apache2_2.4.57_r0_httpd_2.4.57_server_protocol.c */
    0x0002a344 addiu a0, a0, -0x5ed4             |     a0 += -0x5ed4;
    0x0002a348 jalr t9                           |     t9 ();
    0x0002a34c lw gp, 0x28(sp)                   |     gp = *(var_28h);
    0x0002a350 b 0x29db4                         |     goto label_7;
                                                 | label_71:
    0x0002a354 lw a0, 0x60(v1)                   |     a0 = *((v1 + 24));
    0x0002a358 lw v1, (a0)                       |     v1 = *(a0);
                                                 |     if (a0 == 0) {
    0x0002a35c bnel a0, zero, 0x29e3c            |         goto label_15;
                                                 |     }
    0x0002a360 lw a0, 8(s0)                      |     a0 = *((s0 + 2));
    0x0002a364 addiu a0, a0, 0x10                |     a0 += 0x10;
    0x0002a368 b 0x29e38                         |     goto label_16;
                                                 | label_55:
    0x0002a36c lw v1, 0x108(s0)                  |     v1 = *(s0);
    0x0002a370 addiu v0, zero, 0x190             |     v0 = aav.0x00000190;
    0x0002a374 sw v0, 0x44(s0)                   |     *((s0 + 17)) = v0;
                                                 |     if (v1 == 0) {
    0x0002a378 beqz v1, 0x2a50c                  |         goto label_93;
                                                 |     }
                                                 | label_42:
    0x0002a37c lw v0, (v1)                       |     v0 = *(v1);
                                                 |     if (v0 == 0) {
                                                 | label_41:
    0x0002a380 beql v0, zero, 0x2a3f4            |         goto label_94;
                                                 |     }
    0x0002a384 lw v0, 4(v1)                      |     v0 = *((v1 + 1));
    0x0002a388 lb v0, (v0)                       |     v0 = *(v0);
                                                 |     if (v0 < 0) {
    0x0002a38c bltzl v0, 0x2a3f4                 |         goto label_94;
                                                 |     }
    0x0002a390 lw v0, 4(v1)                      |     v0 = *((v1 + 1));
    0x0002a394 slti v0, v0, 7                    |     v0 = (v0 < 7) ? 1 : 0;
    0x0002a398 xori v0, v0, 1                    |     v0 ^= 1;
                                                 | label_19:
    0x0002a39c lw v0, 0x44(sp)                   |     v0 = *(var_44h);
                                                 |     if (v0 == 0) {
    0x0002a3a0 beqz v0, 0x29db8                  |         goto label_8;
                                                 |     }
    0x0002a3a4 lw v0, -0x7fac(gp)                |     v0 = *(gp);
    0x0002a3a8 lw a0, -0x7fac(gp)                |     a0 = *(gp);
    0x0002a3ac lw t9, -0x7f08(gp)                |     t9 = sym.ap_log_rerror_;
                                                 |     /* str.AH03452:_Request_header_field_name_presented_invalid_whitespace */
    0x0002a3b0 addiu v0, v0, -0x5a24             |     v0 += -0x5a24;
    0x0002a3b4 sw v0, 0x18(sp)                   |     *(var_18h) = v0;
    0x0002a3b8 sw s0, 0x14(sp)                   |     *(var_14h) = s0;
    0x0002a3bc sw zero, 0x10(sp)                 |     *(var_10h) = 0;
    0x0002a3c0 addiu a3, zero, 7                 |     a3 = 7;
    0x0002a3c4 move a2, zero                     |     a2 = 0;
    0x0002a3c8 addiu a1, zero, 0x4f2             |     a1 = 0x4f2;
                                                 |     /* str._usr_src_debug_apache2_2.4.57_r0_httpd_2.4.57_server_protocol.c */
    0x0002a3cc addiu a0, a0, -0x5ed4             |     a0 += -0x5ed4;
    0x0002a3d0 jalr t9                           |     t9 ();
    0x0002a3d4 lw gp, 0x28(sp)                   |     gp = *(var_28h);
    0x0002a3d8 b 0x29db4                         |     goto label_7;
                                                 | label_90:
    0x0002a3dc slti v0, v0, 7                    |     v0 = (v0 < 7) ? 1 : 0;
    0x0002a3e0 xori v0, v0, 1                    |     v0 ^= 1;
    0x0002a3e4 b 0x2a298                         |     goto label_17;
                                                 | label_86:
    0x0002a3e8 slti v0, v0, 6                    |     v0 = (v0 < 6) ? 1 : 0;
    0x0002a3ec xori v0, v0, 1                    |     v0 ^= 1;
    0x0002a3f0 b 0x2a1b8                         |     goto label_18;
                                                 | label_94:
    0x0002a3f4 slti v0, v0, 7                    |     v0 = (v0 < 7) ? 1 : 0;
    0x0002a3f8 xori v0, v0, 1                    |     v0 ^= 1;
    0x0002a3fc b 0x2a39c                         |     goto label_19;
                                                 | label_84:
    0x0002a400 slti v0, v0, 7                    |     v0 = (v0 < 7) ? 1 : 0;
    0x0002a404 xori v0, v0, 1                    |     v0 ^= 1;
    0x0002a408 b 0x2a0dc                         |     goto label_20;
                                                 | label_88:
    0x0002a40c slti v0, v0, 7                    |     v0 = (v0 < 7) ? 1 : 0;
    0x0002a410 xori v0, v0, 1                    |     v0 ^= 1;
    0x0002a414 b 0x2a228                         |     goto label_21;
                                                 | label_82:
    0x0002a418 slti v0, v0, 7                    |     v0 = (v0 < 7) ? 1 : 0;
    0x0002a41c xori v0, v0, 1                    |     v0 ^= 1;
    0x0002a420 b 0x2a06c                         |     goto label_22;
                                                 | label_81:
    0x0002a424 lw v0, 4(s0)                      |     v0 = *((s0 + 1));
    0x0002a428 lw v1, 0x60(v0)                   |     v1 = *((v0 + 24));
    0x0002a42c lw v0, (v1)                       |     v0 = *(v1);
                                                 |     if (v1 == 0) {
    0x0002a430 bnel v1, zero, 0x2a050            |         goto label_23;
                                                 |     }
    0x0002a434 lw v1, 8(s0)                      |     v1 = *((s0 + 2));
    0x0002a438 addiu v1, v1, 0x10                |     v1 += 0x10;
    0x0002a43c b 0x2a04c                         |     goto label_24;
                                                 | label_92:
    0x0002a440 slti v0, v0, 7                    |     v0 = (v0 < 7) ? 1 : 0;
    0x0002a444 xori v0, v0, 1                    |     v0 ^= 1;
    0x0002a448 b 0x2a314                         |     goto label_25;
                                                 | label_83:
    0x0002a44c lw v0, 4(s0)                      |     v0 = *((s0 + 1));
    0x0002a450 lw v1, 0x60(v0)                   |     v1 = *((v0 + 24));
    0x0002a454 lw v0, (v1)                       |     v0 = *(v1);
                                                 |     if (v1 == 0) {
    0x0002a458 bnel v1, zero, 0x2a0c0            |         goto label_26;
                                                 |     }
    0x0002a45c lw v1, 8(s0)                      |     v1 = *((s0 + 2));
    0x0002a460 addiu v1, v1, 0x10                |     v1 += 0x10;
    0x0002a464 b 0x2a0bc                         |     goto label_27;
                                                 | label_75:
    0x0002a468 slti v0, v0, 6                    |     v0 = (v0 < 6) ? 1 : 0;
    0x0002a46c xori v0, v0, 1                    |     v0 ^= 1;
    0x0002a470 b 0x29eb8                         |     goto label_28;
                                                 | label_65:
    0x0002a474 slti v0, v0, 7                    |     v0 = (v0 < 7) ? 1 : 0;
    0x0002a478 xori v0, v0, 1                    |     v0 ^= 1;
    0x0002a47c b 0x29cac                         |     goto label_29;
                                                 | label_64:
    0x0002a480 lw v0, 4(s0)                      |     v0 = *((s0 + 1));
    0x0002a484 lw v1, 0x60(v0)                   |     v1 = *((v0 + 24));
    0x0002a488 lw v0, (v1)                       |     v0 = *(v1);
                                                 |     if (v1 == 0) {
    0x0002a48c bnel v1, zero, 0x29c90            |         goto label_30;
                                                 |     }
    0x0002a490 lw v1, 8(s0)                      |     v1 = *((s0 + 2));
    0x0002a494 addiu v1, v1, 0x10                |     v1 += 0x10;
    0x0002a498 b 0x29c8c                         |     goto label_31;
                                                 |     /* esilref: ': ' */
                                                 | label_77:
    0x0002a49c addiu s1, s1, -0x647c             |     s1 += -0x647c;
    0x0002a4a0 b 0x29ee0                         |     goto label_32;
                                                 | label_87:
    0x0002a4a4 lw v0, 4(s0)                      |     v0 = *((s0 + 1));
    0x0002a4a8 lw v1, 0x60(v0)                   |     v1 = *((v0 + 24));
                                                 |     if (v1 == 0) {
    0x0002a4ac beql v1, zero, 0x2a208            |         goto label_33;
                                                 |     }
    0x0002a4b0 addiu v1, s2, 0x10                |     v1 = s2 + 0x10;
    0x0002a4b4 lw v0, (v1)                       |     v0 = *(v1);
    0x0002a4b8 b 0x2a20c                         |     goto label_34;
                                                 | label_91:
    0x0002a4bc lw v0, 4(s0)                      |     v0 = *((s0 + 1));
    0x0002a4c0 lw v1, 0x60(v0)                   |     v1 = *((v0 + 24));
    0x0002a4c4 lw v0, (v1)                       |     v0 = *(v1);
                                                 |     if (v1 == 0) {
    0x0002a4c8 bnel v1, zero, 0x2a2f8            |         goto label_35;
                                                 |     }
    0x0002a4cc lw v1, 8(s0)                      |     v1 = *((s0 + 2));
    0x0002a4d0 addiu v1, v1, 0x10                |     v1 += 0x10;
    0x0002a4d4 b 0x2a2f4                         |     goto label_36;
                                                 | label_89:
    0x0002a4d8 lw v0, 4(s0)                      |     v0 = *((s0 + 1));
    0x0002a4dc lw v1, 0x60(v0)                   |     v1 = *((v0 + 24));
                                                 |     if (v1 == 0) {
    0x0002a4e0 beql v1, zero, 0x2a278            |         goto label_37;
                                                 |     }
    0x0002a4e4 addiu v1, s2, 0x10                |     v1 = s2 + 0x10;
    0x0002a4e8 lw v0, (v1)                       |     v0 = *(v1);
    0x0002a4ec b 0x2a27c                         |     goto label_38;
                                                 | label_85:
    0x0002a4f0 lw v0, 4(s0)                      |     v0 = *((s0 + 1));
    0x0002a4f4 lw v1, 0x60(v0)                   |     v1 = *((v0 + 24));
    0x0002a4f8 lw v0, (v1)                       |     v0 = *(v1);
                                                 |     if (v1 == 0) {
    0x0002a4fc bnel v1, zero, 0x2a19c            |         goto label_39;
                                                 |     }
    0x0002a500 lw v1, 8(s0)                      |     v1 = *((s0 + 2));
    0x0002a504 addiu v1, v1, 0x10                |     v1 += 0x10;
    0x0002a508 b 0x2a198                         |     goto label_40;
                                                 | label_93:
    0x0002a50c lw v0, 4(s0)                      |     v0 = *((s0 + 1));
    0x0002a510 lw v1, 0x60(v0)                   |     v1 = *((v0 + 24));
    0x0002a514 lw v0, (v1)                       |     v0 = *(v1);
                                                 |     if (v1 == 0) {
    0x0002a518 bnel v1, zero, 0x2a380            |         goto label_41;
                                                 |     }
    0x0002a51c lw v1, 8(s0)                      |     v1 = *((s0 + 2));
    0x0002a520 addiu v1, v1, 0x10                |     v1 += 0x10;
    0x0002a524 b 0x2a37c                         |     goto label_42;
                                                 | label_76:
    0x0002a528 move v0, zero                     |     v0 = 0;
    0x0002a52c addiu s1, s1, 0x47dc              |     s1 += 0x47dc;
    0x0002a530 move s2, s1                       |     s2 = s1;
    0x0002a534 b 0x29f08                         |     goto label_43;
                                                 | label_74:
    0x0002a538 lw v0, 4(s0)                      |     v0 = *((s0 + 1));
    0x0002a53c lw v1, 0x60(v0)                   |     v1 = *((v0 + 24));
    0x0002a540 lw v0, (v1)                       |     v0 = *(v1);
                                                 |     if (v1 == 0) {
    0x0002a544 bnel v1, zero, 0x29e9c            |         goto label_44;
                                                 |     }
    0x0002a548 lw v1, 8(s0)                      |     v1 = *((s0 + 2));
    0x0002a54c addiu v1, v1, 0x10                |     v1 += 0x10;
    0x0002a550 b 0x29e98                         |     goto label_45;
                                                 | label_78:
    0x0002a554 addiu v0, zero, 0x50              |     v0 = 0x50;
    0x0002a558 b 0x29f08                         |     goto label_43;
                                                 | label_69:
    0x0002a55c lw t9, -0x75e8(gp)                |     t9 = sym.imp.__stack_chk_fail;
    0x0002a560 jalr t9                           |     t9 ();
    0x0002a564 nop                               |     
                                                 | }
    ; assembly                                       | /* r2dec pseudo code output */
                                                     | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x2ee30 */
                                                     | #include <stdint.h>
                                                     |  
    ; (fcn) sym.ap_get_protocol_upgrades ()          | void ap_get_protocol_upgrades () {
    0x0002ee30 lui gp, 7                             |     
    0x0002ee34 addiu gp, gp, 0x40f0                  |     
    0x0002ee38 addu gp, gp, t9                       |     gp += t9;
    0x0002ee3c addiu sp, sp, -0x38                   |     
    0x0002ee40 sw gp, 0x10(sp)                       |     *(var_10h) = gp;
    0x0002ee44 sw s4, 0x28(sp)                       |     *(var_28h) = s4;
    0x0002ee48 sw ra, 0x34(sp)                       |     *(var_34h) = ra;
    0x0002ee4c sw s6, 0x30(sp)                       |     *(var_30h) = s6;
    0x0002ee50 sw s5, 0x2c(sp)                       |     *(var_2ch) = s5;
    0x0002ee54 sw s3, 0x24(sp)                       |     *(var_24h) = s3;
    0x0002ee58 sw s2, 0x20(sp)                       |     *(var_20h) = s2;
    0x0002ee5c sw s1, 0x1c(sp)                       |     *(var_1ch) = s1;
    0x0002ee60 sw s0, 0x18(sp)                       |     *(var_18h) = s0;
    0x0002ee64 move s4, a3                           |     s4 = a3;
                                                     |     if (a1 == 0) {
    0x0002ee68 beqz a1, 0x2ef9c                      |         goto label_9;
                                                     |     }
    0x0002ee6c lw s0, (a1)                           |     s0 = *(a1);
                                                     |     if (a2 == 0) {
    0x0002ee70 beqz a2, 0x2ef78                      |         goto label_10;
                                                     |     }
                                                     | label_5:
    0x0002ee74 lw v0, 0x18(a2)                       |     v0 = *((a2 + 6));
    0x0002ee78 lw s3, (v0)                           |     s3 = *(v0);
    0x0002ee7c lw v0, 0x38(s3)                       |     v0 = *((s3 + 14));
    0x0002ee80 lw v0, 8(v0)                          |     v0 = *((v0 + 2));
    0x0002ee84 lw t9, -0x7d3c(gp)                    |     t9 = sym.ap_run_protocol_get;
                                                     |     if (v0 > 0) {
    0x0002ee88 bgtz v0, 0x2eec4                      |         goto label_4;
                                                     |     }
                                                     | label_6:
    0x0002ee8c move s5, zero                         |     s5 = 0;
                                                     |     do {
                                                     | label_3:
    0x0002ee90 lw v0, 0x48(sp)                       |         v0 = *(arg_48h);
                                                     | label_0:
    0x0002ee94 lw ra, 0x34(sp)                       |         ra = *(var_34h);
    0x0002ee98 lw s6, 0x30(sp)                       |         s6 = *(var_30h);
    0x0002ee9c sw s5, (v0)                           |         *(v0) = s5;
    0x0002eea0 lw s4, 0x28(sp)                       |         s4 = *(var_28h);
    0x0002eea4 lw s5, 0x2c(sp)                       |         s5 = *(var_2ch);
    0x0002eea8 lw s3, 0x24(sp)                       |         s3 = *(var_24h);
    0x0002eeac lw s2, 0x20(sp)                       |         s2 = *(var_20h);
    0x0002eeb0 lw s1, 0x1c(sp)                       |         s1 = *(var_1ch);
    0x0002eeb4 lw s0, 0x18(sp)                       |         s0 = *(var_18h);
    0x0002eeb8 move v0, zero                         |         v0 = 0;
    0x0002eebc addiu sp, sp, 0x38                    |         
    0x0002eec0 jr ra                                 |         return v0;
                                                     | label_4:
    0x0002eec4 bal 0x2ed2c                           |         sym_ap_run_protocol_get ();
    0x0002eec8 nop                                   |         
    0x0002eecc move s2, v0                           |         s2 = v0;
    0x0002eed0 lw gp, 0x10(sp)                       |         gp = *(var_10h);
                                                     |         if (v0 == 0) {
    0x0002eed4 beqz v0, 0x2efc8                      |             goto label_11;
                                                     |         }
                                                     | label_8:
    0x0002eed8 lw a0, 0x38(s3)                       |         a0 = *((s3 + 14));
    0x0002eedc lw a1, 8(a0)                          |         a1 = *((a0 + 2));
    0x0002eee0 slti v0, a1, 2                        |         v0 = (a1 < 2) ? 1 : 0;
    0x0002eee4 lw t9, -0x7d9c(gp)                    |         t9 = sym.ap_array_str_contains;
                                                     |         if (v0 != 0) {
    0x0002eee8 bnez v0, 0x2efac                      |             goto label_12;
                                                     |         }
                                                     | label_7:
    0x0002eeec lw t9, -0x775c(gp)                    |         t9 = sym.imp.apr_array_make;
    0x0002eef0 addiu a2, zero, 4                     |         a2 = 4;
    0x0002eef4 addiu a1, a1, 1                       |         a1++;
    0x0002eef8 move a0, s0                           |         a0 = s0;
    0x0002eefc jalr t9                               |         t9 ();
    0x0002ef00 lw s6, 0x38(s3)                       |         s6 = *((s3 + 14));
    0x0002ef04 move s5, v0                           |         s5 = v0;
    0x0002ef08 lw v0, 8(s6)                          |         v0 = *((s6 + 2));
    0x0002ef0c lw gp, 0x10(sp)                       |         gp = *(var_10h);
    0x0002ef10 blez v0, 0x2ee90                      |         
                                                     |     } while (v0 <= 0);
    0x0002ef14 move s1, zero                         |     s1 = 0;
    0x0002ef18 b 0x2ef38                             |     goto label_13;
                                                     | label_1:
    0x0002ef1c lw v0, 0x48(sp)                       |     v0 = *(arg_48h);
                                                     |     if (s4 == 0) {
    0x0002ef20 beqz s4, 0x2ee94                      |         goto label_0;
                                                     |     }
                                                     | label_2:
    0x0002ef24 lw v0, 8(s6)                          |     v0 = *((s6 + 2));
    0x0002ef28 addiu s1, s1, 1                       |     s1++;
    0x0002ef2c slt v0, s1, v0                        |     v0 = (s1 < v0) ? 1 : 0;
    0x0002ef30 lw v0, 0x48(sp)                       |     v0 = *(arg_48h);
                                                     |     if (v0 == 0) {
    0x0002ef34 beqz v0, 0x2ee94                      |         goto label_0;
                                                     |     }
                                                     | label_13:
    0x0002ef38 lw v0, 0x10(s6)                       |     v0 = *((s6 + 4));
    0x0002ef3c sll s0, s1, 2                         |     s0 = s1 << 2;
    0x0002ef40 lw t9, -0x7740(gp)                    |     t9 = sym.imp.strcmp;
    0x0002ef44 lwx s0, s0(v0)                        |     __asm ("lwx s0, s0(v0)");
    0x0002ef48 move a0, s2                           |     a0 = s2;
    0x0002ef4c move a1, s0                           |     a1 = s0;
    0x0002ef50 jalr t9                               |     t9 ();
    0x0002ef54 lw gp, 0x10(sp)                       |     gp = *(var_10h);
                                                     |     if (v0 == 0) {
    0x0002ef58 beqz v0, 0x2ef1c                      |         goto label_1;
                                                     |     }
    0x0002ef5c lw t9, -0x7324(gp)                    |     t9 = sym.imp.apr_array_push;
    0x0002ef60 move a0, s5                           |     a0 = s5;
    0x0002ef64 jalr t9                               |     t9 ();
    0x0002ef68 lw gp, 0x10(sp)                       |     gp = *(var_10h);
    0x0002ef6c sw s0, (v0)                           |     *(v0) = s0;
    0x0002ef70 lw s6, 0x38(s3)                       |     s6 = *((s3 + 14));
    0x0002ef74 b 0x2ef24                             |     goto label_2;
                                                     | label_10:
    0x0002ef78 lw a2, 8(a1)                          |     a2 = *((a1 + 2));
    0x0002ef7c lw v0, 0x18(a2)                       |     v0 = *((a2 + 6));
    0x0002ef80 lw s3, (v0)                           |     s3 = *(v0);
    0x0002ef84 lw v0, 0x38(s3)                       |     v0 = *((s3 + 14));
    0x0002ef88 lw v0, 8(v0)                          |     v0 = *((v0 + 2));
    0x0002ef8c move s5, zero                         |     s5 = 0;
                                                     |     if (v0 <= 0) {
    0x0002ef90 blez v0, 0x2ee90                      |         goto label_3;
                                                     |     }
    0x0002ef94 lw t9, -0x7d3c(gp)                    |     t9 = sym.ap_run_protocol_get;
    0x0002ef98 b 0x2eec4                             |     goto label_4;
                                                     | label_9:
    0x0002ef9c lw s0, (a0)                           |     s0 = *(a0);
                                                     |     if (a2 != 0) {
    0x0002efa0 bnez a2, 0x2ee74                      |         goto label_5;
                                                     |     }
    0x0002efa4 lw a2, 4(a0)                          |     a2 = *((a0 + 1));
    0x0002efa8 b 0x2ee74                             |     goto label_5;
                                                     | label_12:
    0x0002efac move a1, s2                           |     a1 = s2;
    0x0002efb0 bal 0x21b0c                           |     sym_ap_array_str_contains ();
    0x0002efb4 lw gp, 0x10(sp)                       |     gp = *(var_10h);
                                                     |     if (v0 != 0) {
    0x0002efb8 bnez v0, 0x2ee8c                      |         goto label_6;
                                                     |     }
    0x0002efbc lw v0, 0x38(s3)                       |     v0 = *((s3 + 14));
    0x0002efc0 lw a1, 8(v0)                          |     a1 = *((v0 + 2));
    0x0002efc4 b 0x2eeec                             |     goto label_7;
                                                     | label_11:
    0x0002efc8 lw s2, -0x7fac(gp)                    |     s2 = *(gp);
                                                     |     /* str.http_1.1 */
    0x0002efcc addiu s2, s2, -0x57fc                 |     s2 += -0x57fc;
    0x0002efd0 b 0x2eed8                             |     goto label_8;
                                                     | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x36b88 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.ap_get_remote_host ()        | void ap_get_remote_host () {
    0x00036b88 lui gp, 7                     |     
    0x00036b8c addiu gp, gp, -0x3c68         |     
    0x00036b90 addu gp, gp, t9               |     gp += t9;
    0x00036b94 addiu sp, sp, -0x48           |     
    0x00036b98 sw s3, 0x3c(sp)               |     *(var_3ch) = s3;
    0x00036b9c lw s3, -0x7534(gp)            |     s3 = *(gp);
    0x00036ba0 sw gp, 0x18(sp)               |     *(var_18h) = gp;
    0x00036ba4 sw s2, 0x38(sp)               |     *(var_38h) = s2;
    0x00036ba8 lw v0, (s3)                   |     v0 = *(s3);
    0x00036bac sw s0, 0x30(sp)               |     *(var_30h) = s0;
    0x00036bb0 sw ra, 0x44(sp)               |     *(var_44h) = ra;
    0x00036bb4 sw s4, 0x40(sp)               |     *(var_40h) = s4;
    0x00036bb8 sw s1, 0x34(sp)               |     *(var_34h) = s1;
    0x00036bbc move s0, a0                   |     s0 = a0;
    0x00036bc0 move s2, a2                   |     s2 = a2;
    0x00036bc4 sw v0, 0x2c(sp)               |     *(var_2ch) = v0;
    0x00036bc8 addiu s1, sp, 0x24            |     s1 = sp + 0x24;
                                             |     if (a3 != 0) {
    0x00036bcc beqz a3, 0x36bd4              |         
    0x00036bd0 move s1, a3                   |         s1 = a3;
                                             |     }
    0x00036bd4 sw zero, (s1)                 |     *(s1) = 0;
    0x00036bd8 lw v0, 0x18(s0)               |     v0 = *((s0 + 6));
                                             |     if (a1 == 0) {
    0x00036bdc beqz a1, 0x36cd0              |         goto label_8;
                                             |     }
    0x00036be0 lw a0, (a1)                   |     a0 = *(a1);
    0x00036be4 addiu v1, zero, 3             |     v1 = 3;
    0x00036be8 lw s4, 0x18(a0)               |     s4 = *((a0 + 6));
    0x00036bec andi s4, s4, 0xf              |     s4 &= 0xf;
    0x00036bf0 addiu a0, zero, 2             |     a0 = 2;
                                             |     if (s4 == v1) {
    0x00036bf4 beq s4, v1, 0x36cd0           |         goto label_8;
                                             |     }
                                             |     if (s2 == a0) {
    0x00036bf8 beq s2, a0, 0x36d00           |         goto label_9;
                                             |     }
    0x00036bfc nop                           |     
                                             |     if (v0 == 0) {
    0x00036c00 beqz v0, 0x36d68              |         goto label_10;
                                             |     }
    0x00036c04 nop                           |     
                                             | label_0:
    0x00036c08 lb v1, (v0)                   |     v1 = *(v0);
                                             |     if (s2 == v1) {
    0x00036c0c bnel s2, v1, 0x36d0c          |         goto label_11;
                                             |     }
                                             | label_2:
    0x00036c10 lw v1, 0x50(s0)               |     v1 = *((s0 + 20));
    0x00036c14 sll v1, v1, 0x1d              |     v1 <<= 0x1d;
    0x00036c18 sra v1, v1, 0x1e              |     v1 >>= 0x1e;
    0x00036c1c lbu v0, 0x50(s0)              |     v0 = *((s0 + 80));
                                             |     if (v1 == 0) {
    0x00036c20 bnel v1, zero, 0x36c9c        |         goto label_12;
                                             |     }
    0x00036c24 lb v1, (v0)                   |     v1 = *(v0);
    0x00036c28 addiu a0, sp, 0x28            |     a0 = sp + 0x28;
                                             |     if (v1 == 0) {
    0x00036c2c beqz v1, 0x36d60              |         goto label_13;
                                             |     }
    0x00036c30 lw v1, (s0)                   |     v1 = *(s0);
    0x00036c34 lw t9, -0x7434(gp)            |     t9 = sym.imp.apr_sockaddr_info_get;
    0x00036c38 sw v1, 0x14(sp)               |     *(var_14h_2) = v1;
    0x00036c3c sw zero, 0x10(sp)             |     *(var_10h_2) = 0;
    0x00036c40 move a3, zero                 |     a3 = 0;
    0x00036c44 move a2, zero                 |     a2 = 0;
    0x00036c48 move a1, v0                   |     a1 = v0;
    0x00036c4c lw s1, 0x10(s0)               |     s1 = *((s0 + 4));
    0x00036c50 jalr t9                       |     t9 ();
    0x00036c54 lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     if (v0 != 0) {
    0x00036c58 bnez v0, 0x36d60              |         goto label_13;
                                             |     }
    0x00036c5c lw a0, 0x28(sp)               |     a0 = *(var_28h_2);
    0x00036c60 lw t9, -0x73fc(gp)            |     t9 = sym.imp.apr_sockaddr_equal;
                                             |     if (a0 != 0) {
    0x00036c64 bnez a0, 0x36c84              |         goto label_14;
                                             |     }
    0x00036c68 addiu v1, zero, -1            |     v1 = -1;
    0x00036c6c b 0x36c98                     |     goto label_1;
                                             |     do {
    0x00036c70 lw v0, 0x28(sp)               |         v0 = *(var_28h_2);
    0x00036c74 lw a0, 0x24(v0)               |         a0 = *((v0 + 9));
    0x00036c78 sw a0, 0x28(sp)               |         *(var_28h_2) = a0;
                                             |         if (a0 == 0) {
    0x00036c7c beqz a0, 0x36d60              |             goto label_13;
                                             |         }
    0x00036c80 lw t9, -0x73fc(gp)            |         t9 = sym.imp.apr_sockaddr_equal;
                                             | label_14:
    0x00036c84 move a1, s1                   |         a1 = s1;
    0x00036c88 jalr t9                       |         t9 ();
    0x00036c8c lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x00036c90 beqz v0, 0x36c70              |         
                                             |     } while (v0 == 0);
    0x00036c94 addiu v1, zero, 1             |     v1 = 1;
                                             | label_1:
    0x00036c98 lbu v0, 0x50(s0)              |     v0 = *((s0 + 80));
                                             | label_12:
    0x00036c9c addiu a0, zero, 6             |     a0 = 6;
    0x00036ca0 ins v0, v1, 1, 2              |     __asm ("ins v0, v1, 1, 2");
    0x00036ca4 andi v1, v0, 6                |     v1 = v0 & 6;
    0x00036ca8 sb v0, 0x50(s0)               |     *((s0 + 80)) = v0;
                                             |     if (v1 != a0) {
    0x00036cac beq v1, a0, 0x36cc8           |         
    0x00036cb0 lw v0, 0x18(s0)               |         v0 = *((s0 + 6));
                                             |         if (v0 == 0) {
    0x00036cb4 beql v0, zero, 0x36d34        |             goto label_15;
                                             |         }
    0x00036cb8 move v0, zero                 |         v0 = 0;
    0x00036cbc lb v1, (v0)                   |         v1 = *(v0);
                                             |         if (v1 != 0) {
    0x00036cc0 bnez v1, 0x36d34              |             goto label_15;
                                             |         }
    0x00036cc4 nop                           |         
                                             |     }
    0x00036cc8 move v0, zero                 |     v0 = 0;
    0x00036ccc b 0x36d34                     |     goto label_15;
                                             | label_8:
    0x00036cd0 addiu v1, zero, 2             |     v1 = 2;
                                             |     if (s2 == v1) {
    0x00036cd4 beq s2, v1, 0x36d00           |         goto label_9;
                                             |     }
    0x00036cd8 nop                           |     
    0x00036cdc addiu v1, zero, 3             |     v1 = 3;
                                             |     if (v0 == 0) {
    0x00036ce0 bnel v0, zero, 0x36c08        |         goto label_0;
                                             |     }
    0x00036ce4 addiu v0, zero, 3             |     v0 = 3;
    0x00036ce8 move s4, zero                 |     s4 = 0;
                                             |     if (s2 == v0) {
    0x00036cec beq s2, v0, 0x36d78           |         goto label_16;
                                             |     }
                                             | label_3:
    0x00036cf0 addiu v0, zero, 1             |     v0 = 1;
                                             |     if (s2 == 0) {
    0x00036cf4 bnel s2, zero, 0x36d2c        |         goto label_17;
                                             |     }
    0x00036cf8 move v0, zero                 |     v0 = 0;
    0x00036cfc b 0x36d34                     |     goto label_15;
                                             |     if (v0 == 0) {
                                             | label_9:
    0x00036d00 beql v0, zero, 0x36d2c        |         goto label_17;
                                             |     }
    0x00036d04 addiu v0, zero, 1             |     v0 = 1;
    0x00036d08 lb v1, (v0)                   |     v1 = *(v0);
                                             |     if (v1 != 0) {
                                             | label_11:
    0x00036d0c bnez v1, 0x36d34              |         goto label_15;
                                             |     }
    0x00036d10 nop                           |     
                                             |     do {
    0x00036d14 move v0, zero                 |         v0 = 0;
                                             |         if (s2 != 0) {
    0x00036d18 beqz s2, 0x36d34              |             
    0x00036d1c addiu v0, zero, 3             |             v0 = 3;
    0x00036d20 move v0, zero                 |             v0 = 0;
                                             |             if (s2 == v0) {
    0x00036d24 beq s2, v0, 0x36d34           |                 goto label_15;
                                             |             }
    0x00036d28 addiu v0, zero, 1             |             v0 = 1;
                                             | label_17:
    0x00036d2c sw v0, (s1)                   |             *(s1) = v0;
    0x00036d30 lw v0, 0x14(s0)               |             v0 = *((s0 + 5));
                                             |         }
                                             | label_15:
    0x00036d34 lw a0, 0x2c(sp)               |         a0 = *(var_2ch);
    0x00036d38 lw v1, (s3)                   |         v1 = *(s3);
    0x00036d3c lw ra, 0x44(sp)               |         ra = *(var_44h);
                                             |         if (a0 != v1) {
    0x00036d40 bne a0, v1, 0x36e8c           |             goto label_18;
                                             |         }
    0x00036d44 lw s4, 0x40(sp)               |         s4 = *(var_40h);
    0x00036d48 lw s3, 0x3c(sp)               |         s3 = *(var_3ch);
    0x00036d4c lw s2, 0x38(sp)               |         s2 = *(var_38h);
    0x00036d50 lw s1, 0x34(sp)               |         s1 = *(var_34h);
    0x00036d54 lw s0, 0x30(sp)               |         s0 = *(var_30h);
    0x00036d58 addiu sp, sp, 0x48            |         
    0x00036d5c jr ra                         |         return v0;
                                             | label_13:
    0x00036d60 addiu v1, zero, -1            |         v1 = -1;
    0x00036d64 b 0x36c98                     |         goto label_1;
                                             | label_10:
    0x00036d68 lw t9, -0x76c0(gp)            |         t9 = sym.imp.apr_getnameinfo;
                                             |         if (s2 == v1) {
    0x00036d6c beq s2, v1, 0x36d7c           |             goto label_19;
                                             |         }
    0x00036d70 beqz s4, 0x36d14              |         
                                             |     } while (s4 == 0);
    0x00036d74 nop                           |     
                                             | label_16:
    0x00036d78 lw t9, -0x76c0(gp)            |     t9 = sym.imp.apr_getnameinfo;
                                             | label_19:
    0x00036d7c lw a1, 0x10(s0)               |     a1 = *((s0 + 4));
    0x00036d80 move a2, zero                 |     a2 = 0;
    0x00036d84 addiu a0, s0, 0x18            |     a0 = s0 + 0x18;
    0x00036d88 jalr t9                       |     t9 ();
    0x00036d8c lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     if (v0 == 0) {
    0x00036d90 beqz v0, 0x36dbc              |         goto label_20;
                                             |     }
                                             | label_4:
    0x00036d94 lw v0, 0x18(s0)               |     v0 = *((s0 + 6));
                                             | label_6:
    0x00036d98 addiu v1, zero, 3             |     v1 = 3;
                                             |     if (v0 != 0) {
    0x00036d9c bnez v0, 0x36c08              |         goto label_0;
                                             |     }
                                             | label_5:
    0x00036da0 lw v0, -0x7fac(gp)            |     v0 = *(gp);
    0x00036da4 addiu v1, zero, 3             |     v1 = 3;
    0x00036da8 addiu v0, v0, 0x47dc          |     v0 += 0x47dc;
    0x00036dac sw v0, 0x18(s0)               |     *((s0 + 6)) = v0;
                                             |     if (s2 == v1) {
    0x00036db0 beq s2, v1, 0x36c10           |         goto label_2;
                                             |     }
    0x00036db4 b 0x36cf0                     |     goto label_3;
    0x00036db8 nop                           |     
                                             | label_20:
    0x00036dbc lw t9, -0x7ec4(gp)            |     t9 = sym.ap_str_tolower;
    0x00036dc0 lw a0, 0x18(s0)               |     a0 = *((s0 + 6));
    0x00036dc4 bal 0x1ee38                   |     sym_ap_str_tolower ();
    0x00036dc8 addiu v0, zero, 2             |     v0 = 2;
    0x00036dcc lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     if (s4 != v0) {
    0x00036dd0 bne s4, v0, 0x36d94           |         goto label_4;
                                             |     }
    0x00036dd4 lw v0, 0x50(s0)               |     v0 = *((s0 + 20));
    0x00036dd8 sll v0, v0, 0x1d              |     v0 <<= 0x1d;
    0x00036ddc sra v0, v0, 0x1e              |     v0 >>= 0x1e;
    0x00036de0 lbu v1, 0x50(s0)              |     v1 = *((s0 + 80));
                                             |     if (v0 == 0) {
    0x00036de4 bnel v0, zero, 0x36e68        |         goto label_21;
                                             |     }
    0x00036de8 lw a1, 0x18(s0)               |     a1 = *((s0 + 6));
    0x00036dec addiu v0, zero, -1            |     v0 = -1;
                                             |     if (a1 == 0) {
    0x00036df0 beqz a1, 0x36e64              |         goto label_7;
                                             |     }
    0x00036df4 lb v0, (a1)                   |     v0 = *(a1);
    0x00036df8 addiu a0, sp, 0x28            |     a0 = sp + 0x28;
                                             |     if (v0 == 0) {
    0x00036dfc beqz v0, 0x36e84              |         goto label_22;
                                             |     }
    0x00036e00 lw v0, (s0)                   |     v0 = *(s0);
    0x00036e04 lw t9, -0x7434(gp)            |     t9 = sym.imp.apr_sockaddr_info_get;
    0x00036e08 sw v0, 0x14(sp)               |     *(var_14h_2) = v0;
    0x00036e0c sw zero, 0x10(sp)             |     *(var_10h_2) = 0;
    0x00036e10 move a3, zero                 |     a3 = 0;
    0x00036e14 move a2, zero                 |     a2 = 0;
    0x00036e18 lw s4, 0x10(s0)               |     s4 = *((s0 + 4));
    0x00036e1c jalr t9                       |     t9 ();
    0x00036e20 lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     if (v0 != 0) {
    0x00036e24 bnez v0, 0x36e84              |         goto label_22;
                                             |     }
    0x00036e28 lw a0, 0x28(sp)               |     a0 = *(var_28h_2);
    0x00036e2c lw t9, -0x73fc(gp)            |     t9 = sym.imp.apr_sockaddr_equal;
                                             |     if (a0 != 0) {
    0x00036e30 bnez a0, 0x36e50              |         goto label_23;
                                             |     }
    0x00036e34 addiu v0, zero, -1            |     v0 = -1;
    0x00036e38 b 0x36e64                     |     goto label_7;
                                             |     do {
    0x00036e3c lw v0, 0x28(sp)               |         v0 = *(var_28h_2);
    0x00036e40 lw a0, 0x24(v0)               |         a0 = *((v0 + 9));
    0x00036e44 sw a0, 0x28(sp)               |         *(var_28h_2) = a0;
                                             |         if (a0 == 0) {
    0x00036e48 beqz a0, 0x36e84              |             goto label_22;
                                             |         }
    0x00036e4c lw t9, -0x73fc(gp)            |         t9 = sym.imp.apr_sockaddr_equal;
                                             | label_23:
    0x00036e50 move a1, s4                   |         a1 = s4;
    0x00036e54 jalr t9                       |         t9 ();
    0x00036e58 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x00036e5c beqz v0, 0x36e3c              |         
                                             |     } while (v0 == 0);
    0x00036e60 addiu v0, zero, 1             |     v0 = 1;
                                             | label_7:
    0x00036e64 lbu v1, 0x50(s0)              |     v1 = *((s0 + 80));
                                             | label_21:
    0x00036e68 addiu a0, zero, 2             |     a0 = 2;
    0x00036e6c ins v1, v0, 1, 2              |     __asm ("ins v1, v0, 1, 2");
    0x00036e70 andi v0, v1, 6                |     v0 = v1 & 6;
    0x00036e74 sb v1, 0x50(s0)               |     *((s0 + 80)) = v1;
                                             |     if (v0 != a0) {
    0x00036e78 bne v0, a0, 0x36da0           |         goto label_5;
                                             |     }
    0x00036e7c lw v0, 0x18(s0)               |     v0 = *((s0 + 6));
    0x00036e80 b 0x36d98                     |     goto label_6;
                                             | label_22:
    0x00036e84 addiu v0, zero, -1            |     v0 = -1;
    0x00036e88 b 0x36e64                     |     goto label_7;
                                             | label_18:
    0x00036e8c lw t9, -0x75e8(gp)            |     t9 = sym.imp.__stack_chk_fail;
    0x00036e90 jalr t9                       |     t9 ();
    0x00036e94 nop                           |     
                                             | }
    ; assembly                                   | /* r2dec pseudo code output */
                                                 | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x3ac8c */
                                                 | #include <stdint.h>
                                                 |  
    ; (fcn) sym.ap_get_server_protocol ()        | void ap_get_server_protocol () {
    0x0003ac8c lw v0, 0x18(a0)                   |     v0 = *((a0 + 6));
    0x0003ac90 lw v0, (v0)                       |     v0 = *(v0);
    0x0003ac94 lw v0, 0x1c(v0)                   |     v0 = *((v0 + 7));
    0x0003ac98 jr ra                             |     return v0;
                                                 | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x6e810 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.ap_http_header_filter ()     | void ap_http_header_filter () {
    0x0006e810 lui gp, 3                     |     
    0x0006e814 addiu gp, gp, 0x4710          |     
    0x0006e818 addu gp, gp, t9               |     gp += t9;
    0x0006e81c addiu sp, sp, -0x98           |     
    0x0006e820 lw v0, -0x7534(gp)            |     v0 = *(gp);
    0x0006e824 sw s0, 0x70(sp)               |     *(var_70h) = s0;
    0x0006e828 lw s0, 0xc(a0)                |     s0 = *((a0 + 3));
    0x0006e82c sw v0, 0x38(sp)               |     *(var_38h) = v0;
    0x0006e830 lw v0, (v0)                   |     v0 = *(v0);
    0x0006e834 lw v1, 0x24(s0)               |     v1 = *((s0 + 9));
    0x0006e838 sw v0, 0x6c(sp)               |     *(var_6ch) = v0;
    0x0006e83c lw v0, 4(s0)                  |     v0 = *((s0 + 1));
    0x0006e840 sw gp, 0x28(sp)               |     *(var_28h_2) = gp;
    0x0006e844 sw s4, 0x80(sp)               |     *(var_80h) = s4;
    0x0006e848 sw s3, 0x7c(sp)               |     *(var_7ch) = s3;
    0x0006e84c sw s2, 0x78(sp)               |     *(var_78h) = s2;
    0x0006e850 sw ra, 0x94(sp)               |     *(var_94h) = ra;
    0x0006e854 sw fp, 0x90(sp)               |     *(var_90h) = fp;
    0x0006e858 sw s7, 0x8c(sp)               |     *(var_8ch) = s7;
    0x0006e85c sw s6, 0x88(sp)               |     *(var_88h) = s6;
    0x0006e860 sw s5, 0x84(sp)               |     *(var_84h) = s5;
    0x0006e864 sw s1, 0x74(sp)               |     *(var_74h) = s1;
    0x0006e868 move s3, a0                   |     s3 = a0;
    0x0006e86c move s2, a1                   |     s2 = a1;
    0x0006e870 sw v1, 0x3c(sp)               |     *(var_3ch) = v1;
    0x0006e874 sw v0, 0x34(sp)               |     *(var_34h) = v0;
    0x0006e878 lw s4, 4(a0)                  |     s4 = *((a0 + 1));
                                             |     if (v1 == 0) {
    0x0006e87c bnez v1, 0x6e8c4              |         
    0x0006e880 lw v0, 0x44(s0)               |         v0 = *((s0 + 17));
    0x0006e884 addiu v1, zero, 0xcc          |         v1 = 0xcc;
    0x0006e888 addiu v1, zero, 0x130         |         v1 = aav.0x00000130;
                                             |         if (v0 == v1) {
    0x0006e88c beq v0, v1, 0x6e8c4           |             goto label_32;
                                             |         }
    0x0006e890 sw zero, 0x5c(sp)             |         *(var_5ch) = 0;
                                             |         if (v0 == v1) {
    0x0006e894 beq v0, v1, 0x6e8c8           |             goto label_33;
                                             |         }
    0x0006e898 lw t9, -0x7544(gp)            |         t9 = sym.imp.apr_palloc;
                                             |         if (s4 == 0) {
    0x0006e89c beqz s4, 0x6ed2c              |             goto label_34;
                                             |         }
    0x0006e8a0 lw v0, 4(s2)                  |         v0 = *((s2 + 1));
    0x0006e8a4 addiu s1, s2, 4               |         s1 = s2 + 4;
    0x0006e8a8 lw a0, -0x7df0(gp)            |         a0 = *(gp);
                                             |         if (v0 == s1) {
    0x0006e8ac bnel v0, s1, 0x6e8f4          |             goto label_5;
                                             |         }
    0x0006e8b0 lw v0, (s4)                   |         v0 = *(s4);
                                             | label_6:
    0x0006e8b4 move a2, zero                 |         a2 = 0;
                                             |         if (v0 == 0) {
    0x0006e8b8 beqz v0, 0x6efa0              |             goto label_35;
                                             |         }
    0x0006e8bc sw zero, 0x48(sp)             |         *(var_48h) = 0;
    0x0006e8c0 b 0x6e94c                     |         goto label_10;
                                             |     }
                                             | label_32:
    0x0006e8c4 sw zero, 0x5c(sp)             |     *(var_5ch) = 0;
                                             | label_33:
    0x0006e8c8 addiu v0, zero, 1             |     v0 = 1;
                                             |     if (s4 == 0) {
    0x0006e8cc beqz s4, 0x6ed24              |         goto label_36;
                                             |     }
    0x0006e8d0 lw v0, (s4)                   |     v0 = *(s4);
                                             |     if (v0 != 0) {
    0x0006e8d4 bnez v0, 0x6ebf4              |         goto label_37;
                                             |     }
    0x0006e8d8 nop                           |     
    0x0006e8dc lw v0, 4(s2)                  |     v0 = *((s2 + 1));
    0x0006e8e0 addiu v1, zero, 1             |     v1 = 1;
    0x0006e8e4 addiu s1, s2, 4               |     s1 = s2 + 4;
    0x0006e8e8 sw v1, 0x3c(sp)               |     *(var_3ch) = v1;
                                             |     if (v0 == s1) {
    0x0006e8ec beq v0, s1, 0x6ef9c           |         goto label_38;
                                             |     }
    0x0006e8f0 lw a0, -0x7df0(gp)            |     a0 = *(gp);
                                             | label_5:
    0x0006e8f4 lw a1, -0x7a90(gp)            |     a1 = *(gp);
    0x0006e8f8 move a2, zero                 |     a2 = 0;
    0x0006e8fc b 0x6e914                     |     
                                             |     while (v1 != a0) {
                                             | label_0:
    0x0006e900 lw t9, -0x7e34(gp)            |         t9 = sym.ap_remove_output_filter;
                                             |         if (v1 == a1) {
    0x0006e904 beq v1, a1, 0x6ec2c           |             goto label_39;
                                             |         }
    0x0006e908 lw v0, (v0)                   |         v0 = *(v0);
                                             |         if (v0 == s1) {
    0x0006e90c beql v0, s1, 0x6e93c          |             goto label_40;
                                             |         }
    0x0006e910 lw v0, (s4)                   |         v0 = *(s4);
    0x0006e914 lw v1, 8(v0)                  |         v1 = *((v0 + 2));
                                             | label_1:
    0x0006e918 bne v1, a0, 0x6e900           |         
                                             |     }
    0x0006e91c nop                           |     
                                             |     if (a2 != 0) {
    0x0006e920 bnez a2, 0x6e900              |         goto label_0;
                                             |     }
    0x0006e924 nop                           |     
    0x0006e928 lw a2, 0x18(v0)               |     a2 = *((v0 + 6));
    0x0006e92c lw v0, (v0)                   |     v0 = *(v0);
    0x0006e930 lw v1, 8(v0)                  |     v1 = *((v0 + 2));
                                             |     if (v0 == s1) {
    0x0006e934 bnel v0, s1, 0x6e918          |         goto label_1;
                                             |     }
    0x0006e938 lw v0, (s4)                   |     v0 = *(s4);
                                             |     if (v0 == 0) {
                                             | label_40:
    0x0006e93c beql v0, zero, 0x6efa4        |         goto label_41;
                                             |     }
    0x0006e940 lw v0, 8(s0)                  |     v0 = *((s0 + 2));
                                             | label_25:
    0x0006e944 sw zero, 0x48(sp)             |     *(var_48h) = 0;
                                             |     if (a2 != 0) {
    0x0006e948 bnez a2, 0x6f594              |         goto label_42;
                                             |     }
                                             | label_10:
    0x0006e94c lw v0, 0x1c(s0)               |     v0 = *((s0 + 7));
    0x0006e950 lw t9, -0x7208(gp)            |     t9 = sym.imp.apr_is_empty_table;
                                             |     if (v0 != 0) {
    0x0006e954 bnez v0, 0x6ef5c              |         goto label_43;
                                             |     }
    0x0006e958 lw a0, 0xb8(s0)               |     a0 = *((s0 + 46));
    0x0006e95c jalr t9                       |     t9 ();
    0x0006e960 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
                                             |     if (v0 == 0) {
    0x0006e964 beqz v0, 0x6ecac              |         goto label_44;
                                             |     }
                                             | label_3:
    0x0006e968 lw a1, -0x7fac(gp)            |     a1 = *(gp);
    0x0006e96c lw t9, -0x7668(gp)            |     t9 = sym.imp.apr_table_get;
    0x0006e970 lw a0, 0xbc(s0)               |     a0 = *((s0 + 47));
                                             |     /* str.force_no_vary */
    0x0006e974 addiu a1, a1, 0x76d0          |     a1 += 0x76d0;
    0x0006e978 jalr t9                       |     t9 ();
    0x0006e97c lw gp, 0x28(sp)               |     gp = *(var_28h_2);
                                             |     if (v0 == 0) {
    0x0006e980 beqz v0, 0x6f2f4              |         goto label_45;
                                             |     }
    0x0006e984 lw a1, -0x7fac(gp)            |     a1 = *(gp);
    0x0006e988 lw t9, -0x7270(gp)            |     t9 = sym.imp.apr_table_unset;
    0x0006e98c lw a0, 0xb4(s0)               |     a0 = *((s0 + 45));
                                             |     /* str.Vary */
    0x0006e990 addiu a1, a1, -0x3c0          |     a1 += -aav.0x000003c0;
    0x0006e994 jalr t9                       |     t9 ();
    0x0006e998 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006e99c addiu v0, zero, 0x3e8         |     v0 = aav.0x000003e8;
    0x0006e9a0 lw a0, 0xbc(s0)               |     a0 = *((s0 + 47));
    0x0006e9a4 lw a2, -0x7fac(gp)            |     a2 = *(gp);
    0x0006e9a8 lw a1, -0x7fac(gp)            |     a1 = *(gp);
    0x0006e9ac lw t9, -0x7590(gp)            |     t9 = sym.imp.apr_table_setn;
    0x0006e9b0 sw v0, 0x28(s0)               |     *((s0 + 10)) = v0;
    0x0006e9b4 addiu a2, a2, 0x60bc          |     a2 += 0x60bc;
                                             |     /* str.force_response_1.0 */
    0x0006e9b8 addiu a1, a1, 0x73e8          |     a1 += 0x73e8;
    0x0006e9bc jalr t9                       |     t9 ();
    0x0006e9c0 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
                                             | label_20:
    0x0006e9c4 lw a1, -0x7fac(gp)            |     a1 = *(gp);
    0x0006e9c8 lw t9, -0x7668(gp)            |     t9 = sym.imp.apr_table_get;
    0x0006e9cc lw a0, 0xc0(s0)               |     a0 = *((s0 + 48));
                                             |     /* str.no_etag */
    0x0006e9d0 addiu a1, a1, 0x76e0          |     a1 += 0x76e0;
    0x0006e9d4 jalr t9                       |     t9 ();
    0x0006e9d8 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
                                             |     if (v0 != 0) {
    0x0006e9dc beqz v0, 0x6e9f8              |         
    0x0006e9e0 lw a1, -0x7fac(gp)            |         a1 = *(gp);
    0x0006e9e4 lw t9, -0x7270(gp)            |         t9 = sym.imp.apr_table_unset;
    0x0006e9e8 lw a0, 0xb4(s0)               |         a0 = *((s0 + 45));
                                             |         /* esilref: 'ETag' */
    0x0006e9ec addiu a1, a1, -0x2768         |         a1 += -0x2768;
    0x0006e9f0 jalr t9                       |         t9 ();
    0x0006e9f4 lw gp, 0x28(sp)               |         gp = *(var_28h_2);
                                             |     }
    0x0006e9f8 lw v0, 0x1c(s0)               |     v0 = *((s0 + 7));
    0x0006e9fc lw t9, -0x7fd4(gp)            |     t9 = *(gp);
                                             |     if (v0 == 0) {
    0x0006ea00 beqz v0, 0x6ec94              |         goto label_46;
                                             |     }
                                             | label_2:
    0x0006ea04 lw t9, -0x77fc(gp)            |     t9 = sym.ap_set_keepalive;
    0x0006ea08 move a0, s0                   |     a0 = s0;
    0x0006ea0c bal 0x67680                   |     sym_ap_set_keepalive ();
    0x0006ea10 lw v0, 0x44(s0)               |     v0 = *((s0 + 17));
    0x0006ea14 addiu v1, zero, 0xcc          |     v1 = 0xcc;
    0x0006ea18 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
                                             |     if (v0 == v1) {
    0x0006ea1c beq v0, v1, 0x6eccc           |         goto label_47;
                                             |     }
    0x0006ea20 addiu v1, zero, 0x130         |     v1 = aav.0x00000130;
    0x0006ea24 lw a1, -0x7fac(gp)            |     a1 = *(gp);
                                             |     if (v0 == v1) {
    0x0006ea28 beq v0, v1, 0x6ecd0           |         goto label_48;
                                             |     }
    0x0006ea2c lw v0, 0x88(s0)               |     v0 = *((s0 + 34));
    0x0006ea30 lw a2, -0x7fac(gp)            |     a2 = *(gp);
                                             |     if (v0 != 0) {
    0x0006ea34 bnez v0, 0x6f378              |         goto label_49;
                                             |     }
    0x0006ea38 lw a1, 0xc4(s0)               |     a1 = *((s0 + 49));
                                             | label_4:
    0x0006ea3c lw t9, -0x77f8(gp)            |     t9 = sym.ap_make_content_type;
    0x0006ea40 move a0, s0                   |     a0 = s0;
    0x0006ea44 jalr t9                       |     t9 ();
    0x0006ea48 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
                                             |     if (v0 != 0) {
    0x0006ea4c beqz v0, 0x6ea6c              |         
    0x0006ea50 lw a1, -0x7fac(gp)            |         a1 = *(gp);
    0x0006ea54 lw t9, -0x7590(gp)            |         t9 = sym.imp.apr_table_setn;
    0x0006ea58 lw a0, 0xb4(s0)               |         a0 = *((s0 + 45));
    0x0006ea5c move a2, v0                   |         a2 = v0;
                                             |         /* str.Content_Type */
    0x0006ea60 addiu a1, a1, -0x6858         |         a1 += -0x6858;
    0x0006ea64 jalr t9                       |         t9 ();
    0x0006ea68 lw gp, 0x28(sp)               |         gp = *(var_28h_2);
                                             |     }
    0x0006ea6c lw a2, 0xcc(s0)               |     a2 = *((s0 + 51));
    0x0006ea70 lw a1, -0x7fac(gp)            |     a1 = *(gp);
                                             |     if (a2 != 0) {
    0x0006ea74 beqz a2, 0x6ea8c              |         
    0x0006ea78 lw t9, -0x7590(gp)            |         t9 = sym.imp.apr_table_setn;
    0x0006ea7c lw a0, 0xb4(s0)               |         a0 = *((s0 + 45));
                                             |         /* str.Content_Encoding */
    0x0006ea80 addiu a1, a1, -0x5918         |         a1 += -0x5918;
    0x0006ea84 jalr t9                       |         t9 ();
    0x0006ea88 lw gp, 0x28(sp)               |         gp = *(var_28h_2);
                                             |     }
    0x0006ea8c lw t9, -0x72ec(gp)            |     t9 = sym.imp.apr_is_empty_array;
    0x0006ea90 lw a0, 0xd0(s0)               |     a0 = *((s0 + 52));
    0x0006ea94 jalr t9                       |     t9 ();
    0x0006ea98 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
                                             |     if (v0 == 0) {
    0x0006ea9c beqz v0, 0x6f15c              |         goto label_50;
                                             |     }
                                             | label_17:
    0x0006eaa0 lw v0, 0x124(s0)              |     v0 = *(s0);
    0x0006eaa4 lw s6, -0x7fac(gp)            |     s6 = *(gp);
                                             |     if (v0 != 0) {
    0x0006eaa8 bnez v0, 0x6f290              |         goto label_51;
                                             |     }
                                             | label_19:
    0x0006eaac lw v0, 0x24(s0)               |     v0 = *((s0 + 9));
    0x0006eab0 lw s6, -0x7fac(gp)            |     s6 = *(gp);
                                             |     if (v0 == 0) {
    0x0006eab4 bnel v0, zero, 0x6f244        |         goto label_52;
                                             |     }
                                             | label_18:
    0x0006eab8 lw v0, 0x34(sp)               |     v0 = *(var_34h);
    0x0006eabc lw t9, -0x7344(gp)            |     t9 = sym.imp.apr_brigade_create;
    0x0006eac0 lw a0, (s0)                   |     a0 = *(s0);
    0x0006eac4 lw a1, 0x40(v0)               |     a1 = *((v0 + 16));
    0x0006eac8 jalr t9                       |     t9 ();
    0x0006eacc lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006ead0 lw a2, 0x5c(sp)               |     a2 = *(var_5ch);
    0x0006ead4 move a1, v0                   |     a1 = v0;
    0x0006ead8 lw t9, -0x7fd4(gp)            |     t9 = *(gp);
    0x0006eadc sw v0, 0x44(sp)               |     *(var_44h) = v0;
                                             |     /* fcn.0006c1ec */
    0x0006eae0 addiu t9, t9, -0x3e14         |     t9 += -0x3e14;
    0x0006eae4 move a0, s0                   |     a0 = s0;
    0x0006eae8 bal 0x6c1ec                   |     fcn_0006c1ec ();
    0x0006eaec lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006eaf0 lw a0, 0xb4(s0)               |     a0 = *((s0 + 45));
    0x0006eaf4 lw t9, -0x7254(gp)            |     t9 = sym.imp.apr_table_elts;
    0x0006eaf8 lw s6, (s0)                   |     s6 = *(s0);
    0x0006eafc jalr t9                       |     t9 ();
    0x0006eb00 lw a1, 8(v0)                  |     a1 = *((v0 + 2));
    0x0006eb04 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006eb08 move v1, v0                   |     v1 = v0;
    0x0006eb0c sw v0, 0x4c(sp)               |     *(var_4ch) = v0;
                                             |     if (a1 == 0) {
    0x0006eb10 beqz a1, 0x6eeb8              |         goto label_53;
                                             |     }
    0x0006eb14 sll v0, a1, 1                 |     v0 = a1 << 1;
    0x0006eb18 lw s7, 0x10(v1)               |     s7 = *((v1 + 4));
    0x0006eb1c addu v0, v0, a1               |     v0 += a1;
    0x0006eb20 sll v0, v0, 2                 |     v0 <<= 2;
    0x0006eb24 lw t9, -0x7544(gp)            |     t9 = sym.imp.apr_palloc;
    0x0006eb28 addu v0, s7, v0               |     v0 = s7 + v0;
    0x0006eb2c move a0, s6                   |     a0 = s6;
    0x0006eb30 sll a1, a1, 5                 |     a1 <<= 5;
    0x0006eb34 sw v0, 0x34(sp)               |     *(var_34h) = v0;
    0x0006eb38 jalr t9                       |     t9 ();
    0x0006eb3c lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006eb40 sw v0, 0x50(sp)               |     *(var_50h) = v0;
    0x0006eb44 move fp, v0                   |     fp = v0;
    0x0006eb48 lw v0, -0x7fac(gp)            |     v0 = *(gp);
    0x0006eb4c addiu s6, zero, 2             |     s6 = 2;
                                             |     /* esilref: ': ' */
    0x0006eb50 addiu v0, v0, -0x647c         |     v0 += -0x647c;
    0x0006eb54 move s5, v0                   |     s5 = v0;
    0x0006eb58 lw v0, -0x7fac(gp)            |     v0 = *(gp);
                                             |     /* esilref: '
' */
    0x0006eb5c addiu v0, v0, 0x7a00          |     v0 += aav.0x00007a00;
    0x0006eb60 sw v0, 0x40(sp)               |     *(var_40h) = v0;
                                             |     do {
    0x0006eb64 lw a0, (s7)                   |         a0 = *(s7);
    0x0006eb68 lw t9, -0x74c4(gp)            |         t9 = sym.imp.strlen;
    0x0006eb6c sw a0, (fp)                   |         *(fp) = a0;
    0x0006eb70 jalr t9                       |         t9 ();
    0x0006eb74 lw gp, 0x28(sp)               |         gp = *(var_28h_2);
    0x0006eb78 sw s5, 8(fp)                  |         *(arg_8h) = s5;
    0x0006eb7c lw a0, 4(s7)                  |         a0 = *((s7 + 1));
    0x0006eb80 lw t9, -0x74c4(gp)            |         t9 = sym.imp.strlen;
    0x0006eb84 sw a0, 0x10(fp)               |         *(var_10h_2) = a0;
    0x0006eb88 sw v0, 4(fp)                  |         *(arg_4h) = v0;
    0x0006eb8c sw s6, 0xc(fp)                |         *(arg_ch) = s6;
    0x0006eb90 jalr t9                       |         t9 ();
    0x0006eb94 lw v1, 0x34(sp)               |         v1 = *(var_34h);
    0x0006eb98 lw gp, 0x28(sp)               |         gp = *(var_28h_2);
    0x0006eb9c addiu s7, s7, 0xc             |         s7 += 0xc;
    0x0006eba0 sw v0, 0x14(fp)               |         *(var_14h) = v0;
    0x0006eba4 lw v0, 0x40(sp)               |         v0 = *(var_40h);
    0x0006eba8 sltu a0, s7, v1               |         a0 = (s7 < v1) ? 1 : 0;
    0x0006ebac sw v0, 0x18(fp)               |         *(var_18h_2) = v0;
    0x0006ebb0 sw s6, 0x1c(fp)               |         *(var_1ch_2) = s6;
    0x0006ebb4 addiu fp, fp, 0x20            |         fp += 0x20;
    0x0006ebb8 bnez a0, 0x6eb64              |         
                                             |     } while (a0 != 0);
    0x0006ebbc lw t1, -0x7838(gp)            |     t1 = *(gp);
    0x0006ebc0 lw a2, 8(t1)                  |     a2 = *((t1 + 2));
    0x0006ebc4 lw a0, 0x108(s0)              |     a0 = *(s0);
                                             |     if (a2 < 0) {
    0x0006ebc8 bltz a2, 0x6ed6c              |         goto label_54;
                                             |     }
                                             |     if (a0 == 0) {
    0x0006ebcc beql a0, zero, 0x6f500        |         goto label_55;
                                             |     }
    0x0006ebd0 lw a1, 4(s0)                  |     a1 = *((s0 + 1));
    0x0006ebd4 lw v0, (a0)                   |     v0 = *(a0);
    0x0006ebd8 addu v0, v0, a2               |     v0 += a2;
                                             |     if (v0 == 0) {
    0x0006ebdc beqz v0, 0x6ed74              |         goto label_56;
                                             |     }
    0x0006ebe0 lb v0, (v0)                   |     v0 = *(v0);
    0x0006ebe4 slti v0, v0, 0xb              |     v0 = (v0 < 0xb) ? 1 : 0;
                                             |     if (v0 < 0) {
    0x0006ebe8 bltz v0, 0x6ed74              |         goto label_56;
                                             |     }
    0x0006ebec xori v0, v0, 1                |     v0 ^= 1;
    0x0006ebf0 b 0x6ed84                     |     goto label_29;
                                             | label_37:
    0x0006ebf4 lw s0, 8(s2)                  |     s0 = *((s2 + 2));
    0x0006ebf8 addiu s1, s2, 4               |     s1 = s2 + 4;
                                             |     if (s1 != s0) {
    0x0006ebfc beql s1, s0, 0x6ec18          |         
    0x0006ec00 move s1, zero                 |         s1 = 0;
    0x0006ec04 lw v1, 8(s0)                  |         v1 = *((s0 + 2));
    0x0006ec08 lw v0, -0x7620(gp)            |         v0 = *((gp - 7560));
                                             |         if (v1 == v0) {
    0x0006ec0c beq v1, v0, 0x6f3e8           |             goto label_57;
                                             |         }
    0x0006ec10 nop                           |         
    0x0006ec14 move s1, zero                 |         s1 = 0;
                                             |     }
                                             | label_22:
    0x0006ec18 lw t9, -0x754c(gp)            |     t9 = sym.imp.apr_brigade_cleanup;
    0x0006ec1c move a0, s2                   |     a0 = s2;
    0x0006ec20 jalr t9                       |     t9 ();
    0x0006ec24 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006ec28 b 0x6ec50                     |     goto label_9;
                                             | label_39:
    0x0006ec2c move a0, s3                   |     a0 = s3;
    0x0006ec30 jalr t9                       |     t9 ();
    0x0006ec34 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006ec38 lw a0, 8(s3)                  |     a0 = *((s3 + 2));
    0x0006ec3c lw t9, -0x7e30(gp)            |     t9 = sym.ap_pass_brigade;
    0x0006ec40 move a1, s2                   |     a1 = s2;
    0x0006ec44 jalr t9                       |     t9 ();
    0x0006ec48 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006ec4c move s1, v0                   |     s1 = v0;
                                             | label_9:
    0x0006ec50 lw v0, 0x38(sp)               |     v0 = *(var_38h);
    0x0006ec54 lw a0, 0x6c(sp)               |     a0 = *(var_6ch);
    0x0006ec58 lw v1, (v0)                   |     v1 = *(v0);
    0x0006ec5c move v0, s1                   |     v0 = s1;
                                             |     if (a0 != v1) {
    0x0006ec60 bne a0, v1, 0x6f5c4           |         goto label_58;
                                             |     }
    0x0006ec64 lw ra, 0x94(sp)               |     ra = *(var_94h);
    0x0006ec68 lw fp, 0x90(sp)               |     fp = *(var_90h);
    0x0006ec6c lw s7, 0x8c(sp)               |     s7 = *(var_8ch);
    0x0006ec70 lw s6, 0x88(sp)               |     s6 = *(var_88h);
    0x0006ec74 lw s5, 0x84(sp)               |     s5 = *(var_84h);
    0x0006ec78 lw s4, 0x80(sp)               |     s4 = *(var_80h);
    0x0006ec7c lw s3, 0x7c(sp)               |     s3 = *(var_7ch);
    0x0006ec80 lw s2, 0x78(sp)               |     s2 = *(var_78h);
    0x0006ec84 lw s1, 0x74(sp)               |     s1 = *(var_74h);
    0x0006ec88 lw s0, 0x70(sp)               |     s0 = *(var_70h);
    0x0006ec8c addiu sp, sp, 0x98            |     
    0x0006ec90 jr ra                         |     return v0;
                                             | label_46:
    0x0006ec94 addiu a1, sp, 0x5c            |     a1 = sp + 0x5c;
                                             |     /* fcn.0006cc38 */
    0x0006ec98 addiu t9, t9, -0x33c8         |     t9 += -0x33c8;
    0x0006ec9c move a0, s0                   |     a0 = s0;
    0x0006eca0 bal 0x6cc38                   |     fcn_0006cc38 ();
    0x0006eca4 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006eca8 b 0x6ea04                     |     goto label_2;
                                             | label_44:
    0x0006ecac lw t9, -0x74f4(gp)            |     t9 = sym.imp.apr_table_overlay;
    0x0006ecb0 lw a2, 0xb4(s0)               |     a2 = *((s0 + 45));
    0x0006ecb4 lw a1, 0xb8(s0)               |     a1 = *((s0 + 46));
    0x0006ecb8 lw a0, (s0)                   |     a0 = *(s0);
    0x0006ecbc jalr t9                       |     t9 ();
    0x0006ecc0 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006ecc4 sw v0, 0xb4(s0)               |     *((s0 + 45)) = v0;
    0x0006ecc8 b 0x6e968                     |     goto label_3;
                                             | label_47:
    0x0006eccc lw a1, -0x7fac(gp)            |     a1 = *(gp);
                                             | label_48:
    0x0006ecd0 lw t9, -0x7270(gp)            |     t9 = sym.imp.apr_table_unset;
    0x0006ecd4 lw a0, 0xb4(s0)               |     a0 = *((s0 + 45));
                                             |     /* str.Transfer_Encoding */
    0x0006ecd8 addiu a1, a1, -0x68a0         |     a1 += -0x68a0;
    0x0006ecdc jalr t9                       |     t9 ();
    0x0006ece0 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006ece4 lw a0, 0xb4(s0)               |     a0 = *((s0 + 45));
    0x0006ece8 lw a1, -0x7fac(gp)            |     a1 = *(gp);
    0x0006ecec lw t9, -0x7270(gp)            |     t9 = sym.imp.apr_table_unset;
                                             |     /* str.Content_Length */
    0x0006ecf0 addiu a1, a1, -0x688c         |     a1 += -aav.0x0000688c;
    0x0006ecf4 jalr t9                       |     t9 ();
    0x0006ecf8 move v0, zero                 |     v0 = 0;
    0x0006ecfc move v1, zero                 |     v1 = 0;
    0x0006ed00 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006ed04 sw zero, 0xcc(s0)             |     *((s0 + 51)) = 0;
    0x0006ed08 sw zero, 0xc4(s0)             |     *((s0 + 49)) = 0;
    0x0006ed0c sw zero, 0xd0(s0)             |     *((s0 + 52)) = 0;
    0x0006ed10 sw zero, 0x88(s0)             |     *((s0 + 34)) = 0;
    0x0006ed14 sw v0, 0x80(s0)               |     *((s0 + 32)) = v0;
    0x0006ed18 sw v1, 0x84(s0)               |     *((s0 + 33)) = v1;
    0x0006ed1c move a1, zero                 |     a1 = 0;
    0x0006ed20 b 0x6ea3c                     |     goto label_4;
                                             | label_36:
    0x0006ed24 sw v0, 0x3c(sp)               |     *(var_3ch) = v0;
    0x0006ed28 lw t9, -0x7544(gp)            |     t9 = sym.imp.apr_palloc;
                                             | label_34:
    0x0006ed2c lw a0, (s0)                   |     a0 = *(s0);
    0x0006ed30 addiu a1, zero, 4             |     a1 = 4;
    0x0006ed34 jalr t9                       |     t9 ();
    0x0006ed38 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006ed3c sb zero, (v0)                 |     *(v0) = 0;
    0x0006ed40 sb zero, 1(v0)                |     *((v0 + 1)) = 0;
    0x0006ed44 sb zero, 2(v0)                |     *((v0 + 2)) = 0;
    0x0006ed48 sb zero, 3(v0)                |     *((v0 + 3)) = 0;
    0x0006ed4c move s4, v0                   |     s4 = v0;
    0x0006ed50 sw v0, 4(s3)                  |     *((s3 + 1)) = v0;
    0x0006ed54 lw v0, 4(s2)                  |     v0 = *((s2 + 1));
    0x0006ed58 addiu s1, s2, 4               |     s1 = s2 + 4;
    0x0006ed5c lw a0, -0x7df0(gp)            |     a0 = *(gp);
                                             |     if (v0 == s1) {
    0x0006ed60 bnel v0, s1, 0x6e8f4          |         goto label_5;
                                             |     }
    0x0006ed64 lw v0, (s4)                   |     v0 = *(s4);
    0x0006ed68 b 0x6e8b4                     |     goto label_6;
                                             |     if (a0 == 0) {
                                             | label_54:
    0x0006ed6c beql a0, zero, 0x6f45c        |         goto label_28;
                                             |     }
    0x0006ed70 lw a1, 4(s0)                  |     a1 = *((s0 + 1));
                                             | label_56:
    0x0006ed74 move v0, a0                   |     v0 = a0;
                                             | label_24:
    0x0006ed78 lw v0, 4(v0)                  |     v0 = *((v0 + 1));
                                             | label_23:
    0x0006ed7c slti v0, v0, 0xb              |     v0 = (v0 < 0xb) ? 1 : 0;
    0x0006ed80 xori v0, v0, 1                |     v0 ^= 1;
                                             | label_29:
    0x0006ed84 lw a3, 0x50(sp)               |     a3 = *(var_50h);
                                             |     if (v0 == 0) {
    0x0006ed88 beqz v0, 0x6ee94              |         goto label_59;
                                             |     }
    0x0006ed8c lw v0, 0x4c(sp)               |     v0 = *(var_4ch);
    0x0006ed90 lw s6, 0x10(v0)               |     s6 = *((v0 + 4));
    0x0006ed94 lw v0, -0x7fac(gp)            |     v0 = *(gp);
                                             |     /* str.___s:__s */
    0x0006ed98 addiu s5, v0, 0x7278          |     s5 = v0 + 0x7278;
    0x0006ed9c lw v0, -0x7fac(gp)            |     v0 = *(gp);
                                             |     /* str._usr_src_debug_apache2_2.4.57_r0_httpd_2.4.57_modules_http_http_filters.c */
    0x0006eda0 addiu v0, v0, 0x7350          |     v0 += 0x7350;
    0x0006eda4 sw v0, 0x54(sp)               |     *(var_54h) = v0;
                                             |     if (a2 < 0) {
    0x0006eda8 bltz a2, 0x6edfc              |         goto label_60;
                                             |     }
                                             |     do {
                                             |         if (a0 == 0) {
    0x0006edac beql a0, zero, 0x6f12c        |             goto label_61;
                                             |         }
    0x0006edb0 lw a1, 4(s0)                  |         a1 = *((s0 + 1));
    0x0006edb4 lw v0, (a0)                   |         v0 = *(a0);
    0x0006edb8 addu v0, v0, a2               |         v0 += a2;
                                             |         if (v0 == 0) {
    0x0006edbc beqz v0, 0x6ee14              |             goto label_21;
                                             |         }
    0x0006edc0 lb v0, (v0)                   |         v0 = *(v0);
                                             |         if (v0 < 0) {
    0x0006edc4 bltzl v0, 0x6ee18             |             goto label_13;
                                             |         }
    0x0006edc8 lw v0, 4(a0)                  |         v0 = *((a0 + 1));
    0x0006edcc slti v0, v0, 0xb              |         v0 = (v0 < 0xb) ? 1 : 0;
                                             | label_14:
    0x0006edd0 xori v0, v0, 1                |         v0 ^= 1;
    0x0006edd4 lw t9, -0x7d7c(gp)            |         t9 = sym.ap_escape_logitem;
                                             |         if (v0 != 0) {
    0x0006edd8 bnez v0, 0x6ee2c              |             goto label_62;
                                             |         }
                                             | label_8:
    0x0006eddc lw v0, 0x34(sp)               |         v0 = *(var_34h);
                                             | label_7:
    0x0006ede0 addiu s6, s6, 0xc             |         s6 += 0xc;
    0x0006ede4 sltu v0, s6, v0               |         v0 = (s6 < v0) ? 1 : 0;
    0x0006ede8 lw a3, 0x50(sp)               |         a3 = *(var_50h);
                                             |         if (v0 == 0) {
    0x0006edec beqz v0, 0x6ee94              |             goto label_59;
                                             |         }
    0x0006edf0 lw a2, 8(t1)                  |         a2 = *((t1 + 2));
    0x0006edf4 lw a0, 0x108(s0)              |         a0 = *(s0);
    0x0006edf8 bgez a2, 0x6edac              |         
                                             |     } while (a2 >= 0);
                                             | label_60:
    0x0006edfc lw v0, 4(a0)                  |     v0 = *((a0 + 1));
                                             |     if (a0 != 0) {
    0x0006ee00 bnel a0, zero, 0x6ee18        |         
    0x0006ee04 lw a1, 4(s0)                  |         a1 = *((s0 + 1));
    0x0006ee08 lw a0, 0x60(a1)               |         a0 = *((a1 + 24));
                                             |         if (a0 == 0) {
                                             | label_15:
    0x0006ee0c beql a0, zero, 0x6f3e0        |             goto label_63;
                                             |         }
    0x0006ee10 lw v0, 8(s0)                  |         v0 = *((s0 + 2));
                                             | label_21:
    0x0006ee14 lw v0, 4(a0)                  |         v0 = *((a0 + 1));
                                             |     }
                                             | label_13:
    0x0006ee18 slti v0, v0, 0xb              |     v0 = (v0 < 0xb) ? 1 : 0;
    0x0006ee1c xori v0, v0, 1                |     v0 ^= 1;
    0x0006ee20 lw v0, 0x34(sp)               |     v0 = *(var_34h);
                                             |     if (v0 == 0) {
    0x0006ee24 beqz v0, 0x6ede0              |         goto label_7;
                                             |     }
    0x0006ee28 lw t9, -0x7d7c(gp)            |     t9 = sym.ap_escape_logitem;
                                             | label_62:
    0x0006ee2c lw a1, (s6)                   |     a1 = *(s6);
    0x0006ee30 lw a0, (s0)                   |     a0 = *(s0);
    0x0006ee34 sw t1, 0x4c(sp)               |     *(var_4ch) = t1;
    0x0006ee38 sw a2, 0x40(sp)               |     *(var_40h) = a2;
    0x0006ee3c jalr t9                       |     t9 ();
    0x0006ee40 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006ee44 lw a1, 4(s6)                  |     a1 = *((s6 + 1));
    0x0006ee48 lw a0, (s0)                   |     a0 = *(s0);
    0x0006ee4c lw t9, -0x7d7c(gp)            |     t9 = sym.ap_escape_logitem;
    0x0006ee50 move s7, v0                   |     s7 = v0;
    0x0006ee54 jalr t9                       |     t9 ();
    0x0006ee58 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006ee5c lw a2, 0x40(sp)               |     a2 = *(var_40h);
    0x0006ee60 lw a0, 0x54(sp)               |     a0 = *(var_54h);
    0x0006ee64 lw t9, -0x7f08(gp)            |     t9 = sym.ap_log_rerror_;
    0x0006ee68 sw v0, 0x20(sp)               |     *(var_20h_2) = v0;
    0x0006ee6c sw s7, 0x1c(sp)               |     *(var_1ch_2) = s7;
    0x0006ee70 sw s5, 0x18(sp)               |     *(var_18h_2) = s5;
    0x0006ee74 sw s0, 0x14(sp)               |     *(var_14h) = s0;
    0x0006ee78 sw zero, 0x10(sp)             |     *(var_10h_2) = 0;
    0x0006ee7c addiu a3, zero, 0xb           |     a3 = 0xb;
    0x0006ee80 addiu a1, zero, 0x3c1         |     a1 = 0x3c1;
    0x0006ee84 bal 0x530a8                   |     sym_ap_log_rerror_ ();
    0x0006ee88 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006ee8c lw t1, 0x4c(sp)               |     t1 = *(var_4ch);
    0x0006ee90 b 0x6eddc                     |     goto label_8;
                                             | label_59:
    0x0006ee94 lw t9, -0x74fc(gp)            |     t9 = sym.imp.apr_brigade_writev;
    0x0006ee98 subu v0, fp, a3               |     __asm ("subu v0, fp, a3");
    0x0006ee9c sra v0, v0, 3                 |     v0 >>= 3;
    0x0006eea0 lw a0, 0x44(sp)               |     a0 = *(var_44h);
    0x0006eea4 sw v0, 0x10(sp)               |     *(var_10h_2) = v0;
    0x0006eea8 move a2, zero                 |     a2 = 0;
    0x0006eeac move a1, zero                 |     a1 = 0;
    0x0006eeb0 jalr t9                       |     t9 ();
    0x0006eeb4 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
                                             | label_53:
    0x0006eeb8 addiu v0, zero, 2             |     v0 = 2;
    0x0006eebc lw t9, -0x7264(gp)            |     t9 = sym.imp.apr_brigade_write;
    0x0006eec0 sw v0, 0x10(sp)               |     *(var_10h_2) = v0;
    0x0006eec4 lw a0, 0x44(sp)               |     a0 = *(var_44h);
    0x0006eec8 addiu v0, zero, 0xa0d         |     v0 = 0xa0d;
    0x0006eecc addiu a3, sp, 0x68            |     a3 = sp + 0x68;
    0x0006eed0 move a2, zero                 |     a2 = 0;
    0x0006eed4 move a1, zero                 |     a1 = 0;
    0x0006eed8 sh v0, 0x68(sp)               |     *(var_68h) = v0;
    0x0006eedc sb zero, 0x6a(sp)             |     *(var_6ah) = 0;
    0x0006eee0 jalr t9                       |     t9 ();
    0x0006eee4 lw v0, 0x3c(sp)               |     v0 = *(var_3ch);
    0x0006eee8 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
                                             |     if (v0 == 0) {
    0x0006eeec beqz v0, 0x6f0d0              |         goto label_64;
                                             |     }
    0x0006eef0 lw v0, 8(s2)                  |     v0 = *((s2 + 2));
    0x0006eef4 lw v1, -0x7620(gp)            |     v1 = *((gp - 7560));
                                             |     if (v0 != s1) {
    0x0006eef8 beq v0, s1, 0x6ef08           |         
    0x0006eefc lw a0, 8(v0)                  |         a0 = *((v0 + 2));
                                             |         if (a0 == v1) {
    0x0006ef00 beq a0, v1, 0x6f530           |             goto label_65;
                                             |         }
    0x0006ef04 nop                           |         
                                             |     }
                                             | label_30:
    0x0006ef08 lw t9, -0x754c(gp)            |     t9 = sym.imp.apr_brigade_cleanup;
    0x0006ef0c move a0, s2                   |     a0 = s2;
    0x0006ef10 jalr t9                       |     t9 ();
    0x0006ef14 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006ef18 lw s0, 0x44(sp)               |     s0 = *(var_44h);
    0x0006ef1c lw a0, 8(s3)                  |     a0 = *((s3 + 2));
    0x0006ef20 lw t9, -0x7e30(gp)            |     t9 = sym.ap_pass_brigade;
    0x0006ef24 move a1, s0                   |     a1 = s0;
    0x0006ef28 jalr t9                       |     t9 ();
    0x0006ef2c lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006ef30 move a0, s0                   |     a0 = s0;
    0x0006ef34 lw t9, -0x754c(gp)            |     t9 = sym.imp.apr_brigade_cleanup;
    0x0006ef38 move s1, v0                   |     s1 = v0;
    0x0006ef3c jalr t9                       |     t9 ();
    0x0006ef40 addiu v0, zero, 1             |     v0 = 1;
    0x0006ef44 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006ef48 sw v0, (s4)                   |     *(s4) = v0;
                                             |     do {
                                             | label_11:
    0x0006ef4c lw v1, 0x48(sp)               |         v1 = *(var_48h);
    0x0006ef50 addiu v0, zero, -0x66         |         v0 = -0x66;
                                             |         if (v1 == 0) {
    0x0006ef54 movn s1, v0, v1               |             s1 = v0;
                                             |         }
    0x0006ef58 b 0x6ec50                     |         goto label_9;
                                             | label_43:
    0x0006ef5c addiu v0, zero, 1             |         v0 = 1;
    0x0006ef60 move v1, zero                 |         v1 = 0;
    0x0006ef64 lw t9, -0x7e34(gp)            |         t9 = sym.ap_remove_output_filter;
    0x0006ef68 move a0, s3                   |         a0 = s3;
    0x0006ef6c sw v0, 0x60(s0)               |         *((s0 + 24)) = v0;
    0x0006ef70 sw v1, 0x64(s0)               |         *((s0 + 25)) = v1;
                                             | label_12:
    0x0006ef74 jalr t9                       |         t9 ();
    0x0006ef78 nop                           |         
    0x0006ef7c lw gp, 0x28(sp)               |         gp = *(var_28h_2);
    0x0006ef80 lw a0, 8(s3)                  |         a0 = *((s3 + 2));
    0x0006ef84 lw t9, -0x7e30(gp)            |         t9 = sym.ap_pass_brigade;
    0x0006ef88 move a1, s2                   |         a1 = s2;
    0x0006ef8c jalr t9                       |         t9 ();
    0x0006ef90 move s1, v0                   |         s1 = v0;
    0x0006ef94 lw gp, 0x28(sp)               |         gp = *(var_28h_2);
    0x0006ef98 b 0x6ef4c                     |         
                                             |     } while (1);
                                             | label_38:
    0x0006ef9c move a2, zero                 |     a2 = 0;
                                             | label_35:
    0x0006efa0 lw v0, 8(s0)                  |     v0 = *((s0 + 2));
                                             | label_41:
    0x0006efa4 lw a0, 0xb4(s0)               |     a0 = *((s0 + 45));
    0x0006efa8 lw t9, -0x7fd4(gp)            |     t9 = *(gp);
    0x0006efac lw v0, 0x18(v0)               |     v0 = *((v0 + 6));
    0x0006efb0 addiu s6, sp, 0x60            |     s6 = sp + 0x60;
                                             |     /* fcn.0006ce6c */
    0x0006efb4 addiu s7, t9, -0x3194         |     s7 = t9 + -0x3194;
    0x0006efb8 lw v0, (v0)                   |     v0 = *(v0);
    0x0006efbc sw s0, 0x60(sp)               |     *(var_60h) = s0;
    0x0006efc0 sw a2, 0x40(sp)               |     *(var_40h) = a2;
    0x0006efc4 lb v0, 0x41(v0)               |     v0 = *((v0 + 65));
    0x0006efc8 move a1, s6                   |     a1 = s6;
    0x0006efcc xori v0, v0, 1                |     v0 ^= 1;
    0x0006efd0 sltu v0, zero, v0             |     v0 = (0 < v0) ? 1 : 0;
    0x0006efd4 move t9, s7                   |     t9 = s7;
    0x0006efd8 sw v0, 0x64(sp)               |     *(var_64h) = v0;
    0x0006efdc bal 0x6ce6c                   |     fcn_0006ce6c ();
    0x0006efe0 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
                                             |     if (v0 != 0) {
    0x0006efe4 bnez v0, 0x6f474              |         goto label_66;
                                             |     }
    0x0006efe8 lw t9, -0x7414(gp)            |     t9 = sym.imp.apr_table_clear;
                                             | label_26:
    0x0006efec lw s7, -0x7fac(gp)            |     s7 = *(gp);
    0x0006eff0 lw a0, 0xb4(s0)               |     a0 = *((s0 + 45));
    0x0006eff4 jalr t9                       |     t9 ();
    0x0006eff8 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006effc lw t9, -0x7414(gp)            |     t9 = sym.imp.apr_table_clear;
    0x0006f000 lw a0, 0xb8(s0)               |     a0 = *((s0 + 46));
    0x0006f004 jalr t9                       |     t9 ();
    0x0006f008 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006f00c lw t9, -0x754c(gp)            |     t9 = sym.imp.apr_brigade_cleanup;
    0x0006f010 move a0, s2                   |     a0 = s2;
    0x0006f014 jalr t9                       |     t9 ();
    0x0006f018 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006f01c sw zero, 0x60(sp)             |     *(var_60h) = 0;
    0x0006f020 lw a2, (s0)                   |     a2 = *(s0);
    0x0006f024 lw t9, -0x74f8(gp)            |     t9 = sym.imp.apr_pool_userdata_get;
                                             |     /* str.check_headers_recursion */
    0x0006f028 addiu a1, s7, 0x76b8          |     a1 = s7 + 0x76b8;
    0x0006f02c move a0, s6                   |     a0 = s6;
    0x0006f030 jalr t9                       |     t9 ();
    0x0006f034 lw v0, 0x60(sp)               |     v0 = *(var_60h);
    0x0006f038 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
                                             |     if (v0 == 0) {
    0x0006f03c beqz v0, 0x6f4b0              |         goto label_67;
                                             |     }
    0x0006f040 lw s5, 0x34(sp)               |     s5 = *(var_34h);
    0x0006f044 lw t9, -0x7974(gp)            |     t9 = sym.ap_bucket_eoc_create;
    0x0006f048 addiu v0, zero, 0x1f4         |     v0 = aav.0x000001f4;
    0x0006f04c lw a0, 0x40(s5)               |     a0 = *((s5 + 16));
    0x0006f050 sw v0, 0x44(s0)               |     *((s0 + 17)) = v0;
    0x0006f054 jalr t9                       |     t9 ();
    0x0006f058 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006f05c lw a0, 0x40(s5)               |     a0 = *((s5 + 16));
    0x0006f060 sw s1, (v0)                   |     *(v0) = s1;
    0x0006f064 lw v1, 8(s2)                  |     v1 = *((s2 + 2));
    0x0006f068 addiu a1, zero, 1             |     a1 = 1;
    0x0006f06c sw v1, 4(v0)                  |     *((v0 + 1)) = v1;
    0x0006f070 lw v1, 8(s2)                  |     v1 = *((s2 + 2));
    0x0006f074 lw t9, -0x75d0(gp)            |     t9 = *(gp);
    0x0006f078 sw a1, 0x48(sp)               |     *(var_48h) = a1;
    0x0006f07c sw v0, (v1)                   |     *(v1) = v0;
    0x0006f080 sw v0, 8(s2)                  |     *((s2 + 2)) = v0;
    0x0006f084 jalr t9                       |     t9 ();
    0x0006f088 nop                           |     
    0x0006f08c lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006f090 sw s1, (v0)                   |     *(v0) = s1;
    0x0006f094 lw v1, 8(s2)                  |     v1 = *((s2 + 2));
    0x0006f098 lw t9, -0x7dac(gp)            |     t9 = sym.ap_set_content_length;
    0x0006f09c sw v1, 4(v0)                  |     *((v0 + 1)) = v1;
    0x0006f0a0 lw v1, 8(s2)                  |     v1 = *((s2 + 2));
    0x0006f0a4 move a2, zero                 |     a2 = 0;
    0x0006f0a8 move a3, zero                 |     a3 = 0;
    0x0006f0ac sw v0, (v1)                   |     *(v1) = v0;
    0x0006f0b0 move a0, s0                   |     a0 = s0;
    0x0006f0b4 sw v0, 8(s2)                  |     *((s2 + 2)) = v0;
    0x0006f0b8 sw zero, 0xcc(s0)             |     *((s0 + 51)) = 0;
    0x0006f0bc sw zero, 0xc4(s0)             |     *((s0 + 49)) = 0;
    0x0006f0c0 sw zero, 0xd0(s0)             |     *((s0 + 52)) = 0;
    0x0006f0c4 jalr t9                       |     t9 ();
    0x0006f0c8 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006f0cc b 0x6e94c                     |     goto label_10;
                                             | label_64:
    0x0006f0d0 lw s1, 0x44(sp)               |     s1 = *(var_44h);
    0x0006f0d4 lw t9, -0x7e30(gp)            |     t9 = sym.ap_pass_brigade;
    0x0006f0d8 lw a0, 8(s3)                  |     a0 = *((s3 + 2));
    0x0006f0dc move a1, s1                   |     a1 = s1;
    0x0006f0e0 jalr t9                       |     t9 ();
    0x0006f0e4 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006f0e8 move a0, s1                   |     a0 = s1;
    0x0006f0ec lw t9, -0x754c(gp)            |     t9 = sym.imp.apr_brigade_cleanup;
    0x0006f0f0 move s1, v0                   |     s1 = v0;
    0x0006f0f4 jalr t9                       |     t9 ();
    0x0006f0f8 addiu v0, zero, 1             |     v0 = 1;
    0x0006f0fc lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006f100 sw v0, (s4)                   |     *(s4) = v0;
                                             |     if (s1 != 0) {
    0x0006f104 bnez s1, 0x6ef4c              |         goto label_11;
                                             |     }
    0x0006f108 lw v0, 0x88(s0)               |     v0 = *((s0 + 34));
    0x0006f10c addiu a0, zero, 1             |     a0 = 1;
    0x0006f110 move a1, zero                 |     a1 = 0;
    0x0006f114 sw a0, 0x60(s0)               |     *((s0 + 24)) = a0;
    0x0006f118 sw a1, 0x64(s0)               |     *((s0 + 25)) = a1;
                                             |     if (v0 != 0) {
    0x0006f11c bnez v0, 0x6f3b4              |         goto label_68;
                                             |     }
    0x0006f120 lw t9, -0x7e34(gp)            |     t9 = sym.ap_remove_output_filter;
    0x0006f124 move a0, s3                   |     a0 = s3;
    0x0006f128 b 0x6ef74                     |     goto label_12;
                                             | label_61:
    0x0006f12c lw a0, 0x60(a1)               |     a0 = *((a1 + 24));
                                             |     if (a0 == 0) {
    0x0006f130 beql a0, zero, 0x6f4ec        |         goto label_69;
                                             |     }
    0x0006f134 lw v0, 8(s0)                  |     v0 = *((s0 + 2));
    0x0006f138 lw a3, (a0)                   |     a3 = *(a0);
                                             |     if (a3 == 0) {
    0x0006f13c beql a3, zero, 0x6ee18        |         goto label_13;
                                             |     }
    0x0006f140 lw v0, 4(a0)                  |     v0 = *((a0 + 1));
    0x0006f144 addu a3, a3, a2               |     a3 += a2;
                                             | label_27:
    0x0006f148 lb v0, (a3)                   |     v0 = *(a3);
                                             |     if (v0 >= 0) {
    0x0006f14c bgezl v0, 0x6edd0             |         goto label_14;
                                             |     }
    0x0006f150 slti v0, v0, 0xb              |     v0 = (v0 < 0xb) ? 1 : 0;
    0x0006f154 lw a0, 0x60(a1)               |     a0 = *((a1 + 24));
    0x0006f158 b 0x6ee0c                     |     goto label_15;
                                             | label_50:
    0x0006f15c lw v0, 0xd0(s0)               |     v0 = *((s0 + 52));
    0x0006f160 lw v1, -0x7fac(gp)            |     v1 = *(gp);
    0x0006f164 lw t9, -0x7668(gp)            |     t9 = sym.imp.apr_table_get;
    0x0006f168 lw v0, 0x10(v0)               |     v0 = *((v0 + 4));
    0x0006f16c lw a0, 0xb4(s0)               |     a0 = *((s0 + 45));
    0x0006f170 sw v1, 0x44(sp)               |     *(var_44h) = v1;
                                             |     /* str.Content_Language */
    0x0006f174 addiu a1, v1, -0x5904         |     a1 = v1 + -0x5904;
    0x0006f178 sw v0, 0x40(sp)               |     *(var_40h) = v0;
    0x0006f17c jalr t9                       |     t9 ();
    0x0006f180 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006f184 sw v0, 0x60(sp)               |     *(var_60h) = v0;
    0x0006f188 addiu s7, sp, 0x60            |     s7 = sp + 0x60;
                                             | label_16:
    0x0006f18c lw a0, (s0)                   |     a0 = *(s0);
                                             |     if (v0 == 0) {
    0x0006f190 beqz v0, 0x6f20c              |         goto label_70;
                                             |     }
    0x0006f194 lw t9, -0x77f4(gp)            |     t9 = sym.ap_get_list_item;
    0x0006f198 move a1, s7                   |     a1 = s7;
    0x0006f19c jalr t9                       |     t9 ();
    0x0006f1a0 move s6, v0                   |     s6 = v0;
    0x0006f1a4 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
                                             |     if (v0 == 0) {
    0x0006f1a8 beqz v0, 0x6f208              |         goto label_71;
                                             |     }
    0x0006f1ac lw a0, 0xd0(s0)               |     a0 = *((s0 + 52));
    0x0006f1b0 lw v0, 8(a0)                  |     v0 = *((a0 + 2));
    0x0006f1b4 move fp, zero                 |     fp = 0;
                                             |     if (v0 <= 0) {
    0x0006f1b8 blez v0, 0x6f1f8              |         goto label_72;
                                             |     }
    0x0006f1bc lw s5, 0x40(sp)               |     s5 = *(var_40h);
    0x0006f1c0 b 0x6f1d8                     |     
                                             |     while (v0 != 0) {
    0x0006f1c4 lw v0, 8(a0)                  |         v0 = *((a0 + 2));
    0x0006f1c8 addiu fp, fp, 1               |         fp++;
    0x0006f1cc slt a1, fp, v0                |         a1 = (fp < v0) ? 1 : 0;
    0x0006f1d0 addiu s5, s5, 4               |         s5 += 4;
                                             |         if (a1 == 0) {
    0x0006f1d4 beqz a1, 0x6f1f8              |             goto label_72;
                                             |         }
    0x0006f1d8 lw t9, -0x7e28(gp)            |         t9 = sym.ap_cstr_casecmp;
    0x0006f1dc lw a1, (s5)                   |         a1 = *(s5);
    0x0006f1e0 move a0, s6                   |         a0 = s6;
    0x0006f1e4 jalr t9                       |         t9 ();
    0x0006f1e8 lw gp, 0x28(sp)               |         gp = *(var_28h_2);
    0x0006f1ec lw a0, 0xd0(s0)               |         a0 = *((s0 + 52));
    0x0006f1f0 bnez v0, 0x6f1c4              |         
                                             |     }
    0x0006f1f4 lw v0, 8(a0)                  |     v0 = *((a0 + 2));
                                             | label_72:
    0x0006f1f8 lw t9, -0x7324(gp)            |     t9 = sym.imp.apr_array_push;
                                             |     if (fp == v0) {
    0x0006f1fc beq fp, v0, 0x6f498           |         goto label_73;
                                             |     }
    0x0006f200 lw v0, 0x60(sp)               |     v0 = *(var_60h);
    0x0006f204 b 0x6f18c                     |     goto label_16;
                                             | label_71:
    0x0006f208 lw a0, (s0)                   |     a0 = *(s0);
                                             | label_70:
    0x0006f20c lw t9, -0x75ec(gp)            |     t9 = sym.imp.apr_array_pstrcat;
    0x0006f210 lw a1, 0xd0(s0)               |     a1 = *((s0 + 52));
    0x0006f214 addiu a2, zero, 0x2c          |     a2 = 0x2c;
    0x0006f218 jalr t9                       |     t9 ();
    0x0006f21c lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006f220 lw v1, 0x44(sp)               |     v1 = *(var_44h);
    0x0006f224 lw a0, 0xb4(s0)               |     a0 = *((s0 + 45));
    0x0006f228 lw t9, -0x7590(gp)            |     t9 = sym.imp.apr_table_setn;
    0x0006f22c move a2, v0                   |     a2 = v0;
    0x0006f230 addiu a1, v1, -0x5904         |     a1 = v1 + -0x5904;
    0x0006f234 sw v0, 0x60(sp)               |     *(var_60h) = v0;
    0x0006f238 jalr t9                       |     t9 ();
    0x0006f23c lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006f240 b 0x6eaa0                     |     goto label_17;
                                             | label_52:
    0x0006f244 lw t9, -0x7668(gp)            |     t9 = sym.imp.apr_table_get;
    0x0006f248 lw a0, 0xb4(s0)               |     a0 = *((s0 + 45));
                                             |     /* str.Content_Length */
    0x0006f24c addiu a1, s6, -0x688c         |     a1 = s6 + -aav.0x0000688c;
    0x0006f250 jalr t9                       |     t9 ();
    0x0006f254 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
                                             |     if (v0 == 0) {
    0x0006f258 beqz v0, 0x6eab8              |         goto label_18;
                                             |     }
    0x0006f25c lw a1, -0x7fac(gp)            |     a1 = *(gp);
    0x0006f260 lw t9, -0x7740(gp)            |     t9 = sym.imp.strcmp;
                                             |     /* esilref: '"' */
    0x0006f264 addiu a1, a1, 0x1f04          |     a1 += 0x1f04;
    0x0006f268 move a0, v0                   |     a0 = v0;
    0x0006f26c jalr t9                       |     t9 ();
    0x0006f270 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
                                             |     if (v0 != 0) {
    0x0006f274 bnez v0, 0x6eab8              |         goto label_18;
                                             |     }
    0x0006f278 lw t9, -0x7270(gp)            |     t9 = sym.imp.apr_table_unset;
    0x0006f27c lw a0, 0xb4(s0)               |     a0 = *((s0 + 45));
                                             |     /* str.Content_Length */
    0x0006f280 addiu a1, s6, -0x688c         |     a1 = s6 + -aav.0x0000688c;
    0x0006f284 jalr t9                       |     t9 ();
    0x0006f288 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006f28c b 0x6eab8                     |     goto label_18;
                                             | label_51:
    0x0006f290 lw t9, -0x7668(gp)            |     t9 = sym.imp.apr_table_get;
    0x0006f294 lw a0, 0xb4(s0)               |     a0 = *((s0 + 45));
                                             |     /* str.Expires */
    0x0006f298 addiu a1, s6, -0x58c0         |     a1 = s6 + -0x58c0;
    0x0006f29c jalr t9                       |     t9 ();
    0x0006f2a0 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
                                             |     if (v0 != 0) {
    0x0006f2a4 bnez v0, 0x6eaac              |         goto label_19;
                                             |     }
    0x0006f2a8 lw t9, -0x7544(gp)            |     t9 = sym.imp.apr_palloc;
    0x0006f2ac lw a0, (s0)                   |     a0 = *(s0);
    0x0006f2b0 addiu a1, zero, 0x1e          |     a1 = 0x1e;
    0x0006f2b4 jalr t9                       |     t9 ();
    0x0006f2b8 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006f2bc lw a2, 0x38(s0)               |     a2 = *((s0 + 14));
    0x0006f2c0 lw a3, 0x3c(s0)               |     a3 = *((s0 + 15));
    0x0006f2c4 lw t9, -0x7808(gp)            |     t9 = sym.ap_recent_rfc822_date;
    0x0006f2c8 move a0, v0                   |     a0 = v0;
    0x0006f2cc move s7, v0                   |     s7 = v0;
    0x0006f2d0 bal 0x57344                   |     sym_ap_recent_rfc822_date ();
    0x0006f2d4 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006f2d8 lw a0, 0xb4(s0)               |     a0 = *((s0 + 45));
    0x0006f2dc move a2, s7                   |     a2 = s7;
    0x0006f2e0 lw t9, -0x777c(gp)            |     t9 = sym.imp.apr_table_addn;
                                             |     /* str.Expires */
    0x0006f2e4 addiu a1, s6, -0x58c0         |     a1 = s6 + -0x58c0;
    0x0006f2e8 jalr t9                       |     t9 ();
    0x0006f2ec lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006f2f0 b 0x6eaac                     |     goto label_19;
                                             | label_45:
    0x0006f2f4 lw t9, -0x775c(gp)            |     t9 = sym.imp.apr_array_make;
    0x0006f2f8 lw a0, (s0)                   |     a0 = *(s0);
    0x0006f2fc addiu a2, zero, 4             |     a2 = 4;
    0x0006f300 addiu a1, zero, 5             |     a1 = 5;
    0x0006f304 jalr t9                       |     t9 ();
    0x0006f308 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006f30c lw a2, 0xb4(s0)               |     a2 = *((s0 + 45));
    0x0006f310 move s7, v0                   |     s7 = v0;
    0x0006f314 lw s6, -0x7fac(gp)            |     s6 = *(gp);
    0x0006f318 lw a0, -0x7fd4(gp)            |     a0 = *(gp);
    0x0006f31c lw t9, -0x73b8(gp)            |     t9 = sym.imp.apr_table_do;
    0x0006f320 sw zero, 0x10(sp)             |     *(var_10h_2) = 0;
                                             |     /* str.Vary */
    0x0006f324 addiu a3, s6, -0x3c0          |     a3 = s6 + -aav.0x000003c0;
    0x0006f328 move a1, v0                   |     a1 = v0;
    0x0006f32c addiu a0, a0, -0x36e8         |     a0 += -0x36e8;
    0x0006f330 jalr t9                       |     t9 ();
    0x0006f334 lw v0, 8(s7)                  |     v0 = *((s7 + 2));
    0x0006f338 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
                                             |     if (v0 <= 0) {
    0x0006f33c blez v0, 0x6e9c4              |         goto label_20;
                                             |     }
    0x0006f340 lw t9, -0x75ec(gp)            |     t9 = sym.imp.apr_array_pstrcat;
    0x0006f344 lw a0, (s0)                   |     a0 = *(s0);
    0x0006f348 addiu a2, zero, 0x2c          |     a2 = 0x2c;
    0x0006f34c move a1, s7                   |     a1 = s7;
    0x0006f350 lw s5, 0xb4(s0)               |     s5 = *((s0 + 45));
    0x0006f354 jalr t9                       |     t9 ();
    0x0006f358 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006f35c move a2, v0                   |     a2 = v0;
                                             |     /* str.Vary */
    0x0006f360 addiu a1, s6, -0x3c0          |     a1 = s6 + -aav.0x000003c0;
    0x0006f364 lw t9, -0x7590(gp)            |     t9 = sym.imp.apr_table_setn;
    0x0006f368 move a0, s5                   |     a0 = s5;
    0x0006f36c jalr t9                       |     t9 ();
    0x0006f370 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006f374 b 0x6e9c4                     |     goto label_20;
                                             | label_49:
    0x0006f378 lw a1, -0x7fac(gp)            |     a1 = *(gp);
    0x0006f37c lw t9, -0x76cc(gp)            |     t9 = sym.imp.apr_table_mergen;
    0x0006f380 lw a0, 0xb4(s0)               |     a0 = *((s0 + 45));
                                             |     /* str.chunked */
    0x0006f384 addiu a2, a2, -0x6a34         |     a2 += -0x6a34;
                                             |     /* str.Transfer_Encoding */
    0x0006f388 addiu a1, a1, -0x68a0         |     a1 += -0x68a0;
    0x0006f38c jalr t9                       |     t9 ();
    0x0006f390 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006f394 lw a0, 0xb4(s0)               |     a0 = *((s0 + 45));
    0x0006f398 lw a1, -0x7fac(gp)            |     a1 = *(gp);
    0x0006f39c lw t9, -0x7270(gp)            |     t9 = sym.imp.apr_table_unset;
                                             |     /* str.Content_Length */
    0x0006f3a0 addiu a1, a1, -0x688c         |     a1 += -aav.0x0000688c;
    0x0006f3a4 jalr t9                       |     t9 ();
    0x0006f3a8 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006f3ac lw a1, 0xc4(s0)               |     a1 = *((s0 + 49));
    0x0006f3b0 b 0x6ea3c                     |     goto label_4;
                                             | label_68:
    0x0006f3b4 lw a0, -0x7fac(gp)            |     a0 = *(gp);
    0x0006f3b8 lw t9, -0x7dd8(gp)            |     t9 = sym.ap_add_output_filter;
    0x0006f3bc lw a3, 4(s0)                  |     a3 = *((s0 + 1));
                                             |     /* str.CHUNK */
    0x0006f3c0 addiu a0, a0, 0x5134          |     a0 += 0x5134;
    0x0006f3c4 move a2, s0                   |     a2 = s0;
    0x0006f3c8 move a1, zero                 |     a1 = 0;
    0x0006f3cc jalr t9                       |     t9 ();
    0x0006f3d0 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006f3d4 move a0, s3                   |     a0 = s3;
    0x0006f3d8 lw t9, -0x7e34(gp)            |     t9 = sym.ap_remove_output_filter;
    0x0006f3dc b 0x6ef74                     |     goto label_12;
                                             | label_63:
    0x0006f3e0 addiu a0, v0, 0x10            |     a0 = v0 + 0x10;
    0x0006f3e4 b 0x6ee14                     |     goto label_21;
                                             | label_57:
    0x0006f3e8 lw v0, 4(s0)                  |     v0 = *((s0 + 1));
    0x0006f3ec lw v1, (s0)                   |     v1 = *(s0);
    0x0006f3f0 lw t9, -0x754c(gp)            |     t9 = sym.imp.apr_brigade_cleanup;
    0x0006f3f4 sw v1, (v0)                   |     *(v0) = v1;
    0x0006f3f8 lw v0, (s0)                   |     v0 = *(s0);
    0x0006f3fc lw v1, 4(s0)                  |     v1 = *((s0 + 1));
    0x0006f400 move a0, s2                   |     a0 = s2;
    0x0006f404 sw v1, 4(v0)                  |     *((v0 + 1)) = v1;
    0x0006f408 jalr t9                       |     t9 ();
    0x0006f40c nop                           |     
    0x0006f410 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006f414 sw s1, 4(s0)                  |     *((s0 + 1)) = s1;
    0x0006f418 lw v0, 4(s2)                  |     v0 = *((s2 + 1));
    0x0006f41c lw t9, -0x7e34(gp)            |     t9 = sym.ap_remove_output_filter;
    0x0006f420 sw v0, (s0)                   |     *(s0) = v0;
    0x0006f424 lw v0, 4(s2)                  |     v0 = *((s2 + 1));
    0x0006f428 move a0, s3                   |     a0 = s3;
    0x0006f42c sw s0, 4(v0)                  |     *((v0 + 1)) = s0;
    0x0006f430 sw s0, 4(s2)                  |     *((s2 + 1)) = s0;
    0x0006f434 jalr t9                       |     t9 ();
    0x0006f438 nop                           |     
    0x0006f43c lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006f440 lw a0, 8(s3)                  |     a0 = *((s3 + 2));
    0x0006f444 lw t9, -0x7e30(gp)            |     t9 = sym.ap_pass_brigade;
    0x0006f448 move a1, s2                   |     a1 = s2;
    0x0006f44c jalr t9                       |     t9 ();
    0x0006f450 move s1, v0                   |     s1 = v0;
    0x0006f454 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006f458 b 0x6ec18                     |     goto label_22;
                                             | label_28:
    0x0006f45c lw v0, 0x60(a1)               |     v0 = *((a1 + 24));
    0x0006f460 lw v0, 4(v0)                  |     v0 = *((v0 + 1));
                                             |     if (v0 == 0) {
    0x0006f464 bnel v0, zero, 0x6ed7c        |         goto label_23;
                                             |     }
    0x0006f468 lw v0, 8(s0)                  |     v0 = *((s0 + 2));
    0x0006f46c addiu v0, v0, 0x10            |     v0 += 0x10;
    0x0006f470 b 0x6ed78                     |     goto label_24;
                                             | label_66:
    0x0006f474 lw a0, 0xb8(s0)               |     a0 = *((s0 + 46));
    0x0006f478 move t9, s7                   |     t9 = s7;
    0x0006f47c move a1, s6                   |     a1 = s6;
    0x0006f480 bal 0x6ce6c                   |     fcn_0006ce6c ();
    0x0006f484 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006f488 lw a2, 0x40(sp)               |     a2 = *(var_40h);
                                             |     if (v0 != 0) {
    0x0006f48c bnez v0, 0x6e944              |         goto label_25;
                                             |     }
    0x0006f490 lw t9, -0x7414(gp)            |     t9 = sym.imp.apr_table_clear;
    0x0006f494 b 0x6efec                     |     goto label_26;
                                             | label_73:
    0x0006f498 jalr t9                       |     t9 ();
    0x0006f49c nop                           |     
    0x0006f4a0 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006f4a4 sw s6, (v0)                   |     *(v0) = s6;
    0x0006f4a8 lw v0, 0x60(sp)               |     v0 = *(var_60h);
    0x0006f4ac b 0x6f18c                     |     goto label_16;
                                             | label_67:
    0x0006f4b0 lw a0, -0x7fac(gp)            |     a0 = *(gp);
    0x0006f4b4 lw t9, -0x7778(gp)            |     t9 = sym.imp.apr_pool_userdata_setn;
    0x0006f4b8 lw a3, (s0)                   |     a3 = *(s0);
    0x0006f4bc move a2, zero                 |     a2 = 0;
                                             |     /* str.check_headers_recursion */
    0x0006f4c0 addiu a1, s7, 0x76b8          |     a1 = s7 + 0x76b8;
                                             |     /* str.true */
    0x0006f4c4 addiu a0, a0, -0x5c0          |     a0 += -aav.0x000005c0;
    0x0006f4c8 jalr t9                       |     t9 ();
    0x0006f4cc lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006f4d0 move a1, s0                   |     a1 = s0;
    0x0006f4d4 addiu a0, zero, 0x1f4         |     a0 = aav.0x000001f4;
    0x0006f4d8 lw t9, -0x7d5c(gp)            |     t9 = sym.ap_die;
    0x0006f4dc addiu s1, zero, -0x66         |     s1 = -0x66;
    0x0006f4e0 bal 0x6b138                   |     sym_ap_die ();
    0x0006f4e4 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006f4e8 b 0x6ec50                     |     goto label_9;
                                             | label_69:
    0x0006f4ec lw a3, 0x10(v0)               |     a3 = *((v0 + 4));
    0x0006f4f0 addu a3, a3, a2               |     a3 += a2;
                                             |     if (a3 == 0) {
    0x0006f4f4 bnel a3, zero, 0x6f148        |         goto label_27;
                                             |     }
    0x0006f4f8 addiu a0, v0, 0x10            |     a0 = v0 + 0x10;
    0x0006f4fc b 0x6ee14                     |     goto label_21;
                                             | label_55:
    0x0006f500 lw v0, 0x60(a1)               |     v0 = *((a1 + 24));
                                             |     if (v0 == 0) {
    0x0006f504 beql v0, zero, 0x6f580        |         goto label_74;
                                             |     }
    0x0006f508 lw v0, 8(s0)                  |     v0 = *((s0 + 2));
    0x0006f50c lw a3, (v0)                   |     a3 = *(v0);
                                             |     if (a3 == 0) {
    0x0006f510 beql a3, zero, 0x6ed7c        |         goto label_23;
                                             |     }
    0x0006f514 lw v0, 4(v0)                  |     v0 = *((v0 + 1));
    0x0006f518 addu a3, a3, a2               |     a3 += a2;
                                             | label_31:
    0x0006f51c lb v0, (a3)                   |     v0 = *(a3);
    0x0006f520 slti v0, v0, 0xb              |     v0 = (v0 < 0xb) ? 1 : 0;
                                             |     if (v0 < 0) {
    0x0006f524 bltz v0, 0x6f45c              |         goto label_28;
                                             |     }
    0x0006f528 xori v0, v0, 1                |     v0 ^= 1;
    0x0006f52c b 0x6ed84                     |     goto label_29;
                                             | label_65:
    0x0006f530 lw a0, 4(v0)                  |     a0 = *((v0 + 1));
    0x0006f534 lw a1, (v0)                   |     a1 = *(v0);
    0x0006f538 lw a2, 0x44(sp)               |     a2 = *(var_44h);
    0x0006f53c sw a1, (a0)                   |     *(a0) = a1;
    0x0006f540 lw a0, (v0)                   |     a0 = *(v0);
    0x0006f544 lw a1, 4(v0)                  |     a1 = *((v0 + 1));
    0x0006f548 addiu v1, a2, 4               |     v1 = a2 + 4;
    0x0006f54c sw a1, 4(a0)                  |     *((a0 + 1)) = a1;
    0x0006f550 sw v1, (v0)                   |     *(v0) = v1;
    0x0006f554 lw v1, 8(a2)                  |     v1 = *((a2 + 2));
    0x0006f558 lw t9, -0x7e34(gp)            |     t9 = sym.ap_remove_output_filter;
    0x0006f55c sw v1, 4(v0)                  |     *((v0 + 1)) = v1;
    0x0006f560 lw v1, 8(a2)                  |     v1 = *((a2 + 2));
    0x0006f564 move a0, s3                   |     a0 = s3;
    0x0006f568 sw v0, (v1)                   |     *(v1) = v0;
    0x0006f56c sw v0, 8(a2)                  |     *((a2 + 2)) = v0;
    0x0006f570 jalr t9                       |     t9 ();
    0x0006f574 nop                           |     
    0x0006f578 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006f57c b 0x6ef08                     |     goto label_30;
                                             | label_74:
    0x0006f580 lw a3, 0x10(v0)               |     a3 = *((v0 + 4));
    0x0006f584 addu a3, a3, a2               |     a3 += a2;
                                             |     if (a3 != 0) {
    0x0006f588 bnez a3, 0x6f51c              |         goto label_31;
                                             |     }
    0x0006f58c addiu v0, v0, 0x10            |     v0 += 0x10;
    0x0006f590 b 0x6ed78                     |     goto label_24;
                                             | label_42:
    0x0006f594 lw t9, -0x754c(gp)            |     t9 = sym.imp.apr_brigade_cleanup;
    0x0006f598 move a0, s2                   |     a0 = s2;
    0x0006f59c lw s1, 4(a2)                  |     s1 = *((a2 + 1));
    0x0006f5a0 jalr t9                       |     t9 ();
    0x0006f5a4 lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006f5a8 move a0, s1                   |     a0 = s1;
    0x0006f5ac move a1, s0                   |     a1 = s0;
    0x0006f5b0 lw t9, -0x7d5c(gp)            |     t9 = sym.ap_die;
    0x0006f5b4 addiu s1, zero, -0x66         |     s1 = -0x66;
    0x0006f5b8 bal 0x6b138                   |     sym_ap_die ();
    0x0006f5bc lw gp, 0x28(sp)               |     gp = *(var_28h_2);
    0x0006f5c0 b 0x6ec50                     |     goto label_9;
                                             | label_58:
    0x0006f5c4 lw t9, -0x75e8(gp)            |     t9 = sym.imp.__stack_chk_fail;
    0x0006f5c8 jalr t9                       |     t9 ();
    0x0006f5cc nop                           |     
                                             | }
    ; assembly                                   | /* r2dec pseudo code output */
                                                 | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x2b9e0 */
                                                 | #include <stdint.h>
                                                 |  
    ; (fcn) sym.ap_is_allowed_protocol ()        | void ap_is_allowed_protocol () {
    0x0002b9e0 lui gp, 7                         |     
    0x0002b9e4 addiu gp, gp, 0x7540              |     
    0x0002b9e8 addu gp, gp, t9                   |     gp += t9;
    0x0002b9ec addiu sp, sp, -0x20               |     
    0x0002b9f0 sw gp, 0x10(sp)                   |     *(var_10h) = gp;
    0x0002b9f4 sw ra, 0x1c(sp)                   |     *(var_1ch) = ra;
                                                 |     if (a2 == 0) {
    0x0002b9f8 beqz a2, 0x2ba3c                  |         goto label_1;
                                                 |     }
    0x0002b9fc nop                               |     
                                                 |     do {
    0x0002ba00 lw v0, 0x18(a2)                   |         v0 = *((a2 + 6));
    0x0002ba04 lw v0, (v0)                       |         v0 = *(v0);
    0x0002ba08 lw a0, 0x38(v0)                   |         a0 = *((v0 + 14));
    0x0002ba0c lw v0, 8(a0)                      |         v0 = *((a0 + 2));
    0x0002ba10 lw ra, 0x1c(sp)                   |         ra = *(var_1ch);
                                                 |         if (v0 > 0) {
    0x0002ba14 bgtz v0, 0x2ba64                  |             goto label_2;
                                                 |         }
    0x0002ba18 lw a0, -0x7fac(gp)                |         a0 = *(gp);
                                                 | label_0:
    0x0002ba1c lw t9, -0x7740(gp)                |         t9 = sym.imp.strcmp;
    0x0002ba20 move a1, a3                       |         a1 = a3;
                                                 |         /* str.http_1.1 */
    0x0002ba24 addiu a0, a0, -0x57fc             |         a0 += -0x57fc;
    0x0002ba28 jalr t9                           |         t9 ();
    0x0002ba2c lw ra, 0x1c(sp)                   |         ra = *(var_1ch);
    0x0002ba30 sltiu v0, v0, 1                   |         v0 = (v0 < 1) ? 1 : 0;
    0x0002ba34 addiu sp, sp, 0x20                |         
    0x0002ba38 jr ra                             |         return v0;
                                                 | label_1:
    0x0002ba3c beql a1, zero, 0x2ba00            |         
                                                 |     } while (a1 == 0);
    0x0002ba40 lw a2, 4(a0)                      |     a2 = *((a0 + 1));
    0x0002ba44 lw a2, 8(a1)                      |     a2 = *((a1 + 2));
    0x0002ba48 lw v0, 0x18(a2)                   |     v0 = *((a2 + 6));
    0x0002ba4c lw v0, (v0)                       |     v0 = *(v0);
    0x0002ba50 lw a0, 0x38(v0)                   |     a0 = *((v0 + 14));
    0x0002ba54 lw v0, 8(a0)                      |     v0 = *((a0 + 2));
                                                 |     if (v0 <= 0) {
    0x0002ba58 blezl v0, 0x2ba1c                 |         goto label_0;
                                                 |     }
    0x0002ba5c lw a0, -0x7fac(gp)                |     a0 = *(gp);
    0x0002ba60 lw ra, 0x1c(sp)                   |     ra = *(var_1ch);
                                                 | label_2:
    0x0002ba64 lw t9, -0x7d9c(gp)                |     t9 = sym.ap_array_str_contains;
    0x0002ba68 move a1, a3                       |     a1 = a3;
    0x0002ba6c addiu sp, sp, 0x20                |     
    0x0002ba70 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 @ 0x3b310 */
                                                         | #include <stdint.h>
                                                         |  
    ; (fcn) sym.ap_is_recursion_limit_exceeded ()        | void ap_is_recursion_limit_exceeded () {
    0x0003b310 lui gp, 6                                 |     
    0x0003b314 addiu gp, gp, 0x7c10                      |     
    0x0003b318 addu gp, gp, t9                           |     gp += t9;
    0x0003b31c lw v0, 8(a0)                              |     v0 = *((a0 + 2));
    0x0003b320 addiu sp, sp, -0x30                       |     
    0x0003b324 lw v0, 0x18(v0)                           |     v0 = *((v0 + 6));
    0x0003b328 sw gp, 0x20(sp)                           |     *(var_20h) = gp;
    0x0003b32c sw s0, 0x28(sp)                           |     *(var_28h) = s0;
    0x0003b330 lw v0, (v0)                               |     v0 = *(v0);
    0x0003b334 sw ra, 0x2c(sp)                           |     *(var_2ch) = ra;
    0x0003b338 lw t0, 0x14(v0)                           |     t0 = *((v0 + 5));
    0x0003b33c move s0, a0                               |     s0 = a0;
                                                         |     if (t0 == 0) {
    0x0003b340 bnez t0, 0x3b348                          |         
    0x0003b344 addiu t0, zero, 0xa                       |         t0 = 0xa;
                                                         |     }
    0x0003b348 lw t1, 0x18(v0)                           |     t1 = *((v0 + 6));
                                                         |     if (t1 != 0) {
    0x0003b34c beql t1, zero, 0x3b354                    |         
    0x0003b350 addiu t1, zero, 0xa                       |         t1 = 0xa;
                                                         |     }
    0x0003b354 lw v0, 0x10(s0)                           |     v0 = *((s0 + 4));
    0x0003b358 move a1, s0                               |     a1 = s0;
    0x0003b35c move a2, zero                             |     a2 = 0;
    0x0003b360 move a0, zero                             |     a0 = 0;
                                                         |     if (v0 == 0) {
    0x0003b364 beqz v0, 0x3b394                          |         goto label_3;
                                                         |     }
    0x0003b368 addiu a0, a0, 1                           |     a0++;
                                                         |     do {
    0x0003b36c slt v1, a0, t0                            |         v1 = (a0 < t0) ? 1 : 0;
                                                         |         if (v1 == 0) {
    0x0003b370 beql v1, zero, 0x3b3d0                    |             goto label_4;
                                                         |         }
    0x0003b374 lw a0, -0x7fac(gp)                        |         a0 = *(gp);
    0x0003b378 lw v1, 0x10(v0)                           |         v1 = *((v0 + 4));
                                                         |         if (v1 == 0) {
    0x0003b37c beql v1, zero, 0x3b3c0                    |             goto label_5;
                                                         |         }
    0x0003b380 lw a1, 0x14(v0)                           |         a1 = *((v0 + 5));
    0x0003b384 move a1, v0                               |         a1 = v0;
                                                         | label_1:
    0x0003b388 move v0, v1                               |         v0 = v1;
                                                         | label_0:
    0x0003b38c addiu a0, a0, 1                           |         a0++;
    0x0003b390 bnel v0, zero, 0x3b36c                    |         
                                                         |     } while (v0 == 0);
                                                         | label_3:
    0x0003b394 lw v0, 0x14(a1)                           |     v0 = *((a1 + 5));
    0x0003b398 lw ra, 0x2c(sp)                           |     ra = *(var_2ch);
                                                         |     if (v0 == 0) {
    0x0003b39c beqz v0, 0x3b41c                          |         goto label_6;
                                                         |     }
                                                         | label_2:
    0x0003b3a0 addiu a2, a2, 1                           |     a2++;
    0x0003b3a4 slt v1, a2, t1                            |     v1 = (a2 < t1) ? 1 : 0;
                                                         |     if (v1 == 0) {
    0x0003b3a8 beql v1, zero, 0x3b428                    |         goto label_7;
                                                         |     }
    0x0003b3ac lw a0, -0x7fac(gp)                        |     a0 = *(gp);
    0x0003b3b0 lw v1, 0x10(v0)                           |     v1 = *((v0 + 4));
    0x0003b3b4 move a1, v0                               |     a1 = v0;
    0x0003b3b8 move v0, v1                               |     v0 = v1;
    0x0003b3bc b 0x3b38c                                 |     goto label_0;
                                                         |     if (a1 == 0) {
                                                         | label_5:
    0x0003b3c0 beql a1, zero, 0x3b388                    |         goto label_1;
                                                         |     }
    0x0003b3c4 move a1, v0                               |     a1 = v0;
    0x0003b3c8 move v0, a1                               |     v0 = a1;
    0x0003b3cc b 0x3b3a0                                 |     goto label_2;
                                                         | label_4:
    0x0003b3d0 lw v0, -0x7fac(gp)                        |     v0 = *(gp);
    0x0003b3d4 lw t9, -0x7f08(gp)                        |     t9 = sym.ap_log_rerror_;
    0x0003b3d8 addiu a3, zero, 3                         |     a3 = 3;
    0x0003b3dc move a2, zero                             |     a2 = 0;
    0x0003b3e0 addiu a1, zero, 0xfa6                     |     a1 = 0xfa6;
                                                         |     /* str._usr_src_debug_apache2_2.4.57_r0_httpd_2.4.57_server_core.c */
    0x0003b3e4 addiu a0, a0, -0x503c                     |     a0 += -0x503c;
    0x0003b3e8 sw t0, 0x1c(sp)                           |     *(var_1ch) = t0;
                                                         |     /* str.AH00124:_Request_exceeded_the_limit_of__d_internal_redirects_due_to_probable_configuration_error._Use_LimitInternalRecursion_to_increase_the_limit_if_necessary._Use_LogLevel_debug_to_get_a_backtrace. */
    0x0003b3ec addiu v0, v0, -0x30ec                     |     v0 += -0x30ec;
                                                         |     do {
    0x0003b3f0 sw v0, 0x18(sp)                           |         *(var_18h) = v0;
    0x0003b3f4 sw s0, 0x14(sp)                           |         *(var_14h) = s0;
    0x0003b3f8 sw zero, 0x10(sp)                         |         *(var_10h) = 0;
    0x0003b3fc bal 0x530a8                               |         sym_ap_log_rerror_ ();
    0x0003b400 lw gp, 0x20(sp)                           |         gp = *(var_20h);
    0x0003b404 lw t9, -0x7dd4(gp)                        |         t9 = *(gp);
                                                         |         /* fcn.0002f900 */
    0x0003b408 addiu t9, t9, -0x700                      |         t9 += -aav.0x00000700;
    0x0003b40c move a0, s0                               |         a0 = s0;
    0x0003b410 bal 0x2f900                               |         fcn_0002f900 ();
    0x0003b414 addiu v0, zero, 1                         |         v0 = 1;
    0x0003b418 lw ra, 0x2c(sp)                           |         ra = *(var_2ch);
                                                         | label_6:
    0x0003b41c lw s0, 0x28(sp)                           |         s0 = *(var_28h);
    0x0003b420 addiu sp, sp, 0x30                        |         
    0x0003b424 jr ra                                     |         return v0;
                                                         | label_7:
    0x0003b428 lw v0, -0x7fac(gp)                        |         v0 = *(gp);
    0x0003b42c lw t9, -0x7f08(gp)                        |         t9 = sym.ap_log_rerror_;
    0x0003b430 addiu a3, zero, 3                         |         a3 = 3;
    0x0003b434 move a2, zero                             |         a2 = 0;
    0x0003b438 addiu a1, zero, 0xfba                     |         a1 = 0xfba;
                                                         |         /* str._usr_src_debug_apache2_2.4.57_r0_httpd_2.4.57_server_core.c */
    0x0003b43c addiu a0, a0, -0x503c                     |         a0 += -0x503c;
    0x0003b440 sw t1, 0x1c(sp)                           |         *(var_1ch) = t1;
                                                         |         /* str.AH00125:_Request_exceeded_the_limit_of__d_subrequest_nesting_levels_due_to_probable_configuration_error._Use_LimitInternalRecursion_to_increase_the_limit_if_necessary._Use_LogLevel_debug_to_get_a_backtrace. */
    0x0003b444 addiu v0, v0, -0x3020                     |         v0 += -0x3020;
    0x0003b448 b 0x3b3f0                                 |         
                                                         |     } while (1);
                                                         | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x3f3f8 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.ap_location_walk ()          | void ap_location_walk () {
    0x0003f3f8 lui gp, 6                     |     
    0x0003f3fc addiu gp, gp, 0x3b28          |     
    0x0003f400 addu gp, gp, t9               |     gp += t9;
    0x0003f404 addiu sp, sp, -0x78           |     
    0x0003f408 lw v0, -0x7534(gp)            |     v0 = *(gp);
    0x0003f40c sw s3, 0x5c(sp)               |     *(var_5ch) = s3;
    0x0003f410 move v1, v0                   |     v1 = v0;
    0x0003f414 sw v0, 0x34(sp)               |     *(var_34h) = v0;
    0x0003f418 lw v0, 8(a0)                  |     v0 = *((a0 + 2));
    0x0003f41c sw s2, 0x58(sp)               |     *(var_58h) = s2;
    0x0003f420 lw v1, (v1)                   |     v1 = *(v1);
    0x0003f424 lw v0, 0x18(v0)               |     v0 = *((v0 + 6));
    0x0003f428 sw gp, 0x18(sp)               |     *(var_18h) = gp;
    0x0003f42c sw ra, 0x74(sp)               |     *(var_74h) = ra;
    0x0003f430 lw s3, (v0)                   |     s3 = *(v0);
    0x0003f434 sw fp, 0x70(sp)               |     *(var_70h) = fp;
    0x0003f438 sw s7, 0x6c(sp)               |     *(var_6ch) = s7;
    0x0003f43c lw v0, 0x10(s3)               |     v0 = *((s3 + 4));
    0x0003f440 sw s6, 0x68(sp)               |     *(var_68h) = s6;
    0x0003f444 sw s5, 0x64(sp)               |     *(var_64h) = s5;
    0x0003f448 lw s2, 8(v0)                  |     s2 = *((v0 + 2));
    0x0003f44c sw s4, 0x60(sp)               |     *(var_60h) = s4;
    0x0003f450 sw s1, 0x54(sp)               |     *(var_54h) = s1;
    0x0003f454 sw s0, 0x50(sp)               |     *(var_50h_2) = s0;
    0x0003f458 sw v1, 0x4c(sp)               |     *(var_4ch) = v1;
    0x0003f45c lw t9, -0x7c54(gp)            |     t9 = *(gp);
                                             |     if (s2 == 0) {
    0x0003f460 bnez s2, 0x3f4a8              |         
                                             | label_3:
    0x0003f464 lw v0, 0x34(sp)               |         v0 = *(var_34h);
                                             | label_11:
    0x0003f468 lw a0, 0x4c(sp)               |         a0 = *(var_4ch);
    0x0003f46c lw v1, (v0)                   |         v1 = *(v0);
    0x0003f470 move v0, zero                 |         v0 = 0;
                                             |         if (a0 != v1) {
    0x0003f474 bne a0, v1, 0x3f94c           |             goto label_14;
                                             |         }
    0x0003f478 lw ra, 0x74(sp)               |         ra = *(var_74h);
    0x0003f47c lw fp, 0x70(sp)               |         fp = *(var_70h);
    0x0003f480 lw s7, 0x6c(sp)               |         s7 = *(var_6ch);
    0x0003f484 lw s6, 0x68(sp)               |         s6 = *(var_68h);
    0x0003f488 lw s5, 0x64(sp)               |         s5 = *(var_64h);
    0x0003f48c lw s4, 0x60(sp)               |         s4 = *(var_60h);
    0x0003f490 lw s3, 0x5c(sp)               |         s3 = *(var_5ch);
    0x0003f494 lw s2, 0x58(sp)               |         s2 = *(var_58h);
    0x0003f498 lw s1, 0x54(sp)               |         s1 = *(var_54h);
    0x0003f49c lw s0, 0x50(sp)               |         s0 = *(var_50h_2);
    0x0003f4a0 addiu sp, sp, 0x78            |         
    0x0003f4a4 jr ra                         |         return v0;
                                             |     }
    0x0003f4a8 lw v0, 0x10(v0)               |     v0 = *((v0 + 4));
    0x0003f4ac move a1, a0                   |     a1 = a0;
    0x0003f4b0 move s0, a0                   |     s0 = a0;
    0x0003f4b4 sw v0, 0x38(sp)               |     *(var_38h) = v0;
                                             |     /* fcn.0003bb2c */
    0x0003f4b8 addiu t9, t9, -0x44d4         |     t9 += -0x44d4;
    0x0003f4bc addiu a0, zero, 1             |     a0 = 1;
    0x0003f4c0 bal 0x3bb2c                   |     fcn_0003bb2c ();
    0x0003f4c4 move s1, v0                   |     s1 = v0;
    0x0003f4c8 lw v0, 0x44(s3)               |     v0 = *((s3 + 17));
    0x0003f4cc lw s3, (s1)                   |     s3 = *(s1);
    0x0003f4d0 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0003f4d4 sltu s5, zero, s3             |     s5 = (0 < s3) ? 1 : 0;
                                             |     if (v0 == 0) {
    0x0003f4d8 beqz v0, 0x3f860              |         goto label_15;
                                             |     }
    0x0003f4dc lw s4, 0xe4(s0)               |     s4 = *((s0 + 57));
                                             | label_8:
    0x0003f4e0 lw v1, 0x38(sp)               |     v1 = *(var_38h);
                                             |     if (s3 != 0) {
    0x0003f4e4 beqz s3, 0x3f4f4              |         
    0x0003f4e8 lw v0, 4(s1)                  |         v0 = *((s1 + 1));
    0x0003f4ec lw t9, -0x7740(gp)            |         t9 = sym.imp.strcmp;
                                             |         if (v0 == v1) {
    0x0003f4f0 beq v0, v1, 0x3f8e0           |             goto label_16;
                                             |         }
                                             |     }
                                             | label_10:
    0x0003f4f4 lw v1, -0x7f14(gp)            |     v1 = *((gp - 8133));
    0x0003f4f8 lw v0, 0x10(s1)               |     v0 = *((s1 + 4));
    0x0003f4fc lw t9, -0x7654(gp)            |     t9 = sym.imp.apr_pstrdup;
    0x0003f500 lw v1, -0x3d28(v1)            |     v1 = *((v1 - 3914));
    0x0003f504 lw s3, 8(v0)                  |     s3 = *((v0 + 2));
    0x0003f508 move a1, s4                   |     a1 = s4;
    0x0003f50c lw a0, (s0)                   |     a0 = *(s0);
    0x0003f510 lw s4, 0x10(v0)               |     s4 = *((v0 + 4));
    0x0003f514 and v0, s5, v1                |     v0 = s5 & v1;
    0x0003f518 sw s3, 0x40(sp)               |     *(var_40h) = s3;
    0x0003f51c sw zero, 0x48(sp)             |     *(var_48h) = 0;
    0x0003f520 sw v0, 0x3c(sp)               |     *(var_3ch) = v0;
    0x0003f524 jalr t9                       |     t9 ();
    0x0003f528 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0003f52c sw v0, (s1)                   |     *(s1) = v0;
                                             |     if (s2 <= 0) {
    0x0003f530 blez s2, 0x3f928              |         goto label_17;
                                             |     }
    0x0003f534 lw v0, 0x38(sp)               |     v0 = *(var_38h);
    0x0003f538 sll s2, s2, 2                 |     s2 <<= 2;
    0x0003f53c move s6, v0                   |     s6 = v0;
    0x0003f540 addu v0, s2, v0               |     v0 = s2 + v0;
    0x0003f544 sw v0, 0x28(sp)               |     *(var_28h_2) = v0;
    0x0003f548 lw v0, -0x7fac(gp)            |     v0 = *(gp);
    0x0003f54c sw s3, 0x20(sp)               |     *(var_20h) = s3;
                                             |     /* str.location_walk_rxpool */
    0x0003f550 addiu v0, v0, -0xda8          |     v0 += -0xda8;
    0x0003f554 move s3, zero                 |     s3 = 0;
    0x0003f558 addiu fp, sp, 0x48            |     fp = sp + 0x48;
    0x0003f55c sw v0, 0x44(sp)               |     *(var_44h) = v0;
    0x0003f560 b 0x3f5d0                     |     
                                             |     while (a0 == 0) {
    0x0003f564 lw t9, -0x7b30(gp)            |         t9 = sym.ap_regexec;
                                             |         if (v0 == 0) {
    0x0003f568 beqz v0, 0x3f744              |             goto label_18;
                                             |         }
    0x0003f56c lw s5, 8(v0)                  |         s5 = *((v0 + 2));
                                             |         if (s5 == 0) {
    0x0003f570 beql s5, zero, 0x3f748        |             goto label_19;
                                             |         }
    0x0003f574 lw a1, 0xe4(s0)               |         a1 = *((s0 + 57));
    0x0003f578 lw a0, 0x48(sp)               |         a0 = *(var_48h);
    0x0003f57c lw t9, -0x737c(gp)            |         t9 = sym.imp.apr_pool_create_ex;
                                             |         if (a0 == 0) {
    0x0003f580 beqz a0, 0x3f8a4              |             goto label_20;
                                             |         }
                                             | label_9:
    0x0003f584 lw t9, -0x7544(gp)            |         t9 = sym.imp.apr_palloc;
    0x0003f588 sll a1, s5, 3                 |         a1 = s5 << 3;
    0x0003f58c jalr t9                       |         t9 ();
    0x0003f590 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x0003f594 lw a0, 0x38(s2)               |         a0 = *((s2 + 14));
    0x0003f598 lw a1, 0xe4(s0)               |         a1 = *((s0 + 57));
    0x0003f59c lw t9, -0x7b30(gp)            |         t9 = sym.ap_regexec;
    0x0003f5a0 sw zero, 0x10(sp)             |         *(var_10h_2) = 0;
    0x0003f5a4 move a3, v0                   |         a3 = v0;
    0x0003f5a8 move a2, s5                   |         a2 = s5;
    0x0003f5ac move s7, v0                   |         s7 = v0;
    0x0003f5b0 bal 0x26774                   |         sym_ap_regexec ();
    0x0003f5b4 move v1, v0                   |         v1 = v0;
    0x0003f5b8 lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             |         if (v0 == 0) {
    0x0003f5bc beqz v0, 0x3f770              |             goto label_21;
                                             |         }
                                             | label_0:
    0x0003f5c0 lw v0, 0x28(sp)               |         v0 = *(var_28h_2);
                                             | label_1:
    0x0003f5c4 addiu s6, s6, 4               |         s6 += 4;
    0x0003f5c8 lw a0, 0x48(sp)               |         a0 = *(var_48h);
                                             |         if (v0 == s6) {
    0x0003f5cc beq v0, s6, 0x3f6e0           |             goto label_22;
                                             |         }
                                             | label_2:
    0x0003f5d0 lw v1, (s6)                   |         v1 = *(s6);
    0x0003f5d4 lw s2, (v1)                   |         s2 = *(v1);
    0x0003f5d8 lw a0, 0x38(s2)               |         a0 = *((s2 + 14));
    0x0003f5dc lw v0, 0x78(s2)               |         v0 = *((s2 + 30));
    0x0003f5e0 bnel a0, zero, 0x3f564        |         
                                             |     }
    0x0003f5e4 lhu v0, 0x18(s2)              |     v0 = *((s2 + 12));
    0x0003f5e8 lw s7, (s2)                   |     s7 = *(s2);
    0x0003f5ec andi v0, v0, 0x100            |     v0 &= aav.0x00000100;
    0x0003f5f0 lw s2, (s1)                   |     s2 = *(s1);
                                             |     if (v0 != 0) {
    0x0003f5f4 bnez v0, 0x3f804              |         goto label_23;
                                             |     }
    0x0003f5f8 lw t9, -0x74c4(gp)            |     t9 = sym.imp.strlen;
    0x0003f5fc sw v1, 0x2c(sp)               |     *(var_2ch) = v1;
    0x0003f600 move a0, s7                   |     a0 = s7;
    0x0003f604 jalr t9                       |     t9 ();
    0x0003f608 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0003f60c move a2, v0                   |     a2 = v0;
    0x0003f610 sw v0, 0x24(sp)               |     *(var_24h) = v0;
    0x0003f614 lw t9, -0x76c4(gp)            |     t9 = sym.imp.strncmp;
    0x0003f618 move a1, s2                   |     a1 = s2;
    0x0003f61c move a0, s7                   |     a0 = s7;
    0x0003f620 jalr t9                       |     t9 ();
    0x0003f624 lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     if (v0 != 0) {
    0x0003f628 bnez v0, 0x3f5c0              |         goto label_0;
                                             |     }
    0x0003f62c lw t1, 0x24(sp)               |     t1 = *(var_24h);
    0x0003f630 lw v1, 0x2c(sp)               |     v1 = *(var_2ch);
                                             |     if (t1 == 0) {
    0x0003f634 beqz t1, 0x3f660              |         goto label_4;
                                             |     }
    0x0003f638 addu a3, s7, t1               |     a3 = s7 + t1;
    0x0003f63c addiu a0, zero, 0x2f          |     a0 = 0x2f;
    0x0003f640 lb v0, -1(a3)                 |     v0 = *((a3 - 1));
    0x0003f644 addu s7, s2, t1               |     s7 = s2 + t1;
                                             |     if (v0 == a0) {
    0x0003f648 beq v0, a0, 0x3f660           |         goto label_4;
                                             |     }
    0x0003f64c lb v0, (s7)                   |     v0 = *(s7);
                                             |     if (v0 == a0) {
    0x0003f650 beql v0, a0, 0x3f664          |         goto label_24;
                                             |     }
    0x0003f654 lw v0, 0x20(sp)               |     v0 = *(var_20h);
    0x0003f658 lw v0, 0x28(sp)               |     v0 = *(var_28h_2);
                                             |     if (v0 != 0) {
    0x0003f65c bnez v0, 0x3f5c4              |         goto label_1;
                                             |     }
                                             | label_4:
    0x0003f660 lw v0, 0x20(sp)               |     v0 = *(var_20h);
                                             |     if (v0 != 0) {
                                             | label_24:
    0x0003f664 beqz v0, 0x3f68c              |         
    0x0003f668 nop                           |         
    0x0003f66c lw v0, (s4)                   |         v0 = *(s4);
    0x0003f670 lw a1, 0x20(sp)               |         a1 = *(var_20h);
                                             |         if (v0 == v1) {
    0x0003f674 beq v0, v1, 0x3f88c           |             goto label_25;
                                             |         }
    0x0003f678 lw a0, 0x10(s1)               |         a0 = *((s1 + 4));
    0x0003f67c sw zero, 0x3c(sp)             |         *(var_3ch) = 0;
    0x0003f680 lw v0, 8(a0)                  |         v0 = *((a0 + 2));
    0x0003f684 subu s5, v0, a1               |         __asm ("subu s5, v0, a1");
    0x0003f688 sw s5, 8(a0)                  |         *((a0 + 2)) = s5;
                                             |     }
    0x0003f68c lw t9, -0x7b54(gp)            |     t9 = sym.ap_merge_per_dir_configs;
                                             |     if (s3 == 0) {
    0x0003f690 beqz s3, 0x3f768              |         goto label_26;
                                             |     }
    0x0003f694 lw a0, (s0)                   |     a0 = *(s0);
    0x0003f698 move a1, s3                   |     a1 = s3;
    0x0003f69c move a2, v1                   |     a2 = v1;
    0x0003f6a0 bal 0x4b8c8                   |     sym_ap_merge_per_dir_configs ();
    0x0003f6a4 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0003f6a8 move s3, v0                   |     s3 = v0;
                                             | label_5:
    0x0003f6ac lw t9, -0x7324(gp)            |     t9 = sym.imp.apr_array_push;
    0x0003f6b0 lw a0, 0x10(s1)               |     a0 = *((s1 + 4));
    0x0003f6b4 sw zero, 0x20(sp)             |     *(var_20h) = 0;
    0x0003f6b8 jalr t9                       |     t9 ();
    0x0003f6bc move s4, v0                   |     s4 = v0;
    0x0003f6c0 lw v0, (s6)                   |     v0 = *(s6);
    0x0003f6c4 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0003f6c8 sw v0, (s4)                   |     *(s4) = v0;
    0x0003f6cc lw v0, 0x28(sp)               |     v0 = *(var_28h_2);
    0x0003f6d0 addiu s6, s6, 4               |     s6 += 4;
    0x0003f6d4 sw s3, 4(s4)                  |     *((s4 + 1)) = s3;
                                             |     if (v0 != s6) {
    0x0003f6d8 bne v0, s6, 0x3f5d0           |         goto label_2;
                                             |     }
                                             | label_12:
    0x0003f6dc lw a0, 0x48(sp)               |     a0 = *(var_48h);
                                             | label_22:
    0x0003f6e0 lw t9, -0x7428(gp)            |     t9 = *(gp);
                                             |     if (a0 != 0) {
    0x0003f6e4 beqz a0, 0x3f6f4              |         
    0x0003f6e8 jalr t9                       |         t9 ();
    0x0003f6ec nop                           |         
    0x0003f6f0 lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             |     }
    0x0003f6f4 lw v1, 0x10(s1)               |     v1 = *((s1 + 4));
    0x0003f6f8 lw a0, 0x20(sp)               |     a0 = *(var_20h);
    0x0003f6fc lw v0, 8(v1)                  |     v0 = *((v1 + 2));
                                             |     if (a0 == 0) {
    0x0003f700 beqz a0, 0x3f828              |         goto label_27;
                                             |     }
    0x0003f704 subu v0, v0, a0               |     __asm ("subu v0, v0, a0");
    0x0003f708 sw v0, 8(v1)                  |     *((v1 + 2)) = v0;
    0x0003f70c lw v0, 0x100(s0)              |     v0 = *(s0);
                                             | label_6:
    0x0003f710 lw v1, 0x38(sp)               |     v1 = *(var_38h);
                                             | label_7:
    0x0003f714 sw v0, 8(s1)                  |     *((s1 + 2)) = v0;
    0x0003f718 sw v1, 4(s1)                  |     *((s1 + 1)) = v1;
                                             |     if (s3 != 0) {
    0x0003f71c beqz s3, 0x3f73c              |         
    0x0003f720 lw t9, -0x7b54(gp)            |         t9 = sym.ap_merge_per_dir_configs;
    0x0003f724 lw a0, (s0)                   |         a0 = *(s0);
    0x0003f728 move a1, v0                   |         a1 = v0;
    0x0003f72c move a2, s3                   |         a2 = s3;
    0x0003f730 bal 0x4b8c8                   |         sym_ap_merge_per_dir_configs ();
    0x0003f734 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x0003f738 sw v0, 0x100(s0)              |         *(s0) = v0;
                                             |     }
    0x0003f73c sw v0, 0xc(s1)                |     *((s1 + 3)) = v0;
    0x0003f740 b 0x3f464                     |     goto label_3;
                                             | label_18:
    0x0003f744 lw a1, 0xe4(s0)               |     a1 = *((s0 + 57));
                                             | label_19:
    0x0003f748 move a3, zero                 |     a3 = 0;
    0x0003f74c sw zero, 0x10(sp)             |     *(var_10h_2) = 0;
    0x0003f750 move a2, zero                 |     a2 = 0;
    0x0003f754 bal 0x26774                   |     sym_ap_regexec ();
    0x0003f758 lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     if (v0 != 0) {
    0x0003f75c bnez v0, 0x3f5c0              |         goto label_0;
                                             |     }
    0x0003f760 lw v1, (s6)                   |     v1 = *(s6);
    0x0003f764 b 0x3f660                     |     goto label_4;
                                             | label_26:
    0x0003f768 move s3, v1                   |     s3 = v1;
    0x0003f76c b 0x3f6ac                     |     goto label_5;
                                             |     if (s5 <= 0) {
                                             | label_21:
    0x0003f770 blezl s5, 0x3f660             |         goto label_4;
                                             |     }
    0x0003f774 lw v1, (s6)                   |     v1 = *(s6);
                                             |     do {
    0x0003f778 lw v0, (s7)                   |         v0 = *(s7);
                                             |         if (v0 >= 0) {
    0x0003f77c bltzl v0, 0x3f7f4             |             
    0x0003f780 addiu v1, v1, 1               |             v1++;
    0x0003f784 lw a2, 4(s7)                  |             a2 = *((s7 + 1));
    0x0003f788 sll a3, v1, 2                 |             a3 = v1 << 2;
                                             |             if (a2 >= 0) {
    0x0003f78c bltz a2, 0x3f7f0              |                 
    0x0003f790 lw a0, 0x78(s2)               |                 a0 = *((s2 + 30));
    0x0003f794 lw a0, 0x10(a0)               |                 a0 = *((a0 + 4));
    0x0003f798 lwx a3, a3(a0)                |                 __asm ("lwx a3, a3(a0)");
    0x0003f79c sw a3, 0x24(sp)               |                 *(var_24h) = a3;
                                             |                 if (a3 == 0) {
    0x0003f7a0 beqz a3, 0x3f7f0              |                     goto label_28;
                                             |                 }
    0x0003f7a4 lw t4, 0xbc(s0)               |                 t4 = *((s0 + 47));
    0x0003f7a8 lw a1, 0xe4(s0)               |                 a1 = *((s0 + 57));
    0x0003f7ac lw t9, -0x74d4(gp)            |                 t9 = sym.imp.apr_pstrndup;
    0x0003f7b0 lw a0, (s0)                   |                 a0 = *(s0);
    0x0003f7b4 sw v1, 0x30(sp)               |                 *(var_30h) = v1;
    0x0003f7b8 sw t4, 0x2c(sp)               |                 *(var_2ch) = t4;
    0x0003f7bc subu a2, a2, v0               |                 __asm ("subu a2, a2, v0");
    0x0003f7c0 addu a1, a1, v0               |                 a1 += v0;
    0x0003f7c4 jalr t9                       |                 t9 ();
    0x0003f7c8 lw gp, 0x18(sp)               |                 gp = *(var_18h);
    0x0003f7cc lw a3, 0x24(sp)               |                 a3 = *(var_24h);
    0x0003f7d0 lw t4, 0x2c(sp)               |                 t4 = *(var_2ch);
    0x0003f7d4 lw t9, -0x7590(gp)            |                 t9 = sym.imp.apr_table_setn;
    0x0003f7d8 move a2, v0                   |                 a2 = v0;
    0x0003f7dc move a1, a3                   |                 a1 = a3;
    0x0003f7e0 move a0, t4                   |                 a0 = t4;
    0x0003f7e4 jalr t9                       |                 t9 ();
    0x0003f7e8 lw gp, 0x18(sp)               |                 gp = *(var_18h);
    0x0003f7ec lw v1, 0x30(sp)               |                 v1 = *(var_30h);
                                             |             }
                                             | label_28:
    0x0003f7f0 addiu v1, v1, 1               |             v1++;
                                             |         }
    0x0003f7f4 addiu s7, s7, 8               |         s7 += 8;
    0x0003f7f8 bne v1, s5, 0x3f778           |         
                                             |     } while (v1 != s5);
    0x0003f7fc lw v1, (s6)                   |     v1 = *(s6);
    0x0003f800 b 0x3f660                     |     goto label_4;
                                             | label_23:
    0x0003f804 lw t9, -0x7618(gp)            |     t9 = sym.imp.apr_fnmatch;
    0x0003f808 addiu a2, zero, 2             |     a2 = 2;
    0x0003f80c move a1, s2                   |     a1 = s2;
    0x0003f810 move a0, s7                   |     a0 = s7;
    0x0003f814 jalr t9                       |     t9 ();
    0x0003f818 lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     if (v0 != 0) {
    0x0003f81c bnez v0, 0x3f5c0              |         goto label_0;
                                             |     }
    0x0003f820 lw v1, (s6)                   |     v1 = *(s6);
    0x0003f824 b 0x3f660                     |     goto label_4;
                                             | label_27:
    0x0003f828 lw v1, 0x40(sp)               |     v1 = *(var_40h);
    0x0003f82c slt v0, v1, v0                |     v0 = (v1 < v0) ? 1 : 0;
    0x0003f830 lw v1, 0x3c(sp)               |     v1 = *(var_3ch);
                                             |     if (v0 != 0) {
    0x0003f834 beqz v0, 0x3f840              |         
    0x0003f838 lw v0, 0x100(s0)              |         v0 = *(s0);
    0x0003f83c b 0x3f710                     |         goto label_6;
                                             |     }
    0x0003f840 lw v0, 0x100(s0)              |     v0 = *(s0);
                                             |     if (v1 == 0) {
    0x0003f844 beqz v1, 0x3f710              |         goto label_6;
                                             |     }
    0x0003f848 lw v1, 8(s1)                  |     v1 = *((s1 + 2));
                                             | label_13:
    0x0003f84c lw v1, 0x38(sp)               |     v1 = *(var_38h);
                                             |     if (v1 != v0) {
    0x0003f850 bne v1, v0, 0x3f714           |         goto label_7;
                                             |     }
    0x0003f854 lw a1, 0xc(s1)                |     a1 = *((s1 + 3));
    0x0003f858 sw a1, 0x100(s0)              |     *(s0) = a1;
    0x0003f85c b 0x3f464                     |     goto label_3;
                                             | label_15:
    0x0003f860 lw t9, -0x7654(gp)            |     t9 = sym.imp.apr_pstrdup;
    0x0003f864 lw a1, 0xe4(s0)               |     a1 = *((s0 + 57));
    0x0003f868 lw a0, (s0)                   |     a0 = *(s0);
    0x0003f86c jalr t9                       |     t9 ();
    0x0003f870 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0003f874 move a0, v0                   |     a0 = v0;
    0x0003f878 lw t9, -0x7b2c(gp)            |     t9 = sym.ap_no2slash;
    0x0003f87c move s4, v0                   |     s4 = v0;
    0x0003f880 jalr t9                       |     t9 ();
    0x0003f884 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0003f888 b 0x3f4e0                     |     goto label_8;
                                             | label_25:
    0x0003f88c lw v0, 0x20(sp)               |     v0 = *(var_20h);
    0x0003f890 lw s3, 4(s4)                  |     s3 = *((s4 + 1));
    0x0003f894 addiu v0, v0, -1              |     v0 += -1;
    0x0003f898 sw v0, 0x20(sp)               |     *(var_20h) = v0;
    0x0003f89c addiu s4, s4, 8               |     s4 += 8;
    0x0003f8a0 b 0x3f5c0                     |     goto label_0;
                                             | label_20:
    0x0003f8a4 lw a1, (s0)                   |     a1 = *(s0);
    0x0003f8a8 move a3, zero                 |     a3 = 0;
    0x0003f8ac move a2, zero                 |     a2 = 0;
    0x0003f8b0 move a0, fp                   |     a0 = fp;
    0x0003f8b4 jalr t9                       |     t9 ();
    0x0003f8b8 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0003f8bc lw a0, 0x48(sp)               |     a0 = *(var_48h);
    0x0003f8c0 lw t9, -0x7698(gp)            |     t9 = sym.imp.apr_pool_tag;
    0x0003f8c4 lw a1, 0x44(sp)               |     a1 = *(var_44h);
    0x0003f8c8 jalr t9                       |     t9 ();
    0x0003f8cc lw v0, 0x78(s2)               |     v0 = *((s2 + 30));
    0x0003f8d0 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0003f8d4 lw a0, 0x48(sp)               |     a0 = *(var_48h);
    0x0003f8d8 lw s5, 8(v0)                  |     s5 = *((v0 + 2));
    0x0003f8dc b 0x3f584                     |     goto label_9;
                                             | label_16:
    0x0003f8e0 lw a1, (s1)                   |     a1 = *(s1);
    0x0003f8e4 move a0, s4                   |     a0 = s4;
    0x0003f8e8 jalr t9                       |     t9 ();
    0x0003f8ec lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     if (v0 != 0) {
    0x0003f8f0 bnez v0, 0x3f4f4              |         goto label_10;
                                             |     }
    0x0003f8f4 lw v0, 0x100(s0)              |     v0 = *(s0);
    0x0003f8f8 lw a1, 0xc(s1)                |     a1 = *((s1 + 3));
                                             |     if (v0 == a1) {
    0x0003f8fc beql v0, a1, 0x3f468          |         goto label_11;
                                             |     }
    0x0003f900 lw v0, 0x34(sp)               |     v0 = *(var_34h);
    0x0003f904 lw a2, 0x10(s1)               |     a2 = *((s1 + 4));
    0x0003f908 lw a0, 8(a2)                  |     a0 = *((a2 + 2));
    0x0003f90c lw v1, 8(s1)                  |     v1 = *((s1 + 2));
                                             |     if (a0 != 0) {
    0x0003f910 bnez a0, 0x3f938              |         goto label_29;
                                             |     }
                                             |     if (v0 == v1) {
    0x0003f914 beql v0, v1, 0x3f464          |         goto label_3;
                                             |     }
    0x0003f918 sw a1, 0x100(s0)              |     *(s0) = a1;
    0x0003f91c sw v0, 8(s1)                  |     *((s1 + 2)) = v0;
    0x0003f920 sw v0, 0xc(s1)                |     *((s1 + 3)) = v0;
    0x0003f924 b 0x3f464                     |     goto label_3;
                                             | label_17:
    0x0003f928 lw v0, 0x40(sp)               |     v0 = *(var_40h);
    0x0003f92c move s3, zero                 |     s3 = 0;
    0x0003f930 sw v0, 0x20(sp)               |     *(var_20h) = v0;
    0x0003f934 b 0x3f6dc                     |     goto label_12;
                                             | label_29:
    0x0003f938 lw a1, 0x10(a2)               |     a1 = *((a2 + 4));
    0x0003f93c sll a0, a0, 3                 |     a0 <<= 3;
    0x0003f940 addu a0, a1, a0               |     a0 = a1 + a0;
    0x0003f944 lw s3, -4(a0)                 |     s3 = *((a0 - 1));
    0x0003f948 b 0x3f84c                     |     goto label_13;
                                             | label_14:
    0x0003f94c lw t9, -0x75e8(gp)            |     t9 = sym.imp.__stack_chk_fail;
    0x0003f950 jalr t9                       |     t9 ();
    0x0003f954 nop                           |     
                                             | }
    ; assembly                           | /* r2dec pseudo code output */
                                         | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x4dfd0 */
                                         | #include <stdint.h>
                                         |  
    ; (fcn) sym.ap_parse_htaccess ()     | void ap_parse_htaccess () {
    0x0004dfd0 lui gp, 5                 |     
    0x0004dfd4 addiu gp, gp, 0x4f50      |     
    0x0004dfd8 addu gp, gp, t9           |     gp += t9;
    0x0004dfdc addiu sp, sp, -0xc8       |     
    0x0004dfe0 sw s6, 0xb8(sp)           |     *(var_b8h) = s6;
    0x0004dfe4 lw s6, -0x7534(gp)        |     s6 = *(gp);
    0x0004dfe8 sw s3, 0xac(sp)           |     *(var_ach) = s3;
    0x0004dfec lw v1, 0xe0(sp)           |     v1 = *(arg_e0h);
    0x0004dff0 lw v0, (s6)               |     v0 = *(s6);
    0x0004dff4 lw s3, 0x110(a1)          |     s3 = *(a1);
    0x0004dff8 sw gp, 0x28(sp)           |     *(var_28h) = gp;
    0x0004dffc sw s4, 0xb0(sp)           |     *(var_b0h) = s4;
    0x0004e000 sw s2, 0xa8(sp)           |     *(var_a8h) = s2;
    0x0004e004 sw s1, 0xa4(sp)           |     *(var_a4h) = s1;
    0x0004e008 sw s0, 0xa0(sp)           |     *(var_a0h) = s0;
    0x0004e00c sw ra, 0xc4(sp)           |     *(var_c4h) = ra;
    0x0004e010 sw fp, 0xc0(sp)           |     *(var_c0h) = fp;
    0x0004e014 sw s7, 0xbc(sp)           |     *(var_bch) = s7;
    0x0004e018 sw s5, 0xb4(sp)           |     *(var_b4h) = s5;
    0x0004e01c move s0, a1               |     s0 = a1;
    0x0004e020 sw a0, 0x34(sp)           |     *(var_34h) = a0;
    0x0004e024 move s1, a2               |     s1 = a2;
    0x0004e028 sw a3, 0xd4(sp)           |     *(arg_d4h) = a3;
    0x0004e02c lw s4, 0xd8(sp)           |     s4 = *(arg_d8h);
    0x0004e030 lw s2, 0xdc(sp)           |     s2 = *(arg_dch);
    0x0004e034 sw v1, 0x3c(sp)           |     *(var_3ch) = v1;
    0x0004e038 sw v0, 0x9c(sp)           |     *(var_9ch) = v0;
    0x0004e03c sw zero, 0x44(sp)         |     *(var_44h) = 0;
                                         |     if (s3 != 0) {
    0x0004e040 bnez s3, 0x4e058          |         goto label_4;
                                         |     }
    0x0004e044 lw v0, -0x7fac(gp)        |     v0 = *(gp);
    0x0004e048 b 0x4e0c4                 |     goto label_5;
                                         | label_0:
    0x0004e04c lw s3, 0x14(s3)           |     s3 = *((s3 + 5));
                                         |     do {
    0x0004e050 lw v0, -0x7fac(gp)        |         v0 = *(gp);
                                         |         if (s3 == 0) {
    0x0004e054 beqz s3, 0x4e0c4          |             goto label_5;
                                         |         }
                                         | label_4:
    0x0004e058 lw v0, 4(s3)              |         v0 = *((s3 + 1));
    0x0004e05c lw s3, 0x14(s3)           |         s3 = *((s3 + 5));
    0x0004e060 bnel v0, s1, 0x4e050      |         
                                         |     } while (v0 == s1);
    0x0004e064 lw t9, -0x7740(gp)        |     t9 = sym.imp.strcmp;
    0x0004e068 lw a0, (s3)               |     a0 = *(s3);
    0x0004e06c move a1, s2               |     a1 = s2;
    0x0004e070 jalr t9                   |     t9 ();
    0x0004e074 lw gp, 0x28(sp)           |     gp = *(var_28h);
                                         |     if (v0 != 0) {
    0x0004e078 bnez v0, 0x4e04c          |         goto label_0;
                                         |     }
    0x0004e07c lw a0, 0x34(sp)           |     a0 = *(var_34h);
    0x0004e080 lw v1, 0x10(s3)           |     v1 = *((s3 + 4));
    0x0004e084 sw v1, (a0)               |     *(a0) = v1;
                                         | label_2:
    0x0004e088 lw a0, 0x9c(sp)           |     a0 = *(var_9ch);
    0x0004e08c lw v1, (s6)               |     v1 = *(s6);
    0x0004e090 lw ra, 0xc4(sp)           |     ra = *(var_c4h);
                                         |     if (a0 != v1) {
    0x0004e094 bne a0, v1, 0x4e33c       |         goto label_6;
                                         |     }
    0x0004e098 lw fp, 0xc0(sp)           |     fp = *(var_c0h);
    0x0004e09c lw s7, 0xbc(sp)           |     s7 = *(var_bch);
    0x0004e0a0 lw s6, 0xb8(sp)           |     s6 = *(var_b8h);
    0x0004e0a4 lw s5, 0xb4(sp)           |     s5 = *(var_b4h);
    0x0004e0a8 lw s4, 0xb0(sp)           |     s4 = *(var_b0h);
    0x0004e0ac lw s3, 0xac(sp)           |     s3 = *(var_ach);
    0x0004e0b0 lw s2, 0xa8(sp)           |     s2 = *(var_a8h);
    0x0004e0b4 lw s1, 0xa4(sp)           |     s1 = *(var_a4h);
    0x0004e0b8 lw s0, 0xa0(sp)           |     s0 = *(var_a0h);
    0x0004e0bc addiu sp, sp, 0xc8        |     
    0x0004e0c0 jr ra                     |     return v0;
                                         | label_5:
    0x0004e0c4 addiu v1, sp, 0x50        |     v1 = sp + 0x50;
    0x0004e0c8 addiu v0, v0, 0xc58       |     v0 += 0xc58;
    0x0004e0cc sw v1, 0x38(sp)           |     *(var_38h) = v1;
    0x0004e0d0 addiu t0, v0, 0x40        |     t0 = v0 + 0x40;
                                         |     do {
    0x0004e0d4 lw a3, (v0)               |         a3 = *(v0);
    0x0004e0d8 lw a2, 4(v0)              |         a2 = *((v0 + 1));
    0x0004e0dc lw a1, 8(v0)              |         a1 = *((v0 + 2));
    0x0004e0e0 lw a0, 0xc(v0)            |         a0 = *((v0 + 3));
    0x0004e0e4 addiu v0, v0, 0x10        |         v0 += 0x10;
    0x0004e0e8 sw a3, (v1)               |         *(v1) = a3;
    0x0004e0ec sw a2, 4(v1)              |         *((v1 + 1)) = a2;
    0x0004e0f0 sw a1, 8(v1)              |         *((v1 + 2)) = a1;
    0x0004e0f4 sw a0, 0xc(v1)            |         *((v1 + 3)) = a0;
    0x0004e0f8 addiu v1, v1, 0x10        |         v1 += 0x10;
    0x0004e0fc bne v0, t0, 0x4e0d4       |         
                                         |     } while (v0 != t0);
    0x0004e100 lw a1, (v0)               |     a1 = *(v0);
    0x0004e104 lw a0, 4(v0)              |     a0 = *((v0 + 1));
    0x0004e108 lw a2, (s0)               |     a2 = *(s0);
    0x0004e10c lw v0, 8(s0)              |     v0 = *((s0 + 2));
    0x0004e110 sw a1, (v1)               |     *(v1) = a1;
    0x0004e114 sw a0, 4(v1)              |     *((v1 + 1)) = a0;
    0x0004e118 lw v1, 0xd4(sp)           |     v1 = *(arg_d4h);
    0x0004e11c lw t9, -0x7654(gp)        |     t9 = sym.imp.apr_pstrdup;
    0x0004e120 sw s4, 0x5c(sp)           |     *(var_5ch) = s4;
    0x0004e124 move a1, s2               |     a1 = s2;
    0x0004e128 move a0, a2               |     a0 = a2;
    0x0004e12c sw s1, 0x54(sp)           |     *(var_54h) = s1;
    0x0004e130 sw v1, 0x58(sp)           |     *(var_58h) = v1;
    0x0004e134 sw a2, 0x78(sp)           |     *(var_78h) = a2;
    0x0004e138 sw a2, 0x7c(sp)           |     *(var_7ch) = a2;
    0x0004e13c sw v0, 0x80(sp)           |     *(var_80h) = v0;
    0x0004e140 jalr t9                   |     t9 ();
    0x0004e144 lw gp, 0x28(sp)           |     gp = *(var_28h);
    0x0004e148 sw v0, 0x84(sp)           |     *(var_84h) = v0;
    0x0004e14c addiu s7, sp, 0x3c        |     s7 = sp + 0x3c;
    0x0004e150 lw s3, -0x79d0(gp)        |     s3 = sym.ap_run_open_htaccess;
    0x0004e154 addiu fp, sp, 0x44        |     fp = sp + 0x44;
    0x0004e158 addiu s4, sp, 0x48        |     s4 = sp + 0x48;
    0x0004e15c addiu s5, zero, 2         |     s5 = 2;
                                         |     do {
    0x0004e160 lw v0, 0x3c(sp)           |         v0 = *(var_3ch);
                                         | label_1:
    0x0004e164 lb v0, (v0)               |         v0 = *(v0);
    0x0004e168 lw a0, (s0)               |         a0 = *(s0);
                                         |         if (v0 == 0) {
    0x0004e16c beqz v0, 0x4e21c          |             goto label_7;
                                         |         }
    0x0004e170 lw t9, -0x7f00(gp)        |         t9 = sym.ap_getword_conf;
    0x0004e174 move a1, s7               |         a1 = s7;
    0x0004e178 jalr t9                   |         t9 ();
    0x0004e17c move a2, v0               |         a2 = v0;
    0x0004e180 sw s4, 0x10(sp)           |         *(var_10h_2) = s4;
    0x0004e184 move a3, fp               |         a3 = fp;
    0x0004e188 move a1, s2               |         a1 = s2;
    0x0004e18c move a0, s0               |         a0 = s0;
    0x0004e190 move t9, s3               |         t9 = s3;
    0x0004e194 sw zero, 0x48(sp)         |         *(var_48h) = 0;
    0x0004e198 bal 0x4b5f8               |         sym_ap_run_open_htaccess ();
    0x0004e19c lw gp, 0x28(sp)           |         gp = *(var_28h);
                                         |         if (v0 == 0) {
    0x0004e1a0 beqz v0, 0x4e25c          |             goto label_8;
                                         |         }
    0x0004e1a4 addiu v1, zero, 0x14      |         v1 = 0x14;
    0x0004e1a8 beq v0, s5, 0x4e160       |         
                                         |     } while (v0 == s5);
                                         |     if (v0 == v1) {
    0x0004e1ac beql v0, v1, 0x4e164      |         goto label_1;
                                         |     }
    0x0004e1b0 lw v0, 0x3c(sp)           |     v0 = *(var_3ch);
    0x0004e1b4 lw v1, 0x48(sp)           |     v1 = *(var_48h);
    0x0004e1b8 lw a0, -0x7fac(gp)        |     a0 = *(gp);
    0x0004e1bc sw v1, 0x1c(sp)           |     *(var_1ch_2) = v1;
    0x0004e1c0 lw v1, -0x7fac(gp)        |     v1 = *(gp);
    0x0004e1c4 lw t9, -0x7f08(gp)        |     t9 = sym.ap_log_rerror_;
                                         |     /* str.AH00529:__s_pcfg_openfile:_unable_to_check_htaccess_file__ensure_it_is_readable_and_that__s_is_executable */
    0x0004e1c8 addiu v1, v1, 0x984       |     v1 += 0x984;
    0x0004e1cc sw v0, 0x10(sp)           |     *(var_10h_2) = v0;
    0x0004e1d0 addiu a3, zero, 2         |     a3 = 2;
    0x0004e1d4 move a2, zero             |     a2 = 0;
    0x0004e1d8 addiu a1, zero, 0x80c     |     a1 = 0x80c;
                                         |     /* str._usr_src_debug_apache2_2.4.57_r0_httpd_2.4.57_server_config.c */
    0x0004e1dc addiu a0, a0, 0x1f0       |     a0 += aav.0x000001f0;
    0x0004e1e0 sw v1, 0x18(sp)           |     *(var_18h) = v1;
    0x0004e1e4 sw s2, 0x20(sp)           |     *(var_20h_2) = s2;
    0x0004e1e8 sw s0, 0x14(sp)           |     *(var_14h) = s0;
    0x0004e1ec bal 0x530a8               |     sym_ap_log_rerror_ ();
    0x0004e1f0 lw gp, 0x28(sp)           |     gp = *(var_28h);
    0x0004e1f4 lw a0, 0xc0(s0)           |     a0 = *((s0 + 48));
    0x0004e1f8 lw a2, -0x7fac(gp)        |     a2 = *(gp);
    0x0004e1fc lw a1, -0x7fac(gp)        |     a1 = *(gp);
    0x0004e200 lw t9, -0x7590(gp)        |     t9 = sym.imp.apr_table_setn;
                                         |     /* str.Server_unable_to_read_htaccess_file__denying_access_to_be_safe */
    0x0004e204 addiu a2, a2, 0x9f0       |     a2 += 0x9f0;
                                         |     /* str.error_notes */
    0x0004e208 addiu a1, a1, -0x5ee0     |     a1 += -0x5ee0;
    0x0004e20c jalr t9                   |     t9 ();
    0x0004e210 lw gp, 0x28(sp)           |     gp = *(var_28h);
    0x0004e214 addiu v0, zero, 0x193     |     v0 = 0x193;
    0x0004e218 b 0x4e088                 |     goto label_2;
                                         | label_7:
    0x0004e21c move s2, zero             |     s2 = 0;
                                         | label_3:
    0x0004e220 lw t9, -0x7544(gp)        |     t9 = sym.imp.apr_palloc;
    0x0004e224 addiu a1, zero, 0x18      |     a1 = 0x18;
    0x0004e228 jalr t9                   |     t9 ();
    0x0004e22c lw a0, 0x84(sp)           |     a0 = *(var_84h);
    0x0004e230 lw gp, 0x28(sp)           |     gp = *(var_28h);
    0x0004e234 lw v1, 0x110(s0)          |     v1 = *(s0);
    0x0004e238 sw a0, (v0)               |     *(v0) = a0;
    0x0004e23c lw a0, 0xd4(sp)           |     a0 = *(arg_d4h);
    0x0004e240 sw s1, 4(v0)              |     *((v0 + 1)) = s1;
    0x0004e244 sw a0, 8(v0)              |     *((v0 + 2)) = a0;
    0x0004e248 sw s2, 0x10(v0)           |     *((v0 + 4)) = s2;
    0x0004e24c sw v1, 0x14(v0)           |     *((v0 + 5)) = v1;
    0x0004e250 sw v0, 0x110(s0)          |     *(s0) = v0;
    0x0004e254 move v0, zero             |     v0 = 0;
    0x0004e258 b 0x4e088                 |     goto label_2;
                                         | label_8:
    0x0004e25c lw t9, -0x7a1c(gp)        |     t9 = *(gp);
    0x0004e260 lw a0, (s0)               |     a0 = *(s0);
                                         |     /* fcn.00048e90 */
    0x0004e264 addiu t9, t9, -0x7170     |     t9 += -0x7170;
    0x0004e268 sw zero, 0x4c(sp)         |     *(var_4ch) = 0;
    0x0004e26c bal 0x48e90               |     fcn_00048e90 ();
    0x0004e270 lw gp, 0x28(sp)           |     gp = *(var_28h);
    0x0004e274 lw a2, (s0)               |     a2 = *(s0);
    0x0004e278 move s2, v0               |     s2 = v0;
    0x0004e27c lw v0, 0x44(sp)           |     v0 = *(var_44h);
    0x0004e280 lw t9, -0x79e0(gp)        |     t9 = sym.ap_build_config;
    0x0004e284 lw a0, 0x38(sp)           |     a0 = *(var_38h);
    0x0004e288 addiu a3, sp, 0x4c        |     a3 = sp + 0x4c;
    0x0004e28c move a1, a2               |     a1 = a2;
    0x0004e290 sw v0, 0x70(sp)           |     *(var_70h) = v0;
    0x0004e294 bal 0x4cce8               |     sym_ap_build_config ();
    0x0004e298 move s3, v0               |     s3 = v0;
    0x0004e29c lw gp, 0x28(sp)           |     gp = *(var_28h);
                                         |     if (v0 == 0) {
    0x0004e2a0 beqz v0, 0x4e2fc          |         goto label_9;
                                         |     }
    0x0004e2a4 lw t9, -0x79dc(gp)        |     t9 = sym.ap_cfg_closefile;
    0x0004e2a8 lw a0, 0x44(sp)           |     a0 = *(var_44h);
    0x0004e2ac jalr t9                   |     t9 ();
    0x0004e2b0 lw gp, 0x28(sp)           |     gp = *(var_28h);
                                         |     do {
    0x0004e2b4 lw v0, 0x48(sp)           |         v0 = *(var_48h);
    0x0004e2b8 lw a0, -0x7fac(gp)        |         a0 = *(gp);
    0x0004e2bc sw v0, 0x1c(sp)           |         *(var_1ch_2) = v0;
    0x0004e2c0 lw v0, -0x7fac(gp)        |         v0 = *(gp);
    0x0004e2c4 lw t9, -0x7f08(gp)        |         t9 = sym.ap_log_rerror_;
                                         |         /* esilref: '&s: &s' */
    0x0004e2c8 addiu v0, v0, -0x11c0     |         v0 += -0x11c0;
    0x0004e2cc sw v0, 0x18(sp)           |         *(var_18h) = v0;
    0x0004e2d0 sw s3, 0x20(sp)           |         *(var_20h_2) = s3;
    0x0004e2d4 sw s0, 0x14(sp)           |         *(var_14h) = s0;
    0x0004e2d8 sw zero, 0x10(sp)         |         *(var_10h_2) = 0;
    0x0004e2dc addiu a3, zero, 1         |         a3 = 1;
    0x0004e2e0 move a2, zero             |         a2 = 0;
    0x0004e2e4 addiu a1, zero, 0x7fe     |         a1 = 0x7fe;
                                         |         /* str._usr_src_debug_apache2_2.4.57_r0_httpd_2.4.57_server_config.c */
    0x0004e2e8 addiu a0, a0, 0x1f0       |         a0 += aav.0x000001f0;
    0x0004e2ec bal 0x530a8               |         sym_ap_log_rerror_ ();
    0x0004e2f0 lw gp, 0x28(sp)           |         gp = *(var_28h);
    0x0004e2f4 addiu v0, zero, 0x1f4     |         v0 = aav.0x000001f4;
    0x0004e2f8 b 0x4e088                 |         goto label_2;
                                         | label_9:
    0x0004e2fc lw t9, -0x7d24(gp)        |         t9 = sym.ap_walk_config;
    0x0004e300 lw a0, 0x4c(sp)           |         a0 = *(var_4ch);
    0x0004e304 lw a1, 0x38(sp)           |         a1 = *(var_38h);
    0x0004e308 move a2, s2               |         a2 = s2;
    0x0004e30c bal 0x4ca70               |         sym_ap_walk_config ();
    0x0004e310 lw gp, 0x28(sp)           |         gp = *(var_28h);
    0x0004e314 lw a0, 0x44(sp)           |         a0 = *(var_44h);
    0x0004e318 lw t9, -0x79dc(gp)        |         t9 = sym.ap_cfg_closefile;
    0x0004e31c move s3, v0               |         s3 = v0;
    0x0004e320 jalr t9                   |         t9 ();
    0x0004e324 lw gp, 0x28(sp)           |         gp = *(var_28h);
    0x0004e328 bnez s3, 0x4e2b4          |         
                                         |     } while (s3 != 0);
    0x0004e32c lw v0, 0x34(sp)           |     v0 = *(var_34h);
    0x0004e330 lw a0, (s0)               |     a0 = *(s0);
    0x0004e334 sw s2, (v0)               |     *(v0) = s2;
    0x0004e338 b 0x4e220                 |     goto label_3;
                                         | label_6:
    0x0004e33c lw t9, -0x75e8(gp)        |     t9 = sym.imp.__stack_chk_fail;
    0x0004e340 jalr t9                   |     t9 ();
    0x0004e344 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;
                                                 |     if (a0 != a2) {
                                                 |         do {
    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 @ 0x3f9dc */
                                                     | #include <stdint.h>
                                                     |  
    ; (fcn) sym.ap_process_request_internal ()       | void ap_process_request_internal () {
    0x0003f9dc lui gp, 6                             |     
    0x0003f9e0 addiu gp, gp, 0x3544                  |     
    0x0003f9e4 addu gp, gp, t9                       |     gp += t9;
    0x0003f9e8 lw v0, 8(a0)                          |     v0 = *((a0 + 2));
    0x0003f9ec addiu sp, sp, -0x50                   |     
    0x0003f9f0 lw v1, 0x14(a0)                       |     v1 = *((a0 + 5));
    0x0003f9f4 sw s0, 0x3c(sp)                       |     *(var_3ch) = s0;
    0x0003f9f8 move s0, a0                           |     s0 = a0;
    0x0003f9fc lw a0, 0x18(v0)                       |     a0 = *((v0 + 6));
    0x0003fa00 sw gp, 0x28(sp)                       |     *(var_28h) = gp;
    0x0003fa04 sw ra, 0x4c(sp)                       |     *(var_4ch) = ra;
    0x0003fa08 lw a0, (a0)                           |     a0 = *(a0);
    0x0003fa0c sw s3, 0x48(sp)                       |     *(var_48h) = s3;
    0x0003fa10 sw s2, 0x44(sp)                       |     *(var_44h) = s2;
    0x0003fa14 sw s1, 0x40(sp)                       |     *(var_40h) = s1;
    0x0003fa18 lw a1, 0x44(a0)                       |     a1 = *((a0 + 17));
                                                     |     if (v1 == 0) {
    0x0003fa1c beqz v1, 0x3faf0                      |         goto label_32;
                                                     |     }
    0x0003fa20 lw v1, 0xe8(s0)                       |     v1 = *((s0 + 58));
    0x0003fa24 addiu v1, zero, 3                     |     v1 = 3;
                                                     |     if (v1 == 0) {
    0x0003fa28 beqz v1, 0x3faf0                      |         goto label_32;
                                                     |     }
    0x0003fa2c addiu s1, zero, 0xb                   |     s1 = 0xb;
    0x0003fa30 lw a0, 0x148(s0)                      |     a0 = *(s0);
                                                     |     if (a1 != 0) {
    0x0003fa34 movz s1, v1, a1                       |         s1 = v1;
                                                     |     }
    0x0003fa38 addiu a2, zero, 0xa                   |     a2 = 0xa;
    0x0003fa3c addiu v1, zero, 2                     |     v1 = 2;
                                                     |     if (a1 == 0) {
    0x0003fa40 movn v1, a2, a1                       |         v1 = a2;
                                                     |     }
                                                     |     if (a0 == 0) {
    0x0003fa44 beqz a0, 0x3fbe4                      |         goto label_33;
                                                     |     }
    0x0003fa48 lw t9, -0x7ee8(gp)                    |     t9 = sym.ap_normalize_path;
    0x0003fa4c ori a1, v1, 5                         |     a1 = v1 | 5;
    0x0003fa50 jalr t9                               |     t9 ();
    0x0003fa54 lw gp, 0x28(sp)                       |     gp = *(var_28h);
                                                     |     if (v0 == 0) {
    0x0003fa58 beqz v0, 0x3fb18                      |         goto label_34;
                                                     |     }
    0x0003fa5c lw a0, 0x148(s0)                      |     a0 = *(s0);
    0x0003fa60 addiu s3, zero, 1                     |     s3 = 1;
                                                     |     if (a0 == 0) {
    0x0003fa64 beqz a0, 0x3fbe0                      |         goto label_35;
                                                     |     }
    0x0003fa68 lw s2, 0x100(s0)                      |     s2 = *(s0);
                                                     | label_3:
    0x0003fa6c lw s2, (s2)                           |     s2 = *(s2);
    0x0003fa70 lhu a1, 0x5c(s2)                      |     a1 = *((s2 + 46));
    0x0003fa74 andi v0, a1, 0x40                     |     v0 = a1 & 0x40;
    0x0003fa78 lw t9, -0x7b24(gp)                    |     t9 = sym.ap_unescape_url_ex;
                                                     |     if (v0 == 0) {
    0x0003fa7c beqz v0, 0x3fd04                      |         goto label_36;
                                                     |     }
    0x0003fa80 andi a1, a1, 0x80                     |     a1 &= 0x80;
    0x0003fa84 addiu v1, zero, 1                     |     v1 = 1;
    0x0003fa88 addiu v0, zero, 5                     |     v0 = 5;
                                                     |     if (a1 == 0) {
    0x0003fa8c movn v0, v1, a1                       |         v0 = v1;
                                                     |     }
    0x0003fa90 move a1, v0                           |     a1 = v0;
    0x0003fa94 jalr t9                               |     t9 ();
    0x0003fa98 lw gp, 0x28(sp)                       |     gp = *(var_28h);
                                                     |     if (v0 != 0) {
    0x0003fa9c bnez v0, 0x3fd14                      |         goto label_37;
                                                     |     }
                                                     | label_5:
    0x0003faa0 lw v0, 0x5c(s2)                       |     v0 = *((s2 + 23));
    0x0003faa4 addiu v1, zero, 0xc0                  |     v1 = 0xc0;
    0x0003faa8 andi v0, v0, 0xc0                     |     v0 &= 0xc0;
    0x0003faac lw t9, -0x7ee8(gp)                    |     t9 = sym.ap_normalize_path;
                                                     |     if (v0 == v1) {
    0x0003fab0 beq v0, v1, 0x3fda8                   |         goto label_38;
                                                     |     }
                                                     | label_7:
    0x0003fab4 lw t9, -0x7c54(gp)                    |     t9 = *(gp);
                                                     |     if (s3 != 0) {
    0x0003fab8 bnez s3, 0x3fbe0                      |         goto label_35;
                                                     |     }
                                                     |     /* fcn.0003f958 */
    0x0003fabc addiu s3, t9, -0x6a8                  |     s3 = t9 + -aav.0x000006a8;
                                                     | label_1:
    0x0003fac0 move t9, s3                           |     t9 = s3;
                                                     | label_2:
    0x0003fac4 move a0, s0                           |     a0 = s0;
    0x0003fac8 bal 0x3f958                           |     fcn_0003f958 ();
    0x0003facc lw gp, 0x28(sp)                       |     gp = *(var_28h);
                                                     |     if (v0 == 0) {
    0x0003fad0 beqz v0, 0x3fbcc                      |         goto label_39;
                                                     |     }
                                                     |     do {
                                                     | label_0:
    0x0003fad4 lw ra, 0x4c(sp)                       |         ra = *(var_4ch);
                                                     | label_4:
    0x0003fad8 lw s3, 0x48(sp)                       |         s3 = *(var_48h);
                                                     | label_6:
    0x0003fadc lw s2, 0x44(sp)                       |         s2 = *(var_44h);
    0x0003fae0 lw s1, 0x40(sp)                       |         s1 = *(var_40h);
    0x0003fae4 lw s0, 0x3c(sp)                       |         s0 = *(var_3ch);
    0x0003fae8 addiu sp, sp, 0x50                    |         
    0x0003faec jr ra                                 |         return v0;
                                                     | label_32:
    0x0003faf0 lw a0, 0x148(s0)                      |         a0 = *(s0);
    0x0003faf4 addiu s1, zero, 0xa                   |         s1 = 0xa;
    0x0003faf8 addiu v0, zero, 2                     |         v0 = 2;
                                                     |         if (a1 != 0) {
    0x0003fafc movz s1, v0, a1                       |             s1 = v0;
                                                     |         }
                                                     |         if (a0 != 0) {
    0x0003fb00 beqz a0, 0x3fb70                      |             
    0x0003fb04 lw t9, -0x7ee8(gp)                    |             t9 = sym.ap_normalize_path;
    0x0003fb08 ori a1, s1, 4                         |             a1 = s1 | 4;
    0x0003fb0c jalr t9                               |             t9 ();
    0x0003fb10 lw gp, 0x28(sp)                       |             gp = *(var_28h);
                                                     |             if (v0 != 0) {
    0x0003fb14 bnez v0, 0x3fb70                      |                 goto label_40;
                                                     |             }
                                                     | label_34:
    0x0003fb18 lw v0, 0xe0(s0)                       |             v0 = *((s0 + 56));
    0x0003fb1c lw a0, -0x7fac(gp)                    |             a0 = *(gp);
    0x0003fb20 sw v0, 0x1c(sp)                       |             *(var_1ch_2) = v0;
    0x0003fb24 lw v0, -0x7fac(gp)                    |             v0 = *(gp);
    0x0003fb28 lw t9, -0x7f08(gp)                    |             t9 = sym.ap_log_rerror_;
                                                     |             /* str.AH10244:_invalid_URI_path___s_ */
    0x0003fb2c addiu v0, v0, -0xd90                  |             v0 += -0xd90;
    0x0003fb30 sw v0, 0x18(sp)                       |             *(var_18h_2) = v0;
    0x0003fb34 sw s0, 0x14(sp)                       |             *(var_14h_2) = s0;
    0x0003fb38 sw zero, 0x10(sp)                     |             *(var_10h) = 0;
    0x0003fb3c addiu a3, zero, 3                     |             a3 = 3;
    0x0003fb40 move a2, zero                         |             a2 = 0;
    0x0003fb44 addiu a1, zero, 0xd5                  |             a1 = 0xd5;
                                                     |             /* esilref: '/usr/src/debug/apache2/2.4.57-r0/httpd-2.4.57/server/request.c' */
    0x0003fb48 addiu a0, a0, -0x1258                 |             a0 += -0x1258;
    0x0003fb4c bal 0x530a8                           |             sym_ap_log_rerror_ ();
    0x0003fb50 lw ra, 0x4c(sp)                       |             ra = *(var_4ch);
    0x0003fb54 lw s3, 0x48(sp)                       |             s3 = *(var_48h);
    0x0003fb58 lw s2, 0x44(sp)                       |             s2 = *(var_44h);
    0x0003fb5c lw s1, 0x40(sp)                       |             s1 = *(var_40h);
    0x0003fb60 lw s0, 0x3c(sp)                       |             s0 = *(var_3ch);
    0x0003fb64 addiu v0, zero, 0x190                 |             v0 = aav.0x00000190;
    0x0003fb68 addiu sp, sp, 0x50                    |             
    0x0003fb6c jr ra                                 |             return v0;
                                                     |         }
                                                     | label_40:
    0x0003fb70 lw t9, -0x7c54(gp)                    |         t9 = *(gp);
    0x0003fb74 move a0, s0                           |         a0 = s0;
                                                     |         /* fcn.0003f958 */
    0x0003fb78 addiu s3, t9, -0x6a8                  |         s3 = t9 + -aav.0x000006a8;
    0x0003fb7c move t9, s3                           |         t9 = s3;
    0x0003fb80 lw s2, 0x100(s0)                      |         s2 = *(s0);
    0x0003fb84 bal 0x3f958                           |         fcn_0003f958 ();
    0x0003fb88 lw gp, 0x28(sp)                       |         gp = *(var_28h);
    0x0003fb8c bnez v0, 0x3fad4                      |         
                                                     |     } while (v0 != 0);
    0x0003fb90 lw t9, -0x7b20(gp)                    |     t9 = sym.ap_run_pre_translate_name;
    0x0003fb94 move a0, s0                           |     a0 = s0;
    0x0003fb98 bal 0x3c4f4                           |     sym_ap_run_pre_translate_name ();
    0x0003fb9c addiu v1, v0, -0x190                  |     v1 = v0 + -aav.0x00000190;
    0x0003fba0 sltiu v1, v1, 0xc8                    |     v1 = (v1 < 0xc8) ? 1 : 0;
    0x0003fba4 lw gp, 0x28(sp)                       |     gp = *(var_28h);
                                                     |     if (v1 != 0) {
    0x0003fba8 bnez v1, 0x3fad4                      |         goto label_0;
                                                     |     }
    0x0003fbac addiu v1, zero, -2                    |     v1 = -2;
    0x0003fbb0 sw s2, 0x100(s0)                      |     *(s0) = s2;
                                                     |     if (v0 == v1) {
    0x0003fbb4 beq v0, v1, 0x3fac0                   |         goto label_1;
                                                     |     }
    0x0003fbb8 lw a0, 0x148(s0)                      |     a0 = *(s0);
    0x0003fbbc move t9, s3                           |     t9 = s3;
                                                     |     if (a0 == 0) {
    0x0003fbc0 beqz a0, 0x3fac4                      |         goto label_2;
                                                     |     }
    0x0003fbc4 move s3, zero                         |     s3 = 0;
    0x0003fbc8 b 0x3fa6c                             |     goto label_3;
                                                     | label_39:
    0x0003fbcc lw t9, -0x7b1c(gp)                    |     t9 = sym.ap_run_translate_name;
    0x0003fbd0 move a0, s0                           |     a0 = s0;
    0x0003fbd4 bal 0x3c6ec                           |     sym_ap_run_translate_name ();
    0x0003fbd8 lw gp, 0x28(sp)                       |     gp = *(var_28h);
                                                     |     if (v0 != 0) {
    0x0003fbdc bnez v0, 0x3fdbc                      |         goto label_41;
                                                     |     }
                                                     | label_35:
    0x0003fbe0 lw v0, 8(s0)                          |     v0 = *((s0 + 2));
                                                     | label_33:
    0x0003fbe4 lw v0, 0x1c(v0)                       |     v0 = *((v0 + 7));
    0x0003fbe8 lw t9, -0x7b18(gp)                    |     t9 = sym.ap_run_map_to_storage;
    0x0003fbec sw v0, 0x100(s0)                      |     *(s0) = v0;
    0x0003fbf0 move a0, s0                           |     a0 = s0;
    0x0003fbf4 bal 0x3c8e8                           |     sym_ap_run_map_to_storage ();
    0x0003fbf8 lw gp, 0x28(sp)                       |     gp = *(var_28h);
                                                     |     if (v0 != 0) {
    0x0003fbfc bnez v0, 0x3fad4                      |         goto label_0;
                                                     |     }
    0x0003fc00 lw t9, -0x7c54(gp)                    |     t9 = *(gp);
                                                     |     /* fcn.0003f958 */
    0x0003fc04 addiu t9, t9, -0x6a8                  |     t9 += -aav.0x000006a8;
    0x0003fc08 move a0, s0                           |     a0 = s0;
    0x0003fc0c bal 0x3f958                           |     fcn_0003f958 ();
    0x0003fc10 lw gp, 0x28(sp)                       |     gp = *(var_28h);
                                                     |     if (v0 != 0) {
    0x0003fc14 bnez v0, 0x3fad4                      |         goto label_0;
                                                     |     }
    0x0003fc18 lw t9, -0x7b14(gp)                    |     t9 = sym.ap_run_post_perdir_config;
    0x0003fc1c move a0, s0                           |     a0 = s0;
    0x0003fc20 bal 0x3dc9c                           |     sym_ap_run_post_perdir_config ();
    0x0003fc24 lw gp, 0x28(sp)                       |     gp = *(var_28h);
                                                     |     if (v0 != 0) {
    0x0003fc28 bnez v0, 0x3fad4                      |         goto label_0;
                                                     |     }
    0x0003fc2c lw v0, 0x14(s0)                       |     v0 = *((s0 + 5));
    0x0003fc30 lw t9, -0x7b10(gp)                    |     t9 = sym.ap_run_header_parser;
                                                     |     if (v0 == 0) {
    0x0003fc34 beqz v0, 0x3fdf0                      |         goto label_42;
                                                     |     }
    0x0003fc38 lw v1, 0x10(s0)                       |     v1 = *((s0 + 4));
    0x0003fc3c lw a0, 0x100(s0)                      |     a0 = *(s0);
                                                     |     if (v1 == 0) {
    0x0003fc40 beqz v1, 0x3fe2c                      |         goto label_43;
                                                     |     }
    0x0003fc44 lw a1, 0x100(v1)                      |     a1 = *(v1);
    0x0003fc48 lw v1, 0x100(v0)                      |     v1 = *(v0);
                                                     |     if (a1 == a0) {
    0x0003fc4c bnel a1, a0, 0x3fe30                  |         goto label_44;
                                                     |     }
    0x0003fc50 lw a0, 0xd8(v1)                       |     a0 = *((v1 + 54));
                                                     | label_8:
    0x0003fc54 lw v0, 0xdc(v1)                       |     v0 = *((v1 + 55));
    0x0003fc58 sw a0, 0xd8(s0)                       |     *((s0 + 54)) = a0;
    0x0003fc5c sw v0, 0xdc(s0)                       |     *((s0 + 55)) = v0;
                                                     | label_12:
    0x0003fc60 lw t9, -0x7b0c(gp)                    |     t9 = sym.ap_run_type_checker;
                                                     | label_9:
    0x0003fc64 move a0, s0                           |     a0 = s0;
    0x0003fc68 bal 0x3ced4                           |     sym_ap_run_type_checker ();
    0x0003fc6c lw gp, 0x28(sp)                       |     gp = *(var_28h);
                                                     |     if (v0 != 0) {
    0x0003fc70 bnez v0, 0x3fed0                      |         goto label_45;
                                                     |     }
    0x0003fc74 lw t9, -0x7b08(gp)                    |     t9 = sym.ap_run_fixups;
    0x0003fc78 move a0, s0                           |     a0 = s0;
    0x0003fc7c bal 0x3cce0                           |     sym_ap_run_fixups ();
    0x0003fc80 lw gp, 0x28(sp)                       |     gp = *(var_28h);
                                                     |     if (v0 == 0) {
    0x0003fc84 beqz v0, 0x3fad4                      |         goto label_0;
                                                     |     }
    0x0003fc88 lw a0, 0x108(s0)                      |     a0 = *(s0);
                                                     |     if (a0 == 0) {
    0x0003fc8c beql a0, zero, 0x4003c                |         goto label_46;
                                                     |     }
    0x0003fc90 lw v1, 4(s0)                          |     v1 = *((s0 + 1));
                                                     | label_19:
    0x0003fc94 lw v1, (a0)                           |     v1 = *(a0);
                                                     |     if (v1 == 0) {
                                                     | label_18:
    0x0003fc98 beql v1, zero, 0x3ff9c                |         goto label_47;
                                                     |     }
    0x0003fc9c lw v1, 4(a0)                          |     v1 = *((a0 + 1));
    0x0003fca0 lb v1, (v1)                           |     v1 = *(v1);
                                                     |     if (v1 < 0) {
    0x0003fca4 bltzl v1, 0x3ff9c                     |         goto label_47;
                                                     |     }
    0x0003fca8 lw v1, 4(a0)                          |     v1 = *((a0 + 1));
    0x0003fcac slti v1, v1, 0xa                      |     v1 = (v1 < 0xa) ? 1 : 0;
    0x0003fcb0 xori v1, v1, 1                        |     v1 ^= 1;
                                                     | label_15:
    0x0003fcb4 lw ra, 0x4c(sp)                       |     ra = *(var_4ch);
                                                     |     if (v1 == 0) {
    0x0003fcb8 beqz v1, 0x3fad8                      |         goto label_4;
                                                     |     }
    0x0003fcbc lw v1, 0xe4(s0)                       |     v1 = *((s0 + 57));
    0x0003fcc0 lw a0, -0x7fac(gp)                    |     a0 = *(gp);
    0x0003fcc4 sw v1, 0x20(sp)                       |     *(var_20h_2) = v1;
    0x0003fcc8 lw v1, -0x7fac(gp)                    |     v1 = *(gp);
    0x0003fccc lw t9, -0x7f08(gp)                    |     t9 = sym.ap_log_rerror_;
                                                     |     /* str.fixups_hook_gave__d:__s */
    0x0003fcd0 addiu v1, v1, -0xb44                  |     v1 += -0xb44;
    0x0003fcd4 sw v0, 0x1c(sp)                       |     *(var_1ch_2) = v0;
    0x0003fcd8 sw v0, 0x34(sp)                       |     *(var_1ch) = v0;
    0x0003fcdc sw v1, 0x18(sp)                       |     *(var_18h_2) = v1;
    0x0003fce0 sw s0, 0x14(sp)                       |     *(var_14h_2) = s0;
    0x0003fce4 sw zero, 0x10(sp)                     |     *(var_10h) = 0;
    0x0003fce8 addiu a3, zero, 0xa                   |     a3 = 0xa;
    0x0003fcec move a2, zero                         |     a2 = 0;
    0x0003fcf0 addiu a1, zero, 0x1a2                 |     a1 = 0x1a2;
                                                     |     /* esilref: '/usr/src/debug/apache2/2.4.57-r0/httpd-2.4.57/server/request.c' */
    0x0003fcf4 addiu a0, a0, -0x1258                 |     a0 += -0x1258;
    0x0003fcf8 bal 0x530a8                           |     sym_ap_log_rerror_ ();
    0x0003fcfc lw v0, 0x34(sp)                       |     v0 = *(var_1ch);
    0x0003fd00 b 0x3fad4                             |     goto label_0;
                                                     | label_36:
    0x0003fd04 addiu a1, zero, 3                     |     a1 = 3;
    0x0003fd08 jalr t9                               |     t9 ();
    0x0003fd0c lw gp, 0x28(sp)                       |     gp = *(var_28h);
                                                     |     if (v0 == 0) {
    0x0003fd10 beqz v0, 0x3faa0                      |         goto label_5;
                                                     |     }
                                                     | label_37:
    0x0003fd14 addiu v1, zero, 0x194                 |     v1 = aav.0x00000194;
    0x0003fd18 lw ra, 0x4c(sp)                       |     ra = *(var_4ch);
                                                     |     if (v0 != v1) {
    0x0003fd1c bne v0, v1, 0x3fad8                   |         goto label_4;
                                                     |     }
    0x0003fd20 lhu v1, 0x5c(s2)                      |     v1 = *((s2 + 46));
    0x0003fd24 andi v1, v1, 0x40                     |     v1 &= 0x40;
    0x0003fd28 lw s3, 0x48(sp)                       |     s3 = *(var_48h);
                                                     |     if (v1 == 0) {
    0x0003fd2c bnel v1, zero, 0x3fadc                |         goto label_6;
                                                     |     }
    0x0003fd30 lw a0, 0x108(s0)                      |     a0 = *(s0);
                                                     |     if (a0 == 0) {
    0x0003fd34 beql a0, zero, 0x3ff84                |         goto label_48;
                                                     |     }
    0x0003fd38 lw v1, 4(s0)                          |     v1 = *((s0 + 1));
                                                     | label_14:
    0x0003fd3c lw v1, (a0)                           |     v1 = *(a0);
                                                     |     if (v1 == 0) {
                                                     | label_13:
    0x0003fd40 beql v1, zero, 0x3fee0                |         goto label_49;
                                                     |     }
    0x0003fd44 lw v1, 4(a0)                          |     v1 = *((a0 + 1));
    0x0003fd48 lb v1, (v1)                           |     v1 = *(v1);
                                                     |     if (v1 < 0) {
    0x0003fd4c bltzl v1, 0x3fee0                     |         goto label_49;
                                                     |     }
    0x0003fd50 lw v1, 4(a0)                          |     v1 = *((a0 + 1));
    0x0003fd54 slti v1, v1, 6                        |     v1 = (v1 < 6) ? 1 : 0;
    0x0003fd58 xori v1, v1, 1                        |     v1 ^= 1;
                                                     | label_11:
    0x0003fd5c lw ra, 0x4c(sp)                       |     ra = *(var_4ch);
                                                     |     if (v1 == 0) {
    0x0003fd60 beqz v1, 0x3fad8                      |         goto label_4;
                                                     |     }
    0x0003fd64 lw v1, 0xe0(s0)                       |     v1 = *((s0 + 56));
    0x0003fd68 lw a0, -0x7fac(gp)                    |     a0 = *(gp);
    0x0003fd6c sw v1, 0x1c(sp)                       |     *(var_1ch_2) = v1;
    0x0003fd70 lw v1, -0x7fac(gp)                    |     v1 = *(gp);
    0x0003fd74 lw t9, -0x7f08(gp)                    |     t9 = sym.ap_log_rerror_;
                                                     |     /* str.AH00026:_found___2f__encoded____in_URI_path___s___returning_404 */
    0x0003fd78 addiu v1, v1, -0xd70                  |     v1 += -0xd70;
    0x0003fd7c sw v0, 0x34(sp)                       |     *(var_1ch) = v0;
    0x0003fd80 sw v1, 0x18(sp)                       |     *(var_18h_2) = v1;
    0x0003fd84 sw s0, 0x14(sp)                       |     *(var_14h_2) = s0;
    0x0003fd88 sw zero, 0x10(sp)                     |     *(var_10h) = 0;
    0x0003fd8c addiu a3, zero, 6                     |     a3 = 6;
    0x0003fd90 move a2, zero                         |     a2 = 0;
    0x0003fd94 addiu a1, zero, 0x102                 |     a1 = 0x102;
                                                     |     /* esilref: '/usr/src/debug/apache2/2.4.57-r0/httpd-2.4.57/server/request.c' */
    0x0003fd98 addiu a0, a0, -0x1258                 |     a0 += -0x1258;
    0x0003fd9c bal 0x530a8                           |     sym_ap_log_rerror_ ();
    0x0003fda0 lw v0, 0x34(sp)                       |     v0 = *(var_1ch);
    0x0003fda4 b 0x3fad4                             |     goto label_0;
                                                     | label_38:
    0x0003fda8 lw a0, 0x148(s0)                      |     a0 = *(s0);
    0x0003fdac move a1, s1                           |     a1 = s1;
    0x0003fdb0 jalr t9                               |     t9 ();
    0x0003fdb4 lw gp, 0x28(sp)                       |     gp = *(var_28h);
    0x0003fdb8 b 0x3fab4                             |     goto label_7;
                                                     | label_41:
    0x0003fdbc lw a1, -0x7fac(gp)                    |     a1 = *(gp);
    0x0003fdc0 move a2, s0                           |     a2 = s0;
                                                     |     /* str.translate */
    0x0003fdc4 addiu a1, a1, -0xd2c                  |     a1 += -aav.0x00000d2c;
                                                     | label_10:
    0x0003fdc8 move a0, v0                           |     a0 = v0;
                                                     | label_21:
    0x0003fdcc lw t9, -0x7c54(gp)                    |     t9 = *(gp);
    0x0003fdd0 lw ra, 0x4c(sp)                       |     ra = *(var_4ch);
    0x0003fdd4 lw s3, 0x48(sp)                       |     s3 = *(var_48h);
    0x0003fdd8 lw s2, 0x44(sp)                       |     s2 = *(var_44h);
    0x0003fddc lw s1, 0x40(sp)                       |     s1 = *(var_40h);
    0x0003fde0 lw s0, 0x3c(sp)                       |     s0 = *(var_3ch);
    0x0003fde4 addiu t9, t9, -0x3d60                 |     t9 += -0x3d60;
    0x0003fde8 addiu sp, sp, 0x50                    |     
    0x0003fdec b 0x3c2a0                             |     void (*0x3c2a0)() ();
                                                     | label_42:
    0x0003fdf0 move a0, s0                           |     a0 = s0;
    0x0003fdf4 bal 0x4a3a8                           |     sym_ap_run_header_parser ();
    0x0003fdf8 lw gp, 0x28(sp)                       |     gp = *(var_28h);
                                                     |     if (v0 != 0) {
    0x0003fdfc bnez v0, 0x3fad4                      |         goto label_0;
                                                     |     }
    0x0003fe00 lw v1, 0x10(s0)                       |     v1 = *((s0 + 4));
                                                     |     if (v1 == 0) {
    0x0003fe04 beql v1, zero, 0x3fe20                |         goto label_50;
                                                     |     }
    0x0003fe08 lw v0, 0x14(s0)                       |     v0 = *((s0 + 5));
    0x0003fe0c lw v0, 0x100(v1)                      |     v0 = *(v1);
    0x0003fe10 lw a0, 0x100(s0)                      |     a0 = *(s0);
                                                     |     if (v0 == a0) {
    0x0003fe14 beql v0, a0, 0x3fc54                  |         goto label_8;
                                                     |     }
    0x0003fe18 lw a0, 0xd8(v1)                       |     a0 = *((v1 + 54));
    0x0003fe1c lw v0, 0x14(s0)                       |     v0 = *((s0 + 5));
                                                     |     if (v0 != 0) {
                                                     | label_50:
    0x0003fe20 beql v0, zero, 0x3fe3c                |         
    0x0003fe24 lw v0, 0xd8(s0)                       |         v0 = *((s0 + 54));
    0x0003fe28 lw a0, 0x100(s0)                      |         a0 = *(s0);
                                                     | label_43:
    0x0003fe2c lw v1, 0x100(v0)                      |         v1 = *(v0);
                                                     |         if (v1 == a0) {
                                                     | label_44:
    0x0003fe30 beql v1, a0, 0x3ff74                  |             goto label_51;
                                                     |         }
    0x0003fe34 lw v1, 0xd8(v0)                       |         v1 = *((v0 + 54));
    0x0003fe38 lw v0, 0xd8(s0)                       |         v0 = *((s0 + 54));
                                                     |     }
    0x0003fe3c lw a1, -0x7fac(gp)                    |     a1 = *(gp);
                                                     |     if (v0 != 0) {
    0x0003fe40 beqz v0, 0x3fe60                      |         
    0x0003fe44 lw t9, -0x7668(gp)                    |         t9 = sym.imp.apr_table_get;
    0x0003fe48 lw a0, 0xc0(s0)                       |         a0 = *((s0 + 48));
                                                     |         /* str.AP_GET_BASIC_AUTH_PW_NOTE */
    0x0003fe4c addiu a1, a1, -0x51f0                 |         a1 += -0x51f0;
    0x0003fe50 jalr t9                               |         t9 ();
    0x0003fe54 lw gp, 0x28(sp)                       |         gp = *(var_28h);
                                                     |         if (v0 == 0) {
    0x0003fe58 beqz v0, 0x3fe60                      |             goto label_52;
                                                     |         }
    0x0003fe5c sw zero, 0xd8(s0)                     |         *((s0 + 54)) = 0;
                                                     |     }
                                                     | label_52:
    0x0003fe60 lw t9, -0x7b44(gp)                    |     t9 = sym.ap_satisfies;
    0x0003fe64 move a0, s0                           |     a0 = s0;
    0x0003fe68 bal 0x36968                           |     sym_ap_satisfies ();
    0x0003fe6c addiu v1, zero, 1                     |     v1 = 1;
    0x0003fe70 lw gp, 0x28(sp)                       |     gp = *(var_28h);
                                                     |     if (v0 == v1) {
    0x0003fe74 beq v0, v1, 0x3feec                   |         goto label_53;
                                                     |     }
    0x0003fe78 addiu v1, zero, 2                     |     v1 = 2;
    0x0003fe7c lw t9, -0x7b40(gp)                    |     t9 = sym.ap_run_access_checker;
                                                     |     if (v0 == v1) {
    0x0003fe80 beq v0, v1, 0x3fe90                   |         goto label_54;
                                                     |     }
    0x0003fe84 lw t9, -0x7b0c(gp)                    |     t9 = sym.ap_run_type_checker;
                                                     |     if (v0 != 0) {
    0x0003fe88 bnez v0, 0x3fc64                      |         goto label_9;
                                                     |     }
    0x0003fe8c lw t9, -0x7b40(gp)                    |     t9 = sym.ap_run_access_checker;
                                                     | label_54:
    0x0003fe90 move a0, s0                           |     a0 = s0;
    0x0003fe94 bal 0x3d0d0                           |     sym_ap_run_access_checker ();
    0x0003fe98 lw gp, 0x28(sp)                       |     gp = *(var_28h);
                                                     |     if (v0 != 0) {
    0x0003fe9c bnez v0, 0x3ffb4                      |         goto label_55;
                                                     |     }
    0x0003fea0 lw t9, -0x7b3c(gp)                    |     t9 = sym.ap_run_access_checker_ex;
    0x0003fea4 move a0, s0                           |     a0 = s0;
    0x0003fea8 bal 0x3d2c4                           |     sym_ap_run_access_checker_ex ();
    0x0003feac addiu v1, zero, -1                    |     v1 = -1;
    0x0003feb0 lw gp, 0x28(sp)                       |     gp = *(var_28h);
                                                     |     if (v0 == v1) {
    0x0003feb4 beq v0, v1, 0x40054                   |         goto label_24;
                                                     |     }
                                                     |     if (v0 == 0) {
    0x0003feb8 beql v0, zero, 0x40150                |         goto label_56;
                                                     |     }
    0x0003febc lw t9, -0x7b04(gp)                    |     t9 = sym.ap_run_force_authn;
    0x0003fec0 lw a1, -0x7fac(gp)                    |     a1 = *(gp);
                                                     | label_17:
    0x0003fec4 move a2, s0                           |     a2 = s0;
                                                     |     /* str.check_access */
    0x0003fec8 addiu a1, a1, -0xb2c                  |     a1 += -0xb2c;
    0x0003fecc b 0x3fdc8                             |     goto label_10;
                                                     | label_45:
    0x0003fed0 lw a1, -0x7fac(gp)                    |     a1 = *(gp);
    0x0003fed4 move a2, s0                           |     a2 = s0;
                                                     |     /* str.find_types */
    0x0003fed8 addiu a1, a1, -0xb50                  |     a1 += -0xb50;
    0x0003fedc b 0x3fdc8                             |     goto label_10;
                                                     | label_49:
    0x0003fee0 slti v1, v1, 6                        |     v1 = (v1 < 6) ? 1 : 0;
    0x0003fee4 xori v1, v1, 1                        |     v1 ^= 1;
    0x0003fee8 b 0x3fd5c                             |     goto label_11;
                                                     | label_53:
    0x0003feec lw t9, -0x7b40(gp)                    |     t9 = sym.ap_run_access_checker;
    0x0003fef0 move a0, s0                           |     a0 = s0;
    0x0003fef4 bal 0x3d0d0                           |     sym_ap_run_access_checker ();
    0x0003fef8 lw gp, 0x28(sp)                       |     gp = *(var_28h);
                                                     |     if (v0 != 0) {
    0x0003fefc bnez v0, 0x3ffc4                      |         goto label_57;
                                                     |     }
    0x0003ff00 lw v1, 0x108(s0)                      |     v1 = *(s0);
                                                     |     if (v1 == 0) {
    0x0003ff04 beql v1, zero, 0x400c4                |         goto label_58;
                                                     |     }
    0x0003ff08 lw v0, 4(s0)                          |     v0 = *((s0 + 1));
                                                     | label_23:
    0x0003ff0c lw v0, (v1)                           |     v0 = *(v1);
                                                     |     if (v0 == 0) {
                                                     | label_22:
    0x0003ff10 beql v0, zero, 0x3ffa8                |         goto label_59;
                                                     |     }
    0x0003ff14 lw v0, 4(v1)                          |     v0 = *((v1 + 1));
    0x0003ff18 lb v0, (v0)                           |     v0 = *(v0);
                                                     |     if (v0 < 0) {
    0x0003ff1c bltzl v0, 0x3ffa8                     |         goto label_59;
                                                     |     }
    0x0003ff20 lw v0, 4(v1)                          |     v0 = *((v1 + 1));
    0x0003ff24 slti v0, v0, 0xa                      |     v0 = (v0 < 0xa) ? 1 : 0;
    0x0003ff28 xori v0, v0, 1                        |     v0 ^= 1;
                                                     | label_16:
    0x0003ff2c lw t9, -0x7b0c(gp)                    |     t9 = sym.ap_run_type_checker;
                                                     |     if (v0 == 0) {
    0x0003ff30 beqz v0, 0x3fc64                      |         goto label_9;
                                                     |     }
    0x0003ff34 lw v0, 0xe4(s0)                       |     v0 = *((s0 + 57));
    0x0003ff38 lw a0, -0x7fac(gp)                    |     a0 = *(gp);
    0x0003ff3c sw v0, 0x1c(sp)                       |     *(var_1ch_2) = v0;
    0x0003ff40 lw v0, -0x7fac(gp)                    |     v0 = *(gp);
    0x0003ff44 lw t9, -0x7f08(gp)                    |     t9 = sym.ap_log_rerror_;
                                                     |     /* str.request_authorized_without_authentication_by_access_checker_hook_and_Satisfy_any:__s */
    0x0003ff48 addiu v0, v0, -0xc20                  |     v0 += -0xc20;
    0x0003ff4c sw v0, 0x18(sp)                       |     *(var_18h_2) = v0;
    0x0003ff50 sw s0, 0x14(sp)                       |     *(var_14h_2) = s0;
    0x0003ff54 sw zero, 0x10(sp)                     |     *(var_10h) = 0;
    0x0003ff58 addiu a3, zero, 0xa                   |     a3 = 0xa;
    0x0003ff5c move a2, zero                         |     a2 = 0;
    0x0003ff60 addiu a1, zero, 0x175                 |     a1 = 0x175;
                                                     |     /* esilref: '/usr/src/debug/apache2/2.4.57-r0/httpd-2.4.57/server/request.c' */
    0x0003ff64 addiu a0, a0, -0x1258                 |     a0 += -0x1258;
    0x0003ff68 bal 0x530a8                           |     sym_ap_log_rerror_ ();
    0x0003ff6c lw gp, 0x28(sp)                       |     gp = *(var_28h);
    0x0003ff70 b 0x3fc60                             |     goto label_12;
                                                     | label_51:
    0x0003ff74 lw v0, 0xdc(v0)                       |     v0 = *((v0 + 55));
    0x0003ff78 sw v1, 0xd8(s0)                       |     *((s0 + 54)) = v1;
    0x0003ff7c sw v0, 0xdc(s0)                       |     *((s0 + 55)) = v0;
    0x0003ff80 b 0x3fc60                             |     goto label_12;
                                                     | label_48:
    0x0003ff84 lw a0, 0x60(v1)                       |     a0 = *((v1 + 24));
    0x0003ff88 lw v1, (a0)                           |     v1 = *(a0);
                                                     |     if (a0 == 0) {
    0x0003ff8c bnel a0, zero, 0x3fd40                |         goto label_13;
                                                     |     }
    0x0003ff90 lw a0, 8(s0)                          |     a0 = *((s0 + 2));
    0x0003ff94 addiu a0, a0, 0x10                    |     a0 += 0x10;
    0x0003ff98 b 0x3fd3c                             |     goto label_14;
                                                     | label_47:
    0x0003ff9c slti v1, v1, 0xa                      |     v1 = (v1 < 0xa) ? 1 : 0;
    0x0003ffa0 xori v1, v1, 1                        |     v1 ^= 1;
    0x0003ffa4 b 0x3fcb4                             |     goto label_15;
                                                     | label_59:
    0x0003ffa8 slti v0, v0, 0xa                      |     v0 = (v0 < 0xa) ? 1 : 0;
    0x0003ffac xori v0, v0, 1                        |     v0 ^= 1;
    0x0003ffb0 b 0x3ff2c                             |     goto label_16;
                                                     | label_55:
    0x0003ffb4 lw a1, -0x7fac(gp)                    |     a1 = *(gp);
    0x0003ffb8 move a2, s0                           |     a2 = s0;
                                                     |     /* str.check_access__with_Satisfy_All_ */
    0x0003ffbc addiu a1, a1, -0xd20                  |     a1 += -0xd20;
    0x0003ffc0 b 0x3fdc8                             |     goto label_10;
                                                     | label_57:
    0x0003ffc4 lw t9, -0x7b3c(gp)                    |     t9 = sym.ap_run_access_checker_ex;
    0x0003ffc8 move a0, s0                           |     a0 = s0;
    0x0003ffcc bal 0x3d2c4                           |     sym_ap_run_access_checker_ex ();
    0x0003ffd0 addiu v1, zero, -1                    |     v1 = -1;
    0x0003ffd4 lw gp, 0x28(sp)                       |     gp = *(var_28h);
                                                     |     if (v0 == v1) {
    0x0003ffd8 beq v0, v1, 0x3fff8                   |         goto label_60;
                                                     |     }
    0x0003ffdc lw a1, -0x7fac(gp)                    |     a1 = *(gp);
                                                     |     if (v0 != 0) {
    0x0003ffe0 bnez v0, 0x3fec4                      |         goto label_17;
                                                     |     }
    0x0003ffe4 lw t9, -0x7b04(gp)                    |     t9 = sym.ap_run_force_authn;
    0x0003ffe8 move a0, s0                           |     a0 = s0;
    0x0003ffec bal 0x3e0bc                           |     sym_ap_run_force_authn ();
    0x0003fff0 lw gp, 0x28(sp)                       |     gp = *(var_28h);
                                                     |     if (v0 != 0) {
    0x0003fff4 bnez v0, 0x400dc                      |         goto label_61;
                                                     |     }
                                                     | label_60:
    0x0003fff8 lw t9, -0x7b00(gp)                    |     t9 = sym.ap_run_check_user_id;
    0x0003fffc move a0, s0                           |     a0 = s0;
    0x00040000 bal 0x3cae4                           |     sym_ap_run_check_user_id ();
    0x00040004 lw gp, 0x28(sp)                       |     gp = *(var_28h);
                                                     |     if (v0 != 0) {
    0x00040008 bnez v0, 0x40204                      |         goto label_62;
                                                     |     }
    0x0004000c lw v0, 0xd8(s0)                       |     v0 = *((s0 + 54));
    0x00040010 sll zero, a0, 0                       |     0 = a0 << 0;
    0x00040014 nop                                   |     
    0x00040018 movf zero, zero, fcc0                 |     __asm ("movf zero, zero, fcc0");
                                                     | label_20:
    0x0004001c move a0, s0                           |     a0 = s0;
    0x00040020 bal 0x3d4c0                           |     sym_ap_run_auth_checker ();
    0x00040024 lw gp, 0x28(sp)                       |     gp = *(var_28h);
                                                     |     if (v0 == 0) {
    0x00040028 beqz v0, 0x3fc60                      |         goto label_12;
                                                     |     }
    0x0004002c lw a1, -0x7fac(gp)                    |     a1 = *(gp);
    0x00040030 move a2, s0                           |     a2 = s0;
                                                     |     /* str.check_authorization */
    0x00040034 addiu a1, a1, -0xc7c                  |     a1 += -0xc7c;
    0x00040038 b 0x3fdc8                             |     goto label_10;
                                                     | label_46:
    0x0004003c lw a0, 0x60(v1)                       |     a0 = *((v1 + 24));
    0x00040040 lw v1, (a0)                           |     v1 = *(a0);
                                                     |     if (a0 == 0) {
    0x00040044 bnel a0, zero, 0x3fc98                |         goto label_18;
                                                     |     }
    0x00040048 lw a0, 8(s0)                          |     a0 = *((s0 + 2));
    0x0004004c addiu a0, a0, 0x10                    |     a0 += 0x10;
    0x00040050 b 0x3fc94                             |     goto label_19;
                                                     | label_24:
    0x00040054 lw t9, -0x7b00(gp)                    |     t9 = sym.ap_run_check_user_id;
    0x00040058 move a0, s0                           |     a0 = s0;
    0x0004005c bal 0x3cae4                           |     sym_ap_run_check_user_id ();
    0x00040060 lw gp, 0x28(sp)                       |     gp = *(var_28h);
                                                     |     if (v0 != 0) {
    0x00040064 bnez v0, 0x40204                      |         goto label_62;
                                                     |     }
    0x00040068 lw v0, 0xd8(s0)                       |     v0 = *((s0 + 54));
    0x0004006c lw t9, -0x7afc(gp)                    |     t9 = sym.ap_run_auth_checker;
                                                     |     if (v0 == 0) {
    0x00040070 bnel v0, zero, 0x4001c                |         goto label_20;
                                                     |     }
    0x00040074 lw v0, 0xe4(s0)                       |     v0 = *((s0 + 57));
    0x00040078 lw a0, -0x7fac(gp)                    |     a0 = *(gp);
    0x0004007c sw v0, 0x1c(sp)                       |     *(var_1ch_2) = v0;
    0x00040080 lw v0, -0x7fac(gp)                    |     v0 = *(gp);
    0x00040084 lw t9, -0x7f08(gp)                    |     t9 = sym.ap_log_rerror_;
    0x00040088 move a2, zero                         |     a2 = 0;
    0x0004008c addiu a1, zero, 0x15f                 |     a1 = 0x15f;
                                                     |     /* esilref: '/usr/src/debug/apache2/2.4.57-r0/httpd-2.4.57/server/request.c' */
    0x00040090 addiu a0, a0, -0x1258                 |     a0 += -0x1258;
                                                     |     /* str.AH00027:_No_authentication_done_but_request_not_allowed_without_authentication_for__s._Authentication_not_configured_ */
    0x00040094 addiu v0, v0, -0xcf4                  |     v0 += -0xcf4;
                                                     | label_31:
    0x00040098 sw v0, 0x18(sp)                       |     *(var_18h_2) = v0;
    0x0004009c sw s0, 0x14(sp)                       |     *(var_14h_2) = s0;
    0x000400a0 sw zero, 0x10(sp)                     |     *(var_10h) = 0;
    0x000400a4 addiu a3, zero, 3                     |     a3 = 3;
    0x000400a8 bal 0x530a8                           |     sym_ap_log_rerror_ ();
    0x000400ac lw gp, 0x28(sp)                       |     gp = *(var_28h);
    0x000400b0 move a2, s0                           |     a2 = s0;
    0x000400b4 addiu a0, zero, 0x1f4                 |     a0 = aav.0x000001f4;
    0x000400b8 lw a1, -0x7fac(gp)                    |     a1 = *(gp);
                                                     |     /* str.check_user */
    0x000400bc addiu a1, a1, -0xd00                  |     a1 += -0xd00;
    0x000400c0 b 0x3fdcc                             |     goto label_21;
                                                     | label_58:
    0x000400c4 lw v1, 0x60(v0)                       |     v1 = *((v0 + 24));
    0x000400c8 lw v0, (v1)                           |     v0 = *(v1);
                                                     |     if (v1 == 0) {
    0x000400cc bnel v1, zero, 0x3ff10                |         goto label_22;
                                                     |     }
    0x000400d0 lw v1, 8(s0)                          |     v1 = *((s0 + 2));
    0x000400d4 addiu v1, v1, 0x10                    |     v1 += 0x10;
    0x000400d8 b 0x3ff0c                             |     goto label_23;
                                                     | label_61:
    0x000400dc lw v1, 0x108(s0)                      |     v1 = *(s0);
                                                     |     if (v1 == 0) {
    0x000400e0 beql v1, zero, 0x40214                |         goto label_63;
                                                     |     }
    0x000400e4 lw v0, 4(s0)                          |     v0 = *((s0 + 1));
                                                     | label_30:
    0x000400e8 lw v0, (v1)                           |     v0 = *(v1);
                                                     |     if (v0 == 0) {
                                                     | label_29:
    0x000400ec beql v0, zero, 0x401f8                |         goto label_64;
                                                     |     }
    0x000400f0 lw v0, 4(v1)                          |     v0 = *((v1 + 1));
    0x000400f4 lb v0, (v0)                           |     v0 = *(v0);
                                                     |     if (v0 < 0) {
    0x000400f8 bltzl v0, 0x401f8                     |         goto label_64;
                                                     |     }
    0x000400fc lw v0, 4(v1)                          |     v0 = *((v1 + 1));
    0x00040100 slti v0, v0, 0xa                      |     v0 = (v0 < 0xa) ? 1 : 0;
    0x00040104 xori v0, v0, 1                        |     v0 ^= 1;
                                                     | label_28:
    0x00040108 lw t9, -0x7b0c(gp)                    |     t9 = sym.ap_run_type_checker;
                                                     |     if (v0 == 0) {
    0x0004010c beqz v0, 0x3fc64                      |         goto label_9;
                                                     |     }
    0x00040110 lw v0, 0xe4(s0)                       |     v0 = *((s0 + 57));
    0x00040114 lw a0, -0x7fac(gp)                    |     a0 = *(gp);
    0x00040118 sw v0, 0x1c(sp)                       |     *(var_1ch_2) = v0;
    0x0004011c lw v0, -0x7fac(gp)                    |     v0 = *(gp);
    0x00040120 lw t9, -0x7f08(gp)                    |     t9 = sym.ap_log_rerror_;
                                                     |     /* str.request_authorized_without_authentication_by_access_checker_ex_hook:__s */
    0x00040124 addiu v0, v0, -0xc68                  |     v0 += -0xc68;
    0x00040128 sw v0, 0x18(sp)                       |     *(var_18h_2) = v0;
    0x0004012c sw s0, 0x14(sp)                       |     *(var_14h_2) = s0;
    0x00040130 sw zero, 0x10(sp)                     |     *(var_10h) = 0;
    0x00040134 addiu a3, zero, 0xa                   |     a3 = 0xa;
    0x00040138 move a2, zero                         |     a2 = 0;
    0x0004013c addiu a1, zero, 0x190                 |     a1 = aav.0x00000190;
                                                     |     /* esilref: '/usr/src/debug/apache2/2.4.57-r0/httpd-2.4.57/server/request.c' */
    0x00040140 addiu a0, a0, -0x1258                 |     a0 += -0x1258;
    0x00040144 bal 0x530a8                           |     sym_ap_log_rerror_ ();
    0x00040148 lw gp, 0x28(sp)                       |     gp = *(var_28h);
    0x0004014c b 0x3fc60                             |     goto label_12;
                                                     | label_56:
    0x00040150 move a0, s0                           |     a0 = s0;
    0x00040154 bal 0x3e0bc                           |     sym_ap_run_force_authn ();
    0x00040158 lw gp, 0x28(sp)                       |     gp = *(var_28h);
                                                     |     if (v0 == 0) {
    0x0004015c beqz v0, 0x40054                      |         goto label_24;
                                                     |     }
    0x00040160 lw v1, 0x108(s0)                      |     v1 = *(s0);
                                                     |     if (v1 == 0) {
    0x00040164 beql v1, zero, 0x401e0                |         goto label_65;
                                                     |     }
    0x00040168 lw v0, 4(s0)                          |     v0 = *((s0 + 1));
                                                     | label_27:
    0x0004016c lw v0, (v1)                           |     v0 = *(v1);
                                                     |     if (v0 == 0) {
                                                     | label_26:
    0x00040170 beql v0, zero, 0x401d4                |         goto label_66;
                                                     |     }
    0x00040174 lw v0, 4(v1)                          |     v0 = *((v1 + 1));
    0x00040178 lb v0, (v0)                           |     v0 = *(v0);
                                                     |     if (v0 < 0) {
    0x0004017c bltzl v0, 0x401d4                     |         goto label_66;
                                                     |     }
    0x00040180 lw v0, 4(v1)                          |     v0 = *((v1 + 1));
    0x00040184 slti v0, v0, 0xa                      |     v0 = (v0 < 0xa) ? 1 : 0;
    0x00040188 xori v0, v0, 1                        |     v0 ^= 1;
                                                     | label_25:
    0x0004018c lw t9, -0x7b0c(gp)                    |     t9 = sym.ap_run_type_checker;
                                                     |     if (v0 == 0) {
    0x00040190 beqz v0, 0x3fc64                      |         goto label_9;
                                                     |     }
    0x00040194 lw v0, 0xe4(s0)                       |     v0 = *((s0 + 57));
    0x00040198 lw a0, -0x7fac(gp)                    |     a0 = *(gp);
    0x0004019c sw v0, 0x1c(sp)                       |     *(var_1ch_2) = v0;
    0x000401a0 lw v0, -0x7fac(gp)                    |     v0 = *(gp);
    0x000401a4 lw t9, -0x7f08(gp)                    |     t9 = sym.ap_log_rerror_;
                                                     |     /* str.request_authorized_without_authentication_by_access_checker_ex_hook:__s */
    0x000401a8 addiu v0, v0, -0xc68                  |     v0 += -0xc68;
    0x000401ac sw v0, 0x18(sp)                       |     *(var_18h_2) = v0;
    0x000401b0 sw s0, 0x14(sp)                       |     *(var_14h_2) = s0;
    0x000401b4 sw zero, 0x10(sp)                     |     *(var_10h) = 0;
    0x000401b8 addiu a3, zero, 0xa                   |     a3 = 0xa;
    0x000401bc move a2, zero                         |     a2 = 0;
    0x000401c0 addiu a1, zero, 0x16a                 |     a1 = 0x16a;
                                                     |     /* esilref: '/usr/src/debug/apache2/2.4.57-r0/httpd-2.4.57/server/request.c' */
    0x000401c4 addiu a0, a0, -0x1258                 |     a0 += -0x1258;
    0x000401c8 bal 0x530a8                           |     sym_ap_log_rerror_ ();
    0x000401cc lw gp, 0x28(sp)                       |     gp = *(var_28h);
    0x000401d0 b 0x3fc60                             |     goto label_12;
                                                     | label_66:
    0x000401d4 slti v0, v0, 0xa                      |     v0 = (v0 < 0xa) ? 1 : 0;
    0x000401d8 xori v0, v0, 1                        |     v0 ^= 1;
    0x000401dc b 0x4018c                             |     goto label_25;
                                                     | label_65:
    0x000401e0 lw v1, 0x60(v0)                       |     v1 = *((v0 + 24));
    0x000401e4 lw v0, (v1)                           |     v0 = *(v1);
                                                     |     if (v1 == 0) {
    0x000401e8 bnel v1, zero, 0x40170                |         goto label_26;
                                                     |     }
    0x000401ec lw v1, 8(s0)                          |     v1 = *((s0 + 2));
    0x000401f0 addiu v1, v1, 0x10                    |     v1 += 0x10;
    0x000401f4 b 0x4016c                             |     goto label_27;
                                                     | label_64:
    0x000401f8 slti v0, v0, 0xa                      |     v0 = (v0 < 0xa) ? 1 : 0;
    0x000401fc xori v0, v0, 1                        |     v0 ^= 1;
    0x00040200 b 0x40108                             |     goto label_28;
                                                     | label_62:
    0x00040204 lw a1, -0x7fac(gp)                    |     a1 = *(gp);
    0x00040208 move a2, s0                           |     a2 = s0;
                                                     |     /* str.check_user */
    0x0004020c addiu a1, a1, -0xd00                  |     a1 += -0xd00;
    0x00040210 b 0x3fdc8                             |     goto label_10;
                                                     | label_63:
    0x00040214 lw v1, 0x60(v0)                       |     v1 = *((v0 + 24));
    0x00040218 lw v0, (v1)                           |     v0 = *(v1);
                                                     |     if (v1 == 0) {
    0x0004021c bnel v1, zero, 0x400ec                |         goto label_29;
                                                     |     }
    0x00040220 lw v1, 8(s0)                          |     v1 = *((s0 + 2));
    0x00040224 addiu v1, v1, 0x10                    |     v1 += 0x10;
    0x00040228 b 0x400e8                             |     goto label_30;
    0x0004022c lw a0, -0x7fac(gp)                    |     a0 = *(gp);
    0x00040230 sw v0, 0x1c(sp)                       |     *(var_1ch_2) = v0;
    0x00040234 lw v0, -0x7fac(gp)                    |     v0 = *(gp);
    0x00040238 lw t9, -0x7f08(gp)                    |     t9 = sym.ap_log_rerror_;
    0x0004023c move a2, zero                         |     a2 = 0;
    0x00040240 addiu a1, zero, 0x185                 |     a1 = 0x185;
                                                     |     /* esilref: '/usr/src/debug/apache2/2.4.57-r0/httpd-2.4.57/server/request.c' */
    0x00040244 addiu a0, a0, -0x1258                 |     a0 += -0x1258;
                                                     |     /* str.AH00028:_No_authentication_done_but_request_not_allowed_without_authentication_for__s._Authentication_not_configured_ */
    0x00040248 addiu v0, v0, -0xbc8                  |     v0 += -0xbc8;
    0x0004024c b 0x40098                             |     goto label_31;
                                                     | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x2efd4 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.ap_select_protocol ()        | void ap_select_protocol () {
    0x0002efd4 lui gp, 7                     |     
    0x0002efd8 addiu gp, gp, 0x3f4c          |     
    0x0002efdc addu gp, gp, t9               |     gp += t9;
    0x0002efe0 addiu sp, sp, -0x58           |     
    0x0002efe4 sw gp, 0x28(sp)               |     *(var_28h) = gp;
    0x0002efe8 sw s5, 0x48(sp)               |     *(var_48h) = s5;
    0x0002efec sw s3, 0x40(sp)               |     *(var_40h) = s3;
    0x0002eff0 sw s2, 0x3c(sp)               |     *(var_3ch) = s2;
    0x0002eff4 sw s1, 0x38(sp)               |     *(var_38h) = s1;
    0x0002eff8 sw ra, 0x54(sp)               |     *(var_54h) = ra;
    0x0002effc sw s7, 0x50(sp)               |     *(var_50h) = s7;
    0x0002f000 sw s6, 0x4c(sp)               |     *(var_4ch) = s6;
    0x0002f004 sw s4, 0x44(sp)               |     *(var_44h) = s4;
    0x0002f008 sw s0, 0x34(sp)               |     *(var_34h) = s0;
    0x0002f00c move s2, a1                   |     s2 = a1;
    0x0002f010 move s3, a0                   |     s3 = a0;
    0x0002f014 move s1, a2                   |     s1 = a2;
    0x0002f018 move s5, a3                   |     s5 = a3;
                                             |     if (a1 == 0) {
    0x0002f01c beqz a1, 0x2f3f8              |         goto label_20;
                                             |     }
    0x0002f020 lw s0, (a1)                   |     s0 = *(a1);
                                             |     if (a2 == 0) {
    0x0002f024 beqz a2, 0x2f308              |         goto label_21;
                                             |     }
                                             | label_8:
    0x0002f028 lw v0, 0x18(s1)               |     v0 = *((s1 + 6));
    0x0002f02c lw v1, 0x60(s3)               |     v1 = *((s3 + 24));
    0x0002f030 lw s4, (v0)                   |     s4 = *(v0);
                                             |     if (v1 == 0) {
    0x0002f034 beqz v1, 0x2f31c              |         goto label_22;
                                             |     }
                                             | label_2:
    0x0002f038 lw v0, (v1)                   |     v0 = *(v1);
                                             |     if (v0 == 0) {
    0x0002f03c beql v0, zero, 0x2f100        |         goto label_23;
                                             |     }
    0x0002f040 lw v0, 4(v1)                  |     v0 = *((v1 + 1));
    0x0002f044 lb v0, (v0)                   |     v0 = *(v0);
    0x0002f048 slti v0, v0, 7                |     v0 = (v0 < 7) ? 1 : 0;
                                             |     if (v0 < 0) {
    0x0002f04c bltz v0, 0x2f0fc              |         goto label_24;
                                             |     }
    0x0002f050 xori v0, v0, 1                |     v0 ^= 1;
    0x0002f054 lw a1, 0x38(s4)               |     a1 = *((s4 + 14));
                                             |     if (v0 == 0) {
    0x0002f058 beqz v0, 0x2f110              |         goto label_16;
                                             |     }
                                             |     do {
    0x0002f05c lw t9, -0x75ec(gp)            |         t9 = sym.imp.apr_array_pstrcat;
    0x0002f060 addiu a2, zero, 0x2c          |         a2 = 0x2c;
    0x0002f064 move a0, s0                   |         a0 = s0;
    0x0002f068 jalr t9                       |         t9 ();
    0x0002f06c lw v1, 0x60(s3)               |         v1 = *((s3 + 24));
    0x0002f070 lw gp, 0x28(sp)               |         gp = *(var_28h);
    0x0002f074 move s6, v0                   |         s6 = v0;
                                             |         if (v1 == 0) {
    0x0002f078 beqz v1, 0x2f58c              |             goto label_25;
                                             |         }
                                             | label_18:
    0x0002f07c lw v0, (v1)                   |         v0 = *(v1);
                                             |         if (v0 == 0) {
    0x0002f080 beql v0, zero, 0x2f4dc        |             goto label_26;
                                             |         }
    0x0002f084 lw v0, 4(v1)                  |         v0 = *((v1 + 1));
    0x0002f088 lb v0, (v0)                   |         v0 = *(v0);
    0x0002f08c slti v0, v0, 7                |         v0 = (v0 < 7) ? 1 : 0;
                                             |         if (v0 < 0) {
    0x0002f090 bltz v0, 0x2f4d8              |             goto label_27;
                                             |         }
    0x0002f094 xori v0, v0, 1                |         v0 ^= 1;
    0x0002f098 lw t9, -0x75ec(gp)            |         t9 = sym.imp.apr_array_pstrcat;
                                             |         if (v0 != 0) {
    0x0002f09c bnez v0, 0x2f4f0              |             goto label_28;
                                             |         }
    0x0002f0a0 lw a1, 0x38(s4)               |         a1 = *((s4 + 14));
                                             | label_15:
    0x0002f0a4 lw v0, 8(a1)                  |         v0 = *((a1 + 2));
                                             |         if (v0 > 0) {
    0x0002f0a8 bgtzl v0, 0x2f120             |             goto label_29;
                                             |         }
    0x0002f0ac lw a1, 8(s5)                  |         a1 = *((s5 + 2));
    0x0002f0b0 lw s2, -0x7fac(gp)            |         s2 = *(gp);
                                             | label_0:
    0x0002f0b4 lw t9, -0x7d9c(gp)            |         t9 = sym.ap_array_str_contains;
                                             |         /* str.http_1.1 */
    0x0002f0b8 addiu a1, s2, -0x57fc         |         a1 = s2 + -0x57fc;
    0x0002f0bc move a0, s5                   |         a0 = s5;
    0x0002f0c0 bal 0x21b0c                   |         sym_ap_array_str_contains ();
                                             |         /* str.http_1.1 */
    0x0002f0c4 addiu s2, s2, -0x57fc         |         s2 += -0x57fc;
                                             |         if (v0 == 0) {
    0x0002f0c8 beqz v0, 0x2f558              |             goto label_30;
                                             |         }
    0x0002f0cc lw ra, 0x54(sp)               |         ra = *(var_54h);
                                             | label_1:
    0x0002f0d0 move v0, s2                   |         v0 = s2;
    0x0002f0d4 lw s7, 0x50(sp)               |         s7 = *(var_50h);
    0x0002f0d8 lw s6, 0x4c(sp)               |         s6 = *(var_4ch);
    0x0002f0dc lw s5, 0x48(sp)               |         s5 = *(var_48h);
    0x0002f0e0 lw s4, 0x44(sp)               |         s4 = *(var_44h);
    0x0002f0e4 lw s3, 0x40(sp)               |         s3 = *(var_40h);
    0x0002f0e8 lw s2, 0x3c(sp)               |         s2 = *(var_3ch);
    0x0002f0ec lw s1, 0x38(sp)               |         s1 = *(var_38h);
    0x0002f0f0 lw s0, 0x34(sp)               |         s0 = *(var_34h);
    0x0002f0f4 addiu sp, sp, 0x58            |         
    0x0002f0f8 jr ra                         |         return v0;
                                             | label_24:
    0x0002f0fc lw v0, 4(v1)                  |         v0 = *((v1 + 1));
                                             | label_23:
    0x0002f100 slti v0, v0, 7                |         v0 = (v0 < 7) ? 1 : 0;
    0x0002f104 xori v0, v0, 1                |         v0 ^= 1;
    0x0002f108 lw a1, 0x38(s4)               |         a1 = *((s4 + 14));
    0x0002f10c bnez v0, 0x2f05c              |         
                                             |     } while (v0 != 0);
                                             | label_16:
    0x0002f110 lw v0, 8(a1)                  |     v0 = *((a1 + 2));
                                             |     if (v0 <= 0) {
    0x0002f114 blezl v0, 0x2f0b4             |         goto label_0;
                                             |     }
    0x0002f118 lw s2, -0x7fac(gp)            |     s2 = *(gp);
    0x0002f11c lw a1, 8(s5)                  |     a1 = *((s5 + 2));
                                             | label_29:
    0x0002f120 lw t9, -0x775c(gp)            |     t9 = sym.imp.apr_array_make;
    0x0002f124 addiu a2, zero, 4             |     a2 = 4;
    0x0002f128 addiu a1, a1, 1               |     a1++;
    0x0002f12c move a0, s0                   |     a0 = s0;
    0x0002f130 jalr t9                       |     t9 ();
    0x0002f134 lw gp, 0x28(sp)               |     gp = *(var_28h);
    0x0002f138 move a2, s1                   |     a2 = s1;
    0x0002f13c move a3, s5                   |     a3 = s5;
    0x0002f140 lw t9, -0x7d38(gp)            |     t9 = sym.ap_run_protocol_propose;
    0x0002f144 move a1, s2                   |     a1 = s2;
    0x0002f148 move a0, s3                   |     a0 = s3;
    0x0002f14c sw v0, 0x10(sp)               |     *(var_10h) = v0;
    0x0002f150 move s6, v0                   |     s6 = v0;
    0x0002f154 bal 0x2e8b4                   |     sym_ap_run_protocol_propose ();
    0x0002f158 lw gp, 0x28(sp)               |     gp = *(var_28h);
    0x0002f15c lw t9, -0x7d3c(gp)            |     t9 = sym.ap_run_protocol_get;
    0x0002f160 move a0, s3                   |     a0 = s3;
    0x0002f164 bal 0x2ed2c                   |     sym_ap_run_protocol_get ();
    0x0002f168 move s1, v0                   |     s1 = v0;
    0x0002f16c lw gp, 0x28(sp)               |     gp = *(var_28h);
                                             |     if (v0 == 0) {
    0x0002f170 beqz v0, 0x2f488              |         goto label_31;
                                             |     }
    0x0002f174 lw t9, -0x7d9c(gp)            |     t9 = sym.ap_array_str_contains;
    0x0002f178 move a1, s1                   |     a1 = s1;
    0x0002f17c move a0, s6                   |     a0 = s6;
    0x0002f180 bal 0x21b0c                   |     sym_ap_array_str_contains ();
    0x0002f184 lw gp, 0x28(sp)               |     gp = *(var_28h);
                                             |     if (v0 == 0) {
    0x0002f188 beqz v0, 0x2f458              |         goto label_32;
                                             |     }
                                             | label_10:
    0x0002f18c lw v0, 8(s6)                  |     v0 = *((s6 + 2));
    0x0002f190 move s2, zero                 |     s2 = 0;
                                             |     if (v0 > 0) {
    0x0002f194 blez v0, 0x2f26c              |         
    0x0002f198 lw v0, 0x3c(s4)               |         v0 = *((s4 + 15));
                                             |         if (v0 == 0) {
    0x0002f19c beql v0, zero, 0x2f4b0        |             goto label_33;
                                             |         }
    0x0002f1a0 lw v0, 8(s5)                  |         v0 = *((s5 + 2));
    0x0002f1a4 lw v0, 0x60(s3)               |         v0 = *((s3 + 24));
                                             | label_12:
    0x0002f1a8 lw s5, 0x38(s4)               |         s5 = *((s4 + 14));
                                             |         if (v0 == 0) {
    0x0002f1ac beqz v0, 0x2f4c0              |             goto label_34;
                                             |         }
                                             | label_14:
    0x0002f1b0 lw v1, (v0)                   |         v1 = *(v0);
                                             |         if (v1 == 0) {
                                             | label_13:
    0x0002f1b4 beql v1, zero, 0x2f32c        |             goto label_35;
                                             |         }
    0x0002f1b8 lw v0, 4(v0)                  |         v0 = *((v0 + 1));
    0x0002f1bc lb v1, (v1)                   |         v1 = *(v1);
    0x0002f1c0 slti v1, v1, 7                |         v1 = (v1 < 7) ? 1 : 0;
                                             |         if (v1 < 0) {
    0x0002f1c4 bltz v1, 0x2f328              |             goto label_36;
                                             |         }
    0x0002f1c8 move s1, zero                 |         s1 = 0;
                                             |         if (v1 == 0) {
    0x0002f1cc bnel v1, zero, 0x2f33c        |             goto label_37;
                                             |         }
    0x0002f1d0 lw t9, -0x75ec(gp)            |         t9 = sym.imp.apr_array_pstrcat;
                                             | label_3:
    0x0002f1d4 move a0, s0                   |         a0 = s0;
    0x0002f1d8 addiu a2, zero, 0x2c          |         a2 = 0x2c;
    0x0002f1dc move a1, s6                   |         a1 = s6;
    0x0002f1e0 jalr t9                       |         t9 ();
    0x0002f1e4 lw gp, 0x28(sp)               |         gp = *(var_28h);
    0x0002f1e8 move a0, s0                   |         a0 = s0;
    0x0002f1ec addiu a2, zero, 0x2c          |         a2 = 0x2c;
    0x0002f1f0 lw t9, -0x75ec(gp)            |         t9 = sym.imp.apr_array_pstrcat;
    0x0002f1f4 move a1, s5                   |         a1 = s5;
    0x0002f1f8 move s1, v0                   |         s1 = v0;
    0x0002f1fc jalr t9                       |         t9 ();
    0x0002f200 lw gp, 0x28(sp)               |         gp = *(var_28h);
    0x0002f204 lw a1, 0x38(s4)               |         a1 = *((s4 + 14));
    0x0002f208 move a0, s0                   |         a0 = s0;
    0x0002f20c lw t9, -0x75ec(gp)            |         t9 = sym.imp.apr_array_pstrcat;
    0x0002f210 addiu a2, zero, 0x2c          |         a2 = 0x2c;
    0x0002f214 move s0, v0                   |         s0 = v0;
    0x0002f218 jalr t9                       |         t9 ();
    0x0002f21c lw gp, 0x28(sp)               |         gp = *(var_28h);
    0x0002f220 sw v0, 0x24(sp)               |         *(var_24h) = v0;
    0x0002f224 sw s0, 0x20(sp)               |         *(var_20h) = s0;
    0x0002f228 lw v0, -0x7fac(gp)            |         v0 = *(gp);
    0x0002f22c lw a0, -0x7fac(gp)            |         a0 = *(gp);
    0x0002f230 lw t9, -0x7e3c(gp)            |         t9 = sym.ap_log_cerror_;
                                             |         /* str.AH03156:_select_protocol__proposals_s_preferences_s_configured_s */
    0x0002f234 addiu v0, v0, -0x515c         |         v0 += -0x515c;
    0x0002f238 sw v0, 0x18(sp)               |         *(var_18h) = v0;
    0x0002f23c sw s1, 0x1c(sp)               |         *(var_1ch) = s1;
    0x0002f240 sw s3, 0x14(sp)               |         *(var_14h) = s3;
    0x0002f244 sw zero, 0x10(sp)             |         *(var_10h) = 0;
    0x0002f248 addiu a3, zero, 7             |         a3 = 7;
    0x0002f24c move a2, zero                 |         a2 = 0;
    0x0002f250 addiu a1, zero, 0x9cc         |         a1 = 0x9cc;
                                             |         /* str._usr_src_debug_apache2_2.4.57_r0_httpd_2.4.57_server_protocol.c */
    0x0002f254 addiu a0, a0, -0x5ed4         |         a0 += -0x5ed4;
    0x0002f258 jalr t9                       |         t9 ();
    0x0002f25c lw v0, 8(s6)                  |         v0 = *((s6 + 2));
    0x0002f260 lw gp, 0x28(sp)               |         gp = *(var_28h);
                                             |         if (v0 > 0) {
    0x0002f264 bgtz v0, 0x2f338              |             goto label_38;
                                             |         }
    0x0002f268 move s2, zero                 |         s2 = 0;
                                             |     }
    0x0002f26c lw v0, 0x60(s3)               |     v0 = *((s3 + 24));
                                             |     if (v0 == 0) {
                                             | label_4:
    0x0002f270 beql v0, zero, 0x2f550        |         goto label_39;
                                             |     }
    0x0002f274 lw v0, 4(s3)                  |     v0 = *((s3 + 1));
                                             | label_17:
    0x0002f278 lw v1, (v0)                   |     v1 = *(v0);
                                             |     if (v1 == 0) {
    0x0002f27c beql v1, zero, 0x2f3c0        |         goto label_40;
                                             |     }
    0x0002f280 lw v0, 4(v0)                  |     v0 = *((v0 + 1));
    0x0002f284 lb v1, (v1)                   |     v1 = *(v1);
    0x0002f288 slti v1, v1, 7                |     v1 = (v1 < 7) ? 1 : 0;
                                             |     if (v1 < 0) {
    0x0002f28c bltz v1, 0x2f3bc              |         goto label_41;
                                             |     }
    0x0002f290 lw ra, 0x54(sp)               |     ra = *(var_54h);
                                             |     if (v1 != 0) {
    0x0002f294 bnez v1, 0x2f0d0              |         goto label_1;
                                             |     }
                                             | label_7:
    0x0002f298 lw v0, -0x7fac(gp)            |     v0 = *(gp);
                                             |     if (s2 == 0) {
    0x0002f29c beqz s2, 0x2f598              |         goto label_42;
                                             |     }
    0x0002f2a0 move v0, s2                   |     v0 = s2;
                                             | label_19:
    0x0002f2a4 sw v0, 0x1c(sp)               |     *(var_1ch) = v0;
    0x0002f2a8 lw v0, -0x7fac(gp)            |     v0 = *(gp);
    0x0002f2ac lw a0, -0x7fac(gp)            |     a0 = *(gp);
    0x0002f2b0 lw t9, -0x7e3c(gp)            |     t9 = sym.ap_log_cerror_;
                                             |     /* str.AH03157:_selected_protocol_s */
    0x0002f2b4 addiu v0, v0, -0x5118         |     v0 += -0x5118;
    0x0002f2b8 sw v0, 0x18(sp)               |     *(var_18h) = v0;
    0x0002f2bc sw s3, 0x14(sp)               |     *(var_14h) = s3;
    0x0002f2c0 sw zero, 0x10(sp)             |     *(var_10h) = 0;
    0x0002f2c4 addiu a3, zero, 7             |     a3 = 7;
    0x0002f2c8 move a2, zero                 |     a2 = 0;
    0x0002f2cc addiu a1, zero, 0x9de         |     a1 = 0x9de;
                                             |     /* str._usr_src_debug_apache2_2.4.57_r0_httpd_2.4.57_server_protocol.c */
    0x0002f2d0 addiu a0, a0, -0x5ed4         |     a0 += -0x5ed4;
    0x0002f2d4 jalr t9                       |     t9 ();
    0x0002f2d8 lw ra, 0x54(sp)               |     ra = *(var_54h);
    0x0002f2dc move v0, s2                   |     v0 = s2;
    0x0002f2e0 lw s7, 0x50(sp)               |     s7 = *(var_50h);
    0x0002f2e4 lw s6, 0x4c(sp)               |     s6 = *(var_4ch);
    0x0002f2e8 lw s5, 0x48(sp)               |     s5 = *(var_48h);
    0x0002f2ec lw s4, 0x44(sp)               |     s4 = *(var_44h);
    0x0002f2f0 lw s3, 0x40(sp)               |     s3 = *(var_40h);
    0x0002f2f4 lw s2, 0x3c(sp)               |     s2 = *(var_3ch);
    0x0002f2f8 lw s1, 0x38(sp)               |     s1 = *(var_38h);
    0x0002f2fc lw s0, 0x34(sp)               |     s0 = *(var_34h);
    0x0002f300 addiu sp, sp, 0x58            |     
    0x0002f304 jr ra                         |     return v0;
                                             | label_21:
    0x0002f308 lw s1, 8(a1)                  |     s1 = *((a1 + 2));
    0x0002f30c lw v1, 0x60(s3)               |     v1 = *((s3 + 24));
    0x0002f310 lw v0, 0x18(s1)               |     v0 = *((s1 + 6));
    0x0002f314 lw s4, (v0)                   |     s4 = *(v0);
                                             |     if (v1 != 0) {
    0x0002f318 bnez v1, 0x2f038              |         goto label_2;
                                             |     }
                                             | label_22:
    0x0002f31c lw v1, 4(s3)                  |     v1 = *((s3 + 1));
    0x0002f320 addiu v1, v1, 0x10            |     v1 += 0x10;
    0x0002f324 b 0x2f038                     |     goto label_2;
                                             | label_36:
    0x0002f328 lw v0, 4(v0)                  |     v0 = *((v0 + 1));
                                             | label_35:
    0x0002f32c slti v0, v0, 7                |     v0 = (v0 < 7) ? 1 : 0;
    0x0002f330 lw t9, -0x75ec(gp)            |     t9 = sym.imp.apr_array_pstrcat;
                                             |     if (v0 == 0) {
    0x0002f334 beqz v0, 0x2f1d4              |         goto label_3;
                                             |     }
                                             | label_38:
    0x0002f338 move s1, zero                 |     s1 = 0;
                                             | label_37:
    0x0002f33c move s2, zero                 |     s2 = 0;
    0x0002f340 b 0x2f388                     |     goto label_43;
                                             | label_6:
    0x0002f344 lw t9, -0x7740(gp)            |     t9 = sym.imp.strcmp;
                                             |     if (s5 != 0) {
    0x0002f348 beqz s5, 0x2f35c              |         
    0x0002f34c lw v0, 8(s5)                  |         v0 = *((s5 + 2));
    0x0002f350 lw t9, -0x7d34(gp)            |         t9 = sym.ap_array_str_index;
                                             |         if (v0 > 0) {
    0x0002f354 bgtz v0, 0x2f408              |             goto label_44;
                                             |         }
    0x0002f358 lw t9, -0x7740(gp)            |         t9 = sym.imp.strcmp;
                                             |     }
                                             | label_9:
    0x0002f35c move a0, s2                   |     a0 = s2;
    0x0002f360 move a1, s0                   |     a1 = s0;
    0x0002f364 jalr t9                       |     t9 ();
    0x0002f368 slti v0, v0, 0                |     v0 = (v0 < 0) ? 1 : 0;
    0x0002f36c lw gp, 0x28(sp)               |     gp = *(var_28h);
                                             |     if (v0 == 0) {
    0x0002f370 movn s2, s0, v0               |         s2 = s0;
                                             |     }
                                             | label_5:
    0x0002f374 lw v0, 8(s6)                  |     v0 = *((s6 + 2));
    0x0002f378 addiu s1, s1, 1               |     s1++;
    0x0002f37c slt v0, s1, v0                |     v0 = (s1 < v0) ? 1 : 0;
                                             |     if (v0 == 0) {
    0x0002f380 beql v0, zero, 0x2f270        |         goto label_4;
                                             |     }
    0x0002f384 lw v0, 0x60(s3)               |     v0 = *((s3 + 24));
                                             | label_43:
    0x0002f388 lw v0, 0x10(s6)               |     v0 = *((s6 + 4));
    0x0002f38c sll s0, s1, 2                 |     s0 = s1 << 2;
    0x0002f390 lw t9, -0x7d9c(gp)            |     t9 = sym.ap_array_str_contains;
    0x0002f394 lwx s0, s0(v0)                |     __asm ("lwx s0, s0(v0)");
    0x0002f398 lw a0, 0x38(s4)               |     a0 = *((s4 + 14));
    0x0002f39c move a1, s0                   |     a1 = s0;
    0x0002f3a0 bal 0x21b0c                   |     sym_ap_array_str_contains ();
    0x0002f3a4 lw gp, 0x28(sp)               |     gp = *(var_28h);
                                             |     if (v0 == 0) {
    0x0002f3a8 beqz v0, 0x2f374              |         goto label_5;
                                             |     }
                                             |     if (s2 != 0) {
    0x0002f3ac bnez s2, 0x2f344              |         goto label_6;
                                             |     }
    0x0002f3b0 nop                           |     
    0x0002f3b4 move s2, s0                   |     s2 = s0;
    0x0002f3b8 b 0x2f374                     |     goto label_5;
                                             | label_41:
    0x0002f3bc lw v0, 4(v0)                  |     v0 = *((v0 + 1));
                                             | label_40:
    0x0002f3c0 slti v0, v0, 7                |     v0 = (v0 < 7) ? 1 : 0;
    0x0002f3c4 lw ra, 0x54(sp)               |     ra = *(var_54h);
                                             |     if (v0 == 0) {
    0x0002f3c8 beqz v0, 0x2f298              |         goto label_7;
                                             |     }
    0x0002f3cc move v0, s2                   |     v0 = s2;
    0x0002f3d0 lw s7, 0x50(sp)               |     s7 = *(var_50h);
    0x0002f3d4 lw s6, 0x4c(sp)               |     s6 = *(var_4ch);
    0x0002f3d8 lw s5, 0x48(sp)               |     s5 = *(var_48h);
    0x0002f3dc lw s4, 0x44(sp)               |     s4 = *(var_44h);
    0x0002f3e0 lw s3, 0x40(sp)               |     s3 = *(var_40h);
    0x0002f3e4 lw s2, 0x3c(sp)               |     s2 = *(var_3ch);
    0x0002f3e8 lw s1, 0x38(sp)               |     s1 = *(var_38h);
    0x0002f3ec lw s0, 0x34(sp)               |     s0 = *(var_34h);
    0x0002f3f0 addiu sp, sp, 0x58            |     
    0x0002f3f4 jr ra                         |     return v0;
                                             | label_20:
    0x0002f3f8 lw s0, (a0)                   |     s0 = *(a0);
                                             |     if (a2 != 0) {
    0x0002f3fc bnez a2, 0x2f028              |         goto label_8;
                                             |     }
    0x0002f400 lw s1, 4(a0)                  |     s1 = *((a0 + 1));
    0x0002f404 b 0x2f028                     |     goto label_8;
                                             | label_44:
    0x0002f408 move a2, zero                 |     a2 = 0;
    0x0002f40c move a1, s2                   |     a1 = s2;
    0x0002f410 move a0, s5                   |     a0 = s5;
    0x0002f414 bal 0x21a50                   |     sym_ap_array_str_index ();
    0x0002f418 lw gp, 0x28(sp)               |     gp = *(var_28h);
    0x0002f41c move a2, zero                 |     a2 = 0;
    0x0002f420 move a1, s0                   |     a1 = s0;
    0x0002f424 lw t9, -0x7d34(gp)            |     t9 = sym.ap_array_str_index;
    0x0002f428 move a0, s5                   |     a0 = s5;
    0x0002f42c move s7, v0                   |     s7 = v0;
    0x0002f430 bal 0x21a50                   |     sym_ap_array_str_index ();
    0x0002f434 slt v1, s7, v0                |     v1 = (s7 < v0) ? 1 : 0;
    0x0002f438 lw gp, 0x28(sp)               |     gp = *(var_28h);
                                             |     if (v1 != 0) {
    0x0002f43c bnez v1, 0x2f4cc              |         goto label_45;
                                             |     }
    0x0002f440 slt s7, v0, s7                |     s7 = (v0 < s7) ? 1 : 0;
    0x0002f444 lw t9, -0x7740(gp)            |     t9 = sym.imp.strcmp;
                                             |     if (s7 == 0) {
    0x0002f448 beqz s7, 0x2f35c              |         goto label_9;
                                             |     }
    0x0002f44c slti v0, v0, 0                |     v0 = (v0 < 0) ? 1 : 0;
                                             |     if (v0 != 0) {
    0x0002f450 movz s2, s0, v0               |         s2 = s0;
                                             |     }
    0x0002f454 b 0x2f374                     |     goto label_5;
                                             | label_32:
    0x0002f458 lw t9, -0x7d9c(gp)            |     t9 = sym.ap_array_str_contains;
                                             | label_11:
    0x0002f45c move a1, s1                   |     a1 = s1;
    0x0002f460 move a0, s5                   |     a0 = s5;
    0x0002f464 bal 0x21b0c                   |     sym_ap_array_str_contains ();
    0x0002f468 lw gp, 0x28(sp)               |     gp = *(var_28h);
                                             |     if (v0 == 0) {
    0x0002f46c beqz v0, 0x2f18c              |         goto label_10;
                                             |     }
    0x0002f470 lw t9, -0x7324(gp)            |     t9 = sym.imp.apr_array_push;
    0x0002f474 move a0, s6                   |     a0 = s6;
    0x0002f478 jalr t9                       |     t9 ();
    0x0002f47c lw gp, 0x28(sp)               |     gp = *(var_28h);
    0x0002f480 sw s1, (v0)                   |     *(v0) = s1;
    0x0002f484 b 0x2f18c                     |     goto label_10;
                                             | label_31:
    0x0002f488 lw s1, -0x7fac(gp)            |     s1 = *(gp);
    0x0002f48c lw t9, -0x7d9c(gp)            |     t9 = sym.ap_array_str_contains;
                                             |     /* str.http_1.1 */
    0x0002f490 addiu s1, s1, -0x57fc         |     s1 += -0x57fc;
    0x0002f494 move a1, s1                   |     a1 = s1;
    0x0002f498 move a0, s6                   |     a0 = s6;
    0x0002f49c bal 0x21b0c                   |     sym_ap_array_str_contains ();
    0x0002f4a0 lw gp, 0x28(sp)               |     gp = *(var_28h);
                                             |     if (v0 != 0) {
    0x0002f4a4 bnez v0, 0x2f18c              |         goto label_10;
                                             |     }
    0x0002f4a8 lw t9, -0x7d9c(gp)            |     t9 = sym.ap_array_str_contains;
    0x0002f4ac b 0x2f45c                     |     goto label_11;
                                             | label_33:
    0x0002f4b0 lw v0, 0x60(s3)               |     v0 = *((s3 + 24));
                                             |     if (v0 <= 0) {
    0x0002f4b4 blez v0, 0x2f1a8              |         goto label_12;
                                             |     }
    0x0002f4b8 lw v1, (v0)                   |     v1 = *(v0);
                                             |     if (v0 == 0) {
    0x0002f4bc bnel v0, zero, 0x2f1b4        |         goto label_13;
                                             |     }
                                             | label_34:
    0x0002f4c0 lw v0, 4(s3)                  |     v0 = *((s3 + 1));
    0x0002f4c4 addiu v0, v0, 0x10            |     v0 += 0x10;
    0x0002f4c8 b 0x2f1b0                     |     goto label_14;
                                             | label_45:
    0x0002f4cc slti s7, s7, 0                |     s7 = (s7 < 0) ? 1 : 0;
                                             |     if (s7 == 0) {
    0x0002f4d0 movn s2, s0, s7               |         s2 = s0;
                                             |     }
    0x0002f4d4 b 0x2f374                     |     goto label_5;
                                             | label_27:
    0x0002f4d8 lw v0, 4(v1)                  |     v0 = *((v1 + 1));
                                             | label_26:
    0x0002f4dc slti v0, v0, 7                |     v0 = (v0 < 7) ? 1 : 0;
    0x0002f4e0 xori v0, v0, 1                |     v0 ^= 1;
                                             |     if (v0 == 0) {
    0x0002f4e4 beql v0, zero, 0x2f0a4        |         goto label_15;
                                             |     }
    0x0002f4e8 lw a1, 0x38(s4)               |     a1 = *((s4 + 14));
    0x0002f4ec lw t9, -0x75ec(gp)            |     t9 = sym.imp.apr_array_pstrcat;
                                             | label_28:
    0x0002f4f0 addiu a2, zero, 0x2c          |     a2 = 0x2c;
    0x0002f4f4 move a1, s5                   |     a1 = s5;
    0x0002f4f8 move a0, s0                   |     a0 = s0;
    0x0002f4fc jalr t9                       |     t9 ();
    0x0002f500 lw gp, 0x28(sp)               |     gp = *(var_28h);
    0x0002f504 lw v1, 0x34(s1)               |     v1 = *((s1 + 13));
    0x0002f508 sw v0, 0x20(sp)               |     *(var_20h) = v0;
    0x0002f50c lw v0, -0x7fac(gp)            |     v0 = *(gp);
    0x0002f510 lw a0, -0x7fac(gp)            |     a0 = *(gp);
                                             |     /* str.AH03155:_select_protocol_from__s__choices_s_for_server__s */
    0x0002f514 addiu v0, v0, -0x5198         |     v0 += -0x5198;
    0x0002f518 lw t9, -0x7e3c(gp)            |     t9 = sym.ap_log_cerror_;
    0x0002f51c addiu a1, zero, 0x99f         |     a1 = 0x99f;
    0x0002f520 sw v1, 0x24(sp)               |     *(var_24h) = v1;
    0x0002f524 sw s6, 0x1c(sp)               |     *(var_1ch) = s6;
    0x0002f528 sw v0, 0x18(sp)               |     *(var_18h) = v0;
    0x0002f52c sw s3, 0x14(sp)               |     *(var_14h) = s3;
    0x0002f530 sw zero, 0x10(sp)             |     *(var_10h) = 0;
    0x0002f534 addiu a3, zero, 7             |     a3 = 7;
    0x0002f538 move a2, zero                 |     a2 = 0;
                                             |     /* str._usr_src_debug_apache2_2.4.57_r0_httpd_2.4.57_server_protocol.c */
    0x0002f53c addiu a0, a0, -0x5ed4         |     a0 += -0x5ed4;
    0x0002f540 jalr t9                       |     t9 ();
    0x0002f544 lw gp, 0x28(sp)               |     gp = *(var_28h);
    0x0002f548 lw a1, 0x38(s4)               |     a1 = *((s4 + 14));
    0x0002f54c b 0x2f110                     |     goto label_16;
                                             | label_39:
    0x0002f550 addiu v0, v0, 0x10            |     v0 += 0x10;
    0x0002f554 b 0x2f278                     |     goto label_17;
                                             | label_30:
    0x0002f558 lw ra, 0x54(sp)               |     ra = *(var_54h);
    0x0002f55c move s2, zero                 |     s2 = 0;
    0x0002f560 move v0, s2                   |     v0 = s2;
    0x0002f564 lw s7, 0x50(sp)               |     s7 = *(var_50h);
    0x0002f568 lw s6, 0x4c(sp)               |     s6 = *(var_4ch);
    0x0002f56c lw s5, 0x48(sp)               |     s5 = *(var_48h);
    0x0002f570 lw s4, 0x44(sp)               |     s4 = *(var_44h);
    0x0002f574 lw s3, 0x40(sp)               |     s3 = *(var_40h);
    0x0002f578 lw s2, 0x3c(sp)               |     s2 = *(var_3ch);
    0x0002f57c lw s1, 0x38(sp)               |     s1 = *(var_38h);
    0x0002f580 lw s0, 0x34(sp)               |     s0 = *(var_34h);
    0x0002f584 addiu sp, sp, 0x58            |     
    0x0002f588 jr ra                         |     return v0;
                                             | label_25:
    0x0002f58c lw v1, 4(s3)                  |     v1 = *((s3 + 1));
    0x0002f590 addiu v1, v1, 0x10            |     v1 += 0x10;
    0x0002f594 b 0x2f07c                     |     goto label_18;
                                             |     /* str._none_ */
                                             | label_42:
    0x0002f598 addiu v0, v0, -0x51a0         |     v0 += -0x51a0;
    0x0002f59c b 0x2f2a4                     |     goto label_19;
                                             | }
    ; assembly                                   | /* r2dec pseudo code output */
                                                 | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x3ac9c */
                                                 | #include <stdint.h>
                                                 |  
    ; (fcn) sym.ap_set_server_protocol ()        | void ap_set_server_protocol () {
    0x0003ac9c lw v0, 0x18(a0)                   |     v0 = *((a0 + 6));
    0x0003aca0 lw v0, (v0)                       |     v0 = *(v0);
    0x0003aca4 sw a1, 0x1c(v0)                   |     *((v0 + 7)) = a1;
    0x0003aca8 jr ra                             |     return v0;
                                                 | }
    ; assembly                                               | /* r2dec pseudo code output */
                                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/httpd @ 0x1a0b4 */
                                                             | #include <stdint.h>
                                                             |  
    ; (fcn) sym.ap_update_vhost_from_headers_ex ()           | void ap_update_vhost_from_headers_ex () {
    0x0001a0b4 lui gp, 9                                     |     
    0x0001a0b8 addiu gp, gp, -0x7194                         |     
    0x0001a0bc addu gp, gp, t9                               |     gp += t9;
    0x0001a0c0 addiu sp, sp, -0x88                           |     
    0x0001a0c4 lw v0, 8(a0)                                  |     v0 = *((a0 + 2));
    0x0001a0c8 sw s5, 0x74(sp)                               |     *(var_74h) = s5;
    0x0001a0cc lw s5, -0x7534(gp)                            |     s5 = *(gp);
    0x0001a0d0 sw s3, 0x6c(sp)                               |     *(var_6ch) = s3;
    0x0001a0d4 lw v0, 0x18(v0)                               |     v0 = *((v0 + 6));
    0x0001a0d8 lw s3, -0x7fac(gp)                            |     s3 = *(gp);
    0x0001a0dc lw v1, (s5)                                   |     v1 = *(s5);
    0x0001a0e0 lw t9, -0x7668(gp)                            |     t9 = sym.imp.apr_table_get;
    0x0001a0e4 sw s0, 0x60(sp)                               |     *(var_60h) = s0;
    0x0001a0e8 move s0, a0                                   |     s0 = a0;
    0x0001a0ec lw a0, 0xb0(a0)                               |     a0 = *((a0 + 44));
    0x0001a0f0 sw gp, 0x28(sp)                               |     *(var_28h) = gp;
    0x0001a0f4 sw s4, 0x70(sp)                               |     *(var_70h) = s4;
    0x0001a0f8 sw s2, 0x68(sp)                               |     *(var_68h) = s2;
    0x0001a0fc sw s1, 0x64(sp)                               |     *(var_64h) = s1;
    0x0001a100 sw v1, 0x5c(sp)                               |     *(var_5ch) = v1;
    0x0001a104 sw ra, 0x84(sp)                               |     *(var_84h) = ra;
    0x0001a108 sw fp, 0x80(sp)                               |     *(var_80h) = fp;
    0x0001a10c sw s7, 0x7c(sp)                               |     *(var_7ch) = s7;
    0x0001a110 sw s6, 0x78(sp)                               |     *(var_78h) = s6;
    0x0001a114 move s2, a1                                   |     s2 = a1;
                                                             |     /* esilref: 'Host' */
    0x0001a118 addiu a1, s3, -0x2e60                         |     a1 = s3 + -0x2e60;
    0x0001a11c lw s1, (v0)                                   |     s1 = *(v0);
    0x0001a120 jalr t9                                       |     t9 ();
    0x0001a124 lw v1, 0x30(s0)                               |     v1 = *((s0 + 12));
    0x0001a128 lw gp, 0x28(sp)                               |     gp = *(var_28h);
    0x0001a12c move s4, v0                                   |     s4 = v0;
                                                             |     if (v1 == 0) {
    0x0001a130 beqz v1, 0x1a330                              |         goto label_9;
                                                             |     }
    0x0001a134 lw t9, -0x7fbc(gp)                            |     t9 = *(gp);
    0x0001a138 lb a2, 0x41(s1)                               |     a2 = *((s1 + 65));
    0x0001a13c move a0, s0                                   |     a0 = s0;
                                                             |     /* fcn.00018ed0 */
    0x0001a140 addiu t9, t9, -0x7130                         |     t9 += -0x7130;
    0x0001a144 move a1, zero                                 |     a1 = 0;
    0x0001a148 bal 0x18ed0                                   |     fcn_00018ed0 ();
    0x0001a14c lw gp, 0x28(sp)                               |     gp = *(var_28h);
    0x0001a150 addiu a0, zero, 1                             |     a0 = 1;
                                                             |     if (s2 == 0) {
                                                             | label_3:
    0x0001a154 beql s2, zero, 0x1a1e0                        |         goto label_10;
                                                             |     }
    0x0001a158 lw a1, 0x44(s0)                               |     a1 = *((s0 + 17));
    0x0001a15c lb v1, 0x41(s1)                               |     v1 = *((s1 + 65));
                                                             |     do {
    0x0001a160 addiu s1, zero, 1                             |         s1 = 1;
                                                             |         if (v1 != s1) {
    0x0001a164 beql v1, s1, 0x1a178                          |             
    0x0001a168 lw v0, 4(s0)                                  |             v0 = *((s0 + 1));
                                                             |             if (a0 != 0) {
    0x0001a16c bnez a0, 0x1a1f4                              |                 goto label_11;
                                                             |             }
    0x0001a170 nop                                           |             
                                                             | label_2:
    0x0001a174 lw v0, 4(s0)                                  |             v0 = *((s0 + 1));
                                                             |         }
                                                             | label_1:
    0x0001a178 lw s1, 8(v0)                                  |         s1 = *((v0 + 2));
                                                             |         if (s1 == 0) {
    0x0001a17c beqz s1, 0x1a358                              |             goto label_12;
                                                             |         }
    0x0001a180 nop                                           |         
    0x0001a184 lw v1, 0x30(s0)                               |         v1 = *((s0 + 12));
                                                             |         if (v1 == 0) {
    0x0001a188 beql v1, zero, 0x1a380                        |             goto label_13;
                                                             |         }
    0x0001a18c lw v0, 0xc(v0)                                |         v0 = *((v0 + 3));
    0x0001a190 lw t9, -0x7fbc(gp)                            |         t9 = *(gp);
                                                             |         /* fcn.00018d58 */
                                                             | label_4:
    0x0001a194 addiu t9, t9, -0x72a8                         |         t9 += -0x72a8;
    0x0001a198 move a0, s0                                   |         a0 = s0;
    0x0001a19c bal 0x18d58                                   |         fcn_00018d58 ();
    0x0001a1a0 lw gp, 0x28(sp)                               |         gp = *(var_28h);
                                                             | label_0:
    0x0001a1a4 lw a0, 0x5c(sp)                               |         a0 = *(var_5ch);
    0x0001a1a8 lw v1, (s5)                                   |         v1 = *(s5);
    0x0001a1ac lw ra, 0x84(sp)                               |         ra = *(var_84h);
                                                             |         if (a0 != v1) {
    0x0001a1b0 bne a0, v1, 0x1a464                           |             goto label_14;
                                                             |         }
    0x0001a1b4 lw fp, 0x80(sp)                               |         fp = *(var_80h);
    0x0001a1b8 lw s7, 0x7c(sp)                               |         s7 = *(var_7ch);
    0x0001a1bc lw s6, 0x78(sp)                               |         s6 = *(var_78h);
    0x0001a1c0 lw s5, 0x74(sp)                               |         s5 = *(var_74h);
    0x0001a1c4 lw s4, 0x70(sp)                               |         s4 = *(var_70h);
    0x0001a1c8 lw s3, 0x6c(sp)                               |         s3 = *(var_6ch);
    0x0001a1cc lw s2, 0x68(sp)                               |         s2 = *(var_68h);
    0x0001a1d0 lw s1, 0x64(sp)                               |         s1 = *(var_64h);
    0x0001a1d4 lw s0, 0x60(sp)                               |         s0 = *(var_60h);
    0x0001a1d8 addiu sp, sp, 0x88                            |         
    0x0001a1dc jr ra                                         |         return v1;
                                                             | label_10:
    0x0001a1e0 addiu v1, zero, 0xc8                          |         v1 = 0xc8;
    0x0001a1e4 beql a1, v1, 0x1a160                          |         
                                                             |     } while (a1 == v1);
    0x0001a1e8 lb v1, 0x41(s1)                               |     v1 = *((s1 + 65));
    0x0001a1ec addiu v0, zero, 0xc8                          |     v0 = 0xc8;
    0x0001a1f0 b 0x1a1a4                                     |     goto label_0;
                                                             |     if (s4 == 0) {
                                                             | label_11:
    0x0001a1f4 beql s4, zero, 0x1a178                        |         goto label_1;
                                                             |     }
    0x0001a1f8 lw v0, 4(s0)                                  |     v0 = *((s0 + 1));
    0x0001a1fc lw a0, 0x30(s0)                               |     a0 = *((s0 + 12));
    0x0001a200 lw t9, -0x74c4(gp)                            |     t9 = sym.imp.strlen;
                                                             |     if (v0 == 0) {
    0x0001a204 beqz v0, 0x1a428                              |         goto label_15;
                                                             |     }
    0x0001a208 lw v0, -0x7fac(gp)                            |     v0 = *(gp);
    0x0001a20c sw s1, 0x38(sp)                               |     *(var_38h) = s1;
    0x0001a210 addiu v0, v0, -0x77f4                         |     v0 += -0x77f4;
    0x0001a214 sw v0, 0x34(sp)                               |     *(var_34h) = v0;
    0x0001a218 sw a0, 0x3c(sp)                               |     *(var_3ch) = a0;
    0x0001a21c jalr t9                                       |     t9 ();
    0x0001a220 lw gp, 0x28(sp)                               |     gp = *(var_28h);
    0x0001a224 sw v0, 0x40(sp)                               |     *(var_40h) = v0;
    0x0001a228 sw s1, 0x48(sp)                               |     *(var_48h) = s1;
    0x0001a22c lw v0, -0x7fac(gp)                            |     v0 = *(gp);
    0x0001a230 addiu s6, zero, 3                             |     s6 = 3;
    0x0001a234 addiu v0, v0, 0x2254                          |     v0 += 0x2254;
    0x0001a238 sw v0, 0x44(sp)                               |     *(var_44h) = v0;
                                                             | label_6:
    0x0001a23c lw a0, 0x144(s0)                              |     a0 = *(s0);
    0x0001a240 addiu v1, sp, 0x60                            |     v1 = sp + 0x60;
                                                             |     if (a0 != 0) {
    0x0001a244 beqz a0, 0x1a288                              |         
    0x0001a248 addiu s1, s6, 1                               |         s1 = s6 + 1;
    0x0001a24c sll v0, s6, 3                                 |         v0 = s6 << 3;
    0x0001a250 sll s1, s1, 3                                 |         s1 <<= 3;
    0x0001a254 addu v0, v1, v0                               |         v0 = v1 + v0;
    0x0001a258 addu s1, v1, s1                               |         s1 = v1 + s1;
    0x0001a25c lw v1, -0x7fac(gp)                            |         v1 = *(gp);
    0x0001a260 lw t9, -0x74c4(gp)                            |         t9 = sym.imp.strlen;
    0x0001a264 addiu v1, v1, 0x16b0                          |         v1 += 0x16b0;
    0x0001a268 sw v1, -0x2c(v0)                              |         *((v0 - 11)) = v1;
    0x0001a26c addiu v1, zero, 1                             |         v1 = 1;
    0x0001a270 sw v1, -0x28(v0)                              |         *((v0 - 10)) = v1;
    0x0001a274 sw a0, -0x2c(s1)                              |         *((s1 - 11)) = a0;
    0x0001a278 jalr t9                                       |         t9 ();
    0x0001a27c addiu s6, s6, 2                               |         s6 += 2;
    0x0001a280 lw gp, 0x28(sp)                               |         gp = *(var_28h);
    0x0001a284 sw v0, -0x28(s1)                              |         *((s1 - 10)) = v0;
                                                             |     }
    0x0001a288 lw t9, -0x7660(gp)                            |     t9 = sym.imp.apr_pstrcatv;
    0x0001a28c lw a0, (s0)                                   |     a0 = *(s0);
    0x0001a290 move a3, zero                                 |     a3 = 0;
    0x0001a294 move a2, s6                                   |     a2 = s6;
    0x0001a298 addiu a1, sp, 0x34                            |     a1 = sp + 0x34;
    0x0001a29c jalr t9                                       |     t9 ();
    0x0001a2a0 lw gp, 0x28(sp)                               |     gp = *(var_28h);
    0x0001a2a4 lw a0, 0xb0(s0)                               |     a0 = *((s0 + 44));
    0x0001a2a8 move a2, v0                                   |     a2 = v0;
    0x0001a2ac lw t9, -0x7590(gp)                            |     t9 = sym.imp.apr_table_setn;
                                                             |     /* esilref: 'Host' */
    0x0001a2b0 addiu a1, s3, -0x2e60                         |     a1 = s3 + -0x2e60;
    0x0001a2b4 move s1, v0                                   |     s1 = v0;
    0x0001a2b8 jalr t9                                       |     t9 ();
    0x0001a2bc lw a0, 0x108(s0)                              |     a0 = *(s0);
    0x0001a2c0 lw gp, 0x28(sp)                               |     gp = *(var_28h);
                                                             |     if (a0 == 0) {
    0x0001a2c4 beqz a0, 0x1a448                              |         goto label_16;
                                                             |     }
                                                             | label_8:
    0x0001a2c8 lw v1, (a0)                                   |     v1 = *(a0);
                                                             |     if (v1 == 0) {
                                                             | label_7:
    0x0001a2cc beql v1, zero, 0x1a41c                        |         goto label_17;
                                                             |     }
    0x0001a2d0 lw v1, 4(a0)                                  |     v1 = *((a0 + 1));
    0x0001a2d4 lb v1, (v1)                                   |     v1 = *(v1);
                                                             |     if (v1 < 0) {
    0x0001a2d8 bltzl v1, 0x1a41c                             |         goto label_17;
                                                             |     }
    0x0001a2dc lw v1, 4(a0)                                  |     v1 = *((a0 + 1));
    0x0001a2e0 slti v1, v1, 7                                |     v1 = (v1 < 7) ? 1 : 0;
    0x0001a2e4 xori v1, v1, 1                                |     v1 ^= 1;
                                                             |     if (v1 == 0) {
                                                             | label_5:
    0x0001a2e8 beql v1, zero, 0x1a178                        |         goto label_1;
                                                             |     }
    0x0001a2ec lw v0, 4(s0)                                  |     v0 = *((s0 + 1));
    0x0001a2f0 lw v0, -0x7fac(gp)                            |     v0 = *(gp);
    0x0001a2f4 lw a0, -0x7fac(gp)                            |     a0 = *(gp);
    0x0001a2f8 lw t9, -0x7f08(gp)                            |     t9 = sym.ap_log_rerror_;
                                                             |     /* str.AH02417:_Replacing_host_header__s_with_host__s_given_in_the_request_uri */
    0x0001a2fc addiu v0, v0, -0x77f0                         |     v0 += -0x77f0;
    0x0001a300 sw s1, 0x20(sp)                               |     *(var_20h) = s1;
    0x0001a304 sw s4, 0x1c(sp)                               |     *(var_1ch) = s4;
    0x0001a308 sw v0, 0x18(sp)                               |     *(var_18h) = v0;
    0x0001a30c sw s0, 0x14(sp)                               |     *(var_14h) = s0;
    0x0001a310 sw zero, 0x10(sp)                             |     *(var_10h) = 0;
    0x0001a314 addiu a3, zero, 7                             |     a3 = 7;
    0x0001a318 move a2, zero                                 |     a2 = 0;
    0x0001a31c addiu a1, zero, 0x4a7                         |     a1 = 0x4a7;
                                                             |     /* str._usr_src_debug_apache2_2.4.57_r0_httpd_2.4.57_server_vhost.c */
    0x0001a320 addiu a0, a0, -0x7adc                         |     a0 += -0x7adc;
    0x0001a324 jalr t9                                       |     t9 ();
    0x0001a328 lw gp, 0x28(sp)                               |     gp = *(var_28h);
    0x0001a32c b 0x1a174                                     |     goto label_2;
                                                             | label_9:
    0x0001a330 lw t9, -0x7fbc(gp)                            |     t9 = *(gp);
                                                             |     if (v0 == 0) {
    0x0001a334 beqz v0, 0x1a374                              |         goto label_18;
                                                             |     }
    0x0001a338 lb a2, 0x41(s1)                               |     a2 = *((s1 + 65));
    0x0001a33c move a0, s0                                   |     a0 = s0;
                                                             |     /* fcn.00018ed0 */
    0x0001a340 addiu t9, t9, -0x7130                         |     t9 += -0x7130;
    0x0001a344 move a1, v0                                   |     a1 = v0;
    0x0001a348 bal 0x18ed0                                   |     fcn_00018ed0 ();
    0x0001a34c lw gp, 0x28(sp)                               |     gp = *(var_28h);
    0x0001a350 move a0, zero                                 |     a0 = 0;
    0x0001a354 b 0x1a154                                     |     goto label_3;
                                                             | label_12:
    0x0001a358 addiu v0, zero, 0xc8                          |     v0 = 0xc8;
                                                             |     if (s2 == 0) {
    0x0001a35c beqz s2, 0x1a1a4                              |         goto label_0;
                                                             |     }
    0x0001a360 lw v0, 0x30(s0)                               |     v0 = *((s0 + 12));
    0x0001a364 lw t9, -0x7fbc(gp)                            |     t9 = *(gp);
                                                             |     if (v0 != 0) {
    0x0001a368 bnez v0, 0x1a194                              |         goto label_4;
                                                             |     }
    0x0001a36c addiu v0, zero, 0xc8                          |     v0 = 0xc8;
    0x0001a370 b 0x1a1a4                                     |     goto label_0;
                                                             | label_18:
    0x0001a374 move a0, zero                                 |     a0 = 0;
    0x0001a378 move v0, zero                                 |     v0 = 0;
    0x0001a37c b 0x1a154                                     |     goto label_3;
                                                             | label_13:
    0x0001a380 move v1, zero                                 |     v1 = 0;
    0x0001a384 addiu s6, zero, 0x2f                          |     s6 = 0x2f;
    0x0001a388 lhu s7, 0xc(v0)                               |     s7 = *((v0 + 6));
    0x0001a38c lw v0, 4(s1)                                  |     v0 = *((s1 + 1));
                                                             |     do {
    0x0001a390 lhu v0, 0xc(v0)                               |         v0 = *((v0 + 6));
                                                             |         if (v0 != 0) {
    0x0001a394 beql v0, zero, 0x1a3a8                        |             
    0x0001a398 lw s2, 8(s1)                                  |             s2 = *((s1 + 2));
    0x0001a39c lw s1, (s1)                                   |             s1 = *(s1);
                                                             |             if (s7 == v0) {
    0x0001a3a0 bnel s7, v0, 0x1a40c                          |                 goto label_19;
                                                             |             }
    0x0001a3a4 lw s2, 8(s1)                                  |             s2 = *((s1 + 2));
                                                             |         }
                                                             |         if (s2 != v1) {
    0x0001a3a8 beql s2, v1, 0x1a40c                          |             
    0x0001a3ac lw s1, (s1)                                   |             s1 = *(s1);
    0x0001a3b0 lw s3, 0x60(s2)                               |             s3 = *((s2 + 24));
    0x0001a3b4 lw t9, -0x76c4(gp)                            |             t9 = sym.imp.strncmp;
                                                             |             if (s3 != 0) {
    0x0001a3b8 beqz s3, 0x1a404                              |                 
    0x0001a3bc lw s4, 0xe4(s0)                               |                 s4 = *((s0 + 57));
    0x0001a3c0 lw fp, 0x64(s2)                               |                 fp = *((s2 + 25));
    0x0001a3c4 move a2, fp                                   |                 a2 = fp;
    0x0001a3c8 move a1, s3                                   |                 a1 = s3;
    0x0001a3cc move a0, s4                                   |                 a0 = s4;
    0x0001a3d0 jalr t9                                       |                 t9 ();
    0x0001a3d4 lw gp, 0x28(sp)                               |                 gp = *(var_28h);
                                                             |                 if (v0 != 0) {
    0x0001a3d8 bnez v0, 0x1a404                              |                     goto label_20;
                                                             |                 }
    0x0001a3dc addu s3, s3, fp                               |                 s3 += fp;
    0x0001a3e0 lb v0, -1(s3)                                 |                 v0 = *((s3 - 1));
                                                             |                 if (v0 == s6) {
    0x0001a3e4 beql v0, s6, 0x1a440                          |                     goto label_21;
                                                             |                 }
    0x0001a3e8 sw s2, 8(s0)                                  |                 *((s0 + 2)) = s2;
    0x0001a3ec addu s4, s4, fp                               |                 s4 += fp;
    0x0001a3f0 lb v0, (s4)                                   |                 v0 = *(s4);
                                                             |                 if (v0 == s6) {
    0x0001a3f4 beql v0, s6, 0x1a440                          |                     goto label_21;
                                                             |                 }
    0x0001a3f8 sw s2, 8(s0)                                  |                 *((s0 + 2)) = s2;
                                                             |                 if (v0 == 0) {
    0x0001a3fc beql v0, zero, 0x1a440                        |                     goto label_21;
                                                             |                 }
    0x0001a400 sw s2, 8(s0)                                  |                 *((s0 + 2)) = s2;
                                                             |             }
                                                             | label_20:
    0x0001a404 move v1, s2                                   |             v1 = s2;
    0x0001a408 lw s1, (s1)                                   |             s1 = *(s1);
                                                             |         }
                                                             | label_19:
    0x0001a40c lw v0, 4(s1)                                  |         v0 = *((s1 + 1));
    0x0001a410 bnel s1, zero, 0x1a390                        |         
                                                             |     } while (s1 == 0);
    0x0001a414 addiu v0, zero, 0xc8                          |     v0 = 0xc8;
    0x0001a418 b 0x1a1a4                                     |     goto label_0;
                                                             | label_17:
    0x0001a41c slti v1, v1, 7                                |     v1 = (v1 < 7) ? 1 : 0;
    0x0001a420 xori v1, v1, 1                                |     v1 ^= 1;
    0x0001a424 b 0x1a2e8                                     |     goto label_5;
                                                             | label_15:
    0x0001a428 sw a0, 0x34(sp)                               |     *(var_34h) = a0;
    0x0001a42c jalr t9                                       |     t9 ();
    0x0001a430 sw v0, 0x38(sp)                               |     *(var_38h) = v0;
    0x0001a434 lw gp, 0x28(sp)                               |     gp = *(var_28h);
    0x0001a438 addiu s6, zero, 1                             |     s6 = 1;
    0x0001a43c b 0x1a23c                                     |     goto label_6;
                                                             | label_21:
    0x0001a440 addiu v0, zero, 0xc8                          |     v0 = 0xc8;
    0x0001a444 b 0x1a1a4                                     |     goto label_0;
                                                             | label_16:
    0x0001a448 lw v0, 4(s0)                                  |     v0 = *((s0 + 1));
    0x0001a44c lw a0, 0x60(v0)                               |     a0 = *((v0 + 24));
    0x0001a450 lw v1, (a0)                                   |     v1 = *(a0);
                                                             |     if (a0 == 0) {
    0x0001a454 bnel a0, zero, 0x1a2cc                        |         goto label_7;
                                                             |     }
    0x0001a458 lw a0, 8(s0)                                  |     a0 = *((s0 + 2));
    0x0001a45c addiu a0, a0, 0x10                            |     a0 += 0x10;
    0x0001a460 b 0x1a2c8                                     |     goto label_8;
                                                             | label_14:
    0x0001a464 lw t9, -0x75e8(gp)                            |     t9 = sym.imp.__stack_chk_fail;
    0x0001a468 jalr t9                                       |     t9 ();
    0x0001a46c nop                                           |     
                                                             | }

[*] Function popen used 1 times httpd