GetPage($link, 'lang=english'); is_present($page, "

File Not Found

", 'Video not found or it was deleted.'); is_present($page, "Video is not encoded yet.", 'Video is not encoded yet. Please wait some minutes.'); is_present($page, "The file you were looking for could not be found"); $page2 = cut_str($page, '
'); //Cutting page if (!preg_match('@name="id" value="([^"]+)"@i', $page2, $id)) html_error("Video ID not found."); $page = $this->GetPage("http://movzap.com/xml/{$id[1]}.xml", 'lang=english'); if (!preg_match('@<!\[CDATA\[([^\[|\]]+)\]\]>@i', $page, $title)) html_error("Video Title not found."); $page = $this->GetPage("http://movzap.com/xml2/{$id[1]}.xml", 'lang=english'); if (!preg_match('@@i', $page, $encrypted)) if (!preg_match('@@i', $page, $encrypted)) html_error("Encrypted link not found."); $down = $this->decryptme(substr($encrypted[1], 0, -6)) or $down = $this->decryptme($encrypted[1]); if ($down === false) html_error("Cannot decrypt download link"); if(!preg_match('@\.[^\.]+$@i', basename($down), $ext)) $ext = array('.mp4'); $badchars = '<>:"/\\|?*\'@#+~{}[]^'; $fname = str_replace(str_split($badchars), "_", trim($title[1])) . $ext[0]; $this->RedirectDownload($down."?start=0", $fname, 0, 0, 0, $fname); } private function decryptme($encrypted) { $KEY = 'N%66=]H6'; $method = MCRYPT_DES; $mode = MCRYPT_MODE_ECB; $iv_size = mcrypt_get_iv_size($method, $mode); $iv = mcrypt_create_iv($iv_size, MCRYPT_RAND); return $this->pkcs5_unpad(mcrypt_decrypt($method, $KEY, base64_decode($encrypted), $mode, $iv)); } // Source: A comment @ http://php.net/manual/en/ref.mcrypt.php private function pkcs5_unpad($text) { $pad = ord($text{strlen($text)-1}); if ($pad > strlen($text)) return false; if (strspn($text, chr($pad), strlen($text) - $pad) != $pad) return false; return substr($text, 0, -1 * $pad); } } //[06-3-2012] Written by Th3-822. ?>