Paste
Copy
Cut
Options

¡Tu solución está lista!

Nuestra ayuda de expertos desglosó tu problema en una solución confiable y fácil de entender.

Mira la respuesta
  • Pregunta: Dump of assembler code for function main: 0x0000000000001305 <+0>: push %rbx 0x0000000000001306 <+1>: cmp $0x1,%edi 0x0000000000001309 <+4>: je 0x1407 <main+258> 0x000000000000130f <+10>: mov %rsi,%rbx 0x0000000000001312 <+13>: cmp $0x2,%edi 0x0000000000001315 <+16>: jne 0x1437 <main+306>

    Dump of assembler code for function main:
    0x0000000000001305 <+0>: push %rbx
    0x0000000000001306 <+1>: cmp $0x1,%edi
    0x0000000000001309 <+4>: je 0x1407 <main+258>
    0x000000000000130f <+10>: mov %rsi,%rbx
    0x0000000000001312 <+13>: cmp $0x2,%edi
    0x0000000000001315 <+16>: jne 0x1437 <main+306>
    0x000000000000131b <+22>: mov 0x8(%rsi),%rdi
    0x000000000000131f <+26>: lea 0x1cde(%rip),%rsi # 0x3004
    0x0000000000001326 <+33>: callq 0x10f0 <fopen@plt>
    0x000000000000132b <+38>: mov %rax,0x449e(%rip) # 0x57d0 <infile>
    0x0000000000001332 <+45>: test %rax,%rax
    0x0000000000001335 <+48>: je 0x141a <main+277>
    0x000000000000133b <+54>: callq 0x1979 <initialize_bomb>
    0x0000000000001340 <+59>: lea 0x1d41(%rip),%rdi # 0x3088
    0x0000000000001347 <+66>: callq 0x11b0 <puts@plt>
    0x000000000000134c <+71>: lea 0x1d75(%rip),%rdi # 0x30c8
    0x0000000000001353 <+78>: callq 0x11b0 <puts@plt>
    0x0000000000001358 <+83>: callq 0x1b65 <read_line>
    0x000000000000135d <+88>: mov %rax,%rdi
    0x0000000000001360 <+91>: callq 0x1455 <phase_1>
    0x0000000000001365 <+96>: callq 0x1c9c <phase_defused>
    0x000000000000136a <+101>: lea 0x1d87(%rip),%rdi # 0x30f8
    0x0000000000001371 <+108>: callq 0x11b0 <puts@plt>
    0x0000000000001376 <+113>: callq 0x1b65 <read_line>
    0x000000000000137b <+118>: mov %rax,%rdi
    0x000000000000137e <+121>: callq 0x1475 <phase_2>
    0x0000000000001383 <+126>: callq 0x1c9c <phase_defused>
    0x0000000000001388 <+131>: lea 0x1cae(%rip),%rdi # 0x303d
    0x000000000000138f <+138>: callq 0x11b0 <puts@plt>
    0x0000000000001394 <+143>: callq 0x1b65 <read_line>
    0x0000000000001399 <+148>: mov %rax,%rdi
    0x000000000000139c <+151>: callq 0x14ba <phase_3>
    0x00000000000013a1 <+156>: callq 0x1c9c <phase_defused>
    0x00000000000013a6 <+161>: lea 0x1cae(%rip),%rdi # 0x305b
    0x00000000000013ad <+168>: callq 0x11b0 <puts@plt>
    0x00000000000013b2 <+173>: callq 0x1b65 <read_line>
    0x00000000000013b7 <+178>: mov %rax,%rdi
    0x00000000000013ba <+181>: callq 0x1650 <phase_4>
    0x00000000000013bf <+186>: callq 0x1c9c <phase_defused>
    0x00000000000013c4 <+191>: lea 0x1d5d(%rip),%rdi # 0x3128
    0x00000000000013cb <+198>: callq 0x11b0 <puts@plt>
    0x00000000000013d0 <+203>: callq 0x1b65 <read_line>
    0x00000000000013d5 <+208>: mov %rax,%rdi
    0x00000000000013d8 <+211>: callq 0x16a9 <phase_5>
    0x00000000000013dd <+216>: callq 0x1c9c <phase_defused>
    0x00000000000013e2 <+221>: lea 0x1c81(%rip),%rdi # 0x306a
    0x00000000000013e9 <+228>: callq 0x11b0 <puts@plt>
    0x00000000000013ee <+233>: callq 0x1b65 <read_line>
    0x00000000000013f3 <+238>: mov %rax,%rdi
    --Type <RET> for more, q to quit, c to continue without paging--c
    0x00000000000013f6 <+241>: callq 0x16f1 <phase_6>
    0x00000000000013fb <+246>: callq 0x1c9c <phase_defused>
    0x0000000000001400 <+251>: mov $0x0,%eax
    0x0000000000001405 <+256>: pop %rbx
    0x0000000000001406 <+257>: retq
    0x0000000000001407 <+258>: mov 0x43a2(%rip),%rax # 0x57b0 <stdin@GLIBC_2.2.5>
    0x000000000000140e <+265>: mov %rax,0x43bb(%rip) # 0x57d0 <infile>
    0x0000000000001415 <+272>: jmpq 0x133b <main+54>
    0x000000000000141a <+277>: mov 0x8(%rbx),%rdx
    0x000000000000141e <+281>: mov (%rbx),%rsi
    0x0000000000001421 <+284>: lea 0x1bde(%rip),%rdi # 0x3006
    0x0000000000001428 <+291>: callq 0x1030 <printf@plt>
    0x000000000000142d <+296>: mov $0x8,%edi
    0x0000000000001432 <+301>: callq 0x1120 <exit@plt>
    0x0000000000001437 <+306>: mov (%rsi),%rsi
    0x000000000000143a <+309>: lea 0x1be2(%rip),%rdi # 0x3023
    0x0000000000001441 <+316>: mov $0x0,%eax
    0x0000000000001446 <+321>: callq 0x1030 <printf@plt>
    0x000000000000144b <+326>: mov $0x8,%edi
    0x0000000000001450 <+331>: callq 0x1120 <exit@plt>
    End of assembler dump.

    (gdb) disas phase_3
    Dump of assembler code for function phase_3:
    0x00000000000014ba <+0>: sub $0x18,%rsp
    0x00000000000014be <+4>: lea 0x7(%rsp),%rcx
    0x00000000000014c3 <+9>: lea 0xc(%rsp),%rdx
    0x00000000000014c8 <+14>: lea 0x8(%rsp),%r8
    0x00000000000014cd <+19>: lea 0x1cd2(%rip),%rsi # 0x31a6
    0x00000000000014d4 <+26>: mov $0x0,%eax
    0x00000000000014d9 <+31>: callq 0x10b0 <__isoc99_sscanf@plt>
    0x00000000000014de <+36>: cmp $0x2,%eax
    0x00000000000014e1 <+39>: jle 0x1502 <phase_3+72>
    0x00000000000014e3 <+41>: cmpl $0x7,0xc(%rsp)
    0x00000000000014e8 <+46>: ja 0x15f3 <phase_3+313>
    0x00000000000014ee <+52>: mov 0xc(%rsp),%eax
    0x00000000000014f2 <+56>: lea 0x1cc7(%rip),%rdx # 0x31c0
    0x00000000000014f9 <+63>: movslq (%rdx,%rax,4),%rax
    0x00000000000014fd <+67>: add %rdx,%rax
    0x0000000000001500 <+70>: jmpq *%rax
    0x0000000000001502 <+72>: callq 0x1ae8 <explode_bomb>
    0x0000000000001507 <+77>: jmp 0x14e3 <phase_3+41>
    0x0000000000001509 <+79>: mov $0x63,%eax
    0x000000000000150e <+84>: cmpl $0xc8,0x8(%rsp)
    0x0000000000001516 <+92>: je 0x15fd <phase_3+323>
    0x000000000000151c <+98>: callq 0x1ae8 <explode_bomb>
    0x0000000000001521 <+103>: mov $0x63,%eax
    0x0000000000001526 <+108>: jmpq 0x15fd <phase_3+323>
    0x000000000000152b <+113>: mov $0x64,%eax
    0x0000000000001530 <+118>: cmpl $0x234,0x8(%rsp)
    0x0000000000001538 <+126>: je 0x15fd <phase_3+323>
    0x000000000000153e <+132>: callq 0x1ae8 <explode_bomb>
    0x0000000000001543 <+137>: mov $0x64,%eax
    0x0000000000001548 <+142>: jmpq 0x15fd <phase_3+323>
    0x000000000000154d <+147>: mov $0x77,%eax
    0x0000000000001552 <+152>: cmpl $0x36a,0x8(%rsp)
    0x000000000000155a <+160>: je 0x15fd <phase_3+323>
    0x0000000000001560 <+166>: callq 0x1ae8 <explode_bomb>
    0x0000000000001565 <+171>: mov $0x77,%eax
    0x000000000000156a <+176>: jmpq 0x15fd <phase_3+323>
    0x000000000000156f <+181>: mov $0x79,%eax
    0x0000000000001574 <+186>: cmpl $0x346,0x8(%rsp)
    0x000000000000157c <+194>: je 0x15fd <phase_3+323>
    0x000000000000157e <+196>: callq 0x1ae8 <explode_bomb>
    0x0000000000001583 <+201>: mov $0x79,%eax
    0x0000000000001588 <+206>: jmp 0x15fd <phase_3+323>
    0x000000000000158a <+208>: mov $0x69,%eax
    0x000000000000158f <+213>: cmpl $0x7c,0x8(%rsp)
    0x0000000000001594 <+218>: je 0x15fd <phase_3+323>
    0x0000000000001596 <+220>: callq 0x1ae8 <explode_bomb>
    0x000000000000159b <+225>: mov $0x69,%eax
    0x00000000000015a0 <+230>: jmp 0x15fd <phase_3+323>
    0x00000000000015a2 <+232>: mov $0x6f,%eax
    --Type <RET> for more, q to quit, c to continue without paging-- c
    0x00000000000015a7 <+237>: cmpl $0x115,0x8(%rsp)
    0x00000000000015af <+245>: je 0x15fd <phase_3+323>
    0x00000000000015b1 <+247>: callq 0x1ae8 <explode_bomb>
    0x00000000000015b6 <+252>: mov $0x6f,%eax
    0x00000000000015bb <+257>: jmp 0x15fd <phase_3+323>
    0x00000000000015bd <+259>: mov $0x6c,%eax
    0x00000000000015c2 <+264>: cmpl $0x18e,0x8(%rsp)
    0x00000000000015ca <+272>: je 0x15fd <phase_3+323>
    0x00000000000015cc <+274>: callq 0x1ae8 <explode_bomb>
    0x00000000000015d1 <+279>: mov $0x6c,%eax
    0x00000000000015d6 <+284>: jmp 0x15fd <phase_3+323>
    0x00000000000015d8 <+286>: mov $0x76,%eax
    0x00000000000015dd <+291>: cmpl $0x379,0x8(%rsp)
    0x00000000000015e5 <+299>: je 0x15fd <phase_3+323>
    0x00000000000015e7 <+301>: callq 0x1ae8 <explode_bomb>
    0x00000000000015ec <+306>: mov $0x76,%eax
    0x00000000000015f1 <+311>: jmp 0x15fd <phase_3+323>
    0x00000000000015f3 <+313>: callq 0x1ae8 <explode_bomb>
    0x00000000000015f8 <+318>: mov $0x77,%eax
    0x00000000000015fd <+323>: cmp %al,0x7(%rsp)
    0x0000000000001601 <+327>: jne 0x1608 <phase_3+334>
    0x0000000000001603 <+329>: add $0x18,%rsp
    0x0000000000001607 <+333>: retq
    0x0000000000001608 <+334>: callq 0x1ae8 <explode_bomb>
    0x000000000000160d <+339>: jmp 0x1603 <phase_3+329>
    End of assembler dump.

  • Chegg Logo
    Hay 4 pasos para resolver este problema.
    Solución
    Paso 1

    This is the dump of assembler code for the main function. The code is written in assembly language, ...

    Mira la respuesta completa
    answer image blur
    Paso 2
    Desbloquea
    Paso 3
    Desbloquea
    Paso 4
    Desbloquea
    Respuesta
    Desbloquea