Phillip Ko

Recently added

The Master Strikes Back
5.5
Mini HD

The Master Strikes Back

In The Master Strikes Back, Hong Kong’s Steadicam pioneering director Sun Chung brings back legendary Ti Lung to play famous weapons ...
Unbeatables
3.5
Mini HD

Unbeatables

Mar. 01, 2001

Unbeatables

Chinatown in the Philippines, highlighted the danger of a pair of brothers – fire weapons (Louis Fan) and Yao Yang (Roy Cheung), two wise and ...
Shadow Mask
5.1
Mini HD

Shadow Mask

Aug. 16, 2001

Shadow Mask

Fu Tien-Ming is the subject of an experiment that turns him into the hero known as Shadow Mask. When his arch nemesis, Red Goddess, escapes from ...
Clan Feuds
6.7
mHD

Clan Feuds

Feb. 19, 1982

Clan Feuds

Two young lovers, Yun Keng and Ching Shuang belong to opposing clans. Their relationship is a secret for a time. Once Master Diao, head of the ...
Robber, Pros & Money
6.6
mHD

Robber, Pros & Money

Dec. 08, 1977

Robber, Pros & Money

To free his girlfriend from her contract with a greedy madam, Shang Li (Don Wong) teams up with a cold-blooded thief called the Sparrow ...
Snake Deadly Act
6
mHD

Snake Deadly Act

Jan. 17, 1980

Snake Deadly Act

Kwok Chung is a righteous rich kid whose hobby is to fight and brawl. One encounter nearly gets him killed, but he is saved by Yueh (Fong Hak ...
Enter Three Dragons
5.5
mHD

Enter Three Dragons

Jun. 11, 1978

Enter Three Dragons

Sammy is involved with gangsters to save his relative from a problem so he calls Dragon Hung from America to help him.
The Dragon, the Hero
6.3
mHD

The Dragon, the Hero

Jan. 01, 1979

The Dragon, the Hero

Dragon Lee fights foreign devils who are stealing antiquities from China.
Dragon Bruce Lee, Part II
5.5
mHD

Dragon Bruce Lee, Part II

While transporting funds for independence movement, Lee Han-saeng is shot in the legs by the Japanese military police. He recovers from his ...
Enter the Clones of Bruce
7.9
mHD

Enter the Clones of Bruce

Get ready to play a game of death … and another … and another. The wild documentary Enter the Clones of Bruce dives into the Bruce Lee ...
Techno Warriors
6.2
mHD

Techno Warriors

Nov. 22, 1997

Techno Warriors

In The Future, A Computer bug sets a new breed of armed and dangerous villains loose on an unsuspecting world. Digital game characters who govern ...
The Rendezvous of Warriors
5.6
WEBRip

The Rendezvous of Warriors

Everybody wants the skin of Paul Chun … Film released in French in VHS under the title Operation Black Belt
The Incredible Kung Fu Master
6.4
WEBRip

The Incredible Kung Fu Master

Tung Wei (18 Fatal Strikes Enter The Dragon) is a lad who wants to learn kung fu. He trains in two different styles: Hung Gar and Wing Chun. ...
An Eternal Combat
5.5
WEBRip

An Eternal Combat

Jan. 05, 1991

An Eternal Combat

1000 years before our time: Master Cho-Lo, a Taoist priest (Lam Ching-Ying) and his two understudies (Parkman Wong and Shing Fui On) go on a ...
The Killer Meteors
4.9
WEBRip

The Killer Meteors

Aug. 21, 1976

The Killer Meteors

Mi Wey is a local hero named after “Killer Meteors”, his secret weapon which makes him invincible. However, when ...
Naughty Boys
5.8
WEBRip

Naughty Boys

Jul. 25, 1986

Naughty Boys

Frequent Jackie Chan cohort Mars stars as Sing, an ex-con who’s supposed to dig up the buried loot of his three still-jailed ...
Dragons Forever
7.1
WEBRip

Dragons Forever

Feb. 11, 1988

Dragons Forever

A hot-shot lawyer is hired by a Hong Kong chemical plant to dispose of opposition to their polluting ways. But when he falls for a beautiful ...
Mistaken Identity
6.5
TS

Mistaken Identity

Oct. 06, 1988

Mistaken Identity

Mistaken Identity is a Hong Kong Crime-Comedy directed by Tsui Siu-Ming and starring Richard Ng.
The Club
6.4
SD

The Club

Sep. 17, 1981

The Club

Mainly the story of Sai, a rascal who works at a gang-operated nightclub, and his conflicts with a rival gang.
The Flying Mr. B
5.8
240p

The Flying Mr. B

Mar. 28, 1985

The Flying Mr. B

A professor accidentally creates a pill that essentially makes him Superman. Soon everybody, from a soccer team to a gang boss, wants those pills ...
The Gold Connection
5.8
240p

The Gold Connection

May. 28, 1979

The Gold Connection

Martial arts teacher Ah Wei (Bruce Li) discovers a hidden stash of Vietnamese gold while scuba diving with his friends and divides it up between ...
The Adventurers
6
360p

The Adventurers

Aug. 02, 1995

The Adventurers

After the murder of his parents and sister at the hands of the villianous gun-running billionaire Ray Lui, crack fighter pilot Yan vows revenge.
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();