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

@Lost_N_BIOS
it is bios of dell if i extract it i found 2 bios region, 2 me rgion.
both me region are same & both bios region are different.
i need to change my bios region so i tried but here is somthing different are as following…
only bios region size same if i directly replace it with uefitool it will show no display bcoz if you drag its
bios region in uefi tool you find 2 paading file extra.
so i replace one by one from new bios region to oldbios region & flashed it but will not worked.
so i decide to change with other bios region (as i mention above got 2 bios region from .exe) but it did not worked means no display.
note-my backup bios is working only need to change its bios region.
if i replace only large file of new bios region it did not worked.i download .exe with sevice tag so .exe is ok.
i also tried all above mention method with fitctool with me region which i got from .exe but it also not worked.
if i use new me rgion only with my old bios it worked okay so no problem on me region side.
what should i do next…
i am uploading .exe which need to extract & second which need to replace bios region with working backup.
please replace new bios with backup bios in right direction & make bios.
i will flash it & report it status.

thankyou

@earthoo7
Use Dell PFS BIOS Extractor

@DeathBringer
first download files which i upload then extract only 1.exe which are not extracted with dellpfs extractor
in second folder files issue as i mention in my post

@superb123 - What exact setting do you want changed, and what do you want them changed to? I assume the two settings you showed in AMIBCP image, correct? What do you want them changed to.
Yes, Boot Guard is enabled here, so you cannot do menu edit or flash in any changes made by AMIBCP. You cannot disable boot Guard, without replacing the PCH with new clean one without key burned into fuse
So only NVRAM change of live/current settings can be done, via grub/setup_var, RU method, or by directly dumping and flashing NVRAM ONLY with FPT
Please dump NVRAM for me via next two commands, and send me this. This we can edit/flash without violating Boot Guard or BIOS lock etc

FPTw.exe -a 0x802000 -l 0x20000 -d NV1.bin
FPTw.exe -a 0x822000 -l 0x20000 -d NV2.bin

@earthoo7 - Link me to the Dell BIOS download page for this model, then I will check. But yes, as mentioned above you extract with PFS Extractor, if other methods do not work
Sounds like you already can extract, so all you need to do is find which BIOS applies to your exact system by comparing FPT or other dump directly from the board.
You cannot usually directly swap anything as a region only swap, from the exe, you need to extract volumes manually and replace them one by one in hex editor (not all volumes in the exe extracted BIOS will go into target BIOS)
If you are needing to fix laptop, link me to the Dell BIOS download page, and give me a link to download your programmer dumped BIOS from board only (no other files, I am on limited internet and this is all I need)

@Lost_N_BIOS
i replace its each section with uefitool after analyze its hxd value & size as much i can.
but not worked
here is its .exe

https://www.dell.com/support/home/en-in/…F3UT090/drivers

backup file here
https://drive.google.com/file/d/1JEdpf_H…iew?usp=sharing

@earthoo7 - You linked Dell Studio 1458 above in first link, and then under that Optiplex 3050??? What model are you working on here?

@lost_n_bios
need first only how to extract its .exe.
in dell 3050 need to replace bios region

@earthoo7 - For 1458, sorry I don’t know, can’t get this to run properly and no methods I know to extract work. Run this on the 1458 system and then once winflash is running you should find BIOS files in %TEMP%
For 3050, I will fix for you tonight, I ran out of time to do right now, sorry.

@Lost_N_BIOS
agree…

@earthoo7
EC: offset 0x2A0000, size 0x100000
BIOS: offset 0x3A0000, size 0x400000

@DeathBringer
sorry…
i do not understand what you want to say
--------------------

DeathBringer
okay but how to extract it
some description

@earthoo7
these are offsets (in hex) for EC and BIOS and their size (in hex) in exe-file for Dell Studio 1458 BIOS.
Use any hex-editor

@DeathBringer
can u upload extract file here

Don’t be so lazy.

@deathbringer
got it.



@Lost_N_BIOS

Those NV files are attached as zip file. I need to change "wake lan" and "AC recovery" settings to exact same as pictured above post for testing purpose.
what settings are included inside 0x802000 and 0x822000?wake lan or AC recovery? I have no idea what this value 0x802000 -l 0x20000 suggesting.

NV.zip (29.3 KB)

@earthoo7 - Here, try this BIOS (As-is), program in without editing. - https://forum.laboneinside.com/viewtopic.php?t=9688
Then if OK, update to latest BIOS using stock method, then dump again and send back to me if you need anything corrected and you’re not sure how to do.

Dell exe does not contain last PEI volume, at least not in proper format. So no matter what, other BIOS will have to be used to rebuild. Some other live/working dump must be used to program in and revive the board, then fix stuff later as needed, minding the boot guard covered areas
To answer your question about the dual outputted BIOS files when extracting, you would use this one below, but it’s incomplete due to last PEI volume does not expand properly so you can’t use any of it, due to Boot Guard.
2 CombineBiosName1 v99.1.45 – 1 System BIOS with BIOS Guard [V46] v1.13.5 - MD5 = B08B03169843D66C9842355B8B800E3E


@superb123 - Those areas I had you dump are both NVRAM areas in full, this contains all settings, for all NVRAM stores (varstore) as you see them in UEFITool (top two volumes inside BIOS region)
Here, write back via commands below, these have both settings set to Enabled/Power on, in ALL areas of NVRAM (new/current and old = x16 instances) - https://ufile.io/e75pbdlk
It was already set to Enabled/PowerOn in two places of main NVRAM, I changed in two more places, but I bet the two that were already set where live/current-in-use, so you must have changed it yourself already
FPTw.exe -a 0x802000 -l 0x20000 -f NV1m.bin
FPTw.exe -a 0x822000 -l 0x20000 -f NV2m.bin

@Lost_N_BIOS
i wil do as you described but here a little confusion like if i use last PEI section from old bios & other part from new bios why it is not working then?
how to identify which bios region should i select to replace if last pei section okay? between both new bios region?
if use uefitool v28 it will extract 209699 bytes PEI section & if use ne alpha 57 it extract 1015808 bytes which is matched size of original pei section (but hex value at header are different).
[[File:header & its size.jpg|none|auto]]

header & its size.jpg



@Lost_N_BIOS

Hello Lost_N_BIOS thank you for your help
I am currently away from this pc, I will get back to this pc on Monday morning, then do the flash NVRAM and show you results.
I found on moded NVRAM.bin , there are some of values changed by you from 00 00 00 00 to 00 01 01 00 or something like that. I did not find any clue how those changes are related to "wake lan" and "AC recovery", in this nvram.bin there soo many 00 00 00 hex things! how did you confirm that only those particular 00 00 00 hex things are related to "wake lan" and "AC recovery" ? is there any guide about this? I am completely noob about this. All I know from IRF extractor "AC recovery" Variable is 0x1050 and "Wake Up by Integrated LAN" 0x104F

@earthoo7 - No, you cannot mix and match anything from one BIOS to another, Boot Guard will be violated and = brick/no boot
You flash the BIOS I linked without editing it. All discussions about replacing volumes within BIOS region do no apply here, well specifically this last PEI volume (because it’s not included/properly, in the stock exe extractions)
The only way you could replace this last PEI volume from latest exe BIOS version, is to flash that normally on another working board, then dump it’s BIOS, then grab that BIOS versions PEI volume. Then you could use the stock extracted EXE files to rebuild a stock BIOS to program back.
Unless you have a working version of this board, then all this is not an option for you.

@superb123 - OK, thanks! From what I noticed, it looked like you already had the settings changed, the current NVRAM area (#1) was clean/fresh, and those settings were already applied
This vs the old BIOS dump you provided previously, which had old very populated NVRAM #1, with many more instances of stock setting instead

Yes, I changed 00 00 to 01 01 for the two settings you mentioned, at each instance of it’s proper location in the NVRAM. This is determined by the IFR info, using (VarOffset/VarName) offset for each item, within the “Setup” areas of NVRAM
Here is the search string I used to do final edit on your NVRAM >> 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 01 00 00 00 00 << LAST TWO bytes = Wake Up By Lan 0x104F + AC Recovery 0x1050
Here linked below is how NVRAM works in general, I need to make a guide about this, but maybe you can follow along where I tried to explain to users a few times
NVRAM edit explained - Determine configurable aperture size from BIOS file
Setup and NVRAM editing here as well - [Request] Unlock advanced menu on 2019 Acer Predator Helios 300 PH315-52 (5)