Another thought, does she know you're interested? 'cos it sounds like you're in the friend zone, which makes sense as you seem nice and she clearly has low self-esteem and likes men who treat her like Shit.