You should adjust the ones that already have withdraw chances first so you don't end up with things like chariots having a 10% withdraw, which is now below the baseline that every other unit has.
How do you find all of them without just doing a find on "<iWithdrawalProb>" and looking at them all? Probably the easiest way is to use a basic regular expression search. No, really. Notepadd++, and many other editors, allow you to set the find function to use a thing called a "regular expression" (also known as a "regex") in the search field. The details might vary a little, but in general this should work (it certainly does in Notepad++):
search for "<iWithdrawalProb>[^0]" (without the quotes).
That means "find the text string '<iWithdrawalProb>' followed by a character that is not a 0".
If you can't find the "^" character on your keyboard (or it causes it to accent some other character instead of producing a standalone character, or you just feel like it) then you can use "<iWithdrawalProb>[123456789]" which means "find the text string '<iWithdrawalProb>' followed by one character that is in the set of 1,2,3,4,5,6,7,8,9". Or you can simplify the set specification to "[1-9]" since a "-" in this context indicates a range.
Even if you don't know anything else about regular expressions, that one thing can save you a truckload of time. So remember: "[set]" means that you are looking for a character that is in the set you specified and "[^set]" means that you are looking for a character that is not in the set you specified (the "^" only means this when it is the first thing inside the bracket).
Well, you might also want to know that there are other characters that have special meanings and can't appear as plain text for the search without prefixing a "\" on it - the list is something like \.()[]^$*+ (I may have missed one or two). If any of these are in the text you are specifying (outside of a set specification), then you need to put a "\" in front of it.