I don't think we have an in-built moral compass. We learn from those around us how we are supposed to behave. I think we have an in-built desire to belong to a social group and to a community, and this influences us towards moral behavior, even for those who chafe at the limits society places on them.
I think it's also is why people who are misbehaving try to cover up or rationalize their actions. They seek to avoid the condemnation of their community and their social group. After all, if they were concerned about god, they would not misbehave at all-- they cannot hide their actions from god's eyes, according to most religious belief.