Wishmaster 2: Evil Never Dies

This article's plot summary may be too long or excessively detailed. Please help improve it by removing unnecessary details and making it more concise. (September 2016) (Learn how and when to remove this template message)
During an attempted robbery of a museum, the fire opal that contains the Djinn is accidentally released by a stray gunshot. One of the burglars, a beautiful young woman named Morgana Truscott (Holly Fields), steals the gem and is forced to abandon her partner during the escape. The Djinn escapes and kills the remaining burglar when he accidentally wishes he'd never been born. As the police enter the museum, the demon finishes forming into full size, revealing the Djinn (Andrew Divoff). The Djinn surrenders to the police and is led away.
That evening, Morgana is shown sleeping very restlessly, her left arm dangling over the edge of the bed. In the meantime, Demarest is in a holding cell waiting to be transferred to prison, where he kills a fellow prisoner. In her dreams, she sees glimpses of the Djinn in his true form. The next day, Morgana goes to Church to visit the priest tending the church, a man named Gregory (Paul Johannson) - a former lover of Morgana's before he found God and joined the priesthood.
In prison, Demarest continues to kill prisoners and other personnel through purposely misconstrued wishes, and is confronted by Butz (Rhino Michaels) and his two henchmen, the Tiger brothers (James Kim and Simon Kim). Butz runs all "underground business" at the prison and gives Demarest a "friendly" warning that he is going to be watching him.
Morgana is up at dawn, screaming out to her unseen tormentor, demanding to know who he is. She goes to her computer and does an internet search on Persian Mythology. A voice-over from Morgana recites the contents of a web site she is reading on the Persian deity Ahura Mazda. He was known as a deity of both light and dark, symbolizing the duality of good and evil. He was also known as the keeper of the Stone of the Sacred Fire. Gregory arrives at her loft, he says that Father Dimitri from the church noted that she had passed by, and she seemed unwell. Morgana opens up just a little, telling Gregory she hasn't been sleeping well, and experiencing confusing nightmares about a voice telling her to "fulfill the prophecy" and confesses to the robbery and the murder of the guard.
Morgana goes to the prison to visit Demarest. She demands to know why he confessed to the robbery, and he says it was so she wouldn't have to, and admits to not having to be in prison long, before showing his true form, driving Morgana away. Morgana is at home, doing more research on the internet on Persian mythos. She finds references to the Djinn, a powerful being that laid waste to the Persian court before the King's alchemist created the Stone of the Sacred Fire and imprisoned the Djinn inside it. The Persian deity Ahura Mazda was enlisted to keep the Djinn imprisoned in the "space between worlds" so that he cannot escape and bring about world-wide apocalypse. Morgana is startled as her window is abruptly blown open by a sharp gust of wind, papers flying everywhere.
Morgana goes to see Gregory the next day to tell him about her findings. Gregory rides to the prison with Morgana and confronts Demarest, demanding he leave Morgana alone. Demarest knows exactly who Gregory is, and about his past relationship with Morgana. He even perfectly duplicates Morgana's voice, speaking seductively to Gregory.
Later that evening, Morgana, alone in her loft, begins undergoing a number of rituals aimed at purifying her soul, as only someone pure of heart can banish the Djinn back into his prison.
Back at the prison, Demarest kills the prison warden and escapes the prison when one of the prisoners wishes to be released.
Osip brings Demarest to Pushkin and tells him that Demarest is a Wishmaster who can give Pushkin anything he wants. But Pushkin brushes them off, saying he already has great wealth and power, and he doesn't need or desire fame. As he is leaving, Demarest asks if Pushkin has any enemies he would like to see eliminated, and Osip quickly pounces. Pushkin's greatest enemy is a rival crime boss named Moustafa. The mere mention of Moustafa's name sends Pushkin into a rage. Demarest assures Pushkin that he can do what Pushkin himself might not be able to, like take care of Moustafa. Carelessly, fueled by his anger, Pushkin wishes to have Moustafa's head.
Just then, Morgana rushes into the club room, shooting Demarest twice in the chest with her gun. Both she and Osip freeze in horror as the attack only causes the Djinn to assume his true form. He laughs at Morgana's foolishly thinking she could kill him.
Gregory finds Morgana praying feverishly at the church altar, and sobbing inconsolably. She confesses to Gregory that she tried to kill Demarest and then saw the Djinn's true face. She laments that her guilt, the blood of the innocent man she killed at the art gallery heist, can never be washed away, and so she can never hope to fight the Djinn. Gregory patiently counsels her, promising that God can cleanse any and all burden she carries if only she allows Him to, and that while the Djinn might be too powerful for they to fight, God can win the battle using them as His instruments. During this, they find Morgana is invulnerable when she attempts suicide so the Djinn can not grant her the three necessary wishes.
Morgana and Gregory are preparing for the trip in pursuit of the Djinn. Gregory has compiled more notes, including the incantation used by the alchemist who imprisoned the Djinn; "As was prophesied, the alchemist took the stone into his hand as a woman pure of heart takes the light of God unto her soul, and spoke the words, Nib Sugaroth Baheim". Morgana points out that unlike the two of them, the alchemist knew what he was doing. But as Gregory points out, these notes are the only solid plan they have on how to defeat the Djinn. Morgana begins to kiss Gregory, and despite his initial reticence, she makes love to him. In Vegas, the Djinn begins granting wishes to the casino patrons in order to collect the remaining required souls.
As Morgana and Gregory ride a cab through Las Vegas to the casino Demarest is operating out of, the Djinn stands in his office in his true form. Holding up the fire opal, he intones a deep growl and calls in all the debts owed himâhe claims the souls everyone gave up through their wishes.
Noting that Demarest has left the fire opal on his desk, Gregory quietly inches toward it while Demarest is speaking to Morgana. Rushing forward, he grabs it and recites the incantation used by the alchemist. Demarest merely smiles again, noting the two of them have studied the legends well, before gesturing, and the fire opal vanishes from Gregory's hand into Demarest's. He warns them about playing with forces they don't understand. After Morgana accidentally wishes for the Djinn to go to hell, they're transported inside the fire opal, and Gregory is killed after she wishes for him to be released.
But Morgana has forgotten that death is often a release. She screams in grief at the Djinn, angrily wishing for a world free of evil. But the Djinn reminds her that evil is but half of a perfect sphereâwithout it, good cannot exist. He warns her that he is losing his patience with her. Morgana tries desperately to resist the Djinn's will.
Morgana's fears suddenly quiet and she asks the Djinn the meaning of fulfilling the prophecy. She reminds him that he himself told her that she would know when the time was right. The Djinn impatiently recites the prophecy to her, that the one who wakes the Djinn shall have three wishes; upon the granting of all three, the race of Djinn will reign over the Earth. Due to a slip of the tongue, Morgana realizes the meaning of the prophecy, and wishes for the guard she killed to be alive again.
After receiving a vision of the guard alive and well, she takes the Djinn's fire opal and intones the alchemist's chant, "Nib Sugaroth Baheim". The Djinn is again banished and all the victims returned to life.

Question: Who shoots Demarest?
Answer: Morgana.