[*] Binary protection state of php-cgi
Full RELRO No Canary found NX enabled No PIE No RPATH No RUNPATH No Symbols
[*] Function system tear down of php-cgi
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/unblob_extracted/firmware_extract/1568982-13971496.squashfs_v4_le_extract/usr/bin/php-cgi @ 0x499fc8 */
| #include <stdint.h>
|
; (fcn) fcn.00499fc8 () | void fcn_00499fc8 () {
0x00499fc8 lui gp, 0x27 |
0x00499fcc addiu gp, gp, -0x7d28 |
0x00499fd0 addu gp, gp, t9 | gp += t9;
0x00499fd4 addiu sp, sp, -0x40 |
0x00499fd8 lw a3, -0x7e70(gp) | a3 = *((gp - 8092));
0x00499fdc lw a1, -0x7fc4(gp) | a1 = *((gp - 8177));
0x00499fe0 sw s2, 0x2c(sp) | *(var_2ch) = s2;
0x00499fe4 lw s2, -0x7b38(gp) | s2 = *(gp);
0x00499fe8 lw a0, -0x7a98(gp) | a0 = *(gp);
0x00499fec lw t9, -0x7abc(gp) | t9 = sym.spl_register_std_class;
0x00499ff0 sw ra, 0x3c(sp) | *(var_3ch) = ra;
0x00499ff4 sw s5, 0x38(sp) | *(var_38h) = s5;
0x00499ff8 sw s4, 0x34(sp) | *(var_34h) = s4;
0x00499ffc sw s3, 0x30(sp) | *(var_30h) = s3;
0x0049a000 sw s1, 0x28(sp) | *(var_28h) = s1;
0x0049a004 sw s0, 0x24(sp) | *(var_24h) = s0;
0x0049a008 sw gp, 0x18(sp) | *(var_18h) = gp;
| /* esilref: '__construct' */
0x0049a00c addiu a3, a3, 0x4604 | a3 += 0x4604;
0x0049a010 addiu a2, s2, 0x2f34 | a2 = s2 + 0x2f34;
| /* str.SplFileInfo */
0x0049a014 addiu a1, a1, 0x306c | a1 += 0x306c;
0x0049a018 bal 0x48262c | sym_spl_register_std_class ();
0x0049a01c lw gp, 0x18(sp) | gp = *(var_18h);
0x0049a020 lw t9, -0x7f74(gp) | t9 = sym.zend_get_std_object_handlers;
0x0049a024 jalr t9 | t9 ();
0x0049a028 nop |
0x0049a02c lw gp, 0x18(sp) | gp = *(var_18h);
0x0049a030 addiu a2, zero, 0x60 | a2 = 0x60;
0x0049a034 addiu a1, v0, 0x10 | a1 = v0 + 0x10;
0x0049a038 lw a0, -0x7f98(gp) | a0 = *((gp - 8166));
0x0049a03c lw t9, -0x6148(gp) | t9 = sym.imp.memcpy;
0x0049a040 addiu a0, a0, -0x35b0 | a0 += -0x35b0;
0x0049a044 jalr t9 | t9 ();
0x0049a048 lw gp, 0x18(sp) | gp = *(var_18h);
0x0049a04c addiu v0, zero, 0x1050 | v0 = 0x1050;
0x0049a050 addiu a3, s2, 0x2f34 | a3 = s2 + 0x2f34;
0x0049a054 lw s1, -0x7f98(gp) | s1 = *((gp - 8166));
0x0049a058 lw s5, -0x7a98(gp) | s5 = *(gp);
0x0049a05c lw a2, -0x7fc4(gp) | a2 = *((gp - 8177));
0x0049a060 sw v0, -0x35c0(s1) | *((s1 - 3440)) = v0;
0x0049a064 lw v0, -0x7b38(gp) | v0 = *(gp);
0x0049a068 addiu s1, s1, -0x35c0 | s1 += -0x35c0;
0x0049a06c addiu v0, v0, 0x4940 | v0 += 0x4940;
0x0049a070 sw v0, 0xc(s1) | *((s1 + 3)) = v0;
0x0049a074 lw v0, -0x7b38(gp) | v0 = *(gp);
0x0049a078 lw a1, (s5) | a1 = *(s5);
0x0049a07c addiu v0, v0, 0x2900 | v0 += 0x2900;
0x0049a080 sw v0, 0x54(s1) | *((s1 + 21)) = v0;
0x0049a084 lw v0, -0x7a04(gp) | v0 = *(gp);
0x0049a088 lw t9, -0x7ab0(gp) | t9 = sym.spl_register_sub_class;
0x0049a08c addiu v0, v0, -0x71cc | v0 += -0x71cc;
0x0049a090 sw v0, 0x5c(s1) | *((s1 + 23)) = v0;
0x0049a094 lw v0, -0x7b38(gp) | v0 = *(gp);
0x0049a098 lw a0, -0x79f8(gp) | a0 = *(gp);
0x0049a09c addiu v0, v0, 0x59a8 | v0 += 0x59a8;
0x0049a0a0 sw v0, 8(s1) | *((s1 + 2)) = v0;
0x0049a0a4 lw v0, -0x7b38(gp) | v0 = *(gp);
| /* str.DirectoryIterator */
0x0049a0a8 addiu a2, a2, 0x3078 | a2 += 0x3078;
0x0049a0ac addiu v0, v0, 0x40b0 | v0 += 0x40b0;
0x0049a0b0 sw v0, 4(s1) | *((s1 + 1)) = v0;
0x0049a0b4 lw v0, -0x79e4(gp) | v0 = sym.zend_class_serialize_deny;
0x0049a0b8 sw v0, 0x10c(a1) | *((a1 + 67)) = v0;
0x0049a0bc lw v0, -0x79e0(gp) | v0 = sym.zend_class_unserialize_deny;
0x0049a0c0 sw v0, 0x110(a1) | *((a1 + 68)) = v0;
0x0049a0c4 lw v0, -0x7e70(gp) | v0 = *((gp - 8092));
| /* esilref: '__construct' */
0x0049a0c8 addiu v0, v0, 0x44d0 | v0 += 0x44d0;
0x0049a0cc sw v0, 0x10(sp) | *(var_10h) = v0;
0x0049a0d0 bal 0x48279c | sym_spl_register_sub_class ();
0x0049a0d4 lw gp, 0x18(sp) | gp = *(var_18h);
0x0049a0d8 addiu a1, zero, 1 | a1 = 1;
0x0049a0dc lw s0, -0x79f8(gp) | s0 = *(gp);
0x0049a0e0 lw v0, -0x7b28(gp) | v0 = *(gp);
0x0049a0e4 lw t9, -0x7e60(gp) | t9 = sym.zend_class_implements;
0x0049a0e8 lw a0, (s0) | a0 = *(s0);
0x0049a0ec lw a2, (v0) | a2 = *(v0);
0x0049a0f0 jalr t9 | t9 ();
0x0049a0f4 lw gp, 0x18(sp) | gp = *(var_18h);
0x0049a0f8 lw a0, (s0) | a0 = *(s0);
0x0049a0fc addiu a1, zero, 1 | a1 = 1;
0x0049a100 lw s3, -0x7ae4(gp) | s3 = *(gp);
0x0049a104 lw t9, -0x7e60(gp) | t9 = sym.zend_class_implements;
0x0049a108 lw a2, (s3) | a2 = *(s3);
0x0049a10c jalr t9 | t9 ();
0x0049a110 lw gp, 0x18(sp) | gp = *(var_18h);
0x0049a114 lw a1, (s0) | a1 = *(s0);
0x0049a118 addiu a3, s2, 0x2f34 | a3 = s2 + 0x2f34;
0x0049a11c lw v0, -0x79dc(gp) | v0 = *((gp - 7799));
0x0049a120 lw a2, -0x7fc4(gp) | a2 = *((gp - 8177));
0x0049a124 sw v0, 0x100(a1) | *((a1 + 64)) = v0;
0x0049a128 lw v0, -0x7e70(gp) | v0 = *((gp - 8092));
0x0049a12c lw t9, -0x7ab0(gp) | t9 = sym.spl_register_sub_class;
| /* esilref: '__construct' */
0x0049a130 addiu v0, v0, 0x43dc | v0 += 0x43dc;
0x0049a134 lw a0, -0x79d8(gp) | a0 = *(gp);
0x0049a138 sw v0, 0x10(sp) | *(var_10h) = v0;
| /* str.FilesystemIterator */
0x0049a13c addiu a2, a2, 0x308c | a2 += 0x308c;
0x0049a140 bal 0x48279c | sym_spl_register_sub_class ();
0x0049a144 lw gp, 0x18(sp) | gp = *(var_18h);
0x0049a148 addiu a3, zero, 0xf0 | a3 = 0xf0;
0x0049a14c addiu a2, zero, 0x11 | a2 = 0x11;
0x0049a150 lw s0, -0x79d8(gp) | s0 = *(gp);
0x0049a154 lw a1, -0x7fc4(gp) | a1 = *((gp - 8177));
0x0049a158 lw t9, -0x7e4c(gp) | t9 = sym.zend_declare_class_constant_long;
0x0049a15c lw a0, (s0) | a0 = *(s0);
| /* str.CURRENT_MODE_MASK */
0x0049a160 addiu a1, a1, 0x30a0 | a1 += 0x30a0;
0x0049a164 jalr t9 | t9 ();
0x0049a168 lw gp, 0x18(sp) | gp = *(var_18h);
0x0049a16c lw a0, (s0) | a0 = *(s0);
0x0049a170 addiu a3, zero, 0x20 | a3 = 0x20;
0x0049a174 lw a1, -0x7fc4(gp) | a1 = *((gp - 8177));
0x0049a178 lw t9, -0x7e4c(gp) | t9 = sym.zend_declare_class_constant_long;
0x0049a17c addiu a2, zero, 0x13 | a2 = 0x13;
| /* str.CURRENT_AS_PATHNAME */
0x0049a180 addiu a1, a1, 0x30b4 | a1 += 0x30b4;
0x0049a184 jalr t9 | t9 ();
0x0049a188 lw gp, 0x18(sp) | gp = *(var_18h);
0x0049a18c lw a0, (s0) | a0 = *(s0);
0x0049a190 move a3, zero | a3 = 0;
0x0049a194 lw a1, -0x7fc4(gp) | a1 = *((gp - 8177));
0x0049a198 lw t9, -0x7e4c(gp) | t9 = sym.zend_declare_class_constant_long;
0x0049a19c addiu a2, zero, 0x13 | a2 = 0x13;
| /* str.CURRENT_AS_FILEINFO */
0x0049a1a0 addiu a1, a1, 0x30c8 | a1 += 0x30c8;
0x0049a1a4 jalr t9 | t9 ();
0x0049a1a8 lw gp, 0x18(sp) | gp = *(var_18h);
0x0049a1ac lw a0, (s0) | a0 = *(s0);
0x0049a1b0 addiu a3, zero, 0x10 | a3 = 0x10;
0x0049a1b4 lw a1, -0x7fc4(gp) | a1 = *((gp - 8177));
0x0049a1b8 lw t9, -0x7e4c(gp) | t9 = sym.zend_declare_class_constant_long;
0x0049a1bc addiu a2, zero, 0xf | a2 = 0xf;
| /* str.CURRENT_AS_SELF */
0x0049a1c0 addiu a1, a1, 0x30dc | a1 += 0x30dc;
0x0049a1c4 jalr t9 | t9 ();
0x0049a1c8 lw gp, 0x18(sp) | gp = *(var_18h);
0x0049a1cc lw a0, (s0) | a0 = *(s0);
0x0049a1d0 addiu a3, zero, 0xf00 | a3 = 0xf00;
0x0049a1d4 lw a1, -0x7fc4(gp) | a1 = *((gp - 8177));
0x0049a1d8 lw t9, -0x7e4c(gp) | t9 = sym.zend_declare_class_constant_long;
0x0049a1dc addiu a2, zero, 0xd | a2 = 0xd;
| /* str.KEY_MODE_MASK */
0x0049a1e0 addiu a1, a1, 0x30ec | a1 += 0x30ec;
0x0049a1e4 jalr t9 | t9 ();
0x0049a1e8 lw gp, 0x18(sp) | gp = *(var_18h);
0x0049a1ec lw a0, (s0) | a0 = *(s0);
0x0049a1f0 move a3, zero | a3 = 0;
0x0049a1f4 lw a1, -0x7fc4(gp) | a1 = *((gp - 8177));
0x0049a1f8 lw t9, -0x7e4c(gp) | t9 = sym.zend_declare_class_constant_long;
0x0049a1fc addiu a2, zero, 0xf | a2 = 0xf;
| /* str.KEY_AS_PATHNAME */
0x0049a200 addiu a1, a1, 0x30fc | a1 += 0x30fc;
0x0049a204 jalr t9 | t9 ();
0x0049a208 lw gp, 0x18(sp) | gp = *(var_18h);
0x0049a20c lw a0, (s0) | a0 = *(s0);
0x0049a210 addiu a3, zero, 0x200 | a3 = 0x200;
0x0049a214 lw a1, -0x7fc4(gp) | a1 = *((gp - 8177));
0x0049a218 lw t9, -0x7e4c(gp) | t9 = sym.zend_declare_class_constant_long;
0x0049a21c addiu a2, zero, 0xf | a2 = 0xf;
| /* str.FOLLOW_SYMLINKS */
0x0049a220 addiu a1, a1, 0x310c | a1 += 0x310c;
0x0049a224 jalr t9 | t9 ();
0x0049a228 lw gp, 0x18(sp) | gp = *(var_18h);
0x0049a22c lw a0, (s0) | a0 = *(s0);
0x0049a230 addiu a3, zero, 0x100 | a3 = 0x100;
0x0049a234 lw a1, -0x7fc4(gp) | a1 = *((gp - 8177));
0x0049a238 lw t9, -0x7e4c(gp) | t9 = sym.zend_declare_class_constant_long;
0x0049a23c addiu a2, zero, 0xf | a2 = 0xf;
| /* str.KEY_AS_FILENAME */
0x0049a240 addiu a1, a1, 0x311c | a1 += 0x311c;
0x0049a244 jalr t9 | t9 ();
0x0049a248 lw gp, 0x18(sp) | gp = *(var_18h);
0x0049a24c lw a0, (s0) | a0 = *(s0);
0x0049a250 addiu a3, zero, 0x100 | a3 = 0x100;
0x0049a254 lw a1, -0x7fc4(gp) | a1 = *((gp - 8177));
0x0049a258 lw t9, -0x7e4c(gp) | t9 = sym.zend_declare_class_constant_long;
0x0049a25c addiu a2, zero, 0x13 | a2 = 0x13;
| /* str.NEW_CURRENT_AND_KEY */
0x0049a260 addiu a1, a1, 0x312c | a1 += 0x312c;
0x0049a264 jalr t9 | t9 ();
0x0049a268 lw gp, 0x18(sp) | gp = *(var_18h);
0x0049a26c lw a0, (s0) | a0 = *(s0);
0x0049a270 addiu a3, zero, 0x3000 | a3 = 0x3000;
0x0049a274 lw a1, -0x7fc4(gp) | a1 = *((gp - 8177));
0x0049a278 lw t9, -0x7e4c(gp) | t9 = sym.zend_declare_class_constant_long;
0x0049a27c addiu a2, zero, 0xf | a2 = 0xf;
| /* str.OTHER_MODE_MASK */
0x0049a280 addiu a1, a1, 0x3140 | a1 += 0x3140;
0x0049a284 jalr t9 | t9 ();
0x0049a288 lw gp, 0x18(sp) | gp = *(var_18h);
0x0049a28c lw a0, (s0) | a0 = *(s0);
0x0049a290 addiu a3, zero, 0x1000 | a3 = 0x1000;
0x0049a294 lw a1, -0x7fc4(gp) | a1 = *((gp - 8177));
0x0049a298 lw t9, -0x7e4c(gp) | t9 = sym.zend_declare_class_constant_long;
0x0049a29c addiu a2, zero, 9 | a2 = 9;
| /* str.SKIP_DOTS */
0x0049a2a0 addiu a1, a1, 0x3150 | a1 += 0x3150;
0x0049a2a4 jalr t9 | t9 ();
0x0049a2a8 lw gp, 0x18(sp) | gp = *(var_18h);
0x0049a2ac lw a0, (s0) | a0 = *(s0);
0x0049a2b0 addiu a3, zero, 0x2000 | a3 = 0x2000;
0x0049a2b4 lw a1, -0x7fc4(gp) | a1 = *((gp - 8177));
0x0049a2b8 lw t9, -0x7e4c(gp) | t9 = sym.zend_declare_class_constant_long;
0x0049a2bc addiu a2, zero, 0xa | a2 = 0xa;
| /* str.UNIX_PATHS */
0x0049a2c0 addiu a1, a1, 0x315c | a1 += 0x315c;
0x0049a2c4 jalr t9 | t9 ();
0x0049a2c8 lw gp, 0x18(sp) | gp = *(var_18h);
0x0049a2cc lw a1, (s0) | a1 = *(s0);
0x0049a2d0 addiu a3, s2, 0x2f34 | a3 = s2 + 0x2f34;
0x0049a2d4 lw v0, -0x79d4(gp) | v0 = *((gp - 7797));
0x0049a2d8 lw a2, -0x7fc4(gp) | a2 = *((gp - 8177));
0x0049a2dc sw v0, 0x100(a1) | *((a1 + 64)) = v0;
0x0049a2e0 lw v0, -0x7e70(gp) | v0 = *((gp - 8092));
0x0049a2e4 lw t9, -0x7ab0(gp) | t9 = sym.spl_register_sub_class;
| /* esilref: '__construct' */
0x0049a2e8 addiu v0, v0, 0x4364 | v0 += 0x4364;
0x0049a2ec lw a0, -0x79f4(gp) | a0 = *(gp);
0x0049a2f0 sw v0, 0x10(sp) | *(var_10h) = v0;
| /* str.RecursiveDirectoryIterator */
0x0049a2f4 addiu a2, a2, 0x3168 | a2 += 0x3168;
0x0049a2f8 bal 0x48279c | sym_spl_register_sub_class ();
0x0049a2fc lw gp, 0x18(sp) | gp = *(var_18h);
0x0049a300 addiu a1, zero, 1 | a1 = 1;
0x0049a304 lw s4, -0x7b90(gp) | s4 = *(gp);
0x0049a308 lw v0, -0x79f4(gp) | v0 = *(gp);
0x0049a30c lw t9, -0x7e60(gp) | t9 = sym.zend_class_implements;
0x0049a310 lw a2, (s4) | a2 = *(s4);
0x0049a314 lw a0, (v0) | a0 = *(v0);
0x0049a318 jalr t9 | t9 ();
0x0049a31c lw gp, 0x18(sp) | gp = *(var_18h);
0x0049a320 move a1, s1 | a1 = s1;
0x0049a324 addiu a2, zero, 0x70 | a2 = 0x70;
0x0049a328 lw s2, -0x7f98(gp) | s2 = *((gp - 8166));
0x0049a32c lw t9, -0x6148(gp) | t9 = sym.imp.memcpy;
0x0049a330 addiu s2, s2, -0x3630 | s2 += -0x3630;
0x0049a334 move a0, s2 | a0 = s2;
0x0049a338 jalr t9 | t9 ();
0x0049a33c lw gp, 0x18(sp) | gp = *(var_18h);
0x0049a340 lw a1, (s0) | a1 = *(s0);
0x0049a344 lw v0, -0x79d0(gp) | v0 = *((gp - 7796));
0x0049a348 lw s1, -0x7b38(gp) | s1 = *(gp);
0x0049a34c sw v0, 0x40(s2) | *((s2 + 16)) = v0;
0x0049a350 lw v0, -0x7e70(gp) | v0 = *((gp - 8092));
0x0049a354 lw a2, -0x7fc4(gp) | a2 = *((gp - 8177));
0x0049a358 lw t9, -0x7ab0(gp) | t9 = sym.spl_register_sub_class;
| /* esilref: '__construct' */
0x0049a35c addiu v0, v0, 0x4328 | v0 += 0x4328;
0x0049a360 lw a0, -0x79cc(gp) | a0 = *(gp);
0x0049a364 addiu a3, s1, 0x2ef0 | a3 = s1 + 0x2ef0;
0x0049a368 sw v0, 0x10(sp) | *(var_10h) = v0;
| /* str.GlobIterator */
0x0049a36c addiu a2, a2, 0x3184 | a2 += 0x3184;
0x0049a370 bal 0x48279c | sym_spl_register_sub_class ();
0x0049a374 lw gp, 0x18(sp) | gp = *(var_18h);
0x0049a378 addiu a1, zero, 1 | a1 = 1;
0x0049a37c lw v0, -0x7aa8(gp) | v0 = *(gp);
0x0049a380 lw t9, -0x7e60(gp) | t9 = sym.zend_class_implements;
0x0049a384 lw a2, (v0) | a2 = *(v0);
0x0049a388 lw v0, -0x79cc(gp) | v0 = *(gp);
0x0049a38c lw a0, (v0) | a0 = *(v0);
0x0049a390 jalr t9 | t9 ();
0x0049a394 lw gp, 0x18(sp) | gp = *(var_18h);
0x0049a398 lw a1, (s5) | a1 = *(s5);
0x0049a39c addiu a3, s1, 0x2ef0 | a3 = s1 + 0x2ef0;
0x0049a3a0 lw v0, -0x7e70(gp) | v0 = *((gp - 8092));
0x0049a3a4 lw a2, -0x7fc4(gp) | a2 = *((gp - 8177));
| /* esilref: '__construct' */
0x0049a3a8 addiu v0, v0, 0x3eb8 | v0 += 0x3eb8;
0x0049a3ac lw t9, -0x7ab0(gp) | t9 = sym.spl_register_sub_class;
0x0049a3b0 lw a0, -0x7a9c(gp) | a0 = *(gp);
0x0049a3b4 sw v0, 0x10(sp) | *(var_10h) = v0;
| /* str.SplFileObject */
0x0049a3b8 addiu a2, a2, 0x3194 | a2 += 0x3194;
0x0049a3bc bal 0x48279c | sym_spl_register_sub_class ();
0x0049a3c0 lw gp, 0x18(sp) | gp = *(var_18h);
0x0049a3c4 lw a2, (s4) | a2 = *(s4);
0x0049a3c8 addiu a1, zero, 1 | a1 = 1;
0x0049a3cc lw s0, -0x7a9c(gp) | s0 = *(gp);
0x0049a3d0 lw t9, -0x7e60(gp) | t9 = sym.zend_class_implements;
0x0049a3d4 lw a0, (s0) | a0 = *(s0);
0x0049a3d8 jalr t9 | t9 ();
0x0049a3dc lw gp, 0x18(sp) | gp = *(var_18h);
0x0049a3e0 lw a2, (s3) | a2 = *(s3);
0x0049a3e4 lw a0, (s0) | a0 = *(s0);
0x0049a3e8 lw t9, -0x7e60(gp) | t9 = sym.zend_class_implements;
0x0049a3ec addiu a1, zero, 1 | a1 = 1;
0x0049a3f0 jalr t9 | t9 ();
0x0049a3f4 lw gp, 0x18(sp) | gp = *(var_18h);
0x0049a3f8 lw a0, (s0) | a0 = *(s0);
0x0049a3fc addiu a3, zero, 1 | a3 = 1;
0x0049a400 lw a1, -0x7fc4(gp) | a1 = *((gp - 8177));
0x0049a404 lw t9, -0x7e4c(gp) | t9 = sym.zend_declare_class_constant_long;
0x0049a408 addiu a2, zero, 0xd | a2 = 0xd;
| /* str.DROP_NEW_LINE */
0x0049a40c addiu a1, a1, 0x31a4 | a1 += 0x31a4;
0x0049a410 jalr t9 | t9 ();
0x0049a414 lw gp, 0x18(sp) | gp = *(var_18h);
0x0049a418 lw a0, (s0) | a0 = *(s0);
0x0049a41c addiu a3, zero, 2 | a3 = 2;
0x0049a420 lw a1, -0x7fc4(gp) | a1 = *((gp - 8177));
0x0049a424 lw t9, -0x7e4c(gp) | t9 = sym.zend_declare_class_constant_long;
0x0049a428 addiu a2, zero, 0xa | a2 = 0xa;
| /* str.READ_AHEAD */
0x0049a42c addiu a1, a1, 0x31b4 | a1 += 0x31b4;
0x0049a430 jalr t9 | t9 ();
0x0049a434 lw gp, 0x18(sp) | gp = *(var_18h);
0x0049a438 lw a0, (s0) | a0 = *(s0);
0x0049a43c addiu a3, zero, 4 | a3 = 4;
0x0049a440 lw a1, -0x7fc4(gp) | a1 = *((gp - 8177));
0x0049a444 lw t9, -0x7e4c(gp) | t9 = sym.zend_declare_class_constant_long;
0x0049a448 addiu a2, zero, 0xa | a2 = 0xa;
| /* str.SKIP_EMPTY */
0x0049a44c addiu a1, a1, 0x31c0 | a1 += 0x31c0;
0x0049a450 jalr t9 | t9 ();
0x0049a454 lw gp, 0x18(sp) | gp = *(var_18h);
0x0049a458 lw a0, (s0) | a0 = *(s0);
0x0049a45c addiu a3, zero, 8 | a3 = 8;
0x0049a460 lw a1, -0x7fc4(gp) | a1 = *((gp - 8177));
0x0049a464 lw t9, -0x7e4c(gp) | t9 = sym.zend_declare_class_constant_long;
0x0049a468 addiu a2, zero, 8 | a2 = 8;
| /* str.READ_CSV */
0x0049a46c addiu a1, a1, 0x31cc | a1 += 0x31cc;
0x0049a470 jalr t9 | t9 ();
0x0049a474 lw gp, 0x18(sp) | gp = *(var_18h);
0x0049a478 lw a1, (s0) | a1 = *(s0);
0x0049a47c addiu a3, s1, 0x2ef0 | a3 = s1 + 0x2ef0;
0x0049a480 lw v0, -0x7e70(gp) | v0 = *((gp - 8092));
0x0049a484 lw a2, -0x7fc4(gp) | a2 = *((gp - 8177));
| /* esilref: '__construct' */
0x0049a488 addiu v0, v0, 0x3e78 | v0 += 0x3e78;
0x0049a48c lw t9, -0x7ab0(gp) | t9 = sym.spl_register_sub_class;
0x0049a490 lw a0, -0x79c8(gp) | a0 = *(gp);
0x0049a494 sw v0, 0x10(sp) | *(var_10h) = v0;
| /* str.SplTempFileObject */
0x0049a498 addiu a2, a2, 0x31d8 | a2 += 0x31d8;
0x0049a49c bal 0x48279c | sym_spl_register_sub_class ();
0x0049a4a0 lw ra, 0x3c(sp) | ra = *(var_3ch);
0x0049a4a4 lw s5, 0x38(sp) | s5 = *(var_38h);
0x0049a4a8 lw s4, 0x34(sp) | s4 = *(var_34h);
0x0049a4ac lw s3, 0x30(sp) | s3 = *(var_30h);
0x0049a4b0 lw s2, 0x2c(sp) | s2 = *(var_2ch);
0x0049a4b4 lw s1, 0x28(sp) | s1 = *(var_28h);
0x0049a4b8 lw s0, 0x24(sp) | s0 = *(var_24h);
0x0049a4bc move v0, zero | v0 = 0;
0x0049a4c0 addiu sp, sp, 0x40 |
0x0049a4c4 jr ra | return v0;
| }
[*] Function system used 2 times php-cgi