#include <stdio.h>
#include <stdlib.h>
#include <string.h>

#include "XXX.h"
// ------------------------------------.

int main(int argc, char *argv[]) 
{
	// Usage: decrypt a-file b-file password
	if (argc != 4) {
		printf("Usage: decrypt a-file b-file password \n");
		pause();
		
		exit(1);
	}
	
	printf("argc= %d \n", argc);
	int i;
	for (i=0;i<argc;i++) {
		printf("i= %d, argv[]= [%s] \n",
		i, argv[i]);
	}
	pause();
	
	FILE *f1, *f2;
	if ((f1= fopen(argv[1], "rb"))==NULL) {
		printf("\n *** Error of fopen() of f1 \n");
		pause();
		
		exit(1);
	}
	
	f2= fopen(argv[2], "wb");
	// -------------------------------------------
	
	int ch1, ch2, ct1= 0;
	
	int l1= strlen(argv[3]);
	int sum= 0;
	for (i=0;i<l1;i++) {
		sum+= argv[3][i];
		printf("sum= %d, argv[3][i]= %1c \n",
		sum, argv[3][i]);
	}
	sum%= 256;
	
	for (;;) {
		ch1= fgetc(f1);
		
		if (ch1==EOF) {
			break;
		}
		else {
			ch2= ch1^sum;
			
			fputc(ch2, f2);
			ct1++;
		}
	}
	
	fclose(f1);
	fclose(f2);
	
	printf("Done! ct1= %d \n", ct1);
	pause();
	return 0;
}// end of main()

