Well, I have done some boring calculations, well... My program did :P
And I used the smallest offset that there was of the updated addresses.
Then I just +'ed em all together with the lowest offset.
And when I coded this my head was like

But I managed
And then It do some more math and find the new updated values based on 1 offset/address.
And now there is no need for the single address searching.
Well, I am also sorry, that I didn't bother to add the Stat editing stuff...
But If I get time and I want to do it, sure I can
Well, now I suppose you got little to do since you read all this