header body footer
------------ --------- ------
id body_size size path crc32
####
#!/usr/bin/perl
use strict;
use warnings;
my $mem = pack('H*', '54424c004100001300000BAD2F62696E2F7465737432302E64666C376F6B0F42000013000000042F62696E2F7465737430312E64666C376D6C0F43000013000000042F62696E2F7465737430322E64666C376D6D0F44000013000000042F62696E2F7465737430332E64666C376D6E0F45000013000000042F62696E2F7465737430342E64666C376D6F0F46000013000000042F62696E2F7465737430352E64666C376D700F47000013000000042F62696E2F7465737430362E64666C376D710F48000013000000042F62696E2F7465737430372E64666C376D720F49000013000000042F62696E2F7465737430382E64666C376D730F4A000013000000042F62696E2F7465737430392E64666C376D740F4B000013000000042F62696E2F7465737431302E64666C376E6B0F4C000013000000042F62696E2F7465737431312E64666C376E6C0F4D000013000000042F62696E2F7465737431322E64666C376E6D0F4E000013000000042F62696E2F7465737431332E64666C376E6E0F4F000013000000042F62696E2F7465737431342E64666C376E6F0F50000013000000042F62696E2F7465737431352E64666C376E700F51000013000000042F62696E2F7465737431362E64666C376E710F52000013000000042F62696E2F7465737431372E64666C376E720F53000013000000042F62696E2F7465737431382E64666C376E730F54000013000000042F62696E2F7465737431392E64666C376E740F55000011000000042F6574632F74657374322E73683B0C08495600000D000000082F477053772E63686B1175D3BB');
(my $section, $mem) = unpack('Z* a*', $mem);
print("$section\n");
print( ( "-" x length($section) ), "\n");
while (length($mem)) {
(my $id, my $body, my $crc, $mem) = unpack('n n/a N a*', $mem);
my ($size, $path) = unpack('N a*', $body);
# Check CRC here.
print("Load ID : $id\n");
print("Load Size : $size\n");
print("Load Path : $path\n");
print("\n");
}
####
TBL
---
Load ID : 16640
Load Size : 2989
Load Path : /bin/test20.dfl
Load ID : 16896
Load Size : 4
Load Path : /bin/test01.dfl
Load ID : 17152
Load Size : 4
Load Path : /bin/test02.dfl
...