Recommended Posts

Hi, ive been working on trying to get animated custom emotions work in msn messenger 6 and this is what ive found out about it so far.

Custom emotions are stored here: C:\Documents and Settings\USERNAME\Application Data\Microsoft\MSN Messenger\EMAIL\CustomEmoticons, if you have for example 5 custom emotions there will be 7 files in the folder. There is one file called map.txt it will read something similar to this:

<msnobj Creator="[email protected]" Size="764" Type="2" Location="TFR141.tmp" Friendly="AAA=" SHA1D="HbAOHnbnyRpJRJS/leWdvyQLRFo=" SHA1C="M53lPb3XQl2Eklnvc5jmD0dmO60="/>

The file TFR141.tmp (the file name could be anything) is the file with info about your custom emotions, if you rename it to a .txt it will read something like this:

(88) gost-2-1053702256 <msnobj Creator="[email protected]" Size="592" Type="2" Location="TFRAC.tmp" Friendly="AAA=" SHA1D="ZYSjjA3UhMjdopsmli7NZP7BqQ0=" SHA1C="JhXGjmzq9yNxC1LsfB2jIsu1t5o="/>

(test) 1033 <msnobj Creator="[email protected]" Size="322" Type="2" Location="TFR140.tmp" Friendly="AAA=" SHA1D="7e1vkzqVLy8UKOVJAwEeyHvjVoA=" SHA1C="q1PbKsC0rJK6c7pxmN0UopOkGTs="/>

Each file under Location= is your emotion file so if you rename it to a .png its your emotion. Messenger uses the SHA1 encryption so you cannot edit your emotions after they have been entered into messenger under my emotions. If you try and edit your emotions and change the Size= tag messenger will say your custom emotions cannot be user (or something similar to that)

If you edit a custom emotion this code

SHA1D="7e1vkzqVLy8UKOVJAwEeyHvjVoA=" SHA1C="q1PbKsC0rJK6c7pxmN0UopOkGTs="/>

would need to be changed to make it work. All this info applys for the "Backgrounds" and "UserTile" folders aswell.

Dan

Also there were rumors that msn messenger 6 used the mng format for its animated emotions (mng is basicly animated png) this is untrue, msn messenger uses pngs with sections of 19x19 pixels and chops them up and makes it animated you can check this by using reshack and exporting one of the animated emotions.

Dan

Reminder, SHA1 is your Secure Hashing Algo. that takes input up to 2^64 bits in length and produces a 160-bit message digest which is all hell to brute force. The strings you pasted are not SHA1 hashes, by the way. Read below.

Some random notes:

Partial Type Listing(?)

===============

Type 2 = Emoticon

Type 3 = Profile Picture

Type 5 = Background

Example map.txt SHA1(false) String

=========================

VMmh9p+B+5j4hiCGxJfjwIv/qWw=

These are not SHA1 hashes, as they contain invalid characters. An example SHA1 hash would look like:

0efe503114c284670128cd45c7981efef3a7483b

The string above is Base64-encoded (or it seems to be) - Its output (when decoded) yields something similar to:

Tɡ ėl

(For exactness (as some characters don't display correctly), you can code a simple PHP script to output its decoded form and pipe it to a file)

I haven't been able to figure out why/where these are used however they seem to be hashes/signatures of files which have data inside them that do the same thing to another set of files (redundancy) More info will be available when I learn of more.

You'll probably find a little more out by investigating the use of the following exported functions in MSNM6 (hooking/monitoring would be nice):

CryptReleaseContext, CryptDestroyHash, CryptCreateHash, CryptAcquireContextA, CryptGetHashParam

Kiddies: I do not recommend you remove the use of these functions (via r.engineering) within' MSNM6 as its used in other places, not just in emotes. (Passport/etc)

hmm dont really think this should be in Customization & Skinning Section since its kinda todo with programming and software but your the boss Radish?.

Dan

I agree. hes probably trying to get all the msn messenger 6 stuff together. And the fact that it has emoticons in the title doesnt help

now not to spoil your ideas, but remember the following:

animated emoticons requires a mechanism to be triggered so that MSN Messenger knows it's animated and animates it, you cannot simply link up a couple of 19x19px images, crack all the way to get MSN Messenger display it and think MSN Messenger would animate it for you

Microshaft has been using this method to do animations in their applications for a long history already, for example the butterfly icon flying on top of the Messenger windows when you log in is a very good example

if Microshaft wants to forbid you to animate your custom emoticons, they have their own way of doing it, the most effective one would be NOT building the mechanism of animating linked 19x19px images and enable animated gif support as custom emoticons

hope you guys will have fun reverse engineering Messenger 6 but don't give too much hope on getting animated custom emoticons to work, this is my tip for you guys

This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Posts

    • My father still uses a programme written in dbase3. Still manages to work with a little help from dosbox. 
    • Microsoft hides these secret Windows 11 performance boost settings available on every PC by Sayan Sen Windows enthusiasts often look for ways to extract as much performance out of their systems as possible, and it's often the case that they try and do so while trying to minimize the heat and power consumption. This is especially relevant in the case of mobile Windows PCs since laptops and notebooks tend to get hot and management of that heat and power is harder in such a form factor. As such users often turn to techniques like under-volting which can be used to squeeze out the maximum capabilities of a chip while also maintaining lowered power levels. There are official apps from AMD and Intel with the likes of Ryzen Master and XTU (Extreme Tuning Utility). While these are quite handy, most enthusiasts probably prefer to dig into the BIOS and play around with settings there like Curve Optimizer on Ryzen, which lets users set various frequency-voltage scaling values. These are essentially called P-States. If you are not familiar with them, Processor Power Management is done through Advanced Configuration and Power Interface (ACPI) P-states and C-states. While P-states or performance pwoer states handle CPU voltage-frequency scaling, C-states deal with CPU sleep states so that some of the CPU functions, which are not necessary at that moment, can be disabled. The P-states and C-states work together to make the processor run more efficiently. It helps the OS and apps determine which cores can be parked and which should be boosted. Of course not every user is an enthusiast or knows the technicalities and integrities of how things like overclocking or undervolting work. Thankfully for them Windows itself offers something pretty cool, though it is hidden by default on all systems. By default, Windows only has two P-States, "Minimum Processor State" and "Maximum Processor State." However, this can be changed with a Registry trick to expand the options under a secret "Processor performance boost mode" dropdown. This essentially enables the HWP or hardware P-States available on a device, and these are not controlled just by the OS itself as the underlying hardware gets involved too. In total there are five Processor Performance Boost Mode profiles that control how Windows requests and allows CPU turbo/boost behavior under the different power policies. They are: Disabled: In this mode, processor boosting is effectively turned off. The CPU will avoid entering turbo or boost frequencies and instead operate closer to its base frequency ceiling. This can significantly reduce power consumption and heat output, but at the cost of reduced burst performance and responsiveness in short workloads. Enabled: This is the standard behavior where boost functionality is allowed under normal conditions. The processor can opportunistically increase frequency when workload demands it, balancing performance gains with power and thermal constraints as managed by the system. Aggressive: Aggressive mode favors performance more heavily, allowing the CPU to enter higher boost states more readily and sustain them longer. This should in theory improve responsiveness under bursty or heavy workloads but increases power draw and thermal output compared to the default enabled behavior. Efficient Enabled: This mode still allows boosting, but with a stronger bias toward energy efficiency. The system attempts to use boost more selectively, avoiding unnecessary frequency spikes when the performance gain is marginal. Efficient Aggressive: This is a hybrid approach where boost is still performance-responsive, but the system continuously weighs efficiency more heavily than in Aggressive mode. It aims to deliver noticeable performance improvements while reducing wasted power in less demanding scenarios. Here's how to enable the Processor performance boost mode: Open Registry Editor: Press Win+R, type regedit, and click OK. Go to: HKLM\SYSTEM\CurrentControlSet\Control\Power\PowerSettings\54533251-82be-4824-96c1-47b60b740d00\be337238-0d82-4146-a960-4f3749d470c7 (where HKLM stands for HKEY_LOCAL_MACHINE_) Modify the value of Attributes from 1 to 2 (you can find modify option by right-clicking) After that, exit Registry, you should now be able to see the new "Processor performance boost mode" dropdown menu: As you can see there are now five new P-States or CPPC states or power profile available that help define the boost mode processor setting on your PC. Wrapping it up here's a quick run-down of the settings as defined by Microsoft itself. Setting Description Disabled The corresponding P-state-based behaviour is disabled. Collaborative Processor Performance Control (CPPC) behaviour is disabled. Enabled The corresponding P-state-based behaviour is enabled. CPPC behaviour is Efficient Enabled. Aggressive The corresponding P-state-based behaviour is enabled. CPPC behaviour is Aggressive. Efficient Enabled The corresponding P-state-based behaviour is Efficient. CPPC behaviour is Efficient Enabled. Efficient Aggressive The corresponding P-state-based behaviour is Efficient. CPPC behaviour is Aggressive. Aggressive At Guaranteed Windows calculates the desired extra performance above the guaranteed performance level, and asks the processor to deliver that specific performance level. Efficient Aggressive At Guaranteed Windows always asks the processor to deliver the highest possible performance above the guaranteed performance level. In the next part we shall be comparing these settings to explore how much of a benefit or regression they can provide in terms of performance and power efficiency. If you decide to change the values on your system and are experiencing problems like crashes or an overheating PC, make sure to revert the steps back to the original state.
    • I think he means you haven't reviewed previous UFC games. Of course it doesn't matter... Every time you just report on something that involves the President even if just simply what happened you guys usually get accused of being anti-Trump. We live in fun times.
    • So how did you solve the problem? Disabling Secure Boot isn’t a solution.
  • Recent Achievements

    • One Month Later
      Leroy Jethro Gibbs earned a badge
      One Month Later
    • Conversation Starter
      flexorcist earned a badge
      Conversation Starter
    • One Month Later
      AndreaB earned a badge
      One Month Later
    • One Month Later
      agatameier earned a badge
      One Month Later
    • Week One Done
      agatameier earned a badge
      Week One Done
  • Popular Contributors

    1. 1
      +primortal
      518
    2. 2
      +Edouard
      198
    3. 3
      PsYcHoKiLLa
      147
    4. 4
      ATLien_0
      93
    5. 5
      Steven P.
      77
  • Tell a friend

    Love Neowin? Tell a friend!