python
from elftools.elf.elffile import ELFFile
from elftools.dwarf.enum_types import DW_TAG
with open('binary.elf', 'rb') as file:
elf = ELFFile(file)
dwarf_info = elf.get_dwarf_info()
top_level_dies = dwarf_info.get_top_DIEs()
for die in top_level_dies:
func_name = die.attributes['DW_AT_name'].value
func_addr = die.attributes['DW_AT_low_pc'].value
var_name = die.attributes['DW_AT_name'].value
var_type = die.attributes['DW_AT_type'].value