The film focuses on Second Lieutenant Bart Gregory (David Anders) who has been killed under mysterious circumstances in Iraq. After his friends and girlfriend Janet (Louise Griffiths) attend his funeral, Bart awakens in his grave. Enlisting the help of his best friend, Joey Leubner (Chris Wylde), Bart begins to understand and learn how to deal with his new undead state; mainly, the fact that Bart needs blood to hold back decomposition and that he returns to a state of in-animation during daylight hours. Joey does research online to find out what Bart is and seems to be stuck between a Zombie and Vampire, finally stating that Bart is a Revenant.
While buying beer from a small store in Koreatown, Bart and Joey become vigilantes when Bart both kills and feeds off of a gangster who is holding up the store. They enjoy the media coverage of the incident, and Joey asks Bart to bestow him with the "dark gift". Bart refuses to do so and laughs the idea off. However, after a subsequent attempt at vigilantism goes wrong and Joey is fatally wounded, Bart is forced to drink Joey's blood in order to save him.
The two continue their vigilante killing spree for a while, until Mathilda (Jacy King), a friend of Janet who dislikes both Bart and Joey, follows them and threatens to reveal their activities to the world, especially Janet. Joey shoots Mathilda through the chest, but before she dies, she is able to send the information to Janet.
Fearing they will be caught, Joey tells Bart to meet him back at the apartment with a packed bag in half an hour, then drives away mysteriously. Bart meets a teary Janet at the apartment, who forces him to explain the fact that he requires blood to stay stable. She then begs him to feed off of her instead, so that he will no longer need to kill. Bart loses control and drains her until she dies.
Joey returns to the apartment with a "pimped out" hearse for the two to use, and suggests that they go to Las Vegas to continue their reign. However, after Bart shows him Janet's corpse, the two begin to fight, and proceed to shoot each other repeatedly, although this is insufficient to kill either of them. Joey storms out and states that he will continue on to Vegas alone. Bart decapitates Janet in order to ensure her death, then drops her remains over the bridge where he and Joey usually disposed of their corpses. Bart is captured by SWAT teams and taken to jail, where, come dawn, he collapses in his cell. Upon nightfall, Bart reawakens in the morgue and escapes, returning to the apartment. Inside is a package containing Joey's severed head.
Since he was decapitated at night, Joey is still "alive", and Bart uses a vibrating dildo to enable Joey's head to talk. Joey warns Bart that a gangbanger who was their first kill is after him for revenge, and then requests that Bart kill him for good. Bart crushes Joey's head underneath a bulldozer, and then tries to find a way to kill himself.
Against normal convention, a bullet through the brain does not have the desired effect, and neither does hanging himself with Christmas lights. He even throws himself in front of the subway train, but only succeeds in severing his arm. Bart then boards a train, where he finds and reads a letter that Janet left in his uniform's pocket at his funeral. He breaks down and attacks the only other passenger. He is caught and flees into the station where more SWAT teams attempt to catch him.
He finally escapes to a hilltop and at dawn collapses once more, while he is being surrounded by men in hazmat suits.
The film then cuts to a tour of sorts, where various military personnel are being shown revenants in glass containers, including Bart. A General asks Bart if he was a soldier, and then states that this fact may give him an advantage.
Bart is then shown in a large canister being airdropped into Khﾅｫzestﾄ］ Province, Iran, along with the other revenants, where the canister opens upon landing, releasing him on the country.

Question: With what does Bart try to hang himself?
Answer: A string of Christmas lights
Alternative answer: Christmas Lights