main(int argc, char **argv) { char temp[255], esko[255]; int i, luuppi; if(argc!=2) exit(-1); strcpy(esko, argv[1]); for (i = 393; i > -1; i--) { printf("%d pass: %s\n", i, esko); for (luuppi = 0; luuppi < (long)strlen(esko); luuppi++) { temp[luuppi] = esko[luuppi]; if (luuppi < i % (long)(strlen(esko))) { esko[luuppi] = esko[luuppi + (long)(strlen(esko)) - i % (long)(strlen(esko))] - i % (long)(strlen(esko)); if (esko[luuppi] < 33) esko[luuppi] += 93; } else esko[luuppi] = temp[luuppi - i % (long)(strlen(esko))]; } } printf("decrypted character: %s\n", esko); }