Hello there, I've very recently started learning about assembly and came across something called a Binary Bomb which seemed like a fun exercise to test my skills on. To put it simply the objective is to "defuse" a bomb by reading assembly code and figuring out a password that will allow me to move through several phases without exploding the bomb. I have completed phase 1 through 4 and I'm currently stuck on phase 5. I've been staring at this code for hours and I just can't seem to figure it out. I believe it is asking for a string of 6 chars? But beyond that I'm not sure what to do. Any directions or further explanation on what's happening in this code would be greatly appreciated. Thanks!

Code:
Dump of assembler code for function phase_5:
=> 0x0000000000401105 <+0>:    push   %rbx
   0x0000000000401106 <+1>:    mov    %rdi,%rbx
   0x0000000000401109 <+4>:    callq  0x40135a <string_length>
   0x000000000040110e <+9>:    cmp    $0x6,%eax
   0x0000000000401111 <+12>:    je     0x401118 <phase_5+19>
   0x0000000000401113 <+14>:    callq  0x40164c <explode_bomb>
   0x0000000000401118 <+19>:    mov    %rbx,%rax
   0x000000000040111b <+22>:    lea    0x6(%rbx),%rdi
   0x000000000040111f <+26>:    mov    $0x0,%ecx
   0x0000000000401124 <+31>:    movzbl (%rax),%edx
   0x0000000000401127 <+34>:    and    $0xf,%edx
   0x000000000040112a <+37>:    add    0x4026c0(,%rdx,4),%ecx
   0x0000000000401131 <+44>:    add    $0x1,%rax
   0x0000000000401135 <+48>:    cmp    %rdi,%rax
   0x0000000000401138 <+51>:    jne    0x401124 <phase_5+31>
   0x000000000040113a <+53>:    cmp    $0x2d,%ecx
   0x000000000040113d <+56>:    je     0x401144 <phase_5+63>
   0x000000000040113f <+58>:    callq  0x40164c <explode_bomb>
   0x0000000000401144 <+63>:    pop    %rbx
   0x0000000000401145 <+64>:    retq  
End of assembler dump.