The Bounty Hunter

Milo Boyd is a former New York Police Department detective who works as a bail enforcement agent (bounty hunter). Milo's ex-wife, Nicole Hurley, is an investigative reporter who has been arrested for assaulting a police officer.
When Nicole receives a tip on a story, an apparent suicide that may have been a murder, she skips her bond hearing to meet her informant, causing the judge to revoke her bail and issue a warrant for her arrest. Just before Nicole arrives, her informant, Jimmy is kidnapped.
Milo is ecstatic when Nicole's bail bondsman, Sid offers him the job of bringing her to jail, for a bounty of $5,000. After questioning Nicole's mother Kitty, Milo apprehends her at a race track in New Jersey, throws her into his car trunk and drives back towards Manhattan. Nicole manages to escape briefly before he catches up with her.
They are being stalked, Milo by two thugs sent by Irene, a bookie, because of outstanding gambling debts; Nicole by corrupt cop Earl Mahler, who is connected with the story she is investigating, and both by Nicole's lovestruck coworker Stewart, bent on rescuing her from Milo. Stewart is confused with Milo by Irene's thugs and kidnapped in his place.
Earl tries to kill Nicole, but the two narrowly escape. Milo is not interested in explanations until Nicole admits that she's found evidence that implicates their mutual friend and Milo's ex-partner on the police force, Bobby, is involved with Earl. Milo decides to investigate with her.
Clues from Earl's car lead them to a country club, where they learn from a caddy that he owns a tattoo parlor in Queens, so they start to make their way there. Bobby warns the pair to stay off the road.
The nearest hotel is the bed and breakfast where they spent their honeymoon. They have feelings for each other and admit their mistakes. She comes out of the bathroom and overhears Milo telling Sid that he may sleep with Nicole, but he's taking her to jail. She handcuffs Milo to the bed and makes her way to the tattoo parlor, finding Jimmy and freeing him before she is captured by Irene's thugs.
Milo rescues her at a strip club. He calls an old friend from the police force and learns that Bobby is on his way to the police's evidence warehouse, which is being relocated to a new building. Bobby confronts Earl, who used to be his friend but has used Bobby's name to gain access to the warehouse and steal a large amount of narcotics and cash. Bobby decides to arrest Earl, but Earl draws a gun and shoots him. Milo and Nicole enter the warehouse and Milo is ambushed, but Earl is forced to surrender when Nicole points a shotgun at him.
Bobby explains that Earl was using him, as well as the man who supposedly committed suicide, to gain access to the warehouse. There was no proof, so Bobby was waiting for Earl to make his move before arresting him. Milo proudly notes that Earl might have gotten away with it if Nicole hadn't picked up certain clues. He and Nicole appear to have reconciled. They concede that sometimes their jobs have to come first. Milo turns Nicole into the police, so she can make her court hearing the next day.
On his way out of the precinct, Milo runs into a cop who insulted him earlier and punches him in the face. He is arrested and put in a cell next to Nicole's. He reminds her that it is their anniversary and they have to spend it together. Through the bars they admit their love and kiss.

Question: Who shot Bobby?
Answer: Earl