-PLEASE READ THE ENTIRE GUIDE BEFORE FOLLOWING ANY STEPS TO AVOID ANY CONFUSION-
-THIS GUIDE ONLY APPLIES IF YOU ARE ROOTED WITH S-OFF ON HBOOT 1.58-
-IF YOU HAVE INSTALLED THE ICS OTA UPDATE THEN YOU SHOULD HAVE HBOOT 1.58, UNLESS YOU HAVE DOWNGRADED.-
-IF YOU HAVE DOWNGRADED YOUR BOOTLOADER AND ARE NOT ON HBOOT 1.58, LEAVE THIS PAGE-
-I ALSO RECOMMEND THAT YOU HAVE TWO SEPARATE SD CARDS YOU CAN USE FOR THIS. NO DATA WILL BE DELETED OFF OF EITHER-
-KEEP IN MIND, THAT IF YOU DO THIS, YOU MAY NOT BE ABLE TO BOOT BACK INTO YOUR STOCK ICS ROM FROM THE OTA UPDATE-
-YOU WILL ALSO NEED A MICRO SD CARD READER TO PLUG YOUR SD CARD STRAIGHT INTO YOUR COMPUTER-
If you are not rooted, and do not have S-OFF, check out this guide by crimsy. It has all the instructions you need to root and obtain S-OFF. It worked for me.
Now for the fun part. You're positive you're on HBoot 1.58, and you're getting bootloops when you flash roms. The fix is actually quite simple.
First, go to this thread by mpgrimm2
Scroll down until you see a post on the thread by ramjet73. This post contains a list of HBoot downloads. These are all free.
First, find the one that says "PG86IMG_JBear_1.58.5858_hboot_Sprint_ICS.zip" . Download that to use as a backup.
Now, we're gonna go by exactly what I did. But I recommend you do your own research on which Hboot is the best for whatever ROM you're trying to flash.
First off, all of these are already S-OFF, so you wont need to redo the wire trick.
Anyway, I downloaded the first one on the list, "PG86IMG_1.40-hboot.zip".
Now, to install this, you're pretty much gonna trick your phone into "updating" to it.
To do this, just download the HBoot you've chosen to be the best for you (in my case it was the first one on the list, 1.4).
Now just rename that file to "PG86IMG" without quotation marks.
Next, copy it to the root of your SD card.
The rest takes place on your phone. Power off your phone, and boot into the bootloader (Hold volume down + power button).
If you've done the previous steps correctly, your bootloader should detect the HBoot you downloaded, and ask if you want to update.
Volume up= Yes
Volume down = No
If you're positive about this, then choose "Yes".
It should update and tell you to reboot.
This is where I ran into a problem. I was still running stock ICS from the OTA update, and I got stuck in a bootloop. My phone would freeze at the the Sprint animation, turn off, and repeat. I thought I could just disregard it, boot into recovery, and flash my new ROM. But every time I booted into the bootloader all I could do was either update or reboot. This is where that micro SD card reader comes in. Just pop your SD card into your computer, and remove the HBoot you downloaded. Then put your SD card back in your phone and try rebooting into the bootloader again.
If it boots into your bootloader as normal, then that should be it. You should be on whatever HBoot version you chose to download (this worked for me with 1.4)
Now try flashing that ROM again and let me know how it goes.
Keep in mind, different ROMS may have different results. You may still need to flash certain kernals or wipe specific partitions as instructed by the developer of the ROM you want to flash.
Feedback is appreciated. (: