// iterate over the returned symbol lines. skip the first, it is the
// address of this function.
// iterate over the returned symbol lines. skip the first, it is the
// address of this function.
char *begin_name = 0, *begin_offset = 0, *end_offset = 0;
// find parentheses and +address offset surrounding the mangled name:
// ./module(function+0x15c) [0x8048a6d]
char *begin_name = 0, *begin_offset = 0, *end_offset = 0;
// find parentheses and +address offset surrounding the mangled name:
// ./module(function+0x15c) [0x8048a6d]
} else {
// demangling failed. Output function name as a C function with
// no arguments.
dprintf(fd, " %s : %s()+%s\n",
} else {
// demangling failed. Output function name as a C function with
// no arguments.
dprintf(fd, " %s : %s()+%s\n",