Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 46) Position 1 = 38, Position 2 = 41
Branch analysis from position: 38
2 jumps found. (Code = 43) Position 1 = 43, Position 2 = 51
Branch analysis from position: 43
1 jumps found. (Code = 42) Position 1 = 59
Branch analysis from position: 59
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 51
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 41
filename: /in/NnHp4
function name: (null)
number of ops: 115
compiled vars: !0 = $payload, !1 = $rfcCsv, !2 = $actualRfc, !3 = $handler, !4 = $actual, !5 = $actualPhp
line #* E I O op fetch ext return operands
-----------------------------------------------------------------------------------------
7 0 E > ASSIGN !0, '%22Hello%5C%22%2C+World%21'
8 1 ASSIGN !1, '%22%22%22Hello%5C%22%22%2C+World%21%22'
10 2 INIT_FCALL 'str_getcsv'
3 SEND_VAR !1
4 SEND_VAL '%2C'
5 SEND_VAL '%22'
6 SEND_VAL '%22'
7 DO_ICALL $8
8 ASSIGN !2, $8
11 9 ECHO 'READING+RFC+CSV%0A'
12 10 ECHO '---------------%0A'
13 11 ECHO 'To+read+a+well+formatted+CSV%2C+you+must+use+the+%60double-quote%60+char+as+enclosure+and%0A'
14 12 ECHO '+as+escape%0A'
15 13 ROPE_INIT 3 ~11 'Expected%3A+'
14 ROPE_ADD 1 ~11 ~11, !0
15 ROPE_END 2 ~10 ~11, '%0A'
16 ECHO ~10
16 17 FETCH_DIM_R ~13 !2, 0
18 ROPE_INIT 3 ~15 'Actual++%3A+'
19 ROPE_ADD 1 ~15 ~15, ~13
20 ROPE_END 2 ~14 ~15, '%0A'
21 ECHO ~14
17 22 ECHO 'Equals%3F+'
23 INIT_FCALL 'var_dump'
24 FETCH_DIM_R ~17 !2, 0
25 IS_IDENTICAL ~18 !0, ~17
26 SEND_VAL ~18
27 DO_ICALL
18 28 ECHO '%0A%0A%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%0A%0A'
20 29 INIT_FCALL 'fopen'
30 SEND_VAL 'php%3A%2F%2Ftemp'
31 SEND_VAL 'w%2B'
32 DO_ICALL $20
33 ASSIGN !3, $20
21 34 ECHO 'WRITING%0A'
22 35 ECHO '-------%0A'
23 36 DEFINED ~22 'HHVM_VERSION_ID'
37 > JMPZ_EX ~22 ~22, ->41
38 > FETCH_CONSTANT ~23 'HHVM_VERSION_ID'
39 IS_SMALLER ~24 ~23, 31100
40 BOOL ~22 ~24
41 > BOOL ~25 ~22
42 > JMPZ ~25, ->51
25 43 > INIT_FCALL 'fputcsv'
44 SEND_VAR !3
45 INIT_ARRAY ~26 !0
46 SEND_VAL ~26
47 SEND_VAL '%2C'
48 SEND_VAL '%22'
49 DO_ICALL
23 50 > JMP ->59
28 51 > INIT_FCALL 'fputcsv'
52 SEND_VAR !3
53 INIT_ARRAY ~28 !0
54 SEND_VAL ~28
55 SEND_VAL '%2C'
56 SEND_VAL '%22'
57 SEND_VAL '%22'
58 DO_ICALL
30 59 > INIT_FCALL 'rewind'
60 SEND_VAR !3
61 DO_ICALL
31 62 INIT_FCALL 'rtrim'
63 INIT_FCALL 'fgets'
64 SEND_VAR !3
65 SEND_VAL 4096
66 DO_ICALL $31
67 SEND_VAR $31
68 SEND_VAL '%0A'
69 DO_ICALL $32
70 ASSIGN !4, $32
33 71 ECHO 'There+is+no+way+to+write+a+well+formatted+CSV+even.+The+support+for+the+escape+param%0A'
34 72 ECHO '+in+the+fputcsv+function+do+not+fix+the+invalid+format.%0A'
35 73 ROPE_INIT 3 ~35 'Expected%3A+'
74 ROPE_ADD 1 ~35 ~35, !1
75 ROPE_END 2 ~34 ~35, '%0A'
76 ECHO ~34
36 77 ROPE_INIT 3 ~38 'Actual++%3A+'
78 ROPE_ADD 1 ~38 ~38, !4
79 ROPE_END 2 ~37 ~38, '%0A'
80 ECHO ~37
37 81 ECHO 'Equals%3F+'
82 INIT_FCALL 'var_dump'
83 IS_IDENTICAL ~40 !1, !4
84 SEND_VAL ~40
85 DO_ICALL
38 86 ECHO '%0A%0A%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%0A%0A'
40 87 INIT_FCALL 'str_getcsv'
88 SEND_VAR !4
89 SEND_VAL '%2C'
90 SEND_VAL '%22'
91 SEND_VAL '%22'
92 DO_ICALL $42
93 ASSIGN !5, $42
41 94 ECHO 'READING+PHP+CSV%0A'
42 95 ECHO '---------------%0A'
43 96 ECHO 'If+you+read+a+PHP+formatted+CSV+using+use+the+%60double-quote%60+char+as+enclosure+and%0A'
44 97 ECHO '+as+escape%2C+the+result+is+not+the+expected+one.%0A'
45 98 ROPE_INIT 3 ~45 'Expected%3A+'
99 ROPE_ADD 1 ~45 ~45, !0
100 ROPE_END 2 ~44 ~45, '%0A'
101 ECHO ~44
46 102 FETCH_DIM_R ~47 !5, 0
103 ROPE_INIT 3 ~49 'Actual++%3A+'
104 ROPE_ADD 1 ~49 ~49, ~47
105 ROPE_END 2 ~48 ~49, '%0A'
106 ECHO ~48
47 107 ECHO 'Equals%3F+'
108 INIT_FCALL 'var_dump'
109 FETCH_DIM_R ~51 !5, 0
110 IS_IDENTICAL ~52 !0, ~51
111 SEND_VAL ~52
112 DO_ICALL
48 113 ECHO '%0A%0A%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%0A%0A'
114 > RETURN 1
Generated using Vulcan Logic Dumper, using php 8.5.0