0

BIN file to resources of my executable file and then load it from resources instead of argv argument like : "loader.exe some.bin" i need a do this inside exe without putting file on disk here is code which i currently use:

    LPSTR finalShellcode = NULL, data = NULL;
    DWORD finalSize, dataSize;
    DWORD dwOldProtect1 = 0;
    SYSTEM_INFO sysInfo;
    HMODULE test = LoadLibraryA("User32.dll");

    if (argc < 2) {
        return 0;
    }
    if (!GetFileContents(argv[1], &data, dataSize)) {
        return 0;
    }

    if (data[0] == 'M' && data[1] == 'Z') {
        if (!ConvertToShellcode(data, dataSize, HashFunctionName("SayHello"), "dave", 5, SRDI_CLEARHEADER, finalShellcode, finalSize)) {
            return 0;
        }

And here is GetFileContents function :

DWORD GetFileContents(LPCSTR filename, LPSTR *data, DWORD &size)
{
    std::FILE *fp = std::fopen(filename, "rb");

    if (fp)
    {
        fseek(fp, 0, SEEK_END);
        size = ftell(fp);
        fseek(fp, 0, SEEK_SET);

        *data = (LPSTR)malloc(size + 1);
        fread(*data, size, 1, fp);
        fclose(fp);
        return true;
    }
    return false;
}

Iam try make BIN file like RC data but without solution i dont know how i can embed .bin to resource then load it directly from resources any ideas any help? Thanks a lot now i ADD test.bin as RCDATA with name IDR_RCDATA1 :

HMODULE hModule = GetModuleHandle(NULL); 
HRSRC hResource = FindResource(hModule, MAKEINTRESOURCE(IDR_RCDATA1), RT_RCDATA); // substitute RESOURCE_ID and RESOURCE_TYPE.
HGLOBAL hMemory = LoadResource(hModule, hResource);
DWORD dwSize = SizeofResource(hModule, hResource);
LPVOID lpAddress = LockResource(hMemory);
char *bytes = new char[dwSize];

but i dont know ho to make it working...

A also read : How to load a custom binary resource in a VC++ static library as part of a dll? but without solution

Samo
  • 11
  • 2
  • https://stackoverflow.com/questions/16527973/load-resource-as-byte-array-programmaticaly-in-c , https://stackoverflow.com/questions/9240188/how-to-load-a-custom-binary-resource-in-a-vc-static-library-as-part-of-a-dll – Igor Tandetnik Sep 18 '18 at 13:43
  • Possible duplicate of [How to load a custom binary resource in a VC++ static library as part of a dll?](https://stackoverflow.com/questions/9240188/how-to-load-a-custom-binary-resource-in-a-vc-static-library-as-part-of-a-dll) – 500 - Internal Server Error Sep 18 '18 at 16:16

0 Answers0