This is not mine. I got this from somewhere else.
Bypass Client-Side Names (Basic WPE tutorial)
Well who'd figure that the first post somebodey new makes on the forum is actually an addition to the community?
I know, I'm defying the laws of the universe. But that's besides the point, I'm sure all of you leeches out there would like to get to the point of this whole post. So, I'm going to break what I'm about to tell you into a summary of what you'll have and be able to do after reading this.
Basic WPE hacking and knowledge
Being able to bypass the client-side restricted names. For example, being able to use the name Illidan, Medivh or Malygos.
Through the use of your mind, create hacks of your own and give back to the community.
This tutorial is for complete beginners. It will teach you the very basics of WPE and packet editing with WPE.
To all of you who already have knowledge in WPE, scroll to the bottom of the post to find the simple process.
Programs that you'll need
Permedit
WPE Pro
World of Warcraft
Lets start then. First some definitions.
Client - In basic understanding, the local user(you) connected to the server.
Client-Side - Anything to do with the local client. For example, most modelhacks are client-side only, meaning only you(the client) can see it.
Server - A computer running a set up(ArcEmu, etc.) that allows clients to connect to it and interact with eachother through the server.
Server-Side - Anything to do with the server. For example, your gear, items, etc. are stored on the server and thus they only be accessed by the server. Meaning that if you wanted to change them, you would have to hack the server. A working stat-changer would therefore have to be a program that hacks the server and inserts information.
Packet - A sect of data(information) sent to, or received by, the server.
Winsock Packet Editor Professional(WPE Pro) - This is the main tool used inside this hacking tutorial, it requires no knowledge of Winsock or any actual packet editing to use it(for basic purposes). Essentially, it edits the data sent to and recieved by the server.
Permedit - A program that grants administrative access to programs.
Filter - Used to find and change hex code data along a column.
Now that you undestand those, you'll be able to get off to a good start with a bit of knowledge about what your actually doing and how it works. Onto the next part.
First, start up WPE Pro, then start up Permedit and search through the list, find WPE Pro.exe and grant it permissions.
Now, start up World of Warcraft, login and go to the character list screen. Click the create a new character button but don't type in a name or do anything yet. Go back to WPE and target world of warcraft by clicking the "Target Program" icon, finding WoW.exe in that list, highlighting it and then clicking open.
Hit the record(play) button at the top left of the interface. Go back to world of warcraft and type in a name(don't bother choosing the facial features or hair, this is just an example, and the name can be anything), create the character. But make sure the first letter you choose isnt the same first letter as the name you want(explanation further down).
Go back to WPE Pro and hit the stop recording(stop) button. A window should popup, this window contains all the information that WPE Pro just recorded. Look to the right of the window, the first packet you see should be a "send" packet. Underneath the send, you should see a bunch of dots, random characters and of course, the name that you've chosen. Each character(dots included) represents a column when you make a filter, so the first character(Most likely a dot) in that packet, is the first column. Now, if you count the characters up to the first letter of the name you've chosen, you'll find that that first letter is located at the 7th column. The first letter is the only letter we're going to need to bypass the client-side name protection.
You've probably already noticed, but the hex codes are to the left, so by logic, you should conclude to look to the 7th hex code along the first line. This holds the hex code for your letter. Copy that hex code down somewere or keep it in your memory. Name the filter and exit the editing box. Check the filter, hit the on button and go back into World of Warcraft.
Now, say the name you want is Medivh. You'd now repeat the same process you just did, but choosing a name with the capitol letter M(a name that isn't Medivh or restricted). Once you've done that and have the hex code for the capitol letter M. You're ready to make your own filter.
We're almost done! Just a few more steps to go.
Now, to create a filter, click on the desired filter(filter 1 etc.) and click the pencil icon(edit). As you might have already guessed, we're going to have to head to the 7th column. Now, the search line tells WPE to search out a certain hexcode along that packet under a said column. The modify line tells WPE what to modify it to. Now in the search area, type in the hexcode for your letter that you first had, in the modify line, type the hexcode for the second letter you had.
Time to see our plans come to frutition
Go and create a new character, this time choose all the things you want, class, hair, features and such. Now, for the name. Lets say you want Medivh, you'd replace the letter M with the first letter you copied down. So lets say that first letter was D, you'd type in your character name as Dedivh, click create.
Avoila, you now have a character named Medivh in your character list.
The reason for this? The list of forbidden names is client-side and probably hidden inside one of the World of Warcraft .mpq files. The client doesn't check the sent packets for the name, so it just assumes that you are actually creating a character named Dedivh, but when you send the packets to the server asking to create the character, it's really Medivh. This is because you told the server to change the D into an M through the use of your filter and WPE Pro's packet editing capabilities.
In short for the experienced: Say you want to create a character named Malygos, go to the character selection screen and type in Dalygos for the name, but don't hit the create character button, make a filter along column 7 searching for 44( the hex code character for D) and __(the hex code character for M) along the modify line. You can use any character you feel like using for the switch, for a different name without the letter M, repeat the process but change the modify to hex code of the character you need to change it to(doesn't have to be the capitol hex code).