[Asus Zenfone 9] svenagain:
See the bottom for mediafire link to updated files and there's a code block in the middle for doing batch runs on linux.

Great tool, but out-dated

Although I think the tools are a divine miracle that we would lost and doomed without, I believe they messed up my XBL when I had only previously messed up my ABL before, so it actually made things worse by ruining the 9008 connection I already had stable, causing 900e instead. Therefore I was unable to reach 9008 without manually forcing it.

Did not use EDL cable

The cable didn't work for me maybe because I needed to understand more first so I'm unsure if it's possible with this phone or if anyone's had success with the EDL cable. The DIY guide really need to be updated because I would assume all the newest cables will not have black insulation on the ground wires for a smaller profile. Moreover, I was concerned about a surge caused by the cable, but I think that had more to do with the exposed ground than an EDL cable with a properly wired button.

Heating

The glue for the backplate did need to reach 80C to start loosening. I read somewhere that that the lithium ion batteries' risk of explosion starts at 60C, but also CPUs regularly reach 80C. I used my 3D printer heatbed to reach the target heat without over heating. It was very useful to have a suction cup to pull the loosened plate to shove something into pry it apart and slide it along the edge to remove the adhesion. It didn't seem necessary to heat the whole back and you might be able just heat one corner with a heatgun/hairdryer. Heating the whole back plate might be necessary though because you can see in the video below I really messed up the glue on the edge by the camera, which is definitely totally waterproof seeing how I dropped in the toilet 5 times already.

I didn't see the screw with the sensor sticker on it and accidentally broke my inside plastic thing.

Since I'm right handed, I used my left thumb to push the usb in, while holding the tweezers in place with my right hand. Maybe it was because my tweezers were a bit crooked, but I had to press fairly hard into the test points and it helped to hold the tweezers straight up and down.

The tools are only for using windows and linux is better in the long run so just suck it up buttercup.

If you want to run on it on windows, you have to send xbl_s_devprg_ns.melf to sahara mapping 13 with QSaharaServer and then you can send whatever fh_loader commands you want.

The best tool is https://github.com/bkerler/edl because it just uses python3.9 so it can be run from windows or linux, although it needs usb drivers and not serial/COM, which is just a quick switch on the computer that doesn't affect 9008 mode.

So on linux, verify the usb connection says :9008 when calling lsusb

If there are any errors while connected, the connection will likely become a different unusable qualcomm mode like 900e. The phone will need to be turned off by holding all three buttons for 30 seconds. Using the command 'watch lsusb', you can see when the phone turns off to let go of the buttons, unplug the phone, and hopefully stay off to prepare to use the test points while plugging in again.

The printgpt command is a non-intrustive connection check and there are six Logical Unit Numbers (LUN). A similar response will produce the following result from sending this command:

for i in $(seq 0 6); do python3 edl --loader=xbl_s_devprg_ns.melf printgpt --memory=UFS --lun=$i; done;

Parsing Lun 0:

GPT Table:
-------------
ssd: Offset 0x0000000000006000, Length 0x0000000000002000, Flags 0x0000000000000000, UUID deaebcb4-7c9a-ea42-9c14-6ee22c6fd281, Type 0x2c86e742, Active False
persist: Offset 0x0000000000008000, Length 0x0000000002000000, Flags 0x0000000000000000, UUID ea7dbf4c-0279-8496-b72d-391ac2c7c029, Type 0x6c95e238, Active False
misc: Offset 0x0000000002008000, Length 0x0000000000100000, Flags 0x0000000000000000, UUID da85e365-c5b9-bcc9-8510-29f0e1f65cec, Type 0x82acc91f, Active False
keystore: Offset 0x0000000002108000, Length 0x0000000000080000, Flags 0x0000000000000000, UUID 1da998a0-5df3-857c-4436-77466c966b37, Type 0xde7d4029, Active False
frp: Offset 0x0000000002188000, Length 0x0000000000080000, Flags 0x0000000000000000, UUID d90a9501-dd5d-1dd1-360b-15f4a5cfcebe, Type 0x91b72d4d, Active False
fde: Offset 0x0000000002208000, Length 0x0000000000a00000, Flags 0x0000000000000000, UUID fbebcf1b-55da-8985-79ee-243186c1ad4b, Type 0xe5c94e77, Active False
factory: Offset 0x0000000002c08000, Length 0x0000000002000000, Flags 0x0000000000000000, UUID b705abb0-d2ec-108a-8c7a-16cd3fe98591, Type 0x7fd7c081, Active False
batinfo: Offset 0x0000000004c08000, Length 0x0000000002000000, Flags 0x0000000000000000, UUID ffcdcd14-d5c2-255d-06dd-a24a5be42109, Type 0x25a9f73f, Active False
asdf: Offset 0x0000000006c08000, Length 0x0000000018000000, Flags 0x0000000000000000, UUID a3ebe621-8878-b624-8119-94b031f4d80f, Type 0x21e02e68, Active False
gpt: Offset 0x000000001ec08000, Length 0x0000000000100000, Flags 0x0000000000000000, UUID aca82a9d-87cf-6adb-31e9-85c962e56b2a, Type 0xe7411056, Active False
sysinfo: Offset 0x000000001ed08000, Length 0x0000000000100000, Flags 0x0000000000000000, UUID aaa69dc5-e54d-2c9b-6b2c-828cddfccbc4, Type 0xc0b6b507, Active False
ADF: Offset 0x000000001ee08000, Length 0x0000000002000000, Flags 0x0000000000000000, UUID a2386a5a-bcd1-986c-09bc-ec0b7e7f8462, Type 0x116397a1, Active False
APD: Offset 0x0000000020e08000, Length 0x000000000c800000, Flags 0x0000000000000000, UUID c8f7f604-dbb3-fe93-5e66-92e117133c81, Type 0x2ce42614, Active False
ftm: Offset 0x000000002d608000, Length 0x0000000010000000, Flags 0x0000000000000000, UUID eee36b0e-e9c6-efcf-d407-ee6104f8f412, Type 0xa15da010, Active False
asusfw_a: Offset 0x000000003d608000, Length 0x0000000004000000, Flags 0x0000000000000000, UUID d9340496-0999-0930-04c9-d1b288574b32, Type 0x5948c2f3, Active False
asusfw_b: Offset 0x0000000041608000, Length 0x0000000004000000, Flags 0x0000000000000000, UUID 042acc7e-010b-64df-ffe9-f2f1948981fe, Type 0x77036cd4, Active False
xrom_a: Offset 0x0000000045608000, Length 0x0000000020000000, Flags 0x0000000000000000, UUID 5ac01874-7d35-c157-c313-9c1ef8622010, Type 0x4c1c06bb, Active False
xrom_b: Offset 0x0000000065608000, Length 0x0000000020000000, Flags 0x0000000000000000, UUID 5d6272f0-6c9c-c9e4-ea53-497ba3e7fcaf, Type 0x77036cd4, Active False
asusrecord: Offset 0x0000000085608000, Length 0x0000000000001000, Flags 0x0000000000000000, UUID 59248b7e-9233-83e7-8bed-57ffe8e207fd, Type 0xdf5fe391, Active False
super: Offset 0x0000000085609000, Length 0x0000000220000000, Flags 0x0000000000000000, UUID 3b2c1a82-008e-4aee-3bee-60ecef86262c, Type 0x89a12de1, Active False
vbmeta_system_a: Offset 0x00000002a5609000, Length 0x0000000000010000, Flags 0x1000000000000000, UUID 8a5e149d-4894-217f-61af-de5c68d9b649, Type 0x1344859d, Active False
vbmeta_system_b: Offset 0x00000002a5619000, Length 0x0000000000010000, Flags 0x1000000000000000, UUID fc8a191a-b15b-3c42-6496-6ae3b3d11e8c, Type 0xfe3ab853, Active False
metadata: Offset 0x00000002a5629000, Length 0x0000000001000000, Flags 0x0000000000000000, UUID e2b78db4-bb1b-c623-ab8c-31e2cf2a252f, Type 0x988a98c9, Active False
logbuf: Offset 0x00000002a6629000, Length 0x0000000020000000, Flags 0x0000000000000000, UUID c9abdc33-c950-4dc0-a3d9-9a8e1af668e2, Type 0x66c9b323, Active False
expandmem: Offset 0x00000002c6629000, Length 0x00000000c0000000, Flags 0x0000000000000000, UUID c765e56e-d011-2dbf-20b4-e0945a54a308, Type 0x1b81e7e6, Active False
userdata: Offset 0x0000000386629000, Length 0x00000036881d2000, Flags 0x0000000000000000, UUID a43e05e5-eae0-ed97-a418-0e26ad0f1ab2, Type 0x1b81e7e6, Active False

Total disk size:0x0000003a0e800000, sectors:0x0000000003a0e800

Parsing Lun 1:

GPT Table:
-------------
xbl_a: Offset 0x0000000000006000, Length 0x0000000000600000, Flags 0x1000000000000000, UUID 63cfc915-2ee0-a908-8a65-904fc6f3d339, Type 0xdea0ba2c, Active False
xbl_config_a: Offset 0x0000000000606000, Length 0x0000000000080000, Flags 0x0000000000000000, UUID 7948390b-ac1f-5051-eb9d-7e41506a8ad4, Type 0x5a325ae4, Active False
multiimgqti_a: Offset 0x0000000000686000, Length 0x0000000000008000, Flags 0x1000000000000000, UUID edb8f2fc-fe23-9a1f-a766-508c6b48e31d, Type 0x846c6f05, Active False
multiimgoem_a: Offset 0x000000000068e000, Length 0x0000000000008000, Flags 0x1000000000000000, UUID bcfbc7a3-218f-ee7f-c059-2e897c920839, Type 0xe126a436, Active False
apdp: Offset 0x0000000000696000, Length 0x0000000000040000, Flags 0x0000000000000000, UUID a9326f70-079f-1042-605a-911e12119f02, Type 0xe6e98da2, Active False

Total disk size:0x0000000000800000, sectors:0x0000000000000800

Parsing Lun 2:

GPT Table:
-------------
xbl_b: Offset 0x0000000000006000, Length 0x0000000000600000, Flags 0x1000000000000000, UUID 5854dd38-a1af-9af5-d054-6116314ef0ef, Type 0xdea0ba2c, Active False
xbl_config_b: Offset 0x0000000000606000, Length 0x0000000000080000, Flags 0x0000000000000000, UUID 09cc0ebf-8c5f-f339-e8b2-cedee8f767da, Type 0x5a325ae4, Active False
multiimgqti_b: Offset 0x0000000000686000, Length 0x0000000000008000, Flags 0x1000000000000000, UUID 8ac6092a-3fcd-8256-5617-9878f3e20fe4, Type 0x846c6f05, Active False
multiimgoem_b: Offset 0x000000000068e000, Length 0x0000000000008000, Flags 0x1000000000000000, UUID 26d77d9e-fbba-47c3-7912-9c05aa64858f, Type 0xe126a436, Active False
apdpb: Offset 0x0000000000696000, Length 0x0000000000040000, Flags 0x0000000000000000, UUID 6f892b28-f65a-fd13-aa0a-d712fd7bd18c, Type 0xe6e98da2, Active False

Total disk size:0x0000000000800000, sectors:0x0000000000000800

Parsing Lun 3:

GPT Table:
-------------
ALIGN_TO_128K_1: Offset 0x0000000000006000, Length 0x000000000001a000, Flags 0x1000000000000000, UUID 44d193ae-0d88-0742-2592-867c5448e20f, Type 0xfde1604b, Active False
cdt: Offset 0x0000000000020000, Length 0x0000000000020000, Flags 0x1000000000000000, UUID 31fee2f7-3dc8-5ab9-9400-b12685f07c32, Type 0xa19f205f, Active False
ddr: Offset 0x0000000000040000, Length 0x0000000000100000, Flags 0x1000000000000000, UUID 8e175ae4-a607-e196-4aeb-330e28c01eb3, Type 0x20a0c19c, Active False

Total disk size:0x0000000002000000, sectors:0x0000000000002000

Parsing Lun 4:

GPT Table:
-------------
uefi_a: Offset 0x0000000000006000, Length 0x0000000000500000, Flags 0x1000000000000000, UUID ab1c2a76-f33e-04cf-3924-47b06e6a6b59, Type 0x400ffdcd, Active False
aop_a: Offset 0x0000000000506000, Length 0x0000000000080000, Flags 0x1000000000000000, UUID 8bb0370b-de20-141f-8aad-9cea18c64227, Type 0xd69e90a5, Active False
aop_config_a: Offset 0x0000000000586000, Length 0x0000000000080000, Flags 0x1000000000000000, UUID d8766c33-5503-10e9-9e4a-e813af332477, Type 0x3d12f234, Active False
tz_a: Offset 0x0000000000606000, Length 0x0000000000400000, Flags 0x1000000000000000, UUID 0b37ee0f-e5fa-929a-2bed-762caf633169, Type 0xa053aa7f, Active False
hyp_a: Offset 0x0000000000a06000, Length 0x0000000000800000, Flags 0x0000000000000000, UUID 9e6c7522-0943-9a83-017f-3988271f292c, Type 0xe1a6a689, Active False
modem_a: Offset 0x0000000001206000, Length 0x0000000012c00000, Flags 0x1000000000000000, UUID 2ba635d8-e497-2615-eec8-2f0092d228a4, Type EFI_BASIC_DATA, Active False
old_bt_a: Offset 0x0000000013e06000, Length 0x0000000000200000, Flags 0x1000000000000000, UUID 372c2eaa-6cd6-271b-2f0c-5765515a58cb, Type 0x6cb747f1, Active False
mdtpsecapp_a: Offset 0x0000000014006000, Length 0x0000000000400000, Flags 0x1000000000000000, UUID a4aa61fd-4ccb-16c9-0ead-e32378697f39, Type 0xea02d680, Active False
mdtp_a: Offset 0x0000000014406000, Length 0x0000000002000000, Flags 0x1000000000000000, UUID 557c4bd0-58ac-b7a2-9b50-15bc366f9e18, Type 0x3878408a, Active False
abl_a: Offset 0x0000000016406000, Length 0x0000000000100000, Flags 0x1000000000000000, UUID 5ac89dbe-b31a-7a7c-1e62-94a0f7868da9, Type 0xbd6928a1, Active False
dsp_a: Offset 0x0000000016506000, Length 0x0000000004000000, Flags 0x1000000000000000, UUID 03be96f9-a3ed-f70f-a9d2-a9ef62a1c5f5, Type 0x7efe5010, Active False
keymaster_a: Offset 0x000000001a506000, Length 0x0000000000080000, Flags 0x1000000000000000, UUID cf1508cd-a722-4c0b-4287-22a5f2820be1, Type 0xa11d2a7c, Active False
boot_a: Offset 0x000000001a586000, Length 0x0000000006000000, Flags 0x0000000000000000, UUID 04658a1b-e83d-3274-34c5-8937fd2cbdcc, Type 0x20117f86, Active False
devcfg_a: Offset 0x0000000020586000, Length 0x0000000000020000, Flags 0x0000000000000000, UUID 367957de-9baf-5c2d-1964-fe6736352ecd, Type 0xf65d4b16, Active False
qupfw_a: Offset 0x00000000205a6000, Length 0x0000000000014000, Flags 0x0000000000000000, UUID ded4696f-608a-1773-a2aa-8a64bef0d260, Type 0x21d1219f, Active False
vbmeta_a: Offset 0x00000000205ba000, Length 0x0000000000010000, Flags 0x1000000000000000, UUID a475dac7-5608-5505-dc64-8ea4e2b43e2b, Type 0x4b7a15d6, Active False
dtbo_a: Offset 0x00000000205ca000, Length 0x0000000001800000, Flags 0x0000000000000000, UUID 367767bc-c136-2f8e-7ad3-04d77fabf666, Type 0x24d0d418, Active False
uefisecapp_a: Offset 0x0000000021dca000, Length 0x0000000000200000, Flags 0x0000000000000000, UUID 11148bf9-88fd-1aaa-d4d0-63b255b0d393, Type 0xbe8a7e08, Active False
imagefv_a: Offset 0x0000000021fca000, Length 0x0000000000200000, Flags 0x0000000000000001, UUID 0b4e36ab-e320-cd4c-8f02-05f4a6cda7c0, Type 0x17911177, Active False
shrm_a: Offset 0x00000000221ca000, Length 0x0000000000020000, Flags 0x1000000000000000, UUID c3a3edc7-cf97-6b9c-fb1b-94dc23dc67a4, Type 0xcb74ca22, Active False
vm-bootsys_a: Offset 0x00000000221ea000, Length 0x0000000010625000, Flags 0x0000000000000000, UUID 2961d9b3-788c-9b7a-cb4c-d0c3dfd4f5b2, Type 0x7b034c58, Active False
cpucp_a: Offset 0x000000003280f000, Length 0x0000000000100000, Flags 0x1000000000000000, UUID c55cf608-be77-081b-07c6-2ad9378ea328, Type 0x1e8615bd, Active False
featenabler_a: Offset 0x000000003290f000, Length 0x0000000000020000, Flags 0x0000000000000000, UUID 090b7c4c-9731-373e-8cf0-d6ce5e310501, Type 0x741813d2, Active False
vendor_boot_a: Offset 0x000000003292f000, Length 0x0000000006000000, Flags 0x0000000000000000, UUID 56bda2e1-d8e9-d257-7e6c-70230401c6fa, Type 0x6d286a7f, Active False
qmcs: Offset 0x000000003892f000, Length 0x0000000001e00000, Flags 0x0000000000000000, UUID af3dc86f-c00e-ce2d-73d3-f8a4f48ab29e, Type 0x358740b1, Active False
qweslicstore_a: Offset 0x000000003a72f000, Length 0x0000000000040000, Flags 0x1000000000000000, UUID 327f0039-081b-c204-64f9-5afc31f6e30f, Type 0x7bab3c93, Active False
recovery_a: Offset 0x000000003a76f000, Length 0x0000000006400000, Flags 0x0000000000000000, UUID 2a85322e-f85e-f75b-8ed6-498df5b2fc55, Type 0xd504d6db, Active False
xbl_ramdump_a: Offset 0x0000000040b6f000, Length 0x0000000000200000, Flags 0x0000000000000000, UUID 14ba03f6-6948-2359-dea0-d2237dd9be69, Type 0x382f197, Active False
uefi_b: Offset 0x0000000040d6f000, Length 0x0000000000500000, Flags 0x1000000000000000, UUID 406ae2f6-448a-5bf3-1299-5ac69b0bf78b, Type 0x9f234b5b, Active False
aop_b: Offset 0x000000004126f000, Length 0x0000000000080000, Flags 0x0000000000000000, UUID 91c0818c-e529-08af-ada5-65787111acf6, Type 0x77036cd4, Active False
aop_config_b: Offset 0x00000000412ef000, Length 0x0000000000080000, Flags 0x0000000000000000, UUID fa90ba95-a769-38af-de7a-79030e31d166, Type 0x77036cd4, Active False
tz_b: Offset 0x000000004136f000, Length 0x0000000000400000, Flags 0x0000000000000000, UUID 7235c3d0-adaa-8102-6881-9ce1970338aa, Type 0x77036cd4, Active False
hyp_b: Offset 0x000000004176f000, Length 0x0000000000800000, Flags 0x0000000000000000, UUID a3f454e9-e3ab-1341-0d65-4af7db164434, Type 0x77036cd4, Active False
modem_b: Offset 0x0000000041f6f000, Length 0x0000000012c00000, Flags 0x1000000000000000, UUID 67808e8f-5763-f3a6-c279-e338629ab9a3, Type 0x77036cd4, Active False
old_bt_b: Offset 0x0000000054b6f000, Length 0x0000000000200000, Flags 0x1000000000000000, UUID 7d5ac3ca-ee9e-3cbe-d109-1c244b5dc4ec, Type 0x77036cd4, Active False
mdtpsecapp_b: Offset 0x0000000054d6f000, Length 0x0000000000400000, Flags 0x1000000000000000, UUID 6380714a-b175-4840-3e55-9ef8ecf6a816, Type 0x77036cd4, Active False
mdtp_b: Offset 0x000000005516f000, Length 0x0000000002000000, Flags 0x1000000000000000, UUID d0013aaa-0c17-c8fe-8d44-f4b205c6350e, Type 0x77036cd4, Active False
abl_b: Offset 0x000000005716f000, Length 0x0000000000100000, Flags 0x1000000000000000, UUID 7c5bc5a9-5875-5c02-b834-04ecdaacce36, Type 0x77036cd4, Active False
dsp_b: Offset 0x000000005726f000, Length 0x0000000004000000, Flags 0x1000000000000000, UUID d4fd28f3-c321-0a78-f7fe-74854b9caa1e, Type 0x77036cd4, Active False
keymaster_b: Offset 0x000000005b26f000, Length 0x0000000000080000, Flags 0x1000000000000000, UUID 5cbaec60-9106-1c04-50ea-4a201133adb8, Type 0x77036cd4, Active False
boot_b: Offset 0x000000005b2ef000, Length 0x0000000006000000, Flags 0x0000000000000000, UUID b396efc8-7876-4def-3d54-41bc1d939871, Type 0x77036cd4, Active False
devcfg_b: Offset 0x00000000612ef000, Length 0x0000000000020000, Flags 0x0000000000000000, UUID eab57357-1ef9-9ab6-f7f3-29267c5754b0, Type 0x77036cd4, Active False
qupfw_b: Offset 0x000000006130f000, Length 0x0000000000014000, Flags 0x0000000000000000, UUID de0a0f69-b5b4-98d8-1257-2201457c4128, Type 0x77036cd4, Active False
vbmeta_b: Offset 0x0000000061323000, Length 0x0000000000010000, Flags 0x1000000000000000, UUID 2c04131b-66eb-b806-a326-199abfb6974a, Type 0x77036cd4, Active False
dtbo_b: Offset 0x0000000061333000, Length 0x0000000001800000, Flags 0x0000000000000000, UUID b3fbeaaf-97ab-5a98-ad5b-6b0ac2094c68, Type 0x77036cd4, Active False
uefisecapp_b: Offset 0x0000000062b33000, Length 0x0000000000200000, Flags 0x0000000000000000, UUID 659bc09d-6dac-b757-d6fa-e45045711e58, Type 0x77036cd4, Active False
imagefv_b: Offset 0x0000000062d33000, Length 0x0000000000200000, Flags 0x0000000000000001, UUID cc7ce5e5-4298-9fa4-0e19-437ff2a3dedd, Type 0x77036cd4, Active False
shrm_b: Offset 0x0000000062f33000, Length 0x0000000000020000, Flags 0x1000000000000000, UUID 691203c9-3e6e-0210-a327-a9b1f684acce, Type 0x77036cd4, Active False
vm-bootsys_b: Offset 0x0000000062f53000, Length 0x0000000010625000, Flags 0x0000000000000000, UUID 58e9f375-2f5c-d62d-b80b-5fa5c9aa699a, Type 0x77036cd4, Active False
cpucp_b: Offset 0x0000000073578000, Length 0x0000000000100000, Flags 0x1000000000000000, UUID df27a5e4-d2f8-ab6e-20ef-9aca745fb250, Type 0x77036cd4, Active False
featenabler_b: Offset 0x0000000073678000, Length 0x0000000000020000, Flags 0x0000000000000000, UUID 62f58139-5e97-d97d-44e9-75719a04b57d, Type 0x77036cd4, Active False
vendor_boot_b: Offset 0x0000000073698000, Length 0x0000000006000000, Flags 0x0000000000000000, UUID 7f78d524-8d8e-e495-8e8f-e2adc49e71f2, Type 0x77036cd4, Active False
qweslicstore_b: Offset 0x0000000079698000, Length 0x0000000000040000, Flags 0x1000000000000000, UUID 744b8962-3ba5-a70f-d12e-4a413f28887c, Type 0x77036cd4, Active False
recovery_b: Offset 0x00000000796d8000, Length 0x0000000006400000, Flags 0x0000000000000000, UUID 20d54f62-5f7f-7816-10f3-aed41dc9fcc6, Type 0x77036cd4, Active False
xbl_ramdump_b: Offset 0x000000007fad8000, Length 0x0000000000200000, Flags 0x0000000000000000, UUID 68e5408c-d3a9-799d-babd-6af6480c320e, Type 0xc3e58b09, Active False
devinfo: Offset 0x000000007fcd8000, Length 0x0000000000001000, Flags 0x1000000000000000, UUID 6e006ff1-0fb0-79ef-14b2-de7a1c41b333, Type 0x65addcf4, Active False
dip: Offset 0x000000007fcd9000, Length 0x0000000000100000, Flags 0x1000000000000000, UUID f26fcbfb-b9cf-4165-ade2-26096c0d30ac, Type 0x4114b077, Active False
splash: Offset 0x000000007fdd9000, Length 0x00000000020a4000, Flags 0x0000000000000000, UUID 036d9e2e-64ca-a115-b163-f0d08d0f6ec3, Type 0xad99f201, Active False
limits: Offset 0x0000000081e7d000, Length 0x0000000000001000, Flags 0x1000000000000000, UUID f0a16ae9-2bec-3f4b-a092-be74537dd645, Type 0x10a0c19c, Active False
limits-cdsp: Offset 0x0000000081e7e000, Length 0x0000000000001000, Flags 0x1000000000000000, UUID b0bcd179-1389-ec2b-972d-767cc63b2643, Type 0x545d3707, Active False
toolsfv: Offset 0x0000000081e7f000, Length 0x0000000000100000, Flags 0x1000000000000000, UUID 7177791e-d535-a9b5-5ac3-5e1b09102724, Type 0x97745aba, Active False
logfs: Offset 0x0000000081f7f000, Length 0x0000000000800000, Flags 0x0000000000000000, UUID 15ce28f8-d73d-b94f-62d2-d55edfba8b36, Type 0xbc0330eb, Active False
logdump: Offset 0x000000008277f000, Length 0x0000000020000000, Flags 0x0000000000000000, UUID 21d9bf87-7d4b-aac8-5cae-d44fb1beeef8, Type 0x5af80809, Active False
storsec: Offset 0x00000000a277f000, Length 0x0000000000020000, Flags 0x1000000000000000, UUID d5beff85-45a8-9b5e-47a2-2327e3938f68, Type 0x2db45fe, Active False
uefivarstore: Offset 0x00000000a279f000, Length 0x0000000000080000, Flags 0x1000000000000000, UUID cabad43a-192a-7bc3-fc5d-3f2b94599bf4, Type 0x165bd6bc, Active False
secdata: Offset 0x00000000a281f000, Length 0x0000000000007000, Flags 0x1000000000000000, UUID d2bc9861-53d2-6f53-173e-603b51aef404, Type 0x76cfc7ef, Active False
vm-data: Offset 0x00000000a2826000, Length 0x00000000020a4000, Flags 0x0000000000000000, UUID 15322f98-92ed-c7e2-5c7d-671e8a2c67a9, Type 0x21adb864, Active False
mdcompress: Offset 0x00000000a48ca000, Length 0x0000000001400000, Flags 0x1000000000000000, UUID d7d1d2f2-ff9d-5fef-12bf-e0fe7a2ef563, Type 0xc6a5a9f5, Active False
connsec: Offset 0x00000000a5cca000, Length 0x0000000000020000, Flags 0x1000000000000000, UUID da6d4007-d244-09bc-4a9a-57994cdf7e08, Type 0x6a716f7c, Active False
tzsc: Offset 0x00000000a5cea000, Length 0x0000000000020000, Flags 0x1000000000000000, UUID ef88794e-b9fa-5281-b4f2-ac7e00ab7daa, Type 0x478dea49, Active False
spunvm: Offset 0x00000000a5d0a000, Length 0x0000000002000000, Flags 0x0000000000000000, UUID bfe7375f-f243-a8fe-862a-db06942bb34a, Type 0xe42e2b4c, Active False
rtice: Offset 0x00000000a7d0a000, Length 0x0000000000080000, Flags 0x1000000000000000, UUID cb13dbb9-5103-a39d-ee93-f0d0461bd9d0, Type 0xe396d1ea, Active False
xbl_sc_test_mode: Offset 0x00000000a7d8a000, Length 0x0000000000010000, Flags 0x0000000000000000, UUID f36586dd-e0ba-be41-d812-8ad7669457fe, Type 0x91fdd2b9, Active False
xbl_sc_logs: Offset 0x00000000a7d9a000, Length 0x0000000000020000, Flags 0x0000000000000000, UUID 5350dc73-356b-8cba-9963-bf4c0f87c9f2, Type 0xf7eecb66, Active False
bluetooth_a: Offset 0x00000000a7dba000, Length 0x0000000000400000, Flags 0x1000000000000000, UUID f6500aeb-3ce6-6837-4280-7b94ac59cfb9, Type 0x6cb747f1, Active False
bluetooth_b: Offset 0x00000000a81ba000, Length 0x0000000000400000, Flags 0x1000000000000000, UUID a902b930-4f73-91bd-1523-862b93ecf9c6, Type 0x77036cd4, Active False

Total disk size:0x0000000180000000, sectors:0x0000000000180000

Parsing Lun 5:

GPT Table:
-------------
ALIGN_TO_128K_2: Offset 0x0000000000006000, Length 0x000000000001a000, Flags 0x1000000000000000, UUID 8aee40ef-73dc-6d10-5e39-7d4ca687e756, Type 0x6891a3b7, Active False
modemst1: Offset 0x0000000000020000, Length 0x0000000000500000, Flags 0x0000000000000000, UUID 4344b8b6-f0bf-f26a-bf40-bd651ba00e2c, Type 0xebbeadaf, Active False
modemst2: Offset 0x0000000000520000, Length 0x0000000000500000, Flags 0x0000000000000000, UUID 8a1309f9-d91f-bcdd-fc2f-d4ae45d9088d, Type 0xa288b1f, Active False
fsg: Offset 0x0000000000a20000, Length 0x0000000000500000, Flags 0x1000000000000000, UUID 3dbd2800-2415-ffff-d6ed-02e2d7b15c5f, Type 0x638ff8e2, Active False
fsg2: Offset 0x0000000000f20000, Length 0x0000000000500000, Flags 0x1000000000000000, UUID e575cd32-96a3-6f0a-334a-93925aa7d8f2, Type 0x638ff8e2, Active False
fsg3: Offset 0x0000000001420000, Length 0x0000000000500000, Flags 0x1000000000000000, UUID 3c2755a1-8995-76db-7bb8-9d29d5ebf610, Type 0x638ff8e2, Active False
fsc: Offset 0x0000000001920000, Length 0x0000000000020000, Flags 0x0000000000000000, UUID 365127ac-73da-7a09-44bd-b1088ab47e62, Type 0x57b90a16, Active False

Total disk size:0x0000000002000000, sectors:0x0000000000002000

Parsing Lun 6:

GPT Table:
-------------
sysconf: Offset 0x0000000000006000, Length 0x0000000000020000, Flags 0x0000000000000000, UUID 286fc86c-fa55-7a34-c419-d28ffb71f916, Type 0xa03d4eb3, Active False
asuskey: Offset 0x0000000000026000, Length 0x0000000000100000, Flags 0x0000000000000000, UUID 634636bc-5f73-e582-1a82-ef8cb58ccef1, Type 0x30f09946, Active False
asuskey2: Offset 0x0000000000126000, Length 0x0000000000100000, Flags 0x0000000000000000, UUID 128b0471-a90e-2c9d-332b-5ce54858b2f7, Type 0x6a137a60, Active False
asuskey3: Offset 0x0000000000226000, Length 0x0000000000100000, Flags 0x0000000000000000, UUID 0bbf162d-38da-801a-60e2-031b1925a2f3, Type 0xa33258b6, Active False
asuskey4: Offset 0x0000000000326000, Length 0x0000000000100000, Flags 0x0000000000000000, UUID ea2b2a70-024e-3512-de22-dc96c18328fc, Type 0xb2fd0ae8, Active False
asuskey5: Offset 0x0000000000426000, Length 0x0000000000100000, Flags 0x0000000000000000, UUID dcb34085-683b-35c0-82d7-cab031f866ab, Type 0x5ac904d8, Active False
asuskey6: Offset 0x0000000000526000, Length 0x0000000000100000, Flags 0x0000000000000000, UUID 68e2b032-8243-22eb-c396-7cc24c47f694, Type 0x66c16781, Active False

Total disk size:0x0000000002000000, sectors:0x0000000000002000

It was necessary to wipe the previous data that was ruining my phone with zeroes, but I'm not sure if all three of the extra xml files were necessary. It calls for files called zeros_33sectors.bin (and zeros_33sectorS.bin) and weren't included so in windows I used COPY /B zeros_5sectors.bin+zeros_5sectors.bin+zeros_5sectors.bin+zeros_5sectors.bin+zeros_5sectors.bin+zeros_5sectors.bin+zeros_1sector.bin+zeros_1sector.bin+zeros_1sector.bin zeros_33sectors.bin

I used https://github.com/CaptainThrowback/update_payload_extractor to generate the partition imgs from the stock firmware. An old version of the full firmware is publicly released https://www.asus.com/us/supportonly/zenfone 9/helpdesk_download/ and @som_bbs has gathered the OTA updates https://mega.nz/folder/tfIymZJQ#-QqyCWNvHdhKSZxaKErKlQ

Use the --old-dir argument to use the full firmware to generate the next version using the OTA then using that for the next version until reaching the final version. The dynamic partitions have hash error so either use --skip_hash --ignore_block_size or select the partitions:

./extract.py --partitions abl aop aop_config bluetooth boot cpucp devcfg dsp dtbo featenabler hyp imagefv keymaster modem multiimgoem qupfw qweslicstore recovery shrm tz uefi uefisecapp vbmeta vbmeta_system vendor_boot xbl xbl_config xbl_ramdump xrom --old_dir 142 --output_dir 165 165.bin

I was lucky/smart to have all my partitions backed up before I lost everything. It finally worked for me to not include any of my backed up partitions (only from stock) into LUN4 and only include those backed up (none from stock) into LUN0. I have stock xbl, xbl_config, and multiimgoem and backed up apdp/apdpb and multiimgqti_a/multiimgqti_b in LUN1 and LUN2. I had to edit the xml files for LUN3, LUN5, and LUN6 because the last partitions containing data were not large enough. There was an erroneous xml to wipe LUN7 instead of 3 also. I tried flashing one LUN at a time, but it worked best to flash them all together. LUNs1 and 2 are involved with secondary bootloaders (which is likely your problem if you are in 9008) and later bootloaders, fastboot and recovery, are in LUN4.

LINUX CODE BLOCK (MAKE SURE YOU HAVE BACKUPS OR TRY TO MAKE THEM FIRST)

for i in $(seq 0 6); do python3 edl --loader=xbl_s_devprg_ns.melf --memory=UFS qfil wipe_rawprogram_PHY$i.xml patch$i.xml .; done;
for i in $(seq 0 6); do python3 edl --loader=xbl_s_devprg_ns.melf --memory=UFS qfil rawprogram$i_BLANK_GPT.xml patch$i.xml .; done;
for i in $(seq 0 6); do python3 edl --loader=xbl_s_devprg_ns.melf --memory=UFS qfil rawprogram$i_WIPE_PARTITIONS.xml patch$i.xml .; done;
for i in $(seq 0 6); do python3 edl --loader=xbl_s_devprg_ns.melf --memory=UFS qfil rawprogram$i.xml patch$i.xml .; done;
for i in $(seq 0 6); do python3 edl --loader=xbl_s_devprg_ns.melf printgpt --memory=UFS --lun=$i; done;
python3 edl --loader=xbl_s_devprg_ns.melf reset

The last line for reset will restart the phone, hopefully getting to the bootloader this time, or possibly trying to boot system. If it tries to boot into an empty system, it will become 900e, so turn the phone off pressing all 3 buttons for 30 seconds, hold the vol+ while it turns on to start the bootloader menu, then select recovery, which should reboot into stock recovery and and have an option to easily transfer to stock fastbootd, where twrp can be flashed, then reboot to bootloader to reboot into recovery again. I used adb push to put a twrp backup in /data which then solved all my problems.. and what I should have done in the first place >< If it doesn't go to recovery and only the bootloader, select power off and use the test point tweezers to enter 9008 again to flash again.

Since I've edited the xml to work properly, I've included them again, both on another file host and here as plain text for extra posterity. I've also uploaded the stock firmware partitions I compiled for the latest version (A14v75), not including the ones with hash errors, but including vbmeta_system and xrom eventhough I suggested not using those. Mediafire wouldn't accept boot.img for some reason so I had to 7z that one. I haven't uploaded my backed up partitions because of potential data leak.

Ask me anything, preferably publicly here, or by DM or gmail me at newyorksven. If you send me your bricked phone, I would eagerly try to fix it over video chat, probably for free and pay return shipping.

rawprogram0.xml

<?xml version="1.0" ?>
<data>
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="" label="ssd" num_partition_sectors="2" partofsingleimage="false" physical_partition_number="0" readbackverify="false" size_in_KB="8.0" sparse="false" start_byte_hex="0x6000" start_sector="6" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="persist.img" label="persist" num_partition_sectors="8192" partofsingleimage="false" physical_partition_number="0" readbackverify="false" size_in_KB="32768.0" sparse="false" start_byte_hex="0x8000" start_sector="8" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="misc.img" label="misc" num_partition_sectors="256" partofsingleimage="false" physical_partition_number="0" readbackverify="false" size_in_KB="1024.0" sparse="false" start_byte_hex="0x2008000" start_sector="8200" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="keystore.img" label="keystore" num_partition_sectors="128" partofsingleimage="false" physical_partition_number="0" readbackverify="false" size_in_KB="512.0" sparse="false" start_byte_hex="0x2108000" start_sector="8456" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="frp.img" label="frp" num_partition_sectors="128" partofsingleimage="false" physical_partition_number="0" readbackverify="false" size_in_KB="512.0" sparse="false" start_byte_hex="0x2188000" start_sector="8584" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="fde.img" label="fde" num_partition_sectors="2560" partofsingleimage="false" physical_partition_number="0" readbackverify="false" size_in_KB="10240.0" sparse="false" start_byte_hex="0x2208000" start_sector="8712" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="factory.img" label="factory" num_partition_sectors="8192" partofsingleimage="false" physical_partition_number="0" readbackverify="false" size_in_KB="32768.0" sparse="false" start_byte_hex="0x2c08000" start_sector="11272" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="batinfo.img" label="batinfo" num_partition_sectors="8192" partofsingleimage="false" physical_partition_number="0" readbackverify="false" size_in_KB="32768.0" sparse="false" start_byte_hex="0x4c08000" start_sector="19464" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="asdf.img" label="asdf" num_partition_sectors="98304" partofsingleimage="false" physical_partition_number="0" readbackverify="false" size_in_KB="393216.0" sparse="false" start_byte_hex="0x6c08000" start_sector="27656" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="gpt.img" label="gpt" num_partition_sectors="256" partofsingleimage="false" physical_partition_number="0" readbackverify="false" size_in_KB="1024.0" sparse="false" start_byte_hex="0x1ec08000" start_sector="125960" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="sysinfo.img" label="sysinfo" num_partition_sectors="256" partofsingleimage="false" physical_partition_number="0" readbackverify="false" size_in_KB="1024.0" sparse="false" start_byte_hex="0x1ed08000" start_sector="126216" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="ADF.img" label="ADF" num_partition_sectors="8192" partofsingleimage="false" physical_partition_number="0" readbackverify="false" size_in_KB="32768.0" sparse="false" start_byte_hex="0x1ee08000" start_sector="126472" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="APD.img" label="APD" num_partition_sectors="51200" partofsingleimage="false" physical_partition_number="0" readbackverify="false" size_in_KB="204800.0" sparse="false" start_byte_hex="0x20e08000" start_sector="134664" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="ftm.img" label="ftm" num_partition_sectors="65536" partofsingleimage="false" physical_partition_number="0" readbackverify="false" size_in_KB="262144.0" sparse="false" start_byte_hex="0x2d608000" start_sector="185864" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="asusfw_a.img" label="asusfw_a" num_partition_sectors="16384" partofsingleimage="false" physical_partition_number="0" readbackverify="false" size_in_KB="65536.0" sparse="false" start_byte_hex="0x3d608000" start_sector="251400" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="asusfw_b.img" label="asusfw_b" num_partition_sectors="16384" partofsingleimage="false" physical_partition_number="0" readbackverify="false" size_in_KB="65536.0" sparse="false" start_byte_hex="0x41608000" start_sector="267784" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="" label="xrom_a" num_partition_sectors="131072" partofsingleimage="false" physical_partition_number="0" readbackverify="false" size_in_KB="524288.0" sparse="false" start_byte_hex="0x45608000" start_sector="284168"/>
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="" label="xrom_b" num_partition_sectors="131072" partofsingleimage="false" physical_partition_number="0" readbackverify="false" size_in_KB="524288.0" sparse="false" start_byte_hex="0x65608000" start_sector="415240"/>
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="asusrecord.img" label="asusrecord" num_partition_sectors="1" partofsingleimage="false" physical_partition_number="0" readbackverify="false" size_in_KB="4.0" sparse="false" start_byte_hex="0x85608000" start_sector="546312" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="super.img" label="super" num_partition_sectors="2228224" partofsingleimage="false" physical_partition_number="0" readbackverify="false" size_in_KB="8912896.0" sparse="false" start_byte_hex="0x85609000" start_sector="546313" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="" label="vbmeta_system_a" num_partition_sectors="16" partofsingleimage="false" physical_partition_number="0" readbackverify="false" size_in_KB="64.0" sparse="false" start_byte_hex="0x2a5609000" start_sector="2774537" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="" label="vbmeta_system_b" num_partition_sectors="16" partofsingleimage="false" physical_partition_number="0" readbackverify="false" size_in_KB="64.0" sparse="false" start_byte_hex="0x2a5619000" start_sector="2774553" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="metadata.img" label="metadata" num_partition_sectors="4096" partofsingleimage="false" physical_partition_number="0" readbackverify="false" size_in_KB="16384.0" sparse="false" start_byte_hex="0x2a5629000" start_sector="2774569" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="logbuf.img" label="logbuf" num_partition_sectors="131072" partofsingleimage="false" physical_partition_number="0" readbackverify="false" size_in_KB="524288.0" sparse="false" start_byte_hex="0x2a6629000" start_sector="2778665" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="" label="expandmem" num_partition_sectors="786432" partofsingleimage="false" physical_partition_number="0" readbackverify="false" size_in_KB="3145728.0" sparse="false" start_byte_hex="0x2c6629000" start_sector="2909737" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="userdata.img" label="userdata" num_partition_sectors="0" partofsingleimage="false" physical_partition_number="0" readbackverify="false" size_in_KB="0" sparse="false" start_byte_hex="0x386629000" start_sector="3696169" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="gpt_main0.bin" label="PrimaryGPT" num_partition_sectors="6" partofsingleimage="true" physical_partition_number="0" readbackverify="false" size_in_KB="24.0" sparse="false" start_byte_hex="0x0" start_sector="0" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="gpt_backup0.bin" label="BackupGPT" num_partition_sectors="5" partofsingleimage="true" physical_partition_number="0" readbackverify="false" size_in_KB="20.0" sparse="false" start_byte_hex="(4096*NUM_DISK_SECTORS)-20480." start_sector="NUM_DISK_SECTORS-5." />
</data>

rawprogram1.xml

<?xml version="1.0" ?>
<data>
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="xbl.img" label="xbl_a" num_partition_sectors="1536" partofsingleimage="false" physical_partition_number="1" readbackverify="false" size_in_KB="6144.0" sparse="false" start_byte_hex="0x6000" start_sector="6" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="xbl_config.img" label="xbl_config_a" num_partition_sectors="128" partofsingleimage="false" physical_partition_number="1" readbackverify="false" size_in_KB="512.0" sparse="false" start_byte_hex="0x606000" start_sector="1542" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="multiimgqti_a.img" label="multiimgqti_a" num_partition_sectors="8" partofsingleimage="false" physical_partition_number="1" readbackverify="false" size_in_KB="32.0" sparse="false" start_byte_hex="0x686000" start_sector="1670" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="multiimgoem.img" label="multiimgoem_a" num_partition_sectors="8" partofsingleimage="false" physical_partition_number="1" readbackverify="false" size_in_KB="32.0" sparse="false" start_byte_hex="0x68e000" start_sector="1678" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="apdp.img" label="apdp" num_partition_sectors="64" partofsingleimage="false" physical_partition_number="1" readbackverify="false" size_in_KB="256.0" sparse="false" start_byte_hex="0x696000" start_sector="1686" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="" label="last_parti" num_partition_sectors="0" partofsingleimage="false" physical_partition_number="1" readbackverify="false" size_in_KB="0" sparse="false" start_byte_hex="0x6d6000" start_sector="1750" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="gpt_main1.bin" label="PrimaryGPT" num_partition_sectors="6" partofsingleimage="true" physical_partition_number="1" readbackverify="false" size_in_KB="24.0" sparse="false" start_byte_hex="0x0" start_sector="0" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="gpt_backup1.bin" label="BackupGPT" num_partition_sectors="5" partofsingleimage="true" physical_partition_number="1" readbackverify="false" size_in_KB="20.0" sparse="false" start_byte_hex="(4096*NUM_DISK_SECTORS)-20480." start_sector="NUM_DISK_SECTORS-5." />
</data>

rawprogram2.xml

<?xml version="1.0" ?>
<data>
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="xbl.img" label="xbl_b" num_partition_sectors="1536" partofsingleimage="false" physical_partition_number="2" readbackverify="false" size_in_KB="6144.0" sparse="false" start_byte_hex="0x6000" start_sector="6" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="xbl_config.img" label="xbl_config_b" num_partition_sectors="128" partofsingleimage="false" physical_partition_number="2" readbackverify="false" size_in_KB="512.0" sparse="false" start_byte_hex="0x606000" start_sector="1542" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="multiimgqti_b.img" label="multiimgqti_b" num_partition_sectors="8" partofsingleimage="false" physical_partition_number="2" readbackverify="false" size_in_KB="32.0" sparse="false" start_byte_hex="0x686000" start_sector="1670" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="multiimgoem.img" label="multiimgoem_b" num_partition_sectors="8" partofsingleimage="false" physical_partition_number="2" readbackverify="false" size_in_KB="32.0" sparse="false" start_byte_hex="0x68e000" start_sector="1678" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="apdpb.img" label="apdpb" num_partition_sectors="357" partofsingleimage="false" physical_partition_number="2" readbackverify="false" size_in_KB="1428.0" sparse="false" start_byte_hex="0x696000" start_sector="1686" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="" label="last_parti" num_partition_sectors="0" partofsingleimage="false" physical_partition_number="2" readbackverify="false" size_in_KB="0" sparse="false" start_byte_hex="0x7fb000" start_sector="2043" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="gpt_main2.bin" label="PrimaryGPT" num_partition_sectors="6" partofsingleimage="true" physical_partition_number="2" readbackverify="false" size_in_KB="24.0" sparse="false" start_byte_hex="0x0" start_sector="0" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="gpt_backup2.bin" label="BackupGPT" num_partition_sectors="5" partofsingleimage="true" physical_partition_number="2" readbackverify="false" size_in_KB="20.0" sparse="false" start_byte_hex="(4096*NUM_DISK_SECTORS)-20480." start_sector="NUM_DISK_SECTORS-5." />
</data>

rawprogram3.xml

<?xml version="1.0" ?>
<data>
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="ALIGN_TO_128K_1.img" label="ALIGN_TO_128K_1" num_partition_sectors="26" partofsingleimage="false" physical_partition_number="3" readbackverify="false" size_in_KB="104.0" sparse="false" start_byte_hex="0x6000" start_sector="6" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="cdt.img" label="cdt" num_partition_sectors="32" partofsingleimage="false" physical_partition_number="3" readbackverify="false" size_in_KB="128.0" sparse="false" start_byte_hex="0x20000" start_sector="32" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="ddr.img" label="ddr" num_partition_sectors="8123" partofsingleimage="false" physical_partition_number="3" readbackverify="false" size_in_KB="32492.0" sparse="false" start_byte_hex="0x40000" start_sector="64" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="" label="last_parti" num_partition_sectors="0" partofsingleimage="false" physical_partition_number="3" readbackverify="false" size_in_KB="0" sparse="false" start_byte_hex="0x1ffb000" start_sector="8187" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="gpt_main3.bin" label="PrimaryGPT" num_partition_sectors="6" partofsingleimage="true" physical_partition_number="3" readbackverify="false" size_in_KB="24.0" sparse="false" start_byte_hex="0x0" start_sector="0" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="gpt_backup3.bin" label="BackupGPT" num_partition_sectors="5" partofsingleimage="true" physical_partition_number="3" readbackverify="false" size_in_KB="20.0" sparse="false" start_byte_hex="(4096*NUM_DISK_SECTORS)-20480." start_sector="NUM_DISK_SECTORS-5." />
</data>

rawprogram4.xml

<?xml version="1.0" ?>
<data>
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="uefi.img" label="uefi_a" num_partition_sectors="1280" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="5120.0" sparse="false" start_byte_hex="0x6000" start_sector="6" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="aop.img" label="aop_a" num_partition_sectors="128" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="512.0" sparse="false" start_byte_hex="0x506000" start_sector="1286" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="aop_config.img" label="aop_config_a" num_partition_sectors="128" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="512.0" sparse="false" start_byte_hex="0x586000" start_sector="1414" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="tz.img" label="tz_a" num_partition_sectors="1024" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="4096.0" sparse="false" start_byte_hex="0x606000" start_sector="1542" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="hyp.img" label="hyp_a" num_partition_sectors="2048" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="8192.0" sparse="false" start_byte_hex="0xa06000" start_sector="2566" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="modem.img" label="modem_a" num_partition_sectors="76800" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="307200.0" sparse="false" start_byte_hex="0x1206000" start_sector="4614" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="old_bt_a.img" label="old_bt_a" num_partition_sectors="512" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="2048.0" sparse="false" start_byte_hex="0x13e06000" start_sector="81414" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="mdtpsecapp_a.img" label="mdtpsecapp_a" num_partition_sectors="1024" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="4096.0" sparse="false" start_byte_hex="0x14006000" start_sector="81926" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="mdtp_a.img" label="mdtp_a" num_partition_sectors="8192" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="32768.0" sparse="false" start_byte_hex="0x14406000" start_sector="82950" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="abl.img" label="abl_a" num_partition_sectors="256" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="1024.0" sparse="false" start_byte_hex="0x16406000" start_sector="91142" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="dsp.img" label="dsp_a" num_partition_sectors="16384" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="65536.0" sparse="false" start_byte_hex="0x16506000" start_sector="91398" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="keymaster.img" label="keymaster_a" num_partition_sectors="128" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="512.0" sparse="false" start_byte_hex="0x1a506000" start_sector="107782" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="boot.img" label="boot_a" num_partition_sectors="24576" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="98304.0" sparse="false" start_byte_hex="0x1a586000" start_sector="107910" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="devcfg.img" label="devcfg_a" num_partition_sectors="32" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="128.0" sparse="false" start_byte_hex="0x20586000" start_sector="132486" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="qupfw.img" label="qupfw_a" num_partition_sectors="20" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="80.0" sparse="false" start_byte_hex="0x205a6000" start_sector="132518" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="vbmeta.img" label="vbmeta_a" num_partition_sectors="16" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="64.0" sparse="false" start_byte_hex="0x205ba000" start_sector="132538" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="dtbo.img" label="dtbo_a" num_partition_sectors="6144" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="24576.0" sparse="false" start_byte_hex="0x205ca000" start_sector="132554" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="uefisecapp.img" label="uefisecapp_a" num_partition_sectors="512" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="2048.0" sparse="false" start_byte_hex="0x21dca000" start_sector="138698" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="imagefv.img" label="imagefv_a" num_partition_sectors="512" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="2048.0" sparse="false" start_byte_hex="0x21fca000" start_sector="139210" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="shrm.img" label="shrm_a" num_partition_sectors="32" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="128.0" sparse="false" start_byte_hex="0x221ca000" start_sector="139722" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="" label="vm-bootsys_a" num_partition_sectors="67109" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="268436.0" sparse="true" start_byte_hex="0x221ea000" start_sector="139754" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="cpucp.img" label="cpucp_a" num_partition_sectors="256" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="1024.0" sparse="false" start_byte_hex="0x3280f000" start_sector="206863" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="featenabler.img" label="featenabler_a" num_partition_sectors="32" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="128.0" sparse="false" start_byte_hex="0x3290f000" start_sector="207119" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="vendor_boot.img" label="vendor_boot_a" num_partition_sectors="24576" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="98304.0" sparse="false" start_byte_hex="0x3292f000" start_sector="207151" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="qmcs.img" label="qmcs" num_partition_sectors="7680" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="30720.0" sparse="false" start_byte_hex="0x3892f000" start_sector="231727" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="qweslicstore.img" label="qweslicstore_a" num_partition_sectors="64" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="256.0" sparse="false" start_byte_hex="0x3a72f000" start_sector="239407" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="recovery.img" label="recovery_a" num_partition_sectors="25600" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="102400.0" sparse="false" start_byte_hex="0x3a76f000" start_sector="239471" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="xbl_ramdump.img" label="xbl_ramdump_a" num_partition_sectors="512" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="2048.0" sparse="false" start_byte_hex="0x40b6f000" start_sector="265071" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="uefi.img" label="uefi_b" num_partition_sectors="1280" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="5120.0" sparse="false" start_byte_hex="0x40d6f000" start_sector="265583" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="aop.img" label="aop_b" num_partition_sectors="128" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="512.0" sparse="false" start_byte_hex="0x4126f000" start_sector="266863" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="aop_config.img" label="aop_config_b" num_partition_sectors="128" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="512.0" sparse="false" start_byte_hex="0x412ef000" start_sector="266991" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="tz.img" label="tz_b" num_partition_sectors="1024" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="4096.0" sparse="false" start_byte_hex="0x4136f000" start_sector="267119" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="hyp.img" label="hyp_b" num_partition_sectors="2048" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="8192.0" sparse="false" start_byte_hex="0x4176f000" start_sector="268143" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="modem.img" label="modem_b" num_partition_sectors="76800" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="307200.0" sparse="false" start_byte_hex="0x41f6f000" start_sector="270191" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="old_bt_b.img" label="old_bt_b" num_partition_sectors="512" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="2048.0" sparse="false" start_byte_hex="0x54b6f000" start_sector="346991" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="mdtpsecapp_b.img" label="mdtpsecapp_b" num_partition_sectors="1024" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="4096.0" sparse="false" start_byte_hex="0x54d6f000" start_sector="347503" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="mdtp_b.img" label="mdtp_b" num_partition_sectors="8192" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="32768.0" sparse="false" start_byte_hex="0x5516f000" start_sector="348527" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="abl.img" label="abl_b" num_partition_sectors="256" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="1024.0" sparse="false" start_byte_hex="0x5716f000" start_sector="356719" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="dsp.img" label="dsp_b" num_partition_sectors="16384" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="65536.0" sparse="false" start_byte_hex="0x5726f000" start_sector="356975" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="keymaster.img" label="keymaster_b" num_partition_sectors="128" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="512.0" sparse="false" start_byte_hex="0x5b26f000" start_sector="373359" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="boot.img" label="boot_b" num_partition_sectors="24576" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="98304.0" sparse="false" start_byte_hex="0x5b2ef000" start_sector="373487" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="devcfg.img" label="devcfg_b" num_partition_sectors="32" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="128.0" sparse="false" start_byte_hex="0x612ef000" start_sector="398063" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="qupfw.img" label="qupfw_b" num_partition_sectors="20" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="80.0" sparse="false" start_byte_hex="0x6130f000" start_sector="398095" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="vbmeta.img" label="vbmeta_b" num_partition_sectors="16" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="64.0" sparse="false" start_byte_hex="0x61323000" start_sector="398115" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="dtbo.img" label="dtbo_b" num_partition_sectors="6144" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="24576.0" sparse="false" start_byte_hex="0x61333000" start_sector="398131" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="uefisecapp.img" label="uefisecapp_b" num_partition_sectors="512" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="2048.0" sparse="false" start_byte_hex="0x62b33000" start_sector="404275" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="imagefv.img" label="imagefv_b" num_partition_sectors="512" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="2048.0" sparse="false" start_byte_hex="0x62d33000" start_sector="404787" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="shrm.img" label="shrm_b" num_partition_sectors="32" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="128.0" sparse="false" start_byte_hex="0x62f33000" start_sector="405299" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="" label="vm-bootsys_b" num_partition_sectors="67109" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="268436.0" sparse="false" start_byte_hex="0x62f53000" start_sector="405331" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="cpucp.img" label="cpucp_b" num_partition_sectors="256" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="1024.0" sparse="false" start_byte_hex="0x73578000" start_sector="472440" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="featenabler.img" label="featenabler_b" num_partition_sectors="32" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="128.0" sparse="false" start_byte_hex="0x73678000" start_sector="472696" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="vendor_boot.img" label="vendor_boot_b" num_partition_sectors="24576" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="98304.0" sparse="false" start_byte_hex="0x73698000" start_sector="472728" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="qweslicstore.img" label="qweslicstore_b" num_partition_sectors="64" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="256.0" sparse="false" start_byte_hex="0x79698000" start_sector="497304" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="recovery.img" label="recovery_b" num_partition_sectors="25600" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="102400.0" sparse="false" start_byte_hex="0x796d8000" start_sector="497368" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="xbl_ramdump.img" label="xbl_ramdump_b" num_partition_sectors="512" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="2048.0" sparse="false" start_byte_hex="0x7fad8000" start_sector="522968" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="devinfo.img" label="devinfo" num_partition_sectors="1" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="4.0" sparse="false" start_byte_hex="0x7fcd8000" start_sector="523480" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="dip.img" label="dip" num_partition_sectors="256" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="1024.0" sparse="false" start_byte_hex="0x7fcd9000" start_sector="523481" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="splash.img" label="splash" num_partition_sectors="8356" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="33424.0" sparse="false" start_byte_hex="0x7fdd9000" start_sector="523737" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="limits.img" label="limits" num_partition_sectors="1" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="4.0" sparse="false" start_byte_hex="0x81e7d000" start_sector="532093" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="limits-cdsp.img" label="limits-cdsp" num_partition_sectors="1" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="4.0" sparse="false" start_byte_hex="0x81e7e000" start_sector="532094" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="toolsfv.img" label="toolsfv" num_partition_sectors="256" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="1024.0" sparse="false" start_byte_hex="0x81e7f000" start_sector="532095" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="logfs.img" label="logfs" num_partition_sectors="2048" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="8192.0" sparse="false" start_byte_hex="0x81f7f000" start_sector="532351" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="logdump.img" label="logdump" num_partition_sectors="131072" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="524288.0" sparse="false" start_byte_hex="0x8277f000" start_sector="534399" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="storsec.img" label="storsec" num_partition_sectors="32" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="128.0" sparse="false" start_byte_hex="0xa277f000" start_sector="665471" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="uefivarstore.img" label="uefivarstore" num_partition_sectors="128" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="512.0" sparse="false" start_byte_hex="0xa279f000" start_sector="665503" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="secdata.img" label="secdata" num_partition_sectors="7" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="28.0" sparse="false" start_byte_hex="0xa281f000" start_sector="665631" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="" label="vm-data" num_partition_sectors="8356" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="33424.0" sparse="false" start_byte_hex="0xa2826000" start_sector="665638" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="mdcompress.img" label="mdcompress" num_partition_sectors="5120" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="20480.0" sparse="false" start_byte_hex="0xa48ca000" start_sector="673994" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="connsec.img" label="connsec" num_partition_sectors="32" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="128.0" sparse="false" start_byte_hex="0xa5cca000" start_sector="679114" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="tzsc.img" label="tzsc" num_partition_sectors="32" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="128.0" sparse="false" start_byte_hex="0xa5cea000" start_sector="679146" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="spunvm.img" label="spunvm" num_partition_sectors="8192" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="32768.0" sparse="false" start_byte_hex="0xa5d0a000" start_sector="679178" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="rtice.img" label="rtice" num_partition_sectors="128" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="512.0" sparse="false" start_byte_hex="0xa7d0a000" start_sector="687370" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="" label="xbl_sc_test_mode" num_partition_sectors="16" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="64.0" sparse="false" start_byte_hex="0xa7d8a000" start_sector="687498" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="" label="xbl_sc_logs" num_partition_sectors="32" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="128.0" sparse="false" start_byte_hex="0xa7d9a000" start_sector="687514" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="bluetooth.img" label="bluetooth_a" num_partition_sectors="1024" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="4096.0" sparse="false" start_byte_hex="0xa7dba000" start_sector="687546" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="bluetooth.img" label="bluetooth_b" num_partition_sectors="1024" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="4096.0" sparse="false" start_byte_hex="0xa81ba000" start_sector="688570" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="" label="last_parti" num_partition_sectors="0" partofsingleimage="false" physical_partition_number="4" readbackverify="false" size_in_KB="0" sparse="false" start_byte_hex="0xa85ba000" start_sector="689594" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="gpt_main4.bin" label="PrimaryGPT" num_partition_sectors="6" partofsingleimage="true" physical_partition_number="4" readbackverify="false" size_in_KB="24.0" sparse="false" start_byte_hex="0x0" start_sector="0" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="gpt_backup4.bin" label="BackupGPT" num_partition_sectors="5" partofsingleimage="true" physical_partition_number="4" readbackverify="false" size_in_KB="20.0" sparse="false" start_byte_hex="(4096*NUM_DISK_SECTORS)-20480." start_sector="NUM_DISK_SECTORS-5." />
</data>

rawprogram5.xml

<?xml version="1.0" ?>
<data>
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="ALIGN_TO_128K_2.img" label="ALIGN_TO_128K_2" num_partition_sectors="26" partofsingleimage="false" physical_partition_number="5" readbackverify="false" size_in_KB="104.0" sparse="false" start_byte_hex="0x6000" start_sector="6" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="modemst1.img" label="modemst1" num_partition_sectors="1280" partofsingleimage="false" physical_partition_number="5" readbackverify="false" size_in_KB="5120.0" sparse="false" start_byte_hex="0x20000" start_sector="32" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="modemst2.img" label="modemst2" num_partition_sectors="1280" partofsingleimage="false" physical_partition_number="5" readbackverify="false" size_in_KB="5120.0" sparse="false" start_byte_hex="0x520000" start_sector="1312" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="fsg.img" label="fsg" num_partition_sectors="1280" partofsingleimage="false" physical_partition_number="5" readbackverify="false" size_in_KB="5120.0" sparse="false" start_byte_hex="0xa20000" start_sector="2592" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="fsg2.img" label="fsg2" num_partition_sectors="1280" partofsingleimage="false" physical_partition_number="5" readbackverify="false" size_in_KB="5120.0" sparse="false" start_byte_hex="0xf20000" start_sector="3872" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="fsg3.img" label="fsg3" num_partition_sectors="1280" partofsingleimage="false" physical_partition_number="5" readbackverify="false" size_in_KB="5120.0" sparse="false" start_byte_hex="0x1420000" start_sector="5152" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="fsc.img" label="fsc" num_partition_sectors="1755" partofsingleimage="false" physical_partition_number="5" readbackverify="false" size_in_KB="7020.0" sparse="false" start_byte_hex="0x1920000" start_sector="6432" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="" label="last_parti" num_partition_sectors="0" partofsingleimage="false" physical_partition_number="5" readbackverify="false" size_in_KB="0" sparse="false" start_byte_hex="0x1FFB000" start_sector="8187" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="gpt_main5.bin" label="PrimaryGPT" num_partition_sectors="6" partofsingleimage="true" physical_partition_number="5" readbackverify="false" size_in_KB="24.0" sparse="false" start_byte_hex="0x0" start_sector="0" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="gpt_backup5.bin" label="BackupGPT" num_partition_sectors="5" partofsingleimage="true" physical_partition_number="5" readbackverify="false" size_in_KB="20.0" sparse="false" start_byte_hex="(4096*NUM_DISK_SECTORS)-20480." start_sector="NUM_DISK_SECTORS-5." />
</data>

rawprogram6.xml

<?xml version="1.0" ?>
<data>
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="sysconf.img" label="sysconf" num_partition_sectors="32" partofsingleimage="false" physical_partition_number="6" readbackverify="false" size_in_KB="128.0" sparse="false" start_byte_hex="0x6000" start_sector="6" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="asuskey.img" label="asuskey" num_partition_sectors="256" partofsingleimage="false" physical_partition_number="6" readbackverify="false" size_in_KB="1024.0" sparse="false" start_byte_hex="0x26000" start_sector="38" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="asuskey2.img" label="asuskey2" num_partition_sectors="256" partofsingleimage="false" physical_partition_number="6" readbackverify="false" size_in_KB="1024.0" sparse="false" start_byte_hex="0x126000" start_sector="294" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="asuskey3.img" label="asuskey3" num_partition_sectors="256" partofsingleimage="false" physical_partition_number="6" readbackverify="false" size_in_KB="1024.0" sparse="false" start_byte_hex="0x226000" start_sector="550" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="asuskey4.img" label="asuskey4" num_partition_sectors="256" partofsingleimage="false" physical_partition_number="6" readbackverify="false" size_in_KB="1024.0" sparse="false" start_byte_hex="0x326000" start_sector="806" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="asuskey5.img" label="asuskey5" num_partition_sectors="256" partofsingleimage="false" physical_partition_number="6" readbackverify="false" size_in_KB="1024.0" sparse="false" start_byte_hex="0x426000" start_sector="1062" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="asuskey6.img" label="asuskey6" num_partition_sectors="6869" partofsingleimage="false" physical_partition_number="6" readbackverify="false" size_in_KB="27476.0" sparse="false" start_byte_hex="0x526000" start_sector="1318" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="" label="last_parti" num_partition_sectors="0" partofsingleimage="false" physical_partition_number="6" readbackverify="false" size_in_KB="0" sparse="false" start_byte_hex="0x1FFB00" start_sector="8187" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="gpt_main6.bin" label="PrimaryGPT" num_partition_sectors="6" partofsingleimage="true" physical_partition_number="6" readbackverify="false" size_in_KB="24.0" sparse="false" start_byte_hex="0x0" start_sector="0" />
<program SECTOR_SIZE_IN_BYTES="4096" file_sector_offset="0" filename="gpt_backup6.bin" label="BackupGPT" num_partition_sectors="5" partofsingleimage="true" physical_partition_number="6" readbackverify="false" size_in_KB="20.0" sparse="false" start_byte_hex="(4096*NUM_DISK_SECTORS)-20480." start_sector="NUM_DISK_SECTORS-5." />
</data>

patches are necessary and very similar with these differences if you can decipher it ><

[LUN0 byte_offset="3240"]

[LUN1,LUN2 byte_offset="680"]

[LUN3 byte_offset="424"]

[LUN4 byte_offset="1576" start_sector="4" value="CRC32(2,12288)"]

[LUN5,LUN6 byte_offset="936"]

patch0.xml

<?xml version="1.0" ?>
<patches>
<patch SECTOR_SIZE_IN_BYTES="4096" byte_offset="3240" filename="gpt_main0.bin" physical_partition_number="0" size_in_bytes="8" start_sector="2" value="NUM_DISK_SECTORS-6." what="Update last partition 26 'userdata' with actual size in Primary Header."/>
<patch SECTOR_SIZE_IN_BYTES="4096" byte_offset="3240" filename="DISK" physical_partition_number="0" size_in_bytes="8" start_sector="2" value="NUM_DISK_SECTORS-6." what="Update last partition 26 'userdata' with actual size in Primary Header."/>
<patch SECTOR_SIZE_IN_BYTES="4096" byte_offset="3240" filename="gpt_backup0.bin" physical_partition_number="0" size_in_bytes="8" start_sector="0" value="NUM_DISK_SECTORS-6." what="Update last partition 26 'userdata' with actual size in Backup Header."/>
<patch SECTOR_SIZE_IN_BYTES="4096" byte_offset="3240" filename="DISK" physical_partition_number="0" size_in_bytes="8" start_sector="NUM_DISK_SECTORS-5." value="NUM_DISK_SECTORS-6." what="Update last partition 26 'userdata' with actual size in Backup Header."/>
<patch SECTOR_SIZE_IN_BYTES="4096" byte_offset="48" filename="gpt_main0.bin" physical_partition_number="0" size_in_bytes="8" start_sector="1" value="NUM_DISK_SECTORS-6." what="Update Primary Header with LastUseableLBA."/>
<patch SECTOR_SIZE_IN_BYTES="4096" byte_offset="48" filename="DISK" physical_partition_number="0" size_in_bytes="8" start_sector="1" value="NUM_DISK_SECTORS-6." what="Update Primary Header with LastUseableLBA."/>
<patch SECTOR_SIZE_IN_BYTES="4096" byte_offset="48" filename="gpt_backup0.bin" physical_partition_number="0" size_in_bytes="8" start_sector="4" value="NUM_DISK_SECTORS-6." what="Update Backup Header with LastUseableLBA."/>
<patch SECTOR_SIZE_IN_BYTES="4096" byte_offset="48" filename="DISK" physical_partition_number="0" size_in_bytes="8" start_sector="NUM_DISK_SECTORS-1." value="NUM_DISK_SECTORS-6." what="Update Backup Header with LastUseableLBA."/>
<patch SECTOR_SIZE_IN_BYTES="4096" byte_offset="32" filename="gpt_main0.bin" physical_partition_number="0" size_in_bytes="8" start_sector="1" value="NUM_DISK_SECTORS-1." what="Update Primary Header with BackupGPT Header Location."/>
<patch SECTOR_SIZE_IN_BYTES="4096" byte_offset="32" filename="DISK" physical_partition_number="0" size_in_bytes="8" start_sector="1" value="NUM_DISK_SECTORS-1." what="Update Primary Header with BackupGPT Header Location."/>
<patch SECTOR_SIZE_IN_BYTES="4096" byte_offset="24" filename="gpt_backup0.bin" physical_partition_number="0" size_in_bytes="8" start_sector="4" value="NUM_DISK_SECTORS-1." what="Update Backup Header with CurrentLBA."/>
<patch SECTOR_SIZE_IN_BYTES="4096" byte_offset="24" filename="DISK" physical_partition_number="0" size_in_bytes="8" start_sector="NUM_DISK_SECTORS-1." value="NUM_DISK_SECTORS-1." what="Update Backup Header with CurrentLBA."/>
<patch SECTOR_SIZE_IN_BYTES="4096" byte_offset="72" filename="gpt_backup0.bin" physical_partition_number="0" size_in_bytes="8" start_sector="4" value="NUM_DISK_SECTORS-5." what="Update Backup Header with Partition Array Location."/>
<patch SECTOR_SIZE_IN_BYTES="4096" byte_offset="72" filename="DISK" physical_partition_number="0" size_in_bytes="8" start_sector="NUM_DISK_SECTORS-1" value="NUM_DISK_SECTORS-5." what="Update Backup Header with Partition Array Location."/>
<patch SECTOR_SIZE_IN_BYTES="4096" byte_offset="88" filename="gpt_main0.bin" physical_partition_number="0" size_in_bytes="4" start_sector="1" value="CRC32(2,4096)" what="Update Primary Header with CRC of Partition Array."/>
<patch SECTOR_SIZE_IN_BYTES="4096" byte_offset="88" filename="DISK" physical_partition_number="0" size_in_bytes="4" start_sector="1" value="CRC32(2,4096)" what="Update Primary Header with CRC of Partition Array."/>
<patch SECTOR_SIZE_IN_BYTES="4096" byte_offset="88" filename="gpt_backup0.bin" physical_partition_number="0" size_in_bytes="4" start_sector="4" value="CRC32(0,4096)" what="Update Backup Header with CRC of Partition Array."/>
<patch SECTOR_SIZE_IN_BYTES="4096" byte_offset="88" filename="DISK" physical_partition_number="0" size_in_bytes="4" start_sector="NUM_DISK_SECTORS-1." value="CRC32(NUM_DISK_SECTORS-5.,4096)" what="Update Backup Header with CRC of Partition Array."/>
<patch SECTOR_SIZE_IN_BYTES="4096" byte_offset="16" filename="gpt_main0.bin" physical_partition_number="0" size_in_bytes="4" start_sector="1" value="0" what="Zero Out Header CRC in Primary Header."/>
<patch SECTOR_SIZE_IN_BYTES="4096" byte_offset="16" filename="gpt_main0.bin" physical_partition_number="0" size_in_bytes="4" start_sector="1" value="CRC32(1,92)" what="Update Primary Header with CRC of Primary Header."/>
<patch SECTOR_SIZE_IN_BYTES="4096" byte_offset="16" filename="DISK" physical_partition_number="0" size_in_bytes="4" start_sector="1" value="0" what="Zero Out Header CRC in Primary Header."/>
<patch SECTOR_SIZE_IN_BYTES="4096" byte_offset="16" filename="DISK" physical_partition_number="0" size_in_bytes="4" start_sector="1" value="CRC32(1,92)" what="Update Primary Header with CRC of Primary Header."/>
<patch SECTOR_SIZE_IN_BYTES="4096" byte_offset="16" filename="gpt_backup0.bin" physical_partition_number="0" size_in_bytes="4" start_sector="4" value="0" what="Zero Out Header CRC in Backup Header."/>
<patch SECTOR_SIZE_IN_BYTES="4096" byte_offset="16" filename="gpt_backup0.bin" physical_partition_number="0" size_in_bytes="4" start_sector="4" value="CRC32(4,92)" what="Update Backup Header with CRC of Backup Header."/>
<patch SECTOR_SIZE_IN_BYTES="4096" byte_offset="16" filename="DISK" physical_partition_number="0" size_in_bytes="4" start_sector="NUM_DISK_SECTORS-1." value="0" what="Zero Out Header CRC in Backup Header."/>
<patch SECTOR_SIZE_IN_BYTES="4096" byte_offset="16" filename="DISK" physical_partition_number="0" size_in_bytes="4" start_sector="NUM_DISK_SECTORS-1." value="CRC32(NUM_DISK_SECTORS-1.,92)" what="Update Backup Header with CRC of Backup Header."/>
</patches>

Don't use these tools for profit unless you're allowed to or whatever that legal inconsequence jargon I heard in the first post was

MediaFire

MediaFire is a simple to use free service that lets you put all your photos, documents, music, and video in a single place so you can access them anywhere and share them everywhere.

www.mediafire.com

I also attaching xbl_s_devprg_ns.melf which is the most important file that unlocks the first layer/PBL/Sahara and not the red herring prog_firehose_ddr.elf that QFIL expects. I could rename it, but the xbl name helped me understand how everything goes together and melf sounds like it's part elf and part man or milf. You can't upload melf files here so I just changed the extension to txt.