Witam,
Próbowałem stworzyć modyfikacje zasobów graficznych pewnego programu. Niestety okazało się, że developer użył w ich przypadku enkrypcji (nie wiem po co i dlaczego bo modyfikowałem wiele zasobów graficznych w innych podobnych programach i nigdy na enkrypcje się nie natknąłem). W każdym razie trudna część jest już za mną. Zdobyłem kod w C dzięki, któremu mogę dokonać dekrypcji plików. Mam jednak trywialny problem... Nie znam totalnie składni C (do modyfikowania programów. o których wspomniałem wystarczyły moje umiejętności z zakresu grafiki + ewentualnie napisanie jakiegoś banalnego pliku .bat). Czy ktoś mógł by mi pomóc zrobić z tego kodu działający program? Jak mogę temu programowi wskazać plik, który chcę poddać dekrypcji? Czy trzeba jakoś zmodyfikować ten kod by program poprosił nas o input pliku? Z góry ogromnie dziękuję za pomoc.
Poniżej kod:
#include <stdio.h>
int main (int argc, char **argv)
{
FILE *inp, *outp;
int i;
char sig[] = "CF10", *ptr;
if (argc != 3)
{
printf ("usage: decode [input] [output]\n");
return -1;
}
inp = fopen (argv[1], "rb");
if (inp == NULL)
{
printf ("bad input file '%s'\n", argv[1]);
return -2;
}
ptr = sig;
while (*ptr)
{
i = fgetc (inp);
if (*ptr != i)
{
printf ("input file sig is not 'CF10'\n");
return -2;
}
ptr++;
}
outp = fopen (argv[2], "wb");
if (outp == NULL)
{
printf ("bad output file '%s'\n", argv[1]);
return -2;
}
do
{
i = fgetc(inp);
if (i != EOF)
fputc (i ^ 0x8d, outp);
} while (i != EOF);
fclose (inp);
fclose (outp);
printf ("all done. bye bye\n");
return 0;
}