Jump to content

[TOOL] Huawei Update Extractor [UPDATED: v0.9.7.2]


Recommended Posts

Guest worstenbrood
Posted (edited)

Huawei Update Extractor

After messing around a bit with the perl tools available for extracting Huawei update.app files,
i got the idea to create an own (windows) tool.

Requirements

.Net Framework 3.5

Install

Extract the content of the zip to a folder somewhere on your system.
Execute HuaweiUpdateExtractor.exe
I'm planning to create an installer sometime.

Usage

Press the browse (...) button and select an update.app file. Select a device or unknown and press on the open button.
You'll see the content of the update.app file in the listview.

Select one or more files and right click. Choose Extract selected from the context menu.
Choose the ouput folder and press ok.
Or just right click on the list and select Extract all, choose the output folder again and press ok.
Press close on the extract window.

You can sort the list on sequence, filename and size. Just press on the desired column header.

 

Command line:

 
HuaweiUpdateExtractor extract input output [profile]
HuaweiUpdateExtractor repack input output profile

Profile

The profiles.xml file is used to identify the files in the update.app file. Every file in the update.app has a sequence or type, which is also
shown in the list. Those sequences or types are used to identify the file/device partition.

Example:

<Profiles>
<Profile name="Unknown" author="worstenbrood">
<Files/>
</Profile>
<Profile name="Huawei G510-0100" author="worstenbrood">
<Files>
<File sequence="00000000" partition="/dev/block/mmcblk0p17">system.img</File>
<File sequence="40000000" partition="/dev/block/mmcblk0p13">recovery.img</File>
<File sequence="80000000" partition="/dev/block/mmcblk0p03">baseband.img</File>
<File sequence="EC000000">version.txt</File>
<File sequence="E4000000">splash.raw565</File>
<File sequence="FC000000" partition="/dev/block/mmcblk0p12">boot.img</File>
<File sequence="70000000" partition="/dev/block/mmcblk0p16">cust.img</File>
<File sequence="30000000" partition="/dev/block/mmcblk0p18">userdata.img</File>
<File sequence="FE000000" signature="true">signature</File>
<File sequence="FF000000" checksum="true">crc</File>
</Files>
</Profile>
<Profile name="Huawei P6" author="worstenbrood">
<Files>
<File type="system" partition="/dev/block/mmcblk0p16">system.img</File>
<File type="cache" partition="/dev/block/mmcblk0p17">cache.img</File>
<File type="cust" partition="/dev/block/mmcblk0p18">cust.img</File>
<File type="userdata" partition="/dev/block/mmcblk0p19">userdata.img</File>
<File type="modemimage" partition="/dev/block/mmcblk0p13">modemimage.img</File>
<File type="boot" partition="/dev/block/mmcblk0p12">boot.img</File>
<File type="recovery" partition="/dev/block/mmcblk0p11">recovery.img</File>
<File type="md5rsa" signature="true">signature</File>
<File type="crc" checksum="true">crc</File>
</Files>
</Profile>
</Profiles>

<Profiles>
- Root tag of the xml file.

<Profile>
- Identifies a device
- attribute name: name of the device
- attribute author: author of the device

<Files>
- File root tag

<File>
- Identifies a file
- attribute sequence: sequence of the file in update.app
- attribute type: type of the file in the update.app
- attribute partition: destination partition on the device
- attribute signature: used to identify the signature file
- attribute checksum: used to identify the checksum file
- value: file name

You can add or edit devices. If you want them to integrate in newer version, pm 'em to me.
I'm gonna make some auto update for the device file somewhere in the future :)

Roadmap

- Next version will have repack function, need to do some ui adjustements
- You tell me ...

Credits

Zebadger ([email protected]) for figuring out the file headers
S34Qu4K3 for the P6 partition layout

Changelog

v0.9.1.0
- Create update zip works now, this requires to have a PERFECT device entry in the devices file. The sequence is used to identify the file AND partition. Only files that have these two will be included in the zip. USE WITH CAUTION, MAKE SURE THE PARTITION IS CORRECT OR YOU'LL END UP FLASHING THE WRONG IMAGES TO THE WRONG PARTITION !! I'M NOT RESPONSAbLE FOR bRICKING YOUR DEVICE! IF YOU DON'T KNOW WHAT YOU'RE DOING, THEN DON'T USE IT!

v0.9.1.1
- Added Type to the filelist (shows INPUT for g510 roms, but shows some useful info on P6 roms)

v0.9.2.0
- Files now can also be identified by the type attribute in devices.xml
- Added P6 device

v0.9.3.0
- Crc check during extract
- Crc check during creating flashable zip
- Added row to see file is flashable

v0.9.5.0
- Added repack
- Added icons and tooltip
- Added settings
- Experimental, no signing on repack, crc file gets generated
- Alot of stuff i forgot

 

v0.9.6.0

- Added command line options

 

v0.9.7.0

- Added G300 profile (thx ZeBadger)
- Added detailed info about the file (libmagic) in the tooltip on the extract list. This way it is easier to identify files inside the update.
(see screenshot). It will detect ext/fat/... partitions.
 
v0.9.7.1
- Alot of devices added in profiles (Credits to ngamyarthar, thanks alot dude!)
- Added android boot/recovery image recognition in magic.mgc

v0.9.7.2
- Made setup
 

Download

- v0.9.7.2: HuaweiUpdateExtractor_0.9.7.2_Setup.zip

Donate if you like my work &#33;

post-690530-0-57316700-1384872382_thumb.

Edited by worstenbrood
Guest andrea2107
Posted

Hi,please reupload the tool,link its not working for me

Guest worstenbrood
Posted (edited)

Hi,please reupload the tool,link its not working for me

Strange, it is just a link to the attachment ...

Anyway, i added an alternative megaupload mirror

Edit: Almost finished the update zip creation btw :)

Edited by worstenbrood
Guest worstenbrood
Posted

Next version will have a repack function included, i'm adjusting the UI but most of the repacking code is already written.

Guest worstenbrood
Posted

Hi,i want to use this in my g330,I can?

Sure, if you select unknown you will be able to extract the update, but none of the parts are identified, you'll have to do that manually.

S34Qu4K3 made a nice post on how to identify the partitions on your phone, after identifying them you have to map them to the files inside the update.app

http://forum.xda-developers.com/showthread.php?t=2398404

After identifying the parts and partitions, you can add them to the devices.xml

  • 2 weeks later...
  • 2 weeks later...
Guest worstenbrood
Posted

thanks but link doesnt work for me

That would be weird since it is an attachment :/

  • 1 month later...
Guest cristos28
Posted

Huawei Update Extractor

After messing around a bit with the perl tools available for extracting Huawei update.app files,

i got the idea to create an own (windows) tool.

Requirements

.Net Framework 3.5

Install

Extract the content of the zip to a folder somewhere on your system.

Execute HuaweiUpdateExtractor.exe

I'm planning to create an installer sometime.

Usage

Press the browse (...) button and select an update.app file. Select a device or unknown and press on the open button.

You'll see the content of the update.app file in the listview.

Select one or more files and right click. Choose Extract selected from the context menu.

Choose the ouput folder and press ok.

Or just right click on the list and select Extract all, choose the output folder again and press ok.

Press close on the extract window.

You can sort the list on sequence, filename and size. Just press on the desired column header.

 

Command line:

 
HuaweiUpdateExtractor extract input output [profile]
HuaweiUpdateExtractor repack input output profile

Profile

The profiles.xml file is used to identify the files in the update.app file. Every file in the update.app has a sequence or type, which is also

shown in the list. Those sequences or types are used to identify the file/device partition.

Example:

<Profiles>

<Profile name="Unknown" author="worstenbrood">

<Files/>

</Profile>

<Profile name="Huawei G510-0100" author="worstenbrood">

<Files>

<File sequence="00000000" partition="/dev/block/mmcblk0p17">system.img</File>

<File sequence="40000000" partition="/dev/block/mmcblk0p13">recovery.img</File>

<File sequence="80000000" partition="/dev/block/mmcblk0p03">baseband.img</File>

<File sequence="EC000000">version.txt</File>

<File sequence="E4000000">splash.raw565</File>

<File sequence="FC000000" partition="/dev/block/mmcblk0p12">boot.img</File>

<File sequence="70000000" partition="/dev/block/mmcblk0p16">cust.img</File>

<File sequence="30000000" partition="/dev/block/mmcblk0p18">userdata.img</File>

<File sequence="FE000000" signature="true">signature</File>

<File sequence="FF000000" checksum="true">crc</File>

</Files>

</Profile>

<Profile name="Huawei P6" author="worstenbrood">

<Files>

<File type="system" partition="/dev/block/mmcblk0p16">system.img</File>

<File type="cache" partition="/dev/block/mmcblk0p17">cache.img</File>

<File type="cust" partition="/dev/block/mmcblk0p18">cust.img</File>

<File type="userdata" partition="/dev/block/mmcblk0p19">userdata.img</File>

<File type="modemimage" partition="/dev/block/mmcblk0p13">modemimage.img</File>

<File type="boot" partition="/dev/block/mmcblk0p12">boot.img</File>

<File type="recovery" partition="/dev/block/mmcblk0p11">recovery.img</File>

<File type="md5rsa" signature="true">signature</File>

<File type="crc" checksum="true">crc</File>

</Files>

</Profile>

</Profiles>

<Profiles>

- Root tag of the xml file.

<Profile>

- Identifies a device

- attribute name: name of the device

- attribute author: author of the device

<Files>

- File root tag

<File>

- Identifies a file

- attribute sequence: sequence of the file in update.app

- attribute type: type of the file in the update.app

- attribute partition: destination partition on the device

- attribute signature: used to identify the signature file

- attribute checksum: used to identify the checksum file

- value: file name

You can add or edit devices. If you want them to integrate in newer version, pm 'em to me.

I'm gonna make some auto update for the device file somewhere in the future :)

Roadmap

- Next version will have repack function, need to do some ui adjustements

- You tell me ...

Credits

Zebadger ([email protected]) for figuring out the file headers

S34Qu4K3 for the P6 partition layout

Changelog

v0.9.1.0

- Create update zip works now, this requires to have a PERFECT device entry in the devices file. The sequence is used to identify the file AND partition. Only files that have these two will be included in the zip. USE WITH CAUTION, MAKE SURE THE PARTITION IS CORRECT OR YOU'LL END UP FLASHING THE WRONG IMAGES TO THE WRONG PARTITION !! I'M NOT RESPONSAbLE FOR bRICKING YOUR DEVICE! IF YOU DON'T KNOW WHAT YOU'RE DOING, THEN DON'T USE IT!

v0.9.1.1

- Added Type to the filelist (shows INPUT for g510 roms, but shows some useful info on P6 roms)

v0.9.2.0

- Files now can also be identified by the type attribute in devices.xml

- Added P6 device

v0.9.3.0

- Crc check during extract

- Crc check during creating flashable zip

- Added row to see file is flashable

v0.9.5.0

- Added repack

- Added icons and tooltip

- Added settings

- Experimental, no signing on repack, crc file gets generated

- Alot of stuff i forgot

 

v0.9.6.0

- Added command line options

Download

- v0.9.0.0: attachicon.gifHuaweiUpdateExtractor_v0.9.0.0.zip - MegaUpload

- v0.9.1.0: attachicon.gifHuaweiUpdateExtractor_v0.9.1.0.zip

- v0.9.1.1: attachicon.gifHuaweiUpdateExtractor_v0.9.1.1.zip

- v0.9.2.0: attachicon.gifHuaweiUpdateExtractor_v0.9.2.0.zip

- v0.9.3.0: attachicon.gifHuaweiUpdateExtractor_v0.9.3.0.zip

- v0.9.5.0: attachicon.gifHuaweiUpdateExtractor_v0.9.5.0.zip

- v0.9.6.0: attachicon.gifHuaweiUpdateExtractor_v0.9.6.0.zip

Donate if you like my work &#33;

excellent job ! not complicated at all and seems to work ok! since you have the knowledge to this things i am sure you can help with something! on my huawei g520 t10 wit automade cwm i somehow erased the imei and i have tried million an one ways torestore it but with no success! figured out that i should go back to the official rom but the only way to flash it is if i use your tool to extact it and after that zip the img and flash in cwm correct? or if somehow i can flash the original cwm and then flash the app file of my rom! so i can not manage any of this and i was wondering if i could sent you the app file and you make for me a flashable rom zip or img of the original cwm! thanks in adance and even if you dont help your job is great.

Guest worstenbrood
Posted (edited)

excellent job ! not complicated at all and seems to work ok! since you have the knowledge to this things i am sure you can help with something! on my huawei g520 t10 wit automade cwm i somehow erased the imei and i have tried million an one ways torestore it but with no success! figured out that i should go back to the official rom but the only way to flash it is if i use your tool to extact it and after that zip the img and flash in cwm correct? or if somehow i can flash the original cwm and then flash the app file of my rom! so i can not manage any of this and i was wondering if i could sent you the app file and you make for me a flashable rom zip or img of the original cwm! thanks in adance and even if you dont help your job is great.

 

Well, did you try to install the  update.app via vol+/vol-/power combo instead of via the recovery ? There are also some tools available to rewrite the imei (http://www.zz-key.com/update/zZ_Huawei_Advanced_Tool_v2.6.0.7.rar). The thing is that i need the partition layout and the mappings to the files in the .app file to create a valid flashable zip.

Edited by worstenbrood
Posted

@worstenbrood how can I extract the folders inside the system.img?

Guest cristos28
Posted

Well, did you try to install the  update.app via vol+/vol-/power combo instead of via the recovery ? There are also some tools available to rewrite the imei (http://www.zz-key.com/update/zZ_Huawei_Advanced_Tool_v2.6.0.7.rar). The thing is that i need the partition layout and the mappings to the files in the .app file to create a valid flashable zip.

thanks for your time ! yes i did try with -/+/power but i dont have in my phone i probably erased it when i installed cwm( i dont know how)this tool that you send me is not working on my pc,and i dont know what is what is partition layout and mappings :) yesterday i took the boot img and recovery img i extracted from your programm and tried to put it on the phone with mtk droid tools but i cant ,the recovery is passing as valid but droid tools can not write it to my phone,i have tried all mtk meta tools for writing the imei back but seems i am missing cdc drivers,thanks again :)

Guest worstenbrood
Posted (edited)

thanks for your time ! yes i did try with -/+/power but i dont have in my phone i probably erased it when i installed cwm( i dont know how)this tool that you send me is not working on my pc,and i dont know what is what is partition layout and mappings :) yesterday i took the boot img and recovery img i extracted from your programm and tried to put it on the phone with mtk droid tools but i cant ,the recovery is passing as valid but droid tools can not write it to my phone,i have tried all mtk meta tools for writing the imei back but seems i am missing cdc drivers,thanks again :)

I thought that the vol-/vol+/power combo was incorperated into the bootloader. Already tried to reflash that one ?

Btw, do you have an unlocked bootloader ? Are you able to go into fastboot ?

Edited by worstenbrood
Guest cristos28
Posted

I thought that the vol-/vol+/power combo was incorperated into the bootloader. Already tried to reflash that one ?

Btw, do you have an unlocked bootloader ? Are you able to go into fastboot ?

 

I thought that the vol-/vol+/power combo was incorperated into the bootloader. Already tried to reflash that one ?

Btw, do you have an unlocked bootloader ? Are you able to go into fastboot ?

i have cwm recovery  automade and yes i think i can go to fastboot (vol-/power) when i press it and connect tothe pc in device manager i can see the phone as adb device.

Guest worstenbrood
Posted

i have cwm recovery automade and yes i think i can go to fastboot (vol-/power) when i press it and connect tothe pc in device manager i can see the phone as adb device.

If the bootloader isnt unlocked yet, request an unlock code by huawei. Unlock it en reflash your bootloader via fastboot. Be careful tho cause if you flash the wrong bl you have a brick

  • 2 weeks later...
Guest pinky0978
Posted

I have downloaded 3 versions and none have the (...) button available. Can't paste path either, any clue what the problem could be?

Guest worstenbrood
Posted

I have downloaded 3 versions and none have the (...) button available. Can't paste path either, any clue what the problem could be?

 

Try do delete the folder C:\Users\<username\AppData\Local\worstenbrood

After that adjust the HuaweiUpdateExtractor.exe.config, you'll find the following there:

 

<setting name="Size" serializeAs="String">
                <value>1183, 829</value>
 </setting>
 
The first digit is the height, second is the width, try changing it to smaller values and restart the application then.
  • 1 month later...
Guest EuthAnAsia77
Posted

Hello guyz thanks you for this very good tools, but maybe U support the G330 U8825-1 Device please...

  • 1 month later...
Guest scorpion7b
Posted
Worstenbrood Hello, my huawei G520 is bricked by an improperly installed rom. What application can I use to unbrick? I think the boot.img is hurt! 
 
Your idea would serve to install software huawei rom ..! 
 
can you help?

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.