Step 1: Download
and
. Install IDA and extract Olly to a folder where you can access it.Step 2: Open Skill.dll up in IDA Pro and let the auto analysis complete. (This can take a while) You will know its complete when, down at the bottom, it says "The initial autoanalysis has been finished." You can go try doing this before it finishes, but its best to wait.
Step 3: Find the Fireball section. This can be done by using the search function at the top of IDA. Make sure the search choice is on "Text" and search for "CSkillFireball" until you find this.
Step 4: This is the beginning of the skill section on Fireball. Now, we need to find where it checks for 5 charges being loaded. This is always the hardest part for me: finding what to edit. The rest is easy. Look through the code until you find this.
[Notice: Look for the CMP al, 5]
Step 5: This is pretty easy to understand: It CMP's (compares) the number of current loaded charges against the number you need, five. If you have five, it JNB's (jump if not below) to the attacking sequence. Instead of JNBing, we need it to JMP (jump no matter what).
Step 6: Open up OllyDbg and Skill.dll. Go back to IDA and look to the left of where you saw the code with the JNB. You should see ".text:" and then a number. Copy the number. In Olly, press CTRL+G. Paste the number into the box, and click "Ok". Olly will go to the code you found in IDA.
Step 7: Editing. This is the easy part. Just double click the code in Olly (where it says "JNB SHORT Skill.xxxxxx") and change the JNB to JMP. As explained above, this will make it always jump to the code saying you can fire. Olly makes the code you changed appear red, so you can keep track of your changes.
Step 8: Save the file. Right click in the CPU screen in Olly, and press "Copy to executable" and "All Modifications". Then click "Copy All". Now, right click the new box that came up and press Save file. Over write your old one, and presto! You can now fire fireball with any number of charges.
Please feel free to ask any questions, or tell me if I forgot something. And don't forget: In a few days I'll make a more generic guide that anyone can use. This was just so simple, I though it would be good to show the basics with it.






