Function at 0x5bfff0
Capabilities:
Hash data using tiger

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x58
mov rax, qword [rdx + 8]
mov r15, qword [rcx]
mov rbx, qword [rcx + 0x38]
mov rdi, qword [rdx]
mov r12, qword [rcx + 8]
mov r10, qword [rcx + 0x10]
mov r13, qword [rcx + 0x18]
mov r14, qword [rcx + 0x20]
mov qword [rsp + 0x20], rax
mov rax, qword [rdx + 0x10]
mov qword [rsp + 0xa8], rdx
lea rdx, [0x00705ba0]
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x38], rdi
mov qword [rsp + 0x28], rax
mov rax, qword [rcx + 0x28]
mov r9, qword [rsp + 0x28]
mov qword [rsp + 0x10], rax
mov rax, qword [rcx + 0x30]
xor r9, r15
lea rcx, [0x007053a0]
mov r8, r9
mov rsi, r9
mov r11, r9
shr rsi, 0x20
shr r8, 0x10
shr r11, 0x30
movzx r8d, r8b
movzx r11d, r11b
mov qword [rsp + 0x18], rax
movzx eax, sil
mov rbx, qword [rdx + r8*8]
movzx esi, r9b
lea r8, str.U_2
xor rbx, qword [rcx + rax*8]
lea rax, [0x007063a0]
mov r11, qword [r8 + r11*8]
xor r11, qword [rax + rsi*8]
mov rsi, rdi
mov rdi, r9
shr rdi, 0x38
xor r11, rbx
mov rbx, r9
sub rsi, r11
movzx ebx, bh
mov rbp, rsi
mov rsi, r9
mov r11, qword [r8 + rbx*8]
shr rsi, 0x18
xor rbp, r12
movzx esi, sil
mov rbx, rbp
xor r11, qword [rcx + rsi*8]
mov rsi, r9
shr rsi, 0x28
movzx esi, sil
mov rsi, qword [rdx + rsi*8]
xor rsi, qword [rax + rdi*8]
mov rdi, rbp
shr rdi, 0x10
movzx edi, dil
mov rdi, qword [rdx + rdi*8]
xor rsi, r11
add rsi, qword [rsp + 0x20]
lea r11, [rsi + rsi*4]
mov rsi, rbp
shr rsi, 0x20
movzx esi, sil
xor rdi, qword [rcx + rsi*8]
mov rsi, rbp
movzx ebp, bpl
shr rsi, 0x30
movzx esi, sil
mov rsi, qword [r8 + rsi*8]
xor rsi, qword [rax + rbp*8]
mov rbp, rbx
shr rbp, 0x38
xor rdi, rsi
movzx esi, bh
sub r11, rdi
mov rdi, rbx
mov rsi, qword [r8 + rsi*8]
mov qword [rsp + 8], rbx
shr rdi, 0x18
xor r11, r10
movzx edi, dil
xor rsi, qword [rcx + rdi*8]
mov rdi, rbx
mov rbx, r11
shr rdi, 0x28
movzx edi, dil
mov rdi, qword [rdx + rdi*8]
xor rdi, qword [rax + rbp*8]
movzx ebp, r11b
xor rdi, rsi
mov rsi, r11
add rdi, r9
lea r9, [rdi + rdi*4]
mov rdi, r11
shr rdi, 0x10
shr rsi, 0x20
movzx esi, sil
movzx edi, dil
mov rdi, qword [rdx + rdi*8]
xor rdi, qword [rcx + rsi*8]
mov rsi, r11
shr rsi, 0x30
movzx esi, sil
mov rsi, qword [r8 + rsi*8]
xor rsi, qword [rax + rbp*8]
mov rbp, r11
shr rbp, 0x38
xor rdi, rsi
movzx esi, bh
sub r9, rdi
mov rdi, r11
mov rsi, qword [r8 + rsi*8]
shr rdi, 0x18
xor r9, r13
movzx edi, dil
xor rsi, qword [rcx + rdi*8]
mov rdi, r11
shr rdi, 0x28
movzx edi, dil
mov rdi, qword [rdx + rdi*8]
xor rdi, qword [rax + rbp*8]
movzx ebp, r9b
xor rdi, rsi
add rdi, qword [rsp + 8]
mov rsi, r9
shr rsi, 0x20
movzx esi, sil
lea rbx, [rdi + rdi*4]
mov rdi, r9
shr rdi, 0x10
movzx edi, dil
mov rdi, qword [rdx + rdi*8]
xor rdi, qword [rcx + rsi*8]
mov rsi, r9
shr rsi, 0x30
movzx esi, sil
mov rsi, qword [r8 + rsi*8]
xor rsi, qword [rax + rbp*8]
mov rbp, r9
shr rbp, 0x38
xor rdi, rsi
sub rbx, rdi
mov rdi, r9
mov qword [rsp + 8], rbx
shr rdi, 0x18
mov rbx, r9
movzx esi, bh
movzx edi, dil
mov rbx, qword [rsp + 8]
mov rsi, qword [r8 + rsi*8]
xor rsi, qword [rcx + rdi*8]
mov rdi, r9
shr rdi, 0x28
movzx edi, dil
mov rdi, qword [rdx + rdi*8]
xor rdi, qword [rax + rbp*8]
xor rbx, r14
movzx ebp, bl
mov qword [rsp + 8], rbx
xor rdi, rsi
mov rsi, rbx
add rdi, r11
shr rsi, 0x20
lea r11, [rdi + rdi*4]
mov rdi, rbx
movzx esi, sil
shr rdi, 0x10
movzx edi, dil
mov rdi, qword [rdx + rdi*8]
xor rdi, qword [rcx + rsi*8]
mov rsi, rbx
shr rsi, 0x30
movzx esi, sil
mov rsi, qword [r8 + rsi*8]
xor rsi, qword [rax + rbp*8]
mov rbp, rbx
shr rbp, 0x38
xor rdi, rsi
movzx esi, bh
sub r11, rdi
mov rdi, rbx
mov rsi, qword [r8 + rsi*8]
shr rdi, 0x18
movzx edi, dil
xor rsi, qword [rcx + rdi*8]
mov rdi, rbx
shr rdi, 0x28
movzx edi, dil
mov rdi, qword [rdx + rdi*8]
xor rdi, qword [rax + rbp*8]
xor r11, qword [rsp + 0x10]
xor rdi, rsi
add rdi, r9
mov rsi, r11
movzx ebp, r11b
mov rbx, r11
lea r9, [rdi + rdi*4]
mov rdi, r11
shr rsi, 0x20
shr rdi, 0x10
movzx esi, sil
movzx edi, dil
mov rdi, qword [rdx + rdi*8]
xor rdi, qword [rcx + rsi*8]
mov rsi, r11
shr rsi, 0x30
movzx esi, sil
mov rsi, qword [r8 + rsi*8]
xor rsi, qword [rax + rbp*8]
mov rbp, r11
shr rbp, 0x38
xor rdi, rsi
movzx esi, bh
sub r9, rdi
mov rdi, r11
mov rsi, qword [r8 + rsi*8]
xor r9, qword [rsp + 0x18]
shr rdi, 0x18
movzx edi, dil
xor rsi, qword [rcx + rdi*8]
mov rdi, r11
shr rdi, 0x28
movzx edi, dil
mov rdi, qword [rdx + rdi*8]
xor rdi, qword [rax + rbp*8]
movzx ebp, r9b
xor rdi, rsi
add rdi, qword [rsp + 8]
mov rsi, r9
shr rsi, 0x20
movzx esi, sil
lea rbx, [rdi + rdi*4]
mov rdi, r9
shr rdi, 0x10
movzx edi, dil
mov rdi, qword [rdx + rdi*8]
xor rdi, qword [rcx + rsi*8]
mov rsi, r9
shr rsi, 0x30
movzx esi, sil
mov rsi, qword [r8 + rsi*8]
xor rsi, qword [rax + rbp*8]
mov rbp, r9
xor rdi, rsi
shr rbp, 0x38
sub rbx, rdi
mov rdi, r9
mov qword [rsp + 8], rbx
shr rdi, 0x18
mov rbx, r9
movzx esi, bh
movzx edi, dil
mov rbx, qword [rsp + 8]
mov rsi, qword [r8 + rsi*8]
xor rsi, qword [rcx + rdi*8]
mov rdi, r9
shr rdi, 0x28
xor rbx, qword [rsp + 0x30]
movzx edi, dil
mov rdi, qword [rdx + rdi*8]
xor rdi, qword [rax + rbp*8]
movzx ebp, bl
mov qword [rsp + 8], rbx
xor rdi, rsi
add rdi, r11
mov r11, rbx
lea rsi, [rdi + rdi*4]
mov rdi, rbx
shr r11, 0x20
shr rdi, 0x10
movzx r11d, r11b
movzx edi, dil
mov rdi, qword [rdx + rdi*8]
xor rdi, qword [rcx + r11*8]
mov r11, rbx
movzx ebx, bh
shr r11, 0x30
movzx r11d, r11b
mov r11, qword [r8 + r11*8]
xor r11, qword [rax + rbp*8]
xor rdi, r11
mov r11, rbx
mov rbx, qword [rsp + 8]
sub rsi, rdi
mov r11, qword [r8 + r11*8]
mov rdi, rbx
mov rbp, rbx
shr rdi, 0x18
shr rbp, 0x38
movzx edi, dil
xor r11, qword [rcx + rdi*8]
mov rdi, rbx
shr rdi, 0x28
movzx edi, dil
mov rdi, qword [rdx + rdi*8]
xor rdi, qword [rax + rbp*8]
mov rbx, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x18]
xor rdi, r11
add rdi, r9
movabs r9, 0xa5a5a5a5a5a5a5a5
xor r9, rbx
lea r11, [rdi + rdi*4]
sub r15, r9
xor r12, r15
mov r9, r12
add r10, r12
not r9
shl r9, 0x13
xor r9, r10
sub r13, r9
mov r9, qword [rsp + 0x10]
xor r14, r13
lea rdi, [r9 + r14]
mov r9, r14
not r9
shr r9, 0x17
xor r9, rdi
sub rbp, r9
xor rbx, rbp
mov r9, rbx
add rbx, r15
mov r15, r9
xor rsi, rbx
mov qword [rsp + 0x30], rbx
not r15
shl r15, 0x13
xor r15, rbx
mov rbx, rsi
sub r12, r15
movzx ebx, bh
xor r10, r12
mov qword [rsp + 0x10], r12
mov r15, r10
add r13, r10
not r15
mov r12, r15
shr r12, 0x17
xor r12, r13
sub r14, r12
movzx r12d, sil
xor rdi, r14
lea r15, [rbp + rdi]
movabs rbp, 0x123456789abcdef
xor rbp, r15
mov qword [rsp + 0x18], r15
sub r9, rbp
mov rbp, rsi
mov r15, r9
mov r9, rsi
shr rbp, 0x10
shr r9, 0x20
movzx ebp, bpl
movzx r9d, r9b
mov rbp, qword [rdx + rbp*8]
xor rbp, qword [rcx + r9*8]
mov r9, rsi
shr r9, 0x30
movzx r9d, r9b
mov r9, qword [r8 + r9*8]
xor r9, qword [rax + r12*8]
mov r12, rsi
shr r12, 0x38
xor rbp, r9
mov r9, qword [r8 + rbx*8]
mov rbx, qword [rsp + 8]
sub r11, rbp
mov rbp, rsi
shr rbp, 0x18
movzx ebp, bpl
xor r9, qword [rcx + rbp*8]
mov rbp, rsi
shr rbp, 0x28
movzx ebp, bpl
mov rbp, qword [rdx + rbp*8]
xor rbp, qword [rax + r12*8]
xor rbp, r9
add rbx, rbp
lea r9, [rbx*8]
sub r9, rbx
xor r11, qword [rsp + 0x10]
mov rbp, r11
mov rbx, r11
movzx r12d, r11b
shr rbp, 0x10
shr rbx, 0x20
movzx ebx, bl
movzx ebp, bpl
mov rbp, qword [rdx + rbp*8]
xor rbp, qword [rcx + rbx*8]
mov rbx, r11
shr rbx, 0x30
movzx ebx, bl
mov rbx, qword [r8 + rbx*8]
xor rbx, qword [rax + r12*8]
mov r12, r11
shr r12, 0x38
xor rbp, rbx
mov rbx, r11
sub r9, rbp
mov rbp, r11
movzx ebx, bh
shr rbp, 0x18
mov rbx, qword [r8 + rbx*8]
xor r9, r10
movzx ebp, bpl
xor rbx, qword [rcx + rbp*8]
mov rbp, r11
shr rbp, 0x28
movzx ebp, bpl
mov rbp, qword [rdx + rbp*8]
xor rbp, qword [rax + r12*8]
movzx r12d, r9b
xor rbp, rbx
add rsi, rbp
mov rbp, r9
lea rbx, [rsi*8]
shr rbp, 0x10
sub rbx, rsi
mov rsi, r9
movzx ebp, bpl
shr rsi, 0x20
mov rbp, qword [rdx + rbp*8]
movzx esi, sil
xor rbp, qword [rcx + rsi*8]
mov rsi, r9
shr rsi, 0x30
movzx esi, sil
mov rsi, qword [r8 + rsi*8]
xor rsi, qword [rax + r12*8]
mov r12, r9
shr r12, 0x38
xor rbp, rsi
sub rbx, rbp
mov rbp, r9
mov qword [rsp + 8], rbx
shr rbp, 0x18
mov rbx, r9
movzx esi, bh
movzx ebp, bpl
mov rsi, qword [r8 + rsi*8]
xor rsi, qword [rcx + rbp*8]
mov rbp, r9
shr rbp, 0x28
movzx ebp, bpl
mov rbp, qword [rdx + rbp*8]
xor rbp, qword [rax + r12*8]
mov rbx, qword [rsp + 8]
xor rbp, rsi
add rbp, r11
lea r11, [rbp*8]
sub r11, rbp
xor rbx, r13
mov rbp, rbx
mov rsi, rbx
movzx r12d, bl
mov qword [rsp + 8], rbx
shr rbp, 0x10
shr rsi, 0x20
movzx esi, sil
movzx ebp, bpl
mov rbp, qword [rdx + rbp*8]
xor rbp, qword [rcx + rsi*8]
mov rsi, rbx
shr rsi, 0x30
movzx esi, sil
mov rsi, qword [r8 + rsi*8]
xor rsi, qword [rax + r12*8]
mov r12, rbx
shr r12, 0x38
xor rbp, rsi
movzx esi, bh
sub r11, rbp
mov rbp, rbx
mov rsi, qword [r8 + rsi*8]
shr rbp, 0x18
xor r11, r14
movzx ebp, bpl
xor rsi, qword [rcx + rbp*8]
mov rbp, rbx
mov rbx, r11
shr rbp, 0x28
movzx ebp, bpl
mov rbp, qword [rdx + rbp*8]
xor rbp, qword [rax + r12*8]
movzx r12d, r11b
xor rbp, rsi
mov rsi, r11
add rbp, r9
shr rsi, 0x20
lea r9, [rbp*8]
movzx esi, sil
sub r9, rbp
mov rbp, r11
shr rbp, 0x10
movzx ebp, bpl
mov rbp, qword [rdx + rbp*8]
xor rbp, qword [rcx + rsi*8]
mov rsi, r11
shr rsi, 0x30
movzx esi, sil
mov rsi, qword [r8 + rsi*8]
xor rsi, qword [rax + r12*8]
mov r12, r11
shr r12, 0x38
xor rbp, rsi
movzx esi, bh
sub r9, rbp
mov rbp, r11
mov rsi, qword [r8 + rsi*8]
shr rbp, 0x18
movzx ebp, bpl
xor rsi, qword [rcx + rbp*8]
mov rbp, r11
shr rbp, 0x28
movzx ebp, bpl
mov rbp, qword [rdx + rbp*8]
xor rbp, qword [rax + r12*8]
xor rbp, rsi
add rbp, qword [rsp + 8]
lea rbx, [rbp*8]
sub rbx, rbp
xor r9, rdi
mov rbp, r9
mov rsi, r9
movzx r12d, r9b
shr rbp, 0x10
shr rsi, 0x20
movzx esi, sil
movzx ebp, bpl
mov rbp, qword [rdx + rbp*8]
xor rbp, qword [rcx + rsi*8]
mov rsi, r9
shr rsi, 0x30
movzx esi, sil
mov rsi, qword [r8 + rsi*8]
xor rsi, qword [rax + r12*8]
mov r12, r9
shr r12, 0x38
xor rbp, rsi
sub rbx, rbp
mov rbp, r9
mov qword [rsp + 8], rbx
shr rbp, 0x18
mov rbx, r9
movzx esi, bh
movzx ebp, bpl
mov rbx, qword [rsp + 8]
mov rsi, qword [r8 + rsi*8]
xor rsi, qword [rcx + rbp*8]
mov rbp, r9
shr rbp, 0x28
xor rbx, qword [rsp + 0x18]
movzx ebp, bpl
mov rbp, qword [rdx + rbp*8]
xor rbp, qword [rax + r12*8]
movzx r12d, bl
xor rbp, rsi
mov rsi, rbx
add rbp, r11
shr rsi, 0x20
lea r11, [rbp*8]
movzx esi, sil
sub r11, rbp
mov rbp, rbx
shr rbp, 0x10
movzx ebp, bpl
mov rbp, qword [rdx + rbp*8]
xor rbp, qword [rcx + rsi*8]
mov rsi, rbx
mov qword [rsp + 8], rbx
shr rsi, 0x30
movzx esi, sil
mov rsi, qword [r8 + rsi*8]
xor rsi, qword [rax + r12*8]
mov r12, rbx
shr r12, 0x38
xor rbp, rsi
movzx esi, bh
sub r11, rbp
mov rbp, rbx
mov rsi, qword [r8 + rsi*8]
shr rbp, 0x18
movzx ebp, bpl
xor rsi, qword [rcx + rbp*8]
mov rbp, rbx
shr rbp, 0x28
movzx ebp, bpl
mov rbp, qword [rdx + rbp*8]
xor rbp, qword [rax + r12*8]
xor rbp, rsi
add r9, rbp
lea rbp, [r9*8]
sub rbp, r9
xor r11, r15
mov rsi, r11
mov r9, r11
movzx r12d, r11b
mov rbx, r11
shr rsi, 0x10
shr r9, 0x20
movzx ebx, bh
movzx r9d, r9b
movzx esi, sil
mov rsi, qword [rdx + rsi*8]
xor rsi, qword [rcx + r9*8]
mov r9, r11
shr r9, 0x30
movzx r9d, r9b
mov r9, qword [r8 + r9*8]
xor r9, qword [rax + r12*8]
mov r12, qword [rsp + 0x10]
xor rsi, r9
mov r9, rbp
mov rbp, r11
sub r9, rsi
mov rsi, r11
shr rbp, 0x38
shr rsi, 0x18
mov qword [rsp + 0x40], r9
mov r9, qword [r8 + rbx*8]
mov rbx, qword [rsp + 8]
movzx esi, sil
xor r9, qword [rcx + rsi*8]
mov rsi, r11
shr rsi, 0x28
movzx esi, sil
mov rsi, qword [rdx + rsi*8]
xor rsi, qword [rax + rbp*8]
mov rbp, qword [rsp + 0x18]
xor rsi, r9
movabs r9, 0xa5a5a5a5a5a5a5a5
add rbx, rsi
xor r9, r15
lea rsi, [rbx*8]
sub rsi, rbx
mov rbx, qword [rsp + 0x30]
mov qword [rsp + 0x48], rsi
sub rbx, r9
xor r12, rbx
mov r9, r12
add r10, r12
not r9
shl r9, 0x13
xor r9, r10
sub r13, r9
xor r14, r13
mov r9, r14
add rdi, r14
not r9
shr r9, 0x17
xor r9, rdi
sub rbp, r9
xor r15, rbp
add rbx, r15
mov r9, r15
not r15
mov rsi, r15
shl rsi, 0x13
xor rsi, rbx
sub r12, rsi
xor rbx, qword [rsp + 0x40]
xor r10, r12
mov r15, r10
add r13, r10
not r15
mov rsi, r15
mov r15, r14
shr rsi, 0x17
xor rsi, r13
sub r15, rsi
xor rdi, r15
mov qword [rsp + 8], r15
mov r15, rbx
shr rbx, 0x10
add rbp, rdi
mov qword [rsp + 0x10], rdi
movzx edi, bl
mov rbx, r15
shr rbx, 0x20
mov rdi, qword [rdx + rdi*8]
movzx r14d, r15b
movzx esi, bl
mov rbx, r15
shr rbx, 0x30
xor rdi, qword [rcx + rsi*8]
movzx esi, bl
mov rbx, r15
mov rsi, qword [r8 + rsi*8]
xor rsi, qword [rax + r14*8]
xor rdi, rsi
mov rsi, qword [rsp + 0x48]
sub rsi, rdi
movzx edi, bh
shr rbx, 0x18
movzx r14d, bl
mov rbx, r15
mov rdi, qword [r8 + rdi*8]
xor rsi, r12
shr rbx, 0x28
xor rdi, qword [rcx + r14*8]
mov r12, rsi
mov qword [rsp + 0x18], r15
movzx r14d, bl
mov rbx, r15
shr r12, 0x10
shr rbx, 0x38
mov r14, qword [rdx + r14*8]
movzx r12d, r12b
xor r14, qword [rax + rbx*8]
mov rbx, rsi
mov r12, qword [rdx + r12*8]
shr rbx, 0x20
xor r14, rdi
movzx edi, bl
mov rbx, rsi
add r14, r11
shr rbx, 0x30
xor r12, qword [rcx + rdi*8]
lea r11, [r14 + r14*8]
movzx edi, bl
movzx r14d, sil
mov rdi, qword [r8 + rdi*8]
xor rdi, qword [rax + r14*8]
mov rbx, rsi
mov r14, rsi
xor r12, rdi
movzx edi, bh
sub r11, r12
mov r12, rsi
mov rdi, qword [r8 + rdi*8]
shr r12, 0x18
movzx r12d, r12b
xor rdi, qword [rcx + r12*8]
mov r12, rsi
shr r14, 0x38
xor r10, r11
shr r12, 0x28
mov r11, r10
movzx r12d, r12b
shr r11, 0x20
mov r12, qword [rdx + r12*8]
xor r12, qword [rax + r14*8]
mov r14, r10
movzx r11d, r11b
shr r14, 0x10
xor r12, rdi
add r12, qword [rsp + 0x18]
movzx edi, r14b
mov rdi, qword [rdx + rdi*8]
xor rdi, qword [rcx + r11*8]
mov r11, r10
shr r11, 0x30
movzx r11d, r11b
mov r11, qword [r8 + r11*8]
lea rbx, [r12 + r12*8]
movzx r12d, r10b
xor r11, qword [rax + r12*8]
xor rdi, r11
mov r11, r10
sub rbx, rdi
shr r11, 0x18
mov r14, rbx
mov rbx, r10
movzx r11d, r11b
movzx edi, bh
shr rbx, 0x38
xor r14, r13
mov r12, qword [r8 + rdi*8]
xor r12, qword [rcx + r11*8]
mov r11, r10
shr r11, 0x28
movzx r11d, r11b
mov r11, qword [rdx + r11*8]
xor r11, qword [rax + rbx*8]
mov rbx, r14
shr rbx, 0x10
movzx edi, bl
mov rbx, r14
shr rbx, 0x20
mov rdi, qword [rdx + rdi*8]
xor r11, r12
movzx r12d, r14b
add r11, rsi
lea rsi, [r11 + r11*8]
movzx r11d, bl
mov rbx, r14
shr rbx, 0x30
xor rdi, qword [rcx + r11*8]
movzx r11d, bl
mov rbx, r14
mov r11, qword [r8 + r11*8]
xor r11, qword [rax + r12*8]
movzx ebx, bh
xor rdi, r11
mov r11, rbx
mov rbx, r14
shr rbx, 0x18
sub rsi, rdi
mov r11, qword [r8 + r11*8]
movzx edi, bl
mov rbx, r14
shr rbx, 0x28
xor r11, qword [rcx + rdi*8]
movzx edi, bl
mov rbx, r14
shr rbx, 0x38
xor rsi, qword [rsp + 8]
mov rdi, qword [rdx + rdi*8]
xor rdi, qword [rax + rbx*8]
mov rbx, rsi
movzx r12d, sil
xor rdi, r11
shr rbx, 0x20
mov r11, rsi
add r10, rdi
shr r11, 0x10
movzx edi, bl
mov rbx, rsi
shr rbx, 0x30
movzx r11d, r11b
lea r10, [r10 + r10*8]
mov r11, qword [rdx + r11*8]
xor r11, qword [rcx + rdi*8]
movzx edi, bl
mov rbx, rsi
mov rdi, qword [r8 + rdi*8]
xor rdi, qword [rax + r12*8]
xor r11, rdi
movzx edi, bh
shr rbx, 0x38
sub r10, r11
mov r11, rsi
mov r13, qword [r8 + rdi*8]
xor r10, qword [rsp + 0x10]
shr r11, 0x18
movzx r11d, r11b
xor r13, qword [rcx + r11*8]
mov r11, rsi
shr r11, 0x28
movzx r11d, r11b
mov rdi, r10
movzx r12d, r10b
mov r11, qword [rdx + r11*8]
xor r11, qword [rax + rbx*8]
shr rdi, 0x20
movzx edi, dil
xor r13, r11
lea rbx, [r14 + r13]
lea r11, [rbx + rbx*8]
mov rbx, r10
shr rbx, 0x10
movzx ebx, bl
mov rbx, qword [rdx + rbx*8]
xor rbx, qword [rcx + rdi*8]
mov rdi, r10
shr rdi, 0x30
movzx edi, dil
mov rdi, qword [r8 + rdi*8]
xor rdi, qword [rax + r12*8]
mov r12, r10
shr r12, 0x38
xor rbx, rdi
mov rdi, r10
sub r11, rbx
shr rdi, 0x18
mov rbx, r10
movzx edi, dil
movzx ebx, bh
mov rbx, qword [r8 + rbx*8]
xor rbx, qword [rcx + rdi*8]
mov rdi, r10
shr rdi, 0x28
movzx edi, dil
mov rdi, qword [rdx + rdi*8]
xor rdi, qword [rax + r12*8]
xor rbx, rdi
add rsi, rbx
xor r11, rbp
lea rbx, [rsi + rsi*8]
mov rdi, r11
mov rsi, r11
movzx r12d, r11b
shr rsi, 0x10
shr rdi, 0x20
movzx edi, dil
movzx esi, sil
mov rsi, qword [rdx + rsi*8]
xor rsi, qword [rcx + rdi*8]
mov rdi, r11
shr rdi, 0x30
movzx edi, dil
mov rdi, qword [r8 + rdi*8]
xor rdi, qword [rax + r12*8]
mov r12, r11
shr r12, 0x38
xor rsi, rdi
sub rbx, rsi
mov r15, rbx
mov rbx, r11
movzx esi, bh
shr rbx, 0x18
movzx edi, bl
mov rbx, r11
mov rsi, qword [r8 + rsi*8]
shr rbx, 0x28
xor rsi, qword [rcx + rdi*8]
movzx edi, bl
movabs rbx, 0x123456789abcdef
mov rdi, qword [rdx + rdi*8]
xor rdi, qword [rax + r12*8]
xor rbp, rbx
mov rbx, r15
sub r9, rbp
xor rbx, r9
mov r9, rbx
shr r9, 0x10
xor rsi, rdi
movzx r9d, r9b
movzx edi, bl
add r10, rsi
mov rsi, rbx
mov r9, qword [rdx + r9*8]
shr rsi, 0x20
movzx esi, sil
xor r9, qword [rcx + rsi*8]
mov rsi, rbx
shr rsi, 0x30
movzx esi, sil
mov rsi, qword [r8 + rsi*8]
xor rsi, qword [rax + rdi*8]
movzx edi, bh
mov r8, qword [r8 + rdi*8]
xor r9, rsi
mov rsi, rbx
shr rsi, 0x18
movzx esi, sil
xor r8, qword [rcx + rsi*8]
mov rsi, rbx
shr rsi, 0x38
mov rcx, r8
mov r8, rbx
shr r8, 0x28
movzx r8d, r8b
mov rdx, qword [rdx + r8*8]
xor rdx, qword [rax + rsi*8]
mov rax, rdx
xor rax, rcx
add r11, rax
lea rax, [r11 + r11*8]
xor rax, qword [rsp + 0x38]
mov rdx, qword [rsp + 0xa8]
sub rbx, qword [rsp + 0x20]
mov qword [rdx], rax
lea rax, [r10 + r10*8]
add rax, qword [rsp + 0x28]
mov qword [rdx + 8], rbx
sub rax, r9
mov qword [rdx + 0x10], rax
add rsp, 0x58
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret