Well, for starters, any corporation is headquartered somewhere, and I think it's not at all unreasonable that the country where it takes place can attach strings to it. After all, corporations don't pick a spot for their headquarters arbitrarily - they derive certain benefits from it - and if they are dodging the associated costs, then we have a free rider problem.
But even setting that aside, my emphasis isn't on the corporation itself so much so as individuals working in it, who are the ones actually doing those things. I don't see why we can't impose restrictions on our residents, saying that they e.g. can't enable oppressive foreign regimes. And that, in practice, would have the same effect on the corporation - they wouldn't be able to do it here, and they'd have to relocate that entire operation into China or another place that would allow it.
Or prohibit any resident from profiting from it, for that matter, e.g. by investing in a foreign corporation that does such things - which would also preclude US corporations from establishing foreign subsidiaries to dodge the responsibility but still partake in the profits.