Frank/The Punisher ends up getting captured by Franco’s men and forced to help him save his son Tommy from the Yakuza after Franco shows him that he has captured his old partner Jake and would have him killed if he refused.
They infiltrate the Yakuza’s headquarters and kill everyone on the top floor, and Franco confronts Lady Tanaka as she is holding Tommy hostage in one of the rooms. She orders Franco to shoot himself in exchange for letting Tommy live, but Frank comes in and kills Tanaka by throwing a knife into her head. Franco then has Tommy leave the room and aims his gun at Frank intending to kill him, but Tommy re-enters and gets his attention, giving Frank the opening to fight back. He kills Franco by getting the gun and shooting him in the heart.
Tommy picks up the gun and tells Frank that he is going to kill him, but Frank uses reverse psychology on him to get him to understand that he is no killer. After warning Tommy to not grow up to be like his father lest he have to deal with him, Frank heads up to the roof. Jake having earlier escaped Franco’s men then comes in looking for Frank, but can’t find him anywhere.
In a voiceover, Frank says he still talks to God sometimes and asks if what he is doing is right or wrong, but he hasn’t gotten a reply, and until he gets one, he’ll just keep on doing what he does.
Frank/The Punisher (Dolph Lundgren) enters the hideout where the Yakuza are holding the children of the mob bosses hostage, and he manages to free all of them except for Franco’s (Jeroen Krabbé) son Tommy (Brian Rooney). He puts them all in a bus he had earlier stolen and drives away, but is forced to stop upon encountering a police blockade. The children are sent back to their families, and Frank is jailed for all of the murders he has committed.
As Frank is being taken to court in an armored truck to stand trial, a gang of Franco’s men attack the truck, break into it, and knock out Frank. When Frank comes to, he finds himself in Franco’s office. Franco tells him that he needs his help in getting Tommy back from the Yakuza, but Frank flat out refuses. Franco then has his old partner Jake (Louis Gossett, Jr.) brought in, tied up and gagged, and threatens to have him killed unless Frank reconsiders. Frank reluctantly gives in to this threat and agrees to assist him. As Frank and Franco make their way into the Yakuza’s office building, Jake gets the better of the goons watching him and heads after Frank.
Frank and Franco sneak up to the top floor and kill all of Lady Tanaka’s (Kim Miyori) henchmen. Franco finds Tanaka first in one of the rooms holding Tommy hostage with a knife at his throat. She orders Franco to shoot himself in the head, promising that she will let Tommy live if he does so. However, before he can pull the trigger, Frank comes crashing through a nearby window and throws a knife into Tanaka’s head, killing her.
Franco and Tommy hug, but when he notices the fallen Frank attempting to get up, Franco has Tommy wait outside the room, and then he comes up to Frank and points his gun at him. He thanks him for saving his son, but now that he stands to lead the most powerful crime syndicate in the world, a syndicate that Tommy will inherit someday, he must eliminate Frank since he is the only real threat to it. Tommy then re-enters the room and gets his father’s attention, which gives Frank the opening to fight back. The two of them battle over the gun (during which Tommy tries to stop his father, but gets knocked down) until Frank gets a hold of it and shoots Franco under his arm, past his bulletproof vest and into his heart, and Franco drops dead.
As Frank starts to leave, Tommy picks up the gun and tells Frank that he’s going to kill him. However, through using reverse psychology, Frank makes him understand that he isn’t the killing type, and Tommy drops the gun and starts crying. As Jake arrives on the floor with a bunch of cops and starts calling out to Frank, Frank warns Tommy to not go down the same path in life as his father or else he’ll be waiting for him, and then he heads for the stairs leading up to the roof. Shortly afterwards, Jake shows up, and he follows a trail of Frank’s blood up to the roof, but finds that Frank has vanished. He desperately calls out to him, but gets no reply.
In the closing voiceover, Frank says that he still talks to God sometimes and asks him if what he is doing is right or wrong. He has yet to receive an answer, and until he gets one, he’ll just keep on doing what he’s doing.
Thanks Tornado Dragon!