3v4l.org

run code in 300+ PHP versions simultaneously
<?php function b64d($input) { $keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="; $chr1 = $chr2 = $chr3 = ""; $enc1 = $enc2 = $enc3 = $enc4 = ""; $i = 0; $output = ""; $input = preg_replace("~[^A-Za-z0-9\+\/\=]~", "", $input); do { $enc1 = strpos($keyStr, substr($input, $i++, 1)); $enc2 = strpos($keyStr, substr($input, $i++, 1)); //echo($enc2); //echo( substr($input, $i++, 1) ); $enc3 = strpos($keyStr, substr($input, $i++, 1)); $enc4 = strpos($keyStr, substr($input, $i++, 1)); $chr1 = ($enc1 << 2) | ($enc2 >> 4); $chr2 = (($enc2 & 15) << 4) | ($enc3 >> 2); $chr3 = (($enc3 & 3) << 6) | $enc4; $output = $output . chr((int) $chr1); if ($enc3 != 64) { $output = $output . chr((int) $chr2); } if ($enc4 != 64) { $output = $output . chr((int) $chr3); } $chr1 = $chr2 = $chr3 = ""; $enc1 = $enc2 = $enc3 = $enc4 = ""; } while ($i < strlen($input)); return $output; } function decode($data, $key) { $out_data = ""; for ($i=0; $i<strlen($data);) { for ($j=0; $j<strlen($key) && $i<strlen($data); $j++, $i++) { $out_data .= chr(ord($data[$i]) ^ ord($key[$j])); } } return $out_data; } $config="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"; $key = "i8.co.nz/uprightbuilders/app/class/phpmailer/user71.php"; $data = b64d($config); //$data = base64_decode($config); //echo($data); $data = decode($data, $key); //echo($data); $data = @unserialize($data); print_r($data); ?>
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/4AS5O
function name:  (null)
number of ops:  21
compiled vars:  !0 = $config, !1 = $key, !2 = $data
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   47     0  E >   ASSIGN                                                   !0, 'CAIYWRRdVEsVVxVQUgZSRlJPEh9eUUZJDVUxI1xaXQcJEBkhDxY%2FADtdURxtTSAzPgpwRggQEk9LaV4taVdcVx9NIAsCSk8RT1tZXkcFAFcKHwJdFhwVC0EdMAAfGQwIBQlcTBoeR0lECx1HUlI8WmwmV28rSVYjRCQiMQkQBzg%2FUQk%2FKlVcJk1Gdi1KGRkhTU0NUlYSU15WSA0YEgsHUl1dHwQZGgodIwhDDxNDWxMdBEVTB1hGXVZGMQsBGAAhHVkuKiokQVhNEAYHCAxKFjUSQEVSVE9bEyIKFUsDXVleFlRYSBofFBADCRoMDCkBFwtcEEAMUktcWV9QSVF7Og08H1wrGickbRIAVhhTSQgDL00hQHxFFxMEKE0QUkkaXVlMWFcNCRIEHAdKDDAJTgsDDl0QQB1KSx5bXVhfUBYWKz8zUwZKGyoyCnMYJyMTIzRbRyE6PC8uEzcPOUoXIk9FdghWCEUxUQMWURQDUkJYW0sGCgFKBRtLGEJdRxUGQFh4SQ4ORwJUTBodUFIUUkdbT0stIzwQPRJSFjFlAQs2KzJ%2BND0yHRg6Lww3bVMAIk9RSAgIAk07WktBVF1USBhPUh8ICwsbDhg2DhYMHABADzAYQBcBABofARMHHU9aGlZWQRVXMh8BYHRNIwsnUVx6LwATGRhCF1YBLlpfABVTEQY2B08WDVoDSh5aVkMABUIdBx4CIQEDER9OHB9LEVhcDEsbSl0JFEE3exQMaQRNBwgKAzlXRhNfVhxLKWEAAx1tEFhHADQSNi8TSxlUBjcQSldIFkgFBBRSGxkHW0ICBlwEG1waHkpeJxEVChoGQgcKH1EUEkpDGFlOLDUXRwYtKj0RGhs0T0hGCx1HBlsfNAszT0tpXhp%2BSAISHyIQDEVTB1hHX1ZGCRcAWwQCL0MKFgABF1wwAB8ZDAgFCVxMGh5HSUQLHUNSUj1bRF4EGjkufRxIQFsSEiNTQydKFyJPS30bVggSCT4DFlEUA1JBVFtLHgoQRRobBBxEXkAwBQMHFk0MAgxVCRVGRkhLVCoRWhEEPRMAJjhZIyhNTDI1JxYSflYbN1AgKyZDCkVIIQcXFQpdSllHUxpeTQ5uDwhIGh4XHUkLG0wAAk5fFkhAGVtSQhwLJiUDA10pAQlQMB0qNEBCESUcBhFCaU1cAgYeVglSfAwfDU4DSFheUlYOEAxdXVNKRxkhFx1OCgBPEBxCUlMDV1JeVkc0HjcZJAt2XEtNL0QicGhQXGo%2FTB4NKlQaIFU2FhFPFA5YIBFKQ0sDFVFcW1EHWxoJHQQPDltWMkgYEgweGVJBHUpLGgIaUFUMXBdlJAdHDRIjOCQREV4yUjU%2BFyVNM2s1IlIwKVtWGzdQUg9ZQwoSHyEHFxUKXUpaQlMaXAgEXA8NQxACLV5TKA0DHQYDSgYdHg1aA0ocWlZDQThjER41CysdGCckYy87BzgKR0U2I0QwAAgQKBMsLR5TCBg7WgoRQE4aVlZWSFFFDgMYQwYJExwUSgIbMBQAAQMKXEwaHkdJRAsdRlJSWlB4AVlgG0tZPkEwVBIwBQk3OiEKDFQAaFxGJUxFFAshTk0VSkseW1tcX1BHARwSHFpQQEhQMA5VTwoDAA0VQldLAVNUWE5AHhxRHTY8Mhc4IyR4KC4VQlVcN1VDDCdPFA8gEhcWR0lECx9GUlIdSlwMHE0BH28YAxxHBAcZQE4aVldSSFFqAhI9FjZROzIUXDYqB1oTOA4vPG0NIUMBcAxkBgZWEQVEMQ1LTEFcT0FLU0ULFhAaHgJWUTIKGAwRGUNNDw4eURQDUkNVW0sbMUZtQQFRN3F1Exo%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%2BWF5FUBwYG1dbBAcOAwMPBRkRGkcJGgZVDywHDlIeSh05Fg8aAxRTEEAdDVAZDkkBAF4PPFMSG1tdDgMAHx4YVwwaDgMVXRBQBgEGBlQIABoYRBUbEFsUAhVcHyEYUwNAAhwWAg0AA0URQBsHBBtZQg4EABVJUEEXG0sdDg8cHRMOAhsIK1UBDRIAUhIPDR8EDwwKQQAWTAINBE0RAA8RB10QAEUUWEMOCQcFFWtLBk9DF1pfBx8UAAsNWEIUBwhEHB0GDxYZHENDAgQFFl1QGhULFBoJRQZAVREEHFARQxUUJAFdDgEaWhpaQBtQE0kXARcWABsJRBITHVsSUARAQw4EUwBfEQYbCAUVJYfythkfRQFfXllQER8cGEMaT0oHCFsMUAIBCBwbEQhVQwVbeAgTAwJOEwEeXw9PTQJWDBBrEhBZEF1LTwcACU0SEhpOFWxLGxsOAx8PAR8cAAAAAB4xBgKG5esHDwcfAkgGGEEeFlM5SBEAQQ4DDBxIVQcKUlVUDhgHAgdBDhcHS04NRxocF0kDCQ1CAgAYDAoHBw8YHwVTLwMPFh9WUAkXDAgHjuXUUzwVRTsXRk8DSBMFV10GQw4nWlgaBR4NRxsBAR4MCEQcHQZdQRQwTAhMCB0AWxUJFE0OD0wWE1YcHQJSUF5BFAoJDER3DBoODwhKVRIXHRMNBkIBBkwMEAABVh0jFUpDFQ4GU0MRHBUfHSBMBB8PAhIMBl5fSVAOHxsYVwwaDgYVQRAJDiwOHBwHB0kVCxBSAU4RFVBCBkBBHAEPOUgTAgwMTAoESgdTBBxTEV0FCxtJQUEWT0EIHA8HGRUBE0gaDQIVLh0AUhBaFRkVUyoYQQQSXFAJUB0NDA0WB10QUxYXT0VHHg9QHlFaC09XAQ9TPR8CDEccG0IGDAlEHB0GDwAXEUYNECIcHkpQHB9NDBBMDR1aBhZFOxdGTx4cUB1XDhAOV04ORxQeGUkeBwFCHAdMBUUBA0oCGRFDQxsACg9sGAkEGQgHC0UFRgEbRQtYRA4HCQNJWksXG0scWlsdERxJFA0MQgIAGAxFHwoPCQUDTQICBQ87QAANUBQOHEwJG0QQF0UfThFGHxoeEBhdFwBcBx9cVQw7SQUNAEIMBhlEEhsfQ0EdGVwQTAwWDiULFEwPE1dQBwARCU8HAAlMJExHEgZcV11lEkESWxgcTEtcG05TT0sfRl4TSR1bCxkVU1cSSUEYRFJSFlBJEFdSU0ZTGVIDEVI%2FBhVJRFMYOE8HDkYbF1IVNw0aBhwHC0QZPBZYQQwNVCoCEgcSUyEdGQ4KFSoEAVsJOwoGS2RcFw0eHUR9Fh9LHFp%2BABkRAhspVCQUGhgYMBwSQRIHFV0GCB0OCFNQFQtNLgcJRTxGEhsRUmRFTx4MDC8STQg7QQATSB0EDiEIBx8XBRUuVFUGClMyHhFbAAQdNVBMGxQjCBkVLgQcSAkwDRdWRVIxDhYIUVwfPEsWMkAaGwcZGyBEUh4cHCIMHBdKEww0QBQCVSccQRkPGBkcSRckHkoHBxk%2FVkVNGBQzCFRCHz1LHw9KBgQOJwgcHQQcCg0QDB0dUywVA1wCCwQPPlwXFVJWCFNdXgEVR0RRSBVKH1AUQklEHUMTDlpaUzoeF0kbFQ81FAAYDQsVU1MxFR5LCgIGUw9hFR9QERwSJQsBWxQPNAdeUkUMLhEaTFIrAFoSL10SFRwdGzsBEhAbTDUQGxBEHTFQaQIfFQ8mQREGAxoEGwkBDlIOD0UPTBFhHg1QJ1FJCxsOPQ5OGxQOL00LHzYaBwUDDQYPZw4fG1oTECNDQ1sJFCMDAB0PDQ5pVhAODmRUVgwqEQdfUiAHSw8OUzQWFAgOGggxEBEkCwoZBl8dOEAfCBkRNRpBFA0CESUGGwtGexodDBVfRVNQEzEFXVwXE2MPDkwdDDEICwQIMBAYGQEWBg9hDgQZSQoPAAcaQB4UPQgSGg0CF1M4AAIPFQpTDQ%3D%3D'
   49     1        ASSIGN                                                   !1, 'i8.co.nz%2Fuprightbuilders%2Fapp%2Fclass%2Fphpmailer%2Fuser71.php'
   50     2        INIT_FCALL                                               'b64d'
          3        SEND_VAR                                                 !0
          4        DO_FCALL                                      0  $5      
          5        ASSIGN                                                   !2, $5
   53     6        INIT_FCALL                                               'decode'
          7        SEND_VAR                                                 !2
          8        SEND_VAR                                                 !1
          9        DO_FCALL                                      0  $7      
         10        ASSIGN                                                   !2, $7
   55    11        BEGIN_SILENCE                                    ~9      
         12        INIT_FCALL                                               'unserialize'
         13        SEND_VAR                                                 !2
         14        DO_ICALL                                         $10     
         15        END_SILENCE                                              ~9
         16        ASSIGN                                                   !2, $10
   57    17        INIT_FCALL                                               'print_r'
         18        SEND_VAR                                                 !2
         19        DO_ICALL                                                 
   59    20      > RETURN                                                   1

Function b64d:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 82, Position 2 = 88
Branch analysis from position: 82
2 jumps found. (Code = 43) Position 1 = 90, Position 2 = 96
Branch analysis from position: 90
2 jumps found. (Code = 44) Position 1 = 106, Position 2 = 17
Branch analysis from position: 106
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 17
Branch analysis from position: 96
Branch analysis from position: 88
filename:       /in/4AS5O
function name:  b64d
number of ops:  108
compiled vars:  !0 = $input, !1 = $keyStr, !2 = $chr1, !3 = $chr2, !4 = $chr3, !5 = $enc1, !6 = $enc2, !7 = $enc3, !8 = $enc4, !9 = $i, !10 = $output
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    2     0  E >   RECV                                             !0      
    3     1        ASSIGN                                                   !1, 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789%2B%2F%3D'
    4     2        ASSIGN                                           ~12     !4, ''
          3        ASSIGN                                           ~13     !3, ~12
          4        ASSIGN                                                   !2, ~13
    5     5        ASSIGN                                           ~15     !8, ''
          6        ASSIGN                                           ~16     !7, ~15
          7        ASSIGN                                           ~17     !6, ~16
          8        ASSIGN                                                   !5, ~17
    6     9        ASSIGN                                                   !9, 0
    7    10        ASSIGN                                                   !10, ''
    9    11        INIT_FCALL                                               'preg_replace'
         12        SEND_VAL                                                 '%7E%5B%5EA-Za-z0-9%5C%2B%5C%2F%5C%3D%5D%7E'
         13        SEND_VAL                                                 ''
         14        SEND_VAR                                                 !0
         15        DO_ICALL                                         $21     
         16        ASSIGN                                                   !0, $21
   11    17    >   INIT_FCALL                                               'strpos'
         18        SEND_VAR                                                 !1
         19        INIT_FCALL                                               'substr'
         20        SEND_VAR                                                 !0
         21        POST_INC                                         ~23     !9
         22        SEND_VAL                                                 ~23
         23        SEND_VAL                                                 1
         24        DO_ICALL                                         $24     
         25        SEND_VAR                                                 $24
         26        DO_ICALL                                         $25     
         27        ASSIGN                                                   !5, $25
   12    28        INIT_FCALL                                               'strpos'
         29        SEND_VAR                                                 !1
         30        INIT_FCALL                                               'substr'
         31        SEND_VAR                                                 !0
         32        POST_INC                                         ~27     !9
         33        SEND_VAL                                                 ~27
         34        SEND_VAL                                                 1
         35        DO_ICALL                                         $28     
         36        SEND_VAR                                                 $28
         37        DO_ICALL                                         $29     
         38        ASSIGN                                                   !6, $29
   15    39        INIT_FCALL                                               'strpos'
         40        SEND_VAR                                                 !1
         41        INIT_FCALL                                               'substr'
         42        SEND_VAR                                                 !0
         43        POST_INC                                         ~31     !9
         44        SEND_VAL                                                 ~31
         45        SEND_VAL                                                 1
         46        DO_ICALL                                         $32     
         47        SEND_VAR                                                 $32
         48        DO_ICALL                                         $33     
         49        ASSIGN                                                   !7, $33
   16    50        INIT_FCALL                                               'strpos'
         51        SEND_VAR                                                 !1
         52        INIT_FCALL                                               'substr'
         53        SEND_VAR                                                 !0
         54        POST_INC                                         ~35     !9
         55        SEND_VAL                                                 ~35
         56        SEND_VAL                                                 1
         57        DO_ICALL                                         $36     
         58        SEND_VAR                                                 $36
         59        DO_ICALL                                         $37     
         60        ASSIGN                                                   !8, $37
   17    61        SL                                               ~39     !5, 2
         62        SR                                               ~40     !6, 4
         63        BW_OR                                            ~41     ~39, ~40
         64        ASSIGN                                                   !2, ~41
   18    65        BW_AND                                           ~43     !6, 15
         66        SL                                               ~44     ~43, 4
         67        SR                                               ~45     !7, 2
         68        BW_OR                                            ~46     ~44, ~45
         69        ASSIGN                                                   !3, ~46
   19    70        BW_AND                                           ~48     !7, 3
         71        SL                                               ~49     ~48, 6
         72        BW_OR                                            ~50     !8, ~49
         73        ASSIGN                                                   !4, ~50
   20    74        INIT_FCALL                                               'chr'
         75        CAST                                          4  ~52     !2
         76        SEND_VAL                                                 ~52
         77        DO_ICALL                                         $53     
         78        CONCAT                                           ~54     !10, $53
         79        ASSIGN                                                   !10, ~54
   21    80        IS_NOT_EQUAL                                             !7, 64
         81      > JMPZ                                                     ~56, ->88
   22    82    >   INIT_FCALL                                               'chr'
         83        CAST                                          4  ~57     !3
         84        SEND_VAL                                                 ~57
         85        DO_ICALL                                         $58     
         86        CONCAT                                           ~59     !10, $58
         87        ASSIGN                                                   !10, ~59
   24    88    >   IS_NOT_EQUAL                                             !8, 64
         89      > JMPZ                                                     ~61, ->96
   25    90    >   INIT_FCALL                                               'chr'
         91        CAST                                          4  ~62     !4
         92        SEND_VAL                                                 ~62
         93        DO_ICALL                                         $63     
         94        CONCAT                                           ~64     !10, $63
         95        ASSIGN                                                   !10, ~64
   27    96    >   ASSIGN                                           ~66     !4, ''
         97        ASSIGN                                           ~67     !3, ~66
         98        ASSIGN                                                   !2, ~67
   28    99        ASSIGN                                           ~69     !8, ''
        100        ASSIGN                                           ~70     !7, ~69
        101        ASSIGN                                           ~71     !6, ~70
        102        ASSIGN                                                   !5, ~71
   29   103        STRLEN                                           ~73     !0
        104        IS_SMALLER                                               !9, ~73
        105      > JMPNZ                                                    ~74, ->17
   30   106    > > RETURN                                                   !10
   31   107*     > RETURN                                                   null

End of function b64d

Function decode:
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 = 5
Branch analysis from position: 32
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 5
1 jumps found. (Code = 42) Position 1 = 22
Branch analysis from position: 22
2 jumps found. (Code = 46) Position 1 = 25, Position 2 = 28
Branch analysis from position: 25
2 jumps found. (Code = 44) Position 1 = 29, Position 2 = 7
Branch analysis from position: 29
Branch analysis from position: 7
2 jumps found. (Code = 46) Position 1 = 25, Position 2 = 28
Branch analysis from position: 25
Branch analysis from position: 28
Branch analysis from position: 28
filename:       /in/4AS5O
function name:  decode
number of ops:  34
compiled vars:  !0 = $data, !1 = $key, !2 = $out_data, !3 = $i, !4 = $j
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   33     0  E >   RECV                                             !0      
          1        RECV                                             !1      
   35     2        ASSIGN                                                   !2, ''
   36     3        ASSIGN                                                   !3, 0
          4      > JMP                                                      ->29
   38     5    >   ASSIGN                                                   !4, 0
          6      > JMP                                                      ->22
   40     7    >   INIT_FCALL                                               'chr'
          8        INIT_FCALL                                               'ord'
          9        FETCH_DIM_R                                      ~8      !0, !3
         10        SEND_VAL                                                 ~8
         11        DO_ICALL                                         $9      
         12        INIT_FCALL                                               'ord'
         13        FETCH_DIM_R                                      ~10     !1, !4
         14        SEND_VAL                                                 ~10
         15        DO_ICALL                                         $11     
         16        BW_XOR                                           ~12     $9, $11
         17        SEND_VAL                                                 ~12
         18        DO_ICALL                                         $13     
         19        ASSIGN_OP                                     8          !2, $13
   38    20        PRE_INC                                                  !4
         21        PRE_INC                                                  !3
         22    >   STRLEN                                           ~17     !1
         23        IS_SMALLER                                       ~18     !4, ~17
         24      > JMPZ_EX                                          ~18     ~18, ->28
         25    >   STRLEN                                           ~19     !0
         26        IS_SMALLER                                       ~20     !3, ~19
         27        BOOL                                             ~18     ~20
         28    > > JMPNZ                                                    ~18, ->7
   36    29    >   STRLEN                                           ~21     !0
         30        IS_SMALLER                                               !3, ~21
         31      > JMPNZ                                                    ~22, ->5
   43    32    > > RETURN                                                   !2
   44    33*     > RETURN                                                   null

End of function decode

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
183.18 ms | 1423 KiB | 29 Q