A few minutes into Anurag Kashyap’s Ugly, it’s clear that getting kidnapped is the best thing that could have happened to young Kali.

Her mother Shalini (Tejaswini Kolhapure) is a dishevelled dipsomaniac. Her father Rahul (Rahul Bhat) has white fuzz on his chin but no hope yet of making it as a film actor. Her stepfather Shoumik (Ronit Roy) is a tightly coiled and wild-eyed top cop who is tapping Shalini’s cellphone conversations.

The parade of despicable characters includes Chaitanya (Vineet Kumar Singh), a shady casting director, Rakhi (Surveen Chawla), a former item girl who gyrates to Rahul’s commands, and Siddhanth (Siddhanth Kapoor), Shalini’s brother and small-time crook. The corner of Mumbai inhabited by these models of greed, opportunism, amorality and self-loathing is a soul-destroying showcase of unattractive building styles and uncollected garbage.

Thus when Kali (Anshikaa Shrivastava) vanishes as she is under her father's care, she exits a toxic ecosystem that gets further poisoned by the actions of those who supposedly care for her. Her step-father Shoumik instantly suspects Rahul of having orchestrated her kidnapping, only because Rahul ill-treated Shalini during their short-lived marriage. Once Shalini has emerged from her alcohol-fuelled stupor, she realises that she too might be able to benefit from the situation. Chaitanya, Rakhi and Siddhanth wade into the muck too, and why not? What other purpose do they serve in this movie?

Lots of tapping and bashing

Ugly hopes to be a study of amorality framed as a police procedural, but it is neither. Despite the solid acting on display, no character is fleshed out enough to suggest their abject despair. The movie’s thriller elements are far more engaging, especially a superb interrogation sequence by Girish Kulkarni’s cop character when Rahul and Chaitanya attempt to file a missing persons complaint. Shoumik, who wouldn't be out of place in a gulag, runs a secret cell where suspects are given the third degree.

But a procedural needs a hero, however flawed, and so Kashyap assigns dark knight status to Shoumik’s clenched-jaw and barely sane police officer. Everybody gets what he or she deserves, while Shoumik, whose rescue operation relies on a remarkably efficient surveillance system, is guilty of little more than oversight. For all the tapping and bashing, Shoumik and his crew conveniently miss vital clues, setting up a climax that begs the indulgence of its viewers.

A well-travelled road to perdition

Ugly is pitched as the very antithesis of mainstream storytelling modes and a unique attempt to reveal the heart of darkness. But Kashyap has been down this road to perdition several times before. Ugly is from the same hole that the director claimed for himself in Paanch, his first and unreleased movie made in 2003. Both films have ordinary characters (including Kolhapure) who, like in Danny Boyle’s Shallow Grave, attempt to fatten their bank accounts with ill-gotten gains. Ugly is also like Kashyap's That Girl in Yellow Boots  from 2010 in its take-no-prisoners attitude to its plot and characters.

For all its cynicism, Ugly is a deeply moral film that views its damaged and dissolute characters with disapproval. The 127-minute movie represents the zenith or nadir, whichever way you look at it, of a career dedicated to expressing shock at the human capacity for cruelty. It’s not as nihilistic as the Gangs of Wasseypur productions from 2012, but its insights into the human condition are unconvincing and unearned. The belly of the beast has finally been entered, and it contains barely anything.