Shang-Chi and the Legend of the Ten Rings, the Disney blockbuster featuring Marvel's first leading Asian superhero, dominated the North American box office for a third straight week, taking in $21.7 million, figures showed Sunday.

The film – starring Chinese-Canadian actor Simu Liu as a former assassin in the shadow of an evil father (Hong Kong legend Tony Leung) – has so far earned $176.9 million in US and Canadian theaters, industry tracker Exhibitor Relations said.

Sci-fi comedy Free Guy, from 20th Century, held steady in second spot with $5.2 million. It stars Ryan Reynolds as an everyman bank teller who discovers he's actually a non-player character in a huge video game.

Third place went to new entrant Cry Macho, the latest gritty drama by the legendary Clint Eastwood, who directs and stars as a retired rodeo rider helping a teenager and his fighting rooster leave Mexico. The Warner Brothers film earned $4.5 million.

In fourth place, for a second week running, was Universal's slasher film Candyman, a reimagining of the classic 1992 film of the same name. It took in $3.5 million this weekend, and so far has topped $53 million overall in North America.

Another horror movie, Malignant, came in fifth with nearly $2.7 million, while comedy/action new entry Copshop opened in sixth spot, with $2.3 million.

Rounding out the top 10 were:

Jungle Cruise ($2.1 million, for a total of $112.6 million)

Paw Patrol: The Movie ($1.7 million)

Don't Breathe 2 ($1.2 million)

The Eyes of Tammy Faye ($675,000)

Sign up to our free newsletters

Get the best updates straight to your inbox:
Please select at least one mailing list.

You can unsubscribe at any time by clicking the link in the footer of our emails. We use Mailchimp as our marketing platform. By subscribing, you acknowledge that your information will be transferred to Mailchimp for processing.