Depois de examinar os valores de cabeçalho da resposta de Richard , eu criei uma solução que é rápida, fácil e requer apenas um editor de texto. Mesmo o notepad.exe padrão do Windows funcionaria.
-
Abra o executável no editor de texto. Você pode ter que arrastar e soltar ou usar o diálogo
Open...
do editor, porque o Windows não mostra a opçãoOpen with...
no menu de contexto para executáveis. -
Verifique os primeiros caracteres imprimíveis após a primeira ocorrência de
PE
. É mais provável que essa parte esteja cercada por pelo menos alguns espaços em branco (pode ser muito disso), por isso pode ser facilmente feita visualmente.
Aqui está o que você vai encontrar:
x86:
PE L
x64:
PE d†
Uma palavra de aviso: usando o bloco de notas padrão em arquivos grandes pode ser muito lento, então é melhor não usá-lo para arquivos maiores que um megabyte ou poucos. No meu caso, levou cerca de 30 segundos para exibir um arquivo de 12 MiB. O Notepad ++, no entanto, conseguiu exibir um executável de 120 MiB quase instantaneamente.
Esta é uma solução que pode ser útil caso você precise inspecionar um arquivo em uma máquina na qual não é possível instalar nenhum software adicional.
Informação adicional:
Se você tiver um editor HEX disponível, o deslocamento da assinatura PE está localizado no deslocamento 0x3C
. A assinatura é PE
(letras "P" e "E" seguidas por dois bytes nulos), seguidas por um Tipo de Máquina de dois bytes em Little Endian. 0x8664
0x14c
Os valores relevantes são %code% para o executável x64 e %code% para x86. Há muito mais valores possíveis, mas você provavelmente nunca encontrará nenhum desses, ou poderá executar tais executáveis no seu PC Windows.
A lista completa de tipos de máquinas, juntamente com o restante das especificações do .exe, pode ser encontrada em Especificação Microsoft PE e COFF Secção Tipos de Máquina .