#include <stdio.h>
#define buff 2
/*
Simple MD5 Checksum Changer
written by katharsis
www.katharsis.x2.to
*/
typedef struct bytepair BYTEPAIR;
struct bytepair
{
long offset;
char val;
};
static const BYTEPAIR byte_pairs[buff]= {
{0x000BC3F0, 0x00},
{0x000DC3F8, 0x00},
};
int main(int argc, char *argv[])
{
printf("\nMD5 Checksum Changer\nwritten by katharsis\n\n");
if(argc != 2) {
printf("Usage: %s <file>\n", argv[0]);
exit(1);
}
FILE *Target;
int i;
printf("Target file: %s\n",argv[1]);
Target = fopen(argv[1], "r+");
printf("Patching file...\n");
for (i = 0; i < 2; i++)
{
fseek(Target, byte_pairs[i].offset, SEEK_SET);
fwrite(&byte_pairs[i].val, 1, 1, Target);
}
fclose(Target);
printf("File successfully patched!\n");
return 0;
}