The only thing miners can do is choose which transactions get confirmed. This is true regardless of whether they are attempting to attack the network with overwhelming hash power (A.K.A. 51% attack) or are performing honest mining services. The difference is that, with enough mining power, it is possible to do 2 things:
- Keep any other miners from solving any blocks
- Choose to unconfirm transactions that occurred in the past by re-mining past blocks (and all blocks after that) after removing the transactions
Note, that doing those two things still fits within the rules of what I said miners are capable of doing (choose which transactions get confirmed).
Now, if you have that power and you send a transaction, you can wait for the transaction to get however many confirmations the receiver demands. Then you can unconfirm the transaction, and re-send to some other address the same bitcoins that you already sent. Then you can confirm the new transaction in place of the old (now unconfirmed) one. You can repeat this process as many times as you want, re-spending your bitcoins over and over.
At no time can you create a signature spending someone else's bitcoins unless you have their private key.
Now, what you potentially could do would be to unconfirm the transaction that sent the bitcoins to the government. Of course, all this would do would be to put the bitcoins back in DPR wallets (and since he's in custody and the government has his private keys, that wouldn't accomplish much).
I suppose you could then unconfirm all transactions that contain unspent outputs to the DPR wallets, essentially putting the bitcoins back in the wallets of the people who sent the bitcoins to DPR, but you'd risk rolling back other outputs as well since a transaction can have more than one output.