The end of Windows Live Messenger

Microsoft has, for a while now, been planning to discontinue the Windows Live Messaging platform in favor of the their newly purchased property, Skype. The initial shut-off for Windows Live Messenger was “first quarter of 2013”, later revealed to be April 8th, to April 30th. Keep in mind, the servers behind WLM will continue to stay on for legacy purposes (the xbox 360 for instance, uses WLM).

On April 25th, I was no longer able to sign in. I was prompted instead, with an option to “upgrade” to Skype. Seeing as Skype has an inferior text messaging system, I refused.

So, I fired up OllyDbg. Low and behold, like many of their previous restrictions placed on the client, the forced update is implemented via something they refer to as ‘Policies’ (you may remember how, for a short time, you could not click on certain links – that was a policy in effect).

This means that the forced update (while the policy may be retrieved from their servers, yes) is entirely client-side, and because of that, is able to be bypassed.

I tracked down the function that places the restriction in memory – which is then referenced at a later time. To bypass the forced update and continue to sign in, all you need to do is nop the check, and change a jnz to a jmp – and tada, you can sign in again.

This was done on Windows Live Messenger version 16.4.3505.0912.
Target file: msnmsgr.exe
File Offset: 000DB626
Find: 84 C0 75 33
Replace: 90 90 EB 33

UPDATE 10/18/2013:
I’ve had to reinstall windows due to a power outage rendering my OS corrupt. Due to that, I had to install the ‘new’ WLM.

Update for Windows Live Messenger version 16.4.3508.0205.
Target file: msnmsgr.exe
File Offset: 000A3BC2
Find: 84 C0 75 33
Replace: 90 90 EB 33

2 Responses

  1. Marcus says:

    Thanks for sharing the info!
    But I have a question. Was this done on the msnmsgr.exe or a dll component?

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.