When troubleshooting Phase 1 of a VPN tunnel the MM_WAIT_MSG state can be a great clue as to why your tunnel is not forming. If your firewall hangs at a certain state then this will show you where in the path your VPN is failing.
What is happening
Initiator sends its hashed IKE policy details to the receiver to create the initial contact. Initiator will stay in this state until it receives a response back from the remote peer.