On MintME, smart contract addresses are computed using the hash of the deployer's address and nounce. The nounce is incremented every time you send a transaction.
When the MintME hardfork was performed, the devs stored the final state of the old blockchain in the initial state of the new blockchain. The devs failed to carry over address nounces, which meant that anyone can change smart contracts they have deployed.