3v4l.org

run code in 300+ PHP versions simultaneously
<?php function microtime_float() { return microtime(true); } function checkValid($minPlain, $maxPlain, $curPlain, $i) { $valid = 0; if ($i % 20 == 19 && $minPlain >= -5 && $minPlain <= 10) { $valid = 1; } else if ($i % 4 == 3 && $minPlain >= 30 && $minPlain <= 45) { $valid = 1; } else if ($i % 20 == 17 && $minPlain >= 31 && $minPlain <= 46) { $valid = 1; } else if ($minPlain >= 33 && $minPlain <= 90 && ord($curPlain) >= $minPlain && ord($curPlain) <= $maxPlain && ord($curPlain) <= 90) { $valid = 1; } return ($valid); } function evalCrossTotal($strMD5) { $intTotal = 0; $arrMD5Chars = str_split($strMD5, 1); foreach ($arrMD5Chars as $value) { $intTotal += '0x0' . $value; } return $intTotal; } function arrayToString($array) { $string = implode("", $array); return $string; } function findFirstPlain($minPlain, $maxPlain) { $curPlain = chr($minPlain); if ($minPlain >= 33 && $minPlain <= 90) { if ($minPlain <= 48) $curPlain = "0"; else if ($minPlain > 57 && $minPlain <= 65) $curPlain = "A"; } return ($curPlain); } function increasePlain(&$curPlain) { if ($curPlain == "9") $curPlain = "A"; else $curPlain = chr(ord($curPlain) + 1); } function decryptString() { $str = "-149 -203 -143 -178 -161 -178 -146 -164 -149 -151 -112 -222 -190 -134 -174 -174 -242 -242 -192 -202 -182 -110 -186 -231 -109 -153 -222 -148 -139 -142 -126 -219 -152 -149 -141 -212 -152 -167 -156 -191 -208 -196 -169 -176 -124 -195 -150 -178 -181 -140 -100 -194 -201 -162 -178 -207 -196 -170 -182 -259 -172 -166 -118 -217 -141 -154 -181 -152 -131 -117 -189 -188 -166 -133 -197 -194 -193 -177 -172 -206 -114 -190 -166 -138 -181 -99 -140 -168 -120 -156 -183 -165 -185 -144 -207 -165 -193 -153 -180 -224"; $Enc = split(' ', $str); $IntMD5 = array(); $minPlain = array(); $maxPlain = array(); $curPlain = array('0', '0', '0', '-', '0', '0', '0', '-', 'O', 'E', 'M', '-', '0', '0', '0', '-', '1', '.', '1', "\n", '0', '0', '0', '-', '0', '0', '0', '-', 'O', 'E', 'M', '-', '0', '0', '0', '-', '1', '.', '1', "\n", '0', '0', '0', '-', '0', '0', '0', '-', 'O', 'E', 'M', '-', '0', '0', '0', '-', '1', '.', '1', "\n", '0', '0', '0', '-', '0', '0', '0', '-', 'O', 'E', 'M', '-', '0', '0', '0', '-', '1', '.', '1', "\n", '0', '0', '0', '-', '0', '0', '0', '-', 'O', 'E', 'M', '-', '0', '0', '0', '-', '1', '.', '1', "\n" ); $maxIntMD5 = 90 - $Enc[0] + 15; $minIntMD5 = 48 - $Enc[0]; //$minIntMD5=215; $IntMD5[0] = $minIntMD5; $minPlain[0] = $IntMD5[0] + $Enc[0] - 15; $maxPlain[0] = $IntMD5[0] + $Enc[0]; $curPlain[0] = findFirstPlain($minPlain[0], $maxPlain[0]); $inRange = checkValid($minPlain[0], $maxPlain[0], $curPlain[0], 0); for ($i = 0;;) { if (checkValid($minPlain[$i], $maxPlain[$i], $curPlain[$i], $i)) { if ($i == 99) { //print arrayToString($curPlain).''; break; } $i++; $IntMD5[$i] = evalCrossTotal(substr(md5(substr(arrayToString($curPlain), 0, $i)), 0, 16) . substr(md5($IntMD5[$i - 1]), 0, 16)); $minPlain[$i] = $IntMD5[$i] + $Enc[$i] - 15; $maxPlain[$i] = $IntMD5[$i] + $Enc[$i]; if ($i % 4 != 3 && $i % 20 != 8 && $i % 20 != 9 && $i % 20 != 10 && $i % 20 != 16 && $i % 20 != 17 && $i % 20 != 18 && $i % 20 != 19) { $curPlain[$i] = findFirstPlain($minPlain[$i], $maxPlain[$i]); //print ord($curPlain[$i]).""; } } else { //print " <<< ".ord($curPlain[$i])." ".$minPlain[$i]." ".$maxPlain[$i].""; if ($i != 0) { if ($i % 4 != 3 && $i % 20 != 8 && $i % 20 != 9 && $i % 20 != 10 && $i % 20 != 16 && $i % 20 != 17 && $i % 20 != 18 && $i % 20 != 19) $curPlain[$i] = 0; $i--; if ($i != 0) { if ($i % 4 == 3) $i--; if ($i % 20 == 8 || $i % 20 == 16) $i = $i - 2; else if ($i % 20 == 9 || $i % 20 == 17) $i = $i - 3; else if ($i % 20 == 10 || $i % 20 == 18) $i = $i - 4; } increasePlain($curPlain[$i]); } else { $IntMD5[0]++; $minPlain[0] = $IntMD5[0] + $Enc[0] - 15; $maxPlain[0] = $IntMD5[0] + $Enc[0]; $curPlain[0] = findFirstPlain($minPlain[0], $maxPlain[0]); } } } return (arrayToString($curPlain)); } set_time_limit(0); $start = microtime_float(); print decryptString(); $stop = microtime_float(); print " "; print $stop - $start; ?>

Abusive script

This script was stopped while abusing our resources

Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/fkuKT
function name:  (null)
number of ops:  16
compiled vars:  !0 = $start, !1 = $stop
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
  103     0  E >   INIT_FCALL                                               'set_time_limit'
          1        SEND_VAL                                                 0
          2        DO_ICALL                                                 
  104     3        INIT_FCALL                                               'microtime_float'
          4        DO_FCALL                                      0  $3      
          5        ASSIGN                                                   !0, $3
  105     6        INIT_FCALL                                               'decryptstring'
          7        DO_FCALL                                      0  $5      
          8        ECHO                                                     $5
  106     9        INIT_FCALL                                               'microtime_float'
         10        DO_FCALL                                      0  $6      
         11        ASSIGN                                                   !1, $6
  107    12        ECHO                                                     '%0A++++'
  109    13        SUB                                              ~8      !1, !0
         14        ECHO                                                     ~8
  110    15      > RETURN                                                   1

Function microtime_float:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/fkuKT
function name:  microtime_float
number of ops:  5
compiled vars:  none
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    3     0  E >   INIT_FCALL                                               'microtime'
          1        SEND_VAL                                                 <true>
          2        DO_ICALL                                         $0      
          3      > RETURN                                                   $0
    4     4*     > RETURN                                                   null

End of function microtime_float

Function checkvalid:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 46) Position 1 = 8, Position 2 = 10
Branch analysis from position: 8
2 jumps found. (Code = 46) Position 1 = 11, Position 2 = 13
Branch analysis from position: 11
2 jumps found. (Code = 43) Position 1 = 14, Position 2 = 16
Branch analysis from position: 14
1 jumps found. (Code = 42) Position 1 = 62
Branch analysis from position: 62
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 16
2 jumps found. (Code = 46) Position 1 = 19, Position 2 = 21
Branch analysis from position: 19
2 jumps found. (Code = 46) Position 1 = 22, Position 2 = 24
Branch analysis from position: 22
2 jumps found. (Code = 43) Position 1 = 25, Position 2 = 27
Branch analysis from position: 25
1 jumps found. (Code = 42) Position 1 = 62
Branch analysis from position: 62
Branch analysis from position: 27
2 jumps found. (Code = 46) Position 1 = 30, Position 2 = 32
Branch analysis from position: 30
2 jumps found. (Code = 46) Position 1 = 33, Position 2 = 35
Branch analysis from position: 33
2 jumps found. (Code = 43) Position 1 = 36, Position 2 = 38
Branch analysis from position: 36
1 jumps found. (Code = 42) Position 1 = 62
Branch analysis from position: 62
Branch analysis from position: 38
2 jumps found. (Code = 46) Position 1 = 40, Position 2 = 42
Branch analysis from position: 40
2 jumps found. (Code = 46) Position 1 = 43, Position 2 = 48
Branch analysis from position: 43
2 jumps found. (Code = 46) Position 1 = 49, Position 2 = 54
Branch analysis from position: 49
2 jumps found. (Code = 46) Position 1 = 55, Position 2 = 60
Branch analysis from position: 55
2 jumps found. (Code = 43) Position 1 = 61, Position 2 = 62
Branch analysis from position: 61
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 62
Branch analysis from position: 60
Branch analysis from position: 54
Branch analysis from position: 48
Branch analysis from position: 42
Branch analysis from position: 35
Branch analysis from position: 32
Branch analysis from position: 24
Branch analysis from position: 21
Branch analysis from position: 13
Branch analysis from position: 10
filename:       /in/fkuKT
function name:  checkValid
number of ops:  64
compiled vars:  !0 = $minPlain, !1 = $maxPlain, !2 = $curPlain, !3 = $i, !4 = $valid
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    5     0  E >   RECV                                             !0      
          1        RECV                                             !1      
          2        RECV                                             !2      
          3        RECV                                             !3      
    6     4        ASSIGN                                                   !4, 0
    7     5        MOD                                              ~6      !3, 20
          6        IS_EQUAL                                         ~7      ~6, 19
          7      > JMPZ_EX                                          ~7      ~7, ->10
          8    >   IS_SMALLER_OR_EQUAL                              ~8      -5, !0
          9        BOOL                                             ~7      ~8
         10    > > JMPZ_EX                                          ~7      ~7, ->13
         11    >   IS_SMALLER_OR_EQUAL                              ~9      !0, 10
         12        BOOL                                             ~7      ~9
         13    > > JMPZ                                                     ~7, ->16
    8    14    >   ASSIGN                                                   !4, 1
         15      > JMP                                                      ->62
    9    16    >   MOD                                              ~11     !3, 4
         17        IS_EQUAL                                         ~12     ~11, 3
         18      > JMPZ_EX                                          ~12     ~12, ->21
         19    >   IS_SMALLER_OR_EQUAL                              ~13     30, !0
         20        BOOL                                             ~12     ~13
         21    > > JMPZ_EX                                          ~12     ~12, ->24
         22    >   IS_SMALLER_OR_EQUAL                              ~14     !0, 45
         23        BOOL                                             ~12     ~14
         24    > > JMPZ                                                     ~12, ->27
   10    25    >   ASSIGN                                                   !4, 1
         26      > JMP                                                      ->62
   11    27    >   MOD                                              ~16     !3, 20
         28        IS_EQUAL                                         ~17     ~16, 17
         29      > JMPZ_EX                                          ~17     ~17, ->32
         30    >   IS_SMALLER_OR_EQUAL                              ~18     31, !0
         31        BOOL                                             ~17     ~18
         32    > > JMPZ_EX                                          ~17     ~17, ->35
         33    >   IS_SMALLER_OR_EQUAL                              ~19     !0, 46
         34        BOOL                                             ~17     ~19
         35    > > JMPZ                                                     ~17, ->38
   12    36    >   ASSIGN                                                   !4, 1
         37      > JMP                                                      ->62
   13    38    >   IS_SMALLER_OR_EQUAL                              ~21     33, !0
         39      > JMPZ_EX                                          ~21     ~21, ->42
         40    >   IS_SMALLER_OR_EQUAL                              ~22     !0, 90
         41        BOOL                                             ~21     ~22
         42    > > JMPZ_EX                                          ~21     ~21, ->48
         43    >   INIT_FCALL                                               'ord'
         44        SEND_VAR                                                 !2
         45        DO_ICALL                                         $23     
         46        IS_SMALLER_OR_EQUAL                              ~24     !0, $23
         47        BOOL                                             ~21     ~24
         48    > > JMPZ_EX                                          ~21     ~21, ->54
         49    >   INIT_FCALL                                               'ord'
         50        SEND_VAR                                                 !2
         51        DO_ICALL                                         $25     
         52        IS_SMALLER_OR_EQUAL                              ~26     $25, !1
         53        BOOL                                             ~21     ~26
         54    > > JMPZ_EX                                          ~21     ~21, ->60
         55    >   INIT_FCALL                                               'ord'
         56        SEND_VAR                                                 !2
         57        DO_ICALL                                         $27     
         58        IS_SMALLER_OR_EQUAL                              ~28     $27, 90
         59        BOOL                                             ~21     ~28
         60    > > JMPZ                                                     ~21, ->62
   14    61    >   ASSIGN                                                   !4, 1
   16    62    > > RETURN                                                   !4
   17    63*     > RETURN                                                   null

End of function checkvalid

Function evalcrosstotal:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 77) Position 1 = 8, Position 2 = 12
Branch analysis from position: 8
2 jumps found. (Code = 78) Position 1 = 9, Position 2 = 12
Branch analysis from position: 9
1 jumps found. (Code = 42) Position 1 = 8
Branch analysis from position: 8
Branch analysis from position: 12
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 12
filename:       /in/fkuKT
function name:  evalCrossTotal
number of ops:  15
compiled vars:  !0 = $strMD5, !1 = $intTotal, !2 = $arrMD5Chars, !3 = $value
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   18     0  E >   RECV                                             !0      
   19     1        ASSIGN                                                   !1, 0
   20     2        INIT_FCALL                                               'str_split'
          3        SEND_VAR                                                 !0
          4        SEND_VAL                                                 1
          5        DO_ICALL                                         $5      
          6        ASSIGN                                                   !2, $5
   21     7      > FE_RESET_R                                       $7      !2, ->12
          8    > > FE_FETCH_R                                               $7, !3, ->12
   22     9    >   CONCAT                                           ~8      '0x0', !3
         10        ASSIGN_OP                                     1          !1, ~8
   21    11      > JMP                                                      ->8
         12    >   FE_FREE                                                  $7
   24    13      > RETURN                                                   !1
   25    14*     > RETURN                                                   null

End of function evalcrosstotal

Function arraytostring:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/fkuKT
function name:  arrayToString
number of ops:  8
compiled vars:  !0 = $array, !1 = $string
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   26     0  E >   RECV                                             !0      
   27     1        INIT_FCALL                                               'implode'
          2        SEND_VAL                                                 ''
          3        SEND_VAR                                                 !0
          4        DO_ICALL                                         $2      
          5        ASSIGN                                                   !1, $2
   28     6      > RETURN                                                   !1
   29     7*     > RETURN                                                   null

End of function arraytostring

Function findfirstplain:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 46) Position 1 = 8, Position 2 = 10
Branch analysis from position: 8
2 jumps found. (Code = 43) Position 1 = 11, Position 2 = 21
Branch analysis from position: 11
2 jumps found. (Code = 43) Position 1 = 13, Position 2 = 15
Branch analysis from position: 13
1 jumps found. (Code = 42) Position 1 = 21
Branch analysis from position: 21
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 15
2 jumps found. (Code = 46) Position 1 = 17, Position 2 = 19
Branch analysis from position: 17
2 jumps found. (Code = 43) Position 1 = 20, Position 2 = 21
Branch analysis from position: 20
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 21
Branch analysis from position: 19
Branch analysis from position: 21
Branch analysis from position: 10
filename:       /in/fkuKT
function name:  findFirstPlain
number of ops:  23
compiled vars:  !0 = $minPlain, !1 = $maxPlain, !2 = $curPlain
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   30     0  E >   RECV                                             !0      
          1        RECV                                             !1      
   31     2        INIT_FCALL                                               'chr'
          3        SEND_VAR                                                 !0
          4        DO_ICALL                                         $3      
          5        ASSIGN                                                   !2, $3
   32     6        IS_SMALLER_OR_EQUAL                              ~5      33, !0
          7      > JMPZ_EX                                          ~5      ~5, ->10
          8    >   IS_SMALLER_OR_EQUAL                              ~6      !0, 90
          9        BOOL                                             ~5      ~6
         10    > > JMPZ                                                     ~5, ->21
   33    11    >   IS_SMALLER_OR_EQUAL                                      !0, 48
         12      > JMPZ                                                     ~7, ->15
   34    13    >   ASSIGN                                                   !2, '0'
         14      > JMP                                                      ->21
   35    15    >   IS_SMALLER                                       ~9      57, !0
         16      > JMPZ_EX                                          ~9      ~9, ->19
         17    >   IS_SMALLER_OR_EQUAL                              ~10     !0, 65
         18        BOOL                                             ~9      ~10
         19    > > JMPZ                                                     ~9, ->21
   36    20    >   ASSIGN                                                   !2, 'A'
   38    21    > > RETURN                                                   !2
   39    22*     > RETURN                                                   null

End of function findfirstplain

Function increaseplain:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 3, Position 2 = 5
Branch analysis from position: 3
1 jumps found. (Code = 42) Position 1 = 13
Branch analysis from position: 13
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 5
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/fkuKT
function name:  increasePlain
number of ops:  14
compiled vars:  !0 = $curPlain
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   40     0  E >   RECV                                             !0      
   41     1        IS_EQUAL                                                 !0, '9'
          2      > JMPZ                                                     ~1, ->5
   42     3    >   ASSIGN                                                   !0, 'A'
          4      > JMP                                                      ->13
   44     5    >   INIT_FCALL                                               'chr'
          6        INIT_FCALL                                               'ord'
          7        SEND_VAR                                                 !0
          8        DO_ICALL                                         $3      
          9        ADD                                              ~4      $3, 1
         10        SEND_VAL                                                 ~4
         11        DO_ICALL                                         $5      
         12        ASSIGN                                                   !0, $5
   45    13    > > RETURN                                                   null

End of function increaseplain

Function decryptstring:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 42) Position 1 = 244
Branch analysis from position: 244
2 jumps found. (Code = 44) Position 1 = 245, Position 2 = 50
Branch analysis from position: 245
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 50
2 jumps found. (Code = 43) Position 1 = 60, Position 2 = 147
Branch analysis from position: 60
2 jumps found. (Code = 43) Position 1 = 62, Position 2 = 63
Branch analysis from position: 62
1 jumps found. (Code = 42) Position 1 = 245
Branch analysis from position: 245
Branch analysis from position: 63
2 jumps found. (Code = 46) Position 1 = 110, Position 2 = 113
Branch analysis from position: 110
2 jumps found. (Code = 46) Position 1 = 114, Position 2 = 117
Branch analysis from position: 114
2 jumps found. (Code = 46) Position 1 = 118, Position 2 = 121
Branch analysis from position: 118
2 jumps found. (Code = 46) Position 1 = 122, Position 2 = 125
Branch analysis from position: 122
2 jumps found. (Code = 46) Position 1 = 126, Position 2 = 129
Branch analysis from position: 126
2 jumps found. (Code = 46) Position 1 = 130, Position 2 = 133
Branch analysis from position: 130
2 jumps found. (Code = 46) Position 1 = 134, Position 2 = 137
Branch analysis from position: 134
2 jumps found. (Code = 43) Position 1 = 138, Position 2 = 146
Branch analysis from position: 138
1 jumps found. (Code = 42) Position 1 = 244
Branch analysis from position: 244
Branch analysis from position: 146
Branch analysis from position: 137
Branch analysis from position: 133
Branch analysis from position: 129
Branch analysis from position: 125
Branch analysis from position: 121
Branch analysis from position: 117
Branch analysis from position: 113
Branch analysis from position: 147
2 jumps found. (Code = 43) Position 1 = 149, Position 2 = 223
Branch analysis from position: 149
2 jumps found. (Code = 46) Position 1 = 152, Position 2 = 155
Branch analysis from position: 152
2 jumps found. (Code = 46) Position 1 = 156, Position 2 = 159
Branch analysis from position: 156
2 jumps found. (Code = 46) Position 1 = 160, Position 2 = 163
Branch analysis from position: 160
2 jumps found. (Code = 46) Position 1 = 164, Position 2 = 167
Branch analysis from position: 164
2 jumps found. (Code = 46) Position 1 = 168, Position 2 = 171
Branch analysis from position: 168
2 jumps found. (Code = 46) Position 1 = 172, Position 2 = 175
Branch analysis from position: 172
2 jumps found. (Code = 46) Position 1 = 176, Position 2 = 179
Branch analysis from position: 176
2 jumps found. (Code = 43) Position 1 = 180, Position 2 = 182
Branch analysis from position: 180
2 jumps found. (Code = 43) Position 1 = 185, Position 2 = 218
Branch analysis from position: 185
2 jumps found. (Code = 43) Position 1 = 188, Position 2 = 189
Branch analysis from position: 188
2 jumps found. (Code = 47) Position 1 = 192, Position 2 = 195
Branch analysis from position: 192
2 jumps found. (Code = 43) Position 1 = 196, Position 2 = 199
Branch analysis from position: 196
1 jumps found. (Code = 42) Position 1 = 218
Branch analysis from position: 218
1 jumps found. (Code = 42) Position 1 = 244
Branch analysis from position: 244
Branch analysis from position: 199
2 jumps found. (Code = 47) Position 1 = 202, Position 2 = 205
Branch analysis from position: 202
2 jumps found. (Code = 43) Position 1 = 206, Position 2 = 209
Branch analysis from position: 206
1 jumps found. (Code = 42) Position 1 = 218
Branch analysis from position: 218
Branch analysis from position: 209
2 jumps found. (Code = 47) Position 1 = 212, Position 2 = 215
Branch analysis from position: 212
2 jumps found. (Code = 43) Position 1 = 216, Position 2 = 218
Branch analysis from position: 216
1 jumps found. (Code = 42) Position 1 = 244
Branch analysis from position: 244
Branch analysis from position: 218
Branch analysis from position: 215
Branch analysis from position: 205
Branch analysis from position: 195
Branch analysis from position: 189
Branch analysis from position: 218
Branch analysis from position: 182
Branch analysis from position: 179
Branch analysis from position: 175
Branch analysis from position: 171
Branch analysis from position: 167
Branch analysis from position: 163
Branch analysis from position: 159
Branch analysis from position: 155
Branch analysis from position: 223
2 jumps found. (Code = 44) Position 1 = 245, Position 2 = 50
Branch analysis from position: 245
Branch analysis from position: 50
filename:       /in/fkuKT
function name:  decryptString
number of ops:  250
compiled vars:  !0 = $str, !1 = $Enc, !2 = $IntMD5, !3 = $minPlain, !4 = $maxPlain, !5 = $curPlain, !6 = $maxIntMD5, !7 = $minIntMD5, !8 = $inRange, !9 = $i
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   47     0  E >   ASSIGN                                                   !0, '-149+-203+-143+-178+-161+-178+-146+-164+-149+-151+-112+-222+-190+-134+-174+-174+-242+-242+-192+-202+-182+-110+-186+-231+-109+-153+-222+-148+-139+-142+-126+-219+-152+-149+-141+-212+-152+-167+-156+-191+-208+-196+-169+-176+-124+-195+-150+-178+-181+-140+-100+-194+-201+-162+-178+-207+-196+-170+-182+-259+-172+-166+-118+-217+-141+-154+-181+-152+-131+-117+-189+-188+-166+-133+-197+-194+-193+-177+-172+-206+-114+-190+-166+-138+-181+-99+-140+-168+-120+-156+-183+-165+-185+-144+-207+-165+-193+-153+-180+-224'
   48     1        INIT_FCALL_BY_NAME                                       'split'
          2        SEND_VAL_EX                                              '+'
          3        SEND_VAR_EX                                              !0
          4        DO_FCALL                                      0  $11     
          5        ASSIGN                                                   !1, $11
   49     6        ASSIGN                                                   !2, <array>
   50     7        ASSIGN                                                   !3, <array>
   51     8        ASSIGN                                                   !4, <array>
   52     9        ASSIGN                                                   !5, <array>
   54    10        FETCH_DIM_R                                      ~17     !1, 0
         11        SUB                                              ~18     90, ~17
         12        ADD                                              ~19     ~18, 15
         13        ASSIGN                                                   !6, ~19
   55    14        FETCH_DIM_R                                      ~21     !1, 0
         15        SUB                                              ~22     48, ~21
         16        ASSIGN                                                   !7, ~22
   57    17        ASSIGN_DIM                                               !2, 0
         18        OP_DATA                                                  !7
   58    19        FETCH_DIM_R                                      ~26     !2, 0
         20        FETCH_DIM_R                                      ~27     !1, 0
         21        ADD                                              ~28     ~26, ~27
         22        SUB                                              ~29     ~28, 15
         23        ASSIGN_DIM                                               !3, 0
         24        OP_DATA                                                  ~29
   59    25        FETCH_DIM_R                                      ~31     !2, 0
         26        FETCH_DIM_R                                      ~32     !1, 0
         27        ADD                                              ~33     ~31, ~32
         28        ASSIGN_DIM                                               !4, 0
         29        OP_DATA                                                  ~33
   60    30        INIT_FCALL                                               'findfirstplain'
         31        FETCH_DIM_R                                      ~35     !3, 0
         32        SEND_VAL                                                 ~35
         33        FETCH_DIM_R                                      ~36     !4, 0
         34        SEND_VAL                                                 ~36
         35        DO_FCALL                                      0  $37     
         36        ASSIGN_DIM                                               !5, 0
         37        OP_DATA                                                  $37
   61    38        INIT_FCALL                                               'checkvalid'
         39        FETCH_DIM_R                                      ~38     !3, 0
         40        SEND_VAL                                                 ~38
         41        FETCH_DIM_R                                      ~39     !4, 0
         42        SEND_VAL                                                 ~39
         43        FETCH_DIM_R                                      ~40     !5, 0
         44        SEND_VAL                                                 ~40
         45        SEND_VAL                                                 0
         46        DO_FCALL                                      0  $41     
         47        ASSIGN                                                   !8, $41
   62    48        ASSIGN                                                   !9, 0
         49      > JMP                                                      ->244
   63    50    >   INIT_FCALL                                               'checkvalid'
         51        FETCH_DIM_R                                      ~44     !3, !9
         52        SEND_VAL                                                 ~44
         53        FETCH_DIM_R                                      ~45     !4, !9
         54        SEND_VAL                                                 ~45
         55        FETCH_DIM_R                                      ~46     !5, !9
         56        SEND_VAL                                                 ~46
         57        SEND_VAR                                                 !9
         58        DO_FCALL                                      0  $47     
         59      > JMPZ                                                     $47, ->147
   64    60    >   IS_EQUAL                                                 !9, 99
         61      > JMPZ                                                     ~48, ->63
   66    62    > > JMP                                                      ->245
   68    63    >   PRE_INC                                                  !9
   69    64        INIT_FCALL                                               'evalcrosstotal'
         65        INIT_FCALL                                               'substr'
         66        INIT_FCALL                                               'md5'
         67        INIT_FCALL                                               'substr'
         68        INIT_FCALL                                               'arraytostring'
         69        SEND_VAR                                                 !5
         70        DO_FCALL                                      0  $51     
         71        SEND_VAR                                                 $51
         72        SEND_VAL                                                 0
         73        SEND_VAR                                                 !9
         74        DO_ICALL                                         $52     
         75        SEND_VAR                                                 $52
         76        DO_ICALL                                         $53     
         77        SEND_VAR                                                 $53
         78        SEND_VAL                                                 0
         79        SEND_VAL                                                 16
         80        DO_ICALL                                         $54     
         81        INIT_FCALL                                               'substr'
         82        INIT_FCALL                                               'md5'
         83        SUB                                              ~55     !9, 1
         84        FETCH_DIM_R                                      ~56     !2, ~55
         85        SEND_VAL                                                 ~56
         86        DO_ICALL                                         $57     
         87        SEND_VAR                                                 $57
         88        SEND_VAL                                                 0
         89        SEND_VAL                                                 16
         90        DO_ICALL                                         $58     
         91        CONCAT                                           ~59     $54, $58
         92        SEND_VAL                                                 ~59
         93        DO_FCALL                                      0  $60     
         94        ASSIGN_DIM                                               !2, !9
         95        OP_DATA                                                  $60
   70    96        FETCH_DIM_R                                      ~62     !2, !9
         97        FETCH_DIM_R                                      ~63     !1, !9
         98        ADD                                              ~64     ~62, ~63
         99        SUB                                              ~65     ~64, 15
        100        ASSIGN_DIM                                               !3, !9
        101        OP_DATA                                                  ~65
   71   102        FETCH_DIM_R                                      ~67     !2, !9
        103        FETCH_DIM_R                                      ~68     !1, !9
        104        ADD                                              ~69     ~67, ~68
        105        ASSIGN_DIM                                               !4, !9
        106        OP_DATA                                                  ~69
   72   107        MOD                                              ~70     !9, 4
        108        IS_NOT_EQUAL                                     ~71     ~70, 3
        109      > JMPZ_EX                                          ~71     ~71, ->113
        110    >   MOD      

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
263.01 ms | 1431 KiB | 38 Q