#include #pragma comment(linker, "/merge:.data=.cld") #pragma comment(linker, "/merge:.rdata=.clr") #pragma comment(linker, "/merge:.cl=.main") #pragma comment(linker, "/merge:.text=.main") #pragma comment(linker, "/stack:0x1000000") #pragma comment(linker, "/base:0x140000000") #pragma bss_seg(".payload") char payload_data[BINARY_PAYLOAD_SIZE]; extern "C" { __declspec(dllexport) DWORD NvOptimusEnablement = 1; __declspec(dllexport) DWORD AmdPowerXpressRequestHighPerformance = 1; }; extern "C" { // workaround for release build removing 'payload_data' char* dont_remove_this() { return payload_data; } int s_read_arc4random(void*, size_t) { return -1; } int s_read_getrandom(void*, size_t) { return -1; } int s_read_urandom(void*, size_t) { return -1; } int s_read_ltm_rng(void*, size_t) { return -1; } }