Function at 0x14002f010
Capabilities:
Hash data using tiger

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x40
mov r11, qword [rdx + 8]
lea r13, [0x140069480]
mov rax, qword [rdx + 0x38]
mov r14, qword [rdx]
mov rdi, qword [rdx + 0x10]
mov r9, r14
mov r15, qword [rdx + 0x18]
mov rsi, qword [rdx + 0x20]
mov rbp, qword [rdx + 0x28]
mov r12, qword [rdx + 0x30]
mov r8, qword [rcx + 8]
mov rbx, qword [rcx]
mov qword [rsp], rax
mov rax, qword [rcx + 0x10]
xor r9, rax
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x28], rcx
mov rax, r9
shr rax, 0x28
movzx ecx, al
mov rax, r9
shr rax, 0x18
movzx eax, al
mov qword [rsp + 0x30], r8
mov rdx, qword [r13 + rcx*8 + 0x800]
mov qword [rsp + 8], r11
mov rax, qword [r13 + rax*8 + 0x1000]
xor rdx, rax
mov qword [rsp + 0x20], rbx
mov rax, r9
shr rax, 8
movzx ecx, al
mov rax, r9
shr rax, 0x38
xor rdx, qword [r13 + rcx*8 + 0x1800]
xor rdx, qword [r13 + rax*8]
mov rax, r9
shr rax, 0x30
add rdx, r8
movzx ecx, al
mov r8, rbx
mov rax, r9
shr rax, 0x20
movzx eax, al
lea r10, [rdx + rdx*4]
mov rdx, qword [r13 + rcx*8 + 0x1800]
mov rax, qword [r13 + rax*8 + 0x1000]
xor rdx, rax
mov rax, r9
shr rax, 0x10
movzx ecx, al
movzx eax, r9b
xor rdx, qword [r13 + rcx*8 + 0x800]
xor rdx, qword [r13 + rax*8]
sub r8, rdx
xor r8, r11
mov rax, r8
shr rax, 0x28
movzx ecx, al
mov rax, r8
shr rax, 0x18
movzx eax, al
mov rdx, qword [r13 + rcx*8 + 0x800]
mov rax, qword [r13 + rax*8 + 0x1000]
xor rdx, rax
mov rax, r8
shr rax, 8
movzx ecx, al
mov rax, r8
shr rax, 0x38
xor rdx, qword [r13 + rcx*8 + 0x1800]
xor rdx, qword [r13 + rax*8]
mov rax, r8
shr rax, 0x30
add r9, rdx
movzx ecx, al
mov rax, r8
shr rax, 0x20
movzx eax, al
lea r11, [r9 + r9*4]
mov rax, qword [r13 + rax*8 + 0x1000]
mov rdx, qword [r13 + rcx*8 + 0x1800]
xor rdx, rax
mov rax, r8
shr rax, 0x10
movzx ecx, al
movzx eax, r8b
xor rdx, qword [r13 + rcx*8 + 0x800]
xor rdx, qword [r13 + rax*8]
sub r10, rdx
xor r10, rdi
mov rax, r10
shr rax, 0x28
movzx ecx, al
mov rax, r10
shr rax, 0x18
movzx eax, al
mov rdx, qword [r13 + rcx*8 + 0x800]
mov rax, qword [r13 + rax*8 + 0x1000]
xor rdx, rax
mov rax, r10
shr rax, 8
movzx ecx, al
mov rax, r10
shr rax, 0x38
xor rdx, qword [r13 + rcx*8 + 0x1800]
xor rdx, qword [r13 + rax*8]
mov rax, r10
shr rax, 0x30
add r8, rdx
movzx ecx, al
mov rax, r10
shr rax, 0x20
movzx eax, al
lea r9, [r8 + r8*4]
mov rdx, qword [r13 + rcx*8 + 0x1800]
mov rax, qword [r13 + rax*8 + 0x1000]
xor rdx, rax
mov rax, r10
shr rax, 0x10
movzx ecx, al
movzx eax, r10b
xor rdx, qword [r13 + rcx*8 + 0x800]
xor rdx, qword [r13 + rax*8]
sub r11, rdx
xor r11, r15
mov rax, r11
shr rax, 0x28
movzx ecx, al
mov rax, r11
shr rax, 0x18
movzx eax, al
mov rdx, qword [r13 + rcx*8 + 0x800]
mov rax, qword [r13 + rax*8 + 0x1000]
xor rdx, rax
mov rax, r11
shr rax, 8
movzx ecx, al
mov rax, r11
shr rax, 0x38
xor rdx, qword [r13 + rcx*8 + 0x1800]
xor rdx, qword [r13 + rax*8]
mov rax, r11
shr rax, 0x30
add r10, rdx
movzx ecx, al
mov rax, r11
shr rax, 0x20
movzx eax, al
lea r8, [r10 + r10*4]
mov rdx, qword [r13 + rcx*8 + 0x1800]
mov rax, qword [r13 + rax*8 + 0x1000]
xor rdx, rax
mov rax, r11
shr rax, 0x10
movzx ecx, al
movzx eax, r11b
xor rdx, qword [r13 + rcx*8 + 0x800]
xor rdx, qword [r13 + rax*8]
sub r9, rdx
xor r9, rsi
mov rax, r9
shr rax, 0x28
movzx ecx, al
mov rax, r9
shr rax, 0x18
movzx eax, al
mov rdx, qword [r13 + rcx*8 + 0x800]
mov rax, qword [r13 + rax*8 + 0x1000]
xor rdx, rax
mov rax, r9
shr rax, 8
movzx ecx, al
mov rax, r9
shr rax, 0x38
xor rdx, qword [r13 + rcx*8 + 0x1800]
xor rdx, qword [r13 + rax*8]
mov rax, r9
shr rax, 0x30
add r11, rdx
movzx ecx, al
mov rax, r9
shr rax, 0x20
movzx eax, al
lea r10, [r11 + r11*4]
mov rdx, qword [r13 + rcx*8 + 0x1800]
mov rax, qword [r13 + rax*8 + 0x1000]
xor rdx, rax
mov rax, r9
shr rax, 0x10
movzx ecx, al
movzx eax, r9b
xor rdx, qword [r13 + rcx*8 + 0x800]
xor rdx, qword [r13 + rax*8]
sub r8, rdx
xor r8, rbp
mov rax, r8
shr rax, 0x28
movzx ecx, al
mov rax, r8
shr rax, 0x18
movzx eax, al
mov rdx, qword [r13 + rcx*8 + 0x800]
mov rax, qword [r13 + rax*8 + 0x1000]
xor rdx, rax
mov rax, r8
shr rax, 8
movzx ecx, al
mov rax, r8
shr rax, 0x38
xor rdx, qword [r13 + rcx*8 + 0x1800]
xor rdx, qword [r13 + rax*8]
mov rax, r8
shr rax, 0x30
add r9, rdx
movzx ecx, al
mov rax, r8
shr rax, 0x20
movzx eax, al
lea rbx, [r9 + r9*4]
mov rdx, qword [r13 + rcx*8 + 0x1800]
mov rax, qword [r13 + rax*8 + 0x1000]
xor rdx, rax
mov rax, r8
shr rax, 0x10
movzx ecx, al
movzx eax, r8b
xor rdx, qword [r13 + rcx*8 + 0x800]
xor rdx, qword [r13 + rax*8]
sub r10, rdx
xor r10, r12
mov rax, r10
shr rax, 0x28
movzx ecx, al
mov rax, r10
shr rax, 0x18
movzx eax, al
mov rdx, qword [r13 + rcx*8 + 0x800]
mov rax, qword [r13 + rax*8 + 0x1000]
xor rdx, rax
mov rax, r10
shr rax, 8
movzx ecx, al
xor rdx, qword [r13 + rcx*8 + 0x1800]
mov rax, r10
shr rax, 0x38
xor rdx, qword [r13 + rax*8]
mov rax, r10
shr rax, 0x30
add r8, rdx
movzx ecx, al
mov rax, r10
shr rax, 0x20
movzx eax, al
lea r9, [r8 + r8*4]
mov r8, qword [rsp]
mov rdx, qword [r13 + rcx*8 + 0x1800]
mov rax, qword [r13 + rax*8 + 0x1000]
xor rdx, rax
mov rax, r10
shr rax, 0x10
movzx ecx, al
movzx eax, r10b
xor rdx, qword [r13 + rcx*8 + 0x800]
xor rdx, qword [r13 + rax*8]
sub rbx, rdx
xor rbx, r8
mov rax, rbx
shr rax, 0x28
movzx ecx, al
mov rax, rbx
shr rax, 0x18
movzx eax, al
mov rdx, qword [r13 + rcx*8 + 0x800]
mov rax, qword [r13 + rax*8 + 0x1000]
xor rdx, rax
mov rax, rbx
shr rax, 8
movzx ecx, al
mov rax, rbx
shr rax, 0x38
xor rdx, qword [r13 + rcx*8 + 0x1800]
movabs rcx, 0xa5a5a5a5a5a5a5a5
xor rdx, qword [r13 + rax*8]
mov rax, r8
xor rax, rcx
add r10, rdx
mov rcx, qword [rsp + 8]
sub r14, rax
xor rcx, r14
mov rax, rcx
not rax
lea r11, [r10 + r10*4]
shl rax, 0x13
lea r10, [rdi + rcx]
xor rax, r10
sub r15, rax
mov rdi, r15
xor rdi, rsi
mov rax, rdi
not rax
shr rax, 0x17
lea r13, [rdi + rbp]
xor rax, r13
sub r12, rax
xor r8, r12
add r14, r8
mov rax, r8
not rax
shl rax, 0x13
xor rax, r14
sub rcx, rax
xor r10, rcx
mov qword [rsp + 8], rcx
add r15, r10
mov qword [rsp + 0x18], r10
mov rax, r10
not rax
shr rax, 0x17
xor rax, r15
sub rdi, rax
xor r13, rdi
mov qword [rsp + 0x10], rdi
add r12, r13
lea rsi, [0x140069480]
movabs rcx, 0x123456789abcdef
mov rax, r12
xor rax, rcx
sub r8, rax
mov rax, rbx
shr rax, 0x30
movzx ecx, al
mov rax, rbx
shr rax, 0x20
movzx eax, al
mov qword [rsp], r8
mov rdx, qword [rsi + rcx*8 + 0x1800]
mov rax, qword [rsi + rax*8 + 0x1000]
xor rdx, rax
mov rax, rbx
shr rax, 0x10
movzx ecx, al
movzx eax, bl
xor rdx, qword [rsi + rcx*8 + 0x800]
xor rdx, qword [rsi + rax*8]
sub r9, rdx
xor r9, r14
mov rax, r9
shr rax, 0x28
movzx ecx, al
mov rax, r9
shr rax, 0x18
movzx eax, al
mov rdx, qword [rsi + rcx*8 + 0x800]
mov rax, qword [rsi + rax*8 + 0x1000]
xor rdx, rax
mov rax, r9
shr rax, 8
movzx ecx, al
mov rax, r9
shr rax, 0x38
xor rdx, qword [rsi + rcx*8 + 0x1800]
xor rdx, qword [rsi + rax*8]
mov rax, r9
shr rax, 0x30
add rbx, rdx
movzx ecx, al
mov rax, r9
shr rax, 0x20
movzx eax, al
imul r8, rbx, 7
mov rax, qword [rsi + rax*8 + 0x1000]
mov rdx, qword [rsi + rcx*8 + 0x1800]
xor rdx, rax
mov rax, r9
shr rax, 0x10
movzx ecx, al
movzx eax, r9b
xor rdx, qword [rsi + rcx*8 + 0x800]
xor rdx, qword [rsi + rax*8]
sub r11, rdx
xor r11, qword [rsp + 8]
mov rax, r11
shr rax, 0x28
movzx ecx, al
mov rax, r11
shr rax, 0x18
movzx eax, al
mov rdx, qword [rsi + rcx*8 + 0x800]
mov rax, qword [rsi + rax*8 + 0x1000]
xor rdx, rax
mov rax, r11
shr rax, 8
movzx ecx, al
mov rax, r11
shr rax, 0x38
xor rdx, qword [rsi + rcx*8 + 0x1800]
xor rdx, qword [rsi + rax*8]
mov rax, r11
shr rax, 0x30
add r9, rdx
movzx ecx, al
mov rax, r11
imul r9, r9, 7
shr rax, 0x20
movzx eax, al
mov rdx, qword [rsi + rcx*8 + 0x1800]
mov rax, qword [rsi + rax*8 + 0x1000]
xor rdx, rax
mov rax, r11
shr rax, 0x10
movzx ecx, al
movzx eax, r11b
xor rdx, qword [rsi + rcx*8 + 0x800]
xor rdx, qword [rsi + rax*8]
sub r8, rdx
xor r8, r10
mov rax, r8
shr rax, 0x28
movzx ecx, al
mov rax, r8
shr rax, 0x18
movzx eax, al
mov rdx, qword [rsi + rcx*8 + 0x800]
mov rax, qword [rsi + rax*8 + 0x1000]
xor rdx, rax
mov rax, r8
shr rax, 8
movzx ecx, al
mov rax, r8
shr rax, 0x38
xor rdx, qword [rsi + rcx*8 + 0x1800]
xor rdx, qword [rsi + rax*8]
mov rax, r8
shr rax, 0x30
add r11, rdx
movzx ecx, al
mov rax, r8
shr rax, 0x20
movzx eax, al
imul r10, r11, 7
mov rax, qword [rsi + rax*8 + 0x1000]
mov rdx, qword [rsi + rcx*8 + 0x1800]
xor rdx, rax
mov rax, r8
shr rax, 0x10
movzx ecx, al
movzx eax, r8b
xor rdx, qword [rsi + rcx*8 + 0x800]
xor rdx, qword [rsi + rax*8]
sub r9, rdx
xor r9, r15
mov rax, r9
shr rax, 0x28
movzx ecx, al
mov rax, r9
shr rax, 0x18
movzx eax, al
mov rdx, qword [rsi + rcx*8 + 0x800]
mov rax, qword [rsi + rax*8 + 0x1000]
xor rdx, rax
mov rax, r9
shr rax, 8
movzx ecx, al
mov rax, r9
shr rax, 0x38
xor rdx, qword [rsi + rcx*8 + 0x1800]
xor rdx, qword [rsi + rax*8]
mov rax, r9
shr rax, 0x30
add r8, rdx
movzx ecx, al
mov rax, r9
shr rax, 0x20
movzx eax, al
imul r11, r8, 7
mov rax, qword [rsi + rax*8 + 0x1000]
mov rdx, qword [rsi + rcx*8 + 0x1800]
xor rdx, rax
mov rax, r9
shr rax, 0x10
movzx ecx, al
movzx eax, r9b
xor rdx, qword [rsi + rcx*8 + 0x800]
xor rdx, qword [rsi + rax*8]
sub r10, rdx
xor r10, rdi
mov rax, r10
shr rax, 0x28
movzx ecx, al
mov rax, r10
shr rax, 0x18
movzx eax, al
mov rdx, qword [rsi + rcx*8 + 0x800]
mov rax, qword [rsi + rax*8 + 0x1000]
xor rdx, rax
mov rax, r10
shr rax, 8
movzx ecx, al
mov rax, r10
shr rax, 0x38
xor rdx, qword [rsi + rcx*8 + 0x1800]
xor rdx, qword [rsi + rax*8]
mov rax, r10
shr rax, 0x30
add r9, rdx
movzx ecx, al
mov rax, r10
shr rax, 0x20
movzx eax, al
imul r8, r9, 7
mov rax, qword [rsi + rax*8 + 0x1000]
mov rdx, qword [rsi + rcx*8 + 0x1800]
xor rdx, rax
mov rax, r10
shr rax, 0x10
movzx ecx, al
movzx eax, r10b
xor rdx, qword [rsi + rcx*8 + 0x800]
xor rdx, qword [rsi + rax*8]
sub r11, rdx
xor r11, r13
mov rax, r11
shr rax, 0x28
movzx ecx, al
mov rax, r11
shr rax, 0x18
movzx eax, al
mov rdx, qword [rsi + rcx*8 + 0x800]
mov rax, qword [rsi + rax*8 + 0x1000]
xor rdx, rax
mov rax, r11
shr rax, 8
movzx ecx, al
mov rax, r11
shr rax, 0x38
xor rdx, qword [rsi + rcx*8 + 0x1800]
xor rdx, qword [rsi + rax*8]
mov rax, r11
shr rax, 0x30
add r10, rdx
movzx ecx, al
mov rax, r11
shr rax, 0x20
movzx eax, al
imul rbx, r10, 7
mov rax, qword [rsi + rax*8 + 0x1000]
mov rdx, qword [rsi + rcx*8 + 0x1800]
xor rdx, rax
mov rax, r11
shr rax, 0x10
movzx ecx, al
movzx eax, r11b
xor rdx, qword [rsi + rcx*8 + 0x800]
xor rdx, qword [rsi + rax*8]
sub r8, rdx
xor r8, r12
mov rax, r8
shr rax, 0x28
movzx ecx, al
mov rax, r8
shr rax, 0x18
movzx eax, al
mov rdx, qword [rsi + rcx*8 + 0x800]
mov rax, qword [rsi + rax*8 + 0x1000]
xor rdx, rax
mov rax, r8
shr rax, 8
movzx ecx, al
mov rax, r8
shr rax, 0x38
mov r10, qword [rsp + 0x18]
xor rdx, qword [rsi + rcx*8 + 0x1800]
xor rdx, qword [rsi + rax*8]
mov rax, r8
shr rax, 0x30
add r11, rdx
movzx ecx, al
mov rax, r8
shr rax, 0x20
movzx eax, al
imul rdi, r11, 7
mov rax, qword [rsi + rax*8 + 0x1000]
mov rdx, qword [rsi + rcx*8 + 0x1800]
mov r11, qword [rsp]
xor rdx, rax
mov rax, r8
shr rax, 0x10
movzx ecx, al
movzx eax, r8b
xor rdx, qword [rsi + rcx*8 + 0x800]
xor rdx, qword [rsi + rax*8]
sub rbx, rdx
xor rbx, r11
mov rax, rbx
shr rax, 0x28
movzx ecx, al
mov rax, rbx
shr rax, 0x18
movzx eax, al
mov rdx, qword [rsi + rcx*8 + 0x800]
mov rax, qword [rsi + rax*8 + 0x1000]
xor rdx, rax
mov rax, rbx
shr rax, 8
movzx ecx, al
mov rax, rbx
shr rax, 0x38
xor rdx, qword [rsi + rcx*8 + 0x1800]
movabs rcx, 0xa5a5a5a5a5a5a5a5
xor rdx, qword [rsi + rax*8]
mov rax, r11
xor rax, rcx
add r8, rdx
sub r14, rax
mov r9, r14
mov qword [rsp], r14
xor r9, qword [rsp + 8]
add r10, r9
mov rax, r9
not rax
shl rax, 0x13
xor rax, r10
sub r15, rax
imul rsi, r8, 7
mov r8, qword [rsp]
mov rbp, r15
xor rbp, qword [rsp + 0x10]
mov rax, rbp
mov r14, rbp
not rax
add r14, r13
shr rax, 0x17
xor rax, r14
sub r12, rax
mov qword [rsp + 0x10], r12
xor r12, r11
add r8, r12
mov rax, r12
not rax
shl rax, 0x13
xor rax, r8
sub r9, rax
xor r10, r9
mov rax, r10
not rax
shr rax, 0x17
lea r11, [r10 + r15]
xor rax, r11
mov r15, qword [rsp + 0x10]
sub rbp, rax
lea r13, [0x140069480]
mov rax, rbx
xor r14, rbp
shr rax, 0x30
add r15, r14
movzx ecx, al
mov rax, rbx
shr rax, 0x20
movzx eax, al
mov rdx, qword [r13 + rcx*8 + 0x1800]
mov rax, qword [r13 + rax*8 + 0x1000]
xor rdx, rax
mov rax, rbx
shr rax, 0x10
movzx ecx, al
movzx eax, bl
xor rdx, qword [r13 + rcx*8 + 0x800]
xor rdx, qword [r13 + rax*8]
sub rdi, rdx
xor rdi, r8
mov rax, rdi
shr rax, 0x28
movzx ecx, al
mov rax, rdi
shr rax, 0x18
movzx eax, al
mov rdx, qword [r13 + rcx*8 + 0x800]
mov rax, qword [r13 + rax*8 + 0x1000]
xor rdx, rax
mov rax, rdi
shr rax, 8
movzx ecx, al
mov rax, rdi
shr rax, 0x38
xor rdx, qword [r13 + rcx*8 + 0x1800]
xor rdx, qword [r13 + rax*8]
mov rax, rdi
shr rax, 0x30
add rbx, rdx
movzx ecx, al
mov rax, rdi
shr rax, 0x20
movzx eax, al
lea r8, [rbx + rbx*8]
mov rdx, qword [r13 + rcx*8 + 0x1800]
mov rax, qword [r13 + rax*8 + 0x1000]
xor rdx, rax
mov rax, rdi
shr rax, 0x10
movzx ecx, al
movzx eax, dil
xor rdx, qword [r13 + rcx*8 + 0x800]
xor rdx, qword [r13 + rax*8]
sub rsi, rdx
xor rsi, r9
mov rax, rsi
shr rax, 0x28
movzx ecx, al
mov rax, rsi
shr rax, 0x18
movzx eax, al
mov rdx, qword [r13 + rcx*8 + 0x800]
mov rax, qword [r13 + rax*8 + 0x1000]
xor rdx, rax
mov rax, rsi
shr rax, 8
movzx ecx, al
mov rax, rsi
shr rax, 0x38
xor rdx, qword [r13 + rcx*8 + 0x1800]
xor rdx, qword [r13 + rax*8]
mov rax, rsi
shr rax, 0x30
add rdi, rdx
movzx ecx, al
mov rax, rsi
shr rax, 0x20
lea r9, [rdi + rdi*8]
movzx eax, al
mov rdx, qword [r13 + rcx*8 + 0x1800]
mov rax, qword [r13 + rax*8 + 0x1000]
xor rdx, rax
mov rax, rsi
shr rax, 0x10
movzx ecx, al
movzx eax, sil
xor rdx, qword [r13 + rcx*8 + 0x800]
xor rdx, qword [r13 + rax*8]
sub r8, rdx
xor r8, r10
mov rax, r8
shr rax, 0x28
movzx ecx, al
mov rax, r8
shr rax, 0x18
movzx eax, al
mov rdx, qword [r13 + rcx*8 + 0x800]
mov rax, qword [r13 + rax*8 + 0x1000]
xor rdx, rax
mov rax, r8
shr rax, 8
movzx ecx, al
mov rax, r8
shr rax, 0x38
xor rdx, qword [r13 + rcx*8 + 0x1800]
xor rdx, qword [r13 + rax*8]
mov rax, r8
shr rax, 0x30
add rsi, rdx
movzx ecx, al
mov rax, r8
shr rax, 0x20
movzx eax, al
lea r10, [rsi + rsi*8]
mov rdx, qword [r13 + rcx*8 + 0x1800]
mov rax, qword [r13 + rax*8 + 0x1000]
xor rdx, rax
mov rax, r8
shr rax, 0x10
movzx ecx, al
movzx eax, r8b
xor rdx, qword [r13 + rcx*8 + 0x800]
xor rdx, qword [r13 + rax*8]
sub r9, rdx
xor r9, r11
mov rax, r9
shr rax, 0x28
movzx ecx, al
mov rax, r9
shr rax, 0x18
movzx eax, al
mov rdx, qword [r13 + rcx*8 + 0x800]
mov rax, qword [r13 + rax*8 + 0x1000]
xor rdx, rax
mov rax, r9
shr rax, 8
movzx ecx, al
mov rax, r9
shr rax, 0x38
xor rdx, qword [r13 + rcx*8 + 0x1800]
xor rdx, qword [r13 + rax*8]
mov rax, r9
shr rax, 0x30
add r8, rdx
movzx ecx, al
mov rax, r9
shr rax, 0x20
movzx eax, al
lea r11, [r8 + r8*8]
mov rdx, qword [r13 + rcx*8 + 0x1800]
mov rax, qword [r13 + rax*8 + 0x1000]
xor rdx, rax
mov rax, r9
shr rax, 0x10
movzx ecx, al
movzx eax, r9b
xor rdx, qword [r13 + rcx*8 + 0x800]
xor rdx, qword [r13 + rax*8]
sub r10, rdx
xor r10, rbp
mov rax, r10
shr rax, 0x28
movzx ecx, al
mov rax, r10
shr rax, 0x18
movzx eax, al
mov rdx, qword [r13 + rcx*8 + 0x800]
mov rax, qword [r13 + rax*8 + 0x1000]
xor rdx, rax
mov rax, r10
shr rax, 8
movzx ecx, al
mov rax, r10
shr rax, 0x38
xor rdx, qword [r13 + rcx*8 + 0x1800]
xor rdx, qword [r13 + rax*8]
mov rax, r10
shr rax, 0x30
add r9, rdx
movzx ecx, al
mov rax, r10
shr rax, 0x20
movzx eax, al
lea rbx, [r9 + r9*8]
mov rdx, qword [r13 + rcx*8 + 0x1800]
mov rax, qword [r13 + rax*8 + 0x1000]
xor rdx, rax
mov rax, r10
shr rax, 0x10
movzx ecx, al
movzx eax, r10b
xor rdx, qword [r13 + rcx*8 + 0x800]
xor rdx, qword [r13 + rax*8]
sub r11, rdx
xor r11, r14
mov rax, r11
shr rax, 0x28
movzx ecx, al
mov rax, r11
shr rax, 0x18
movzx eax, al
mov rdx, qword [r13 + rcx*8 + 0x800]
mov rax, qword [r13 + rax*8 + 0x1000]
xor rdx, rax
mov rax, r11
shr rax, 8
movzx ecx, al
mov rax, r11
shr rax, 0x38
xor rdx, qword [r13 + rcx*8 + 0x1800]
xor rdx, qword [r13 + rax*8]
mov rax, r11
shr rax, 0x30
add r10, rdx
movzx ecx, al
mov rax, r11
shr rax, 0x20
movzx eax, al
lea r9, [r10 + r10*8]
mov rdx, qword [r13 + rcx*8 + 0x1800]
mov rax, qword [r13 + rax*8 + 0x1000]
xor rdx, rax
mov rax, r11
shr rax, 0x10
movzx ecx, al
movzx eax, r11b
xor rdx, qword [r13 + rcx*8 + 0x800]
xor rdx, qword [r13 + rax*8]
sub rbx, rdx
xor rbx, r15
mov rax, rbx
shr rax, 0x28
movzx ecx, al
mov rax, rbx
shr rax, 0x18
movzx eax, al
mov rdx, qword [r13 + rcx*8 + 0x800]
mov rax, qword [r13 + rax*8 + 0x1000]
xor rdx, rax
mov rax, rbx
shr rax, 8
movzx ecx, al
mov rax, rbx
shr rax, 0x38
xor rdx, qword [r13 + rcx*8 + 0x1800]
xor rdx, qword [r13 + rax*8]
mov rax, rbx
shr rax, 0x30
add r11, rdx
movzx ecx, al
mov rax, rbx
shr rax, 0x20
movzx eax, al
lea r8, [r11 + r11*8]
mov rdx, qword [r13 + rcx*8 + 0x1800]
lea r11, [rsp + 0x40]
mov rbp, qword [r11 + 0x40]
mov rax, qword [r13 + rax*8 + 0x1000]
xor rdx, rax
mov rsi, qword [r11 + 0x48]
mov rax, rbx
shr rax, 0x10
movzx ecx, al
movzx eax, bl
xor rdx, qword [r13 + rcx*8 + 0x800]
xor rdx, qword [r13 + rax*8]
movabs rax, 0x123456789abcdef
xor r15, rax
sub r9, rdx
sub r12, r15
xor r9, r12
mov rax, r9
shr rax, 0x30
movzx ecx, al
mov rax, r9
shr rax, 0x20
movzx eax, al
mov rdx, qword [r13 + rcx*8 + 0x1800]
mov rax, qword [r13 + rax*8 + 0x1000]
xor rdx, rax
mov rax, r9
shr rax, 0x10
movzx ecx, al
movzx eax, r9b
xor rdx, qword [r13 + rcx*8 + 0x800]
xor rdx, qword [r13 + rax*8]
mov rax, r9
shr rax, 0x28
sub r8, rdx
movzx ecx, al
mov rax, r9
shr rax, 0x18
movzx eax, al
mov rdx, qword [r13 + rcx*8 + 0x800]
mov rax, qword [r13 + rax*8 + 0x1000]
xor rdx, rax
mov rax, r9
shr rax, 8
movzx ecx, al
mov rax, r9
sub r9, qword [rsp + 0x30]
shr rax, 0x38
xor rdx, qword [r13 + rcx*8 + 0x1800]
mov rcx, qword [rsp + 0x20]
xor rdx, qword [r13 + rax*8]
add rbx, rdx
mov rdx, qword [rsp + 0x28]
lea rax, [rbx + rbx*8]
mov qword [rdx + 8], r9
mov rbx, qword [r11 + 0x38]
xor rcx, rax
mov rax, qword [rsp + 0x38]
add rax, r8
mov qword [rdx], rcx
mov qword [rdx + 0x10], rax
xor eax, eax
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret