MCPcopy
hub / github.com/vm03/payload_dumper

github.com/vm03/payload_dumper @main sqlite

repository ↗ · DeepWiki ↗
9 symbols 35 edges 2 files 2 documented · 22%
README

payload dumper

Script tested on Yandex Amber OTA's (full and incremental) under Linux (but may works on Windows too)

System requirement

  • Python3, pip
  • google protobuf for python pip install protobuf

Docker

Alternatively you can use Docker:

docker run --rm -v "${PWD}":/data -it vm03/payload_dumper /data/payload.bin --out /data

or self build Docker image

# build the container image
$ docker build -t payload_dumper .

# mount current PWD and pass payload.bin
$ docker run --rm -v "${PWD}":/data -it payload_dumper /data/payload.bin --out /data

Guide

Preparation

  • Make sure you have Python 3.6 or later installed.
  • Download payload_dumper.py, update_metadata_pb2.py and requirements.txt
  • Extract your OTA zip and place payload.bin in the same folder as these files.
  • Open PowerShell, Command Prompt, or Terminal depending on your OS.
  • Enter the following command: python -m pip install -r requirements.txt

Full OTA

  • When that’s finished, enter this command: python payload_dumper.py payload.bin
  • This will start to extract the images within the payload.bin file to the output folder you are in.

Incremental OTA

  • Copy original images (from full OTA or dumped from devices) to old folder (with part name + .img, ex: boot.img, system.img)
  • run python payload_dumper.py --diff payload.bin
  • file extracted to the output folder you are in.

Core symbols most depended-on inside this repo

bsdf2_decompress
called by 3
payload_dumper.py
u64
called by 2
payload_dumper.py
dump_part
called by 2
payload_dumper.py
u32
called by 1
payload_dumper.py
bsdf2_read_patch
called by 1
payload_dumper.py
open_payload_file
called by 1
payload_dumper.py
data_for_op
called by 1
payload_dumper.py
main
called by 1
payload_dumper.py

Shape

Function 9

Languages

Python100%

Modules by API surface

payload_dumper.py9 symbols

Dependencies from manifests, versioned

aiohttp3.8.0 · 1×
brotli1.1.0 · 1×
bsdiff41.1.5 · 1×
fsspec2023.0.0 · 1×
protobuf5.27.3 · 1×
requests2.28.0 · 1×
six1.16.0 · 1×
zstandard0.23.0 · 1×

For agents

$ claude mcp add payload_dumper \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact