Lobstersseen ×2NEW
Sem86: a full-system x86 emulator without hardcoded semantics(liblisa.nl)
Sem86 is a full-system x86 emulator that loads instruction semantics at runtime from an input file, rather than relying on hardcoded semantics. This approach allows for easy switching between different semantics to accurately emulate undefined behavior and undocumented instructions. Despite using a non-optimized approach, Sem86 achieves impressive performance, running 1.9× faster than Bochs and reaching ~42% of QEMU's performance. The long-term goal is to integrate Sem86 with libLISA, enabling "CPU cloning" by automatically inferring semantics from a CPU, although currently it uses handwritten instruction semantics. This emulator has potential applications in malware analysis, allowing for sandboxed environment testing.