It's clearly caused by bad weather. Iran didn't want him dead. Israel did but I don't see a scenario where they could have done something.
If there's no reason, there's usually no outside involvement, but in this case there's such reason: a warning.
Iran has recently angered some powerful nations with basically unlimited resources, so I wouldn't be surprised if someone placed a small explosive device on that helicopter and waited for a good moment (bad weather) to detonate it. I'm talking about a micro device, the size that could cut a wire or sever a hydraulic connection. An IED the size of a coin.
If it wasn't an accident the Iranian side will probably want to keep it a secret anyway because they don't want the world to know their security detail had a mole, or failed to protect heads of state.