Descompactador ou extrator da imagem do BIOS

1

Eu quero ver o código da imagem do BIOS do PC descompactado. A primeira maneira que vejo é baixar a atualização do BIOS Flash do fornecedor, mas ela está pronta. Como posso descompactá-lo? Os fornecedores interessados são Gigabyte, ASUS, Supermicro, HP. A segunda maneira é descarregar totalmente o BIOS atual. Posso descarregar a imagem do BIOS enquanto uso o Windows ou o Linux?

Exemplo de ROM de 1 MB da ASUS

0000:0000 | 41 53 55 53   54 45 4B 00   00 00 00 00   00 00 00 00 | ASUSTEK.........
0000:0010 | FF FF FF FF   FF FF FF FF   FF FF FF FF   08 C0 01 00 | ЪЪЪЪЪЪЪЪЪЪЪЪ.ю..
0000:0020 | F1 3F 5C A4   08 00 90 CB   FF FF 11 90   00 00 00 00 | Я?\╓..░кЪЪ.░....
0000:0030 | 01 00 00 00   07 0A 00 00   08 20 09 04   7A 06 01 00 | ......... ..z...
0000:0040 | 5A 7F 06 83   01 00 00 00   11 00 00 00   D0 1F 00 00 | Z..┐........п...
0000:0050 | 00 20 00 00   00 00 00 00   00 00 00 00   00 00 00 00 | . ..............
0000:0060 | 00 00 00 00   A1 00 00 00   01 00 02 00   07 0A 00 00 | ....║...........
0000:0070 | 1A 00 00 00   00 00 00 A4   08 04 08 20   01 04 00 00 | .......╓... ....
0000:0080 | 01 00 00 00   7A 06 01 00   00 00 00 00   00 00 00 00 | ....z...........
0000:0090 | 00 00 00 00   00 00 00 00   00 00 00 00   00 00 00 00 | ................
0000:00A0 | 00 00 00 00   00 00 00 00   00 00 00 00   00 00 00 00 | ................
0000:00B0 | 00 00 00 00   00 00 00 00   00 00 00 00   00 00 00 00 | ................
0000:00C0 | 66 48 29 C4   14 A1 20 3E   9C F1 87 83   AA 14 FB DA | fH)д.║ >°Я┤┐╙.Шз
0000:00D0 | 09 83 A3 33   EA F8 B0 68   00 B2 20 2A   9E AA C7 CD | .┐ё3ЙЬ╟h.╡ *·╙гм
0000:00E0 | C7 E7 0C 17   05 C7 27 D7   A5 1B 9B 01   29 4A 41 E0 | гГ...г'в╔.⌡.)JAЮ
0000:00F0 | 58 54 D4 57   11 A4 A8 26   66 D9 AA 9F   B0 C8 5E 09 | XTтW.╓╗&fы╙÷╟х^.
0000:0100 | 2A 7C 3A 08   0F C7 CF 17   A8 78 8E 3C   19 C4 18 CE | *|:..го.╗x▌<.д.н
0000:0110 | B7 DE 2D 5F   71 5D C9 C9   16 51 7A 43   D0 3A 25 E0 | ╥ч-_q]ии.QzCп:%Ю

Isso não parece com código pronto para desmontar (apenas verificado, há uma mistura selvagem de códigos de máquina fp e int). Talvez seja criptografado?

    
por osgx 03.08.2011 / 18:42

2 respostas

3

link descreve o ASUS descompactador de 1MB * .ROM:

ASUS BIOS is based on AMI BIOS so we used AMIBIOS BIOS Module Manipulation Utility, MMTool.exe, to extract the Main BIOS module. Open downloaded .ROM file in MMTool, choose to extract "Single Link Arch BIOS" module (ID=1Bh), check "In uncompressed form" option and save it. This is uncompressed Main BIOS module.

    
por 04.08.2011 / 15:49
0

O formato do arquivo é inteiramente proprietário, portanto você provavelmente não conseguirá encontrar seu formato ou um programa que possa lê-lo.

Dentro das janelas você ainda pode usar o comando dos debug para desassemblar a bios no bloco F000: 0000, mas atualmente a bios do sistema é muito maior que 64 ou 128k, então apenas alguns deles são visíveis naquela área de memória (a parte de compatibilidade de 16 bits). Onde o resto é mantido é inteiramente para o BIOS, e torná-lo visível normalmente envolve a configuração de um bit em um registrador de hardware em algum lugar que altera um bloco de endereços de RAM na ROM completa da BIOS. Os detalhes são específicos do chipset, mas só serão acessíveis no modo protegido. Manipular os registros de hardware e acessar essa memória não é possível no modo de usuário.

    
por 03.08.2011 / 19:49