#include #include int main(int argc, char** argv) { if (argc != 5) { fprintf(stderr, "extractor [usage]: input_file output_file size offset"); return EXIT_FAILURE; } char* in = argv[1]; char* out = argv[2]; int size = atoi(argv[3]); int offset = atoi(argv[4]); char* data = (char*)malloc(size + 1 * sizeof(char)); FILE* fin = fopen(in, "r"); fseek(fin, offset, SEEK_SET); fread(data, sizeof(char), size, fin); data[size + 1] = 0; fclose(fin); FILE* fout = fopen(out, "w"); fwrite(data, sizeof(char), size, fout); fclose(fout); free(data); return EXIT_SUCCESS; }