Skip to content

Find the target CPU architecture of Windows binaries (DLLs, EXEs and others).

License

Notifications You must be signed in to change notification settings

doctolib/windows-binary-architecture

Repository files navigation

windows-binary-architecture

Installation

# with npm
npm install windows-binary-architecture

# with yarn
yarn add windows-binary-architecture

What is this about

Find the target CPU architecture of Windows binaries (DLLs, EXEs and others).

The module exposes a single function, getTargetArch(path, callback(err, archName, archCode)) which opens an executable file and determines what CPU architecture the file was built for, by calling your callback with a name for the architecture and its code, according to the table on the Windows documentation, reproduced here.

Name Value Description
UNKNOWN 0x0 The contents of this field are assumed to be applicable to any machine type
AM33 0x1d3 Matsushita AM33
AMD64 0x8664 x64
ARM 0x1c0 ARM little endian
ARM64 0xaa64 ARM64 little endian
ARMNT 0x1c4 ARM Thumb-2 little endian
EBC 0xebc EFI byte code
I386 0x14c Intel 386 or later processors and compatible processors
IA64 0x200 Intel Itanium processor family
M32R 0x9041 Mitsubishi M32R little endian
MIPS16 0x266 MIPS16
MIPSFPU 0x366 MIPS with FPU
MIPSFPU16 0x466 MIPS16 with FPU
POWERPC 0x1f0 Power PC little endian
POWERPCFP 0x1f1 Power PC with floating point support
R4000 0x166 MIPS little endian
RISCV32 0x5032 RISC-V 32-bit address space
RISCV64 0x5064 RISC-V 64-bit address space
RISCV128 0x5128 RISC-V 128-bit address space
SH3 0x1a2 Hitachi SH3
SH3DSP 0x1a3 Hitachi SH3 DSP
SH4 0x1a6 Hitachi SH4
SH5 0x1a8 Hitachi SH5
THUMB 0x1c2 Thumb
WCEMIPSV2 0x169 MIPS little-endian WCE v2
null Unknown architecture, name is null and the architecture code is sent to the callback as-is

About

Find the target CPU architecture of Windows binaries (DLLs, EXEs and others).

Resources

License

Stars

Watchers

Forks

Packages

No packages published