Asian character registry values

1

Does anybody have any idea what these registry values are and for which software? enter image description here

Is it safe to delete them? They are under Current User

John Demetriou

Posted 2018-02-24T14:38:56.310

Reputation: 547

Answers

3

Those strings are probably ASCII text interpreted as Unicode. Most Windows API functions that take string parameters have two versions, one for 8-bit "ANSI" text and one for Unicode (UTF-16) text. If mistakes are made, a buffer holding 8-bit text can be interpreted as holding Unicode, causing pairs of characters to smash together into 16-bit Unicode characters. Due to the layout of the Unicode code point space, this almost always produces Asian characters. I suspect some programs used the wrong version of RegCreateKeyEx, mangling their nice ASCII key names into meaningless Asian text.

For example, if you mangle This is a test string in this way, you get 桔獩椠⁳⁡整瑳猠牴湩�. Mangling Awesome program v2.0 produces 睁獥浯⁥牰杯慲㉶〮.

To attempt to reverse the damage, you can use PowerShell!

[System.Text.Encoding]::ASCII.GetString([System.Text.Encoding]::Unicode.GetBytes((gcb)))

Open a PowerShell window (Windows+R, powershell), paste that command, copy the mystery key name from the Registry Editor, switch back to PowerShell, and press Enter. (The command pulls the text from your clipboard.) It will print the more-or-less original version; certain combinations of ASCII characters might create invalid UTF-16 sequences and not survive the round-trip. The last character of the original string might be replaced with ?? if it contained an odd number of characters.

Deleting these keys might cause the text-mishandling programs to stop working. Their purposes will probably become more clear once you know what they were intended to be named.

Ben N

Posted 2018-02-24T14:38:56.310

Reputation: 32 973