Help with partition.mbn rawprogram_nand and firehose

Please tell me the purpose of these files and how to create/generate them yourself?

- partition_nand.xml
- partition.mbn
- firehose/partition_complete_XXX.mbn
- firehose/rawprogram_nand_XXX_update.xml
- firehose/patch_XXX.xml

I have EC25 module with 512MiB NAND Flash = 4096 blocks * 64 pages * 2048b pagesize
I need to remap the memory in the Quectel EC25 module like in example
Example:

Name           Offset   Length
-----------------------------------------------
sbl            00000000 00140000
mibib          00140000 00140000 
efs2           00280000 01600000
rawdata        01880000 00300000
tz             01B80000 00140000
rpm            01CC0000 00140000
aboot          01E00000 00140000
config         01F40000 00140000
boot_cfg       02080000 00140000
aboot          021C0000 00900000
bboot          02AC0000 00900000
modem          033C0000 03C00000
arootfs        06FC0000 07740000
brootfs        0E700000 07740000
storage        15E40000 0A1C0000

As I know partition.mbn is partition table that can be read by pbl, sbl, aboot (maybe I am wrong) and stored in mibib partition.

firehose/rawprogram_nand_XXX_update.xml

This file has a lit of actions, like erase and program for several partitions, firehouse use it for erase and program partitions.