[Solved] Extraction of Dell's BIOS Installer named *.EXE

I haven’t used python freezing utilities in years, so I cannot be of assistance there. All I can suggest is to actually install python and the requirements. It is very easy. Download the latest version of Python 3.12.x, follow the Requirements and run using Main flow.

2 Likes

@plutomaniac , I downloaded the latest BIOSUtilities, that looks like it was just updated. I ran a new Dell Precision 7550 bios update into dell_pfs_extract.py, and it just ran right through it. It ran so quickly, I couldn’t see any error message - the related command prompt just opens and closes out.

I then ran it through an older 5/26/2024 Dell_PFS_Extract, and had no problem.

Edit 1: Also, I ran both Dell bios types (Precision_7X50_1.34.0.exe and BIOS_IMG.rcv) through the updated Dell_PFS_Extract, and got the same result.

Edit 2: It looks like required files have changed to include pefile and dissect.util. I’m not sure they’re needed if you drag the dell bios directly into Dell_PFS_Extract, but I installed them anyway, and am coming up with the same result. I logged out after installing them, and tried again, but it’s still a no go.

@ChrisM

For single filetype py- script you need to put in the separate commands at a python prompt (link) (Windows pathnames with normal slash [or maybe ‘\’, didn’t try])

After having installed biosutilities as a project it’s otherwise fine to just drop the file on main.py (doesn’t matter where main.py is located as long as python directory is in the path)

@plutomaniac

Thanks for the answer, as written having python installed but in a VM to keep the working Windows installation leaner and avoid having to update another program. So I’ll work with the versions from april, most of the time they work pretty well!

With the older version, if you had Python installed + required packages, you didn’t have to mess with main.py, nor commands. All you had to do is drag the Dell bios into the Dell_PFS_Extract, and it would create an extracted bios folder in the working folder (BIOSUtilities-main). I’m assuming you should still be able to do this - I don’t need to mess with main.py if I’m working with a Dell bios.

Microsoft Windows [Version 10.0.19045.5011]
(c) Microsoft Corporation. All rights reserved.

C:\Program Files\Python312>python -m pip install --upgrade biosutilities
Requirement already satisfied: biosutilities in c:\program files\python312\lib\site-packages (24.11.10)

C:\Program Files\Python312>python -m pip install --upgrade biosutilities[pefile,lznt1]
Requirement already satisfied: biosutilities[lznt1,pefile] in c:\program files\python312\lib\site-packages (24.11.10)
Requirement already satisfied: dissect.util==3.18 in c:\program files\python312\lib\site-packages (from biosutilities[lznt1,pefile]) (3.18)
Requirement already satisfied: pefile==2023.2.7 in c:\program files\python312\lib\site-packages (from biosutilities[lznt1,pefile]) (2023.2.7)

C:\Program Files\Python312>

Maybe I’m not understanding Package installation?

Edit 1: The attached is a slightly newer BIOSUtilities-main, with 6/17/2024 extract files. The 6/17/2024 Dell_PFS_Extract works just like the 5/26/2024 version.

BIOSUtilities-main(2).zip (64.2 KB)

Guys, in your case, you can use the easy “Main” flow. Download the repo, install the requirements (either found in $PATH or within an “external” named directory at project root), and then drag and drop one or more files to main.py script. If you use Linux/macOS (where python drag & drop is not a thing), or if you use the terminal on Windows, you can call “main.py” as explained in the README.

The “Package” method is for those who are more familiar with python and/or need to use the project programmatically as a library/dependency. The “Main” flow is supposed to be used instead of “Package”, and vice versa, not at the same time.

Don’t install as package but also keep a local folder to run “main.py” as the imports will be taken from the package installation instead of the local files and cause confusion and/or errors if there is any mismatch (e.g. forgotten outdated package version etc).

OK, got it. Was missing the 7z.exe.

Thanks @lfb6 and @plutomaniac

So my friend decided he wanted to tweak his Dell Vostro 7620. While doing that he managed to get the BIOS bricked. Don’t ask me how but he did it. Now as the good friend I am, I promised him that I will get it done. I thought this would be a mediocre task but boy was I wrong. As I now found out, dell doesnt like to provide .bin files but only .exe or .rcv, which don’t really help you with your bios if your laptop won’t turn on. So I thought that I could extract the .bin from the .exe or .rcv but I failed and failed. I really don’t know anything anymore and I’ve been trying everything for 5 hours straight. If anyone knows how to extract the goddamn .bin or .rom from an bios.exe or .rcv so I can flash the bios, please write a quick comment. Your precious help is needed.

.exe or .rcv
https://www.dell.com/support/home/de-de/drivers/driversdetails?driverid=rfdwx

@Shedow
Welcome to the Win-Raid Forum!
Since you are not the first Dell user, who wanted to know how to get the “pure” BIOS file extracted from the Dell BIOS installer with the extension *.EXE, I have moved your request into this already existing thread.
Good luck!

Hello, thanks for the moving. I still got a problem now since I can’t seem to get the pure .bin file. I extracted the .hdr from the .exe using a python 2 script as already told here and then I tried to extract the .bin with the PSFExtractor. I used the already pre built provided on the site and got this:

The Dell update file directly on the Dell PFS Update Extractor from BIOSUtilities
You need to dump all ICs from the system board (LA-659p ???) and reconstruct/swap from the extracted firmware.

Identify system board correctly and ICs used could be one 32Mbit or two 16Mbit, system firmware is 32Mbit.

1 Like

Assuming from the photo you already extracted the .bin from the .hdr? Could you send me those files? I think I’m too stupid to do this properly. I wanted to try it now with binwalk but that seems also complicated

…already deleted sir, i dont waste my time more than needed.

Didn’t mean to offend you or something, sorry if I did. I got to this point now myself:


I can’t use this tho to flash my bios since I need a singular .bin file. Do I just combine all these files or will this yield something that is not suitable for the flash

What part is not clear enough for you sir???
Did you see any mention from me that these are ready bin files to use on programmer?
You never done this before and you dont have enough experience, deliver the task to a Tech IT professional shop technician and pay the job, as they do also “need to put food on their table”
Want to proceed…search in forum for other Dell bios rebuilds.
That’s all from me, good luck with it.

Hi,

I’m trying to mod the bios of a Dell XPS m1210 and all I have been able to is to extract the HDR file using /writehdrfile.

PFSExtractor does not seem to work, outputting:

PFS File Header:
Signature: 100015455425224
Version:   79706F43
DataSize:  68676972

pfs_extract: invalid PFS header signature

Whilst BIOSUtilities does not recognize the format:

$ python3 main.py -o output 'MXC62A08.hdr' 

------------
MXC62A08.hdr
------------



Press any key to exit...

The HDR file is 1.114.208 bytes in size whilst a dump from flashrom is exactly 1MB, but it doesn’t look like a proper Phoenix or AMI BIOS either.

Any suggestions? I’m sort of stuck at this point.

These are very old bios versions, not to use in modern UEFI tools/extractors, get a bios dump from here

1 Like

Thanks, that file looks just like my dump from flashrom. Unfortunately, CBROM does not recognise its format, which is odd since it’s clearly a Phoenix BIOS (well, perphaps CBROM is meant for Phoenix AWARD ones).

But a OEM Dell one… wich is tricky sometimes. Try different CBROM versions.

1 Like

Tried 1.95, 1.98, 2.01 and 6.06. None works with either the M1210 or the M1340.

However, Phoenix BIOS Editor 2.2.13 does work with the m1340 (a slightly newer model):

However, if I open the M1210 rom file it complains about missing BCPs (“No BCPs Found!”). Surely there must be a tool compatible with this BIOS!

If you say so… start “digging” then, good luck.

1 Like