This is a solid question, and one that I like to ask my students about. I would like to point out that it is an opinion question, and either answer is correct. The important part of the response will be to defend your opinion about Mary Maloney.
I don't like thinking of Mary as a hero or a villain. She is probably better described as a victim of circumstance. I can defend the notion of her being a hero because she does protect her unborn child. That's what heroes do. They protect innocent people, and nothing is more innocent than an unborn child. I also can think of Mary as a hero if I compare her to Patrick. He's a character that is easy to think of as a villain. He completely blindsides Mary with the news that he is leaving her, and it devastates Mary because he is the central force around which her life revolves. If Patrick is the villain, and Mary fights against Patrick, then she is the hero.
On the other hand, I can see Mary as a villain, too. She kills an unsuspecting, unarmed human being and then lies to law enforcement in order to get away with it. Additionally, she has the investigating detectives eat the murder weapon while she laughs about it. In my head I keep picturing an evil genius doing his/her sinister laugh right before the credits roll. That's what villains do.
“Personally, I think it’s right here on the premises.”
“Probably right under our very noses. What you think, Jack?”
And in the other room, Mary Maloney began to giggle.