How did Shilo know the real reason Nathan was working for Rotti?
At the very end of the film, on stage, when Rotti, Shilo and Nathan are all finally confronting each other, and Rotti tells Shilo that Nathan is the one that has been making her sick with his medicine.
Rotti then tries to get Shilo to kill Nathan so that he may leave her Gene Co. before he dies. She turns against him explaining that she is not a murderer.
She then goes on to say, "You used my mother's death to use my father, You used my father's debt to use me too."
My problem with those lyrics is that Rotti had never once told Shilo the truth about what really happened. She (like Nathan) knows what Rotti has had them both believe, that Nathan killed Marni. The lie is the whole reason Nathan owes a debt to Rotti in the first place. He became a Repo Man in exchange for keeping Shilo from ever knowing the truth, and to keep himself out of jail for the death of his wife, which of course, Rotti is responsible for anyway.
But, even if Rotti's story were the truth, and Nathan had accidentally killed Marni... it still wouldn't explain how Shilo knew of the debt. Nowhere in the film does anyone explain this situation to Shilo... and Rotti even says he'll take the "truth" to his grave.
But, perhaps I misunderstood.