ELF Header:
  Magic:   7f 45 4c 46 02 01 01 00 00 00 00 00 00 00 00 00 
  Class:                             ELF64
  Data:                              2's complement, little endian
  Version:                           1 (current)
  OS/ABI:                            UNIX - System V
  ABI Version:                       0
  Type:                              EXEC (Executable file)
  Machine:                           Advanced Micro Devices X86-64
  Version:                           0x1
  Entry point address:               0x400420
  Start of program headers:          64 (bytes into file)
  Start of section headers:          11008 (bytes into file)
  Flags:                             0x0
  Size of this header:               64 (bytes)
  Size of program headers:           56 (bytes)
  Number of program headers:         13
  Size of section headers:           64 (bytes)
  Number of section headers:         32
  Section header string table index: 31

Section Headers:
  [Nr] Name              Type             Address           Offset
       Size              EntSize          Flags  Link  Info  Align
  [ 0]                   NULL             0000000000000000  00000000
       0000000000000000  0000000000000000           0     0     0
  [ 1] .note.gnu.bu[...] NOTE             0000000000400318  00000318
       0000000000000024  0000000000000000   A       0     0     4
  [ 2] .init             PROGBITS         000000000040033c  0000033c
       000000000000001b  0000000000000000  AX       0     0     4
  [ 3] .plt              PROGBITS         0000000000400360  00000360
       0000000000000050  0000000000000010  AX       0     0     16
  [ 4] .text             PROGBITS         00000000004003b0  000003b0
       0000000000000312  0000000000000000  AX       0     0     16
  [ 5] .fini             PROGBITS         00000000004006c4  000006c4
       000000000000000d  0000000000000000  AX       0     0     4
  [ 6] .interp           PROGBITS         0000000000401000  00001000
       000000000000001c  0000000000000000   A       0     0     1
  [ 7] .gnu.hash         GNU_HASH         0000000000401020  00001020
       000000000000001c  0000000000000000   A       8     0     8
  [ 8] .dynsym           DYNSYM           0000000000401040  00001040
       00000000000000a8  0000000000000018   A       9     1     8
  [ 9] .dynstr           STRTAB           00000000004010e8  000010e8
       0000000000000061  0000000000000000   A       0     0     1
  [10] .gnu.version      VERSYM           000000000040114a  0000114a
       000000000000000e  0000000000000002   A       8     0     2
  [11] .gnu.version_r    VERNEED          0000000000401158  00001158
       0000000000000030  0000000000000000   A       9     1     8
  [12] .rela.dyn         RELA             0000000000401188  00001188
       0000000000000030  0000000000000018   A       8     0     8
  [13] .rela.plt         RELA             00000000004011b8  000011b8
       0000000000000060  0000000000000018  AI       8    23     8
  [14] .rodata           PROGBITS         0000000000401218  00001218
       0000000000000046  0000000000000000   A       0     0     8
  [15] .eh_frame_hdr     PROGBITS         0000000000401260  00001260
       000000000000006c  0000000000000000   A       0     0     4
  [16] .eh_frame         PROGBITS         00000000004012d0  000012d0
       0000000000000188  0000000000000000   A       0     0     8
  [17] .note.gnu.pr[...] NOTE             0000000000401458  00001458
       0000000000000040  0000000000000000   A       0     0     8
  [18] .note.ABI-tag     NOTE             0000000000401498  00001498
       0000000000000020  0000000000000000   A       0     0     4
  [19] .init_array       INIT_ARRAY       0000000000402df8  00001df8
       0000000000000008  0000000000000008  WA       0     0     8
  [20] .fini_array       FINI_ARRAY       0000000000402e00  00001e00
       0000000000000008  0000000000000008  WA       0     0     8
  [21] .dynamic          DYNAMIC          0000000000402e08  00001e08
       00000000000001d0  0000000000000010  WA       9     0     8
  [22] .got              PROGBITS         0000000000402fd8  00001fd8
       0000000000000010  0000000000000008  WA       0     0     8
  [23] .got.plt          PROGBITS         0000000000402fe8  00001fe8
       0000000000000038  0000000000000008  WA       0     0     8
  [24] .data             PROGBITS         0000000000403020  00002020
       0000000000000004  0000000000000000  WA       0     0     1
  [25] .bss              NOBITS           0000000000403024  00002024
       0000000000000004  0000000000000000  WA       0     0     1
  [26] .comment          PROGBITS         0000000000000000  00002024
       000000000000002e  0000000000000001  MS       0     0     1
  [27] .annobin.notes    PROGBITS         0000000000000000  00002052
       000000000000014f  0000000000000001  MS       0     0     1
  [28] .gnu.build.a[...] NOTE             0000000000405028  000021a4
       0000000000000144  0000000000000000           0     0     4
  [29] .symtab           SYMTAB           0000000000000000  000022e8
       0000000000000480  0000000000000018          30    21     8
  [30] .strtab           STRTAB           0000000000000000  00002768
       000000000000025c  0000000000000000           0     0     1
  [31] .shstrtab         STRTAB           0000000000000000  000029c4
       000000000000013b  0000000000000000           0     0     1
Key to Flags:
  W (write), A (alloc), X (execute), M (merge), S (strings), I (info),
  L (link order), O (extra OS processing required), G (group), T (TLS),
  C (compressed), x (unknown), o (OS specific), E (exclude),
  D (mbind), l (large), p (processor specific)

There are no section groups in this file.

Program Headers:
  Type           Offset             VirtAddr           PhysAddr
                 FileSiz            MemSiz              Flags  Align
  PHDR           0x0000000000000040 0x0000000000400040 0x0000000000400040
                 0x00000000000002d8 0x00000000000002d8  R      0x8
  INTERP         0x0000000000001000 0x0000000000401000 0x0000000000401000
                 0x000000000000001c 0x000000000000001c  R      0x1
      [Requesting program interpreter: /lib64/ld-linux-x86-64.so.2]
  LOAD           0x0000000000000000 0x0000000000400000 0x0000000000400000
                 0x00000000000006d1 0x00000000000006d1  R E    0x1000
  LOAD           0x0000000000001000 0x0000000000401000 0x0000000000401000
                 0x00000000000004b8 0x00000000000004b8  R      0x1000
  LOAD           0x0000000000001df8 0x0000000000402df8 0x0000000000402df8
                 0x000000000000022c 0x0000000000000230  RW     0x1000
  DYNAMIC        0x0000000000001e08 0x0000000000402e08 0x0000000000402e08
                 0x00000000000001d0 0x00000000000001d0  RW     0x8
  NOTE           0x0000000000000318 0x0000000000400318 0x0000000000400318
                 0x0000000000000024 0x0000000000000024  R      0x4
  NOTE           0x0000000000001458 0x0000000000401458 0x0000000000401458
                 0x0000000000000040 0x0000000000000040  R      0x8
  NOTE           0x0000000000001498 0x0000000000401498 0x0000000000401498
                 0x0000000000000020 0x0000000000000020  R      0x4
  GNU_PROPERTY   0x0000000000001458 0x0000000000401458 0x0000000000401458
                 0x0000000000000040 0x0000000000000040  R      0x8
  GNU_EH_FRAME   0x0000000000001260 0x0000000000401260 0x0000000000401260
                 0x000000000000006c 0x000000000000006c  R      0x4
  GNU_STACK      0x0000000000000000 0x0000000000000000 0x0000000000000000
                 0x0000000000000000 0x0000000000000000  RW     0x10
  GNU_RELRO      0x0000000000001df8 0x0000000000402df8 0x0000000000402df8
                 0x0000000000000208 0x0000000000000208  R      0x1

 Section to Segment mapping:
  Segment Sections...
   00     
   01     .interp 
   02     .note.gnu.build-id .init .plt .text .fini 
   03     .interp .gnu.hash .dynsym .dynstr .gnu.version .gnu.version_r .rela.dyn .rela.plt .rodata .eh_frame_hdr .eh_frame .note.gnu.property .note.ABI-tag 
   04     .init_array .fini_array .dynamic .got .got.plt .data .bss 
   05     .dynamic 
   06     .note.gnu.build-id 
   07     .note.gnu.property 
   08     .note.ABI-tag 
   09     .note.gnu.property 
   10     .eh_frame_hdr 
   11     
   12     .init_array .fini_array .dynamic .got 

Dynamic section at offset 0x1e08 contains 24 entries:
  Tag        Type                         Name/Value
 0x0000000000000001 (NEEDED)             Shared library: [libc.so.6]
 0x000000000000000c (INIT)               0x40033c
 0x000000000000000d (FINI)               0x4006c4
 0x0000000000000019 (INIT_ARRAY)         0x402df8
 0x000000000000001b (INIT_ARRAYSZ)       8 (bytes)
 0x000000000000001a (FINI_ARRAY)         0x402e00
 0x000000000000001c (FINI_ARRAYSZ)       8 (bytes)
 0x000000006ffffef5 (GNU_HASH)           0x401020
 0x0000000000000005 (STRTAB)             0x4010e8
 0x0000000000000006 (SYMTAB)             0x401040
 0x000000000000000a (STRSZ)              97 (bytes)
 0x000000000000000b (SYMENT)             24 (bytes)
 0x0000000000000015 (DEBUG)              0x0
 0x0000000000000003 (PLTGOT)             0x402fe8
 0x0000000000000002 (PLTRELSZ)           96 (bytes)
 0x0000000000000014 (PLTREL)             RELA
 0x0000000000000017 (JMPREL)             0x4011b8
 0x0000000000000007 (RELA)               0x401188
 0x0000000000000008 (RELASZ)             48 (bytes)
 0x0000000000000009 (RELAENT)            24 (bytes)
 0x000000006ffffffe (VERNEED)            0x401158
 0x000000006fffffff (VERNEEDNUM)         1
 0x000000006ffffff0 (VERSYM)             0x40114a
 0x0000000000000000 (NULL)               0x0

Relocation section '.rela.dyn' at offset 0x1188 contains 2 entries:
  Offset          Info           Type           Sym. Value    Sym. Name + Addend
000000402fd8  000100000006 R_X86_64_GLOB_DAT 0000000000000000 __libc_start_main@GLIBC_2.34 + 0
000000402fe0  000400000006 R_X86_64_GLOB_DAT 0000000000000000 __gmon_start__ + 0

Relocation section '.rela.plt' at offset 0x11b8 contains 4 entries:
  Offset          Info           Type           Sym. Value    Sym. Name + Addend
000000403000  000200000007 R_X86_64_JUMP_SLO 0000000000000000 strncpy@GLIBC_2.2.5 + 0
000000403008  000300000007 R_X86_64_JUMP_SLO 0000000000000000 printf@GLIBC_2.2.5 + 0
000000403010  000500000007 R_X86_64_JUMP_SLO 0000000000000000 malloc@GLIBC_2.2.5 + 0
000000403018  000600000007 R_X86_64_JUMP_SLO 0000000000000000 realloc@GLIBC_2.2.5 + 0
No processor specific unwind information to decode

Symbol table '.dynsym' contains 7 entries:
   Num:    Value          Size Type    Bind   Vis      Ndx Name
     0: 0000000000000000     0 NOTYPE  LOCAL  DEFAULT  UND 
     1: 0000000000000000     0 FUNC    GLOBAL DEFAULT  UND _[...]@GLIBC_2.34 (2)
     2: 0000000000000000     0 FUNC    GLOBAL DEFAULT  UND [...]@GLIBC_2.2.5 (3)
     3: 0000000000000000     0 FUNC    GLOBAL DEFAULT  UND [...]@GLIBC_2.2.5 (3)
     4: 0000000000000000     0 NOTYPE  WEAK   DEFAULT  UND __gmon_start__
     5: 0000000000000000     0 FUNC    GLOBAL DEFAULT  UND [...]@GLIBC_2.2.5 (3)
     6: 0000000000000000     0 FUNC    GLOBAL DEFAULT  UND [...]@GLIBC_2.2.5 (3)

Symbol table '.symtab' contains 48 entries:
   Num:    Value          Size Type    Bind   Vis      Ndx Name
     0: 0000000000000000     0 NOTYPE  LOCAL  DEFAULT  UND 
     1: 0000000000000000     0 FILE    LOCAL  DEFAULT  ABS crt1.o
     2: 0000000000401498    32 OBJECT  LOCAL  DEFAULT   18 __abi_tag
     3: 0000000000000000     0 FILE    LOCAL  DEFAULT  ABS main.c
     4: 0000000000000000     0 FILE    LOCAL  DEFAULT  ABS crtbegin.o
     5: 0000000000400460     0 FUNC    LOCAL  DEFAULT    4 deregister_tm_clones
     6: 0000000000400490     0 FUNC    LOCAL  DEFAULT    4 register_tm_clones
     7: 00000000004004d0     0 FUNC    LOCAL  DEFAULT    4 __do_global_dtors_aux
     8: 0000000000403024     1 OBJECT  LOCAL  DEFAULT   25 completed.0
     9: 0000000000402e00     0 OBJECT  LOCAL  DEFAULT   20 __do_global_dtor[...]
    10: 0000000000400500     0 FUNC    LOCAL  DEFAULT    4 frame_dummy
    11: 0000000000402df8     0 OBJECT  LOCAL  DEFAULT   19 __frame_dummy_in[...]
    12: 0000000000000000     0 FILE    LOCAL  DEFAULT  ABS teacher.c
    13: 0000000000000000     0 FILE    LOCAL  DEFAULT  ABS student.c
    14: 0000000000000000     0 FILE    LOCAL  DEFAULT  ABS class.c
    15: 0000000000000000     0 FILE    LOCAL  DEFAULT  ABS crtend.o
    16: 0000000000401454     0 OBJECT  LOCAL  DEFAULT   16 __FRAME_END__
    17: 0000000000000000     0 FILE    LOCAL  DEFAULT  ABS 
    18: 0000000000402e08     0 OBJECT  LOCAL  DEFAULT   21 _DYNAMIC
    19: 0000000000401260     0 NOTYPE  LOCAL  DEFAULT   15 __GNU_EH_FRAME_HDR
    20: 0000000000402fe8     0 OBJECT  LOCAL  DEFAULT   23 _GLOBAL_OFFSET_TABLE_
    21: 0000000000000000     0 FUNC    GLOBAL DEFAULT  UND __libc_start_mai[...]
    22: 0000000000000000     0 FUNC    GLOBAL DEFAULT  UND strncpy@GLIBC_2.2.5
    23: 0000000000403020     0 NOTYPE  WEAK   DEFAULT   24 data_start
    24: 0000000000400510    74 FUNC    GLOBAL DEFAULT    4 new_teacher
    25: 0000000000403024     0 NOTYPE  GLOBAL DEFAULT   24 _edata
    26: 00000000004006c4     0 FUNC    GLOBAL HIDDEN     5 _fini
    27: 0000000000000000     0 FUNC    GLOBAL DEFAULT  UND printf@GLIBC_2.2.5
    28: 00000000004006b0    18 FUNC    GLOBAL DEFAULT    4 print
    29: 0000000000403020     0 NOTYPE  GLOBAL DEFAULT   24 __data_start
    30: 0000000000000000     0 NOTYPE  WEAK   DEFAULT  UND __gmon_start__
    31: 0000000000401220     0 OBJECT  GLOBAL HIDDEN    14 __dso_handle
    32: 0000000000401218     4 OBJECT  GLOBAL DEFAULT   14 _IO_stdin_used
    33: 0000000000000000     0 FUNC    GLOBAL DEFAULT  UND malloc@GLIBC_2.2.5
    34: 0000000000403028     0 NOTYPE  GLOBAL DEFAULT   25 _end
    35: 0000000000400450     5 FUNC    GLOBAL HIDDEN     4 _dl_relocate_sta[...]
    36: 0000000000400420    38 FUNC    GLOBAL DEFAULT    4 _start
    37: 0000000000400570    65 FUNC    GLOBAL DEFAULT    4 new_student
    38: 0000000000000000     0 FUNC    GLOBAL DEFAULT  UND realloc@GLIBC_2.2.5
    39: 0000000000403024     0 NOTYPE  GLOBAL DEFAULT   25 __bss_start
    40: 00000000004003b0   105 FUNC    GLOBAL DEFAULT    4 main
    41: 0000000000400560     5 FUNC    GLOBAL DEFAULT    4 add_salary
    42: 00000000004005e0    79 FUNC    GLOBAL DEFAULT    4 new_class
    43: 00000000004005c0    23 FUNC    GLOBAL DEFAULT    4 change_name
    44: 0000000000403028     0 OBJECT  GLOBAL HIDDEN    24 __TMC_END__
    45: 000000000040033c     0 FUNC    GLOBAL HIDDEN     2 _init
    46: 0000000000400640    97 FUNC    GLOBAL DEFAULT    4 add_student
    47: 0000000000400630     5 FUNC    GLOBAL DEFAULT    4 change_teacher

Version symbols section '.gnu.version' contains 7 entries:
 Addr: 0x000000000040114a  Offset: 0x0000114a  Link: 8 (.dynsym)
  000:   0 (*local*)       2 (GLIBC_2.34)    3 (GLIBC_2.2.5)   3 (GLIBC_2.2.5)
  004:   1 (*global*)      3 (GLIBC_2.2.5)   3 (GLIBC_2.2.5)

Version needs section '.gnu.version_r' contains 1 entry:
 Addr: 0x0000000000401158  Offset: 0x00001158  Link: 9 (.dynstr)
  000000: Version: 1  File: libc.so.6  Cnt: 2
  0x0010:   Name: GLIBC_2.2.5  Flags: none  Version: 3
  0x0020:   Name: GLIBC_2.34  Flags: none  Version: 2

Displaying notes found in: .note.gnu.build-id
  Owner                Data size 	Description
  GNU                  0x00000014	NT_GNU_BUILD_ID (unique build ID bitstring)
    Build ID: 7f36b222bd76ab5c197c103da174ac7a2d7bbdbd

Displaying notes found in: .note.gnu.property
  Owner                Data size 	Description
  GNU                  0x00000030	NT_GNU_PROPERTY_TYPE_0
      Properties: x86 ISA needed: x86-64-baseline
	x86 feature used: x86, XMM
	x86 ISA used: x86-64-baseline

Displaying notes found in: .note.ABI-tag
  Owner                Data size 	Description
  GNU                  0x00000010	NT_GNU_ABI_TAG (ABI version tag)
    OS: Linux, ABI: 3.2.0

Displaying notes found in: .gnu.build.attributes
  Owner                Data size 	Description
  GA$<version>3a1      0x00000010	OPEN
    Applies to region from 0x400420 to 0x400446
  GA$<version>3a1      0x00000010	OPEN
    Applies to region from 0x400455 to 0x400455
  GA$<version>3a1      0x00000010	OPEN
    Applies to region from 0x40033c to 0x400352
  GA$<version>3a1      0x00000010	OPEN
    Applies to region from 0x4006c4 to 0x4006cc
  GA$<version>3a1      0x00000010	OPEN
    Applies to region from 0x400460 to 0x400506
  GA$<version>3a1      0x00000010	OPEN
    Applies to region from 0x4006c2 to 0x4006c2
  GA$<version>3a1      0x00000010	OPEN
    Applies to region from 0x4006c2 to 0x4006c2
  GA$<version>3a1      0x00000010	OPEN
    Applies to region from 0x400352 to 0x400357
  GA$<version>3a1      0x00000010	OPEN
    Applies to region from 0x4006cc to 0x4006d1
