Pues ahora no se que decir . El error en windows 2000 de la unit base64 ya lo conocia, pero varios usuarios me habian confirmado que al añadir a la carpeta del ejecutable la libreria crypt32.dll de un Windows XP el problema se solucionaba. (Como se puede ver aquí http://delphi.jmrds.com/?q=node/43 ).The Procedure entry point CryptStringToBinaryA could not be located in the dinamic link library cript32.dll
La función esta en esa librería que te envié, lo único que se me ocurre es que por algún motivo este utilizando la del directorio system32 en vez la que dejaste al lado del .exe.
Tendré que buscar otra forma de codificar en base64 (hace tiempo que quería dejar de depender de la API para realizar esta función), pero no es nada fácil, y sorprendentemente hay muy poco código para hacer esto en pascal que no este centrado en strings.
Déjame que le de una vuelta ...