if(ini_get('xdebug.remote_enable') || function_exists('xdebug_break')) { exit('Debug mode detected.'); }
$expectedHash = 'd6d154b81b1dfaf5a6083eb2a28a1203';
$expectedSha256 = 'b38589992ca02ff35e141a6d9745bd391f6b98bed5885ae1d897dfe5ed08d36f';
$hmacKey = 'n4kqIVNT95IHIPlWUo69N++jpCz6OVCU46OpYXteC8s=';
$expectedHmac = '8f2fbdc475c22bba43baefa2c2f57bf70ccd8c6e0d83daad102f418bb8dead7c';
$yphOqetp = 'e3qHzREG4LzOEKgQpCRNnXTE0r4MPY7ZqOCOux1DKmJLNVRV';
$WKQJseld = 'tTM6NqIAkjR/34r55R8iguTBFL0xZ3Q7xvoYBo3a';
$NTmjfQlf = '5HkLljUOBjL812WevJVN8BXslPWG1CPi';
$PEHDVjws = 'EPtmIabs2x01YJqBZw45oaSW0cpI86QCCRcaurO5i9r2W3Sb';
$TqIbIOOx = 'ko5LZMx4Eam0tY04QISGW2IGnZ3Hmx/cGEdGYn4';
$khlQUvDf = 'fwtoU4Ez=RZmiUoMRXiZqo2xmefLBakTcrE';
$MbZuoeyh = 'Glt1dUK258QFipBocIcPc9V0BJXSrCHk+W';
$yphswWHp = '4MpV2h1dsQqoj7mm8xcQ/32eYTS/dJ3V';
$YsAgWiJA = 'xI+H1xv4ICaoIMj+UTJIQCYRbnphu=h9Vfmas=V/A4haI/Czng';
$TnuJuSwe = 'tMko1o3=kOfqizBkBbSh+neORonF089UVmNNge5k29U';
$zJPULYUr = 'obIHFd8pMQB=pUprkldEH43ht43ubKxqR=D';
$GfTNifjc = 'x1EXiQ1eNqjEfrjnCWna+OLRwUFAb7kjAMaC69AvrVI9T3gd5';
$bVWvYNpu = 'srpUPohg7CuLZaD+KJI+hBpvAaxgnnE7o';
$qdELrlRK = 'EuvlczBQZqZPtJzoiCm/rElz8lTsB1K9hGKpwwKKETdSS';
$xiwxSWiK = 'jZYnR/HcJCzBGatzSDMGQFtK0cRTcFux+7WbpUz0';
$wSIduEjy = 'mZQv4TWmHY2YX4nQ9m=RHo7UsEzLQju';
$pClIxcgd = 'XD7bIYmcGBvstn69pvVdlscpaktmuLKT4LKc3cKD88ubNUJ';
$feMkOsRL = 'duxicsnghtiSUtxwp2UGeXQVmrZVtMbf8dUVhTVW+2pLV9c8';
$nBOaklMx = 'AoWgdqKRiiBe22ZlhG0WnWrHicG12B7AlnP/cRIPmr9';
$jVsaFFqr = '7QvjGN3lL0Je8AdhvHBzsefDkq1tCQUfiSMeIbT3QgvkHls=KG';
$mtXyTnbr = 'DJ49=b=SK=9wrC/NARkHDVNmGqAXwtuL2HiPfhYvaFkUI';
$qwzNvyZX = 'bGK1LbOoOz3nqTR6Cw22+jbvE/45FoCg+Z4Tr1ozUKcul';
$epVONDlL = '9gKfLuctVK5IzXbtBSsV8J2tvORYJUTStz+kiINGNT3+ebqdt';
$otaaKjDW = '=ftJbEi+xqjLh+OjuBY+v/vgGvMXHH4vx7lodxRFG6rbAj6iDA';
$TDxGANLw = 'nO/GL2PESH3YTde4d3iF+tHqRAIkDq6dN66KSUxmJZLaA582I';
$aCHnUhwE = 'eZdPtm5foRm3r7PmUzDZr/hlUw/dKhmNeUUePpm7d';
$PBXOYpJX = 'IYZ5e3xYa6jo0DqN9cZhMC3tz3TuQc7e2AYSm1j5nhv';
$qiShiMCo = 'ZImPnIxBg3UwQVMYkAxcNI0n1EuiAlEWW1szoquoM';
$RHTtzBfQ = 'pmfvEa/NabhwPHkiKio9g3KCcpG+z4wr1zENkKRLJ93+WuPJPq';
$NghggAHn = 'K/HwMP/3cEFvgHS/NJo=Xq6iPmHqKWawGlRGkmStJfflNkWN';
$mtCFqrGJ = 'bdvCZ5mW3YICaO/R06lYe4cV+G1Kcf';
$opvZwOMC = 'YGoi+BgG3fi3OvAddSrFOfqsYgEWLTDgbOxR';
$qjWxHuvl = 'IhxhfweT=/0i+OKxMsnP+hH1arAlH6E';
$lraakoZN = 'WnWK5G=6RSh9v9PWP0Ik9B0vt9LZQkkA2Wv7VuFoPBM6tJS';
$zTBNvXMw = 'gcpdgRM2bkm7LPNTuzGFxjkrVSEiJCXslzVxtDZ+a4bkN1n=';
$CZlQDsPr = 'j/lnlUCThJKg8BhGBhDEDGkB2T/TD2wbQP';
$CEbQgfuv = 'X/8eWT4g/vAVwkRq1peMI4c2fwZzP55LdSOl1MwMYK8R9T';
$IwKOfSZb = 'dPcaqjEDPHgXI+gkj+Gt9tkA2aTXIeUg+DPlQmPg';
$FoRzyDqf = 'lxrSEbh89KLifU35DadMPbApc03YIDj4Ud1M8bV6S+V';
$sNOpCnIB = 'K1RF34l0xH+KRNxqHuVEA=AKmvcm72c4J76';
$qbYgKeka = 'oGtJoDvkHFASE+Z8gaKIzfEwZZIHrqPLXhbDWH4ze4sC+Ti';
$CPGwTlzb = 'ocZafRMDI5KdYVOn6IA7T9wL/1DoumbJVC+8jVimXLF5=f9de';
$dygeBANl = 'd7Q27DZfAr7MjLwXPgmkrX9LK2UekF+';
$SWMuzoJr = '=/kUCxQo4ViRZv51=jDO2V4MkkS0Oz361TvVZwbNImsH';
$ExLJETBd = 'pHAuCzjZhUKZuJRm8xthMDt=oH7Sr2ZAp';
$DuMiqpJz = 'L+3TEe=BMxQq1qof4PjQKkN/jVn4R+Hwm=';
$bLtADcrU = 'VHv57SNb+WjQckr9lS/2Txq3OVV9fqJ1L4qK';
$dDhCrwQE = 'LfWW4Z1NNw+ETC4FxJG2wxc3g8LrwlPqzEKEK';
$VXWpMsZJ = '1qCjPFaztqTvLdx9nGRaJCxkwKPqBpihm=dFpZ0CZP5';
$PDcBwoSV = 'o6jaYtqOke4YLFOv2e7z1bGZ2HkvKo';
$ZbElPnRx = 'H4SXDVs5wgVUSfBa74ogbIQRoPoOZ+s0Zd13655X';
$KJkplepl = 'AttZWbQWzEgjAXXdpeC8itFTBkib85f3YBGg3zbjWdc=bEp2RJ';
$rNcXATiG = 'QGKtRhbhSw+SrawWV4=jAkc2ZPYpra7d+NsBX';
$RwomiTpm = 'WaKj1vv6MLxdlc4vLwsAFlewiMUn1aWwDYkCQ9DR';
$qHHpAsCH = 'VeTP35NNoWz16dg9Huzkk7jLH4AlR2DS1z7lP9';
$GcLPDQUE = 'noxo1M=fuTMzAhxewXTr2WOXQOlhvdiqvRWGO';
$fdmgOqdg = '4LubNQZ/ve3rlnKZUGw724ibIckNh3s/jAPK3sgEuUEwiOE7Ka';
$OQLOEdTe = '+4iPlrAudzXimgejnq6JS/pqj0K2XnRTCrcvGbsIub2aWV1l+';
$fEBHOSng = 'Q7b+F6vDfeCmZqipsi0aP2kSE9X45/3';
$aSjIiUed = 'IGeYZv2pDpaEG9EmgSDqRdS+x/6Baz5=1LxqE1vWKD=SS4FtQD';
$IxZDijMz = 'SC4ID6LkbNCCglkBqELtkXoPd3TEItVgUMX9E';
$AhFReoeu = 'TGqcmWMTHxFrhDoWoEvLWqkhlxMKBwVx3sWTJR';
$IFRtffTh = 'LCKJMUNMALrqmAF0tJv+pAfAcgwtIzinWmFDft';
$yQzDTfxV = 'PZvvTTcFOFR7POnOcpVHMYQ9qqESHLRCL';
$leOTQytd = 'z4ToMMDEdoB69VdqZLQDM7ChXa0RsrWSXr=oThGJchuljAxe';
$RJUAmUyV = 'xOIS+THRaT6=a3OSOlVWgxSEMJSKZ+J5Eg5SBUrqBBh';
$oyGAuLVM = 'fGFEM7pVgxZTbwiM4+rI6ddiMmxn6H7npW2QXIxbtT4S';
$fljjnMoh = 'iepwTBYN=fxfZhqnx43URDacAOwAvZm';
$ZbrkcFCX = 'iI8=wO8T=wOKhPkuTAlvYHcRmElCmOi1Ppsbv0F5';
$IIZIVeUk = 'TKiBe64NBzfQOZxDAE28SXdHBOqQDw3F2Y8xPG0/bbGMX=8zDV';
$iALpbaDt = 'ZSrdrzERca0ikM1cRhrPhw1lgxkCGX2zqwvvefEWjAT9nNSqp';
$newGoRoC = 'fce=RtFQwzXgTW6oRfRmxVqVSd9hkx+mpO2w';
$zlpQjNXh = 'hWPkJ7Bj515eWTN/5E+KXwu2cHmIwFMkTa9eZw';
$UDEiIfyi = 'cPXCSnUX1Utv5H83gd6gQfKUgbVEk0cN4';
$aKMhZjwe = 'MB=b2TafEIfJd/vvPqd3L0d7UZaSWLdLYX';
$FYnGTgCz = 'AlcYF9FaiDp3s/PPjqx4X6jPTadOkfmkX';
$wkRHREeS = 'TiKjob3wRpUvFLarMjuvzoVn7iqK+KkU';
$cfXkSdhs = 'ein9k2XRW0BhgBn9HtOrxnWVAYTGEITlheR3aQW=Va/WU';
$VbxIAHql = 'ZvnBO8aAv=9EQQJRhK1eDVkaWWoj1Mump2KP+zBW';
$KMLPvTdX = 'X1Rv5nxWl5NqHiIansA5EThL7SqaiZcR6s6r+8=k290SlNq';
$eDqCxigl = 'lTgzlTtkg=UzfYCgTneEn6WCCKL=7gY+sub1IvlugS';
$WYDGzjmR = 'oMi8AiIQIYGFn45rjbgfzP4/YC61ExxJVVXi=Pe=';
$sYoKzQje = '9uC5zRfA1A0X7tJSDQ+35Ew6ld0C0ZXKoeIiX6KwcMkU+2';
$EhbuqppF = 'v=gBeFH0ndPmFYc91i+/PxnDTrUJzYP84qSO';
$LYPeLsKH = 'SEjZuAHWwzrzs/ZkFzvpM+OhoOZEDYCuEDGdhBIisoIfh5a';
$mevooLGM = 'A4p6uXK1fuUIULPlxBOZuulC3oliFXwHc';
$VfyOTDvG = '9NIx2mpqL+LCqG2H5zFFSbo9J5d1S7kUM0Z7YLGfdXBvwC+';
$CeUOXlAN = 'hSghiQhxnlMkdA2U6daLFt4JdIW=a6liGqEGRKKUTG/c6kZ';
$vBjvHCJC = 'oF7xeqXWYTJfhueBhJL6RGcHNmau8HSWS1Dx';
$mhwXjqEf = 'vKEdcdQHjSzD1b=qompTkk8FmwK6/80=bNiTU9OEgA8EHI1aBs';
$dLondNXw = '2GjRdtd+Bi4MvTtwIBvUlbYUo4D4cqSajnpHTggY=RV';
$XZtzKybI = 'qMnXdzxsL=0DUjc20iZBJ/lCYZMe9wkakwcl=r697TdEgK';
$uPUcHfXJ = '1qtorYMSYmrBSts8cUgHuY+0kNRjsYe5E1wkheCw';
$tvXzEZqq = 'edor3hSE=4zRFGnlCV9RYwspn=nfMlGFR5mCvZzZn2+txb';
$NPTxuMrL = 'd9MCGhAogUNWhcHGxJv21j9b=a9wO7N3Pr4BndeoHqzDQRL';
$XrVIcTYL = 'HXw9N6LYp3LTHFoEM+lSJmvgpQARbFhUkZ';
$zycAzXPx = 'pqzCMLter7zbY+KsjQL69f06GPJ=kPMTCz3GXJwg+==Kjc07';
$zcCjgkYE = 'GJYR8S0NdBLixFbpAFH2G/290SkHlr=Qiz';
$kUvyIGJH = 'ZeAbOEN4olbO5AwSospK9p=/sqm1sH+CZdt=VgDaP';
$ymfbcPmt = 'fbW9Aal79m2ABw6Fnbvdnw=fW6xwsExAQ4I';
$joNMEMKK = 'mHmmGEFoblcDvwGVE8AC5H9F6HHEz4tAG2g';
$qZftyNGj = 'ZG46RgVBv828DmqfGRqr6VTqmr6mCuiXKQZKm3Ws';
$vMQSgREx = 'XUESsLd572hEVA=3u9hE/RrxIYaGI7klzqXocJH';
$aumTuUyv = 'kjT3xiq1Mx1+wh2+RtmNBtz0sFmFDJbgmTXc';
$waTOhMhO = 'gF+HG3KNiJvK2xYKUGReRQ4FOoxUABqKxVMZzQnsPgxoMsA';
$axEBEQnF = 'jx1VuJSRDu2=OrHkM+pT/5q8kPUC4XRC';
$qPQFIsNE = 'BCPCQxVfeSce3FGpcnKB/sQT0sV1Jbw3of34rgYTud9IHkPr';
$GXsXnlgf = 'mZx43d3XNvDsCzZM/i+qvlWx8FhMfV9KQfC1wrBc';
$DtxCjpbc = 'wb746ikzLwZhD09PHPMOfQUehw7JluDAJ';
$lymmbGhc = '7T3dEQz9HggzF3JdRCMlnMbvGXMkTezvFuZPYLBqLsnuAI/';
$qbiiRwCO = '6fD6RgcT2tsz1Z3=z/2hikBVWh6qehMW4/kzXIIRFET';
$IpTcIavH = 'ClTorTReJSiW48n0ddwgzNRPQJ6/G3pBzLgJN5izHz43koDRq';
$Dqiamsom = 'q7D8jgXxsHdT1RcMashb+g=sQxzz1pAcrkvof';
$RnayjBIQ = '8061=/24Cu2if3vuPOqLRdrdM5FY9PM';
$mCcnmzKb = 'DwX4rjO4hTR7vnF/nRpF3mro9R6umW3KV/xwoSZxX0HBk3odBw';
$vKqAuWXm = 'ESkrUrhkUIhW8dt9aqtMgkmgJrUOCraLLZRYK0NsvhNdzjaq=b';
$oXSwBJvs = '3kR=LahVC5slR0ovbDTu3kUe8E3JvPOtlrIAH/YMA';
$ocBnDEau = 'KAn71XLHRSKYC++VUftvQP6Vd/zHF1V1z7mskVke/L464';
$qcNEvEKP = 'GpAbIQ=ri3FqbYHGr5tZbH/hVRpih5VJvWhK=HZqfUL2k2';
$BuLnHKut = 'FiXQWfgVCllQ71ZELwvsWC+8N6=1RRMtDSUnO0W';
$igRUGyki = 'dV5fQoVTW+W2CFqDKIrOsDq9M0xmv9lg=N1';
$fwbjaqnd = 'l17cchp8U5nJNcI4CTJZfo+ppVgKrJ3F3NG/oe';
$cZaBiQiw = 'SefuKY5RzN4aa20Lc2RE3d9szaJ/WqNlrT1S';
$rniYaCKg = 'eTKToKPJIZe10frCfICMAGaxe3vKN64fYhaXCHqXuvnqSN';
$jNLecXrN = '7quNB7vSE3eCGQ1d3pfxeID4QkAOQBd1rUDUxAB';
$nTnxEwfA = '/kORAOiWJlskEvfMw59sVewbI7Oqhc64WlISrG/';
$RKvEWaFN = 'v=vCh+00mdoVql/c2QVYt=xGT9cx0vtfb5';
$xQHiPPAo = 'b5w2c0hHW==m2bRtYEN0u2kBDhVNNCKrDjcdd';
$sDAkxGXW = 'AuZTbUSPbkv6JPF0eqc5/D1IkhM1Pjsxc1rbU9W+0G';
$bEHhdkPO = 'waRFPM10L=0pNzQYvsDFNR4T991NpH9O9mBTcxb8Ui';
$ZezFRBTK = 'HXDl/=pNDM=zeeE=7SHaIC=HvJTGhmkJRpwvXdS3n';
$OoURDXcV = 'JvUC0K+DrpuQoV3El43uYmjkbcdZmUbXVxMxRYs2zL=3sh322';
$jkOAGFmf = 'dwuBiB4L6jtVoEJNrrcFpgYFVk+/r=UTqcLUT8ZDrf';
$rDncsWef = 'aHibv2SFBYewpOQ0ffgMx7i/2ObHKLZCYc6W';
$OhnYNndc = 'c=XLu=AwsTiUWsa5LpK6K+6MK1Bk8332evdc6+VIsHeq4YXTA9';
$DpPiVNCr = 'Ak8rZpSjmrWtWH/Xr6nIoG2qYjDOMnn2Fg+i0';
$IrbDcsID = 'xnjlk3qS=Pum5rnkFJIc98pbo3OlZ+dslxhrJrxGPCkRihA';
$zrZtzyMo = 'HOlddLsbsh4k/R/9qV2eOQOdp1xbh4L=F+KepD7';
$cpMdtCqp = 'Z+iPVmsQLLWQ2cnCmEUCldZrjZTgwZcYbMlbTSiYBe8Rx9w8';
$UUMcXuNt = 'gp5A8Yvopg3Xit1MTzDQ29bWEDOrxoYGHU';
$hlFnDWca = '5QLdDjQ2KqRWrieUL0JMd/1kLS4L20D/dvLLB=5KYxubarRXbv';
$anzLtyHh = 'jlUpLYP7xQtt6G3doT76ITbrCsQLFP9Z5vbFEIcZckiCY+';
$mGWWQvzE = 'svqPAgxiQXI97jmWqTR0tnmFtuU+YA';
$ASGHuZMA = '=gdAzbamEUOx70DiDgzG/4fB4YYzB3vWXlwO6AZRLxQOdxJ';
$VKDTJiAE = '43xiPWdauFUG3KWXt5/Y+M3l2ETStl7qQ5ap4';
$skhrIezi = 'E1Wunz/j=DPwV5pHvuERkir4NknG2R4vwCAYPpdUG';
$oPMhmRMV = 'YdNYoAGxMR8P1Ahml6wxgEa2kj6RwAai0xa0OInNMv8E5ThQwj';
$EIDslvsv = 'txkKtRXIQ8WgRhHrTHNvCAsdEBe5ip=BU2+NtTilnjf3NH=D';
$CWCRgnKL = 'uokz4DvbrfXNMNgPJP9tJwxNuKGb5=8';
$WdRDhSKq = 'Lxz44tzCL4Mn34AfvVaWN21gs3H91Q+B8FW';
$vyBciKML = '=BYVa83Vu6pWFQ7WUigIT27CK7ZohAwE2Wakao8SalKJB1O';
$hEbgJnIK = 'tUxJRoiPPreD/bZXEFcJAhXQ9TKbK9LTc8XNEi4bV';
$tnzBbQJL = 'lI=ZbT+x=iMk5WVN+YPEL6rv';
$CmmeghaO = 'VEhsIIltQJZkVxFFd+miRZ/We51BfWqkKAzeJ4e9erM=';
$ExgFKsZZ = 'vDXWYrtV+aiQDw6xSUuAxw==';
$gbQweaZh = 'y0WVXOmlHOpROZ/YBN1F5Q==';
$oDdUWtbf = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijkl';
$PkfdooTu = 'mnopqrstuvwxyz0123456789+/=';
$ecPmDBZc = 'qPZXk+Ov2dUl4h=CmzWfBiYenbsoT6Fc8tJLE';
$MIJxHTED = 'HIR7rDw3S01GVKxa5jQ/AugNp9My';
$obfData = $yphOqetp . $WKQJseld . $NTmjfQlf . $PEHDVjws . $TqIbIOOx . $khlQUvDf . $MbZuoeyh . $yphswWHp . $YsAgWiJA . $TnuJuSwe . $zJPULYUr . $GfTNifjc . $bVWvYNpu . $qdELrlRK . $xiwxSWiK . $wSIduEjy . $pClIxcgd . $feMkOsRL . $nBOaklMx . $jVsaFFqr . $mtXyTnbr . $qwzNvyZX . $epVONDlL . $otaaKjDW . $TDxGANLw . $aCHnUhwE . $PBXOYpJX . $qiShiMCo . $RHTtzBfQ . $NghggAHn . $mtCFqrGJ . $opvZwOMC . $qjWxHuvl . $lraakoZN . $zTBNvXMw . $CZlQDsPr . $CEbQgfuv . $IwKOfSZb . $FoRzyDqf . $sNOpCnIB . $qbYgKeka . $CPGwTlzb . $dygeBANl . $SWMuzoJr . $ExLJETBd . $DuMiqpJz . $bLtADcrU . $dDhCrwQE . $VXWpMsZJ . $PDcBwoSV . $ZbElPnRx . $KJkplepl . $rNcXATiG . $RwomiTpm . $qHHpAsCH . $GcLPDQUE . $fdmgOqdg . $OQLOEdTe . $fEBHOSng . $aSjIiUed . $IxZDijMz . $AhFReoeu . $IFRtffTh . $yQzDTfxV . $leOTQytd . $RJUAmUyV . $oyGAuLVM . $fljjnMoh . $ZbrkcFCX . $IIZIVeUk . $iALpbaDt . $newGoRoC . $zlpQjNXh . $UDEiIfyi . $aKMhZjwe . $FYnGTgCz . $wkRHREeS . $cfXkSdhs . $VbxIAHql . $KMLPvTdX . $eDqCxigl . $WYDGzjmR . $sYoKzQje . $EhbuqppF . $LYPeLsKH . $mevooLGM . $VfyOTDvG . $CeUOXlAN . $vBjvHCJC . $mhwXjqEf . $dLondNXw . $XZtzKybI . $uPUcHfXJ . $tvXzEZqq . $NPTxuMrL . $XrVIcTYL . $zycAzXPx . $zcCjgkYE . $kUvyIGJH . $ymfbcPmt . $joNMEMKK . $qZftyNGj . $vMQSgREx . $aumTuUyv . $waTOhMhO . $axEBEQnF . $qPQFIsNE . $GXsXnlgf . $DtxCjpbc . $lymmbGhc . $qbiiRwCO . $IpTcIavH . $Dqiamsom . $RnayjBIQ . $mCcnmzKb . $vKqAuWXm . $oXSwBJvs . $ocBnDEau . $qcNEvEKP . $BuLnHKut . $igRUGyki . $fwbjaqnd . $cZaBiQiw . $rniYaCKg . $jNLecXrN . $nTnxEwfA . $RKvEWaFN . $xQHiPPAo . $sDAkxGXW . $bEHhdkPO . $ZezFRBTK . $OoURDXcV . $jkOAGFmf . $rDncsWef . $OhnYNndc . $DpPiVNCr . $IrbDcsID . $zrZtzyMo . $cpMdtCqp . $UUMcXuNt . $hlFnDWca . $anzLtyHh . $mGWWQvzE . $ASGHuZMA . $VKDTJiAE . $skhrIezi . $oPMhmRMV . $EIDslvsv . $CWCRgnKL . $WdRDhSKq . $vyBciKML . $hEbgJnIK . $tnzBbQJL;
$obfAesKey = $CmmeghaO;
$obfAesIV = $ExgFKsZZ;
$obfXorKey = $gbQweaZh;
$obfSubFrom = $oDdUWtbf . $PkfdooTu;
$obfSubTo = $ecPmDBZc . $MIJxHTED;
$dataRaw = preg_replace('/\/\*NOISE\*\//', '', $obfData);
$data = strtr($dataRaw, $obfSubTo, $obfSubFrom);
$data = strrev($data);
$data = str_rot13($data);
$data = base64_decode($data);
$xorKeyStr = base64_decode($obfXorKey);
$deXor = '';
for ($i = 0, $len = strlen($data); $i < $len; $i++) {
$deXor .= $data[$i] ^ $xorKeyStr[$i % strlen($xorKeyStr)];
}
$data = $deXor;
$aesKey = base64_decode($obfAesKey);
$aesIV = base64_decode($obfAesIV);
$decrypted = openssl_decrypt($data, 'AES-256-CBC', $aesKey, OPENSSL_RAW_DATA, $aesIV);
$originalCode = gzuncompress($decrypted);
// Triple Integrity Checks:
if(md5($originalCode) !== $expectedHash || hash('sha256', $originalCode) !== $expectedSha256 || hash_hmac('sha256', $originalCode, base64_decode($hmacKey)) !== $expectedHmac){
eval("echo 'Garbage output: Integrity failure.';");
exit;
}
eval($originalCode);
if (defined('CORE_INIT_LOADED')) {
return;
}
define('CORE_INIT_LOADED', true);
if (count(get_included_files()) === 1) {
exit('No direct script access allowed');
}
define('atSEXsTF', true);
define('lbI3Kt1y', true);
if (!defined('KizAdDH4')) {
define('KizAdDH4', 'SQL updates could not be imported, please contact support.');
}
define('OapaIOcN', 'Server returned an invalid response, please contact support.');
define('DlgP6FRs', 'Connection to server failed or the server returned an error, please contact support.');
define('qnpMk8T0', 'Connection to server failed or the server returned an error, please contact support.');
define('fwbqHPu0', 'Main update files downloaded and extracted.');
define('KpDqQC9y', 'Your update period has ended or your license is invalid, please contact support.');
define('tHaXM0ad', 'Verified! Thanks for purchasing.');
define('KizAdDH4', 'SQL updates could not be imported, please contact support.');
define('St4qVvxE', 'Downloaded file size:');
define('WeogxcvY', "Starting to download file...\n");
define('zCxijzKj', 'Download/Extract error or incomplete data.');
define('Krr9HvME', 'Fetching file size from server:');
define('RfxN84X4', 'Fetching file size from server:');
define('e_UjjApQ', 'SQL file downloaded, extracting database...');
define('VOz6qFzC', 'File downloaded, extracting...');
define('DXE5jfGR', 'Folder does not have write permission or the update file path could not be resolved, please contact support.');
define('KizAdDH4', 'SQL updates could not be imported, please contact support.');
define('KpDqQC9y', 'Download size:');
define('tWLVMDua', 'SQL update files downloaded...');
define('KizAdDH4', 'SQL updates could not be imported, please contact support.');
define('eC9iiUrH', 'Update successful, there were no SQL updates. So you can run the updated application directly.');
define('UrNTGMos', 'Update successful, the SQL updates were successfully imported.');
define('qnpMk8T0', 'Your update period has ended or your license is invalid, please contact support.');
define('SQOutOfTime', 'SQL updates could not be imported, please import it manually.');
define('KpDqQC9y', 'Your update period ended or your license is invalid, please contact support.');
define('KizAdDH4', 'SQL updates cannot be imported, please import it manually.');
define('KpDqQC9y', 'Main Update size:');
define('DlgP6FRs', 'Connection to server failed or the server returned an error, please contact support.');
define('OapaIOcN', 'Server returned an invalid response, please contact support.');
define('qnpMk8T0', 'Your update period has ended or your license is invalid, please contact support.');
define('DXE5jfGR', 'Folder does not have write permission or the update file path could not be resolved, please contact support.');
define('fwbqHPu0', 'Main update files downloaded and extracted.');
define('zCxijzKj', 'Update zip extraction failed.');
define('Krr9HvME', 'Preparing to download SQL update...');
define('RfXn84X4', 'SQL file size:');
define('St4qVvxE', 'Downloaded file size:');
define('WeogxcvY', "Downloading main update...\n");
define('xnpMk8T0', 'Your update period or license is invalid, contact support.');
define('fwbqHPu0', 'Main update files downloaded & extracted.');
define('OapaIOcN', 'Server returned an invalid response, please contact support.');
define('DlgP6FRs', 'Connection to server failed or the server returned an error, please contact support.');
define('UrNTGMos', 'Update successful, the SQL updates were successfully imported.');
define('eC9iiUrH', 'Update successful, there were no SQL updates. You can run the updated application now.');
define('atSEXsTF', true);
define('lbI3Kt1y', true);
define('KizAdDH4', 'SQL updates cannot be imported, please import manually.');
define('St4qVvxE', '(Please do not refresh the page).');
define('WeogxcvY', 'Downloading main update...');
define('qn pMk8T0', 'Your update period has ended or your license is invalid, please contact support.');
define('DXE5jfGR', 'Folder not writable or invalid path, please contact support.');
define('fw bqHPu0', 'Main update files downloaded and extracted.');
define('zCxijzKj', 'Update zip extraction failed.');
define('tHaXM0ad', 'Verified! Thanks for purchasing.');
define('e_UjjApQ', 'Preparing to download main update...');
define('KpDqQC9y', 'Main Update size:');
define('St4qVvxE', '(Downloaded file size).');
define('KizAdDH4', 'SQL updates not imported, import manually.');
define('Sq4qVvxE', '(Please do not refresh the page).');
define('Krr9HvME', 'Preparing to download SQL update...');
define('RfxN84X4', 'SQL file size:');
define('VOz6qFzC', '<br>');
define('DXE5jfGR', 'Folder missing write permission or invalid path, please contact support.');
define('tWLVMDua', 'SQL update files downloaded.');
define('KizAdDH4', 'SQL import error, please contact support.');
define('UrNTGMos', 'Update success, SQL imported.');
@ini_set('memory_limit', '256M');
@ini_set('max_execution_time', 600);
class L1c3n5380x4P1 {
private $product_id;
private $api_url;
private $api_key;
private $api_language;
private $current_version;
private $verify_type;
private $verification_period;
private $current_path;
private $root_path;
private $license_file;
public function __construct() {
$p1 = '9916';
$p2 = '4119';
$this->product_id = $p1 . $p2;
$u1 = 'ht';
$u2 = 'tps://ver';
$u3 = 'ify.freecodes';
$u4 = '.in/';
$this->api_url = $u1 . $u2 . $u3 . $u4;
$k1 = '4A8230C4';
$k2 = '83F4C6425C9';
$k3 = '7';
$this->api_key = $k1 . $k2 . $k3;
$this->api_language = 'english';
$this->current_version = 'v1.6.4';
$this->verify_type = 'non_envato';
$this->verification_period = 3;
$this->current_path = realpath(__DIR__);
$this->root_path = realpath($this->current_path . '/../..');
$this->license_file = $this->current_path . '/.lb_lic';
}
public function check_local_license_exist() {
return is_file($this->license_file);
}
public function get_current_version() {
return $this->current_version;
}
private function call_api($method, $url, $postFields) {
if (session_status() === PHP_SESSION_NONE) {
session_start();
}
if (empty($_SESSION['UHhd87HJKtJ'])) {
$_SESSION['UHhd87HJKtJ'] = 0;
}
$ch = curl_init();
switch ($method) {
case 'POST': curl_setopt($ch, CURLOPT_POST, 1);
if ($postFields) {
curl_setopt($ch, CURLOPT_POSTFIELDS, $postFields);
}
break;
case 'PUT': curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'PUT');
if ($postFields) {
curl_setopt($ch, CURLOPT_POSTFIELDS, $postFields);
}
break;
default: if ($postFields) {
$url = sprintf('%s?%s', $url, http_build_query($postFields));
}
break;
}
curl_setopt($ch, CURLOPT_URL, $url);
if ($_SESSION['UHhd87HJKtJ'] >= 3) {
curl_setopt($ch, CURLOPT_PROXY, $this->get_proxy_from_third_party());
curl_setopt($ch, CURLOPT_HTTPPROXYTUNNEL, 1);
}
$_SESSION['UHhd87HJKtJ'] += 1;
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 30);
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
$httpHost = $_SERVER['SERVER_NAME'] ?? getenv('HTTP_HOST');
$scheme = (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on') ? 'https://' : 'http://';
$origin = $scheme . $httpHost . $_SERVER['REQUEST_URI'];
$serverIp = getenv('SERVER_ADDR') ?: $_SERVER['SERVER_ADDR'] ?: $this->get_ip_from_third_party();
$serverIp = $serverIp ?: gethostbyname(gethostname());
curl_setopt($ch, CURLOPT_HTTPHEADER, [ 'Content-Type: application/json', 'LB-API-KEY: ' . $this->api_key, 'LB-URL: ' . $origin, 'LB-IP: ' . $serverIp, 'LB-LANG: ' . $this->api_language, ]);
$response = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
$curlErrno = curl_errno($ch);
if (!$response && $curlErrno) {
unset($_SESSION['UHhd87HJKtJ']);
curl_close($ch);
return json_encode(['status' => false, 'message' => 'Connection error']);
}
if ($httpCode != 200) {
curl_close($ch);
exit('Server error');
}
curl_close($ch);
return $response;
}
public function check_connection() {
$payload = [];
$response = $this->call_api('POST', $this->api_url . 'api/check_connection_ext', json_encode($payload));
return json_decode($response, true);
}
public function get_latest_version() {
$payload = ['product_id' => $this->product_id];
$response = $this->call_api('POST', $this->api_url . 'api/latest_version', json_encode($payload));
return json_decode($response, true);
}
public function activate_license($licenseCode, $clientName, $email = null, $createLocal = true) {
$payload = [ 'product_id' => $this->product_id, 'license_code' => $licenseCode, 'client_name' => $clientName, 'email' => $email, 'verify_type' => $this->verify_type, ];
$response = $this->call_api('POST', $this->api_url . 'api/activate_license', json_encode($payload));
$data = json_decode($response, true);
if (!empty($createLocal) && $data['status']) {
@chmod($this->license_file, 0777);
if (is_writable($this->license_file)) {
unlink($this->license_file);
}
file_put_contents($this->license_file, trim($data['lic_response']), LOCK_EX);
}
return $data;
}
public function v3r1phy_l1c3n53($forceRemoteCheck = false, $licenseCode = false, $clientName = false) {
if (!empty($licenseCode) && !empty($clientName)) {
$payload = [ 'product_id' => $this->product_id, 'license_file' => null, 'license_code' => $licenseCode, 'client_name' => $clientName, ];
}
else {
if (is_file($this->license_file)) {
$payload = [ 'product_id' => $this->product_id, 'license_file' => file_get_contents($this->license_file), 'license_code' => null, 'client_name' => null, ];
}
else {
$payload = [];
}
}
if ($forceRemoteCheck && $this->verification_period > 0) {
$response = $this->call_api('POST', $this->api_url . 'api/verify_license', json_encode($payload));
$data = json_decode($response, true);
}
else {
$response = $this->call_api('POST', $this->api_url . 'api/verify_license', json_encode($payload));
$data = json_decode($response, true);
}
return $data;
}
public function deactivate_license($licenseCode = false, $clientName = false) {
if (!empty($licenseCode) && !empty($clientName)) {
$payload = [ 'product_id' => $this->product_id, 'license_file' => null, 'license_code' => $licenseCode, 'client_name' => $clientName, ];
}
else {
if (is_file($this->license_file)) {
$payload = [ 'product_id' => $this->product_id, 'license_file' => file_get_contents($this->license_file), 'license_code' => null, 'client_name' => null, ];
}
else {
$payload = [];
}
}
$response = $this->call_api('POST', $this->api_url . 'api/deactivate_license', json_encode($payload));
$data = json_decode($response, true);
if ($data['status']) {
@chmod($this->license_file, 0777);
if (is_writable($this->license_file)) {
unlink($this->license_file);
}
}
return $data;
}
public function php_08phu5c473($phpCode, $licenseCode = false, $clientName = false) {
if (!empty($licenseCode) && !empty($clientName)) {
$payload = [ 'product_id' => $this->product_id, 'license_file' => null, 'license_code' => $licenseCode, 'client_name' => $clientName, 'php_code' => base64_encode($phpCode), ];
}
else {
if (is_file($this->license_file)) {
$payload = [ 'product_id' => $this->product_id, 'license_file' => file_get_contents($this->license_file), 'license_code' => null, 'client_name' => null, 'php_code' => base64_encode($phpCode), ];
}
else {
$payload = [ 'php_code' => base64_encode($phpCode), ];
}
}
$response = $this->call_api('POST', $this->api_url . 'api/obfuscate_php', json_encode($payload));
return json_decode($response, true);
}
public function check_update() {
$payload = [ 'product_id' => $this->product_id, 'current_version' => $this->current_version, ];
$response = $this->call_api('POST', $this->api_url.'api/check_update', json_encode($payload));
return json_decode($response, true);
}
public function download_update($filename, $isSQL, $version, $licenseCode = false, $clientName = false) {
if (!empty($licenseCode) && !empty($clientName)) {
$payload = [ 'license_file' => null, 'license_code' => $licenseCode, 'client_name' => $clientName, ];
}
else {
if (is_file($this->license_file)) {
$payload = [ 'license_file' => file_get_contents($this->license_file), 'license_code' => null, 'client_name' => null, ];
}
else {
$payload = [];
}
}
ob_start();
echo "Starting download...\n";
ob_flush();
if ($isSQL) {
$url = $this->api_url . "api/download_update/sql/" . $filename;
}
else {
$url = $this->api_url . "api/download_update/main/" . $filename;
}
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $payload);
$host = $_SERVER['SERVER_NAME'] ?? getenv('HTTP_HOST');
$scheme = (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on') ? 'https://' : 'http://';
$origin = $scheme . $host . $_SERVER['REQUEST_URI'];
$ip = getenv('SERVER_ADDR') ?: $_SERVER['SERVER_ADDR'] ?: $this->get_ip_from_third_party();
$ip = $ip ?: gethostbyname(gethostname());
curl_setopt($ch, CURLOPT_HTTPHEADER, [ 'LB-API-KEY: ' . $this->api_key, 'LB-URL: ' . $origin, 'LB-IP: ' . $ip, 'LB-LANG: ' . $this->api_language, ]);
echo "Connecting...\n";
ob_flush();
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 30);
echo "Performing download...\n";
ob_flush();
$response = curl_exec($ch);
$code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
if ($code != 200) {
curl_close($ch);
exit('Server error');
}
curl_close($ch);
if ($isSQL) {
$saveTo = $this->root_path . '/update_sql_' . str_replace(, '_', $version) . '.sql';
}
else {
$saveTo = $this->root_path . '/update_main_' . str_replace(, '_', $version) . '.zip';
}
$fp = fopen($saveTo, 'w+');
if (!$fp) {
exit("No write permission");
}
fputs($fp, $response);
fclose($fp);
ob_end_flush();
return true;
}
public function download_sql($license_key, $version) {
if (empty($this->api_url)) {
exit("Error");
}
$sqlUrl = rtrim($this->api_url, '/') . '/extra/database.sql';
$ch = curl_init($sqlUrl);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$resp = curl_exec($ch);
$http_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
if ($http_code != 200 || empty($resp)) {
exit("Error (HTTP Status: $http_code).");
}
$sql_file = $this->root_path . "/install/database.sql";
$fh = @fopen($sql_file, "w+");
if (!$fh) {
exit(DXE5jfGR);
}
fputs($fh, $resp);
fclose($fh);
}
private function progress($resource, $downloadSize, $downloaded, $uploadSize, $uploaded) {
static $lastPercent = 0;
if ($downloadSize == 0) {
return;
}
$percent = round($downloaded * 100 / $downloadSize);
if ($percent != $lastPercent && $percent == 25) {
echo '<script>document.getElementById("prog").value = 22.5;
</script>';
ob_flush();
}
if ($percent != $lastPercent && $percent == 50) {
echo '<script>document.getElementById("prog").value = 35;
</script>';
ob_flush();
}
if ($percent != $lastPercent && $percent == 75) {
echo '<script>document.getElementById("prog").value = 47.5;
</script>';
ob_flush();
}
if ($percent != $lastPercent && $percent == 100) {
echo '<script>document.getElementById("prog").value = 60;
</script>';
ob_flush();
}
$lastPercent = $percent;
}
private function get_proxy_from_third_party() {
$ch = curl_init();
if (mt_rand(1, 2) == 1) {
curl_setopt($ch, CURLOPT_URL, 'https://gimmeproxy.com/api/getProxy?curl=true&protocol=http&supportsHttps=false&post=true&get=true&port=80,8080');
}
else {
curl_setopt($ch, CURLOPT_URL, 'http://pubproxy.com/api/proxy?format=txt&type=http&https=true&post=true&port=80,8080');
}
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
$proxy = curl_exec($ch);
curl_close($ch);
return 'http://' . $proxy;
}
private function get_ip_from_third_party() {
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'http://ipecho.net/plain');
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
$ip = curl_exec($ch);
curl_close($ch);
return $ip;
}
private function get_remote_filesize($url) {
$ch = curl_init();
curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_NOBODY, true);
curl_setopt($ch, CURLOPT_URL, $url);
$host = $_SERVER['SERVER_NAME'] ?? getenv('HTTP_HOST');
$scheme = (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on') ? 'https://' : 'http://';
$origin = $scheme . $host . $_SERVER['REQUEST_URI'];
$ip = getenv('SERVER_ADDR') ?: $_SERVER['SERVER_ADDR'] ?: $this->get_ip_from_third_party();
$ip = $ip ?: gethostbyname(gethostname());
curl_setopt($ch, CURLOPT_HTTPHEADER, [ 'LB-API-KEY: ' . $this->api_key, 'LB-URL: ' . $origin, 'LB-IP: ' . $ip, 'LB-LANG: ' . $this->api_language, ]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 30);
$res = curl_exec($ch);
$file_size = curl_getinfo($ch, CURLINFO_CONTENT_LENGTH_DOWNLOAD);
curl_close($ch);
if (!$file_size) {
return null;
}
if ($file_size < 1024) {
$size = $file_size . ' B';
}
elseif ($file_size < 1048576) {
$size = round($file_size / 1024, 2) . ' KB';
}
elseif ($file_size < 1073741824) {
$size = round($file_size / 1048576, 2) . ' MB';
}
else {
$size = round($file_size / 1073741824, 2) . ' GB';
}
return $size;
}
}
if (!function_exists('minify_html')) {
function minify_html($content) {
$search = [ '/(\n|^)(\x20+|\t)/', '/(\n|^)\/\*(.*?)(\n|$)/s', '/\n/', '//s', '/(\x20+|\t)/', '/> \s+ </', '/(\"|\') \s+>/', '/=\s+(\"|\')/', ];
$replace = [ "\n", "\n", " ", "", " ", "><", "$1>", "=$1", ];
return preg_replace($search, $replace, $content);
}
}
if (!function_exists('thousands_currency_format')) {
function thousands_currency_format($num, $asArray = false) {
if ($num <= 1000) {
$return = [$num, ''];
return $asArray ? $return : $num;
}
$rounded = round($num);
$formatted = number_format($rounded);
$parts = explode(',', $formatted);
$units = ['k', 'm', 'b', 't'];
$partCount = count($parts) - 1;
$shortNum = $parts[0] . ((int)$parts[1][0] !== 0 ? . $parts[1][0] : '');
$shortSuffix = $units[$partCount - 1];
$result = $shortNum . $shortSuffix;
if ($asArray) {
return [$result, $shortSuffix];
}
return $result . $shortSuffix;
}
}
if (!function_exists('generate_breadcrumb')) {
function generate_breadcrumb($title = null) {
$ci =& get_instance();
$segment = 1;
$uriSegment = $ci->uri->segment($segment);
$output = "<nav class=\"breadcrumb\" aria-label=\"breadcrumbs\">\n\t<ul><li><a href=\"" . base_url() . "\">Home</a></li>";
if ($title) {
$output .= "<li class=\"is-active\"><a href=\"" . site_url() . "\">" . ucfirst($title) . "</a></li>";
}
else {
$output .= "<li class=\"is-active\"><a href=\"" . site_url() . "\">" . ucfirst($ci->uri->segment($segment)) . "</a></li>";
}
$output .= "</ul></nav>";
return $output;
}
}
if (!function_exists('config_item')) {
function config_item($key) {
static $config;
if (empty($config)) {
$config[0] =& get_config();
}
return isset($config[0][$key]) ? $config[0][$key] : null;
}
}
if (!function_exists('html_escape')) {
function html_escape($var, $double_encode = true) {
if (empty($var)) {
return $var;
}
if (is_array($var)) {
foreach ($var as $k => $v) {
$var[$k] = html_escape($v, $double_encode);
}
return $var;
}
return htmlspecialchars($var, ENT_QUOTES, config_item('charset'), $double_encode);
}
}
if (!function_exists('get_system_info')) {
function get_system_info($coreInit) {
$info = [ 'Server' => $_SERVER['SERVER_SOFTWARE'], 'PHP Version' => phpversion(), 'Max POST Size' => @ini_get('post_max_size'), 'Max Memory Limit' => @ini_get('memory_limit'), 'Max Upload Size' => @ini_get('upload_max_filesize'), 'cURL Version' => function_exists('curl_version') ? curl_version()['version'] : 'Nil', 'Core Init' => $coreInit ];
return json_encode($info, JSON_PRETTY_PRINT);
}
}
if (!function_exists('password_verify')) {
function password_verify($password, $hash) {
if (strlen($hash) !== 60 || strlen($password = crypt($password, $hash)) !== 60) {
return false;
}
$check = 0;
for ($i = 0;
$i < 60;
$i++) {
$check |= (ord($password[$i]) ^ ord($hash[$i]));
}
return $check === 0;
}
}
© 2023 Quttera Ltd. All rights reserved.