extern "C" DECLEXPORT(int) Entrypoint(void) { strcpy(achBss, szStr2); memcpy(achBss, szStr1, sizeof(szStr1)); memcpy(achBss, (void *)(uintptr_t)&Entrypoint, 32); #ifdef VBOX_SOME_IMPORT_FUNCTION memcpy(achBss, (void *)(uintptr_t)&SomeImportFunction, 32); return SomeImportFunction(); #else return 0; #endif }
extern "C" DECLEXPORT(int) Entrypoint(void) { g_VM.fRecompileSupervisor = false; g_VM.fRecompileUser = false; g_VM.fGlobalForcedActions = 0; strcpy(achBss, szStr2); memcpy(achBss, szStr1, sizeof(szStr1)); memcpy(achBss, &g_VM, RT_MIN(sizeof(g_VM), sizeof(achBss))); memcpy(achBss, (void *)(uintptr_t)&Entrypoint, 32); #ifdef VBOX_SOME_IMPORT_FUNCTION memcpy(achBss, (void *)(uintptr_t)&SomeImportFunction, 32); return SomeImportFunction(); #else return 0; #endif }