Julian (Ryan Gosling) is an American expatriate running a muay thai club/drug smuggling operation in Bangkok, Thailand.
His older brother, Billy (Tom Burke) rapes and kills an under-age prostitute. The police, Lieutenant Chang (Vithaya Pansringarm) allow the prostitute’s father, Choi Yan Lee (Kovit Wattanakul) to exact revenge but kills Billy in the process. Chang is upset about the underage prostitute and cuts the forearm off the father.
Julian’s mother, Crystal (Kristin Scott Thomas) goes to Bangkok to identify her son. Crystal hires Gordon (Gordon Brown) to kill Choi who gets one of the thai club fighters to do the deed. Chang surfaces to find Choi’s killer. Crystal then hires Byron (Byron Gibson) to kill Chang whom she believes was involved in Billy’s death.
The assassination of Chang does not go well. Chang find Byron and tortures him with an artsy and meaningful maiming of spikes in his hands and thighs along with cutting out his eyes and inserting spikes in his ears.
Chang and Julian have a bare fist fight in the muay thai club in front of Crystal. Julian loses greatly. Crystal scared for her life tells Julian that if he kills Chang he can return to the USA with her. Julian and Charlie Ling (Nophand Boonyai) wait inside Chang’s house. Charlie is ordered to kill all of Chang’s family but Julian kills Charlie before he can shoot Chang’s daughter.
Chang kills Crystal with a sword cut to the throat. Julian finds his mother dead and cuts her body open then places his hand inside the abdomen. Julian is then shown in a field with Chang who begins the blow to cut off both of Julian’s hands with a sword but we don’t see it. The ending is Chang singing karaoke.