- if(*(Uint*)base == (0x7F|('E'<<8)|('L'<<16)|('F'<<24)))\r
- return ElfRelocate((void*)base, envp, Filename);\r
- if(*(Uint16*)base == ('M'|('Z'<<8)))\r
- return PE_Relocate((void*)base, envp, Filename);\r
+ if(memcmp(base, "\x7F""ELF", 4) == 0)\r
+ return ElfRelocate(base, envp, Filename);\r
+ if(hdr[0] == 0x7F && hdr[1] == 'E' && hdr[2] == 'L' && hdr[3] == 'F')\r
+ return ElfRelocate(base, envp, Filename);\r
+\r
+ if(hdr[0] == 'M' && hdr[1] == 'Z')\r
+ return PE_Relocate(base, envp, Filename);\r