Purple Storm

Soong, a Khmer Rouge terrorist with plans to seed clouds with the chemical weapon Ricin-X, sends his son, Todd Nguyen his friend Guan Ai, to Hong Kong in a North Korean ship. On board is a container of the lethal poison, which the Koreans send an assassination team to retrieve. The Koreans are killed and Todd is knocked unconscious. The Hong Kong marine police showed up, forcing Guan to dump the container overboard and escape. She could not kill Todd to prevent his capture by the police.
Todd is a wanted criminal, and so is getting medical treatment under the eye of the Hong Kong Anti Terrorist Force (ATF), commanded by Ma Li. Ma finds out Soong is in Hong Kong to enlist his former Cambodian partners to rescue his son. Todd is suffering from amnesia, and psychologist Shirley Kwan is brought in the help him restore his memory. Kwan suggested implating a new identity in Todd, making him an undercover operative for the police, but Ma initially objects on moral grounds. The Cambodian dies from an apparent suicide, but Ma spots Soong at the scene before he disappears.
Soong breaks into the local TV station and finds out Ma's identity through old news bulletins. He also finds broadcasts condemning the Khmer Rouge, so he plants a bomb, which is detonated the next day by an employee. The CCTV footage from the station confirms it is Soong.
Suspecting that Soong will try to rescue Todd at the hospital, Ma orders Todd back to ATC headquarters and sets up an ambush at the hospital. Soong and a few terrorists arrive just as Todd is being moved. They somehow know about the set-up. After disrupting communications, they kill the ATC team and escape, but without Todd. Ma finally agrees to Kwan's idea. But Todd also begins to have flashbacks of his true past and becomes confused.
Soong demands that Ma bring Todd to the pedestrian bridge in Wan Chai North on the condition that he be alone. Todd was placed on the bridge, and an ambush team of snipers and undercover officers are set up. At the meeting time, an explosion erupts in a nearby building, causing the occupants to rush across the bridge. Guan appears in the confusion, stabs Todd's neck with a syringe and jumps onto a passing vehicle with an unconscious Todd, successfully escaping. Soong tries to kill Ma on the bridge, but flees when reinforcements arrive.
Soong tries to "cure" Todd by engaging him in familiar activities. Believing he is undercover, Todd attempts to contact Ma when Guan hires a ship to recover the chemicals. Ma arranges another ambush at the shipyard when the terrorists arrive on the ship. He also kept Todd's role as an undercover operative a secret from the other officers. The police suffer major casualties and Todd is shocked. He considers shooting Soong in the back. He sees Guan watching him, however and hesitates. He later ends up saving Soong and all three escape by sea. Todd sneaks back to the police, but by then Ma issued an arrest warrant for him. Tood returned to Soong and says he doesn't remember the cause of the revolution.
A police convoy is blocked by a stalled police car with an officer slumped over the wheel. They find the policeman's neck was slit and a bomb in his lap. Guan triggers the bomb in front of Todd, who has flashbacks on the way his son died. Ma orders police in the area to comb for more bombs.
At Kai Tak Airport, Guan and Todd enter the airport's restricted area as journalists on an airport tour. They slip away from the group, and are stopped by a pair of Airport Security Unit officers. Guan shoots both policemen to Todd's shock. Meanwhile, Soong manages to recover the chemicals. At ATF headquarters, the files found on Todd are cracked, revealing the plans to unleash the chemicals over Cambodia. Ma realises the terrorists may be planning to hijack a plane to seed the clouds, and orders the Special Duties Unit to rush to Kai Tak. He discovers, though that most of them were already erroneously deployed to the new airport site at Chek Lap Kok. Ma orders the remaining 12 officers to the airport hangar.
Guan and Todd successfully infiltrate the hangar, where they kill the technicians and hijack a small plane and crew. Soong transports the chemicals to the hangar, but just as he arrives, another group of ASU officers appear. The officers are shot in an ensuing gun battle, but several of Soong's men were also killed. Guan is badly injured trying to save Todd. She kills herself on the aircraft, and an infuriated Todd makes off with the chemicals while the plane is still in the hangar.
Ma and his team of SDU officers arrive at the airport. Todd fends off Soong's men, escaping into a large drain which leads to a tunnel system. Soong follows right behind him. Ma deploys his men at both ends of the tunnel to trap them and rushes in with his officers. Todd and Soong fight in the tunnel before Ma's arrival. Ma badly injures Soong, but Soong activates the chemical bomb and dies. Ma is able to pull an injured Todd out just as the tunnel gates are shut to contain the blast. Todd mysteriously disappears into the night.
At the new Hong Kong International Airport Todd leaves Hong Kong under the auspices of Ma, unknown to anyone else.

Question: Who arranges an ambush at the shipyard?
Answer: Ma