From OBMMex Documentation
To avoid BSA corruption, you should use remove the BSA edits before doing anything that may want to alter the BSA's. This includes uninstalling/reinstalling oblivion or installing patches.
In the event of BSA corruption, you can use the 'BSA uncorrupter' utility to restore the BSA to a usable state.
Hopefully.
BSAs are like zips. Lots of the game original files in there.
Lets say one BSA contains ...
Texture 1
Texture 2
Texture 3
You have a mod with a replacer file for Texture 2
Alteration does the following to the BSA
Texture 1
Texture 2Texture 3
So that it always uses your loose file texture 2.
Now delete your loose file Texture 2 (Un-Install a mod)
The game cannot refer to the BSA for the file because its been ALTERED to make it look like the file does not exist in the BSA
Result = Purple texture.
The same applies to alterations to the sounds BSAs, Meshes BSA etc.
Now times the above with hundreds/thousands of loose files that have replaced the files in the BSAs from all the mods you have had installed, every one of those files since you enabled Alteration have invalidated the same files in the BSAs (the hash table of the BSA has had each of those files struck through, not deleted, just imagine a zip file has a list of its contents, and you put a line through one of the items on the list - The file is still in the BSA, but it cant be referenced anymore by the game)
If you have started using Alteration, for EVERY mod you un-install with OBMM you have to use the quoted routine above to undo the alterations. Forget that just once among un-installing / re-installing loads of other mods you have a complicated puzzle to un-ravel
Or you can re-install the game with fresh (un-altered) BSAs and start again.
This time though - Just use BSA Redirection from the start and dont change it. No matter what old advice you come across saying "This mod needs BSA Alteration" dont use that method.
Redirection is the only method used by Wrye Bash for this reason, and no matter what mods I have thrown in and out and replaced in my bash installers folder .. Its worked perfectly 100%, and my BSAs remain un-altered.