A couple of weeks ago MSN Messenger started to crash on start-up on my Windows 7 x64 box. The message indicated an invalid memory access violation in WLDcore.dll. After a bit of searching on the Internet, I found a couple of pages that pointed to this registry value being the problem (the number at the end will be your passport ID):
, and advised to remove it, which allowed me to start MSN Messenger, but it would crash again when restarted because it recreated this value on exit. This time I looked at the value that was stored and it turned out to be a URL to the custom profile picture I uploaded a while ago.
I deleted the registry value one more time, so I can start MSN messenger and sign in, and removed my custom profile picture, which fixed the problem for good.