Dark Shikari
By: a guest | Oct 31st, 2009 | Syntax:
Perl | Size: 0.50 KB | Hits: 615 | Expires: Never
#!/usr/bin/perl
open(FH
, "-|", "objdump", "-d", "-M", "intel", $ARGV[0
]) or die "objdump failed\n";
while(<FH>){
if(/([0-9a-f]+) <(\S+)>:/) {
$name = $2;
} elsif(/^\s*([0-9a-f]+):\s+((?:[0-9a-f]{2} )+)/ and $name) {
} elsif(/^$/ and $name) {
printf("%d %s\n", $end_addr - $start_addr, $name);
}
}
printf("%d %s\n", $end_addr - $start_addr, $name) if $end_addr;