Butterfly Effect: Revelation

Sam Reide (Chris Carmack) witnesses a woman killed, then wakes up in an ice-filled bathtub, his vitals being monitored by his sister Jenna (Rachel Miner). It is revealed that Sam can travel back to any time and location during his lifetime (occupying his body of that time in his life), needing only to concentrate on where and when he wishes to arrive. He has helped the local police capture criminals under the guise of being a psychic. We learn that Sam pays his sister's rent and buys her groceries, and that she rarely leaves the apartment and lives in squalor in a run-down section of Detroit.That night, Elizabeth (Sarah Habel), the sister of Sam's murdered girlfriend Rebecca (Mia Serafino), arrives at Sam's apartment. She believes that the man about to be executed for her sister's murder, Lonnie Flennonds (Richard Wilkinson), is innocent, and she offers to pay Sam to find the real murderer. Sam turns her down, but goes to speak with the man who tutored him on time travel, Goldburg (Kevin Yon), who reminds him of the cardinal rules: he's not to alter his own personal past, nor travel in time with his body left unsupervised. We learn that a fire that claimed the lives of Sam and Jenna's parents had claimed Jenna's life, but Sam altered time so that their parents died instead. After Goldburg's departure, their buxom bartender Vicki (Melissa Jones) seductively offers Sam a buttery nipple; he and Vicki have sex, but upon seeing Rebecca's photo, he cannot continue.Sam changes his mind and agrees to help Elizabeth out. He tries to help Lonnie without time-traveling, but Lonnie refuses the help, believing Sam to be the culprit. Frustrated, Sam travels back to June 1998. He first runs into a drunk Elizabeth, telling her to stay in her locked car. He goes into Rebecca's bedroom to find her already dead; while there, Elizabeth is attacked from her backseat. Sam returns to the present, to learn he no longer owns a car, is renting his couch to a roommate named Paco (Ulysses Hernandez), and no longer works for the police, instead being a discarded suspect for Rebecca's murder who has repeatedly asked for the case file. In 1998 Lonnie had seen Rebecca and Sam talking, and did not stop this time: as he was not at the murder scene, in this new present he is a wheelchair-using lawyer. Sam visits Goldburg, who suggests he go back to the scene of the third murder and this time only observe. Sam also visits Jenna, who is significantly better off and living more cleanly; she refuses to help him.Sam travels back to September 2000 and witnesses the third victim, Anita Barnes (Chantel Giacalone), being attacked, only to learn it is her boyfriend attempting to cater to her rape fetish. He is discovered and her boyfriend's punch sends him back to the present, where now Sam is renting a couch from Paco, who is about to evict him for non-payment. Goldburg is missing, and Lonnie is now the third victim while Anita remains alive, pepper-spraying him. At her apartment, Jenna tells him that Goldburg was about to implicate him in the murders, and furthermore tells him she fears a future Sam is the murderer. Sam complains he is now "too stupid" to fix things; Jenna pinky-swears him to not time-travel anymore. Drunk at the bar, he propositions Vicki, who is engaged in this timeline. After Sam leaves, the killer shows up and murders Vicki near an auto plant; her body is found by the police. As Sam left his receipt behind at the bar, he is hauled in by the police. Jenna extricates him; the police put a tail on him as he leaves. As he leaves, he takes Det. Glenn's (Lynch Travis) evidence notebook, which he uses to look at the scene of the crime and travel back to September 2004, before the bodies were found by the police.He returns to the present to find himself on Jenna's couch as she leaves for work, reminding him to clean up after himself and have dinner ready for her... their positions now effectively reversed from the beginning of the film. Sam returns to the auto plant, where the police lie in wait to arrest him. Sam convinces Det. Glenn to release him by telling him how his wife (Andrea Foster) mistook him for M.C. Hammer on their first meeting. Visiting home, Sam accidentally inhales some burundanga flowers from Goldburg's greenhouse, and barely can haul himself into the bathtub before time-traveling back to the abandoned auto plant, where he finds a severely injured Goldburg, and, running for help, is felled by a foothold trap.The killer approaches the trapped Sam, removing the mask as they approach to reveal that the killer is Jenna, who can also time travel. She has an incestuous love for her brother, having killed the women either because she perceived them as rivals for Sam's affections or because they were new witnesses introduced by Sam's rescue attempts. Sam travels back in time to the day of the fire that killed his parents; instead of saving Jenna, he traps her in her room.Sam awakes in a new timeline where he had fallen in love with Elizabeth (not Rebecca), and he, Elizabeth, and their daughter Jenna (named after his now-dead sister) (Alexis Sturr) are pulling up to a family barbecue, where he is greeted by his now-living parents and a perfectly healthy Goldburg. The film closes as Sam's daughter puts her Barbie doll on the grill and smiles as it begins to melt, implying that his young daughter has the same murderous psychotic tendences of Jenna.

Question: Who is the actual killer?
Answer: Jenna