Catch Me If You Can

In 1963, teen-aged Frank Abagnale (Leonardo DiCaprio) lives in New Rochelle, New York with his father Frank Abagnale, Sr. (Christopher Walken), and French mother Paula (Nathalie Baye). When Frank Sr. is denied a business loan at Chase Manhattan Bank due to unknown difficulties with the IRS, the family is forced to move from their large home to a small apartment. Paula carries on an affair with Jack (James Brolin), a friend of her husband. Meanwhile, Frank poses as a substitute teacher in his French class. Frank's parents file for divorce, and Frank runs away. When he runs out of money, he begins relying on confidence scams to get by. Soon, Frank's cons increase and he even impersonates an airline pilot. He forges Pan Am payroll checks and succeeds in stealing over $2.8 million.
Meanwhile, Carl Hanratty (Tom Hanks), an FBI bank fraud agent, begins tracking Frank. Carl and Frank meet at a hotel, where Frank convinces Carl his name is Barry Allen of the Secret Service, and that he was also after the fraud. Frank leaves, Carl angrily realizing a minute too late that he has been fooled. Later, at Christmas, Carl is still at work when Frank calls him, attempting to apologize for duping Carl. Carl rejects his apology and tells him he will soon be caught, but laughs when he realizes Frank actually called him because he has no one else to talk to. Frank hangs up, and Carl continues to investigate, suddenly realizing (thanks to a waiter) that the name "Barry Allen" is from the Flash comic books and that Frank is actually a teenager.
Frank, meanwhile, has expanded his con to include the identities of a doctor and lawyer. While playing Dr. Frank Conners, he falls in love with Brenda (Amy Adams). While asking her father's permission to marry her, he admits the truth about himself and asks for help with the Louisiana State Bar exam. Carl tracks him to his engagement party and Frank is able to sneak out a bedroom window minutes before Carl bursts in. Before leaving, Frank makes Brenda promise to meet him in Miami two days later so they can elope. Frank sees her waiting for him two days later, but also notices plainclothes agents waiting to arrest him, realizing he has been set up and escapes on a flight to Europe.
Seven months later, Carl shows his boss that Frank has been forging checks all over western Europe and asks permission to go to Europe to look for him. When his boss refuses, Carl brings Frank's checks to printing professionals who claim that the checks were printed in France. From an interview with Frank's mother, Carl remembers that she was actually born in Montrichard, France. He goes there and locates Frank, and tells him that the French police will kill him if he does not go with Carl quietly. Frank assumes he is lying at first, but Carl promises Frank he would never lie to him, and Carl takes him outside, where the French police escort him to prison.
The scene then flashes forward to a plane returning Frank home from prison, where Carl informs him that his father has died. Grief-stricken, Frank escapes from the plane and goes back to his old house, where he finds his mother with the man she left his father for, as well as a girl who Frank realizes is his half-sister. Frank gives himself up and is sentenced to 12 years in prison, getting visits from time to time from Carl. When Frank points out how one of the checks Carl is carrying as evidence is fake, Carl convinces the FBI to offer Frank a deal by which he can live out the remainder of his sentence working for the bank fraud department of the FBI, which Frank accepts. While working at the FBI, Frank misses the thrill of the chase and even attempts to fly as an airline pilot again. He is cornered by Carl, who insists that Frank will return to the FBI job since no one is chasing him. On the following Monday, Carl is nervous that Frank has not yet arrived at work. However, Frank eventually arrives and they discuss their next case.
The ending credits reveal that Frank has been happily married for 26 years, has three sons, lives in the Midwest, is still good friends with Carl, has caught some of the world's most elusive money forgers, and earns millions of dollars each year because of his work creating unforgeable checks.

Question: Who plays Frank Abagnale?
Answer: Leonardo DiCaprio