With the cold launch you are not sure that the main engine will start.
Generally you test the missiles electronics, batteries and systems before you cold launch it... if there is a fault that might prevent the main engine from firing it will be detected and the launch process wont start.
One risk of engine start is catastrophic failure and main engine detonation... with a hot launch that happens inside the launch container inside the ship which results in a serious explosion and damage and fire. A main engine failure on cold launch results in a large explosion above the launcher where the material spreads over a wide area and is much less damaging to the vessel itself... or in the case of an S-300 failure the missile will just fall back down to the deck.
Even 2 second late the missile will start falling and turn on itself and probably go in the wrong direction when the engine starts leading to hit the ground.
Have never seen that happen.
With hot launch you can test the engine and start the launch. If it fails you just stop it.
With a hot launch if it fails it wont launch, or it explodes in the tube... with solid propellent rockets you can't stop it once it is started.
One of the problems with the huge solid rocket boosters on the US Space Shuttle is once they are running you can't shut them down.
Missiles have now in-build test equipepent but with the cold launch you have to have your main engine working as expected or you loose it.
In hot launch you can save the missile if the engine doesn't work but you probably have a shorter service life for your launcher.
Cold or hot launch failures you dispose of the missile... you don't pick it up and put it back in the bottle and light the fuse again.