Sammo Hung

Recently added

Paradox
6.5
mHD

Paradox

Aug. 25, 2017

Paradox

When a Hong Kong police negotiator is informed about the sudden disappearance of his 16-year-old daughter in Thailand, he travels there to search ...
The Iron-Fisted Monk
6.6
WEBRip

The Iron-Fisted Monk

Aug. 25, 1977

The Iron-Fisted Monk

Husker is a student of the Shaolin monks, learning kung fu so that he can avenge his uncle who was murdered by the Manchus who control the ...
Enter the Fat Dragon
6.6
WEBRip

Enter the Fat Dragon

Jul. 13, 1978

Enter the Fat Dragon

Ah Lung is a pig farmer and a devoted Bruce Lee fan who is anxious to follow in Lee’s footsteps, but only ridiculed for his attempts. He is ...
Warriors Two
7.2
WEBRip

Warriors Two

Dec. 28, 1978

Warriors Two

In an attempt to save his village from being taken over by brutes, Wah is beaten to a pulp and his mother brutally murdered. Determined to take ...
The Prodigal Son
7.3
WEBRip

The Prodigal Son

Nov. 10, 1981

The Prodigal Son

A rich man’s son believes himself to be the best kung fu fighter in Canton. Unfortunately, his father, anxious for his son’s safety, ...
Eastern Condors
7.1
WEBRip

Eastern Condors

Jul. 09, 1987

Eastern Condors

A motley group of Chinese prisoners held in the US is sent on a covert mission with the promise of a pardon: to go deep into Vietnam and destroy ...
Pedicab Driver
7.4
WEBRip

Pedicab Driver

Feb. 24, 1989

Pedicab Driver

Lo Tung and his friend Malted Candy, pedicab drivers working the streets of Macao, have both fallen in love. The problem is that both their ...
Hand of Death
6
WEBRip

Hand of Death

Jul. 15, 1976

Hand of Death

A young monk must face the Extended Iron Claw technique of a powerful warlord seeking to destroy Shaolin.
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 ...
Mr. Nice Guy
6.2
WEBRip

Mr. Nice Guy

Jan. 31, 1997

Mr. Nice Guy

A Chinese chef accidentally gets involved with a news reporter who filmed a drug bust that went awry and is now being chased by gangs who are ...
Carry on Pickpocket
6.6
TS

Carry on Pickpocket

Mar. 31, 1982

Carry on Pickpocket

Hung Tai-Kong aka Rice Pot and Chan Yin-Tung aka Chimney are two friends who work with their master Kam Ming and his daughter Ann as a team of ...
Wheels on Meals
7
TS

Wheels on Meals

Aug. 17, 1984

Wheels on Meals

Cousins Thomas and David, owners of a mobile restaurant, team up with their friend Moby, a bumbling private detective, to save the beautiful ...
My Lucky Stars
6.3
TS

My Lucky Stars

Feb. 10, 1985

My Lucky Stars

Two Hong-Kong cops are sent to Tokyo to catch an ex-cop who stole a large amount of money in diamonds. After one is captured by the Ninja-gang ...
Twinkle, Twinkle, Lucky Stars
6.2
TS

Twinkle, Twinkle, Lucky Stars

The third installment in the Lucky Stars series, following Winners and Sinners and My Lucky Stars. The team are released from prison to play ...
The Millionaires’ Express
7
TS

The Millionaires’ Express

What happens when a glamorous express, with high government officials, wealthy merchants, concubines and a gang of brigands on board, speeds ...
Spooky, Spooky
6.3
TS

Spooky, Spooky

Oct. 19, 1988

Spooky, Spooky

Years ago, a village head in the Hong Kong countryside executed a man for committing adultery by drowning him in the ocean. His mistress, in ...
Slickers vs. Killers
6.3
TS

Slickers vs. Killers

Sep. 13, 1991

Slickers vs. Killers

Success Hung, an ace cell phone salesman who his feeling the heat from young, up and comer Miss Cheng. One day, Hung witnesses a mob hit. Though ...
Ghost Punting
5.4
TS

Ghost Punting

Feb. 27, 1992

Ghost Punting

The “Five Lucky Stars” attempt to help a restless ghost take revenge on the evil drug gang who took his life. At the same time, they ...
Don’t Give a Damn
6
TS

Don’t Give a Damn

Feb. 17, 1995

Don’t Give a Damn

Sammo Hung plays a cop on the trail of drug dealers. Customs officer Yuen Biao is investigating the same gang. Sammo’s new partner is ...
Ip Man
8
HD Cam

Ip Man

Dec. 12, 2008

Ip Man

A semi-biographical account of Yip Man, the first martial arts master to teach the Chinese martial art of Wing Chun. The film focuses on events ...
Knockabout
7.2
SD

Knockabout

Apr. 12, 1979

Knockabout

After being cheated out of some money, two small time crooks convince a martial arts expert to take them on as students.
The Victim
7.2
SD

The Victim

Feb. 28, 1980

The Victim

Chung Yao, a martial arts expert, has long been on the run from his stepbrother, who he caught trying to rape his wife on their wedding night. ...
The Bodyguard
5.9
SD

The Bodyguard

Apr. 01, 2016

The Bodyguard

A retired bodyguard who has settled into a corner of the world where China, Russia and North Korea meet as he suffers from early dementia finds a ...
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();