Diff
checker
Testo
Testo
Immagini
Documenti
Excel
Cartelle
Legal
Enterprise
Applicazione per desktop
Prezzi
Accedi
Scarica Diffchecker Desktop
Confronta il testo
Trova la differenza tra due file di testo
Strumenti
Cronologia
Editor live
Comprimi invariate
Senza a capo
Layout
Diviso
Unificato
Livello di dettaglio
Intelligente
Parola
Carattere
Evidenziazione sintassi
Scegli sintassi
Ignora
Trasforma testo
Vai alla prima modifica
Modifica input
Diffchecker Desktop
Il modo più sicuro per usare Diffchecker. Ottieni l'app Diffchecker Desktop: i tuoi diff non lasciano mai il tuo computer!
Ottieni Desktop
Disassembly of direct and indirect function() call
Creato
7 anni fa
Il diff non scade mai
Eliminare
Esporta
Condividere
Spiegare
16 rimozioni
Linee
Totale
Rimosso
Caratteri
Totale
Rimosso
Per continuare a utilizzare questa funzione, aggiorna a
Diff
checker
Pro
Visualizza prezzi
182 linee
Copia tutti
21 aggiunte
Linee
Totale
Aggiunto
Caratteri
Totale
Aggiunto
Per continuare a utilizzare questa funzione, aggiorna a
Diff
checker
Pro
Visualizza prezzi
184 linee
Copia tutti
Copia
Copiato
Copia
Copiato
subroutine_
direct: file format elf64-x86-64
subroutine_
in
direct: file format elf64-x86-64
Disassembly of section .init:
Disassembly of section .init:
0000000000000528 <_init>:
0000000000000528 <_init>:
528: 48 83 ec 08 sub rsp,0x8
528: 48 83 ec 08 sub rsp,0x8
52c: 48 8b 05 b5 0a 20 00 mov rax,QWORD PTR [rip+0x200ab5] # 200fe8 <__gmon_start__>
52c: 48 8b 05 b5 0a 20 00 mov rax,QWORD PTR [rip+0x200ab5] # 200fe8 <__gmon_start__>
533: 48 85 c0 test rax,rax
533: 48 85 c0 test rax,rax
536: 74 02 je 53a <_init+0x12>
536: 74 02 je 53a <_init+0x12>
538: ff d0 call rax
538: ff d0 call rax
53a: 48 83 c4 08 add rsp,0x8
53a: 48 83 c4 08 add rsp,0x8
53e: c3 ret
53e: c3 ret
Disassembly of section .plt:
Disassembly of section .plt:
0000000000000540 <.plt>:
0000000000000540 <.plt>:
540: ff 35 72 0a 20 00 push QWORD PTR [rip+0x200a72] # 200fb8 <_GLOBAL_OFFSET_TABLE_+0x8>
540: ff 35 72 0a 20 00 push QWORD PTR [rip+0x200a72] # 200fb8 <_GLOBAL_OFFSET_TABLE_+0x8>
546: ff 25 74 0a 20 00 jmp QWORD PTR [rip+0x200a74] # 200fc0 <_GLOBAL_OFFSET_TABLE_+0x10>
546: ff 25 74 0a 20 00 jmp QWORD PTR [rip+0x200a74] # 200fc0 <_GLOBAL_OFFSET_TABLE_+0x10>
54c: 0f 1f 40 00 nop DWORD PTR [rax+0x0]
54c: 0f 1f 40 00 nop DWORD PTR [rax+0x0]
0000000000000550 <puts@plt>:
0000000000000550 <puts@plt>:
550: ff 25 72 0a 20 00 jmp QWORD PTR [rip+0x200a72] # 200fc8 <puts@GLIBC_2.2.5>
550: ff 25 72 0a 20 00 jmp QWORD PTR [rip+0x200a72] # 200fc8 <puts@GLIBC_2.2.5>
556: 68 00 00 00 00 push 0x0
556: 68 00 00 00 00 push 0x0
55b: e9 e0 ff ff ff jmp 540 <.plt>
55b: e9 e0 ff ff ff jmp 540 <.plt>
0000000000000560 <printf@plt>:
0000000000000560 <printf@plt>:
560: ff 25 6a 0a 20 00 jmp QWORD PTR [rip+0x200a6a] # 200fd0 <printf@GLIBC_2.2.5>
560: ff 25 6a 0a 20 00 jmp QWORD PTR [rip+0x200a6a] # 200fd0 <printf@GLIBC_2.2.5>
566: 68 01 00 00 00 push 0x1
566: 68 01 00 00 00 push 0x1
56b: e9 d0 ff ff ff jmp 540 <.plt>
56b: e9 d0 ff ff ff jmp 540 <.plt>
Disassembly of section .plt.got:
Disassembly of section .plt.got:
0000000000000570 <__cxa_finalize@plt>:
0000000000000570 <__cxa_finalize@plt>:
570: ff 25 82 0a 20 00 jmp QWORD PTR [rip+0x200a82] # 200ff8 <__cxa_finalize@GLIBC_2.2.5>
570: ff 25 82 0a 20 00 jmp QWORD PTR [rip+0x200a82] # 200ff8 <__cxa_finalize@GLIBC_2.2.5>
576: 66 90 xchg ax,ax
576: 66 90 xchg ax,ax
Disassembly of section .text:
Disassembly of section .text:
0000000000000580 <_start>:
0000000000000580 <_start>:
580: 31 ed xor ebp,ebp
580: 31 ed xor ebp,ebp
582: 49 89 d1 mov r9,rdx
582: 49 89 d1 mov r9,rdx
585: 5e pop rsi
585: 5e pop rsi
586: 48 89 e2 mov rdx,rsp
586: 48 89 e2 mov rdx,rsp
589: 48 83 e4 f0 and rsp,0xfffffffffffffff0
589: 48 83 e4 f0 and rsp,0xfffffffffffffff0
58d: 50 push rax
58d: 50 push rax
58e: 54 push rsp
58e: 54 push rsp
58f: 4c 8d 05 9a 01 00 00 lea r8,[rip+0x19a] # 730 <__libc_csu_fini>
58f: 4c 8d 05 9a 01 00 00 lea r8,[rip+0x19a] # 730 <__libc_csu_fini>
596: 48 8d 0d 23 01 00 00 lea rcx,[rip+0x123] # 6c0 <__libc_csu_init>
596: 48 8d 0d 23 01 00 00 lea rcx,[rip+0x123] # 6c0 <__libc_csu_init>
59d: 48 8d 3d d8 00 00 00 lea rdi,[rip+0xd8] # 67c <main>
59d: 48 8d 3d d8 00 00 00 lea rdi,[rip+0xd8] # 67c <main>
5a4: ff 15 36 0a 20 00 call QWORD PTR [rip+0x200a36] # 200fe0 <__libc_start_main@GLIBC_2.2.5>
5a4: ff 15 36 0a 20 00 call QWORD PTR [rip+0x200a36] # 200fe0 <__libc_start_main@GLIBC_2.2.5>
5aa: f4 hlt
5aa: f4 hlt
5ab: 0f 1f 44 00 00 nop DWORD PTR [rax+rax*1+0x0]
5ab: 0f 1f 44 00 00 nop DWORD PTR [rax+rax*1+0x0]
00000000000005b0 <deregister_tm_clones>:
00000000000005b0 <deregister_tm_clones>:
5b0: 48 8d 3d 59 0a 20 00 lea rdi,[rip+0x200a59] # 201010 <__TMC_END__>
5b0: 48 8d 3d 59 0a 20 00 lea rdi,[rip+0x200a59] # 201010 <__TMC_END__>
5b7: 48 8d 05 52 0a 20 00 lea rax,[rip+0x200a52] # 201010 <__TMC_END__>
5b7: 48 8d 05 52 0a 20 00 lea rax,[rip+0x200a52] # 201010 <__TMC_END__>
5be: 48 39 f8 cmp rax,rdi
5be: 48 39 f8 cmp rax,rdi
5c1: 74 15 je 5d8 <deregister_tm_clones+0x28>
5c1: 74 15 je 5d8 <deregister_tm_clones+0x28>
5c3: 48 8b 05 0e 0a 20 00 mov rax,QWORD PTR [rip+0x200a0e] # 200fd8 <_ITM_deregisterTMCloneTable>
5c3: 48 8b 05 0e 0a 20 00 mov rax,QWORD PTR [rip+0x200a0e] # 200fd8 <_ITM_deregisterTMCloneTable>
5ca: 48 85 c0 test rax,rax
5ca: 48 85 c0 test rax,rax
5cd: 74 09 je 5d8 <deregister_tm_clones+0x28>
5cd: 74 09 je 5d8 <deregister_tm_clones+0x28>
5cf: ff e0 jmp rax
5cf: ff e0 jmp rax
5d1: 0f 1f 80 00 00 00 00 nop DWORD PTR [rax+0x0]
5d1: 0f 1f 80 00 00 00 00 nop DWORD PTR [rax+0x0]
5d8: c3 ret
5d8: c3 ret
5d9: 0f 1f 80 00 00 00 00 nop DWORD PTR [rax+0x0]
5d9: 0f 1f 80 00 00 00 00 nop DWORD PTR [rax+0x0]
00000000000005e0 <register_tm_clones>:
00000000000005e0 <register_tm_clones>:
5e0: 48 8d 3d 29 0a 20 00 lea rdi,[rip+0x200a29] # 201010 <__TMC_END__>
5e0: 48 8d 3d 29 0a 20 00 lea rdi,[rip+0x200a29] # 201010 <__TMC_END__>
5e7: 48 8d 35 22 0a 20 00 lea rsi,[rip+0x200a22] # 201010 <__TMC_END__>
5e7: 48 8d 35 22 0a 20 00 lea rsi,[rip+0x200a22] # 201010 <__TMC_END__>
5ee: 48 29 fe sub rsi,rdi
5ee: 48 29 fe sub rsi,rdi
5f1: 48 89 f0 mov rax,rsi
5f1: 48 89 f0 mov rax,rsi
5f4: 48 c1 ee 3f shr rsi,0x3f
5f4: 48 c1 ee 3f shr rsi,0x3f
5f8: 48 c1 f8 03 sar rax,0x3
5f8: 48 c1 f8 03 sar rax,0x3
5fc: 48 01 c6 add rsi,rax
5fc: 48 01 c6 add rsi,rax
5ff: 48 d1 fe sar rsi,1
5ff: 48 d1 fe sar rsi,1
602: 74 14 je 618 <register_tm_clones+0x38>
602: 74 14 je 618 <register_tm_clones+0x38>
604: 48 8b 05 e5 09 20 00 mov rax,QWORD PTR [rip+0x2009e5] # 200ff0 <_ITM_registerTMCloneTable>
604: 48 8b 05 e5 09 20 00 mov rax,QWORD PTR [rip+0x2009e5] # 200ff0 <_ITM_registerTMCloneTable>
60b: 48 85 c0 test rax,rax
60b: 48 85 c0 test rax,rax
60e: 74 08 je 618 <register_tm_clones+0x38>
60e: 74 08 je 618 <register_tm_clones+0x38>
610: ff e0 jmp rax
610: ff e0 jmp rax
612: 66 0f 1f 44 00 00 nop WORD PTR [rax+rax*1+0x0]
612: 66 0f 1f 44 00 00 nop WORD PTR [rax+rax*1+0x0]
618: c3 ret
618: c3 ret
619: 0f 1f 80 00 00 00 00 nop DWORD PTR [rax+0x0]
619: 0f 1f 80 00 00 00 00 nop DWORD PTR [rax+0x0]
0000000000000620 <__do_global_dtors_aux>:
0000000000000620 <__do_global_dtors_aux>:
620: 80 3d e9 09 20 00 00 cmp BYTE PTR [rip+0x2009e9],0x0 # 201010 <__TMC_END__>
620: 80 3d e9 09 20 00 00 cmp BYTE PTR [rip+0x2009e9],0x0 # 201010 <__TMC_END__>
627: 75 2f jne 658 <__do_global_dtors_aux+0x38>
627: 75 2f jne 658 <__do_global_dtors_aux+0x38>
629: 55 push rbp
629: 55 push rbp
62a: 48 83 3d c6 09 20 00 00 cmp QWORD PTR [rip+0x2009c6],0x0 # 200ff8 <__cxa_finalize@GLIBC_2.2.5>
62a: 48 83 3d c6 09 20 00 00 cmp QWORD PTR [rip+0x2009c6],0x0 # 200ff8 <__cxa_finalize@GLIBC_2.2.5>
632: 48 89 e5 mov rbp,rsp
632: 48 89 e5 mov rbp,rsp
635: 74 0c je 643 <__do_global_dtors_aux+0x23>
635: 74 0c je 643 <__do_global_dtors_aux+0x23>
637: 48 8b 3d ca 09 20 00 mov rdi,QWORD PTR [rip+0x2009ca] # 201008 <__dso_handle>
637: 48 8b 3d ca 09 20 00 mov rdi,QWORD PTR [rip+0x2009ca] # 201008 <__dso_handle>
63e: e8 2d ff ff ff call 570 <__cxa_finalize@plt>
63e: e8 2d ff ff ff call 570 <__cxa_finalize@plt>
643: e8 68 ff ff ff call 5b0 <deregister_tm_clones>
643: e8 68 ff ff ff call 5b0 <deregister_tm_clones>
648: c6 05 c1 09 20 00 01 mov BYTE PTR [rip+0x2009c1],0x1 # 201010 <__TMC_END__>
648: c6 05 c1 09 20 00 01 mov BYTE PTR [rip+0x2009c1],0x1 # 201010 <__TMC_END__>
64f: 5d pop rbp
64f: 5d pop rbp
650: c3 ret
650: c3 ret
651: 0f 1f 80 00 00 00 00 nop DWORD PTR [rax+0x0]
651: 0f 1f 80 00 00 00 00 nop DWORD PTR [rax+0x0]
658: c3 ret
658: c3 ret
659: 0f 1f 80 00 00 00 00 nop DWORD PTR [rax+0x0]
659: 0f 1f 80 00 00 00 00 nop DWORD PTR [rax+0x0]
0000000000000660 <frame_dummy>:
0000000000000660 <frame_dummy>:
660: e9 7b ff ff ff jmp 5e0 <register_tm_clones>
660: e9 7b ff ff ff jmp 5e0 <register_tm_clones>
0000000000000665 <subroutine>:
0000000000000665 <subroutine>:
665: 55 push rbp
665: 55 push rbp
666: 48 89 e5 mov rbp,rsp
666: 48 89 e5 mov rbp,rsp
669: 48 8d 3d d4 00 00 00 lea rdi,[rip+0xd4] # 744 <_IO_stdin_used+0x4>
669: 48 8d 3d d4 00 00 00 lea rdi,[rip+0xd4] # 744 <_IO_stdin_used+0x4>
670: e8 db fe ff ff call 550 <puts@plt>
670: e8 db fe ff ff call 550 <puts@plt>
675: b8 00 00 00 00 mov eax,0x0
675: b8 00 00 00 00 mov eax,0x0
67a: 5d pop rbp
67a: 5d pop rbp
67b: c3 ret
67b: c3 ret
000000000000067c <main>:
000000000000067c <main>:
67c: 55 push rbp
67c: 55 push rbp
67d: 48 89 e5 mov rbp,rsp
67d: 48 89 e5 mov rbp,rsp
Copia
Copiato
Copia
Copiato
680: 48 83 ec
10
sub rsp,0x
1
0
680: 48 83 ec
20
sub rsp,0x
2
0
684: 89 7d
fc
mov DWORD PTR [rbp-0x
4],edi
684: 89 7d
ec
mov DWORD PTR [rbp-0x
1
4],edi
687: 48 89 75
f0
mov QWORD PTR [rbp-0x
1
0],rsi
687: 48 89 75
e0
mov QWORD PTR [rbp-0x
2
0],rsi
68b: 48 8b 45
f0
mov rax,QWORD PTR [rbp-0x
1
0]
68b: 48 8b 45
e0
mov rax,QWORD PTR [rbp-0x
2
0]
68f: 48 8b 00 mov rax,QWORD PTR [rax]
68f: 48 8b 00 mov rax,QWORD PTR [rax]
692: 48 89 c6 mov rsi,rax
692: 48 89 c6 mov rsi,rax
695: 48 8d 3d be 00 00 00 lea rdi,[rip+0xbe] # 75a <_IO_stdin_used+0x1a>
695: 48 8d 3d be 00 00 00 lea rdi,[rip+0xbe] # 75a <_IO_stdin_used+0x1a>
69c: b8 00 00 00 00 mov eax,0x0
69c: b8 00 00 00 00 mov eax,0x0
6a1: e8 ba fe ff ff call 560 <printf@plt>
6a1: e8 ba fe ff ff call 560 <printf@plt>
Copia
Copiato
Copia
Copiato
6a6:
b8 00 00 00 00 mov eax,0x0
6a6:
48 8d 05 b8
ff ff ff
lea rax,[rip+0xffffffffffffffb8]
#
665 <subroutine>
6ab: e8 b5
ff ff ff
call
665 <subroutine>
6ad: 48 89 45 f8 mov QWORD PTR [rbp-0x8],rax
6b0
: b8 00 00 00 00 mov eax,0x0
6b1: 48 8b 45 f8 mov rax,QWORD PTR [rbp-0x8]
6b
5
: c9 leave
6b5: ff d0 call rax
6b
6
: c3 ret
6b7
: b8 00 00 00 00 mov eax,0x0
6b
7
: 66
0f 1f 84 00 00 00 00 00 nop
WORD PTR [rax+rax*1+0x0]
6b
c
: c9 leave
6b
d
: c3 ret
6b
e
: 66
90
xchg ax,ax
00000000000006c0 <__libc_csu_init>:
00000000000006c0 <__libc_csu_init>:
6c0: 41 57 push r15
6c0: 41 57 push r15
6c2: 41 56 push r14
6c2: 41 56 push r14
6c4: 49 89 d7 mov r15,rdx
6c4: 49 89 d7 mov r15,rdx
6c7: 41 55 push r13
6c7: 41 55 push r13
6c9: 41 54 push r12
6c9: 41 54 push r12
6cb: 4c 8d 25 de 06 20 00 lea r12,[rip+0x2006de] # 200db0 <__frame_dummy_init_array_entry>
6cb: 4c 8d 25 de 06 20 00 lea r12,[rip+0x2006de] # 200db0 <__frame_dummy_init_array_entry>
6d2: 55 push rbp
6d2: 55 push rbp
6d3: 48 8d 2d de 06 20 00 lea rbp,[rip+0x2006de] # 200db8 <__init_array_end>
6d3: 48 8d 2d de 06 20 00 lea rbp,[rip+0x2006de] # 200db8 <__init_array_end>
6da: 53 push rbx
6da: 53 push rbx
6db: 41 89 fd mov r13d,edi
6db: 41 89 fd mov r13d,edi
6de: 49 89 f6 mov r14,rsi
6de: 49 89 f6 mov r14,rsi
6e1: 4c 29 e5 sub rbp,r12
6e1: 4c 29 e5 sub rbp,r12
6e4: 48 83 ec 08 sub rsp,0x8
6e4: 48 83 ec 08 sub rsp,0x8
6e8: 48 c1 fd 03 sar rbp,0x3
6e8: 48 c1 fd 03 sar rbp,0x3
6ec: e8 37 fe ff ff call 528 <_init>
6ec: e8 37 fe ff ff call 528 <_init>
6f1: 48 85 ed test rbp,rbp
6f1: 48 85 ed test rbp,rbp
6f4: 74 20 je 716 <__libc_csu_init+0x56>
6f4: 74 20 je 716 <__libc_csu_init+0x56>
6f6: 31 db xor ebx,ebx
6f6: 31 db xor ebx,ebx
6f8: 0f 1f 84 00 00 00 00 00 nop DWORD PTR [rax+rax*1+0x0]
6f8: 0f 1f 84 00 00 00 00 00 nop DWORD PTR [rax+rax*1+0x0]
700: 4c 89 fa mov rdx,r15
700: 4c 89 fa mov rdx,r15
703: 4c 89 f6 mov rsi,r14
703: 4c 89 f6 mov rsi,r14
706: 44 89 ef mov edi,r13d
706: 44 89 ef mov edi,r13d
709: 41 ff 14 dc call QWORD PTR [r12+rbx*8]
709: 41 ff 14 dc call QWORD PTR [r12+rbx*8]
70d: 48 83 c3 01 add rbx,0x1
70d: 48 83 c3 01 add rbx,0x1
711: 48 39 dd cmp rbp,rbx
711: 48 39 dd cmp rbp,rbx
714: 75 ea jne 700 <__libc_csu_init+0x40>
714: 75 ea jne 700 <__libc_csu_init+0x40>
716: 48 83 c4 08 add rsp,0x8
716: 48 83 c4 08 add rsp,0x8
71a: 5b pop rbx
71a: 5b pop rbx
71b: 5d pop rbp
71b: 5d pop rbp
71c: 41 5c pop r12
71c: 41 5c pop r12
71e: 41 5d pop r13
71e: 41 5d pop r13
720: 41 5e pop r14
720: 41 5e pop r14
722: 41 5f pop r15
722: 41 5f pop r15
724: c3 ret
724: c3 ret
725: 90 nop
725: 90 nop
726: 66 2e 0f 1f 84 00 00 00 00 00 nop WORD PTR cs:[rax+rax*1+0x0]
726: 66 2e 0f 1f 84 00 00 00 00 00 nop WORD PTR cs:[rax+rax*1+0x0]
0000000000000730 <__libc_csu_fini>:
0000000000000730 <__libc_csu_fini>:
730: f3 c3 repz ret
730: f3 c3 repz ret
Disassembly of section .fini:
Disassembly of section .fini:
0000000000000734 <_fini>:
0000000000000734 <_fini>:
734: 48 83 ec 08 sub rsp,0x8
734: 48 83 ec 08 sub rsp,0x8
738: 48 83 c4 08 add rsp,0x8
738: 48 83 c4 08 add rsp,0x8
73c: c3 ret
73c: c3 ret
Diff salvati
Testo originale
Apri file
subroutine_direct: file format elf64-x86-64 Disassembly of section .init: 0000000000000528 <_init>: 528: 48 83 ec 08 sub rsp,0x8 52c: 48 8b 05 b5 0a 20 00 mov rax,QWORD PTR [rip+0x200ab5] # 200fe8 <__gmon_start__> 533: 48 85 c0 test rax,rax 536: 74 02 je 53a <_init+0x12> 538: ff d0 call rax 53a: 48 83 c4 08 add rsp,0x8 53e: c3 ret Disassembly of section .plt: 0000000000000540 <.plt>: 540: ff 35 72 0a 20 00 push QWORD PTR [rip+0x200a72] # 200fb8 <_GLOBAL_OFFSET_TABLE_+0x8> 546: ff 25 74 0a 20 00 jmp QWORD PTR [rip+0x200a74] # 200fc0 <_GLOBAL_OFFSET_TABLE_+0x10> 54c: 0f 1f 40 00 nop DWORD PTR [rax+0x0] 0000000000000550 <puts@plt>: 550: ff 25 72 0a 20 00 jmp QWORD PTR [rip+0x200a72] # 200fc8 <puts@GLIBC_2.2.5> 556: 68 00 00 00 00 push 0x0 55b: e9 e0 ff ff ff jmp 540 <.plt> 0000000000000560 <printf@plt>: 560: ff 25 6a 0a 20 00 jmp QWORD PTR [rip+0x200a6a] # 200fd0 <printf@GLIBC_2.2.5> 566: 68 01 00 00 00 push 0x1 56b: e9 d0 ff ff ff jmp 540 <.plt> Disassembly of section .plt.got: 0000000000000570 <__cxa_finalize@plt>: 570: ff 25 82 0a 20 00 jmp QWORD PTR [rip+0x200a82] # 200ff8 <__cxa_finalize@GLIBC_2.2.5> 576: 66 90 xchg ax,ax Disassembly of section .text: 0000000000000580 <_start>: 580: 31 ed xor ebp,ebp 582: 49 89 d1 mov r9,rdx 585: 5e pop rsi 586: 48 89 e2 mov rdx,rsp 589: 48 83 e4 f0 and rsp,0xfffffffffffffff0 58d: 50 push rax 58e: 54 push rsp 58f: 4c 8d 05 9a 01 00 00 lea r8,[rip+0x19a] # 730 <__libc_csu_fini> 596: 48 8d 0d 23 01 00 00 lea rcx,[rip+0x123] # 6c0 <__libc_csu_init> 59d: 48 8d 3d d8 00 00 00 lea rdi,[rip+0xd8] # 67c <main> 5a4: ff 15 36 0a 20 00 call QWORD PTR [rip+0x200a36] # 200fe0 <__libc_start_main@GLIBC_2.2.5> 5aa: f4 hlt 5ab: 0f 1f 44 00 00 nop DWORD PTR [rax+rax*1+0x0] 00000000000005b0 <deregister_tm_clones>: 5b0: 48 8d 3d 59 0a 20 00 lea rdi,[rip+0x200a59] # 201010 <__TMC_END__> 5b7: 48 8d 05 52 0a 20 00 lea rax,[rip+0x200a52] # 201010 <__TMC_END__> 5be: 48 39 f8 cmp rax,rdi 5c1: 74 15 je 5d8 <deregister_tm_clones+0x28> 5c3: 48 8b 05 0e 0a 20 00 mov rax,QWORD PTR [rip+0x200a0e] # 200fd8 <_ITM_deregisterTMCloneTable> 5ca: 48 85 c0 test rax,rax 5cd: 74 09 je 5d8 <deregister_tm_clones+0x28> 5cf: ff e0 jmp rax 5d1: 0f 1f 80 00 00 00 00 nop DWORD PTR [rax+0x0] 5d8: c3 ret 5d9: 0f 1f 80 00 00 00 00 nop DWORD PTR [rax+0x0] 00000000000005e0 <register_tm_clones>: 5e0: 48 8d 3d 29 0a 20 00 lea rdi,[rip+0x200a29] # 201010 <__TMC_END__> 5e7: 48 8d 35 22 0a 20 00 lea rsi,[rip+0x200a22] # 201010 <__TMC_END__> 5ee: 48 29 fe sub rsi,rdi 5f1: 48 89 f0 mov rax,rsi 5f4: 48 c1 ee 3f shr rsi,0x3f 5f8: 48 c1 f8 03 sar rax,0x3 5fc: 48 01 c6 add rsi,rax 5ff: 48 d1 fe sar rsi,1 602: 74 14 je 618 <register_tm_clones+0x38> 604: 48 8b 05 e5 09 20 00 mov rax,QWORD PTR [rip+0x2009e5] # 200ff0 <_ITM_registerTMCloneTable> 60b: 48 85 c0 test rax,rax 60e: 74 08 je 618 <register_tm_clones+0x38> 610: ff e0 jmp rax 612: 66 0f 1f 44 00 00 nop WORD PTR [rax+rax*1+0x0] 618: c3 ret 619: 0f 1f 80 00 00 00 00 nop DWORD PTR [rax+0x0] 0000000000000620 <__do_global_dtors_aux>: 620: 80 3d e9 09 20 00 00 cmp BYTE PTR [rip+0x2009e9],0x0 # 201010 <__TMC_END__> 627: 75 2f jne 658 <__do_global_dtors_aux+0x38> 629: 55 push rbp 62a: 48 83 3d c6 09 20 00 00 cmp QWORD PTR [rip+0x2009c6],0x0 # 200ff8 <__cxa_finalize@GLIBC_2.2.5> 632: 48 89 e5 mov rbp,rsp 635: 74 0c je 643 <__do_global_dtors_aux+0x23> 637: 48 8b 3d ca 09 20 00 mov rdi,QWORD PTR [rip+0x2009ca] # 201008 <__dso_handle> 63e: e8 2d ff ff ff call 570 <__cxa_finalize@plt> 643: e8 68 ff ff ff call 5b0 <deregister_tm_clones> 648: c6 05 c1 09 20 00 01 mov BYTE PTR [rip+0x2009c1],0x1 # 201010 <__TMC_END__> 64f: 5d pop rbp 650: c3 ret 651: 0f 1f 80 00 00 00 00 nop DWORD PTR [rax+0x0] 658: c3 ret 659: 0f 1f 80 00 00 00 00 nop DWORD PTR [rax+0x0] 0000000000000660 <frame_dummy>: 660: e9 7b ff ff ff jmp 5e0 <register_tm_clones> 0000000000000665 <subroutine>: 665: 55 push rbp 666: 48 89 e5 mov rbp,rsp 669: 48 8d 3d d4 00 00 00 lea rdi,[rip+0xd4] # 744 <_IO_stdin_used+0x4> 670: e8 db fe ff ff call 550 <puts@plt> 675: b8 00 00 00 00 mov eax,0x0 67a: 5d pop rbp 67b: c3 ret 000000000000067c <main>: 67c: 55 push rbp 67d: 48 89 e5 mov rbp,rsp 680: 48 83 ec 10 sub rsp,0x10 684: 89 7d fc mov DWORD PTR [rbp-0x4],edi 687: 48 89 75 f0 mov QWORD PTR [rbp-0x10],rsi 68b: 48 8b 45 f0 mov rax,QWORD PTR [rbp-0x10] 68f: 48 8b 00 mov rax,QWORD PTR [rax] 692: 48 89 c6 mov rsi,rax 695: 48 8d 3d be 00 00 00 lea rdi,[rip+0xbe] # 75a <_IO_stdin_used+0x1a> 69c: b8 00 00 00 00 mov eax,0x0 6a1: e8 ba fe ff ff call 560 <printf@plt> 6a6: b8 00 00 00 00 mov eax,0x0 6ab: e8 b5 ff ff ff call 665 <subroutine> 6b0: b8 00 00 00 00 mov eax,0x0 6b5: c9 leave 6b6: c3 ret 6b7: 66 0f 1f 84 00 00 00 00 00 nop WORD PTR [rax+rax*1+0x0] 00000000000006c0 <__libc_csu_init>: 6c0: 41 57 push r15 6c2: 41 56 push r14 6c4: 49 89 d7 mov r15,rdx 6c7: 41 55 push r13 6c9: 41 54 push r12 6cb: 4c 8d 25 de 06 20 00 lea r12,[rip+0x2006de] # 200db0 <__frame_dummy_init_array_entry> 6d2: 55 push rbp 6d3: 48 8d 2d de 06 20 00 lea rbp,[rip+0x2006de] # 200db8 <__init_array_end> 6da: 53 push rbx 6db: 41 89 fd mov r13d,edi 6de: 49 89 f6 mov r14,rsi 6e1: 4c 29 e5 sub rbp,r12 6e4: 48 83 ec 08 sub rsp,0x8 6e8: 48 c1 fd 03 sar rbp,0x3 6ec: e8 37 fe ff ff call 528 <_init> 6f1: 48 85 ed test rbp,rbp 6f4: 74 20 je 716 <__libc_csu_init+0x56> 6f6: 31 db xor ebx,ebx 6f8: 0f 1f 84 00 00 00 00 00 nop DWORD PTR [rax+rax*1+0x0] 700: 4c 89 fa mov rdx,r15 703: 4c 89 f6 mov rsi,r14 706: 44 89 ef mov edi,r13d 709: 41 ff 14 dc call QWORD PTR [r12+rbx*8] 70d: 48 83 c3 01 add rbx,0x1 711: 48 39 dd cmp rbp,rbx 714: 75 ea jne 700 <__libc_csu_init+0x40> 716: 48 83 c4 08 add rsp,0x8 71a: 5b pop rbx 71b: 5d pop rbp 71c: 41 5c pop r12 71e: 41 5d pop r13 720: 41 5e pop r14 722: 41 5f pop r15 724: c3 ret 725: 90 nop 726: 66 2e 0f 1f 84 00 00 00 00 00 nop WORD PTR cs:[rax+rax*1+0x0] 0000000000000730 <__libc_csu_fini>: 730: f3 c3 repz ret Disassembly of section .fini: 0000000000000734 <_fini>: 734: 48 83 ec 08 sub rsp,0x8 738: 48 83 c4 08 add rsp,0x8 73c: c3 ret
Testo modificato
Apri file
subroutine_indirect: file format elf64-x86-64 Disassembly of section .init: 0000000000000528 <_init>: 528: 48 83 ec 08 sub rsp,0x8 52c: 48 8b 05 b5 0a 20 00 mov rax,QWORD PTR [rip+0x200ab5] # 200fe8 <__gmon_start__> 533: 48 85 c0 test rax,rax 536: 74 02 je 53a <_init+0x12> 538: ff d0 call rax 53a: 48 83 c4 08 add rsp,0x8 53e: c3 ret Disassembly of section .plt: 0000000000000540 <.plt>: 540: ff 35 72 0a 20 00 push QWORD PTR [rip+0x200a72] # 200fb8 <_GLOBAL_OFFSET_TABLE_+0x8> 546: ff 25 74 0a 20 00 jmp QWORD PTR [rip+0x200a74] # 200fc0 <_GLOBAL_OFFSET_TABLE_+0x10> 54c: 0f 1f 40 00 nop DWORD PTR [rax+0x0] 0000000000000550 <puts@plt>: 550: ff 25 72 0a 20 00 jmp QWORD PTR [rip+0x200a72] # 200fc8 <puts@GLIBC_2.2.5> 556: 68 00 00 00 00 push 0x0 55b: e9 e0 ff ff ff jmp 540 <.plt> 0000000000000560 <printf@plt>: 560: ff 25 6a 0a 20 00 jmp QWORD PTR [rip+0x200a6a] # 200fd0 <printf@GLIBC_2.2.5> 566: 68 01 00 00 00 push 0x1 56b: e9 d0 ff ff ff jmp 540 <.plt> Disassembly of section .plt.got: 0000000000000570 <__cxa_finalize@plt>: 570: ff 25 82 0a 20 00 jmp QWORD PTR [rip+0x200a82] # 200ff8 <__cxa_finalize@GLIBC_2.2.5> 576: 66 90 xchg ax,ax Disassembly of section .text: 0000000000000580 <_start>: 580: 31 ed xor ebp,ebp 582: 49 89 d1 mov r9,rdx 585: 5e pop rsi 586: 48 89 e2 mov rdx,rsp 589: 48 83 e4 f0 and rsp,0xfffffffffffffff0 58d: 50 push rax 58e: 54 push rsp 58f: 4c 8d 05 9a 01 00 00 lea r8,[rip+0x19a] # 730 <__libc_csu_fini> 596: 48 8d 0d 23 01 00 00 lea rcx,[rip+0x123] # 6c0 <__libc_csu_init> 59d: 48 8d 3d d8 00 00 00 lea rdi,[rip+0xd8] # 67c <main> 5a4: ff 15 36 0a 20 00 call QWORD PTR [rip+0x200a36] # 200fe0 <__libc_start_main@GLIBC_2.2.5> 5aa: f4 hlt 5ab: 0f 1f 44 00 00 nop DWORD PTR [rax+rax*1+0x0] 00000000000005b0 <deregister_tm_clones>: 5b0: 48 8d 3d 59 0a 20 00 lea rdi,[rip+0x200a59] # 201010 <__TMC_END__> 5b7: 48 8d 05 52 0a 20 00 lea rax,[rip+0x200a52] # 201010 <__TMC_END__> 5be: 48 39 f8 cmp rax,rdi 5c1: 74 15 je 5d8 <deregister_tm_clones+0x28> 5c3: 48 8b 05 0e 0a 20 00 mov rax,QWORD PTR [rip+0x200a0e] # 200fd8 <_ITM_deregisterTMCloneTable> 5ca: 48 85 c0 test rax,rax 5cd: 74 09 je 5d8 <deregister_tm_clones+0x28> 5cf: ff e0 jmp rax 5d1: 0f 1f 80 00 00 00 00 nop DWORD PTR [rax+0x0] 5d8: c3 ret 5d9: 0f 1f 80 00 00 00 00 nop DWORD PTR [rax+0x0] 00000000000005e0 <register_tm_clones>: 5e0: 48 8d 3d 29 0a 20 00 lea rdi,[rip+0x200a29] # 201010 <__TMC_END__> 5e7: 48 8d 35 22 0a 20 00 lea rsi,[rip+0x200a22] # 201010 <__TMC_END__> 5ee: 48 29 fe sub rsi,rdi 5f1: 48 89 f0 mov rax,rsi 5f4: 48 c1 ee 3f shr rsi,0x3f 5f8: 48 c1 f8 03 sar rax,0x3 5fc: 48 01 c6 add rsi,rax 5ff: 48 d1 fe sar rsi,1 602: 74 14 je 618 <register_tm_clones+0x38> 604: 48 8b 05 e5 09 20 00 mov rax,QWORD PTR [rip+0x2009e5] # 200ff0 <_ITM_registerTMCloneTable> 60b: 48 85 c0 test rax,rax 60e: 74 08 je 618 <register_tm_clones+0x38> 610: ff e0 jmp rax 612: 66 0f 1f 44 00 00 nop WORD PTR [rax+rax*1+0x0] 618: c3 ret 619: 0f 1f 80 00 00 00 00 nop DWORD PTR [rax+0x0] 0000000000000620 <__do_global_dtors_aux>: 620: 80 3d e9 09 20 00 00 cmp BYTE PTR [rip+0x2009e9],0x0 # 201010 <__TMC_END__> 627: 75 2f jne 658 <__do_global_dtors_aux+0x38> 629: 55 push rbp 62a: 48 83 3d c6 09 20 00 00 cmp QWORD PTR [rip+0x2009c6],0x0 # 200ff8 <__cxa_finalize@GLIBC_2.2.5> 632: 48 89 e5 mov rbp,rsp 635: 74 0c je 643 <__do_global_dtors_aux+0x23> 637: 48 8b 3d ca 09 20 00 mov rdi,QWORD PTR [rip+0x2009ca] # 201008 <__dso_handle> 63e: e8 2d ff ff ff call 570 <__cxa_finalize@plt> 643: e8 68 ff ff ff call 5b0 <deregister_tm_clones> 648: c6 05 c1 09 20 00 01 mov BYTE PTR [rip+0x2009c1],0x1 # 201010 <__TMC_END__> 64f: 5d pop rbp 650: c3 ret 651: 0f 1f 80 00 00 00 00 nop DWORD PTR [rax+0x0] 658: c3 ret 659: 0f 1f 80 00 00 00 00 nop DWORD PTR [rax+0x0] 0000000000000660 <frame_dummy>: 660: e9 7b ff ff ff jmp 5e0 <register_tm_clones> 0000000000000665 <subroutine>: 665: 55 push rbp 666: 48 89 e5 mov rbp,rsp 669: 48 8d 3d d4 00 00 00 lea rdi,[rip+0xd4] # 744 <_IO_stdin_used+0x4> 670: e8 db fe ff ff call 550 <puts@plt> 675: b8 00 00 00 00 mov eax,0x0 67a: 5d pop rbp 67b: c3 ret 000000000000067c <main>: 67c: 55 push rbp 67d: 48 89 e5 mov rbp,rsp 680: 48 83 ec 20 sub rsp,0x20 684: 89 7d ec mov DWORD PTR [rbp-0x14],edi 687: 48 89 75 e0 mov QWORD PTR [rbp-0x20],rsi 68b: 48 8b 45 e0 mov rax,QWORD PTR [rbp-0x20] 68f: 48 8b 00 mov rax,QWORD PTR [rax] 692: 48 89 c6 mov rsi,rax 695: 48 8d 3d be 00 00 00 lea rdi,[rip+0xbe] # 75a <_IO_stdin_used+0x1a> 69c: b8 00 00 00 00 mov eax,0x0 6a1: e8 ba fe ff ff call 560 <printf@plt> 6a6: 48 8d 05 b8 ff ff ff lea rax,[rip+0xffffffffffffffb8] # 665 <subroutine> 6ad: 48 89 45 f8 mov QWORD PTR [rbp-0x8],rax 6b1: 48 8b 45 f8 mov rax,QWORD PTR [rbp-0x8] 6b5: ff d0 call rax 6b7: b8 00 00 00 00 mov eax,0x0 6bc: c9 leave 6bd: c3 ret 6be: 66 90 xchg ax,ax 00000000000006c0 <__libc_csu_init>: 6c0: 41 57 push r15 6c2: 41 56 push r14 6c4: 49 89 d7 mov r15,rdx 6c7: 41 55 push r13 6c9: 41 54 push r12 6cb: 4c 8d 25 de 06 20 00 lea r12,[rip+0x2006de] # 200db0 <__frame_dummy_init_array_entry> 6d2: 55 push rbp 6d3: 48 8d 2d de 06 20 00 lea rbp,[rip+0x2006de] # 200db8 <__init_array_end> 6da: 53 push rbx 6db: 41 89 fd mov r13d,edi 6de: 49 89 f6 mov r14,rsi 6e1: 4c 29 e5 sub rbp,r12 6e4: 48 83 ec 08 sub rsp,0x8 6e8: 48 c1 fd 03 sar rbp,0x3 6ec: e8 37 fe ff ff call 528 <_init> 6f1: 48 85 ed test rbp,rbp 6f4: 74 20 je 716 <__libc_csu_init+0x56> 6f6: 31 db xor ebx,ebx 6f8: 0f 1f 84 00 00 00 00 00 nop DWORD PTR [rax+rax*1+0x0] 700: 4c 89 fa mov rdx,r15 703: 4c 89 f6 mov rsi,r14 706: 44 89 ef mov edi,r13d 709: 41 ff 14 dc call QWORD PTR [r12+rbx*8] 70d: 48 83 c3 01 add rbx,0x1 711: 48 39 dd cmp rbp,rbx 714: 75 ea jne 700 <__libc_csu_init+0x40> 716: 48 83 c4 08 add rsp,0x8 71a: 5b pop rbx 71b: 5d pop rbp 71c: 41 5c pop r12 71e: 41 5d pop r13 720: 41 5e pop r14 722: 41 5f pop r15 724: c3 ret 725: 90 nop 726: 66 2e 0f 1f 84 00 00 00 00 00 nop WORD PTR cs:[rax+rax*1+0x0] 0000000000000730 <__libc_csu_fini>: 730: f3 c3 repz ret Disassembly of section .fini: 0000000000000734 <_fini>: 734: 48 83 ec 08 sub rsp,0x8 738: 48 83 c4 08 add rsp,0x8 73c: c3 ret
Trovare la differenza