المشكله ترتكز فى شيئين للحل
وهما كتالى
اا الغاء ال file size check او قبول فتح الملفات ال exe التى يتجاوز مساحتها الميجاء
هاهو الكود للتوضيح
المشكله
اذا كان مساحته الملف اقل من ميجاء يعمل البرنامج
اما اذا كان اكبر من ميجاء تظهر رساله خطاء عند تشغيل البرنامج
الكود
#include <stdio.h>
#include <stdlib.h>
//CUSTOMIZE THIS DATA///////////////////
///////////////////////////////
const char* APPLICATION_NAME = "any name";
const unsigned long TARGET_FILE_SIZE = 358339;
const char* TARGET_FILE_EXE = "file.exe";
////////////////////////////////////////
///////////////////////////////
void main(){
FILE *TARGET_FILE;
unsigned long FILE_SIZE = 0;
int CurChar = 0;
char FILE_GUTS[TARGET_FILE_SIZE - 1];
while(CurChar <= 173){
CurChar++;}
printf(" any thing \n");
printf("any thing\n");
printf(" any thing\n");
TARGET_FILE = fopen(TARGET_FILE_EXE,"rb+");
if(!TARGET_FILE){
printf("\n");
printf("any thing\n");
printf("any thing\n");
printf("any thing\n");
printf("any thing\n");
printf("\nany thing");
printf("\nany thing");
scanf("seeya");
return;
}
printf("Target found!\n");
printf("Checking file size...\n");
while(fgetc(TARGET_FILE)!=EOF){FILE_SIZE++;}
fclose(TARGET_FILE);
TARGET_FILE = fopen(TARGET_FILE_EXE,"rb+");
if(FILE_SIZE != TARGET_FILE_SIZE){
printf("\any thing\n");
printf("any thing\n");
fclose(TARGET_FILE);
printf("\nany thing");
scanf("seeya");
return;
}
printf("\n");
FILE_SIZE = 0;
while((CurChar=fgetc(TARGET_FILE))!=EOF){
FILE_GUTS[FILE_SIZE] = CurChar;
FILE_SIZE++;
}
fclose(TARGET_FILE);
//PLACE OFFSET PATCHES HERE://///////////////////////////////////////
//To change the value @ offset 00001ADB to hex 74 do the following:
//HEX OFFSET PATCHES: FILE_GUTS[0x1ADB] = (char)0x74;
//or:
//DECIMAL OFFSET PATCHES: FILE_GUTS[6875] = (char)0x74;
FILE_GUTS[0xf0] = (char)0x85;
FILE_GUTS[0xe0] = (char)0x74;
/////////////////////////////////////////////////////////////////////
FILE_SIZE = 0;
TARGET_FILE = fopen(TARGET_FILE_EXE,"rb+");
while(FILE_SIZE <= TARGET_FILE_SIZE - 1){
fputc((int)FILE_GUTS[FILE_SIZE],TARGET_FILE);
FILE_SIZE++;
}
printf("\nany thing");
printf("\nany thing");
printf("\nany thing");
printf("\nany thing");
scanf("seeya");
return;
}