Vanessa Kirby

Recently added

Love/Loss
5.5
mHD

Love/Loss

Jan. 01, 2010

Love/Loss

A chance meeting reunites Mary and Joe, childhood sweethearts from the 1940s. But after 60 years apart, is there still love between them? How ...
The Rise
6.5
mHD

The Rise

Sep. 09, 2012

The Rise

A young man recently released from prison recruits his three best friends to rob the local drug kingpin who is responsible for his incarceration.
Nora
6.5
mHD

Nora

Oct. 18, 2012

Nora

Short film inspired by the Young Vic production of A Doll’s House.
Insomniacs
7.7
mHD

Insomniacs

Jan. 01, 2013

Insomniacs

In this atmospheric, emotionally charged drama, two Londoners lose sleep but find each other.
The Exchange
0
mHD

The Exchange

Nov. 21, 2013

The Exchange

When two bags are mixed up at a hotel, two guests find themselves unknowingly connected in a fleeting moment. At the bar, she remembers his ...
National Theatre Live: A Streetcar Named Desire
8.3
mHD

National Theatre Live: A Streetcar Named Desire

As Blanche’s fragile world crumbles, she turns to her sister Stella for solace – but her downward spiral brings her face to face with the brutal, ...
Queen & Country
6.2
mHD

Queen & Country

Jan. 07, 2015

Queen & Country

An Englishman who grew up in London during World War II joins the military to fight in the Korean War.
Jupiter Ascending
5.3
mHD

Jupiter Ascending

Feb. 04, 2015

Jupiter Ascending

In a universe where human genetic material is the most precious commodity, an impoverished young Earth woman becomes the key to strategic ...
Bone in the Throat
0
mHD

Bone in the Throat

Mar. 16, 2015

Bone in the Throat

A young ambitious chef gets mixed up with the East End London mob. While showing off his culinary skills, he finds himself trapped.
The Dresser
6.7
mHD

The Dresser

Oct. 31, 2015

The Dresser

One fateful night in a small English regional theatre during World War II a troupe of touring actors stage a production of Shakespeares King ...
Kill Command
5.7
mHD

Kill Command

May. 13, 2016

Kill Command

Set in a near future, technology-reliant society that pits man against killing machines. Against this backdrop an elite army unit is helicoptered ...
Genius
6.5
mHD

Genius

Jun. 10, 2016

Genius

New York in the 1920s. Max Perkins, a literary editor is the first to sign such subsequent literary greats as Ernest Hemingway and F. Scott ...
Mission: Impossible – Fallout
7.7
mHD

Mission: Impossible – Fallout

When an IMF mission ends badly, the world is faced with dire consequences. As Ethan Hunt takes it upon himself to fulfill his original briefing, ...
National Theatre Live: Julie
6.2
mHD

National Theatre Live: Julie

Wild and newly single, Julie throws a late night party. In the kitchen, Jean and Kristina clean up as the celebration heaves above them. Crossing ...
Mr. Jones
6.9
mHD

Mr. Jones

Oct. 03, 2019

Mr. Jones

In 1933, Welsh journalist Gareth Jones travels to Ukraine, where he experiences the horrors of a famine. Everywhere he goes he meets henchmen of ...
Pieces of a Woman
7
mHD

Pieces of a Woman

Dec. 30, 2020

Pieces of a Woman

When a young mother’s home birth ends in unfathomable tragedy, she begins a year-long odyssey of mourning that fractures relationships with ...
The World to Come
6.4
mHD

The World to Come

Feb. 12, 2021

The World to Come

In 1856, two women forge a close connection despite their isolation on the American frontier.
Italian Studies
4.8
mHD

Italian Studies

Jan. 14, 2022

Italian Studies

A mysterious woman wanders the streets of Manhattan in a confused state. Finding herself inexplicably drawn to a group of teenagers she embarks ...
Cartier: La Panthère
0
mHD

Cartier: La Panthère

Apr. 03, 2023

Cartier: La Panthère

To embody the Maison’s panther and La Panthère perfume, Vanessa Kirby appears from within a green and abundant hidden land, a world full of ...
Mission: Impossible – Dead Reckoning Part One
7.8
mHD

Mission: Impossible – Dead Reckoning Part One

Ethan Hunt and his IMF team embark on their most dangerous mission yet: To track down a terrifying new weapon that threatens all of humanity ...
Napoleon
0
mHD

Napoleon

Nov. 22, 2023

Napoleon

A personal look at the French military leader’s origins and swift, ruthless climb to emperor, viewed through the prism of Napoleon’s addictive, ...
Me Before You
7.4
HDTC

Me Before You

Jun. 01, 2016

Me Before You

A small town girl is caught between dead-end jobs. A high-profile, successful man becomes wheelchair bound following an accident. The man decides ...
Fast & Furious Presents: Hobbs & Shaw
6.5
1080p

Fast & Furious Presents: Hobbs & Shaw

Ever since US Diplomatic Security Service Agent Hobbs and lawless outcast Shaw first faced off, they just have traded smack talk and body blows. ...
The Son
6.2
CAM

The Son

Nov. 10, 2022

The Son

A successful lawyer, with a new wife and infant, agrees to care for his teenage son from a previous marriage after his ex-wife becomes concerned ...
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();