Написание слов одного языка с алфавитом другого называется транслитерацией..
Латиница имеет всего 28 букв, причём некоторые буквы дублируют друг друга - так буквы "к" и "с"
могут читаться как "к", могут читаться как "ж" - j и g; с может читаться как ц..
буквы v и w читаются как в..
z читается как з..
Нет букв ш,щ,ч - есть буквосочитания, причём для разных языков они могут быть разными, так ш
в английском будет писаться как "sh", а в немецком - "sch", "ч" - в английском "ch", в немецком - "tsch"...
В общем, большая неопределённость и возможны несколько вариантов из-за несовершенства латиницы..
И программа, которая пишет транслитерацию, должна это учитывать и выдавать тоже несколько вариантов..
Так что по моему мнению не стоит искать программу, а просто самому сделать транслитерацию..