This python script below can create new valid checksum, It probably won't help much. But you should at least give it a try.
import base58
key = '5JLUSIY1ap3diK5PP2PIuAtdhyHKqyPTDzccqlHfiMcCGd5s8LM' #change this key to your private key
x = key.replace('I', 'i')
y = x.replace('l', 'L')
bytekey = base58.b58decode(y[0:46] + 'z'*5)[:33]
print(str(base58.b58encode_check(bytekey), 'utf-8'))
I can create the code that specific on your case, but I need more information [ex. how many 'I' and 'l' in your key and Where is it located?].
May be a months or a years, If you tried every possible way but still can't find the valid key, contact me at telegram or email on my profile.