source can be found here
this is a tool to manipulate Himalaya nbf files. it can encrypt, decrypt, or change the header values.
a compiled binary can be found here
to decrypt the nk.nbf file type:
xda2nbftool -d nk.nbf nk.nba HTC
to calculate the checksum of the file, for instance, if you manually changed something with a hex editor, type:
xda2nbftool -c ms_.nbf
If you want to update the file with the corrected checksum, add the '-u' option:
xda2nbftool -c ms_.nbf -u
You can also change values in the nbf header like this:
xda2nbftool -sd PH10 -so Qtek -sl WWE -v ms_.nbf
first decrypt the o2 upgrade: (the HTC password is used by the 'old' upgrade tool')
xda2nbftool -d NK.nbf nk.nba HTC
then change the operator name in the nbf to tmobile, so the upgrade utility will not complain:
xda2nbftool -so T-Mobile nk.nba
then re-encrypt it: (the 921211 password is used by the 'new' upgrade tool')
xda2nbftool -e nk.nba NK.nbf 921211
the 'new' upgrade tool can handle os images for the 'WWE' language.
first decrypt it ( using xor encryption )
xda2nbftool -x NK.nbf nk.nba 0x89124137 xda2nbftool -x ms_.nbf ms_.nba 0x25863614 xda2nbftool -x radio_.nbf radio_.nba 0x12345678
then modify the header info
xda2nbftool -sd PH10 -so Qtek -sl ENG -v ms_.nba xda2nbftool -sd PH10 -so Qtek -sl ENG -v Radio_.nba xda2nbftool -sd PH10 -so Qtek -sl ENG -v nk.nba
then re-encrypt it.
xda2nbftool -x NK.nba nk.nbf 0x89124137 xda2nbftool -x ms_.nba ms_.nbf 0x25863614 xda2nbftool -x radio_.nba radio_.nbf 0x12345678
xda2nbftool -x NK.nbf nk.nba 0x20040304 xda2nbftool -x ms_.nbf ms_.nba 0x20040305 xda2nbftool -x radio_.nbf radio_.nba 0x20040306
xda2nbftool -t
will print the xor keys of all nbfs in the current directory
xda2nbftool -t -x
will print the xor keys of all nbfs in the current directory, and decrypt them to .nba files.