#include "ecall.hpp" // Example payload: resolve and call MessageBoxA via the VM's syscall layer. // On Windows: a dialog box pops. On Linux test (stub syscalls): a0 returns 0. extern "C" void janus_main() { void* msgbox = janus_resolve("user32.dll", "MessageBoxA"); if (!msgbox) return; const char* text = "JanusLoader: RISC-V VM shellcode running"; const char* caption = "JanusLoader"; uintptr_t args[4] = { 0, // hWnd = NULL (uintptr_t)text, (uintptr_t)caption, 0, // MB_OK }; janus_host_call(msgbox, args, 4); }