Jump to content


Photo

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


  • Please log in to reply
25 replies to this topic

#1
worstenbrood

worstenbrood

    Newbie

  • Members
  • Pip
  • 29 posts
  • Gender:Male
  • Devices:LG Nexus 4

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: Attached File  HuaweiUpdateExtractor_0.9.7.2_Setup.zip   1.72MB   100 downloads

Donate if you like my work &#33;

Attached Files


Edited by worstenbrood, 13 February 2014 - 07:31 PM.

  • 9

#2
andrea2107

andrea2107

    Enthusiast

  • Members
  • PipPipPip
  • 154 posts
  • Devices:huawei ascend g330
Hi,please reupload the tool,link its not working for me

  • 0

#3
worstenbrood

worstenbrood

    Newbie

  • Members
  • Pip
  • 29 posts
  • Gender:Male
  • Devices:LG Nexus 4

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, 05 September 2013 - 11:57 AM.

  • 0

#4
worstenbrood

worstenbrood

    Newbie

  • Members
  • Pip
  • 29 posts
  • Gender:Male
  • Devices:LG Nexus 4
Next version will have a repack function included, i'm adjusting the UI but most of the repacking code is already written.

  • 0

#5
andrea2107

andrea2107

    Enthusiast

  • Members
  • PipPipPip
  • 154 posts
  • Devices:huawei ascend g330
Hi,i want to use this in my g330,I can?

  • 0

#6
worstenbrood

worstenbrood

    Newbie

  • Members
  • Pip
  • 29 posts
  • Gender:Male
  • Devices:LG Nexus 4

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-dev...d.php?t=2398404

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

  • 0

#7
Y300-0100

Y300-0100

    Enthusiast

  • Members
  • PipPipPip
  • 226 posts
  • Gender:Male
  • Location:Montenegro
  • Devices:Y300 PAC KK
Hi, I found this easy tutorial for extracting files from system.img
Could be helpful...
 

  • 0

#8
worstenbrood

worstenbrood

    Newbie

  • Members
  • Pip
  • 29 posts
  • Gender:Male
  • Devices:LG Nexus 4

Hi, I found this easy tutorial for extracting files from system.img
Could be helpful...
 
http://forum.xda-dev...d.php?t=2294909


I like using winhex for that, it supports several fs instead of only ext4 :)

  • 0

#9
bgmenot111

bgmenot111

    Regular

  • Members
  • PipPip
  • 105 posts
  • Gender:Male
  • Location:dead
  • Devices:G510-0200

thanks but link doesnt work for me


  • 0

#10
worstenbrood

worstenbrood

    Newbie

  • Members
  • Pip
  • 29 posts
  • Gender:Male
  • Devices:LG Nexus 4

thanks but link doesnt work for me


That would be weird since it is an attachment :/

  • 1

#11
bgmenot111

bgmenot111

    Regular

  • Members
  • PipPip
  • 105 posts
  • Gender:Male
  • Location:dead
  • Devices:G510-0200

Can u upload on mega?


  • 0

#12
worstenbrood

worstenbrood

    Newbie

  • Members
  • Pip
  • 29 posts
  • Gender:Male
  • Devices:LG Nexus 4

  • 3

#13
cristos28

cristos28

    Newbie

  • Members
  • Pip
  • 3 posts
  • Devices:g520,magic,htc1x

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.


  • 0

#14
worstenbrood

worstenbrood

    Newbie

  • Members
  • Pip
  • 29 posts
  • Gender:Male
  • Devices:LG Nexus 4

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.co...ol_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, 13 November 2013 - 10:24 AM.

  • 0

#15
RXZ

RXZ

    Regular

  • Members
  • PipPip
  • 59 posts
  • Gender:Not Telling
  • Devices:Huawei Ascend Y300-0100

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


  • 0

Spoiler

 


#16
worstenbrood

worstenbrood

    Newbie

  • Members
  • Pip
  • 29 posts
  • Gender:Male
  • Devices:LG Nexus 4

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

 

With WinHex (Specialist -> Interpret file as disk image) or ext4_extractor (http://sourceforge.n...ndroidicsjbext/)

Winhex can handle multiple fs, while the last one can only handle ext4.


  • 0

#17
cristos28

cristos28

    Newbie

  • Members
  • Pip
  • 3 posts
  • Devices:g520,magic,htc1x

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.co...ol_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 :)


  • 0

#18
worstenbrood

worstenbrood

    Newbie

  • Members
  • Pip
  • 29 posts
  • Gender:Male
  • Devices:LG Nexus 4

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, 13 November 2013 - 05:39 PM.

  • 0

#19
cristos28

cristos28

    Newbie

  • Members
  • Pip
  • 3 posts
  • Devices:g520,magic,htc1x

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.


  • 0

#20
worstenbrood

worstenbrood

    Newbie

  • Members
  • Pip
  • 29 posts
  • Gender:Male
  • Devices:LG Nexus 4

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

  • 0




1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users