[*] Binary protection state of php-cli

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


[*] Function fprintf tear down of php-cli

    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/1568982-13971496.squashfs_v4_le_extract/usr/bin/php-cli @ 0x41738c */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.0041738c ()                  | void fcn_0041738c () {
    0x0041738c lui gp, 0x2f                  |     
    0x00417390 addiu gp, gp, 0x6e74          |     
    0x00417394 addu gp, gp, t9               |     gp += t9;
    0x00417398 addiu sp, sp, -0x30           |     
    0x0041739c lw t9, -0x7718(gp)            |     t9 = *(gp);
    0x004173a0 sw gp, 0x18(sp)               |     *(var_18h) = gp;
    0x004173a4 sw s2, 0x28(sp)               |     *(var_28h) = s2;
    0x004173a8 sw ra, 0x2c(sp)               |     *(var_2ch) = ra;
    0x004173ac sw s1, 0x24(sp)               |     *(var_24h) = s1;
    0x004173b0 sw s0, 0x20(sp)               |     *(var_20h) = s0;
    0x004173b4 move s2, a0                   |     s2 = a0;
    0x004173b8 bal 0x417a10                  |     fcn_00417a10 ();
    0x004173bc lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     if (v0 == 0) {
    0x004173c0 beqz v0, 0x417480             |         goto label_1;
                                             |     }
    0x004173c4 lw t9, -0x6194(gp)            |     t9 = sym.imp.strlen;
    0x004173c8 move a0, s2                   |     a0 = s2;
    0x004173cc move s1, v0                   |     s1 = v0;
    0x004173d0 jalr t9                       |     t9 ();
    0x004173d4 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x004173d8 move a0, s1                   |     a0 = s1;
    0x004173dc lw t9, -0x6194(gp)            |     t9 = sym.imp.strlen;
    0x004173e0 move s0, v0                   |     s0 = v0;
    0x004173e4 jalr t9                       |     t9 ();
    0x004173e8 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x004173ec addu v0, s0, v0               |     v0 = s0 + v0;
    0x004173f0 lw t9, -0x7f5c(gp)            |     t9 = sym._emalloc;
    0x004173f4 addiu a0, v0, 0x80            |     a0 = v0 + 0x80;
    0x004173f8 jalr t9                       |     t9 ();
    0x004173fc lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x00417400 lw t9, -0x7714(gp)            |     t9 = *(gp);
    0x00417404 move s0, v0                   |     s0 = v0;
    0x00417408 bal 0x4179f8                  |     fcn_004179f8 ();
    0x0041740c lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x00417410 sw v0, 0x10(sp)               |     *(var_10h) = v0;
    0x00417414 move a3, s1                   |     a3 = s1;
    0x00417418 lw a1, -0x7fc0(gp)            |     a1 = *((gp - 8176));
    0x0041741c lw t9, -0x5efc(gp)            |     t9 = sym.imp.sprintf;
    0x00417420 move a2, s2                   |     a2 = s2;
                                             |     /* str._s_in__s_on_line__d_n */
    0x00417424 addiu a1, a1, 0xbf0           |     a1 += 0xbf0;
    0x00417428 move a0, s0                   |     a0 = s0;
    0x0041742c jalr t9                       |     t9 ();
    0x00417430 lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     do {
    0x00417434 lw v0, -0x7c58(gp)            |         v0 = *(gp);
    0x00417438 lbu v0, 0x5c(v0)              |         v0 = *((v0 + 92));
    0x0041743c move a2, s0                   |         a2 = s0;
                                             |         if (v0 == 0) {
    0x00417440 beqz v0, 0x41749c             |             goto label_2;
                                             |         }
    0x00417444 lw v0, -0x617c(gp)            |         v0 = *((gp - 6239));
    0x00417448 lw a1, -0x7fc0(gp)            |         a1 = *((gp - 8176));
    0x0041744c lw t9, -0x6254(gp)            |         t9 = sym.imp.fprintf
    0x00417450 lw a0, (v0)                   |         a0 = *(v0);
                                             |         /* str.PHP:___s */
    0x00417454 addiu a1, a1, 0xc2c           |         a1 += 0xc2c;
    0x00417458 jalr t9                       |         t9 ();
    0x0041745c lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             | label_0:
    0x00417460 lw ra, 0x2c(sp)               |         ra = *(var_2ch);
    0x00417464 lw s2, 0x28(sp)               |         s2 = *(var_28h);
    0x00417468 lw s1, 0x24(sp)               |         s1 = *(var_24h);
    0x0041746c move a0, s0                   |         a0 = s0;
    0x00417470 lw t9, -0x7fe4(gp)            |         t9 = sym._efree;
    0x00417474 lw s0, 0x20(sp)               |         s0 = *(var_20h);
    0x00417478 addiu sp, sp, 0x30            |         
    0x0041747c jr t9                         |         t9 ();
                                             | label_1:
    0x00417480 lw a0, -0x7fc0(gp)            |         a0 = *((gp - 8176));
    0x00417484 lw t9, -0x7f6c(gp)            |         t9 = sym._estrdup;
                                             |         /* str.Invalid_configuration_directive_n */
    0x00417488 addiu a0, a0, 0xc08           |         a0 += 0xc08;
    0x0041748c jalr t9                       |         t9 ();
    0x00417490 move s0, v0                   |         s0 = v0;
    0x00417494 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x00417498 b 0x417434                    |         
                                             |     } while (1);
                                             | label_2:
    0x0041749c lw a1, -0x7fc4(gp)            |     a1 = *((gp - 8177));
    0x004174a0 lw t9, -0x7f18(gp)            |     t9 = sym.zend_error;
                                             |     /* esilref: '&s' */
    0x004174a4 addiu a1, a1, -0x40cc         |     a1 += -0x40cc;
    0x004174a8 addiu a0, zero, 2             |     a0 = 2;
    0x004174ac bal 0x417dd4                  |     sym_zend_error ();
    0x004174b0 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x004174b4 b 0x417460                    |     goto label_0;
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/1568982-13971496.squashfs_v4_le_extract/usr/bin/php-cli @ 0x417b20 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.00417b20 ()                  | void fcn_00417b20 () {
    0x00417b20 lui gp, 0x2f                  |     
    0x00417b24 addiu gp, gp, 0x66e0          |     
    0x00417b28 addu gp, gp, t9               |     gp += t9;
    0x00417b2c lw v0, -0x617c(gp)            |     v0 = *((gp - 6239));
    0x00417b30 addiu sp, sp, -0x20           |     
    0x00417b34 lw a2, -0x7fc0(gp)            |     a2 = *((gp - 8176));
    0x00417b38 lw a1, -0x7fc0(gp)            |     a1 = *((gp - 8176));
    0x00417b3c lw t9, -0x6254(gp)            |     t9 = sym.imp.fprintf
    0x00417b40 lw a0, (v0)                   |     a0 = *(v0);
                                             |     /* str.zend_mm_heap_corrupted */
    0x00417b44 addiu a2, a2, 0x1b98          |     a2 += 0x1b98;
    0x00417b48 sw gp, 0x10(sp)               |     *(var_10h) = gp;
    0x00417b4c sw ra, 0x1c(sp)               |     *(var_1ch) = ra;
                                             |     /* esilref: '&s
' */
    0x00417b50 addiu a1, a1, 0x705c          |     a1 += 0x705c;
    0x00417b54 jalr t9                       |     t9 ();
    0x00417b58 lw gp, 0x10(sp)               |     gp = *(var_10h);
    0x00417b5c lw t9, -0x63c8(gp)            |     t9 = sym.imp.exit;
    0x00417b60 addiu a0, zero, 1             |     a0 = 1;
    0x00417b64 jalr t9                       |     t9 ();
    0x00417b68 lui gp, 0x2f                  |     
    0x00417b6c addiu gp, gp, 0x6698          |     
    0x00417b70 addu gp, gp, t9               |     gp += t9;
    0x00417b74 addiu sp, sp, -0x830          |     
    0x00417b78 lw t9, -0x764c(gp)            |     t9 = sym.zend_is_compiling;
    0x00417b7c sw gp, 0x20(sp)               |     *(var_20h) = gp;
    0x00417b80 sw ra, 0x82c(sp)              |     *(var_82ch) = ra;
    0x00417b84 sw s0, 0x828(sp)              |     *(var_828h) = s0;
    0x00417b88 jalr t9                       |     t9 ();
    0x00417b8c nop                           |     
    0x00417b90 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 == 0) {
    0x00417b94 beqz v0, 0x417c30             |         goto label_2;
                                             |     }
    0x00417b98 lw t9, -0x7614(gp)            |     t9 = sym.zend_get_compiled_filename;
    0x00417b9c jalr t9                       |     t9 ();
    0x00417ba0 nop                           |     
    0x00417ba4 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00417ba8 lw t9, -0x7610(gp)            |     t9 = sym.zend_get_compiled_lineno;
    0x00417bac addiu s0, v0, 0x10            |     s0 = v0 + 0x10;
    0x00417bb0 jalr t9                       |     t9 ();
    0x00417bb4 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00417bb8 bnez s0, 0x417bc4             |     
                                             |     while (1) {
    0x00417bbc lw s0, -0x7fd0(gp)            |         s0 = *((gp - 8180));
                                             |         /* str.Unknown */
    0x00417bc0 addiu s0, s0, -0x45a4         |         s0 += -0x45a4;
                                             | label_1:
    0x00417bc4 lw v1, -0x7ec8(gp)            |         v1 = *(gp);
    0x00417bc8 lw a2, -0x7fc0(gp)            |         a2 = *((gp - 8176));
    0x00417bcc lw t9, -0x6390(gp)            |         t9 = sym.imp.snprintf;
    0x00417bd0 lw a3, 0x1f8(v1)              |         a3 = *((v1 + 126));
    0x00417bd4 sw s0, 0x14(sp)               |         *(var_14h) = s0;
    0x00417bd8 sw v0, 0x18(sp)               |         *(var_18h) = v0;
    0x00417bdc lw v0, 0x140(v1)              |         v0 = *((v1 + 80));
    0x00417be0 addiu s0, sp, 0x28            |         s0 = sp + 0x28;
    0x00417be4 sw v0, 0x10(sp)               |         *(var_10h_2) = v0;
                                             |         /* str._nFatal_error:_Maximum_execution_time_of__d_d_seconds_exceeded__terminated__in__s_on_line__d_n */
    0x00417be8 addiu a2, a2, 0x3fb0          |         a2 += 0x3fb0;
    0x00417bec addiu a1, zero, 0x800         |         a1 = 0x800;
    0x00417bf0 move a0, s0                   |         a0 = s0;
    0x00417bf4 jalr t9                       |         t9 ();
    0x00417bf8 lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |         if (v0 > 0) {
    0x00417bfc blez v0, 0x417c24             |             
    0x00417c00 sltiu a2, v0, 0x801           |             a2 = (v0 < 0x801) ? 1 : 0;
    0x00417c04 addiu v1, zero, 0x800         |             v1 = 0x800;
    0x00417c08 lw t9, -0x5ffc(gp)            |             t9 = sym.imp.write;
                                             |             if (a2 == 0) {
    0x00417c0c movn v1, v0, a2               |                 v1 = v0;
                                             |             }
    0x00417c10 move a2, v1                   |             a2 = v1;
    0x00417c14 move a1, s0                   |             a1 = s0;
    0x00417c18 addiu a0, zero, 2             |             a0 = 2;
    0x00417c1c jalr t9                       |             t9 ();
    0x00417c20 lw gp, 0x20(sp)               |             gp = *(var_20h);
                                             |         }
    0x00417c24 lw t9, -0x6058(gp)            |         t9 = sym.imp._exit;
    0x00417c28 addiu a0, zero, 0x7c          |         a0 = 0x7c;
    0x00417c2c jalr t9                       |         t9 ();
                                             | label_2:
    0x00417c30 lw t9, -0x7684(gp)            |         t9 = sym.zend_is_executing;
    0x00417c34 jalr t9                       |         t9 ();
    0x00417c38 nop                           |         
    0x00417c3c lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |         if (v0 != 0) {
    0x00417c40 bnez v0, 0x417c4c             |             goto label_3;
                                             |         }
                                             | label_0:
    0x00417c44 move v0, zero                 |         v0 = 0;
    0x00417c48 b 0x417bbc                    |         
                                             |     }
                                             | label_3:
    0x00417c4c lw t9, -0x760c(gp)            |     t9 = sym.zend_get_executed_filename;
    0x00417c50 jalr t9                       |     t9 ();
    0x00417c54 nop                           |     
    0x00417c58 lb v1, (v0)                   |     v1 = *(v0);
    0x00417c5c move s0, v0                   |     s0 = v0;
    0x00417c60 addiu v0, zero, 0x5b          |     v0 = 0x5b;
    0x00417c64 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v1 == v0) {
    0x00417c68 beq v1, v0, 0x417c44          |         goto label_0;
                                             |     }
    0x00417c6c lw t9, -0x7608(gp)            |     t9 = sym.zend_get_executed_lineno;
    0x00417c70 jalr t9                       |     t9 ();
    0x00417c74 nop                           |     
    0x00417c78 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00417c7c b 0x417bc4                    |     goto label_1;
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/1568982-13971496.squashfs_v4_le_extract/usr/bin/php-cli @ 0x53f710 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.0053f710 ()                  | void fcn_0053f710 () {
    0x0053f710 lui gp, 0x1d                  |     
    0x0053f714 addiu gp, gp, -0x1510         |     
    0x0053f718 addu gp, gp, t9               |     gp += t9;
    0x0053f71c addiu sp, sp, -0x30           |     
    0x0053f720 lw t9, -0x6254(gp)            |     t9 = sym.imp.fprintf
    0x0053f724 sw s4, 0x28(sp)               |     *(var_28h) = s4;
    0x0053f728 lw s4, -0x617c(gp)            |     s4 = *((gp - 6239));
    0x0053f72c sw s3, 0x24(sp)               |     *(var_24h) = s3;
    0x0053f730 sw s1, 0x1c(sp)               |     *(var_1ch) = s1;
    0x0053f734 sw s0, 0x18(sp)               |     *(var_18h) = s0;
    0x0053f738 move s1, a2                   |     s1 = a2;
    0x0053f73c move s0, a1                   |     s0 = a1;
    0x0053f740 move s3, a3                   |     s3 = a3;
    0x0053f744 addiu a3, a2, 1               |     a3 = a2 + 1;
    0x0053f748 move a2, a1                   |     a2 = a1;
    0x0053f74c lw a1, -0x7fbc(gp)            |     a1 = *((gp - 8175));
    0x0053f750 sw s2, 0x20(sp)               |     *(var_20h) = s2;
    0x0053f754 move s2, a0                   |     s2 = a0;
    0x0053f758 lw a0, (s4)                   |     a0 = *(s4);
    0x0053f75c sw gp, 0x10(sp)               |     *(var_10h) = gp;
    0x0053f760 sw ra, 0x2c(sp)               |     *(var_2ch) = ra;
                                             |     /* str.Error_in_argument__d__char__d:_ */
    0x0053f764 addiu a1, a1, 0x3dc0          |     a1 += 0x3dc0;
    0x0053f768 jalr t9                       |     t9 ();
    0x0053f76c addiu v0, zero, 2             |     v0 = 2;
    0x0053f770 lw gp, 0x10(sp)               |     gp = *(var_10h);
    0x0053f774 lw a0, (s4)                   |     a0 = *(s4);
                                             |     if (s3 != v0) {
    0x0053f778 beq s3, v0, 0x53f7b8          |         
    0x0053f77c addiu v0, zero, 3             |         v0 = 3;
    0x0053f780 sll s0, s0, 2                 |         s0 <<= 2;
                                             |         if (s3 == v0) {
    0x0053f784 beq s3, v0, 0x53f7f8          |             goto label_0;
                                             |         }
    0x0053f788 move a1, a0                   |         a1 = a0;
    0x0053f78c lw a0, -0x7fbc(gp)            |         a0 = *((gp - 8175));
    0x0053f790 lw ra, 0x2c(sp)               |         ra = *(var_2ch);
    0x0053f794 lw s4, 0x28(sp)               |         s4 = *(var_28h);
    0x0053f798 lw s3, 0x24(sp)               |         s3 = *(var_24h);
    0x0053f79c lw s2, 0x20(sp)               |         s2 = *(var_20h);
    0x0053f7a0 lw s1, 0x1c(sp)               |         s1 = *(var_1ch);
    0x0053f7a4 lw s0, 0x18(sp)               |         s0 = *(var_18h);
    0x0053f7a8 lw t9, -0x5edc(gp)            |         t9 = sym.imp.fputs;
                                             |         /* str.:_in_flags_n */
    0x0053f7ac addiu a0, a0, 0x3de0          |         a0 += 0x3de0;
    0x0053f7b0 addiu sp, sp, 0x30            |         
    0x0053f7b4 jr t9                         |         t9 ();
                                             |     }
    0x0053f7b8 sll v0, s0, 2                 |     v0 = s0 << 2;
    0x0053f7bc addu s0, s2, v0               |     s0 = s2 + v0;
    0x0053f7c0 lw a1, -0x7fbc(gp)            |     a1 = *((gp - 8175));
    0x0053f7c4 lw a2, (s0)                   |     a2 = *(s0);
                                             |     /* str.option_not_found__c_n */
    0x0053f7c8 addiu a1, a1, 0x3dec          |     a1 += 0x3dec;
    0x0053f7cc addu a2, a2, s1               |     a2 += s1;
    0x0053f7d0 lb a2, (a2)                   |     a2 = *(a2);
                                             |     do {
    0x0053f7d4 lw ra, 0x2c(sp)               |         ra = *(var_2ch);
    0x0053f7d8 lw s4, 0x28(sp)               |         s4 = *(var_28h);
    0x0053f7dc lw s3, 0x24(sp)               |         s3 = *(var_24h);
    0x0053f7e0 lw s2, 0x20(sp)               |         s2 = *(var_20h);
    0x0053f7e4 lw s1, 0x1c(sp)               |         s1 = *(var_1ch);
    0x0053f7e8 lw s0, 0x18(sp)               |         s0 = *(var_18h);
    0x0053f7ec lw t9, -0x6254(gp)            |         t9 = sym.imp.fprintf
    0x0053f7f0 addiu sp, sp, 0x30            |         
    0x0053f7f4 jr t9                         |         t9 ();
                                             | label_0:
    0x0053f7f8 addu s0, s2, s0               |         s0 = s2 + s0;
    0x0053f7fc lw a1, -0x7fbc(gp)            |         a1 = *((gp - 8175));
    0x0053f800 lw a2, (s0)                   |         a2 = *(s0);
                                             |         /* str.no_argument_for_option__c_n */
    0x0053f804 addiu a1, a1, 0x3e04          |         a1 += 0x3e04;
    0x0053f808 addu a2, a2, s1               |         a2 += s1;
    0x0053f80c lb a2, (a2)                   |         a2 = *(a2);
    0x0053f810 b 0x53f7d4                    |         
                                             |     } while (1);
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/1568982-13971496.squashfs_v4_le_extract/usr/bin/php-cli @ 0x565420 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.00565420 ()                  | void fcn_00565420 () {
    0x00565420 lui gp, 0x1b                  |     
    0x00565424 addiu gp, gp, -0x7220         |     
    0x00565428 addu gp, gp, t9               |     gp += t9;
    0x0056542c lw v0, -0x76ec(gp)            |     v0 = *((gp - 7611));
    0x00565430 addiu sp, sp, -0x30           |     
    0x00565434 lw v0, (v0)                   |     v0 = *(v0);
    0x00565438 sw gp, 0x18(sp)               |     *(var_18h) = gp;
    0x0056543c sw s0, 0x24(sp)               |     *(var_24h) = s0;
    0x00565440 sw ra, 0x2c(sp)               |     *(var_2ch) = ra;
    0x00565444 sw s1, 0x28(sp)               |     *(var_28h) = s1;
    0x00565448 move s0, a0                   |     s0 = a0;
                                             |     if (v0 != 0) {
    0x0056544c bnez v0, 0x5654c8             |         goto label_1;
                                             |     }
                                             | label_0:
    0x00565450 lw t9, -0x5f18(gp)            |     t9 = sym.imp.mmap;
                                             |     do {
    0x00565454 addiu s1, zero, -1            |         s1 = -1;
    0x00565458 sw zero, 0x14(sp)             |         *(var_14h) = 0;
    0x0056545c sw s1, 0x10(sp)               |         *(var_10h) = s1;
    0x00565460 addiu a3, zero, 0x802         |         a3 = 0x802;
    0x00565464 addiu a2, zero, 3             |         a2 = 3;
    0x00565468 move a1, s0                   |         a1 = s0;
    0x0056546c move a0, zero                 |         a0 = 0;
    0x00565470 jalr t9                       |         t9 ();
    0x00565474 lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             |         if (v0 != s1) {
    0x00565478 bne v0, s1, 0x565500          |             goto label_2;
                                             |         }
    0x0056547c lw v0, -0x617c(gp)            |         v0 = *((gp - 6239));
    0x00565480 lw t9, -0x5ee4(gp)            |         t9 = sym.imp.__errno_location;
    0x00565484 lw s1, (v0)                   |         s1 = *(v0);
    0x00565488 jalr t9                       |         t9 ();
    0x0056548c lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x00565490 lw s0, (v0)                   |         s0 = *(v0);
    0x00565494 lw t9, -0x5f38(gp)            |         t9 = sym.imp.strerror;
    0x00565498 move a0, s0                   |         a0 = s0;
    0x0056549c jalr t9                       |         t9 ();
    0x005654a0 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x005654a4 move a3, v0                   |         a3 = v0;
    0x005654a8 move a2, s0                   |         a2 = s0;
    0x005654ac lw a1, -0x7fc0(gp)            |         a1 = *((gp - 8176));
    0x005654b0 lw t9, -0x6254(gp)            |         t9 = sym.imp.fprintf
                                             |         /* str._nmmap___failed:___d___s_n */
    0x005654b4 addiu a1, a1, 0x1b5c          |         a1 += 0x1b5c;
    0x005654b8 move a0, s1                   |         a0 = s1;
    0x005654bc jalr t9                       |         t9 ();
    0x005654c0 move v0, zero                 |         v0 = 0;
    0x005654c4 b 0x565500                    |         goto label_2;
                                             | label_1:
    0x005654c8 lui v0, 0x20                  |         v0 = 0x200000;
    0x005654cc lw t9, -0x5f18(gp)            |         t9 = sym.imp.mmap;
    0x005654d0 bne a0, v0, 0x565454          |         
                                             |     } while (a0 != v0);
    0x005654d4 addiu s1, zero, -1            |     s1 = -1;
    0x005654d8 lui a3, 8                     |     a3 = 0x80000;
    0x005654dc sw zero, 0x14(sp)             |     *(var_14h) = 0;
    0x005654e0 sw s1, 0x10(sp)               |     *(var_10h) = s1;
    0x005654e4 addiu a3, a3, 0x802           |     a3 += 0x802;
    0x005654e8 addiu a2, zero, 3             |     a2 = 3;
    0x005654ec lui a1, 0x20                  |     a1 = 0x200000;
    0x005654f0 move a0, zero                 |     a0 = 0;
    0x005654f4 jalr t9                       |     t9 ();
    0x005654f8 lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     if (v0 == s1) {
    0x005654fc beq v0, s1, 0x565450          |         goto label_0;
                                             |     }
                                             | label_2:
    0x00565500 lw ra, 0x2c(sp)               |     ra = *(var_2ch);
    0x00565504 lw s1, 0x28(sp)               |     s1 = *(var_28h);
    0x00565508 lw s0, 0x24(sp)               |     s0 = *(var_24h);
    0x0056550c addiu sp, sp, 0x30            |     
    0x00565510 jr ra                         |     return v0;
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/1568982-13971496.squashfs_v4_le_extract/usr/bin/php-cli @ 0x565878 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.00565878 ()                  | void fcn_00565878 () {
    0x00565878 lui gp, 0x1b                  |     
    0x0056587c addiu gp, gp, -0x7678         |     
    0x00565880 addu gp, gp, t9               |     gp += t9;
    0x00565884 addiu sp, sp, -0x28           |     
    0x00565888 lw t9, -0x773c(gp)            |     t9 = *((gp - 7631));
    0x0056588c sw gp, 0x10(sp)               |     *(var_10h) = gp;
    0x00565890 sw ra, 0x24(sp)               |     *(var_24h) = ra;
    0x00565894 sw s1, 0x20(sp)               |     *(var_20h) = s1;
    0x00565898 sw s0, 0x1c(sp)               |     *(var_1ch) = s0;
                                             |     /* fcn.005656f0 */
    0x0056589c addiu t9, t9, 0x56f0          |     t9 += 0x56f0;
    0x005658a0 lui a0, 0x20                  |     a0 = 0x200000;
    0x005658a4 bal 0x5656f0                  |     fcn_005656f0 ();
    0x005658a8 lw gp, 0x10(sp)               |     gp = *(var_10h);
                                             |     if (v0 != 0) {
    0x005658ac bnez v0, 0x565910             |         goto label_0;
                                             |     }
    0x005658b0 lw v0, -0x617c(gp)            |     v0 = *((gp - 6239));
    0x005658b4 lw t9, -0x5ee4(gp)            |     t9 = sym.imp.__errno_location;
    0x005658b8 lw s1, (v0)                   |     s1 = *(v0);
    0x005658bc jalr t9                       |     t9 ();
    0x005658c0 lw gp, 0x10(sp)               |     gp = *(var_10h);
    0x005658c4 lw s0, (v0)                   |     s0 = *(v0);
    0x005658c8 lw t9, -0x5f38(gp)            |     t9 = sym.imp.strerror;
    0x005658cc move a0, s0                   |     a0 = s0;
    0x005658d0 jalr t9                       |     t9 ();
    0x005658d4 lw gp, 0x10(sp)               |     gp = *(var_10h);
    0x005658d8 move a0, s1                   |     a0 = s1;
    0x005658dc move a3, v0                   |     a3 = v0;
    0x005658e0 lw a1, -0x7fc0(gp)            |     a1 = *((gp - 8176));
    0x005658e4 lw t9, -0x6254(gp)            |     t9 = sym.imp.fprintf
    0x005658e8 move a2, s0                   |     a2 = s0;
                                             |     /* str._nCant_initialize_heap:___d___s_n */
    0x005658ec addiu a1, a1, 0x1bb0          |     a1 += 0x1bb0;
    0x005658f0 jalr t9                       |     t9 ();
    0x005658f4 move a0, zero                 |     a0 = 0;
                                             |     do {
    0x005658f8 lw ra, 0x24(sp)               |         ra = *(var_24h);
    0x005658fc lw s1, 0x20(sp)               |         s1 = *(var_20h);
    0x00565900 lw s0, 0x1c(sp)               |         s0 = *(var_1ch);
    0x00565904 move v0, a0                   |         v0 = a0;
    0x00565908 addiu sp, sp, 0x28            |         
    0x0056590c jr ra                         |         return v1;
                                             | label_0:
    0x00565910 addiu v1, zero, 0x1ff         |         v1 = 0x1ff;
    0x00565914 sw v1, 0xc(v0)                |         *((v0 + 3)) = v1;
    0x00565918 addiu v1, zero, 1             |         v1 = 1;
    0x0056591c sw v1, 0x10(v0)               |         *((v0 + 4)) = v1;
    0x00565920 sw v1, 0x110(v0)              |         *((v0 + 68)) = v1;
    0x00565924 sw v1, 0xe4(v0)               |         *((v0 + 57)) = v1;
    0x00565928 sw v1, 0xe8(v0)               |         *((v0 + 58)) = v1;
    0x0056592c lw v1, -0x7fd0(gp)            |         v1 = *((gp - 8180));
    0x00565930 lui a1, 0x4000                |         a1 = 0x40000000;
    0x00565934 addiu a0, v0, 0x40            |         a0 = v0 + 0x40;
    0x00565938 lw a2, -0x3940(v1)            |         a2 = *((v1 - 3664));
    0x0056593c lw a3, -0x393c(v1)            |         a3 = *((v1 - 3663));
    0x00565940 lui v1, 0x20                  |         v1 = 0x200000;
    0x00565944 sw v1, 0xc8(v0)               |         *((v0 + 50)) = v1;
    0x00565948 sw v1, 0xcc(v0)               |         *((v0 + 51)) = v1;
    0x0056594c lui v1, 0x7fff                |         v1 = 0x7fff0000;
    0x00565950 addiu a1, a1, 1               |         a1++;
    0x00565954 ori v1, v1, 0xffff            |         v1 |= 0xffff;
    0x00565958 sw a0, (v0)                   |         *(v0) = a0;
    0x0056595c sw v0, 4(v0)                  |         *((v0 + 1)) = v0;
    0x00565960 sw v0, 8(v0)                  |         *((v0 + 2)) = v0;
    0x00565964 sw zero, 0x14(v0)             |         *((v0 + 5)) = 0;
    0x00565968 sw a1, 0x150(v0)              |         *((v0 + 84)) = a1;
    0x0056596c sw v0, 0xdc(v0)               |         *((v0 + 55)) = v0;
    0x00565970 sw zero, 0xe0(v0)             |         *((v0 + 56)) = 0;
    0x00565974 sw zero, 0xec(v0)             |         *((v0 + 59)) = 0;
    0x00565978 sw a2, 0xf0(v0)               |         *((v0 + 60)) = a2;
    0x0056597c sw a3, 0xf4(v0)               |         *((v0 + 61)) = a3;
    0x00565980 sw zero, 0xf8(v0)             |         *((v0 + 62)) = 0;
    0x00565984 sw zero, 0xfc(v0)             |         *((v0 + 63)) = 0;
    0x00565988 sw zero, 0x48(v0)             |         *((v0 + 18)) = 0;
    0x0056598c sw zero, 0x4c(v0)             |         *((v0 + 19)) = 0;
    0x00565990 sw v1, 0xd0(v0)               |         *((v0 + 52)) = v1;
    0x00565994 sw zero, 0xd4(v0)             |         *((v0 + 53)) = 0;
    0x00565998 sw zero, 0x40(v0)             |         *((v0 + 16)) = 0;
    0x0056599c sw zero, 0x44(v0)             |         *((v0 + 17)) = 0;
    0x005659a0 sw zero, 0xd8(v0)             |         *((v0 + 54)) = 0;
    0x005659a4 b 0x5658f8                    |         
                                             |     } while (1);
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/1568982-13971496.squashfs_v4_le_extract/usr/bin/php-cli @ 0x6684a0 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.006684a0 ()                  | void fcn_006684a0 () {
    0x006684a0 lui gp, 0xa                   |     
    0x006684a4 addiu gp, gp, 0x5d60          |     
    0x006684a8 addu gp, gp, t9               |     gp += t9;
    0x006684ac addiu sp, sp, -0x1110         |     
    0x006684b0 addiu v0, zero, 1             |     v0 = 1;
    0x006684b4 sw s5, 0x10fc(sp)             |     *(var_10fch) = s5;
    0x006684b8 sw v0, 0x10c8(sp)             |     *(var_10c8h) = v0;
    0x006684bc lw s5, -0x7214(gp)            |     s5 = *((gp - 7301));
    0x006684c0 addiu v0, sp, 0x10cc          |     v0 = sp + 0x10cc;
    0x006684c4 sw fp, 0x1108(sp)             |     *(var_1108h) = fp;
    0x006684c8 sw s7, 0x1104(sp)             |     *(var_1104h) = s7;
    0x006684cc sw s6, 0x1100(sp)             |     *(var_1100h) = s6;
    0x006684d0 sw s4, 0x10f8(sp)             |     *(var_10f8h) = s4;
    0x006684d4 sw s3, 0x10f4(sp)             |     *(var_10f4h) = s3;
    0x006684d8 sw s2, 0x10f0(sp)             |     *(var_10f0h) = s2;
    0x006684dc sw s1, 0x10ec(sp)             |     *(var_10ech) = s1;
    0x006684e0 sw gp, 0x20(sp)               |     *(var_20h) = gp;
    0x006684e4 sw ra, 0x110c(sp)             |     *(var_110ch) = ra;
    0x006684e8 sw s0, 0x10e8(sp)             |     *(var_10e8h) = s0;
    0x006684ec move s3, a0                   |     s3 = a0;
    0x006684f0 move s1, a1                   |     s1 = a1;
    0x006684f4 sw zero, 0x10cc(sp)           |     *(var_10cch) = 0;
    0x006684f8 move s2, zero                 |     s2 = 0;
    0x006684fc move s7, zero                 |     s7 = 0;
    0x00668500 sw v0, 0x10d0(sp)             |     *(var_10d0h) = v0;
    0x00668504 addiu fp, zero, 2             |     fp = 2;
    0x00668508 addiu s6, sp, 0x10c8          |     s6 = sp + 0x10c8;
    0x0066850c addiu s4, zero, -1            |     s4 = -1;
                                             | label_1:
    0x00668510 lw t9, -0x7210(gp)            |     t9 = sym.php_getopt;
                                             |     do {
                                             | label_0:
    0x00668514 lw a3, 0x10d0(sp)             |         a3 = *(var_10d0h);
    0x00668518 sw fp, 0x18(sp)               |         *(var_18h) = fp;
    0x0066851c sw zero, 0x14(sp)             |         *(var_14h) = 0;
    0x00668520 sw s6, 0x10(sp)               |         *(var_10h) = s6;
    0x00668524 move a2, s5                   |         a2 = s5;
    0x00668528 move a1, s1                   |         a1 = s1;
    0x0066852c move a0, s3                   |         a0 = s3;
    0x00668530 jalr t9                       |         t9 ();
    0x00668534 move s0, v0                   |         s0 = v0;
    0x00668538 lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |         if (v0 == s4) {
    0x0066853c bne v0, s4, 0x6685b0          |             
    0x00668540 lw t9, -0x786c(gp)            |             t9 = *(gp);
                                             |             if (s2 == 0) {
    0x00668544 beqz s2, 0x668678             |                 goto label_25;
                                             |             }
    0x00668548 addiu a1, sp, 0x1028          |             a1 = sp + 0x1028;
    0x0066854c move a0, s2                   |             a0 = s2;
    0x00668550 bal 0x6697a0                  |             fcn_006697a0 ();
    0x00668554 lw gp, 0x20(sp)               |             gp = *(var_20h);
                                             |             if (v0 == 0) {
    0x00668558 beqz v0, 0x6685d4             |                 goto label_26;
                                             |             }
    0x0066855c lw a1, -0x7fc4(gp)            |             a1 = *((gp - 8177));
    0x00668560 move a2, s2                   |             a2 = s2;
                                             |             /* str.Directory__s_does_not_exist._n */
    0x00668564 addiu a1, a1, -0x2b74         |             a1 += -0x2b74;
                                             | label_2:
    0x00668568 lw v0, -0x617c(gp)            |             v0 = *((gp - 6239));
    0x0066856c lw t9, -0x6254(gp)            |             t9 = sym.imp.fprintf
    0x00668570 lw a0, (v0)                   |             a0 = *(v0);
    0x00668574 jalr t9                       |             t9 ();
                                             | label_3:
    0x00668578 addiu s4, zero, 1             |             s4 = 1;
                                             | label_23:
    0x0066857c lw ra, 0x110c(sp)             |             ra = *(var_110ch);
                                             | label_24:
    0x00668580 move v0, s4                   |             v0 = s4;
    0x00668584 lw fp, 0x1108(sp)             |             fp = *(var_1108h);
    0x00668588 lw s7, 0x1104(sp)             |             s7 = *(var_1104h);
    0x0066858c lw s6, 0x1100(sp)             |             s6 = *(var_1100h);
    0x00668590 lw s5, 0x10fc(sp)             |             s5 = *(var_10fch);
    0x00668594 lw s4, 0x10f8(sp)             |             s4 = *(var_10f8h);
    0x00668598 lw s3, 0x10f4(sp)             |             s3 = *(var_10f4h);
    0x0066859c lw s2, 0x10f0(sp)             |             s2 = *(var_10f0h);
    0x006685a0 lw s1, 0x10ec(sp)             |             s1 = *(var_10ech);
    0x006685a4 lw s0, 0x10e8(sp)             |             s0 = *(var_10e8h);
    0x006685a8 addiu sp, sp, 0x1110          |             
    0x006685ac jr ra                         |             return v0;
                                             |         }
    0x006685b0 addiu v0, zero, 0x53          |         v0 = 0x53;
    0x006685b4 addiu v0, zero, 0x74          |         v0 = 0x74;
                                             |         if (s0 == v0) {
    0x006685b8 beq s0, v0, 0x6685cc          |             goto label_27;
                                             |         }
    0x006685bc lw t9, -0x7210(gp)            |         t9 = sym.php_getopt;
    0x006685c0 bne s0, v0, 0x668514          |         
                                             |     } while (s0 != v0);
    0x006685c4 lw s2, 0x10cc(sp)             |     s2 = *(var_10cch);
    0x006685c8 b 0x668514                    |     goto label_0;
                                             | label_27:
    0x006685cc lw s7, 0x10cc(sp)             |     s7 = *(var_10cch);
    0x006685d0 b 0x668510                    |     goto label_1;
                                             | label_26:
    0x006685d4 lw v0, 0x103c(sp)             |     v0 = *(var_103ch);
    0x006685d8 addiu v1, zero, 0x4000        |     v1 = 0x4000;
    0x006685dc andi v0, v0, 0xf000           |     v0 &= 0xf000;
    0x006685e0 lw a1, -0x7fc4(gp)            |     a1 = *((gp - 8177));
                                             |     if (v0 != v1) {
    0x006685e4 beq v0, v1, 0x6685f4          |         
    0x006685e8 move a2, s2                   |         a2 = s2;
                                             |         /* str._s_is_not_a_directory._n */
    0x006685ec addiu a1, a1, -0x2b54         |         a1 += -0x2b54;
    0x006685f0 b 0x668568                    |         goto label_2;
                                             |     }
    0x006685f4 lw t9, -0x7a04(gp)            |     t9 = sym.tsrm_realpath;
    0x006685f8 addiu s4, sp, 0x28            |     s4 = sp + 0x28;
    0x006685fc move a0, s2                   |     a0 = s2;
    0x00668600 move a1, s4                   |     a1 = s4;
    0x00668604 jalr t9                       |     t9 ();
    0x00668608 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 == 0) {
    0x0066860c movn s2, s4, v0               |         s2 = s4;
                                             |     }
                                             | label_4:
    0x00668610 lw v0, 0x10c8(sp)             |     v0 = *(var_10c8h);
    0x00668614 slt s3, v0, s3                |     s3 = (v0 < s3) ? 1 : 0;
    0x00668618 sll v0, v0, 2                 |     v0 <<= 2;
                                             |     if (s3 == 0) {
    0x0066861c beqz s3, 0x6686a0             |         goto label_28;
                                             |     }
    0x00668620 addu s1, s1, v0               |     s1 += v0;
    0x00668624 lw v0, (s1)                   |     v0 = *(s1);
    0x00668628 sw v0, 0x10d0(sp)             |     *(var_10d0h) = v0;
                                             | label_5:
    0x0066862c sw zero, 0x10c4(sp)           |     *(var_10c4h) = 0;
    0x00668630 sw zero, 0x10c0(sp)           |     *(var_10c0h) = 0;
    0x00668634 lb v1, (s7)                   |     v1 = *(s7);
    0x00668638 addiu v0, zero, 0x5b          |     v0 = 0x5b;
    0x0066863c lw t9, -0x63a8(gp)            |     t9 = sym.imp.strdup;
                                             |     if (v1 != v0) {
    0x00668640 bne v1, v0, 0x66876c          |         goto label_29;
                                             |     }
    0x00668644 addiu a0, s7, 1               |     a0 = s7 + 1;
    0x00668648 jalr t9                       |     t9 ();
    0x0066864c move s5, v0                   |     s5 = v0;
    0x00668650 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 == 0) {
    0x00668654 beqz v0, 0x668578             |         goto label_3;
                                             |     }
    0x00668658 lw t9, -0x5fd0(gp)            |     t9 = sym.imp.strchr;
    0x0066865c addiu a1, zero, 0x5d          |     a1 = 0x5d;
    0x00668660 move a0, v0                   |     a0 = v0;
    0x00668664 jalr t9                       |     t9 ();
    0x00668668 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 != 0) {
    0x0066866c bnez v0, 0x6686a8             |         goto label_30;
                                             |     }
                                             | label_6:
    0x00668670 sw zero, 0x10c0(sp)           |     *(var_10c0h) = 0;
    0x00668674 b 0x668764                    |     goto label_31;
                                             | label_25:
    0x00668678 lw t9, -0x62f4(gp)            |     t9 = sym.imp.getcwd;
    0x0066867c addiu s2, sp, 0x28            |     s2 = sp + 0x28;
    0x00668680 addiu a1, zero, 0x1000        |     a1 = 0x1000;
    0x00668684 move a0, s2                   |     a0 = s2;
    0x00668688 jalr t9                       |     t9 ();
    0x0066868c lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 != 0) {
    0x00668690 bnez v0, 0x668610             |         goto label_4;
                                             |     }
    0x00668694 lw s2, -0x7fc0(gp)            |     s2 = *((gp - 8176));
    0x00668698 addiu s2, s2, 0x4330          |     s2 += 0x4330;
    0x0066869c b 0x668610                    |     goto label_4;
                                             | label_28:
    0x006686a0 sw zero, 0x10d0(sp)           |     *(var_10d0h) = 0;
    0x006686a4 b 0x66862c                    |     goto label_5;
                                             | label_30:
    0x006686a8 addiu v1, v0, 1               |     v1 = v0 + 1;
    0x006686ac sw v1, 0x10c0(sp)             |     *(var_10c0h) = v1;
    0x006686b0 lb v1, 1(v0)                  |     v1 = *((v0 + 1));
    0x006686b4 addiu a0, zero, 0x3a          |     a0 = 0x3a;
    0x006686b8 sb zero, (v0)                 |     *(v0) = 0;
                                             |     if (v1 != a0) {
    0x006686bc bne v1, a0, 0x66875c          |         goto label_32;
                                             |     }
    0x006686c0 addiu a2, zero, 0xa           |     a2 = 0xa;
    0x006686c4 addiu a1, sp, 0x10c0          |     a1 = sp + 0x10c0;
    0x006686c8 addiu a0, v0, 2               |     a0 = v0 + 2;
                                             | label_8:
    0x006686cc lw t9, -0x60c4(gp)            |     t9 = *((gp - 6193));
    0x006686d0 jalr t9                       |     t9 ();
    0x006686d4 nop                           |     
    0x006686d8 move s1, v0                   |     s1 = v0;
    0x006686dc ori v1, zero, 0xffff          |     v1 = 0xffff;
    0x006686e0 addiu v0, v0, -1              |     v0 += -1;
    0x006686e4 sltu v0, v0, v1               |     v0 = (v0 < v1) ? 1 : 0;
    0x006686e8 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 == 0) {
    0x006686ec bnez v0, 0x6686f4             |         
    0x006686f0 sw zero, 0x10c0(sp)           |         *(var_10c0h) = 0;
                                             |     }
                                             | label_7:
    0x006686f4 lw s6, 0x10c0(sp)             |     s6 = *(var_10c0h);
    0x006686f8 addiu v0, sp, 0x10b8          |     v0 = sp + 0x10b8;
                                             |     if (s6 != 0) {
    0x006686fc bnez s6, 0x6687b0             |         goto label_33;
                                             |     }
    0x00668700 lw v0, -0x617c(gp)            |     v0 = *((gp - 6239));
    0x00668704 lw a1, -0x7fc4(gp)            |     a1 = *((gp - 8177));
    0x00668708 lw t9, -0x6254(gp)            |     t9 = sym.imp.fprintf
    0x0066870c lw a0, (v0)                   |     a0 = *(v0);
    0x00668710 move a2, s7                   |     a2 = s7;
                                             |     /* str.Invalid_address:__s_n */
    0x00668714 addiu a1, a1, -0x2b3c         |     a1 += -0x2b3c;
    0x00668718 jalr t9                       |     t9 ();
    0x0066871c lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             | label_9:
    0x00668720 lw t9, -0x60d4(gp)            |     t9 = *((gp - 6197));
    0x00668724 move a0, s5                   |     a0 = s5;
    0x00668728 jalr t9                       |     t9 ();
    0x0066872c lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (s6 != 0) {
    0x00668730 beqz s6, 0x668744             |         
    0x00668734 lw t9, -0x60d4(gp)            |         t9 = *((gp - 6197));
    0x00668738 move a0, s6                   |         a0 = s6;
    0x0066873c jalr t9                       |         t9 ();
    0x00668740 lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |     }
    0x00668744 lw t9, -0x623c(gp)            |     t9 = sym.imp.close;
                                             |     if (s0 < 0) {
    0x00668748 bltz s0, 0x668578             |         goto label_3;
                                             |     }
    0x0066874c move a0, s0                   |     a0 = s0;
    0x00668750 jalr t9                       |     t9 ();
    0x00668754 b 0x668578                    |     goto label_3;
    0x00668758 nop                           |     
                                             |     if (v1 != 0) {
                                             | label_32:
    0x0066875c bnez v1, 0x668670             |         goto label_6;
                                             |     }
    0x00668760 nop                           |     
                                             | label_31:
    0x00668764 addiu s1, zero, 0xbb8         |     s1 = 0xbb8;
    0x00668768 b 0x6686f4                    |     goto label_7;
                                             | label_29:
    0x0066876c move a0, s7                   |     a0 = s7;
    0x00668770 jalr t9                       |     t9 ();
    0x00668774 move s5, v0                   |     s5 = v0;
    0x00668778 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 == 0) {
    0x0066877c beqz v0, 0x668578             |         goto label_3;
                                             |     }
    0x00668780 lw t9, -0x5fd0(gp)            |     t9 = sym.imp.strchr;
    0x00668784 addiu a1, zero, 0x3a          |     a1 = 0x3a;
    0x00668788 move a0, v0                   |     a0 = v0;
    0x0066878c jalr t9                       |     t9 ();
    0x00668790 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 == 0) {
    0x00668794 beqz v0, 0x668670             |         goto label_6;
                                             |     }
    0x00668798 addiu a0, v0, 1               |     a0 = v0 + 1;
    0x0066879c sw a0, 0x10c0(sp)             |     *(var_10c0h) = a0;
    0x006687a0 sb zero, (v0)                 |     *(v0) = 0;
    0x006687a4 addiu a2, zero, 0xa           |     a2 = 0xa;
    0x006687a8 addiu a1, sp, 0x10c0          |     a1 = sp + 0x10c0;
    0x006687ac b 0x6686cc                    |     goto label_8;
                                             | label_33:
    0x006687b0 lw t9, -0x6928(gp)            |     t9 = sym.php_network_getaddresses;
    0x006687b4 sw v0, 0x10d8(sp)             |     *(var_10d8h) = v0;
    0x006687b8 addiu a3, sp, 0x10c4          |     a3 = sp + 0x10c4;
    0x006687bc move a2, v0                   |     a2 = v0;
    0x006687c0 addiu a1, zero, 2             |     a1 = 2;
    0x006687c4 move a0, s5                   |     a0 = s5;
    0x006687c8 jalr t9                       |     t9 ();
    0x006687cc lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 == 0) {
    0x006687d0 beqz v0, 0x668864             |         goto label_16;
                                             |     }
    0x006687d4 wsbh v0, s1                   |     __asm ("wsbh v0, s1");
    0x006687d8 andi v0, v0, 0xffff           |     v0 &= 0xffff;
    0x006687dc sw v0, 0x10d4(sp)             |     *(var_10d4h) = v0;
    0x006687e0 lw v0, -0x793c(gp)            |     v0 = *((gp - 7759));
    0x006687e4 lw s6, 0x10b8(sp)             |     s6 = *(var_10b8h);
    0x006687e8 addiu fp, v0, -0x446c         |     fp = v0 + -0x446c;
    0x006687ec addiu v0, sp, 0x1028          |     v0 = sp + 0x1028;
    0x006687f0 move s3, zero                 |     s3 = 0;
    0x006687f4 move s4, zero                 |     s4 = 0;
    0x006687f8 sw v0, 0x10dc(sp)             |     *(var_10dch) = v0;
                                             |     do {
    0x006687fc lw v0, (s6)                   |         v0 = *(s6);
    0x00668800 addiu v0, zero, -1            |         v0 = -1;
                                             |         if (v0 == 0) {
    0x00668804 bnez v0, 0x6688e4             |             
                                             | label_13:
    0x00668808 lw t9, -0x6014(gp)            |             t9 = sym.imp.listen;
                                             |             if (s0 != v0) {
    0x0066880c bne s0, v0, 0x668adc          |                 goto label_34;
                                             |             }
                                             | label_14:
    0x00668810 lw t9, -0x60d4(gp)            |             t9 = *((gp - 6197));
                                             |             if (s3 != 0) {
    0x00668814 bnez s3, 0x668aa4             |                 goto label_35;
                                             |             }
                                             | label_12:
    0x00668818 lw a0, 0x10b8(sp)             |             a0 = *(var_10b8h);
    0x0066881c lw t9, -0x6924(gp)            |             t9 = sym.php_network_freeaddresses;
                                             |             if (a0 != 0) {
    0x00668820 beqz a0, 0x668830             |                 
    0x00668824 jalr t9                       |                 t9 ();
    0x00668828 nop                           |                 
    0x0066882c lw gp, 0x20(sp)               |                 gp = *(var_20h);
                                             |             }
    0x00668830 addiu v0, zero, -1            |             v0 = -1;
                                             |             if (s4 == 0) {
    0x00668834 beqz s4, 0x668b10             |                 goto label_36;
                                             |             }
    0x00668838 lw t9, -0x691c(gp)            |             t9 = sym.php_socket_error_str;
                                             |             if (s0 >= 0) {
    0x0066883c bltz s0, 0x668854             |                 
    0x00668840 lw t9, -0x623c(gp)            |                 t9 = sym.imp.close;
    0x00668844 move a0, s0                   |                 a0 = s0;
    0x00668848 jalr t9                       |                 t9 ();
    0x0066884c lw gp, 0x20(sp)               |                 gp = *(var_20h);
    0x00668850 lw t9, -0x691c(gp)            |                 t9 = sym.php_socket_error_str;
                                             |             }
    0x00668854 move a0, s4                   |             a0 = s4;
    0x00668858 jalr t9                       |             t9 ();
    0x0066885c lw gp, 0x20(sp)               |             gp = *(var_20h);
    0x00668860 sw v0, 0x10c4(sp)             |             *(var_10c4h) = v0;
                                             | label_16:
    0x00668864 lw a3, 0x10c4(sp)             |             a3 = *(var_10c4h);
                                             |             if (a3 == 0) {
    0x00668868 beqz a3, 0x668e50             |                 goto label_37;
                                             |             }
    0x0066886c nop                           |             
    0x00668870 addiu a3, a3, 0x10            |             a3 += 0x10;
                                             | label_18:
    0x00668874 lw a0, -0x7fc4(gp)            |             a0 = *((gp - 8177));
    0x00668878 lw t9, -0x7240(gp)            |             t9 = *(gp);
                                             |             /* str.Failed_to_listen_on__s:_d__reason:__s_ */
    0x0066887c addiu a0, a0, -0x2b24         |             a0 += -0x2b24;
    0x00668880 move a2, s1                   |             a2 = s1;
                                             |             /* fcn.006650c0 */
    0x00668884 addiu t9, t9, 0x50c0          |             t9 += 0x50c0;
    0x00668888 move a1, s5                   |             a1 = s5;
    0x0066888c bal 0x6650c0                  |             fcn_006650c0 ();
    0x00668890 lw a0, 0x10c4(sp)             |             a0 = *(var_10c4h);
    0x00668894 lw gp, 0x20(sp)               |             gp = *(var_20h);
                                             |             if (a0 != 0) {
    0x00668898 beqz a0, 0x6688d8             |                 
    0x0066889c lbu v0, 5(a0)                 |                 v0 = *((a0 + 5));
    0x006688a0 andi v1, v0, 2                |                 v1 = v0 & 2;
                                             |                 if (v1 != 0) {
    0x006688a4 bnez v1, 0x6688d8             |                     goto label_19;
                                             |                 }
    0x006688a8 nop                           |                 
    0x006688ac lw v1, (a0)                   |                 v1 = *(a0);
    0x006688b0 addiu v1, v1, -1              |                 v1 += -1;
    0x006688b4 sw v1, (a0)                   |                 *(a0) = v1;
                                             |                 if (v1 != 0) {
    0x006688b8 bnez v1, 0x6688d8             |                     goto label_19;
                                             |                 }
    0x006688bc andi v0, v0, 1                |                 v0 &= 1;
    0x006688c0 lw t9, -0x7fe4(gp)            |                 t9 = sym._efree;
                                             |                 if (v0 == 0) {
    0x006688c4 beqz v0, 0x668e5c             |                     goto label_38;
                                             |                 }
    0x006688c8 lw t9, -0x60d4(gp)            |                 t9 = *((gp - 6197));
    0x006688cc jalr t9                       |                 t9 ();
    0x006688d0 nop                           |                 
    0x006688d4 lw gp, 0x20(sp)               |                 gp = *(var_20h);
                                             |             }
                                             | label_19:
    0x006688d8 addiu s0, zero, -1            |             s0 = -1;
    0x006688dc move s6, zero                 |             s6 = 0;
    0x006688e0 b 0x668720                    |             goto label_9;
                                             |         }
    0x006688e4 lw t9, -0x60d4(gp)            |         t9 = *((gp - 6197));
                                             |         if (s3 != 0) {
    0x006688e8 beqz s3, 0x6688f8             |             
    0x006688ec move a0, s3                   |             a0 = s3;
    0x006688f0 jalr t9                       |             t9 ();
    0x006688f4 lw gp, 0x20(sp)               |             gp = *(var_20h);
                                             |         }
    0x006688f8 lw v0, (s6)                   |         v0 = *(s6);
    0x006688fc lw t9, -0x612c(gp)            |         t9 = sym.imp.socket;
    0x00668900 move a2, zero                 |         a2 = 0;
    0x00668904 lhu a0, (v0)                  |         a0 = *(v0);
    0x00668908 addiu a1, zero, 2             |         a1 = 2;
    0x0066890c jalr t9                       |         t9 ();
    0x00668910 move s0, v0                   |         s0 = v0;
    0x00668914 addiu v0, zero, -1            |         v0 = -1;
    0x00668918 lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |         if (s0 == v0) {
    0x0066891c beq s0, v0, 0x668a54          |             goto label_39;
                                             |         }
    0x00668920 lw v0, (s6)                   |         v0 = *(s6);
    0x00668924 addiu v1, zero, 2             |         v1 = 2;
    0x00668928 lhu v0, (v0)                  |         v0 = *(v0);
    0x0066892c addiu v1, zero, 0xa           |         v1 = 0xa;
                                             |         if (v0 == v1) {
    0x00668930 beq v0, v1, 0x668a08          |             goto label_40;
                                             |         }
    0x00668934 lw t9, -0x623c(gp)            |         t9 = sym.imp.close;
                                             |         if (v0 != v1) {
    0x00668938 bne v0, v1, 0x668a44          |             goto label_41;
                                             |         }
    0x0066893c lw t9, -0x7e7c(gp)            |         t9 = sym.__zend_malloc;
    0x00668940 addiu a0, zero, 0x1c          |         a0 = 0x1c;
    0x00668944 jalr t9                       |         t9 ();
    0x00668948 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x0066894c lw a1, (s6)                   |         a1 = *(s6);
    0x00668950 addiu a2, zero, 0x1c          |         a2 = 0x1c;
    0x00668954 lw t9, -0x6188(gp)            |         t9 = sym.imp.memcpy;
    0x00668958 move a0, v0                   |         a0 = v0;
    0x0066895c move s3, v0                   |         s3 = v0;
    0x00668960 jalr t9                       |         t9 ();
    0x00668964 lw v0, 0x10d4(sp)             |         v0 = *(var_10d4h);
    0x00668968 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x0066896c sh v0, 2(s3)                  |         *((s3 + 1)) = v0;
    0x00668970 addiu v0, zero, 0x1c          |         v0 = 0x1c;
                                             | label_10:
    0x00668974 sw v0, 0x228(fp)              |         *(arg_228h) = v0;
    0x00668978 addiu v0, zero, 1             |         v0 = 1;
    0x0066897c lw t9, -0x6310(gp)            |         t9 = sym.imp.setsockopt;
    0x00668980 sw v0, 0x1028(sp)             |         *(var_1028h) = v0;
    0x00668984 lw a3, 0x10dc(sp)             |         a3 = *(var_10dch);
    0x00668988 addiu v0, zero, 4             |         v0 = 4;
    0x0066898c addiu a2, zero, 4             |         a2 = 4;
    0x00668990 ori a1, zero, 0xffff          |         a1 = 0xffff;
    0x00668994 move a0, s0                   |         a0 = s0;
    0x00668998 sw v0, 0x10(sp)               |         *(var_10h) = v0;
    0x0066899c jalr t9                       |         t9 ();
    0x006689a0 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x006689a4 lw a2, 0x228(fp)              |         a2 = *(arg_228h);
    0x006689a8 move a1, s3                   |         a1 = s3;
    0x006689ac lw t9, -0x61f8(gp)            |         t9 = sym.imp.bind;
    0x006689b0 move a0, s0                   |         a0 = s0;
    0x006689b4 jalr t9                       |         t9 ();
    0x006689b8 addiu v1, zero, -1            |         v1 = -1;
    0x006689bc lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |         if (v0 != v1) {
    0x006689c0 bne v0, v1, 0x668a5c          |             goto label_42;
                                             |         }
    0x006689c4 lw t9, -0x5ee4(gp)            |         t9 = sym.imp.__errno_location;
    0x006689c8 jalr t9                       |         t9 ();
    0x006689cc nop                           |         
    0x006689d0 lw s4, (v0)                   |         s4 = *(v0);
    0x006689d4 addiu v0, zero, 0x16          |         v0 = 0x16;
    0x006689d8 lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |         if (s4 == v0) {
    0x006689dc beq s4, v0, 0x668aa0          |             goto label_43;
                                             |         }
    0x006689e0 addiu v0, zero, 0x7d          |         v0 = 0x7d;
    0x006689e4 lw t9, -0x60d4(gp)            |         t9 = *((gp - 6197));
                                             |         if (s4 == v0) {
    0x006689e8 beq s4, v0, 0x668aa4          |             goto label_35;
                                             |         }
    0x006689ec lw t9, -0x623c(gp)            |         t9 = sym.imp.close;
    0x006689f0 move a0, s0                   |         a0 = s0;
    0x006689f4 jalr t9                       |         t9 ();
    0x006689f8 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x006689fc addiu s0, zero, -1            |         s0 = -1;
                                             | label_11:
    0x00668a00 addiu s6, s6, 4               |         s6 += 4;
    0x00668a04 b 0x6687fc                    |         
                                             |     } while (1);
                                             | label_40:
    0x00668a08 lw t9, -0x7e7c(gp)            |     t9 = sym.__zend_malloc;
    0x00668a0c addiu a0, zero, 0x10          |     a0 = 0x10;
    0x00668a10 jalr t9                       |     t9 ();
    0x00668a14 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00668a18 lw a1, (s6)                   |     a1 = *(s6);
    0x00668a1c addiu a2, zero, 0x10          |     a2 = 0x10;
    0x00668a20 lw t9, -0x6188(gp)            |     t9 = sym.imp.memcpy;
    0x00668a24 move a0, v0                   |     a0 = v0;
    0x00668a28 move s3, v0                   |     s3 = v0;
    0x00668a2c jalr t9                       |     t9 ();
    0x00668a30 lw v0, 0x10d4(sp)             |     v0 = *(var_10d4h);
    0x00668a34 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00668a38 sh v0, 2(s3)                  |     *((s3 + 1)) = v0;
    0x00668a3c addiu v0, zero, 0x10          |     v0 = 0x10;
    0x00668a40 b 0x668974                    |     goto label_10;
                                             | label_41:
    0x00668a44 sw zero, 0x228(fp)            |     *(arg_228h) = 0;
    0x00668a48 move a0, s0                   |     a0 = s0;
    0x00668a4c jalr t9                       |     t9 ();
    0x00668a50 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             | label_39:
    0x00668a54 move s3, zero                 |     s3 = 0;
    0x00668a58 b 0x668a00                    |     goto label_11;
                                             | label_42:
    0x00668a5c lhu v0, (s3)                  |     v0 = *(s3);
    0x00668a60 sw v0, 0x214(fp)              |     *(arg_214h) = v0;
                                             |     if (s1 != 0) {
    0x00668a64 bnez s1, 0x668b08             |         goto label_44;
                                             |     }
    0x00668a68 lw a2, -0x793c(gp)            |     a2 = *((gp - 7759));
    0x00668a6c lw t9, -0x5f3c(gp)            |     t9 = sym.imp.getsockname;
    0x00668a70 addiu a2, a2, -0x4244         |     a2 += -0x4244;
    0x00668a74 move a1, s3                   |     a1 = s3;
    0x00668a78 move a0, s0                   |     a0 = s0;
    0x00668a7c jalr t9                       |     t9 ();
    0x00668a80 move s4, v0                   |     s4 = v0;
    0x00668a84 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 != 0) {
    0x00668a88 beqz v0, 0x668ab4             |         
    0x00668a8c lw t9, -0x5ee4(gp)            |         t9 = sym.imp.__errno_location;
    0x00668a90 jalr t9                       |         t9 ();
    0x00668a94 nop                           |         
    0x00668a98 lw s4, (v0)                   |         s4 = *(v0);
    0x00668a9c lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             | label_43:
    0x00668aa0 lw t9, -0x60d4(gp)            |         t9 = *((gp - 6197));
                                             | label_35:
    0x00668aa4 move a0, s3                   |         a0 = s3;
    0x00668aa8 jalr t9                       |         t9 ();
    0x00668aac lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x00668ab0 b 0x668818                    |         goto label_12;
                                             |     }
    0x00668ab4 lhu v0, (s3)                  |     v0 = *(s3);
    0x00668ab8 addiu v1, zero, 2             |     v1 = 2;
    0x00668abc addiu v1, zero, 0xa           |     v1 = 0xa;
                                             |     if (v0 == v1) {
    0x00668ac0 beq v0, v1, 0x668acc          |         goto label_45;
                                             |     }
    0x00668ac4 addiu v0, zero, -1            |     v0 = -1;
                                             |     if (v0 != v1) {
    0x00668ac8 bne v0, v1, 0x668808          |         goto label_13;
                                             |     }
                                             | label_45:
    0x00668acc lhu s1, 2(s3)                 |     s1 = *((s3 + 1));
    0x00668ad0 wsbh s1, s1                   |     __asm ("wsbh s1, s1");
    0x00668ad4 andi s1, s1, 0xffff           |     s1 &= 0xffff;
                                             | label_15:
    0x00668ad8 lw t9, -0x6014(gp)            |     t9 = sym.imp.listen;
                                             | label_34:
    0x00668adc addiu a1, zero, 0x80          |     a1 = 0x80;
    0x00668ae0 move a0, s0                   |     a0 = s0;
    0x00668ae4 jalr t9                       |     t9 ();
    0x00668ae8 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 == 0) {
    0x00668aec beqz v0, 0x668810             |         goto label_14;
                                             |     }
    0x00668af0 lw t9, -0x5ee4(gp)            |     t9 = sym.imp.__errno_location;
    0x00668af4 jalr t9                       |     t9 ();
    0x00668af8 nop                           |     
    0x00668afc lw s4, (v0)                   |     s4 = *(v0);
    0x00668b00 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00668b04 b 0x668810                    |     goto label_14;
                                             | label_44:
    0x00668b08 move s4, zero                 |     s4 = 0;
    0x00668b0c b 0x668ad8                    |     goto label_15;
                                             | label_36:
    0x00668b10 lw v1, -0x793c(gp)            |     v1 = *((gp - 7759));
                                             |     if (s0 == v0) {
    0x00668b14 beq s0, v0, 0x668864          |         goto label_16;
                                             |     }
    0x00668b18 move v0, zero                 |     v0 = 0;
    0x00668b1c sw v1, 0x10d4(sp)             |     *(var_10d4h) = v1;
    0x00668b20 sw s0, -0x446c(v1)            |     *((v1 - 4379)) = s0;
    0x00668b24 addiu s3, v1, -0x446c         |     s3 = v1 + -0x446c;
    0x00668b28 addiu v1, zero, 0x80          |     v1 = 0x80;
                                             |     do {
    0x00668b2c addu a0, s3, v0               |         a0 = s3 + v0;
    0x00668b30 addiu v0, v0, 4               |         v0 += 4;
    0x00668b34 sw zero, 4(a0)                |         *((a0 + 1)) = 0;
    0x00668b38 bne v0, v1, 0x668b2c          |         
                                             |     } while (v0 != v1);
    0x00668b3c move v0, zero                 |     v0 = 0;
    0x00668b40 addiu v1, zero, 0x80          |     v1 = 0x80;
                                             |     do {
    0x00668b44 addu a0, s3, v0               |         a0 = s3 + v0;
    0x00668b48 addiu v0, v0, 4               |         v0 += 4;
    0x00668b4c sw zero, 0x84(a0)             |         *((a0 + 33)) = 0;
    0x00668b50 bne v0, v1, 0x668b44          |         
                                             |     } while (v0 != v1);
    0x00668b54 addiu v0, zero, -1            |     v0 = -1;
    0x00668b58 lw t9, -0x7240(gp)            |     t9 = *(gp);
    0x00668b5c sw v0, 0x204(s3)              |     *((s3 + 129)) = v0;
    0x00668b60 lw v0, -0x793c(gp)            |     v0 = *((gp - 7759));
    0x00668b64 move a2, s0                   |     a2 = s0;
    0x00668b68 addiu a0, v0, -0x4468         |     a0 = v0 + -0x4468;
    0x00668b6c addiu a1, zero, 1             |     a1 = 1;
                                             |     /* fcn.00664fd0 */
    0x00668b70 addiu t9, t9, 0x4fd0          |     t9 += 0x4fd0;
    0x00668b74 move fp, v0                   |     fp = v0;
    0x00668b78 bal 0x664fd0                  |     fcn_00664fd0 ();
    0x00668b7c lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00668b80 addiu a3, zero, 1             |     a3 = 1;
    0x00668b84 move a1, zero                 |     a1 = 0;
    0x00668b88 lw v0, -0x793c(gp)            |     v0 = *((gp - 7759));
    0x00668b8c lw a2, -0x7240(gp)            |     a2 = *(gp);
    0x00668b90 lw t9, -0x7df0(gp)            |     t9 = sym._zend_hash_init;
    0x00668b94 addiu a2, a2, 0x60ac          |     a2 += 0x60ac;
    0x00668b98 addiu a0, v0, -0x4240         |     a0 = v0 + -0x4240;
    0x00668b9c sw s1, 0x210(s3)              |     *((s3 + 132)) = s1;
    0x00668ba0 sw s5, 0x20c(s3)              |     *((s3 + 131)) = s5;
    0x00668ba4 jalr t9                       |     t9 ();
    0x00668ba8 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00668bac lw t9, -0x6194(gp)            |     t9 = sym.imp.strlen;
    0x00668bb0 move a0, s2                   |     a0 = s2;
    0x00668bb4 jalr t9                       |     t9 ();
    0x00668bb8 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00668bbc move a1, v0                   |     a1 = v0;
    0x00668bc0 move a0, s2                   |     a0 = s2;
    0x00668bc4 lw t9, -0x770c(gp)            |     t9 = sym.zend_strndup;
    0x00668bc8 move s1, v0                   |     s1 = v0;
    0x00668bcc jalr t9                       |     t9 ();
    0x00668bd0 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00668bd4 move s6, v0                   |     s6 = v0;
    0x00668bd8 sw fp, 0x10dc(sp)             |     *(var_10dch) = fp;
    0x00668bdc lw v1, -0x793c(gp)            |     v1 = *((gp - 7759));
    0x00668be0 sw v1, 0x10e0(sp)             |     *(var_10e0h) = v1;
                                             |     if (v0 == 0) {
    0x00668be4 beqz v0, 0x668720             |         goto label_9;
                                             |     }
    0x00668be8 sw v0, 0x218(s3)              |     *((s3 + 134)) = v0;
    0x00668bec lw v0, 0x10d0(sp)             |     v0 = *(var_10d0h);
    0x00668bf0 sw s1, 0x21c(s3)              |     *((s3 + 135)) = s1;
                                             |     if (v0 == 0) {
    0x00668bf4 beqz v0, 0x668e6c             |         goto label_46;
                                             |     }
    0x00668bf8 lw t9, -0x6194(gp)            |     t9 = sym.imp.strlen;
    0x00668bfc move a0, v0                   |     a0 = v0;
    0x00668c00 jalr t9                       |     t9 ();
    0x00668c04 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00668c08 lw a0, 0x10d0(sp)             |     a0 = *(var_10d0h);
    0x00668c0c move a1, v0                   |     a1 = v0;
    0x00668c10 lw t9, -0x770c(gp)            |     t9 = sym.zend_strndup;
    0x00668c14 move s1, v0                   |     s1 = v0;
    0x00668c18 jalr t9                       |     t9 ();
    0x00668c1c lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 == 0) {
    0x00668c20 beqz v0, 0x668720             |         goto label_9;
                                             |     }
    0x00668c24 sw v0, 0x220(s3)              |     *((s3 + 136)) = v0;
    0x00668c28 sw s1, 0x224(s3)              |     *((s3 + 137)) = s1;
                                             | label_20:
    0x00668c2c lw s5, -0x793c(gp)            |     s5 = *((gp - 7759));
    0x00668c30 lw t9, -0x7df0(gp)            |     t9 = sym._zend_hash_init;
    0x00668c34 addiu a3, zero, 1             |     a3 = 1;
    0x00668c38 move a2, zero                 |     a2 = 0;
    0x00668c3c move a1, zero                 |     a1 = 0;
    0x00668c40 addiu a0, s5, -0x4214         |     a0 = s5 + -0x4214;
    0x00668c44 jalr t9                       |     t9 ();
    0x00668c48 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00668c4c addiu s0, sp, 0x1028          |     s0 = sp + 0x1028;
    0x00668c50 addiu fp, s5, -0x4214         |     fp = s5 + -0x4214;
    0x00668c54 lw s1, -0x7e30(gp)            |     s1 = *((gp - 8076));
                                             |     /* esilref: 'ez' */
    0x00668c58 addiu s1, s1, 0x4128          |     s1 += 0x4128;
                                             | label_21:
    0x00668c5c lw s6, (s1)                   |     s6 = *(s1);
    0x00668c60 lw t9, -0x6194(gp)            |     t9 = sym.imp.strlen;
                                             |     if (s6 != 0) {
    0x00668c64 bnez s6, 0x668e78             |         goto label_47;
                                             |     }
    0x00668c68 addiu v0, zero, 1             |     v0 = 1;
    0x00668c6c sw v0, 0x208(s3)              |     *((s3 + 130)) = v0;
    0x00668c70 lw v0, -0x7940(gp)            |     v0 = *(gp);
    0x00668c74 lw t9, -0x642c(gp)            |     t9 = *(gp);
    0x00668c78 move a0, s0                   |     a0 = s0;
    0x00668c7c sw zero, 0x80(v0)             |     *((v0 + 32)) = 0;
    0x00668c80 bal 0x668354                  |     fcn_00668354 ();
    0x00668c84 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 != 0) {
    0x00668c88 beqz v0, 0x668ca8             |         
    0x00668c8c lw a1, -0x7fc4(gp)            |         a1 = *((gp - 8177));
    0x00668c90 lw t9, -0x6188(gp)            |         t9 = sym.imp.memcpy;
    0x00668c94 addiu a2, zero, 0x1f          |         a2 = 0x1f;
                                             |         /* str.unknown_time__cant_be_fetched */
    0x00668c98 addiu a1, a1, -0x2ba0         |         a1 += -0x2ba0;
    0x00668c9c move a0, s0                   |         a0 = s0;
    0x00668ca0 jalr t9                       |         t9 ();
    0x00668ca4 lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |     }
    0x00668ca8 lw a1, -0x7fd0(gp)            |     a1 = *((gp - 8180));
    0x00668cac lw a0, -0x7fc4(gp)            |     a0 = *((gp - 8177));
    0x00668cb0 lw t9, -0x61e8(gp)            |     t9 = sym.imp.printf;
    0x00668cb4 move a3, s7                   |     a3 = s7;
    0x00668cb8 move a2, s0                   |     a2 = s0;
    0x00668cbc sw s2, 0x10(sp)               |     *(var_10h) = s2;
                                             |     /* str.7.2.16 */
    0x00668cc0 addiu a1, a1, -0x4234         |     a1 += -0x4234;
                                             |     /* str.PHP__s_Development_Server_started_at__sListening_on_http:___s_nDocument_root_is__s_nPress_Ctrl_C_to_quit._n */
    0x00668cc4 addiu a0, a0, -0x2afc         |     a0 += -0x2afc;
    0x00668cc8 jalr t9                       |     t9 ();
    0x00668ccc lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00668cd0 addiu a0, zero, 2             |     a0 = 2;
    0x00668cd4 lw a1, -0x7240(gp)            |     a1 = *(gp);
    0x00668cd8 lw t9, -0x5f84(gp)            |     t9 = sym.imp.signal;
    0x00668cdc addiu a1, a1, 0x3a28          |     a1 += 0x3a28;
    0x00668ce0 jalr t9                       |     t9 ();
    0x00668ce4 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00668ce8 lw t9, -0x6480(gp)            |     t9 = *((gp - 6432));
    0x00668cec jalr t9                       |     t9 ();
    0x00668cf0 nop                           |     
    0x00668cf4 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00668cf8 lw v0, -0x7240(gp)            |     v0 = *(gp);
    0x00668cfc lw s2, -0x793c(gp)            |     s2 = *((gp - 7759));
    0x00668d00 addiu v0, v0, 0x7ff8          |     v0 += 0x7ff8;
    0x00668d04 addiu s2, s2, -0x4368         |     s2 += -0x4368;
    0x00668d08 sw v0, 0x10d0(sp)             |     *(var_10d0h) = v0;
                                             |     do {
                                             | label_22:
    0x00668d0c lw v0, 0x208(s3)              |         v0 = *((s3 + 130));
    0x00668d10 addiu v0, zero, 1             |         v0 = 1;
                                             |         if (v0 == 0) {
    0x00668d14 beqz v0, 0x668f1c             |             goto label_48;
                                             |         }
    0x00668d18 sw v0, 0x10b8(sp)             |         *(var_10b8h) = v0;
    0x00668d1c lw v0, 0x10dc(sp)             |         v0 = *(var_10dch);
    0x00668d20 lw t9, -0x6188(gp)            |         t9 = sym.imp.memcpy;
    0x00668d24 addiu a2, zero, 0x80          |         a2 = 0x80;
    0x00668d28 addiu a1, v0, -0x4468         |         a1 = v0 + -0x4468;
    0x00668d2c move a0, s2                   |         a0 = s2;
    0x00668d30 sw zero, 0x10bc(sp)           |         *(var_10bch) = 0;
    0x00668d34 jalr t9                       |         t9 ();
    0x00668d38 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x00668d3c addiu a2, zero, 0x80          |         a2 = 0x80;
    0x00668d40 lw s1, -0x793c(gp)            |         s1 = *((gp - 7759));
    0x00668d44 lw a1, -0x793c(gp)            |         a1 = *((gp - 7759));
    0x00668d48 lw t9, -0x6188(gp)            |         t9 = sym.imp.memcpy;
    0x00668d4c addiu s1, s1, -0x42e8         |         s1 += -0x42e8;
    0x00668d50 addiu a1, a1, -0x43e8         |         a1 += -0x43e8;
    0x00668d54 move a0, s1                   |         a0 = s1;
    0x00668d58 jalr t9                       |         t9 ();
    0x00668d5c lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x00668d60 lw a0, 0x204(s3)              |         a0 = *((s3 + 129));
    0x00668d64 lw v0, 0x10d8(sp)             |         v0 = *(var_10d8h);
    0x00668d68 lw t9, -0x6230(gp)            |         t9 = sym.imp.select;
    0x00668d6c sw v0, 0x10(sp)               |         *(var_10h) = v0;
    0x00668d70 move a3, zero                 |         a3 = 0;
    0x00668d74 move a2, s1                   |         a2 = s1;
    0x00668d78 move a1, s2                   |         a1 = s2;
    0x00668d7c addiu a0, a0, 1               |         a0++;
    0x00668d80 jalr t9                       |         t9 ();
    0x00668d84 lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |         if (v0 <= 0) {
    0x00668d88 blez v0, 0x668eb8             |             goto label_49;
                                             |         }
    0x00668d8c lw v0, -0x7240(gp)            |         v0 = *(gp);
    0x00668d90 lw fp, 0x204(s3)              |         fp = *((s3 + 129));
                                             |         /* fcn.00667744 */
    0x00668d94 addiu v0, v0, 0x7744          |         v0 += 0x7744;
    0x00668d98 sw v0, 0x102c(sp)             |         *(var_102ch) = v0;
    0x00668d9c lw v0, -0x7240(gp)            |         v0 = *(gp);
    0x00668da0 sw s3, 0x1028(sp)             |         *(var_1028h) = s3;
    0x00668da4 addiu v0, v0, 0x62e8          |         v0 += 0x62e8;
    0x00668da8 sw v0, 0x1030(sp)             |         *(var_1030h) = v0;
    0x00668dac move s1, zero                 |         s1 = 0;
    0x00668db0 addiu s7, zero, 1             |         s7 = 1;
                                             | label_17:
    0x00668db4 slt v0, fp, s1                |         v0 = (fp < s1) ? 1 : 0;
    0x00668db8 slti v0, s1, 0x400            |         v0 = (s1 < 0x400) ? 1 : 0;
    0x00668dbc bnez v0, 0x668d0c             |         
                                             |     } while (v0 != 0);
    0x00668dc0 lw t9, -0x63e8(gp)            |     t9 = sym.imp.__fdelt_chk;
                                             |     if (v0 != 0) {
    0x00668dc4 beqz v0, 0x668e48             |         
    0x00668dc8 move a0, s1                   |         a0 = s1;
    0x00668dcc jalr t9                       |         t9 ();
    0x00668dd0 addiu v0, v0, 0x40            |         v0 += 0x40;
    0x00668dd4 sll v0, v0, 2                 |         v0 <<= 2;
    0x00668dd8 addu v0, s3, v0               |         v0 = s3 + v0;
    0x00668ddc sllv s6, s7, s1               |         s6 = s7 << s1;
    0x00668de0 lw v0, 4(v0)                  |         v0 = *((v0 + 1));
    0x00668de4 and v0, s6, v0                |         v0 = s6 & v0;
    0x00668de8 lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |         if (v0 != 0) {
    0x00668dec beqz v0, 0x668e08             |             
    0x00668df0 lw t9, 0x10d0(sp)             |             t9 = *(var_10d0h);
    0x00668df4 addiu a2, zero, 1             |             a2 = 1;
    0x00668df8 move a1, s1                   |             a1 = s1;
    0x00668dfc move a0, s0                   |             a0 = s0;
    0x00668e00 jalr t9                       |             t9 ();
    0x00668e04 lw gp, 0x20(sp)               |             gp = *(var_20h);
                                             |         }
    0x00668e08 lw t9, -0x63e8(gp)            |         t9 = sym.imp.__fdelt_chk;
    0x00668e0c move a0, s1                   |         a0 = s1;
    0x00668e10 jalr t9                       |         t9 ();
    0x00668e14 addiu v0, v0, 0x60            |         v0 += 0x60;
    0x00668e18 sll v0, v0, 2                 |         v0 <<= 2;
    0x00668e1c addu v0, s3, v0               |         v0 = s3 + v0;
    0x00668e20 lw v0, 4(v0)                  |         v0 = *((v0 + 1));
    0x00668e24 and s6, s6, v0                |         s6 &= v0;
    0x00668e28 lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |         if (s6 == 0) {
    0x00668e2c beqz s6, 0x668e48             |             goto label_50;
                                             |         }
    0x00668e30 lw t9, 0x10d0(sp)             |         t9 = *(var_10d0h);
    0x00668e34 addiu a2, zero, 4             |         a2 = 4;
    0x00668e38 move a1, s1                   |         a1 = s1;
    0x00668e3c move a0, s0                   |         a0 = s0;
    0x00668e40 jalr t9                       |         t9 ();
    0x00668e44 lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |     }
                                             | label_50:
    0x00668e48 addiu s1, s1, 1               |     s1++;
    0x00668e4c b 0x668db4                    |     goto label_17;
                                             | label_37:
    0x00668e50 lw a3, -0x7fc4(gp)            |     a3 = *((gp - 8177));
    0x00668e54 addiu a3, a3, -0x2c50         |     a3 += -0x2c50;
    0x00668e58 b 0x668874                    |     goto label_18;
                                             | label_38:
    0x00668e5c jalr t9                       |     t9 ();
    0x00668e60 nop                           |     
    0x00668e64 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00668e68 b 0x6688d8                    |     goto label_19;
                                             | label_46:
    0x00668e6c sw zero, 0x220(s3)            |     *((s3 + 136)) = 0;
    0x00668e70 sw zero, 0x224(s3)            |     *((s3 + 137)) = 0;
    0x00668e74 b 0x668c2c                    |     goto label_20;
                                             | label_47:
    0x00668e78 move a0, s6                   |     a0 = s6;
    0x00668e7c jalr t9                       |     t9 ();
    0x00668e80 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00668e84 lw v1, 4(s1)                  |     v1 = *((s1 + 1));
    0x00668e88 move a3, s0                   |     a3 = s0;
    0x00668e8c lw t9, -0x7de8(gp)            |     t9 = sym._zend_hash_str_add;
    0x00668e90 sw v1, 0x1028(sp)             |     *(var_1028h) = v1;
    0x00668e94 addiu v1, zero, 0x11          |     v1 = 0x11;
    0x00668e98 sw v1, 0x1030(sp)             |     *(var_1030h) = v1;
    0x00668e9c move a2, v0                   |     a2 = v0;
    0x00668ea0 move a1, s6                   |     a1 = s6;
    0x00668ea4 move a0, fp                   |     a0 = fp;
    0x00668ea8 jalr t9                       |     t9 ();
    0x00668eac addiu s1, s1, 8               |     s1 += 8;
    0x00668eb0 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00668eb4 b 0x668c5c                    |     goto label_21;
                                             | label_49:
    0x00668eb8 lw t9, -0x5ee4(gp)            |     t9 = sym.imp.__errno_location;
                                             |     if (v0 == 0) {
    0x00668ebc beqz v0, 0x668d0c             |         goto label_22;
                                             |     }
    0x00668ec0 jalr t9                       |     t9 ();
    0x00668ec4 nop                           |     
    0x00668ec8 lw a0, (v0)                   |     a0 = *(v0);
    0x00668ecc addiu v0, zero, 4             |     v0 = 4;
    0x00668ed0 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (a0 == v0) {
    0x00668ed4 beq a0, v0, 0x668d0c          |         goto label_22;
                                             |     }
    0x00668ed8 lw t9, -0x69fc(gp)            |     t9 = sym.php_socket_strerror;
    0x00668edc move a2, zero                 |     a2 = 0;
    0x00668ee0 move a1, zero                 |     a1 = 0;
    0x00668ee4 jalr t9                       |     t9 ();
    0x00668ee8 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00668eec move a1, v0                   |     a1 = v0;
    0x00668ef0 move s0, v0                   |     s0 = v0;
    0x00668ef4 lw a0, -0x7fc4(gp)            |     a0 = *((gp - 8177));
    0x00668ef8 lw t9, -0x7240(gp)            |     t9 = *(gp);
                                             |     /* fcn.006650c0 */
    0x00668efc addiu t9, t9, 0x50c0          |     t9 += 0x50c0;
                                             |     /* esilref: '&s' */
    0x00668f00 addiu a0, a0, -0x40cc         |     a0 += -0x40cc;
    0x00668f04 bal 0x6650c0                  |     fcn_006650c0 ();
    0x00668f08 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00668f0c lw t9, -0x7fe4(gp)            |     t9 = sym._efree;
    0x00668f10 move a0, s0                   |     a0 = s0;
    0x00668f14 jalr t9                       |     t9 ();
    0x00668f18 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             | label_48:
    0x00668f1c lw v0, 0x10e0(sp)             |     v0 = *(var_10e0h);
    0x00668f20 lw t9, -0x7fe0(gp)            |     t9 = sym.zend_hash_destroy;
    0x00668f24 addiu a0, v0, -0x4240         |     a0 = v0 + -0x4240;
    0x00668f28 jalr t9                       |     t9 ();
    0x00668f2c lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00668f30 lw t9, -0x7fe0(gp)            |     t9 = sym.zend_hash_destroy;
    0x00668f34 addiu a0, s5, -0x4214         |     a0 = s5 + -0x4214;
    0x00668f38 jalr t9                       |     t9 ();
    0x00668f3c lw v0, 0x10d4(sp)             |     v0 = *(var_10d4h);
    0x00668f40 lw a0, -0x446c(v0)            |     a0 = *((v0 - 4379));
    0x00668f44 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (a0 >= 0) {
    0x00668f48 bltz a0, 0x668f5c             |         
    0x00668f4c lw t9, -0x623c(gp)            |         t9 = sym.imp.close;
    0x00668f50 jalr t9                       |         t9 ();
    0x00668f54 nop                           |         
    0x00668f58 lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |     }
    0x00668f5c lw a0, 0x20c(s3)              |     a0 = *((s3 + 131));
    0x00668f60 lw t9, -0x60d4(gp)            |     t9 = *((gp - 6197));
                                             |     if (a0 != 0) {
    0x00668f64 beqz a0, 0x668f74             |         
    0x00668f68 jalr t9                       |         t9 ();
    0x00668f6c nop                           |         
    0x00668f70 lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |     }
    0x00668f74 lw a0, 0x218(s3)              |     a0 = *((s3 + 134));
    0x00668f78 lw t9, -0x60d4(gp)            |     t9 = *((gp - 6197));
                                             |     if (a0 != 0) {
    0x00668f7c beqz a0, 0x668f8c             |         
    0x00668f80 jalr t9                       |         t9 ();
    0x00668f84 nop                           |         
    0x00668f88 lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |     }
    0x00668f8c lw a0, 0x220(s3)              |     a0 = *((s3 + 136));
    0x00668f90 lw t9, -0x60d4(gp)            |     t9 = *((gp - 6197));
                                             |     if (a0 == 0) {
    0x00668f94 beqz a0, 0x66857c             |         goto label_23;
                                             |     }
    0x00668f98 jalr t9                       |     t9 ();
    0x00668f9c nop                           |     
    0x00668fa0 lw ra, 0x110c(sp)             |     ra = *(var_110ch);
    0x00668fa4 b 0x668580                    |     goto label_24;
                                             | }
    ; assembly                                   | /* r2dec pseudo code output */
                                                 | /* /logs/firmware/unblob_extracted/firmware_extract/1568982-13971496.squashfs_v4_le_extract/usr/bin/php-cli @ 0x4e1a04 */
                                                 | #include <stdint.h>
                                                 |  
    ; (fcn) sym.php_mail_build_headers ()        | void php_mail_build_headers () {
    0x004e1a04 lui gp, 0x23                      |     
    0x004e1a08 addiu gp, gp, -0x3804             |     
    0x004e1a0c addu gp, gp, t9                   |     gp += t9;
    0x004e1a10 lw v0, (a0)                       |     v0 = *(a0);
    0x004e1a14 addiu sp, sp, -0x50               |     
    0x004e1a18 sw s2, 0x30(sp)                   |     *(var_30h) = s2;
    0x004e1a1c lw s2, 0x10(v0)                   |     s2 = *((v0 + 4));
    0x004e1a20 lw v0, 0x14(v0)                   |     v0 = *((v0 + 5));
    0x004e1a24 sw s6, 0x40(sp)                   |     *(var_40h) = s6;
    0x004e1a28 addiu s6, zero, 0x18              |     s6 = 0x18;
    0x004e1a2c mul v1, s6, v0                    |     __asm ("mul v1, s6, v0");
    0x004e1a30 sw s5, 0x3c(sp)                   |     *(var_3ch) = s5;
    0x004e1a34 sw s3, 0x34(sp)                   |     *(var_34h) = s3;
    0x004e1a38 lw s5, -0x6c28(gp)                |     s5 = *(gp);
    0x004e1a3c lw s3, -0x6c28(gp)                |     s3 = *(gp);
    0x004e1a40 sw s4, 0x38(sp)                   |     *(var_38h) = s4;
    0x004e1a44 lw s4, -0x7fbc(gp)                |     s4 = *((gp - 8175));
    0x004e1a48 sw gp, 0x18(sp)                   |     *(var_18h) = gp;
    0x004e1a4c sw ra, 0x4c(sp)                   |     *(var_4ch) = ra;
    0x004e1a50 sw fp, 0x48(sp)                   |     *(var_48h) = fp;
    0x004e1a54 sw s7, 0x44(sp)                   |     *(var_44h) = s7;
    0x004e1a58 sw s1, 0x2c(sp)                   |     *(var_2ch) = s1;
    0x004e1a5c sw s0, 0x28(sp)                   |     *(var_28h) = s0;
    0x004e1a60 sw zero, 0x20(sp)                 |     *(var_20h) = 0;
    0x004e1a64 sw zero, 0x24(sp)                 |     *(var_24h) = 0;
    0x004e1a68 addu s6, v1, s2                   |     s6 = v1 + s2;
    0x004e1a6c addiu s5, s5, 0x17a4              |     s5 += 0x17a4;
                                                 |     /* fcn.004e1480 */
    0x004e1a70 addiu s3, s3, 0x1480              |     s3 += 0x1480;
    0x004e1a74 lw v0, 0x20(sp)                   |     v0 = *(var_20h);
                                                 |     if (s2 == s6) {
    0x004e1a78 bne s2, s6, 0x4e1ac8              |         
    0x004e1a7c lw ra, 0x4c(sp)                   |         ra = *(var_4ch);
                                                 |         if (v0 != 0) {
    0x004e1a80 beqz v0, 0x4e1a9c                 |             
    0x004e1a84 lw v1, 0xc(v0)                    |             v1 = *((v0 + 3));
    0x004e1a88 addiu v1, v1, -2                  |             v1 += -2;
    0x004e1a8c sw v1, 0xc(v0)                    |             *((v0 + 3)) = v1;
    0x004e1a90 addu v1, v0, v1                   |             v1 = v0 + v1;
    0x004e1a94 sb zero, 0x10(v1)                 |             *((v1 + 16)) = 0;
    0x004e1a98 lw ra, 0x4c(sp)                   |             ra = *(var_4ch);
                                                 |         }
    0x004e1a9c lw fp, 0x48(sp)                   |         fp = *(var_48h);
    0x004e1aa0 lw s7, 0x44(sp)                   |         s7 = *(var_44h);
    0x004e1aa4 lw s6, 0x40(sp)                   |         s6 = *(var_40h);
    0x004e1aa8 lw s5, 0x3c(sp)                   |         s5 = *(var_3ch);
    0x004e1aac lw s4, 0x38(sp)                   |         s4 = *(var_38h);
    0x004e1ab0 lw s3, 0x34(sp)                   |         s3 = *(var_34h);
    0x004e1ab4 lw s2, 0x30(sp)                   |         s2 = *(var_30h);
    0x004e1ab8 lw s1, 0x2c(sp)                   |         s1 = *(var_2ch);
    0x004e1abc lw s0, 0x28(sp)                   |         s0 = *(var_28h);
    0x004e1ac0 addiu sp, sp, 0x50                |         
    0x004e1ac4 jr ra                             |         return v0;
                                                 |     }
    0x004e1ac8 lbu s1, 8(s2)                     |     s1 = *((s2 + 8));
                                                 |     if (s1 == 0) {
    0x004e1acc beqz s1, 0x4e1ba0                 |         void (*0x4e1ba0)() ();
                                                 |     }
    0x004e1ad0 nop                               |     
    0x004e1ad4 lw s0, 0x14(s2)                   |     s0 = *((s2 + 5));
    0x004e1ad8 lw a2, -0x7fbc(gp)                |     a2 = *((gp - 8175));
                                                 |     if (s0 == 0) {
    0x004e1adc bnez s0, 0x4e1af8                 |         
    0x004e1ae0 lw a3, 0x10(s2)                   |         a3 = *((s2 + 4));
                                                 |         /* str.Found_numeric_header___d_ */
    0x004e1ae4 addiu a2, a2, -0x500c             |         a2 += -0x500c;
    0x004e1ae8 addiu a1, zero, 2                 |         a1 = 2;
    0x004e1aec move a0, zero                     |         a0 = 0;
    0x004e1af0 lw t9, -0x7ef4(gp)                |         t9 = sym.php_error_docref0;
    0x004e1af4 b 0x4e1d78                        |         void (*0x4e1d78)() ();
                                                 |     }
    0x004e1af8 lw v0, 0xc(s0)                    |     v0 = *((s0 + 3));
    0x004e1afc addiu v0, v0, -2                  |     v0 += -2;
    0x004e1b00 sltiu v1, v0, 0xa                 |     v1 = (v0 < 0xa) ? 1 : 0;
    0x004e1b04 lw v1, -0x7fbc(gp)                |     v1 = *((gp - 8175));
                                                 |     if (v1 == 0) {
    0x004e1b08 beqz v1, 0x4e1e88                 |         void (*0x4e1e88)() ();
                                                 |     }
    0x004e1b0c sll v0, v0, 2                     |     v0 <<= 2;
    0x004e1b10 addiu v1, v1, -0x4cf0             |     v1 += -0x4cf0;
    0x004e1b14 addu v0, v1, v0                   |     v0 = v1 + v0;
    0x004e1b18 lw v0, (v0)                       |     v0 = *(v0);
    0x004e1b1c addu v0, v0, gp                   |     v0 += gp;
    0x004e1b20 jr v0                             |     v0 ();
    0x004e1b24 nop                               |     
                                                 | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/1568982-13971496.squashfs_v4_le_extract/usr/bin/php-cli @ 0x4e1fd0 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.php_mail ()                  | void php_mail () {
    0x004e1fd0 lui gp, 0x23                  |     
    0x004e1fd4 addiu gp, gp, -0x3dd0         |     
    0x004e1fd8 addu gp, gp, t9               |     gp += t9;
    0x004e1fdc addiu sp, sp, -0x68           |     
    0x004e1fe0 lw t9, -0x7840(gp)            |     t9 = sym.zend_ini_string_ex;
    0x004e1fe4 sw s4, 0x50(sp)               |     *(var_50h) = s4;
    0x004e1fe8 move s4, a0                   |     s4 = a0;
    0x004e1fec lw a0, -0x7fbc(gp)            |     a0 = *((gp - 8175));
    0x004e1ff0 sw gp, 0x20(sp)               |     *(var_20h) = gp;
    0x004e1ff4 sw ra, 0x64(sp)               |     *(var_64h) = ra;
    0x004e1ff8 sw s5, 0x54(sp)               |     *(var_54h) = s5;
    0x004e1ffc sw s3, 0x4c(sp)               |     *(var_4ch) = s3;
    0x004e2000 sw s2, 0x48(sp)               |     *(var_48h) = s2;
    0x004e2004 sw s1, 0x44(sp)               |     *(var_44h) = s1;
    0x004e2008 sw s0, 0x40(sp)               |     *(var_40h) = s0;
                                             |     /* str.sendmail_path */
    0x004e200c addiu a0, a0, -0x4ed8         |     a0 += -0x4ed8;
    0x004e2010 move s0, a3                   |     s0 = a3;
    0x004e2014 sw fp, 0x60(sp)               |     *(var_60h) = fp;
    0x004e2018 move a3, zero                 |     a3 = 0;
    0x004e201c sw s7, 0x5c(sp)               |     *(var_5ch) = s7;
    0x004e2020 sw s6, 0x58(sp)               |     *(var_58h) = s6;
    0x004e2024 move s3, a1                   |     s3 = a1;
    0x004e2028 move s5, a2                   |     s5 = a2;
    0x004e202c addiu a1, zero, 0xd           |     a1 = 0xd;
    0x004e2030 move a2, zero                 |     a2 = 0;
    0x004e2034 lw s2, 0x78(sp)               |     s2 = *(arg_78h);
    0x004e2038 jalr t9                       |     t9 ();
    0x004e203c lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x004e2040 sw zero, 0x38(sp)             |     *(var_38h) = 0;
    0x004e2044 move a3, zero                 |     a3 = 0;
    0x004e2048 lw a0, -0x7fb8(gp)            |     a0 = *((gp - 8174));
    0x004e204c lw t9, -0x7840(gp)            |     t9 = sym.zend_ini_string_ex;
    0x004e2050 move a2, zero                 |     a2 = 0;
    0x004e2054 addiu a1, zero, 8             |     a1 = 8;
                                             |     /* str.mail.log */
    0x004e2058 addiu a0, a0, -0x6920         |     a0 += -0x6920;
    0x004e205c move s1, v0                   |     s1 = v0;
    0x004e2060 jalr t9                       |     t9 ();
    0x004e2064 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x004e2068 sw s0, 0x34(sp)               |     *(var_34h) = s0;
                                             |     if (v0 == 0) {
    0x004e206c beqz v0, 0x4e2134             |         goto label_8;
                                             |     }
    0x004e2070 move s6, v0                   |     s6 = v0;
    0x004e2074 lb v0, (v0)                   |     v0 = *(v0);
    0x004e2078 lw v0, -0x79a8(gp)            |     v0 = *(gp);
                                             |     if (v0 == 0) {
    0x004e207c beqz v0, 0x4e2138             |         goto label_9;
                                             |     }
    0x004e2080 lw t9, -0x760c(gp)            |     t9 = sym.zend_get_executed_filename;
    0x004e2084 jalr t9                       |     t9 ();
    0x004e2088 nop                           |     
    0x004e208c lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x004e2090 lw t9, -0x7608(gp)            |     t9 = sym.zend_get_executed_lineno;
    0x004e2094 move s7, v0                   |     s7 = v0;
    0x004e2098 jalr t9                       |     t9 ();
    0x004e209c lw v1, 0x34(sp)               |     v1 = *(var_34h);
    0x004e20a0 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v1 == 0) {
    0x004e20a4 bnez v1, 0x4e20b0             |         
    0x004e20a8 lw v1, -0x7fc4(gp)            |         v1 = *((gp - 8177));
    0x004e20ac addiu v1, v1, -0x3700         |         v1 += -0x3700;
                                             |     }
    0x004e20b0 lw a2, -0x7fbc(gp)            |     a2 = *((gp - 8175));
    0x004e20b4 lw t9, -0x7a0c(gp)            |     t9 = sym.zend_spprintf;
    0x004e20b8 sw s3, 0x1c(sp)               |     *(var_1ch) = s3;
    0x004e20bc sw v1, 0x18(sp)               |     *(var_18h) = v1;
    0x004e20c0 sw s4, 0x14(sp)               |     *(var_14h) = s4;
    0x004e20c4 sw v0, 0x10(sp)               |     *(var_10h) = v0;
    0x004e20c8 move a3, s7                   |     a3 = s7;
                                             |     /* str.mail___on___s:_d_:_To:__s____Headers:__s____Subject:__s */
    0x004e20cc addiu a2, a2, -0x4ec8         |     a2 += -0x4ec8;
    0x004e20d0 move a1, zero                 |     a1 = 0;
    0x004e20d4 addiu a0, sp, 0x30            |     a0 = sp + 0x30;
    0x004e20d8 jalr t9                       |     t9 ();
    0x004e20dc lw v0, 0x34(sp)               |     v0 = *(var_34h);
    0x004e20e0 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 != 0) {
    0x004e20e4 beqz v0, 0x4e20f8             |         
    0x004e20e8 lw t9, -0x6b94(gp)            |         t9 = *(gp);
    0x004e20ec lw a0, 0x30(sp)               |         a0 = *(var_30h);
    0x004e20f0 bal 0x4e1ea4                  |         fcn_004e1ea4 ();
    0x004e20f4 lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |     }
    0x004e20f8 lw a1, -0x7fb8(gp)            |     a1 = *((gp - 8174));
    0x004e20fc lw t9, -0x63c0(gp)            |     t9 = sym.imp.strcmp;
                                             |     /* str.syslog */
    0x004e2100 addiu a1, a1, -0x6c7c         |     a1 += -0x6c7c;
    0x004e2104 move a0, s6                   |     a0 = s6;
    0x004e2108 jalr t9                       |     t9 ();
    0x004e210c lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 != 0) {
    0x004e2110 bnez v0, 0x4e22a8             |         goto label_10;
                                             |     }
    0x004e2114 lw t9, -0x6b90(gp)            |     t9 = *(gp);
    0x004e2118 lw a0, 0x30(sp)               |     a0 = *(var_30h);
    0x004e211c bal 0x4e1f04                  |     fcn_004e1f04 ();
    0x004e2120 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     do {
    0x004e2124 lw t9, -0x7fe4(gp)            |         t9 = sym._efree;
    0x004e2128 lw a0, 0x30(sp)               |         a0 = *(var_30h);
    0x004e212c jalr t9                       |         t9 ();
    0x004e2130 lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             | label_8:
    0x004e2134 lw v0, -0x79a8(gp)            |         v0 = *(gp);
                                             | label_9:
    0x004e2138 lbu v0, 0x18c(v0)             |         v0 = *((v0 + 396));
    0x004e213c lw a0, 0x34(sp)               |         a0 = *(var_34h);
                                             |         if (v0 != 0) {
    0x004e2140 beqz v0, 0x4e2214             |             
    0x004e2144 lw t9, -0x760c(gp)            |             t9 = sym.zend_get_executed_filename;
    0x004e2148 addiu s7, sp, 0x34            |             s7 = sp + 0x34;
    0x004e214c jalr t9                       |             t9 ();
    0x004e2150 lw gp, 0x20(sp)               |             gp = *(var_20h);
    0x004e2154 move a0, v0                   |             a0 = v0;
    0x004e2158 lw t9, -0x6194(gp)            |             t9 = sym.imp.strlen;
    0x004e215c move s6, v0                   |             s6 = v0;
    0x004e2160 jalr t9                       |             t9 ();
    0x004e2164 lw gp, 0x20(sp)               |             gp = *(var_20h);
    0x004e2168 move a0, s6                   |             a0 = s6;
    0x004e216c move a3, zero                 |             a3 = 0;
    0x004e2170 lw t9, -0x7a84(gp)            |             t9 = sym.php_basename;
    0x004e2174 move a2, zero                 |             a2 = 0;
    0x004e2178 move a1, v0                   |             a1 = v0;
    0x004e217c bal 0x4f4dd8                  |             sym_php_basename ();
    0x004e2180 lw gp, 0x20(sp)               |             gp = *(var_20h);
    0x004e2184 move s6, v0                   |             s6 = v0;
    0x004e2188 addiu fp, v0, 0x10            |             fp = v0 + 0x10;
    0x004e218c lw t9, -0x6b8c(gp)            |             t9 = *(gp);
                                             |             if (s0 == 0) {
    0x004e2190 beqz s0, 0x4e2378             |                 goto label_11;
                                             |             }
    0x004e2194 lb v0, (s0)                   |             v0 = *(s0);
                                             |             if (v0 == 0) {
    0x004e2198 beqz v0, 0x4e2378             |                 goto label_11;
                                             |             }
    0x004e219c nop                           |             
    0x004e21a0 bal 0x4ec674                  |             fcn_004ec674 ();
    0x004e21a4 nop                           |             
    0x004e21a8 lw gp, 0x20(sp)               |             gp = *(var_20h);
    0x004e21ac sw s0, 0x14(sp)               |             *(var_14h) = s0;
    0x004e21b0 sw fp, 0x10(sp)               |             *(var_10h) = fp;
    0x004e21b4 lw a2, -0x7fbc(gp)            |             a2 = *((gp - 8175));
    0x004e21b8 lw t9, -0x7a0c(gp)            |             t9 = sym.zend_spprintf;
    0x004e21bc move a3, v0                   |             a3 = v0;
                                             |             /* str.X_PHP_Originating_Script:__d:_s_n_s */
    0x004e21c0 addiu a2, a2, -0x4e74         |             a2 += -0x4e74;
    0x004e21c4 move a1, zero                 |             a1 = 0;
    0x004e21c8 move a0, s7                   |             a0 = s7;
    0x004e21cc jalr t9                       |             t9 ();
    0x004e21d0 lw gp, 0x20(sp)               |             gp = *(var_20h);
                                             | label_1:
    0x004e21d4 lbu v0, 5(s6)                 |             v0 = *((s6 + 5));
    0x004e21d8 andi v1, v0, 2                |             v1 = v0 & 2;
                                             |             if (v1 == 0) {
    0x004e21dc bnez v1, 0x4e2210             |                 
    0x004e21e0 nop                           |                 
    0x004e21e4 lw v1, (s6)                   |                 v1 = *(s6);
    0x004e21e8 addiu v1, v1, -1              |                 v1 += -1;
    0x004e21ec sw v1, (s6)                   |                 *(s6) = v1;
                                             |                 if (v1 != 0) {
    0x004e21f0 bnez v1, 0x4e2210             |                     goto label_2;
                                             |                 }
    0x004e21f4 andi v0, v0, 1                |                 v0 &= 1;
    0x004e21f8 move a0, s6                   |                 a0 = s6;
                                             |                 if (v0 == 0) {
    0x004e21fc beqz v0, 0x4e23ac             |                     goto label_12;
                                             |                 }
    0x004e2200 lw t9, -0x60d4(gp)            |                 t9 = *((gp - 6197));
    0x004e2204 jalr t9                       |                 t9 ();
    0x004e2208 nop                           |                 
    0x004e220c lw gp, 0x20(sp)               |                 gp = *(var_20h);
                                             |             }
                                             | label_2:
    0x004e2210 lw a0, 0x34(sp)               |             a0 = *(var_34h);
                                             |         }
                                             |         if (a0 != 0) {
    0x004e2214 beqz a0, 0x4e225c             |             
    0x004e2218 nop                           |             
    0x004e221c lb v1, (a0)                   |             v1 = *(a0);
    0x004e2220 addiu v0, v1, -0x21           |             v0 = v1 + -0x21;
                                             |             if (v1 == 0) {
    0x004e2224 beqz v1, 0x4e225c             |                 goto label_13;
                                             |             }
    0x004e2228 andi v0, v0, 0xff             |             v0 &= 0xff;
    0x004e222c sltiu v0, v0, 0x5e            |             v0 = (v0 < 0x5e) ? 1 : 0;
    0x004e2230 addiu v0, zero, 0x3a          |             v0 = 0x3a;
                                             |             if (v0 == 0) {
    0x004e2234 beqz v0, 0x4e2414             |                 goto label_14;
                                             |             }
    0x004e2238 lw a2, -0x7fbc(gp)            |             a2 = *((gp - 8175));
                                             |             if (v1 == v0) {
    0x004e223c beq v1, v0, 0x4e2418          |                 goto label_15;
                                             |             }
    0x004e2240 move v1, a0                   |             v1 = a0;
    0x004e2244 addiu a2, zero, 0xd           |             a2 = 0xd;
    0x004e2248 addiu a3, zero, 0xa           |             a3 = 0xa;
    0x004e224c addiu t0, zero, 0x2401        |             t0 = 0x2401;
                                             | label_3:
    0x004e2250 lb a1, (v1)                   |             a1 = *(v1);
                                             |             if (a1 != 0) {
    0x004e2254 bnez a1, 0x4e23c0             |                 goto label_16;
                                             |             }
    0x004e2258 nop                           |             
                                             |         }
                                             |         if (s1 != 0) {
                                             | label_13:
    0x004e225c bnez s1, 0x4e2438             |             goto label_17;
                                             |         }
    0x004e2260 nop                           |         
                                             | label_4:
    0x004e2264 lw t9, -0x7fe4(gp)            |         t9 = sym._efree;
                                             |         if (a0 != s0) {
    0x004e2268 beq a0, s0, 0x4e2274          |             
    0x004e226c jalr t9                       |             t9 ();
    0x004e2270 nop                           |             
                                             |         }
    0x004e2274 move v0, zero                 |         v0 = 0;
                                             | label_6:
    0x004e2278 lw ra, 0x64(sp)               |         ra = *(var_64h);
    0x004e227c lw fp, 0x60(sp)               |         fp = *(var_60h);
    0x004e2280 lw s7, 0x5c(sp)               |         s7 = *(var_5ch);
    0x004e2284 lw s6, 0x58(sp)               |         s6 = *(var_58h);
    0x004e2288 lw s5, 0x54(sp)               |         s5 = *(var_54h);
    0x004e228c lw s4, 0x50(sp)               |         s4 = *(var_50h);
    0x004e2290 lw s3, 0x4c(sp)               |         s3 = *(var_4ch);
    0x004e2294 lw s2, 0x48(sp)               |         s2 = *(var_48h);
    0x004e2298 lw s1, 0x44(sp)               |         s1 = *(var_44h);
    0x004e229c lw s0, 0x40(sp)               |         s0 = *(var_40h);
    0x004e22a0 addiu sp, sp, 0x68            |         
    0x004e22a4 jr ra                         |         return v0;
                                             | label_10:
    0x004e22a8 lw t9, -0x625c(gp)            |         t9 = sym.imp.time;
    0x004e22ac addiu a0, sp, 0x28            |         a0 = sp + 0x28;
    0x004e22b0 jalr t9                       |         t9 ();
    0x004e22b4 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x004e22b8 lw a2, 0x28(sp)               |         a2 = *(var_28h);
    0x004e22bc addiu a3, zero, 1             |         a3 = 1;
    0x004e22c0 lw a0, -0x7fbc(gp)            |         a0 = *((gp - 8175));
    0x004e22c4 lw t9, -0x7d6c(gp)            |         t9 = sym.php_format_date;
    0x004e22c8 addiu a1, zero, 0xd           |         a1 = 0xd;
                                             |         /* str.d_M_Y_H:i:s_e */
    0x004e22cc addiu a0, a0, -0x4e90         |         a0 += -0x4e90;
    0x004e22d0 jalr t9                       |         t9 ();
    0x004e22d4 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x004e22d8 move s7, v0                   |         s7 = v0;
    0x004e22dc addiu a3, s7, 0x10            |         a3 = s7 + 0x10;
    0x004e22e0 lw v0, -0x7fc0(gp)            |         v0 = *((gp - 8176));
    0x004e22e4 lw a2, -0x7fbc(gp)            |         a2 = *((gp - 8175));
    0x004e22e8 addiu v0, v0, 0x6f08          |         v0 += 0x6f08;
    0x004e22ec sw v0, 0x14(sp)               |         *(var_14h) = v0;
    0x004e22f0 lw v0, 0x30(sp)               |         v0 = *(var_30h);
    0x004e22f4 lw t9, -0x7a0c(gp)            |         t9 = sym.zend_spprintf;
                                             |         /* str.__s___s_s */
    0x004e22f8 addiu a2, a2, -0x4e80         |         a2 += -0x4e80;
    0x004e22fc move a1, zero                 |         a1 = 0;
    0x004e2300 addiu a0, sp, 0x2c            |         a0 = sp + 0x2c;
    0x004e2304 sw v0, 0x10(sp)               |         *(var_10h) = v0;
    0x004e2308 jalr t9                       |         t9 ();
    0x004e230c lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x004e2310 lw a1, 0x2c(sp)               |         a1 = *(var_2ch);
    0x004e2314 move a2, v0                   |         a2 = v0;
    0x004e2318 lw t9, -0x6b88(gp)            |         t9 = *(gp);
    0x004e231c move a0, s6                   |         a0 = s6;
    0x004e2320 bal 0x4e1f28                  |         fcn_004e1f28 ();
    0x004e2324 lbu v0, 5(s7)                 |         v0 = *((s7 + 5));
    0x004e2328 andi v1, v0, 2                |         v1 = v0 & 2;
    0x004e232c lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |         if (v1 == 0) {
    0x004e2330 bnez v1, 0x4e2350             |             
    0x004e2334 andi v0, v0, 1                |             v0 &= 1;
    0x004e2338 move a0, s7                   |             a0 = s7;
                                             |             if (v0 == 0) {
    0x004e233c beqz v0, 0x4e2364             |                 goto label_18;
                                             |             }
    0x004e2340 lw t9, -0x60d4(gp)            |             t9 = *((gp - 6197));
    0x004e2344 jalr t9                       |             t9 ();
    0x004e2348 nop                           |             
    0x004e234c lw gp, 0x20(sp)               |             gp = *(var_20h);
                                             |         }
                                             | label_0:
    0x004e2350 lw t9, -0x7fe4(gp)            |         t9 = sym._efree;
    0x004e2354 lw a0, 0x2c(sp)               |         a0 = *(var_2ch);
    0x004e2358 jalr t9                       |         t9 ();
    0x004e235c lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x004e2360 b 0x4e2124                    |         
                                             |     } while (1);
                                             | label_18:
    0x004e2364 lw t9, -0x7fe4(gp)            |     t9 = sym._efree;
    0x004e2368 jalr t9                       |     t9 ();
    0x004e236c nop                           |     
    0x004e2370 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x004e2374 b 0x4e2350                    |     goto label_0;
                                             | label_11:
    0x004e2378 bal 0x4ec674                  |     fcn_004ec674 ();
    0x004e237c nop                           |     
    0x004e2380 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x004e2384 sw fp, 0x10(sp)               |     *(var_10h) = fp;
    0x004e2388 move a3, v0                   |     a3 = v0;
    0x004e238c lw a2, -0x7fbc(gp)            |     a2 = *((gp - 8175));
    0x004e2390 lw t9, -0x7a0c(gp)            |     t9 = sym.zend_spprintf;
                                             |     /* str.X_PHP_Originating_Script:__d:_s */
    0x004e2394 addiu a2, a2, -0x4e50         |     a2 += -0x4e50;
    0x004e2398 move a1, zero                 |     a1 = 0;
    0x004e239c move a0, s7                   |     a0 = s7;
    0x004e23a0 jalr t9                       |     t9 ();
    0x004e23a4 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x004e23a8 b 0x4e21d4                    |     goto label_1;
                                             | label_12:
    0x004e23ac lw t9, -0x7fe4(gp)            |     t9 = sym._efree;
    0x004e23b0 jalr t9                       |     t9 ();
    0x004e23b4 nop                           |     
    0x004e23b8 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x004e23bc b 0x4e2210                    |     goto label_2;
                                             | label_16:
    0x004e23c0 lb v0, 1(v1)                  |     v0 = *((v1 + 1));
                                             |     if (a1 != a2) {
    0x004e23c4 bne a1, a2, 0x4e2404          |         goto label_19;
                                             |     }
                                             |     if (v0 == 0) {
    0x004e23c8 beqz v0, 0x4e2414             |         goto label_14;
                                             |     }
    0x004e23cc nop                           |     
                                             |     if (v0 == a2) {
    0x004e23d0 beq v0, a2, 0x4e2414          |         goto label_14;
                                             |     }
    0x004e23d4 nop                           |     
    0x004e23d8 lb a1, 2(v1)                  |     a1 = *((v1 + 2));
                                             |     if (v0 != a3) {
    0x004e23dc bne v0, a3, 0x4e23fc          |         goto label_20;
                                             |     }
    0x004e23e0 andi v0, a1, 0xff             |     v0 = a1 & 0xff;
                                             |     do {
    0x004e23e4 sltiu a1, v0, 0xe             |         a1 = (v0 < 0xe) ? 1 : 0;
    0x004e23e8 srlv v0, t0, v0               |         v0 = t0 >> v0;
                                             |         if (a1 != 0) {
    0x004e23ec beqz a1, 0x4e23fc             |             
    0x004e23f0 ext v0, v0, 0, 1              |             __asm ("ext v0, v0, 0, 1");
                                             |             if (v0 != 0) {
    0x004e23f4 bnez v0, 0x4e2414             |                 goto label_14;
                                             |             }
    0x004e23f8 nop                           |             
                                             |         }
                                             | label_20:
    0x004e23fc addiu v1, v1, 2               |         v1 += 2;
    0x004e2400 b 0x4e2250                    |         goto label_3;
                                             | label_19:
    0x004e2404 andi v0, v0, 0xff             |         v0 &= 0xff;
    0x004e2408 beq a1, a3, 0x4e23e4          |         
                                             |     } while (a1 == a3);
    0x004e240c addiu v1, v1, 1               |     v1++;
    0x004e2410 b 0x4e2250                    |     goto label_3;
                                             | label_14:
    0x004e2414 lw a2, -0x7fbc(gp)            |     a2 = *((gp - 8175));
                                             | label_15:
    0x004e2418 lw t9, -0x7ef4(gp)            |     t9 = sym.php_error_docref0;
                                             |     /* str.Multiple_or_malformed_newlines_found_in_additional_header */
    0x004e241c addiu a2, a2, -0x4e30         |     a2 += -0x4e30;
    0x004e2420 addiu a1, zero, 2             |     a1 = 2;
    0x004e2424 move a0, zero                 |     a0 = 0;
    0x004e2428 jalr t9                       |     t9 ();
    0x004e242c lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     do {
                                             | label_7:
    0x004e2430 lw a0, 0x34(sp)               |         a0 = *(var_34h);
    0x004e2434 b 0x4e2264                    |         goto label_4;
                                             | label_17:
    0x004e2438 lw a2, -0x7fd0(gp)            |         a2 = *((gp - 8180));
                                             |         if (s2 == 0) {
    0x004e243c beqz s2, 0x4e24f0             |             goto label_21;
                                             |         }
    0x004e2440 lw t9, -0x7a0c(gp)            |         t9 = sym.zend_spprintf;
    0x004e2444 sw s2, 0x10(sp)               |         *(var_10h) = s2;
    0x004e2448 move a3, s1                   |         a3 = s1;
                                             |         /* esilref: '&s &s' */
    0x004e244c addiu a2, a2, -0x4424         |         a2 += -0x4424;
    0x004e2450 move a1, zero                 |         a1 = 0;
    0x004e2454 addiu a0, sp, 0x38            |         a0 = sp + 0x38;
    0x004e2458 jalr t9                       |         t9 ();
    0x004e245c lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             | label_5:
    0x004e2460 lw t9, -0x5ee4(gp)            |         t9 = sym.imp.__errno_location;
    0x004e2464 jalr t9                       |         t9 ();
    0x004e2468 nop                           |         
    0x004e246c lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x004e2470 lw a0, 0x38(sp)               |         a0 = *(var_38h);
    0x004e2474 sw zero, (v0)                 |         *(v0) = 0;
    0x004e2478 lw a1, -0x7fc4(gp)            |         a1 = *((gp - 8177));
    0x004e247c lw t9, -0x6068(gp)            |         t9 = sym.imp.popen;
    0x004e2480 addiu a1, a1, 0x121c          |         a1 += 0x121c;
    0x004e2484 move s7, v0                   |         s7 = v0;
    0x004e2488 jalr t9                       |         t9 ();
    0x004e248c move s6, v0                   |         s6 = v0;
    0x004e2490 lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |         if (s2 != 0) {
    0x004e2494 beqz s2, 0x4e24a8             |             
    0x004e2498 lw t9, -0x7fe4(gp)            |             t9 = sym._efree;
    0x004e249c lw a0, 0x38(sp)               |             a0 = *(var_38h);
    0x004e24a0 jalr t9                       |             t9 ();
    0x004e24a4 lw gp, 0x20(sp)               |             gp = *(var_20h);
                                             |         }
    0x004e24a8 addiu v0, zero, 0xd           |         v0 = 0xd;
                                             |         if (s6 == 0) {
    0x004e24ac beqz s6, 0x4e25a4             |             goto label_22;
                                             |         }
    0x004e24b0 lw v1, (s7)                   |         v1 = *(s7);
    0x004e24b4 lw t9, -0x6254(gp)            |         t9 = sym.imp.fprintf
                                             |         if (v1 != v0) {
    0x004e24b8 bne v1, v0, 0x4e24f8          |             goto label_23;
                                             |         }
    0x004e24bc lw a2, -0x7fbc(gp)            |         a2 = *((gp - 8175));
    0x004e24c0 lw t9, -0x7ef4(gp)            |         t9 = sym.php_error_docref0;
    0x004e24c4 move a3, s1                   |         a3 = s1;
                                             |         /* str.Permission_denied:_unable_to_execute_shell_to_run_mail_delivery_binary__s */
    0x004e24c8 addiu a2, a2, -0x4df4         |         a2 += -0x4df4;
    0x004e24cc addiu a1, zero, 2             |         a1 = 2;
    0x004e24d0 move a0, zero                 |         a0 = 0;
    0x004e24d4 jalr t9                       |         t9 ();
    0x004e24d8 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x004e24dc lw t9, -0x6280(gp)            |         t9 = sym.imp.pclose;
    0x004e24e0 move a0, s6                   |         a0 = s6;
    0x004e24e4 jalr t9                       |         t9 ();
    0x004e24e8 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x004e24ec b 0x4e2430                    |         
                                             |     } while (1);
                                             | label_21:
    0x004e24f0 sw s1, 0x38(sp)               |     *(var_38h) = s1;
    0x004e24f4 b 0x4e2460                    |     goto label_5;
                                             | label_23:
    0x004e24f8 lw a1, -0x7fbc(gp)            |     a1 = *((gp - 8175));
    0x004e24fc move a2, s4                   |     a2 = s4;
                                             |     /* str.To:__s_n */
    0x004e2500 addiu a1, a1, -0x4da8         |     a1 += -0x4da8;
    0x004e2504 move a0, s6                   |     a0 = s6;
    0x004e2508 jalr t9                       |     t9 ();
    0x004e250c lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x004e2510 move a2, s3                   |     a2 = s3;
    0x004e2514 move a0, s6                   |     a0 = s6;
    0x004e2518 lw a1, -0x7fbc(gp)            |     a1 = *((gp - 8175));
    0x004e251c lw t9, -0x6254(gp)            |     t9 = sym.imp.fprintf
                                             |     /* str.Subject:__s_n */
    0x004e2520 addiu a1, a1, -0x4da0         |     a1 += -0x4da0;
    0x004e2524 jalr t9                       |     t9 ();
    0x004e2528 lw a2, 0x34(sp)               |     a2 = *(var_34h);
    0x004e252c lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (a2 != 0) {
    0x004e2530 beqz a2, 0x4e254c             |         
    0x004e2534 lw a1, -0x7fc0(gp)            |         a1 = *((gp - 8176));
    0x004e2538 lw t9, -0x6254(gp)            |         t9 = sym.imp.fprintf
                                             |         /* esilref: '&s
' */
    0x004e253c addiu a1, a1, 0x705c          |         a1 += 0x705c;
    0x004e2540 move a0, s6                   |         a0 = s6;
    0x004e2544 jalr t9                       |         t9 ();
    0x004e2548 lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |     }
    0x004e254c lw a1, -0x7fbc(gp)            |     a1 = *((gp - 8175));
    0x004e2550 lw t9, -0x6254(gp)            |     t9 = sym.imp.fprintf
    0x004e2554 move a2, s5                   |     a2 = s5;
                                             |     /* str._n_s_n */
    0x004e2558 addiu a1, a1, -0x4d90         |     a1 += -0x4d90;
    0x004e255c move a0, s6                   |     a0 = s6;
    0x004e2560 jalr t9                       |     t9 ();
    0x004e2564 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x004e2568 lw t9, -0x6280(gp)            |     t9 = sym.imp.pclose;
    0x004e256c move a0, s6                   |     a0 = s6;
    0x004e2570 jalr t9                       |     t9 ();
    0x004e2574 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x004e2578 lw a0, 0x34(sp)               |     a0 = *(var_34h);
                                             |     if (v0 == 0) {
    0x004e257c beqz v0, 0x4e258c             |         goto label_24;
                                             |     }
    0x004e2580 addiu v1, zero, 0x4b          |     v1 = 0x4b;
                                             |     if (v0 != v1) {
    0x004e2584 bne v0, v1, 0x4e2264          |         goto label_4;
                                             |     }
    0x004e2588 nop                           |     
                                             | label_24:
    0x004e258c lw t9, -0x7fe4(gp)            |     t9 = sym._efree;
                                             |     if (a0 != s0) {
    0x004e2590 beq a0, s0, 0x4e259c          |         
    0x004e2594 jalr t9                       |         t9 ();
    0x004e2598 nop                           |         
                                             |     }
    0x004e259c addiu v0, zero, 1             |     v0 = 1;
    0x004e25a0 b 0x4e2278                    |     goto label_6;
                                             | label_22:
    0x004e25a4 lw a2, -0x7fbc(gp)            |     a2 = *((gp - 8175));
    0x004e25a8 lw t9, -0x7ef4(gp)            |     t9 = sym.php_error_docref0;
    0x004e25ac move a3, s1                   |     a3 = s1;
                                             |     /* str.Could_not_execute_mail_delivery_program__s */
    0x004e25b0 addiu a2, a2, -0x4d88         |     a2 += -0x4d88;
    0x004e25b4 addiu a1, zero, 2             |     a1 = 2;
    0x004e25b8 move a0, zero                 |     a0 = 0;
    0x004e25bc jalr t9                       |     t9 ();
    0x004e25c0 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x004e25c4 b 0x4e2430                    |     goto label_7;
                                             | }
    ; assembly                                       | /* r2dec pseudo code output */
                                                     | /* /logs/firmware/unblob_extracted/firmware_extract/1568982-13971496.squashfs_v4_le_extract/usr/bin/php-cli @ 0x5a1e34 */
                                                     | #include <stdint.h>
                                                     |  
    ; (fcn) sym.zend_load_extension_handle ()        | void zend_load_extension_handle () {
    0x005a1e34 lui gp, 0x17                          |     
    0x005a1e38 addiu gp, gp, -0x3c34                 |     
    0x005a1e3c addu gp, gp, t9                       |     gp += t9;
    0x005a1e40 addiu sp, sp, -0x40                   |     
    0x005a1e44 lw t9, -0x6100(gp)                    |     t9 = sym.imp.dlsym;
    0x005a1e48 sw s3, 0x38(sp)                       |     *(var_38h) = s3;
    0x005a1e4c move s3, a1                           |     s3 = a1;
    0x005a1e50 lw a1, -0x7fc0(gp)                    |     a1 = *((gp - 8176));
    0x005a1e54 sw gp, 0x20(sp)                       |     *(var_20h) = gp;
    0x005a1e58 sw s1, 0x30(sp)                       |     *(var_30h) = s1;
    0x005a1e5c sw ra, 0x3c(sp)                       |     *(var_3ch) = ra;
    0x005a1e60 sw s2, 0x34(sp)                       |     *(var_34h) = s2;
    0x005a1e64 sw s0, 0x2c(sp)                       |     *(var_2ch) = s0;
                                                     |     /* str.extension_version_info */
    0x005a1e68 addiu a1, a1, 0x6e40                  |     a1 += 0x6e40;
    0x005a1e6c move s1, a0                           |     s1 = a0;
    0x005a1e70 jalr t9                               |     t9 ();
    0x005a1e74 lw gp, 0x20(sp)                       |     gp = *(var_20h);
                                                     |     if (v0 == 0) {
    0x005a1e78 bnez v0, 0x5a1e94                     |         
    0x005a1e7c lw a1, -0x7fc0(gp)                    |         a1 = *((gp - 8176));
    0x005a1e80 lw t9, -0x6100(gp)                    |         t9 = sym.imp.dlsym;
                                                     |         /* str._extension_version_info */
    0x005a1e84 addiu a1, a1, 0x6e58                  |         a1 += 0x6e58;
    0x005a1e88 move a0, s1                           |         a0 = s1;
    0x005a1e8c jalr t9                               |         t9 ();
    0x005a1e90 lw gp, 0x20(sp)                       |         gp = *(var_20h);
                                                     |     }
    0x005a1e94 lw a1, -0x7fb8(gp)                    |     a1 = *((gp - 8174));
    0x005a1e98 lw t9, -0x6100(gp)                    |     t9 = sym.imp.dlsym;
                                                     |     /* str.zend_extension_entry */
    0x005a1e9c addiu a1, a1, -0x303c                 |     a1 += -0x303c;
    0x005a1ea0 move a0, s1                           |     a0 = s1;
    0x005a1ea4 move s2, v0                           |     s2 = v0;
    0x005a1ea8 jalr t9                               |     t9 ();
    0x005a1eac move s0, v0                           |     s0 = v0;
    0x005a1eb0 lw gp, 0x20(sp)                       |     gp = *(var_20h);
                                                     |     if (v0 != 0) {
    0x005a1eb4 bnez v0, 0x5a20b4                     |         goto label_4;
                                                     |     }
    0x005a1eb8 lw a1, -0x7fb8(gp)                    |     a1 = *((gp - 8174));
    0x005a1ebc lw t9, -0x6100(gp)                    |     t9 = sym.imp.dlsym;
                                                     |     /* str._zend_extension_entry */
    0x005a1ec0 addiu a1, a1, -0x2fc0                 |     a1 += -0x2fc0;
    0x005a1ec4 move a0, s1                           |     a0 = s1;
    0x005a1ec8 jalr t9                               |     t9 ();
    0x005a1ecc move s0, v0                           |     s0 = v0;
    0x005a1ed0 lw gp, 0x20(sp)                       |     gp = *(var_20h);
                                                     |     if (s2 != 0) {
    0x005a1ed4 bnez s2, 0x5a1efc                     |         goto label_5;
                                                     |     }
    0x005a1ed8 lw a1, -0x7fc0(gp)                    |     a1 = *((gp - 8176));
                                                     |     do {
                                                     | label_3:
    0x005a1edc move a2, s3                           |         a2 = s3;
                                                     |         /* str._s_doesnt_appear_to_be_a_valid_Zend_extension_n */
    0x005a1ee0 addiu a1, a1, 0x6e70                  |         a1 += 0x6e70;
                                                     | label_1:
    0x005a1ee4 lw v0, -0x617c(gp)                    |         v0 = *((gp - 6239));
    0x005a1ee8 lw t9, -0x6254(gp)                    |         t9 = sym.imp.fprintf
    0x005a1eec lw a0, (v0)                           |         a0 = *(v0);
    0x005a1ef0 jalr t9                               |         t9 ();
    0x005a1ef4 lw gp, 0x20(sp)                       |         gp = *(var_20h);
    0x005a1ef8 b 0x5a2004                            |         goto label_6;
                                                     | label_5:
    0x005a1efc lw a1, -0x7fc0(gp)                    |         a1 = *((gp - 8176));
    0x005a1f00 beqz v0, 0x5a1edc                     |         
                                                     |     } while (v0 == 0);
    0x005a1f04 lui a0, 0x1315                        |     a0 = 0x13150000;
                                                     | label_2:
    0x005a1f08 lw v0, (s2)                           |     v0 = *(s2);
    0x005a1f0c addiu a0, a0, 0x6ade                  |     a0 += 0x6ade;
                                                     |     if (v0 == a0) {
    0x005a1f10 beq v0, a0, 0x5a1f78                  |         goto label_7;
                                                     |     }
    0x005a1f14 nop                                   |     
    0x005a1f18 lw t9, 0x40(s0)                       |     t9 = *((s0 + 16));
                                                     |     if (t9 != 0) {
    0x005a1f1c bnez t9, 0x5a1f68                     |         goto label_8;
                                                     |     }
    0x005a1f20 nop                                   |     
                                                     |     do {
    0x005a1f24 lui v0, 0x1315                        |         v0 = 0x13150000;
    0x005a1f28 lw a3, (s2)                           |         a3 = *(s2);
    0x005a1f2c addiu v1, v0, 0x6adf                  |         v1 = v0 + 0x6adf;
    0x005a1f30 slt v1, a3, v1                        |         v1 = (a3 < v1) ? 1 : 0;
    0x005a1f34 addiu v0, v0, 0x6ade                  |         v0 += 0x6ade;
                                                     |         if (v1 != 0) {
    0x005a1f38 bnez v1, 0x5a1fc4                     |             goto label_9;
                                                     |         }
    0x005a1f3c lw v1, -0x617c(gp)                    |         v1 = *((gp - 6239));
    0x005a1f40 lw a1, -0x7fc0(gp)                    |         a1 = *((gp - 8176));
    0x005a1f44 lw a2, (s0)                           |         a2 = *(s0);
    0x005a1f48 lw a0, (v1)                           |         a0 = *(v1);
                                                     |         /* str._s_requires_Zend_Engine_API_version__d._nThe_Zend_Engine_API_version__d_which_is_installed__is_outdated._n_n */
    0x005a1f4c addiu a1, a1, 0x6ea0                  |         a1 += 0x6ea0;
    0x005a1f50 sw v0, 0x10(sp)                       |         *(var_60h) = v0;
                                                     | label_0:
    0x005a1f54 lw t9, -0x6254(gp)                    |         t9 = sym.imp.fprintf
    0x005a1f58 jalr t9                               |         t9 ();
    0x005a1f5c nop                                   |         
    0x005a1f60 lw gp, 0x20(sp)                       |         gp = *(var_20h);
    0x005a1f64 b 0x5a2004                            |         goto label_6;
                                                     | label_8:
    0x005a1f68 jalr t9                               |         t9 ();
    0x005a1f6c nop                                   |         
    0x005a1f70 lw gp, 0x20(sp)                       |         gp = *(var_20h);
    0x005a1f74 bnez v0, 0x5a1f24                     |         
                                                     |     } while (v0 != 0);
                                                     | label_7:
    0x005a1f78 lw s3, -0x7fbc(gp)                    |     s3 = *((gp - 8175));
    0x005a1f7c lw t9, -0x63c0(gp)                    |     t9 = sym.imp.strcmp;
    0x005a1f80 lw a1, 4(s2)                          |     a1 = *((s2 + 1));
                                                     |     /* str.API320170718_NTS */
    0x005a1f84 addiu a0, s3, -0x70d8                 |     a0 = s3 + -0x70d8;
    0x005a1f88 jalr t9                               |     t9 ();
    0x005a1f8c lw gp, 0x20(sp)                       |     gp = *(var_20h);
                                                     |     if (v0 == 0) {
    0x005a1f90 beqz v0, 0x5a2040                     |         goto label_10;
                                                     |     }
    0x005a1f94 lw t9, 0x44(s0)                       |     t9 = *((s0 + 17));
                                                     |     if (t9 != 0) {
    0x005a1f98 bnez t9, 0x5a2030                     |         goto label_11;
                                                     |     }
    0x005a1f9c nop                                   |     
                                                     |     do {
    0x005a1fa0 lw v0, -0x617c(gp)                    |         v0 = *((gp - 6239));
    0x005a1fa4 lw a1, -0x7fc0(gp)                    |         a1 = *((gp - 8176));
                                                     |         /* str.API320170718_NTS */
    0x005a1fa8 addiu s3, s3, -0x70d8                 |         s3 += -0x70d8;
    0x005a1fac lw a3, 4(s2)                          |         a3 = *((s2 + 1));
    0x005a1fb0 lw a2, (s0)                           |         a2 = *(s0);
    0x005a1fb4 lw a0, (v0)                           |         a0 = *(v0);
                                                     |         /* str.Cannot_load__s___it_was_built_with_configuration__s__whereas_running_engine_is__s_n */
    0x005a1fb8 addiu a1, a1, 0x6fa0                  |         a1 += 0x6fa0;
    0x005a1fbc sw s3, 0x10(sp)                       |         *(var_60h) = s3;
    0x005a1fc0 b 0x5a1f54                            |         goto label_0;
                                                     | label_9:
    0x005a1fc4 lw ra, 0x3c(sp)                       |         ra = *(var_3ch);
                                                     |         if (a3 == v0) {
    0x005a1fc8 beq a3, v0, 0x5a2090                  |             goto label_12;
                                                     |         }
    0x005a1fcc lw v1, -0x617c(gp)                    |         v1 = *((gp - 6239));
    0x005a1fd0 lw a2, (s0)                           |         a2 = *(s0);
    0x005a1fd4 lw a1, -0x7fc0(gp)                    |         a1 = *((gp - 8176));
    0x005a1fd8 lw a0, (v1)                           |         a0 = *(v1);
    0x005a1fdc sw a2, 0x1c(sp)                       |         *(var_1ch) = a2;
    0x005a1fe0 lw v1, 0xc(s0)                        |         v1 = *((s0 + 3));
    0x005a1fe4 lw t9, -0x6254(gp)                    |         t9 = sym.imp.fprintf
    0x005a1fe8 sw v1, 0x18(sp)                       |         *(var_18h_2) = v1;
    0x005a1fec lw v1, 8(s0)                          |         v1 = *((s0 + 2));
                                                     |         /* str._s_requires_Zend_Engine_API_version__d._nThe_Zend_Engine_API_version__d_which_is_installed__is_newer._nContact__s_at__s_for_a_later_version_of__s._n_n */
    0x005a1ff0 addiu a1, a1, 0x6f0c                  |         a1 += 0x6f0c;
    0x005a1ff4 sw v1, 0x14(sp)                       |         *(var_64h) = v1;
    0x005a1ff8 sw v0, 0x10(sp)                       |         *(var_60h) = v0;
    0x005a1ffc jalr t9                               |         t9 ();
    0x005a2000 lw gp, 0x20(sp)                       |         gp = *(var_20h);
                                                     | label_6:
    0x005a2004 lw t9, -0x6018(gp)                    |         t9 = sym.imp.dlclose;
    0x005a2008 move a0, s1                           |         a0 = s1;
    0x005a200c jalr t9                               |         t9 ();
    0x005a2010 lw ra, 0x3c(sp)                       |         ra = *(var_3ch);
    0x005a2014 lw s3, 0x38(sp)                       |         s3 = *(var_38h);
    0x005a2018 lw s2, 0x34(sp)                       |         s2 = *(var_34h);
    0x005a201c lw s1, 0x30(sp)                       |         s1 = *(var_30h);
    0x005a2020 lw s0, 0x2c(sp)                       |         s0 = *(var_2ch);
    0x005a2024 addiu v0, zero, -1                    |         v0 = -1;
    0x005a2028 addiu sp, sp, 0x40                    |         
    0x005a202c jr ra                                 |         return v0;
                                                     |         /* str.API320170718_NTS */
                                                     | label_11:
    0x005a2030 addiu a0, s3, -0x70d8                 |         a0 = s3 + -0x70d8;
    0x005a2034 jalr t9                               |         t9 ();
    0x005a2038 lw gp, 0x20(sp)                       |         gp = *(var_20h);
    0x005a203c bnez v0, 0x5a1fa0                     |         
                                                     |     } while (v0 != 0);
                                                     | label_10:
    0x005a2040 lw t9, -0x7c1c(gp)                    |     t9 = sym.zend_get_extension;
    0x005a2044 lw a0, (s0)                           |     a0 = *(s0);
    0x005a2048 bal 0x5a1dc4                          |     sym_zend_get_extension ();
    0x005a204c lw gp, 0x20(sp)                       |     gp = *(var_20h);
    0x005a2050 lw a0, (s0)                           |     a0 = *(s0);
                                                     |     if (v0 != 0) {
    0x005a2054 beqz v0, 0x5a2068                     |         
    0x005a2058 lw a1, -0x7fc0(gp)                    |         a1 = *((gp - 8176));
    0x005a205c move a2, a0                           |         a2 = a0;
                                                     |         /* str.Cannot_load__s___it_was_already_loaded_n */
    0x005a2060 addiu a1, a1, 0x6ff4                  |         a1 += 0x6ff4;
    0x005a2064 b 0x5a1ee4                            |         goto label_1;
                                                     |     }
    0x005a2068 lw t9, -0x7c1c(gp)                    |     t9 = sym.zend_get_extension;
    0x005a206c bal 0x5a1dc4                          |     sym_zend_get_extension ();
    0x005a2070 nop                                   |     
    0x005a2074 lw gp, 0x20(sp)                       |     gp = *(var_20h);
                                                     |     if (v0 != 0) {
    0x005a2078 beqz v0, 0x5a208c                     |         
    0x005a207c lw a1, -0x7fc0(gp)                    |         a1 = *((gp - 8176));
    0x005a2080 lw a2, (s0)                           |         a2 = *(s0);
                                                     |         /* str.Cannot_load__s___extension_already_loaded_n */
    0x005a2084 addiu a1, a1, 0x701c                  |         a1 += 0x701c;
    0x005a2088 b 0x5a1ee4                            |         goto label_1;
                                                     |     }
    0x005a208c lw ra, 0x3c(sp)                       |     ra = *(var_3ch);
                                                     | label_12:
    0x005a2090 lw s3, 0x38(sp)                       |     s3 = *(var_38h);
    0x005a2094 lw s2, 0x34(sp)                       |     s2 = *(var_34h);
    0x005a2098 move a1, s1                           |     a1 = s1;
    0x005a209c move a0, s0                           |     a0 = s0;
    0x005a20a0 lw s1, 0x30(sp)                       |     s1 = *(var_30h);
    0x005a20a4 lw s0, 0x2c(sp)                       |     s0 = *(var_2ch);
    0x005a20a8 lw t9, -0x6510(gp)                    |     t9 = sym.zend_register_extension;
    0x005a20ac addiu sp, sp, 0x40                    |     
    0x005a20b0 b 0x5a1c8c                            |     void (*0x5a1c8c)() ();
                                                     | label_4:
    0x005a20b4 lui a0, 0x1315                        |     a0 = 0x13150000;
                                                     |     if (s2 != 0) {
    0x005a20b8 bnez s2, 0x5a1f08                     |         goto label_2;
                                                     |     }
    0x005a20bc lw a1, -0x7fc0(gp)                    |     a1 = *((gp - 8176));
    0x005a20c0 b 0x5a1edc                            |     goto label_3;
                                                     | }
    ; assembly                                   | /* r2dec pseudo code output */
                                                 | /* /logs/firmware/unblob_extracted/firmware_extract/1568982-13971496.squashfs_v4_le_extract/usr/bin/php-cli @ 0x5a20c4 */
                                                 | #include <stdint.h>
                                                 |  
    ; (fcn) sym.zend_load_extension ()           | void zend_load_extension () {
    0x005a20c4 lui gp, 0x17                      |     
    0x005a20c8 addiu gp, gp, -0x3ec4             |     
    0x005a20cc addu gp, gp, t9                   |     gp += t9;
    0x005a20d0 addiu sp, sp, -0x28               |     
    0x005a20d4 lw t9, -0x6208(gp)                |     t9 = sym.imp.dlopen;
    0x005a20d8 addiu a1, zero, 0x15              |     a1 = 0x15;
    0x005a20dc sw gp, 0x10(sp)                   |     *(var_10h) = gp;
    0x005a20e0 sw s0, 0x1c(sp)                   |     *(var_1ch) = s0;
    0x005a20e4 sw ra, 0x24(sp)                   |     *(var_24h) = ra;
    0x005a20e8 sw s1, 0x20(sp)                   |     *(var_20h) = s1;
    0x005a20ec move s0, a0                       |     s0 = a0;
    0x005a20f0 jalr t9                           |     t9 ();
    0x005a20f4 lw gp, 0x10(sp)                   |     gp = *(var_10h);
                                                 |     if (v0 != 0) {
    0x005a20f8 beqz v0, 0x5a211c                 |         
    0x005a20fc lw ra, 0x24(sp)                   |         ra = *(var_24h);
    0x005a2100 lw s1, 0x20(sp)                   |         s1 = *(var_20h);
    0x005a2104 move a1, s0                       |         a1 = s0;
    0x005a2108 lw t9, -0x69a0(gp)                |         t9 = sym.zend_load_extension_handle;
    0x005a210c lw s0, 0x1c(sp)                   |         s0 = *(var_1ch);
    0x005a2110 move a0, v0                       |         a0 = v0;
    0x005a2114 addiu sp, sp, 0x28                |         
    0x005a2118 b 0x5a1e34                        |         void (*0x5a1e34)() ();
                                                 |     }
    0x005a211c lw v0, -0x617c(gp)                |     v0 = *((gp - 6239));
    0x005a2120 lw t9, -0x62a0(gp)                |     t9 = sym.imp.dlerror;
    0x005a2124 lw s1, (v0)                       |     s1 = *(v0);
    0x005a2128 jalr t9                           |     t9 ();
    0x005a212c lw gp, 0x10(sp)                   |     gp = *(var_10h);
    0x005a2130 move a2, s0                       |     a2 = s0;
    0x005a2134 move a0, s1                       |     a0 = s1;
    0x005a2138 lw a1, -0x7fc0(gp)                |     a1 = *((gp - 8176));
    0x005a213c lw t9, -0x6254(gp)                |     t9 = sym.imp.fprintf
    0x005a2140 move a3, v0                       |     a3 = v0;
                                                 |     /* str.Failed_loading__s:___s_n */
    0x005a2144 addiu a1, a1, 0x7048              |     a1 += 0x7048;
    0x005a2148 jalr t9                           |     t9 ();
    0x005a214c lw ra, 0x24(sp)                   |     ra = *(var_24h);
    0x005a2150 lw s1, 0x20(sp)                   |     s1 = *(var_20h);
    0x005a2154 lw s0, 0x1c(sp)                   |     s0 = *(var_1ch);
    0x005a2158 addiu v0, zero, -1                |     v0 = -1;
    0x005a215c addiu sp, sp, 0x28                |     
    0x005a2160 jr ra                             |     return v0;
                                                 | }
    ; assembly                                       | /* r2dec pseudo code output */
                                                     | /* /logs/firmware/unblob_extracted/firmware_extract/1568982-13971496.squashfs_v4_le_extract/usr/bin/php-cli @ 0x5a1e34 */
                                                     | #include <stdint.h>
                                                     |  
    ; (fcn) sym.zend_load_extension_handle ()        | void zend_load_extension_handle () {
    0x005a1e34 lui gp, 0x17                          |     
    0x005a1e38 addiu gp, gp, -0x3c34                 |     
    0x005a1e3c addu gp, gp, t9                       |     gp += t9;
    0x005a1e40 addiu sp, sp, -0x40                   |     
    0x005a1e44 lw t9, -0x6100(gp)                    |     t9 = sym.imp.dlsym;
    0x005a1e48 sw s3, 0x38(sp)                       |     *(var_38h) = s3;
    0x005a1e4c move s3, a1                           |     s3 = a1;
    0x005a1e50 lw a1, -0x7fc0(gp)                    |     a1 = *((gp - 8176));
    0x005a1e54 sw gp, 0x20(sp)                       |     *(var_20h) = gp;
    0x005a1e58 sw s1, 0x30(sp)                       |     *(var_30h) = s1;
    0x005a1e5c sw ra, 0x3c(sp)                       |     *(var_3ch) = ra;
    0x005a1e60 sw s2, 0x34(sp)                       |     *(var_34h) = s2;
    0x005a1e64 sw s0, 0x2c(sp)                       |     *(var_2ch) = s0;
                                                     |     /* str.extension_version_info */
    0x005a1e68 addiu a1, a1, 0x6e40                  |     a1 += 0x6e40;
    0x005a1e6c move s1, a0                           |     s1 = a0;
    0x005a1e70 jalr t9                               |     t9 ();
    0x005a1e74 lw gp, 0x20(sp)                       |     gp = *(var_20h);
                                                     |     if (v0 == 0) {
    0x005a1e78 bnez v0, 0x5a1e94                     |         
    0x005a1e7c lw a1, -0x7fc0(gp)                    |         a1 = *((gp - 8176));
    0x005a1e80 lw t9, -0x6100(gp)                    |         t9 = sym.imp.dlsym;
                                                     |         /* str._extension_version_info */
    0x005a1e84 addiu a1, a1, 0x6e58                  |         a1 += 0x6e58;
    0x005a1e88 move a0, s1                           |         a0 = s1;
    0x005a1e8c jalr t9                               |         t9 ();
    0x005a1e90 lw gp, 0x20(sp)                       |         gp = *(var_20h);
                                                     |     }
    0x005a1e94 lw a1, -0x7fb8(gp)                    |     a1 = *((gp - 8174));
    0x005a1e98 lw t9, -0x6100(gp)                    |     t9 = sym.imp.dlsym;
                                                     |     /* str.zend_extension_entry */
    0x005a1e9c addiu a1, a1, -0x303c                 |     a1 += -0x303c;
    0x005a1ea0 move a0, s1                           |     a0 = s1;
    0x005a1ea4 move s2, v0                           |     s2 = v0;
    0x005a1ea8 jalr t9                               |     t9 ();
    0x005a1eac move s0, v0                           |     s0 = v0;
    0x005a1eb0 lw gp, 0x20(sp)                       |     gp = *(var_20h);
                                                     |     if (v0 != 0) {
    0x005a1eb4 bnez v0, 0x5a20b4                     |         goto label_4;
                                                     |     }
    0x005a1eb8 lw a1, -0x7fb8(gp)                    |     a1 = *((gp - 8174));
    0x005a1ebc lw t9, -0x6100(gp)                    |     t9 = sym.imp.dlsym;
                                                     |     /* str._zend_extension_entry */
    0x005a1ec0 addiu a1, a1, -0x2fc0                 |     a1 += -0x2fc0;
    0x005a1ec4 move a0, s1                           |     a0 = s1;
    0x005a1ec8 jalr t9                               |     t9 ();
    0x005a1ecc move s0, v0                           |     s0 = v0;
    0x005a1ed0 lw gp, 0x20(sp)                       |     gp = *(var_20h);
                                                     |     if (s2 != 0) {
    0x005a1ed4 bnez s2, 0x5a1efc                     |         goto label_5;
                                                     |     }
    0x005a1ed8 lw a1, -0x7fc0(gp)                    |     a1 = *((gp - 8176));
                                                     |     do {
                                                     | label_3:
    0x005a1edc move a2, s3                           |         a2 = s3;
                                                     |         /* str._s_doesnt_appear_to_be_a_valid_Zend_extension_n */
    0x005a1ee0 addiu a1, a1, 0x6e70                  |         a1 += 0x6e70;
                                                     | label_1:
    0x005a1ee4 lw v0, -0x617c(gp)                    |         v0 = *((gp - 6239));
    0x005a1ee8 lw t9, -0x6254(gp)                    |         t9 = sym.imp.fprintf
    0x005a1eec lw a0, (v0)                           |         a0 = *(v0);
    0x005a1ef0 jalr t9                               |         t9 ();
    0x005a1ef4 lw gp, 0x20(sp)                       |         gp = *(var_20h);
    0x005a1ef8 b 0x5a2004                            |         goto label_6;
                                                     | label_5:
    0x005a1efc lw a1, -0x7fc0(gp)                    |         a1 = *((gp - 8176));
    0x005a1f00 beqz v0, 0x5a1edc                     |         
                                                     |     } while (v0 == 0);
    0x005a1f04 lui a0, 0x1315                        |     a0 = 0x13150000;
                                                     | label_2:
    0x005a1f08 lw v0, (s2)                           |     v0 = *(s2);
    0x005a1f0c addiu a0, a0, 0x6ade                  |     a0 += 0x6ade;
                                                     |     if (v0 == a0) {
    0x005a1f10 beq v0, a0, 0x5a1f78                  |         goto label_7;
                                                     |     }
    0x005a1f14 nop                                   |     
    0x005a1f18 lw t9, 0x40(s0)                       |     t9 = *((s0 + 16));
                                                     |     if (t9 != 0) {
    0x005a1f1c bnez t9, 0x5a1f68                     |         goto label_8;
                                                     |     }
    0x005a1f20 nop                                   |     
                                                     |     do {
    0x005a1f24 lui v0, 0x1315                        |         v0 = 0x13150000;
    0x005a1f28 lw a3, (s2)                           |         a3 = *(s2);
    0x005a1f2c addiu v1, v0, 0x6adf                  |         v1 = v0 + 0x6adf;
    0x005a1f30 slt v1, a3, v1                        |         v1 = (a3 < v1) ? 1 : 0;
    0x005a1f34 addiu v0, v0, 0x6ade                  |         v0 += 0x6ade;
                                                     |         if (v1 != 0) {
    0x005a1f38 bnez v1, 0x5a1fc4                     |             goto label_9;
                                                     |         }
    0x005a1f3c lw v1, -0x617c(gp)                    |         v1 = *((gp - 6239));
    0x005a1f40 lw a1, -0x7fc0(gp)                    |         a1 = *((gp - 8176));
    0x005a1f44 lw a2, (s0)                           |         a2 = *(s0);
    0x005a1f48 lw a0, (v1)                           |         a0 = *(v1);
                                                     |         /* str._s_requires_Zend_Engine_API_version__d._nThe_Zend_Engine_API_version__d_which_is_installed__is_outdated._n_n */
    0x005a1f4c addiu a1, a1, 0x6ea0                  |         a1 += 0x6ea0;
    0x005a1f50 sw v0, 0x10(sp)                       |         *(var_60h) = v0;
                                                     | label_0:
    0x005a1f54 lw t9, -0x6254(gp)                    |         t9 = sym.imp.fprintf
    0x005a1f58 jalr t9                               |         t9 ();
    0x005a1f5c nop                                   |         
    0x005a1f60 lw gp, 0x20(sp)                       |         gp = *(var_20h);
    0x005a1f64 b 0x5a2004                            |         goto label_6;
                                                     | label_8:
    0x005a1f68 jalr t9                               |         t9 ();
    0x005a1f6c nop                                   |         
    0x005a1f70 lw gp, 0x20(sp)                       |         gp = *(var_20h);
    0x005a1f74 bnez v0, 0x5a1f24                     |         
                                                     |     } while (v0 != 0);
                                                     | label_7:
    0x005a1f78 lw s3, -0x7fbc(gp)                    |     s3 = *((gp - 8175));
    0x005a1f7c lw t9, -0x63c0(gp)                    |     t9 = sym.imp.strcmp;
    0x005a1f80 lw a1, 4(s2)                          |     a1 = *((s2 + 1));
                                                     |     /* str.API320170718_NTS */
    0x005a1f84 addiu a0, s3, -0x70d8                 |     a0 = s3 + -0x70d8;
    0x005a1f88 jalr t9                               |     t9 ();
    0x005a1f8c lw gp, 0x20(sp)                       |     gp = *(var_20h);
                                                     |     if (v0 == 0) {
    0x005a1f90 beqz v0, 0x5a2040                     |         goto label_10;
                                                     |     }
    0x005a1f94 lw t9, 0x44(s0)                       |     t9 = *((s0 + 17));
                                                     |     if (t9 != 0) {
    0x005a1f98 bnez t9, 0x5a2030                     |         goto label_11;
                                                     |     }
    0x005a1f9c nop                                   |     
                                                     |     do {
    0x005a1fa0 lw v0, -0x617c(gp)                    |         v0 = *((gp - 6239));
    0x005a1fa4 lw a1, -0x7fc0(gp)                    |         a1 = *((gp - 8176));
                                                     |         /* str.API320170718_NTS */
    0x005a1fa8 addiu s3, s3, -0x70d8                 |         s3 += -0x70d8;
    0x005a1fac lw a3, 4(s2)                          |         a3 = *((s2 + 1));
    0x005a1fb0 lw a2, (s0)                           |         a2 = *(s0);
    0x005a1fb4 lw a0, (v0)                           |         a0 = *(v0);
                                                     |         /* str.Cannot_load__s___it_was_built_with_configuration__s__whereas_running_engine_is__s_n */
    0x005a1fb8 addiu a1, a1, 0x6fa0                  |         a1 += 0x6fa0;
    0x005a1fbc sw s3, 0x10(sp)                       |         *(var_60h) = s3;
    0x005a1fc0 b 0x5a1f54                            |         goto label_0;
                                                     | label_9:
    0x005a1fc4 lw ra, 0x3c(sp)                       |         ra = *(var_3ch);
                                                     |         if (a3 == v0) {
    0x005a1fc8 beq a3, v0, 0x5a2090                  |             goto label_12;
                                                     |         }
    0x005a1fcc lw v1, -0x617c(gp)                    |         v1 = *((gp - 6239));
    0x005a1fd0 lw a2, (s0)                           |         a2 = *(s0);
    0x005a1fd4 lw a1, -0x7fc0(gp)                    |         a1 = *((gp - 8176));
    0x005a1fd8 lw a0, (v1)                           |         a0 = *(v1);
    0x005a1fdc sw a2, 0x1c(sp)                       |         *(var_1ch) = a2;
    0x005a1fe0 lw v1, 0xc(s0)                        |         v1 = *((s0 + 3));
    0x005a1fe4 lw t9, -0x6254(gp)                    |         t9 = sym.imp.fprintf
    0x005a1fe8 sw v1, 0x18(sp)                       |         *(var_18h_2) = v1;
    0x005a1fec lw v1, 8(s0)                          |         v1 = *((s0 + 2));
                                                     |         /* str._s_requires_Zend_Engine_API_version__d._nThe_Zend_Engine_API_version__d_which_is_installed__is_newer._nContact__s_at__s_for_a_later_version_of__s._n_n */
    0x005a1ff0 addiu a1, a1, 0x6f0c                  |         a1 += 0x6f0c;
    0x005a1ff4 sw v1, 0x14(sp)                       |         *(var_64h) = v1;
    0x005a1ff8 sw v0, 0x10(sp)                       |         *(var_60h) = v0;
    0x005a1ffc jalr t9                               |         t9 ();
    0x005a2000 lw gp, 0x20(sp)                       |         gp = *(var_20h);
                                                     | label_6:
    0x005a2004 lw t9, -0x6018(gp)                    |         t9 = sym.imp.dlclose;
    0x005a2008 move a0, s1                           |         a0 = s1;
    0x005a200c jalr t9                               |         t9 ();
    0x005a2010 lw ra, 0x3c(sp)                       |         ra = *(var_3ch);
    0x005a2014 lw s3, 0x38(sp)                       |         s3 = *(var_38h);
    0x005a2018 lw s2, 0x34(sp)                       |         s2 = *(var_34h);
    0x005a201c lw s1, 0x30(sp)                       |         s1 = *(var_30h);
    0x005a2020 lw s0, 0x2c(sp)                       |         s0 = *(var_2ch);
    0x005a2024 addiu v0, zero, -1                    |         v0 = -1;
    0x005a2028 addiu sp, sp, 0x40                    |         
    0x005a202c jr ra                                 |         return v0;
                                                     |         /* str.API320170718_NTS */
                                                     | label_11:
    0x005a2030 addiu a0, s3, -0x70d8                 |         a0 = s3 + -0x70d8;
    0x005a2034 jalr t9                               |         t9 ();
    0x005a2038 lw gp, 0x20(sp)                       |         gp = *(var_20h);
    0x005a203c bnez v0, 0x5a1fa0                     |         
                                                     |     } while (v0 != 0);
                                                     | label_10:
    0x005a2040 lw t9, -0x7c1c(gp)                    |     t9 = sym.zend_get_extension;
    0x005a2044 lw a0, (s0)                           |     a0 = *(s0);
    0x005a2048 bal 0x5a1dc4                          |     sym_zend_get_extension ();
    0x005a204c lw gp, 0x20(sp)                       |     gp = *(var_20h);
    0x005a2050 lw a0, (s0)                           |     a0 = *(s0);
                                                     |     if (v0 != 0) {
    0x005a2054 beqz v0, 0x5a2068                     |         
    0x005a2058 lw a1, -0x7fc0(gp)                    |         a1 = *((gp - 8176));
    0x005a205c move a2, a0                           |         a2 = a0;
                                                     |         /* str.Cannot_load__s___it_was_already_loaded_n */
    0x005a2060 addiu a1, a1, 0x6ff4                  |         a1 += 0x6ff4;
    0x005a2064 b 0x5a1ee4                            |         goto label_1;
                                                     |     }
    0x005a2068 lw t9, -0x7c1c(gp)                    |     t9 = sym.zend_get_extension;
    0x005a206c bal 0x5a1dc4                          |     sym_zend_get_extension ();
    0x005a2070 nop                                   |     
    0x005a2074 lw gp, 0x20(sp)                       |     gp = *(var_20h);
                                                     |     if (v0 != 0) {
    0x005a2078 beqz v0, 0x5a208c                     |         
    0x005a207c lw a1, -0x7fc0(gp)                    |         a1 = *((gp - 8176));
    0x005a2080 lw a2, (s0)                           |         a2 = *(s0);
                                                     |         /* str.Cannot_load__s___extension_already_loaded_n */
    0x005a2084 addiu a1, a1, 0x701c                  |         a1 += 0x701c;
    0x005a2088 b 0x5a1ee4                            |         goto label_1;
                                                     |     }
    0x005a208c lw ra, 0x3c(sp)                       |     ra = *(var_3ch);
                                                     | label_12:
    0x005a2090 lw s3, 0x38(sp)                       |     s3 = *(var_38h);
    0x005a2094 lw s2, 0x34(sp)                       |     s2 = *(var_34h);
    0x005a2098 move a1, s1                           |     a1 = s1;
    0x005a209c move a0, s0                           |     a0 = s0;
    0x005a20a0 lw s1, 0x30(sp)                       |     s1 = *(var_30h);
    0x005a20a4 lw s0, 0x2c(sp)                       |     s0 = *(var_2ch);
    0x005a20a8 lw t9, -0x6510(gp)                    |     t9 = sym.zend_register_extension;
    0x005a20ac addiu sp, sp, 0x40                    |     
    0x005a20b0 b 0x5a1c8c                            |     void (*0x5a1c8c)() ();
                                                     | label_4:
    0x005a20b4 lui a0, 0x1315                        |     a0 = 0x13150000;
                                                     |     if (s2 != 0) {
    0x005a20b8 bnez s2, 0x5a1f08                     |         goto label_2;
                                                     |     }
    0x005a20bc lw a1, -0x7fc0(gp)                    |     a1 = *((gp - 8176));
    0x005a20c0 b 0x5a1edc                            |     goto label_3;
                                                     | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/1568982-13971496.squashfs_v4_le_extract/usr/bin/php-cli @ 0x569c94 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.zend_mm_startup_ex ()        | void zend_mm_startup_ex () {
    0x00569c94 lui gp, 0x1a                  |     
    0x00569c98 addiu gp, gp, 0x456c          |     
    0x00569c9c addu gp, gp, t9               |     gp += t9;
    0x00569ca0 addiu sp, sp, -0x50           |     
    0x00569ca4 lw t9, -0x6188(gp)            |     t9 = sym.imp.memcpy;
    0x00569ca8 sw s5, 0x44(sp)               |     *(var_44h) = s5;
    0x00569cac sw s3, 0x3c(sp)               |     *(var_3ch) = s3;
    0x00569cb0 move s5, a0                   |     s5 = a0;
    0x00569cb4 addiu s3, sp, 0x18            |     s3 = sp + 0x18;
    0x00569cb8 sw gp, 0x10(sp)               |     *(var_10h) = gp;
    0x00569cbc sw ra, 0x4c(sp)               |     *(var_4ch) = ra;
    0x00569cc0 sw s6, 0x48(sp)               |     *(var_48h) = s6;
    0x00569cc4 sw s4, 0x40(sp)               |     *(var_40h) = s4;
    0x00569cc8 sw s2, 0x38(sp)               |     *(var_38h) = s2;
    0x00569ccc move s4, a1                   |     s4 = a1;
    0x00569cd0 sw s1, 0x34(sp)               |     *(var_34h) = s1;
    0x00569cd4 move a1, a0                   |     a1 = a0;
    0x00569cd8 sw s0, 0x30(sp)               |     *(var_30h) = s0;
    0x00569cdc move a0, s3                   |     a0 = s3;
    0x00569ce0 move s6, a2                   |     s6 = a2;
    0x00569ce4 addiu a2, zero, 0x10          |     a2 = 0x10;
    0x00569ce8 jalr t9                       |     t9 ();
    0x00569cec lw t9, (s5)                   |     t9 = *(s5);
    0x00569cf0 sw s4, 0x28(sp)               |     *(var_28h) = s4;
    0x00569cf4 lui a2, 0x20                  |     a2 = 0x200000;
    0x00569cf8 lui a1, 0x20                  |     a1 = 0x200000;
    0x00569cfc move a0, s3                   |     a0 = s3;
    0x00569d00 jalr t9                       |     t9 ();
    0x00569d04 lw gp, 0x10(sp)               |     gp = *(var_10h);
    0x00569d08 bnez v0, 0x569d80             |     
                                             |     while (1) {
    0x00569d0c lw v0, -0x617c(gp)            |         v0 = *((gp - 6239));
    0x00569d10 lw t9, -0x5ee4(gp)            |         t9 = sym.imp.__errno_location;
    0x00569d14 lw s1, (v0)                   |         s1 = *(v0);
    0x00569d18 jalr t9                       |         t9 ();
    0x00569d1c lw gp, 0x10(sp)               |         gp = *(var_10h);
    0x00569d20 lw s0, (v0)                   |         s0 = *(v0);
    0x00569d24 lw t9, -0x5f38(gp)            |         t9 = sym.imp.strerror;
    0x00569d28 move a0, s0                   |         a0 = s0;
    0x00569d2c jalr t9                       |         t9 ();
    0x00569d30 lw gp, 0x10(sp)               |         gp = *(var_10h);
    0x00569d34 move a0, s1                   |         a0 = s1;
    0x00569d38 move a3, v0                   |         a3 = v0;
    0x00569d3c lw a1, -0x7fc0(gp)            |         a1 = *((gp - 8176));
    0x00569d40 lw t9, -0x6254(gp)            |         t9 = sym.imp.fprintf
    0x00569d44 move a2, s0                   |         a2 = s0;
                                             |         /* str._nCant_initialize_heap:___d___s_n */
    0x00569d48 addiu a1, a1, 0x1bb0          |         a1 += 0x1bb0;
    0x00569d4c move s1, zero                 |         s1 = 0;
    0x00569d50 jalr t9                       |         t9 ();
                                             | label_0:
    0x00569d54 lw ra, 0x4c(sp)               |         ra = *(var_4ch);
    0x00569d58 move v0, s1                   |         v0 = s1;
    0x00569d5c lw s6, 0x48(sp)               |         s6 = *(var_48h);
    0x00569d60 lw s5, 0x44(sp)               |         s5 = *(var_44h);
    0x00569d64 lw s4, 0x40(sp)               |         s4 = *(var_40h);
    0x00569d68 lw s3, 0x3c(sp)               |         s3 = *(var_3ch);
    0x00569d6c lw s2, 0x38(sp)               |         s2 = *(var_38h);
    0x00569d70 lw s1, 0x34(sp)               |         s1 = *(var_34h);
    0x00569d74 lw s0, 0x30(sp)               |         s0 = *(var_30h);
    0x00569d78 addiu sp, sp, 0x50            |         
    0x00569d7c jr ra                         |         return v0;
    0x00569d80 move s0, v0                   |         s0 = v0;
    0x00569d84 addiu s1, v0, 0x40            |         s1 = v0 + 0x40;
    0x00569d88 sw s1, (v0)                   |         *(v0) = s1;
    0x00569d8c sw v0, 4(s0)                  |         *((s0 + 1)) = v0;
    0x00569d90 sw v0, 8(s0)                  |         *((s0 + 2)) = v0;
    0x00569d94 addiu v0, zero, 0x1ff         |         v0 = 0x1ff;
    0x00569d98 sw v0, 0xc(s0)                |         *((s0 + 3)) = v0;
    0x00569d9c addiu v0, zero, 1             |         v0 = 1;
    0x00569da0 sw v0, 0x10(s0)               |         *((s0 + 4)) = v0;
    0x00569da4 sw v0, 0x110(s0)              |         *((s0 + 68)) = v0;
    0x00569da8 sw v0, 0xe4(s0)               |         *((s0 + 57)) = v0;
    0x00569dac sw v0, 0xe8(s0)               |         *((s0 + 58)) = v0;
    0x00569db0 lw v0, -0x7fd0(gp)            |         v0 = *((gp - 8180));
    0x00569db4 lui v1, 0x4000                |         v1 = 0x40000001;
    0x00569db8 addiu v1, v1, 1               |         
    0x00569dbc sw v1, 0x150(s0)              |         *((s0 + 84)) = v1;
    0x00569dc0 lw v1, -0x393c(v0)            |         v1 = *((v0 - 3663));
    0x00569dc4 lw v0, -0x3940(v0)            |         v0 = *((v0 - 3664));
    0x00569dc8 lw t9, -0x602c(gp)            |         t9 = sym.imp.memset;
    0x00569dcc sw v0, 0xf0(s0)               |         *((s0 + 60)) = v0;
    0x00569dd0 lui v0, 0x20                  |         v0 = 0x200000;
    0x00569dd4 sw v0, 0xc8(s0)               |         *((s0 + 50)) = v0;
    0x00569dd8 sw v0, 0xcc(s0)               |         *((s0 + 51)) = v0;
    0x00569ddc addiu v0, zero, -1            |         v0 = -1;
    0x00569de0 sw v1, 0xf4(s0)               |         *((s0 + 61)) = v1;
    0x00569de4 addiu a2, zero, 0x78          |         a2 = 0x78;
    0x00569de8 move a1, zero                 |         a1 = 0;
    0x00569dec addiu a0, s0, 0x50            |         a0 = s0 + 0x50;
    0x00569df0 sw zero, 0x14(s0)             |         *((s0 + 5)) = 0;
    0x00569df4 sw s0, 0xdc(s0)               |         *((s0 + 55)) = s0;
    0x00569df8 sw zero, 0xe0(s0)             |         *((s0 + 56)) = 0;
    0x00569dfc sw zero, 0xec(s0)             |         *((s0 + 59)) = 0;
    0x00569e00 sw zero, 0xf8(s0)             |         *((s0 + 62)) = 0;
    0x00569e04 sw zero, 0xfc(s0)             |         *((s0 + 63)) = 0;
    0x00569e08 sw zero, 0x48(s0)             |         *((s0 + 18)) = 0;
    0x00569e0c sw zero, 0x4c(s0)             |         *((s0 + 19)) = 0;
    0x00569e10 sw v0, 0xd0(s0)               |         *((s0 + 52)) = v0;
    0x00569e14 sw zero, 0xd4(s0)             |         *((s0 + 53)) = 0;
    0x00569e18 sw zero, 0x40(s0)             |         *((s0 + 16)) = 0;
    0x00569e1c sw s3, 0x44(s0)               |         *((s0 + 17)) = s3;
    0x00569e20 sw zero, 0xd8(s0)             |         *((s0 + 54)) = 0;
    0x00569e24 jalr t9                       |         t9 ();
    0x00569e28 lw gp, 0x10(sp)               |         gp = *(var_10h);
    0x00569e2c addiu a1, s6, 0x14            |         a1 = s6 + 0x14;
    0x00569e30 lw t9, -0x76dc(gp)            |         t9 = sym._zend_mm_alloc;
    0x00569e34 move a0, s1                   |         a0 = s1;
    0x00569e38 bal 0x56732c                  |         sym_zend_mm_alloc ();
    0x00569e3c move s2, v0                   |         s2 = v0;
    0x00569e40 lw gp, 0x10(sp)               |         gp = *(var_10h);
                                             |         if (v0 != 0) {
    0x00569e44 bnez v0, 0x569e64             |             goto label_1;
                                             |         }
    0x00569e48 lw t9, 4(s5)                  |         t9 = *((s5 + 1));
    0x00569e4c lui a2, 0x20                  |         a2 = 0x200000;
    0x00569e50 move a1, s0                   |         a1 = s0;
    0x00569e54 move a0, s3                   |         a0 = s3;
    0x00569e58 jalr t9                       |         t9 ();
    0x00569e5c lw gp, 0x10(sp)               |         gp = *(var_10h);
    0x00569e60 b 0x569d0c                    |         
                                             |     }
                                             | label_1:
    0x00569e64 lw t9, -0x6188(gp)            |     t9 = sym.imp.memcpy;
    0x00569e68 addiu a2, zero, 0x14          |     a2 = 0x14;
    0x00569e6c move a1, s3                   |     a1 = s3;
    0x00569e70 move a0, v0                   |     a0 = v0;
    0x00569e74 jalr t9                       |     t9 ();
    0x00569e78 lw gp, 0x10(sp)               |     gp = *(var_10h);
                                             |     if (s4 != 0) {
    0x00569e7c beqz s4, 0x569e98             |         
    0x00569e80 addiu a0, s2, 0x14            |         a0 = s2 + 0x14;
    0x00569e84 lw t9, -0x6188(gp)            |         t9 = sym.imp.memcpy;
    0x00569e88 sw a0, 0x10(s2)               |         *((s2 + 4)) = a0;
    0x00569e8c move a2, s6                   |         a2 = s6;
    0x00569e90 move a1, s4                   |         a1 = s4;
    0x00569e94 jalr t9                       |         t9 ();
                                             |     }
    0x00569e98 sw s2, 0x44(s0)               |     *((s0 + 17)) = s2;
    0x00569e9c b 0x569d54                    |     goto label_0;
                                             | }

[*] Function fprintf used 21 times php-cli