There may not have been malice by the Blockchain.info management, but maybe there was malice by some programmer who had access to the code and intended to sweep the affected addresses once they had enough bitcoins in them . While the bug looks just like an accidental omission, that appearance may be intentional too.
And the 500+ BTC johoe swept was not enough for that mythical in-house programmer, he was waiting for more hoping nobody will notice reused R values on the blockchain? What you are saying makes no sense, let alone it is impossible because every commit to the code is tracked on the GitHub and such a criminal programmer would be caught. There was no malice from the Blockchain.info side. Just look at the bug, uninitiated variable used as array index failing that array to empty without throwing an exception, it looks like a bug.
The bug was caught after a few hours, perhaps he did not have enough time to get home and start sweeping.
Why would a thief settle for 500 BTC if he could wait a day and sweep 5'000 or more.
There was a claim of 100 BTC being swept by someone else than @johoe. A thief would avoid sweeping small amounts since the more people affected the greater the risk of the attack being discovered and blocked.
A malicious programmer would have tried to make the bug look like an accidental error, to excuse himself.
The programmer who did the commit was innocent, but a malicious colleague or hacker broke into his computer and removed the initialization statement without him noticing.
There are many possibilities... but I admit: as Napoleon said, never attribute to malice what can be satisfactorily explained by incompetence...