Jeżeli nie potrzebujesz tych polskich znaków, to na Twoim miejscu bym się z tym nie męczył.
W każdym razie chodzi o to, że 122 to numer ostatniej litery alfabetu łacińskiego w ASCII, czyli 'z'. Polskie litery są dopiero później i na dodatek wymieszane z takimi znakami, jak á, ö, ç.
Pierwsze co mi przychodzi do głowy, to w przypadku tych znaków dodać warunki sprawdzania stricte do każdego znaku, tylko, że wtedy byś musiał zmienić również mechanizm szyfrowania, ale może jest jakiś prostszy sposób