IMHO one shouldn't expect a company to have any ethics to achieve a positive outcome for society. This needs to be baked into the rules (taxes, regulation, ...), so the ethical behavior becomes the rational behavior.
You can't have rules in a society, that are against the moral feeling of sizable chunk of the population. That's just going to be a source for conflict. At some point you do need a population with a moral compass or you get nowhere as a ruler, especially in participatory ruling systems like a democracy.
So, you want government to decide what is good and bad behavior?
companies are a fiction made out of people, they don't have anything, and regardless what the rules are I expect those people to behave ethically at any given time.
I'm not entirely sure when people started to have this idea that when they walk through a company door, as if this is some magical portal into the realm of amorality, give up their human responsibilities and faculties
[dead]
I think we should be able to expect a company to have ethics, just like we should be able to expect them to follow the laws, but we should also regulate them to ensure that they do and punish them meaningfully when they fail to.