(Thread title renamed to avoid wrong interpretation of the title)

I'm trying to make a keyMaker for Internet Download manager 3.0.7.
I found the following things :

- The Serial must be 23 characters long as : AAAAA-BBBBB-CCCCC-DDDDD
- The valid characters are in the range : "LOXMP7WBZAQ2CVUNE04KYFGHJRS981TI3D65"
- A checksum is performed as follow :
for "AAAAA"
int ck = 0;
for each char in "AAAAA"
pos = position of the character in the allowed characters string.
ck = 37*ck + pos

at the end ck must be divisible by 11 (ck % 11 = 0)

* the same method is used with BBBBB that must be divisible by 29.
* checksum of CCCCC divisible by 17.
* checksum of DDDDD divisible by 5.

Even if the serial is accepted, (the application will shutdown), on the next launch the app will detect that is not registered.

Can anyone help me to deal with this prog.