Skip to content

Determine whether your environment is running under a binary translator

License

Notifications You must be signed in to change notification settings

kernelwernel/binary-translation-detector

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 

Repository files navigation

binary-translation-detector (btd)

This is a simple C program that will determine whether your environment is running under a binary translation layer. This is a type of software emulation that "translates" a different instruction set architecture for a different one in real time. For example, Microsoft XTA translates x86 code into ARM code.

Why?

This is mainly meant as just a fun and experimental program that I've developed while working on VMAware, a VM detection library. VMAware originally added binary translators as a detectable VM brand, but I ditched that idea as it was out of the scope of the project. So instead of just removing them, I'm adding them in this separate repository as I figured it was interesting enough to have it published as a gimmicky and stupidly simple C side project. Does this have any practical implications? Absolutely fucking not. But hey, what's stopping people from making stuff out of pure curiosity right?

Which binary translators can it detect?

For now, the program can detect 3 brands:

  • Apple Rosetta
  • Microsoft x86-to-ARM (also known as Microsoft XTA)
  • Microsoft Prism

About

Determine whether your environment is running under a binary translator

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages