Finding entry points Branch analysis from position: 0 1 jumps found. (Code = 62) Position 1 = -2 filename: /in/9flc4 function name: (null) number of ops: 5 compiled vars: !0 = $Input_ICAO_Airport line #* E I O op fetch ext return operands ------------------------------------------------------------------------------------- 5 0 E > ASSIGN !0, 'KHII' 6 1 INIT_FCALL_BY_NAME 'getMetar' 2 SEND_VAR_EX !0 3 DO_FCALL 0 195 4 > RETURN 1 Function getmetar: Finding entry points Branch analysis from position: 0 2 jumps found. (Code = 43) Position 1 = 8, Position 2 = 404 Branch analysis from position: 8 2 jumps found. (Code = 43) Position 1 = 36, Position 2 = 40 Branch analysis from position: 36 1 jumps found. (Code = 42) Position 1 = 403 Branch analysis from position: 403 1 jumps found. (Code = 42) Position 1 = 407 Branch analysis from position: 407 1 jumps found. (Code = 62) Position 1 = -2 Branch analysis from position: 40 2 jumps found. (Code = 47) Position 1 = 93, Position 2 = 99 Branch analysis from position: 93 2 jumps found. (Code = 43) Position 1 = 100, Position 2 = 108 Branch analysis from position: 100 1 jumps found. (Code = 42) Position 1 = 111 Branch analysis from position: 111 2 jumps found. (Code = 43) Position 1 = 124, Position 2 = 148 Branch analysis from position: 124 1 jumps found. (Code = 42) Position 1 = 179 Branch analysis from position: 179 2 jumps found. (Code = 43) Position 1 = 181, Position 2 = 397 Branch analysis from position: 181 2 jumps found. (Code = 43) Position 1 = 191, Position 2 = 313 Branch analysis from position: 191 2 jumps found. (Code = 43) Position 1 = 195, Position 2 = 210 Branch analysis from position: 195 1 jumps found. (Code = 42) Position 1 = 226 Branch analysis from position: 226 2 jumps found. (Code = 47) Position 1 = 245, Position 2 = 253 Branch analysis from position: 245 2 jumps found. (Code = 43) Position 1 = 254, Position 2 = 277 Branch analysis from position: 254 1 jumps found. (Code = 42) Position 1 = 299 Branch analysis from position: 299 1 jumps found. (Code = 42) Position 1 = 397 Branch analysis from position: 397 1 jumps found. (Code = 42) Position 1 = 407 Branch analysis from position: 407 Branch analysis from position: 277 1 jumps found. (Code = 42) Position 1 = 397 Branch analysis from position: 397 Branch analysis from position: 253 Branch analysis from position: 210 2 jumps found. (Code = 43) Position 1 = 212, Position 2 = 226 Branch analysis from position: 212 2 jumps found. (Code = 47) Position 1 = 245, Position 2 = 253 Branch analysis from position: 245 Branch analysis from position: 253 Branch analysis from position: 226 Branch analysis from position: 313 2 jumps found. (Code = 47) Position 1 = 325, Position 2 = 335 Branch analysis from position: 325 2 jumps found. (Code = 43) Position 1 = 336, Position 2 = 367 Branch analysis from position: 336 1 jumps found. (Code = 42) Position 1 = 397 Branch analysis from position: 397 Branch analysis from position: 367 1 jumps found. (Code = 42) Position 1 = 407 Branch analysis from position: 407 Branch analysis from position: 335 Branch analysis from position: 397 Branch analysis from position: 148 2 jumps found. (Code = 43) Position 1 = 158, Position 2 = 163 Branch analysis from position: 158 1 jumps found. (Code = 42) Position 1 = 179 Branch analysis from position: 179 Branch analysis from position: 163 2 jumps found. (Code = 43) Position 1 = 181, Position 2 = 397 Branch analysis from position: 181 Branch analysis from position: 397 Branch analysis from position: 108 2 jumps found. (Code = 43) Position 1 = 124, Position 2 = 148 Branch analysis from position: 124 Branch analysis from position: 148 Branch analysis from position: 99 Branch analysis from position: 404 1 jumps found. (Code = 62) Position 1 = -2 filename: /in/9flc4 function name: getMetar number of ops: 408 compiled vars: !0 = $ICAO_Code, !1 = $opt, !2 = $filename, !3 = $handle, !4 = $contents, !5 = $resRaw, !6 = $translation, !7 = $i, !8 = $wind_raw, !9 = $tmpwdirection, !10 = $pos line #* E I O op fetch ext return operands ------------------------------------------------------------------------------------- 8 0 E > RECV !0 13 1 ASSIGN !1, <array> 18 2 INIT_FCALL 'filter_var' 3 SEND_VAR !0 4 SEND_VAL 272 5 SEND_VAR !1 6 DO_ICALL $12 7 > JMPZ $12, ->404 20 8 > INIT_FCALL 'strtoupper' 9 SEND_VAR !0 10 DO_ICALL $13 11 ASSIGN !0, $13 21 12 ROPE_INIT 3 ~16 'ftp%3A%2F%2Ftgftp.nws.noaa.gov%2Fdata%2Fobservations%2Fmetar%2Fstations%2F' 13 ROPE_ADD 1 ~16 ~16, !0 14 ROPE_END 2 ~15 ~16, '.TXT' 15 ASSIGN !2, ~15 22 16 INIT_FCALL 'fopen' 17 SEND_VAR !2 18 SEND_VAL 'r' 19 DO_ICALL $19 20 ASSIGN !3, $19 23 21 INIT_FCALL 'fread' 22 SEND_VAR !3 23 INIT_FCALL 'filesize' 24 SEND_VAR !2 25 DO_ICALL $21 26 SEND_VAR $21 27 DO_ICALL $22 28 ASSIGN !4, $22 24 29 INIT_FCALL 'fclose' 30 SEND_VAR !3 31 DO_ICALL 25 32 ECHO !4 26 33 STRLEN ~25 !4 34 IS_SMALLER ~25, 5 35 > JMPZ ~26, ->40 28 36 > INIT_FCALL_BY_NAME 'myerror' 37 SEND_VAL_EX 'Erhaltenes+Metar+nicht+valide%21' 38 DO_FCALL 0 39 > JMP ->403 32 40 > INIT_FCALL 'preg_split' 41 SEND_VAL '%2F%5Cs%2B%2F' 42 SEND_VAR !4 43 DO_ICALL $28 44 ASSIGN !5, $28 33 45 INIT_FCALL 'array_pop' 46 SEND_REF !5 47 DO_ICALL 34 48 ASSIGN !6, <array> 35 49 FETCH_DIM_R ~33 !5, 2 50 ASSIGN_DIM !6, 'airport' 51 OP_DATA ~33 36 52 INIT_FCALL 'substr' 53 FETCH_DIM_R ~35 !5, 0 54 SEND_VAL ~35 55 SEND_VAL 5 56 SEND_VAL 2 57 DO_ICALL $36 58 ASSIGN_DIM !6, 'month' 59 OP_DATA $36 37 60 INIT_FCALL 'substr' 61 FETCH_DIM_R ~38 !5, 0 62 SEND_VAL ~38 63 SEND_VAL 8 64 SEND_VAL 2 65 DO_ICALL $39 66 ASSIGN_DIM !6, 'day' 67 OP_DATA $39 38 68 INIT_FCALL 'substr' 69 FETCH_DIM_R ~41 !5, 0 70 SEND_VAL ~41 71 SEND_VAL 0 72 SEND_VAL 4 73 DO_ICALL $42 74 ASSIGN_DIM !6, 'year' 75 OP_DATA $42 39 76 INIT_FCALL 'strtoupper' 77 INIT_FCALL 'substr' 78 FETCH_DIM_R ~44 !5, 3 79 SEND_VAL ~44 80 SEND_VAL 6 81 SEND_VAL 1 82 DO_ICALL $45 83 SEND_VAR $45 84 DO_ICALL $46 85 ASSIGN_DIM !6, 'timezone' 86 OP_DATA $46 44 87 INIT_FCALL 'strtoupper' 88 FETCH_DIM_R ~47 !5, 4 89 SEND_VAL ~47 90 DO_ICALL $48 91 IS_EQUAL ~49 $48, 'COR' 92 > JMPNZ_EX ~49 ~49, ->99 93 > INIT_FCALL 'strtoupper' 94 FETCH_DIM_R ~50 !5, 4 95 SEND_VAL ~50 96 DO_ICALL $51 97 IS_EQUAL ~52 $51, 'AUTO' 98 BOOL ~49 ~52 99 > > JMPZ ~49, ->108 46 100 > INIT_FCALL 'strtoupper' 101 FETCH_DIM_R ~54 !5, 4 102 SEND_VAL ~54 103 DO_ICALL $55 104 ASSIGN_DIM !6, 'correctionMode' 105 OP_DATA $55 47 106 ASSIGN !7, 5 107 > JMP ->111 51 108 > ASSIGN_DIM !6, 'correctionMode' 109 OP_DATA 'none' 52 110 ASSIGN !7, 4 62 111 > FETCH_DIM_R ~59 !5, !7 112 ASSIGN !8, ~59 63 113 PRE_INC !7 68 114 INIT_FCALL 'strtoupper' 115 INIT_FCALL 'substr' 116 SEND_VAR !8 117 SEND_VAL 0 118 SEND_VAL 5 119 DO_ICALL $62 120 SEND_VAR $62 121 DO_ICALL $63 122 IS_EQUAL $63, '00000' 123 > JMPZ ~64, ->148 70 124 > ASSIGN_DIM !6, 'windclear' 125 OP_DATA 'windstill' 71 126 ASSIGN_DIM !6, 'boolWind' 127 OP_DATA <false> 72 128 ASSIGN_DIM !6, 'windfrom_a' 129 OP_DATA 0 73 130 ASSIGN_DIM !6, 'windfrom_b' 131 OP_DATA 0 74 132 ASSIGN_DIM !6, 'mainWindspeed' 133 OP_DATA 0 78 134 INIT_FCALL_BY_NAME 'unitUnifier' 135 INIT_FCALL 'trim' 136 INIT_FCALL 'substr' 137 SEND_VAR !8 138 SEND_VAL 5 139 SEND_VAL 3 140 DO_ICALL $71 141 SEND_VAR $71 142 DO_ICALL $72 143 SEND_VAR_NO_REF_EX $72 144 DO_FCALL 0 $73 145 ASSIGN_DIM !6, 'mainWindspeedUnit' 146 OP_DATA $73 147 > JMP ->179 83 148 > INIT_FCALL 'strtoupper' 149 INIT_FCALL 'substr' 150 SEND_VAR !8 151 SEND_VAL 0 152 SEND_VAL 3 153 DO_ICALL $74 154 SEND_VAR $74 155 DO_ICALL $75 156 IS_EQUAL $75, 'VRB' 157 > JMPZ ~76, ->163 85 158 > ASSIGN_DIM !6, 'windclear' 159 OP_DATA 'Windrichtung+variabel' 86 160 ASSIGN_DIM !6, 'boolWind' 161 OP_DATA <true> 162 > JMP ->179 93 163 > INIT_FCALL 'strtoupper' 164 INIT_FCALL 'substr' 165 SEND_VAR !8 166 SEND_VAL 0 167 SEND_VAL 3 168 DO_ICALL $79 169 SEND_VAR $79 170 DO_ICALL $80 171 ASSIGN !9, $80 94 172 ROPE_INIT 3 ~84 'Wind+aus+' 173 ROPE_ADD 1 ~84 ~84, !9 174 ROPE_END 2 ~83 ~84, '+Grad' 175 ASSIGN_DIM !6, 'windclear' 176 OP_DATA ~83 95 177 ASSIGN_DIM !6, 'boolWind' 178 OP_DATA <true> 100 179 > FETCH_DIM_R ~87 !6, 'boolWind' 180 > JMPZ ~87, ->397 105 181 > INIT_FCALL 'strpos' 182 INIT_FCALL 'strtoupper' 183 SEND_VAR !8 184 DO_ICALL $88 185 SEND_VAR $88 186 SEND_VAL 'G' 187 DO_ICALL $89 188 ASSIGN !10, $89 106 189 TYPE_CHECK 1018 !10 190 > JMPZ ~91, ->313 108 191 > ASSIGN_DIM !6, 'gusts' 192 OP_DATA <true> 109 193 IS_EQUAL !10, 5 194 > JMPZ ~93, ->210 111 195 > INIT_FCALL 'substr' 196 SEND_VAR !8 197 SEND_VAL 3 198 SEND_VAL 2 199 DO_ICALL $95 200 ASSIGN_DIM !6, 'mainWindspeed' 201 OP_DATA $95 112 202 FETCH_DIM_R ~97 !6, 'windclear' 203 NOP 204 FETCH_DIM_R ~98 !6, 'mainWindspeed' 205 FAST_CONCAT ~99 '+mit+', ~98 206 CONCAT ~100 ~97, ~99 207 ASSIGN_DIM !6, 'windclear' 208 OP_DATA ~100 209 > JMP ->226 114 210 > IS_EQUAL !10, 6 211 > JMPZ ~101, ->226 116 212 > INIT_FCALL 'substr' 213 SEND_VAR !8 214 SEND_VAL 3 215 SEND_VAL 3 216 DO_ICALL $103 217 ASSIGN_DIM !6, 'mainWindspeed' 218 OP_DATA $103 117 219 FETCH_DIM_R ~105 !6, 'windclear' 220 NOP 221 FETCH_DIM_R ~106 !6, 'mainWindspeed' 222 FAST_CONCAT ~107 '+mit+', ~106 223 CONCAT ~108 ~105, ~107 224 ASSIGN_DIM !6, 'windclear' 225 OP_DATA ~108 120 226 > INIT_FCALL 'strtoupper' 227 INIT_FCALL 'substr' 228 SEND_VAR !8 229 ADD ~110 !10, 1 230 SEND_VAL ~110 231 SEND_VAL 3 232 DO_ICALL $111 233 SEND_VAR $111 234 DO_ICALL $112 235 ASSIGN_DIM !6, 'gustsUpTo' 236 OP_DATA $112 121 237 INIT_FCALL 'substr' 238 FETCH_DIM_R ~113 !6, 'gustsUpTo' 239 SEND_VAL ~113 240 SEND_VAL 2 241 SEND_VAL 1 242 DO_ICALL $114 243 IS_EQUAL ~115 $114, 'K' 244 > JMPNZ_EX ~115 ~115, ->253 245 > INIT_FCALL 'substr' 246 FETCH_DIM_R ~116 !6, 'gustsUpTo' 247 SEND_VAL ~116 248 SEND_VAL 2 249 SEND_VAL 1 250 DO_ICALL $117 251 IS_EQUAL ~118 $117, 'M' 252 BOOL ~115 ~118 253 > > JMPZ ~115, ->277 123 254 > INIT_FCALL 'substr' 255 FETCH_DIM_R ~120 !6, 'gustsUpTo' 256 SEND_VAL ~120 257 SEND_VAL 0 258 SEND_VAL 2 259 DO_ICALL $121 260 ASSIGN_DIM !6, 'gustsUpTo' 261 OP_DATA $121 124 262 INIT_FCALL_BY_NAME 'unitUnifier' 263 INIT_FCALL 'trim' 264 INIT_FCALL 'substr' 265 SEND_VAR !8 266 ADD ~123 !10, 3 267 SEND_VAL ~123 268 SEND_VAL 3 269 DO_ICALL $124 270 SEND_VAR $124 271 DO_ICALL $125 272 SEND_VAR_NO_REF_EX $125 273 DO_FCALL 0 $126 274 ASSIGN_DIM !6, 'mainWindspeedUnit' 275 OP_DATA $126 276 > JMP ->299 128 277 > INIT_FCALL 'substr' 278 FETCH_DIM_R ~128 !6, 'gustsUpTo' 279 SEND_VAL ~128 280 SEND_VAL 0 281 SEND_VAL 3 282 DO_ICALL $129 283 ASSIGN_DIM !6, 'gustsUpTo' 284 OP_DATA $129 129 285 INIT_FCALL_BY_NAME 'unitUnifier' 286 INIT_FCALL 'trim' 287 INIT_FCALL 'substr' 288 SEND_VAR !8 289 ADD ~131 !10, 4 290 SEND_VAL ~131 291 SEND_VAL 3 292 DO_ICALL $132 293 SEND_VAR $132 294 DO_ICALL $133 295 SEND_VAR_NO_REF_EX $133 296 DO_FCALL 0 $134 297 ASSIGN_DIM !6, 'mainWindspeedUnit' 298 OP_DATA $134 132 299 > FETCH_DIM_R ~136 !6, 'windclear' 300 ROPE_INIT 6 ~141 '+' 301 FETCH_DIM_R ~137 !6, 'mainWindspeedUnit' 302 ROPE_ADD 1 ~141 ~141, ~137 303 ROPE_ADD 2 ~141 ~141, '%2C%0A%09%09%09+in+Spitzen+mit+' 133 304 FETCH_DIM_R ~138 !6, 'gustsUpTo' 305 ROPE_ADD 3 ~141 ~141, ~138 306 ROPE_ADD 4 ~141 ~141, '+' 307 FETCH_DIM_R ~139 !6, 'mainWindspeedUnit' 308 ROPE_END 5 ~140 ~141, ~139 309 CONCAT ~144 ~136, ~140 132 310 ASSIGN_DIM !6, 'windclear' 133 311 OP_DATA ~144 312 > JMP ->397 136 313 > ASSIGN_DIM !6, 'gusts' 314 OP_DATA <false> 140 315 INIT_FCALL 'strtoupper' 316 INIT_FCALL 'substr' 317 SEND_VAR !8 318 SEND_VAL 5 319 SEND_VAL 1 320 DO_ICALL $146 321 SEND_VAR $146 322 DO_ICALL $147 323 IS_EQUAL ~148 $147, 'K' 324 > JMPNZ_EX ~148 ~148, ->335 325 > INIT_FCALL 'strtoupper' 326 INIT_FCALL 'substr' 327 SEND_VAR !8 328 SEND_VAL 5 329 SEND_VAL 1 330 DO_ICALL $149 331 SEND_VAR $149 332 DO_ICALL $150 333 IS_EQUAL ~151 $150, 'M' 334 BOOL ~148 ~151 335 > > JMPZ ~148, ->367 142 336 > INIT_FCALL 'substr' 337 SEND_VAR !8
Generated using Vulcan Logic Dumper, using php 8.0.0