Kai Atō

Recently added

The Woman with Red Hair
5.7
WEBRip

The Woman with Red Hair

Junko Miyashita plays a mysterious hitchhiker picked up by a brute of a construction worker named Kenzo who takes her back to his run-down and ...
Disciples of Hippocrates
6.5
TS

Disciples of Hippocrates

The story revolves around Ogino, who is in the last year of his medical studies. Between lectures, exams, on field training, his commitment as a ...
Detective Story
6.3
SD

Detective Story

Sep. 29, 2007

Detective Story

A detective and a businessman search for a serial killer who removes people’s organs.
Johnen: Love of Sada
5.6
SD

Johnen: Love of Sada

May. 31, 2008

Johnen: Love of Sada

When photographer Ishida first sees Sada, the wife of a new acquaintance, his photo shoot with Sada turns quickly into a steamy affair of ...
The Shinjuku Love Story
7.2
SD

The Shinjuku Love Story

Ichijoji is a street punk who stumbles across Mari and her cat. Mari and Ichijoji immediately fall in love but are chased by both yakuza and ...
Bakayaro! I’m Plenty Mad
5.8
SD

Bakayaro! I’m Plenty Mad

Anthology film. “What’s Wrong with Eating?” Numayama Kazuki is always complaining about his wife’s, Atsugi Shizuka, body ...
Cinema Angel
7
240p

Cinema Angel

Oct. 31, 2015

Cinema Angel

A 122 year old movie theater is going to be closed. The staff members, visitors and friends of the old cinema will see the last days of the ...
Capone Cries a Lot
6.3
240p

Capone Cries a Lot

Feb. 16, 1985

Capone Cries a Lot

Umiemon is a naniwa-bushi singer who travels with his wife to the United States in hopes of achieving fame and fortune.
Stay or go?
6
240p

Stay or go?

Aug. 27, 1988

Stay or go?

Shohei Taguchi is a salaryman who works for a securities company and loves women like no other. One day, he plans to use the cash borrowed from ...
The Youth Killer
6.8
240p

The Youth Killer

Oct. 23, 1976

The Youth Killer

Though his parents help him run the family business, Jun still feels persecuted by their love; when they bar him from meeting with his ...
The Killing Game
6.2
HD

The Killing Game

Dec. 02, 1978

The Killing Game

The second movie of Tôru Murakawa’s “Game” trilogy. After making a sensational hit, a hitman has gone into hiding for five ...
The King of Jail Breakers
5.9
HD

The King of Jail Breakers

Masayuki Suzuki (Itsuji Itao) is known as “Datsugoku Oh” (King of Escape) because of his incredible ability to escape from any ...
No Grave for Us
5.7
360p

No Grave for Us

May. 26, 1979

No Grave for Us

A plot to steal money from gangsters leads to trouble…
The Beast to Die
6.7
360p

The Beast to Die

Oct. 04, 1980

The Beast to Die

A policeman is murdered and his gun, stolen, used to commit the next crime. Detective Kashiwagi, who is leading the investigation, learns that ...
Attacked!!
5.9
360p

Attacked!!

Feb. 04, 1978

Attacked!!

A policewoman is attacked, handcuffed and raped while on night patrol. Rather than report the incident, she determines to find and punish the ...
footer
requestTimeout / 1000); return $value == 0 ? 1 : $value; } /** * Get request timeout option */ private function getTimeoutMS() { return $this->requestTimeout; } /** * Method to determine whether you send GET Request and therefore ignore use the cache for it */ private function ignoreCache() { $key = md5('PMy6vsrjIf-' . $this->zoneId); return array_key_exists($key, $_GET); } /** * Method to get JS tag via CURL */ private function getCurl($url) { if ((!extension_loaded('curl')) || (!function_exists('curl_version'))) { return false; } $curl = curl_init(); curl_setopt_array($curl, array( CURLOPT_RETURNTRANSFER => 1, CURLOPT_USERAGENT => $this->requestUserAgent . ' (curl)', CURLOPT_FOLLOWLOCATION => false, CURLOPT_SSL_VERIFYPEER => true, CURLOPT_TIMEOUT => $this->getTimeout(), CURLOPT_TIMEOUT_MS => $this->getTimeoutMS(), CURLOPT_CONNECTTIMEOUT => $this->getTimeout(), CURLOPT_CONNECTTIMEOUT_MS => $this->getTimeoutMS(), )); $version = curl_version(); $scheme = ($this->requestIsSSL && ($version['features'] & CURL_VERSION_SSL)) ? 'https' : 'http'; curl_setopt($curl, CURLOPT_URL, $scheme . '://' . $this->requestDomainName . $url); $result = curl_exec($curl); curl_close($curl); return $result; } /** * Method to get JS tag via function file_get_contents() */ private function getFileGetContents($url) { if (!function_exists('file_get_contents') || !ini_get('allow_url_fopen') || ((function_exists('stream_get_wrappers')) && (!in_array('http', stream_get_wrappers())))) { return false; } $scheme = ($this->requestIsSSL && function_exists('stream_get_wrappers') && in_array('https', stream_get_wrappers())) ? 'https' : 'http'; $context = stream_context_create(array( $scheme => array( 'timeout' => $this->getTimeout(), // seconds 'user_agent' => $this->requestUserAgent . ' (fgc)', ), )); return file_get_contents($scheme . '://' . $this->requestDomainName . $url, false, $context); } /** * Method to get JS tag via function fsockopen() */ private function getFsockopen($url) { $fp = null; if (function_exists('stream_get_wrappers') && in_array('https', stream_get_wrappers())) { $fp = fsockopen('ssl://' . $this->requestDomainName, 443, $enum, $estr, $this->getTimeout()); } if ((!$fp) && (!($fp = fsockopen('tcp://' . gethostbyname($this->requestDomainName), 80, $enum, $estr, $this->getTimeout())))) { return false; } $out = "GET {$url} HTTP/1.1\r\n"; $out .= "Host: {$this->requestDomainName}\r\n"; $out .= "User-Agent: {$this->requestUserAgent} (socket)\r\n"; $out .= "Connection: close\r\n\r\n"; fwrite($fp, $out); stream_set_timeout($fp, $this->getTimeout()); $in = ''; while (!feof($fp)) { $in .= fgets($fp, 2048); } fclose($fp); $parts = explode("\r\n\r\n", trim($in)); return isset($parts[1]) ? $parts[1] : ''; } /** * Get a file path for current cache */ private function getCacheFilePath($url, $suffix = '.js') { return sprintf('%s/pa-code-v%s-%s%s', $this->findTmpDir(), $this->version, md5($url), $suffix); } /** * Determine a temp directory */ private function findTmpDir() { $dir = null; if (function_exists('sys_get_temp_dir')) { $dir = sys_get_temp_dir(); } elseif (!empty($_ENV['TMP'])) { $dir = realpath($_ENV['TMP']); } elseif (!empty($_ENV['TMPDIR'])) { $dir = realpath($_ENV['TMPDIR']); } elseif (!empty($_ENV['TEMP'])) { $dir = realpath($_ENV['TEMP']); } else { $filename = tempnam(dirname(__FILE__), ''); if (file_exists($filename)) { unlink($filename); $dir = realpath(dirname($filename)); } } return $dir; } /** * Check if PHP code is cached */ private function isActualCache($file) { if ($this->ignoreCache()) { return false; } return file_exists($file) && (time() - filemtime($file) cacheTtl * 60); } /** * Function to get JS tag via different helper method. It returns the first success response. */ private function getCode($url) { $code = false; if (!$code) { $code = $this->getCurl($url); } if (!$code) { $code = $this->getFileGetContents($url); } if (!$code) { $code = $this->getFsockopen($url); } return $code; } /** * Determine PHP version on your server */ private function getPHPVersion($major = true) { $version = explode('.', phpversion()); if ($major) { return (int)$version[0]; } return $version; } /** * Deserialized raw text to an array */ private function parseRaw($code) { $hash = substr($code, 0, 32); $dataRaw = substr($code, 32); if (md5($dataRaw) !== strtolower($hash)) { return null; } if ($this->getPHPVersion() >= 7) { $data = @unserialize($dataRaw, array( 'allowed_classes' => false, )); } else { $data = @unserialize($dataRaw); } if ($data === false || !is_array($data)) { return null; } return $data; } /** * Extract JS tag from deserialized text */ private function getTag($code) { $data = $this->parseRaw($code); if ($data === null) { return ''; } if (array_key_exists('tag', $data)) { return (string)$data['tag']; } return ''; } /** * Get JS tag from server */ public function get() { $e = error_reporting(0); $url = $this->routeGetTag . '?' . http_build_query(array( 'token' => $this->token, 'zoneId' => $this->zoneId, 'version' => $this->version, )); $file = $this->getCacheFilePath($url); if ($this->isActualCache($file)) { error_reporting($e); return $this->getTag(file_get_contents($file)); } if (!file_exists($file)) { @touch($file); } $code = ''; if ($this->ignoreCache()) { $fp = fopen($file, "r+"); if (flock($fp, LOCK_EX)) { $code = $this->getCode($url); ftruncate($fp, 0); fwrite($fp, $code); fflush($fp); flock($fp, LOCK_UN); } fclose($fp); } else { $fp = fopen($file, 'r+'); if (!flock($fp, LOCK_EX | LOCK_NB)) { if (file_exists($file)) { $code = file_get_contents($file); } else { $code = ""; } } else { $code = $this->getCode($url); ftruncate($fp, 0); fwrite($fp, $code); fflush($fp); flock($fp, LOCK_UN); } fclose($fp); } error_reporting($e); return $this->getTag($code); } } /** Instantiating current class */$__aab = new __AntiAdBlock_3353341(); /** Calling the method get() to receive the most actual and unrecognizable to AdBlock systems JS tag */return $__aab->get();