1996 - Central High School student Robbie Whierdicht (Dwayne Johnson) is in the locker room shower dancing and lip-syncing to En Vogue's "My Lovin". A group of high school bullies led by Trevor Olsen (Dylan Boyack) come in and mock Robbie since he is overweight and dorky. Meanwhile, a school assembly goes on with the whole senior class honoring its most popular student Calvin "The Golden Jet" Joyner (Kevin Hart). Trevor and his goons carry Robbie into the gym and slide him across the floor butt-naked. Everyone laughs at Robbie, except for Calvin, who gives him his jacket to cover himself up. Robbie runs out of the gym, utterly humiliated.
20 years later, Calvin works an accounting job that he hates. His former assistant just got promoted above him. Calvin is married to his high school sweetheart Maggie (Danielle Nicolet), but their marriage hasn't been going well as of late. What's more, their high school reunion is coming up, and Calvin fears that he's peaked in high school and his life has just gone downhill.
At work, Calvin declines a Facebook invitation to the reunion. Immediately after, he receives a friend request from someone named Bob Stone. Immediately after THAT, he gets a suspicious phone call, but it turns out to be Maggie. Bob Stone then starts messaging Calvin to invite him out for a drink. He claims he is really Robbie Whierdicht. Calvin hesitantly accepts the invite.
Calvin walks to the bar and is surprised to find that Robbie has completely transformed into a muscular guy. The two have drinks and catch up. As Bob leaves for a moment, a man walks by and takes Bob's chair. Calvin tells the guy to give it back, but the guy's friends stand up menacingly. Bob returns and tells them to apologize for disrespecting Calvin. One of the goons happens to have a gun. Bob takes his shot and simply says "I don't like bullies" before kicking all their asses in less than ten seconds.
Calvin and Bob leave the bar, with Calvin excited over what he just witnessed. They head over to their old high school for a stroll down memory lane. They see a trophy case with all of Calvin's accomplishments, along with a picture of a girl named Darla McGuckian, whom Bob had a crush on and was noted for having two lazy eyes. Bob walks by the boys locker room and is brought back to the worst day of his life. Calvin comforts him and pulls him away from there.
The two then walk back to Calvin's house. Before they part ways, Bob mentions needing Calvin's help regarding something in Calvin's line of work. Bob goes into his house to use the computer. They come across files involving satellite codes and a bidding war. Bob spills beer on Calvin's laptop before they can see more. He then asks to sleep over. Calvin reluctantly allows him to do so.
In the morning, a group of CIA agents led by Pamela Harris (Amy Ryan) show up at Calvin's door looking for Bob. Calvin says he's on the couch, and the agents head in. Bob is nowhere to be found. Harris explains to Calvin that Bob is wanted for murder and conspiracy to commit treason.
The agents follow Calvin to work in case he makes contact with Bob. Sure enough, Bob calls Calvin and says he is somewhere in the building. Harris leads the agents to that specific floor, but Bob is really hiding in Calvin's office. Bob reveals he is in the CIA and that the people that want the satellite codes are willing to kill for them. Bob calls for an Uber to pick them up, which will be in six minutes. He times his next moves accordingly. Bob takes Calvin's tie and wraps it around the sprinkler on the ceiling. He then lights it on fire before Calvin runs outside to alert everyone to Bob's presence. The agents run up and start shooting at Bob, but the man effortlessly hits back and incapacitates most of the agents. He and Calvin are then cornered by Harris and the other agents. At the right moment, the sprinklers go off, giving Bob the chance to wheel Calvin away in a mail cart and burst out a window. They land on the company's inflatable balloons and ride away in the Uber.
Bob takes Calvin to his safe spot to remove the GPS from the car. Bob tells Calvin about how he's been set up, since his partner Phil (Aaron Paul) was trapped in an elevator and was left to be blown up, which Bob has been framed for. He believes someone with the code name "Black Badger" is seeking out the satellite codes for a sinister purpose, and he needs Calvin's help because he's the only person Bob trusts. An assassin shows up on his motorcycle. Bob knocks the guy off, leaving Calvin to take the motorcycle and ditch Bob. He calls Maggie and tells her to not go home. As he walks away, Harris pulls up in a van and makes Calvin get in. She says Bob is dangerous and flips his story around to say that it was HE that betrayed Phil and orchestrated his murder. She gives Calvin a device to use in order to alert them to Bob's whereabouts.
Calvin meets Maggie at the office of a marriage counselor named Dr. Dan...who is really Bob. They have a session in which Calvin is made to look like a bad guy who is hurting his and Maggie's relationship. After Maggie leaves, Calvin threatens Bob with calling Harris. Bob knows he wouldn't do that.
The two of them go to the office of someone that can help them out on their mission. Unfortunately for Bob, this person is Trevor Olsen (now played by Jason Bateman). After Trevor gets them what they need, Trevor brings up the incident that has traumatized Bob. Trevor claims to have found religion and he delivers a heartfelt apology to Bob...which he quickly takes back as he was faking. He's still a dick that thinks little of Bob. Calvin waits for Bob to kick his ass too, but Bob freezes up and decides to leave. As they leave the office, Calvin gets a call from Harris saying that he needs to deliver Bob to them, or something will happen to Maggie. Calvin then meets Bob outside. Bob says Calvin was always his only friend...which makes it harder on both of them when the agents arrive and apprehend them.
Bob and Calvin are detained at the CIA headquarters. The agents start to torture Bob to get info out of him by breaking one of his fingers. Filled with regret, Calvin fights back and rescues Bob, leaving the other agents in cuffs. Calvin apologizes to Bob for what he did, deciding he still wants to help him. Bob forgives him and proceeds to give him a high-five, only to see his messed-up finger. He pops it back into place.
Bob and Calvin learn the location of where the bad guys want to buy the satellite codes. They fly a plane to the spot, but Bob says the plane has run out of gas. They head in for a crash landing. Calvin expresses his regret of not being a father. Bob then pulls the plane back up, having faked the situation to get Calvin to express his fears under extreme stress.
Bob heads into the buy alone, telling Calvin, "I'll see you on the other side", which is the same thing he told Phil before his death. Calvin then spots Harris showing up at the location, leading him to think she's Black Badger. Calvin enters the buy spot to find Bob making the deal with the buyer (Thomas Kretschmann). Bob shoots at Calvin, but he just grazes his neck. The real Black Badger emerges to make a deal...it's Phil, claiming he has the real satellite codes. He and Bob argue over who the real Black Badger is, and Phil insults "Sixteen Candles" and "Road House", Bob's favorite movies. Harris and her agents arrive and start shooting at the buyer and his goons, leaving Calvin, Bob, and Phil to run. Calvin ends up swiping the codes.
The three all find themselves over a small bridge. Calvin has a gun in his hands, and he aims it at both Bob and Phil. He shoots Bob in the leg, but he holds the gun on Phil. Phil says he faked his own death and set Bob up simply because he was just annoyed with Bob as his partner, always being a dork and going on about how Calvin was his hero. Before Phil can kill Calvin, Bob rips out Phil's throat (just like "Road House") and pushes him into the river. Bob apologizes to Calvin for shooting him, saying he needed to make it look convincing.
The guys hand over the codes to Harris, who thanks them for their help. With Bob's name cleared, Harris has them taken to the reunion in a chopper. The two arrive and meet Maggie. Calvin promises to make things work between them.
The three enter the reunion. A new prom king is announced, and it's Bob. Calvin tells Maggie he hacked into the school's voting system and gave him the honor. Trevor and his buddies go up to make fun of Bob, but he won't have any of it, and he gives Trevor a punch that he's had coming for 20 years. Bob goes onstage and gives a speech stating that he's come to accept who he is and acknowledging Calvin as his friend. He then proceeds to take his clothes off, no longer ashamed of himself. The others cheer him on. Bob is then approached by Darla McGuckian (Melissa McCarthy). He takes off her glasses, claiming she is beautiful as she is. They then kiss. Bob and Calvin go on to dance.
Months later, Maggie is pregnant with her and Calvin's first kid. Bob arrives to pick Calvin up to hang out. He gives Calvin back his jacket that he gave him 20 years earlier. The two then head off.