Function at 0x140140f74
Capabilities:
Hash data using tiger

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xa8
xorps xmm0, xmm0
movaps xmmword [rsp + 0x90], xmm0
movaps xmmword [rsp + 0x80], xmm0
movaps xmmword [rsp + 0x70], xmm0
movaps xmmword [rsp + 0x60], xmm0
xor eax, eax
cmp rax, 8
je 0x140140fba
mov r8, qword [rdx + rax*8]
mov qword [rsp + rax*8 + 0x60], r8
inc rax
jmp 0x140140fa6
mov rdx, qword [rcx + 0x10]
mov qword [rsp + 0x58], rdx
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x30], rax
xor rax, rdx
mov edx, eax
mov rsi, rax
mov r14, rcx
mov r8d, eax
mov r9, rax
mov r10, rax
mov r11d, eax
shr r11d, 8
shr edx, 0x18
mov ecx, 0xff
and rsi, rcx
mov edi, 0xff
shr r8d, 0x10
mov r12d, 0xff
lea r15, [0x1401ffe38]
lea rcx, [0x140200638]
lea rbx, [0x140200e38]
and r11d, r12d
mov rdx, qword [rcx + rdx*8]
xor rdx, qword [rbx + r11*8]
mov ebp, 0x7f8
shr r10, 0x25
and r10, rbp
xor rdx, qword [r10 + r15]
lea r11, [0x1401ff638]
and r8d, r12d
mov r8, qword [r15 + r8*8]
shr r9, 0x1d
and r9, rbp
xor r8, qword [r11 + rsi*8]
xor r8, qword [r9 + rcx]
mov r13, rcx
mov rcx, rax
mov r9, rax
shr rcx, 0x2d
and rcx, rbp
xor r8, qword [rcx + rbx]
mov qword [rsp + 0x40], r14
mov r12, qword [r14]
mov qword [rsp + 0x50], r12
shr r9, 0x38
xor rdx, qword [r11 + r9*8]
sub r12, r8
mov rcx, qword [rsp + 0x68]
mov qword [rsp + 0x28], rcx
xor r12, rcx
mov r8d, r12d
shr r8d, 8
mov ecx, r12d
shr ecx, 0x18
mov r10d, 0xff
and r8d, r10d
mov rcx, qword [r13 + rcx*8]
xor rcx, qword [rbx + r8*8]
mov r8, r12
shr r8, 0x25
and r8, rbp
xor rcx, qword [r8 + r15]
mov r8, r12
and r8, rdi
mov r9d, r12d
shr r9d, 0x10
and r9d, r10d
mov esi, 0xff
mov r9, qword [r15 + r9*8]
xor r9, qword [r11 + r8*8]
mov r8, r12
shr r8, 0x1d
and r8, rbp
xor r9, qword [r8 + r13]
mov r8, r12
shr r8, 0x2d
and r8, rbp
xor r9, qword [r8 + rbx]
mov r8, qword [r14 + 8]
mov qword [rsp + 0x48], r8
add rdx, r8
lea rdx, [rdx + rdx*4]
sub rdx, r9
mov r8, r12
shr r8, 0x38
xor rcx, qword [r11 + r8*8]
mov r8, qword [rsp + 0x70]
mov qword [rsp], r8
xor rdx, r8
mov r9d, edx
shr r9d, 8
mov r8d, edx
shr r8d, 0x18
and r9d, esi
mov r14, r13
mov r8, qword [r13 + r8*8]
xor r8, qword [rbx + r9*8]
add rcx, rax
mov rax, rdx
shr rax, 0x25
and rax, rbp
xor r8, qword [rax + r15]
mov rax, rdx
and rax, rdi
mov r9d, edx
shr r9d, 0x10
and r9d, esi
mov r9, qword [r15 + r9*8]
xor r9, qword [r11 + rax*8]
mov rax, rdx
shr rax, 0x1d
and rax, rbp
xor r9, qword [rax + r13]
mov rax, rdx
shr rax, 0x2d
and rax, rbp
xor r9, qword [rax + rbx]
lea rcx, [rcx + rcx*4]
sub rcx, r9
mov rax, rdx
shr rax, 0x38
xor r8, qword [r11 + rax*8]
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x10], rax
xor rcx, rax
mov r9d, ecx
shr r9d, 8
mov eax, ecx
shr eax, 0x18
and r9d, esi
mov rax, qword [r13 + rax*8]
xor rax, qword [rbx + r9*8]
add r8, r12
mov r9, rcx
shr r9, 0x25
and r9, rbp
mov r12, r15
xor rax, qword [r9 + r15]
mov r9, rcx
and r9, rdi
mov r10d, ecx
shr r10d, 0x10
and r10d, esi
mov r10, qword [r15 + r10*8]
xor r10, qword [r11 + r9*8]
mov r9, rcx
shr r9, 0x1d
and r9, rbp
xor r10, qword [r9 + r13]
mov r9, rcx
shr r9, 0x2d
and r9, rbp
xor r10, qword [r9 + rbx]
lea r13, [r8 + r8*4]
sub r13, r10
mov r8, rcx
shr r8, 0x38
xor rax, qword [r11 + r8*8]
mov r8, qword [rsp + 0x80]
mov qword [rsp + 8], r8
xor r13, r8
mov r9d, r13d
shr r9d, 8
mov r8d, r13d
shr r8d, 0x18
and r9d, esi
mov r8, qword [r14 + r8*8]
xor r8, qword [rbx + r9*8]
add rax, rdx
mov rdx, r13
shr rdx, 0x25
and rdx, rbp
xor r8, qword [rdx + r15]
mov rdx, r13
and rdx, rdi
mov r9d, r13d
shr r9d, 0x10
and r9d, esi
mov r10, qword [r15 + r9*8]
xor r10, qword [r11 + rdx*8]
mov rdx, r13
shr rdx, 0x1d
and rdx, rbp
xor r10, qword [rdx + r14]
mov rdx, r13
shr rdx, 0x2d
and rdx, rbp
xor r10, qword [rdx + rbx]
lea r9, [rax + rax*4]
sub r9, r10
mov rax, r13
shr rax, 0x38
xor r8, qword [r11 + rax*8]
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0x18], rax
xor r9, rax
mov edx, r9d
shr edx, 8
mov eax, r9d
shr eax, 0x18
mov r10d, 0xff
and edx, r10d
mov rax, qword [r14 + rax*8]
xor rax, qword [rbx + rdx*8]
add r8, rcx
mov rcx, r9
shr rcx, 0x25
and rcx, rbp
xor rax, qword [rcx + r15]
mov rcx, r9
and rcx, rdi
mov r15d, 0xff
mov edx, r9d
shr edx, 0x10
and edx, r10d
mov rdx, qword [r12 + rdx*8]
xor rdx, qword [r11 + rcx*8]
mov rcx, r9
shr rcx, 0x1d
and rcx, rbp
xor rdx, qword [rcx + r14]
mov rcx, r9
shr rcx, 0x2d
and rcx, rbp
xor rdx, qword [rcx + rbx]
mov rdi, rbx
lea r10, [r8 + r8*4]
sub r10, rdx
mov rcx, r9
shr rcx, 0x38
xor rax, qword [r11 + rcx*8]
mov rcx, qword [rsp + 0x90]
mov qword [rsp + 0x20], rcx
xor r10, rcx
mov ecx, r10d
shr ecx, 8
mov edx, r10d
shr edx, 0x18
and ecx, esi
mov rbx, r14
mov rdx, qword [r14 + rdx*8]
xor rdx, qword [rdi + rcx*8]
add rax, r13
mov rcx, r10
shr rcx, 0x25
and rcx, rbp
xor rdx, qword [rcx + r12]
mov rcx, r10
and rcx, r15
mov r8d, r10d
shr r8d, 0x10
and r8d, esi
mov r14d, 0xff
mov r13, qword [r12 + r8*8]
mov r8, r11
xor r13, qword [r11 + rcx*8]
mov rcx, r10
shr rcx, 0x1d
and rcx, rbp
xor r13, qword [rcx + rbx]
mov r15, rbx
mov rcx, r10
shr rcx, 0x2d
and rcx, rbp
xor r13, qword [rcx + rdi]
lea r11, [rax + rax*4]
sub r11, r13
mov rax, r10
shr rax, 0x38
xor rdx, qword [r8 + rax*8]
mov rbx, qword [rsp + 0x98]
xor r11, rbx
mov eax, r11d
shr eax, 8
mov ecx, r11d
shr ecx, 0x18
and eax, r14d
mov r13d, 0xff
mov rcx, qword [r15 + rcx*8]
mov r14, rdi
xor rcx, qword [rdi + rax*8]
movabs r8, 0x5a5a5a5a5a5a5a5a
mov rax, rbx
xor rax, r8
mov r8, qword [rsp + 0x30]
lea rdi, [r8 + rax]
lea rsi, [r8 + rax]
inc rsi
mov rax, r11
shr rax, 0x25
and rax, rbp
xor rcx, qword [rax + r12]
mov rax, r11
mov r8d, 0xff
and rax, r8
mov r8d, r11d
shr r8d, 0x10
and r8d, r13d
mov r8, qword [r12 + r8*8]
lea r13, [0x1401ff638]
xor r8, qword [r13 + rax*8]
mov rax, r11
shr rax, 0x1d
and rax, rbp
xor r8, qword [rax + r15]
mov rax, r11
shr rax, 0x2d
and rax, rbp
xor r8, qword [rax + r14]
add rdx, r9
lea rdx, [rdx + rdx*4]
sub rdx, r8
mov rax, r11
shr rax, 0x38
xor rcx, qword [r13 + rax*8]
mov r14, rsi
xor r14, qword [rsp + 0x28]
mov r8, qword [rsp]
add r8, r14
mov qword [rsp], r8
mov rax, r14
not rax
shl rax, 0x13
xor rax, r8
mov r8, qword [rsp + 0x10]
sub r8, rax
mov qword [rsp + 0x10], r8
mov rax, qword [rsp + 8]
xor rax, r8
mov qword [rsp + 8], rax
mov r12, qword [rsp + 0x18]
add r12, rax
mov qword [rsp + 0x18], r12
not rax
shr rax, 0x17
xor rax, r12
mov r15, qword [rsp + 0x20]
sub r15, rax
mov qword [rsp + 0x20], r15
xor rbx, r15
lea rax, [rbx + rdi]
inc rax
mov r13, rbx
mov qword [rsp + 0x28], rbx
xor rdx, rax
mov rdi, rax
mov qword [rsp + 0x30], rax
mov eax, edx
shr eax, 8
mov r8d, edx
shr r8d, 0x18
mov r12d, 0xff
and eax, r12d
lea rbx, [0x140200638]
mov r9, qword [rbx + r8*8]
lea rsi, [0x140200e38]
xor r9, qword [rsi + rax*8]
add rcx, r10
mov rax, rdx
shr rax, 0x25
and rax, rbp
lea r10, [0x1401ffe38]
xor r9, qword [rax + r10]
mov rax, rdx
mov r8d, 0xff
and rax, r8
mov r8d, edx
shr r8d, 0x10
and r8d, r12d
mov r8, qword [r10 + r8*8]
lea r10, [0x1401ff638]
xor r8, qword [r10 + rax*8]
mov rax, rdx
shr rax, 0x1d
and rax, rbp
xor r8, qword [rax + rbx]
mov r15, rbx
mov rax, rdx
shr rax, 0x2d
and rax, rbp
xor r8, qword [rax + rsi]
mov r12, rsi
mov rax, r13
not rax
shl rax, 0x13
xor rax, rdi
mov rsi, r14
sub rsi, rax
lea rax, [rcx + rcx*4]
sub rax, r8
mov rcx, rdx
shr rcx, 0x38
xor r9, qword [r10 + rcx*8]
mov rdi, r10
xor rax, rsi
mov qword [rsp + 0x38], rsi
mov ecx, eax
shr ecx, 8
mov r8d, eax
shr r8d, 0x18
mov ebx, 0xff
and ecx, ebx
mov r13, r15
mov r10, qword [r15 + r8*8]
mov r14, r12
xor r10, qword [r12 + rcx*8]
add r9, r11
mov rcx, rax
shr rcx, 0x25
and rcx, rbp
lea r12, [0x1401ffe38]
xor r10, qword [rcx + r12]
mov rcx, rax
mov r11d, 0xff
and rcx, r11
mov r8d, eax
shr r8d, 0x10
and r8d, ebx
mov r8, qword [r12 + r8*8]
mov r15, rdi
xor r8, qword [rdi + rcx*8]
mov rcx, rax
shr rcx, 0x1d
and rcx, rbp
xor r8, qword [rcx + r13]
mov rcx, rax
shr rcx, 0x2d
and rcx, rbp
xor r8, qword [rcx + r14]
mov rdi, r14
imul rcx, r9, 7
sub rcx, r8
mov r8, rax
shr r8, 0x38
xor r10, qword [r15 + r8*8]
mov r14, r15
mov r8, qword [rsp]
xor r8, rsi
xor rcx, r8
mov rsi, r8
mov r9d, ecx
shr r9d, 8
mov r8d, ecx
shr r8d, 0x18
and r9d, ebx
mov r8, qword [r13 + r8*8]
xor r8, qword [rdi + r9*8]
add r10, rdx
mov rdx, rcx
shr rdx, 0x25
and rdx, rbp
mov r15, r12
xor r8, qword [rdx + r12]
mov rdx, rcx
and rdx, r11
mov r9d, ecx
shr r9d, 0x10
and r9d, ebx
mov r12d, 0xff
mov r11, qword [r15 + r9*8]
xor r11, qword [r14 + rdx*8]
mov rdx, rcx
shr rdx, 0x1d
and rdx, rbp
xor r11, qword [rdx + r13]
mov rdx, rcx
shr rdx, 0x2d
and rdx, rbp
xor r11, qword [rdx + rdi]
imul r9, r10, 7
sub r9, r11
mov rdx, rcx
shr rdx, 0x38
xor r8, qword [r14 + rdx*8]
mov rdx, qword [rsp + 0x10]
mov qword [rsp], rsi
add rdx, rsi
xor r9, rdx
mov r11, rdx
mov qword [rsp + 0x10], rdx
mov r10d, r9d
shr r10d, 8
mov edx, r9d
shr edx, 0x18
and r10d, r12d
mov rdx, qword [r13 + rdx*8]
xor rdx, qword [rdi + r10*8]
mov rbx, rdi
not rsi
shr rsi, 0x17
xor rsi, r11
mov r15, qword [rsp + 8]
sub r15, rsi
mov r10, r9
shr r10, 0x25
and r10, rbp
lea rsi, [0x1401ffe38]
xor rdx, qword [r10 + rsi]
mov r10, r9
mov r11d, 0xff
and r10, r11
mov r11d, r9d
shr r11d, 0x10
and r11d, r12d
mov r11, qword [rsi + r11*8]
xor r11, qword [r14 + r10*8]
mov r10, r9
shr r10, 0x1d
and r10, rbp
xor r11, qword [r10 + r13]
mov r10, r9
shr r10, 0x2d
and r10, rbp
xor r11, qword [r10 + rdi]
add r8, rax
imul rax, r8, 7
sub rax, r11
mov r8, r9
shr r8, 0x38
xor rdx, qword [r14 + r8*8]
xor rax, r15
mov rdi, r15
mov qword [rsp + 8], r15
mov r10d, eax
shr r10d, 8
mov r8d, eax
shr r8d, 0x18
and r10d, r12d
mov r11, r13
mov r8, qword [r13 + r8*8]
xor r8, qword [rbx + r10*8]
add rdx, rcx
mov rcx, rax
shr rcx, 0x25
and rcx, rbp
lea r13, [0x1401ffe38]
xor r8, qword [rcx + r13]
mov rcx, rax
mov r10d, 0xff
and rcx, r10
mov r10d, eax
shr r10d, 0x10
and r10d, r12d
mov r10, qword [r13 + r10*8]
xor r10, qword [r14 + rcx*8]
mov rcx, rax
shr rcx, 0x1d
and rcx, rbp
xor r10, qword [rcx + r11]
mov rcx, rax
shr rcx, 0x2d
and rcx, rbp
xor r10, qword [rcx + rbx]
mov rsi, rbx
imul rcx, rdx, 7
sub rcx, r10
mov rdx, rax
shr rdx, 0x38
xor r8, qword [r14 + rdx*8]
mov r15, qword [rsp + 0x18]
xor r15, rdi
xor rcx, r15
mov qword [rsp + 0x18], r15
mov r10d, ecx
shr r10d, 8
mov edx, ecx
shr edx, 0x18
mov edi, 0xff
and r10d, edi
mov rbx, r11
mov rdx, qword [r11 + rdx*8]
xor rdx, qword [rsi + r10*8]
add r8, r9
mov r9, rcx
shr r9, 0x25
and r9, rbp
mov r11, r13
xor rdx, qword [r9 + r13]
mov r9, rcx
mov r10d, 0xff
and r9, r10
mov r10d, ecx
shr r10d, 0x10
and r10d, edi
mov r10, qword [r13 + r10*8]
mov r12, r14
xor r10, qword [r14 + r9*8]
mov r9, rcx
shr r9, 0x1d
and r9, rbp
xor r10, qword [r9 + rbx]
mov r14, rbx
mov r9, rcx
shr r9, 0x2d
and r9, rbp
xor r10, qword [r9 + rsi]
mov rdi, rsi
imul r8, r8, 7
sub r8, r10
mov r9, rcx
shr r9, 0x38
xor rdx, qword [r12 + r9*8]
mov rbx, qword [rsp + 0x20]
add rbx, r15
xor r8, rbx
mov r10d, r8d
shr r10d, 8
mov r9d, r8d
shr r9d, 0x18
mov esi, 0xff
and r10d, esi
mov r9, qword [r14 + r9*8]
mov r13, rdi
xor r9, qword [rdi + r10*8]
add rdx, rax
movabs r10, 0xfedcba9876543210
mov rax, rbx
xor rax, r10
mov r10, qword [rsp + 0x28]
lea rdi, [r10 + rax]
inc rdi
mov rax, r8
shr rax, 0x25
and rax, rbp
xor r9, qword [rax + r11]
mov rax, r8
mov r10d, 0xff
and rax, r10
mov r10d, r8d
shr r10d, 0x10
and r10d, esi
mov r10, qword [r11 + r10*8]
xor r10, qword [r12 + rax*8]
mov rax, r8
shr rax, 0x1d
and rax, rbp
xor r10, qword [rax + r14]
mov rax, r8
shr rax, 0x2d
and rax, rbp
xor r10, qword [rax + r13]
imul rax, rdx, 7
sub rax, r10
mov rdx, r8
shr rdx, 0x38
xor r9, qword [r12 + rdx*8]
xor rax, rdi
mov r10d, eax
shr r10d, 8
mov edx, eax
shr edx, 0x18
and r10d, esi
mov rdx, qword [r14 + rdx*8]
xor rdx, qword [r13 + r10*8]
mov r10, rax
shr r10, 0x25
and r10, rbp
xor rdx, qword [r10 + r11]
mov r10, rax
shr r10, 0x38
xor rdx, qword [r12 + r10*8]
add rdx, r8
add r9, rcx
mov rcx, rax
mov r8d, 0xff
and rcx, r8
mov r8d, eax
shr r8d, 0x10
and r8d, esi
mov r8, qword [r11 + r8*8]
xor r8, qword [r12 + rcx*8]
mov rcx, rax
shr rcx, 0x1d
and rcx, rbp
xor r8, qword [rcx + r14]
mov rcx, rax
shr rcx, 0x2d
and rcx, rbp
xor r8, qword [rcx + r13]
mov r14, r13
imul r13, r9, 7
sub r13, r8
movabs rcx, 0x5a5a5a5a5a5a5a5a
xor rcx, rdi
mov r9, qword [rsp + 0x30]
lea r8, [r9 + rcx]
add rcx, r9
inc rcx
xor rcx, qword [rsp + 0x38]
mov r12, qword [rsp]
add r12, rcx
mov r9, rcx
not r9
shl r9, 0x13
xor r9, r12
mov r11, qword [rsp + 0x10]
sub r11, r9
mov qword [rsp + 0x10], r11
mov r9, qword [rsp + 8]
xor r9, r11
mov qword [rsp + 8], r9
mov r15, qword [rsp + 0x18]
add r15, r9
mov qword [rsp + 0x18], r15
not r9
shr r9, 0x17
xor r9, r15
sub rbx, r9
mov qword [rsp + 0x20], rbx
xor rdi, rbx
mov qword [rsp], rdi
add r8, rdi
inc r8
mov r9, rdi
not r9
shl r9, 0x13
xor r9, r8
xor r13, r8
mov r10d, r13d
shr r10d, 8
mov r8d, r13d
shr r8d, 0x18
mov edi, 0xff
and r10d, edi
lea rsi, [0x140200638]
mov r8, qword [rsi + r8*8]
xor r8, qword [r14 + r10*8]
mov r10, r13
shr r10, 0x25
and r10, rbp
lea rbx, [0x1401ffe38]
xor r8, qword [r10 + rbx]
mov r10, r13
mov r11d, 0xff
and r10, r11
mov r11d, r13d
shr r11d, 0x10
and r11d, edi
mov r15d, 0xff
mov r11, qword [rbx + r11*8]
lea rdi, [0x1401ff638]
xor r11, qword [rdi + r10*8]
mov r10, r13
shr r10, 0x1d
and r10, rbp
xor r11, qword [r10 + rsi]
sub rcx, r9
mov r9, r13
shr r9, 0x2d
and r9, rbp
xor r11, qword [r9 + r14]
mov rdi, r14
imul rdx, rdx, 7
sub rdx, r11
xor r12, rcx
xor rdx, rcx
mov ecx, edx
shr ecx, 8
mov r9d, edx
shr r9d, 0x18
and ecx, r15d
mov r9, qword [rsi + r9*8]
xor r9, qword [r14 + rcx*8]
mov rcx, rdx
shr rcx, 0x25
and rcx, rbp
xor r9, qword [rcx + rbx]
mov rcx, rdx
shr rcx, 0x38
lea r14, [0x1401ff638]
xor r9, qword [r14 + rcx*8]
add r9, r13
shr r13, 0x38
xor r8, qword [r14 + r13*8]
mov rcx, rdx
mov r11d, 0xff
and rcx, r11
mov r10d, edx
shr r10d, 0x10
and r10d, r15d
mov r10, qword [rbx + r10*8]
xor r10, qword [r14 + rcx*8]
add r8, rax
mov rax, rdx
shr rax, 0x1d
and rax, rbp
xor r10, qword [rax + rsi]
mov rax, rdx
shr rax, 0x2d
and rax, rbp
xor r10, qword [rax + rdi]
lea rcx, [r8 + r8*8]
sub rcx, r10
xor rcx, r12
mov eax, ecx
shr eax, 8
mov r8d, ecx
shr r8d, 0x18
and eax, r15d
mov r8, qword [rsi + r8*8]
mov r13, rsi
xor r8, qword [rdi + rax*8]
mov rax, rcx
shr rax, 0x25
and rax, rbp
xor r8, qword [rax + rbx]
mov rax, rcx
and rax, r11
mov r10d, ecx
shr r10d, 0x10
and r10d, r15d
mov r10, qword [rbx + r10*8]
xor r10, qword [r14 + rax*8]
mov r11, qword [rsp + 0x10]
add r11, r12
mov rax, r12
not rax
shr rax, 0x17
xor rax, r11
mov r12, qword [rsp + 8]
sub r12, rax
mov rax, rcx
shr rax, 0x1d
and rax, rbp
xor r10, qword [rax + rsi]
mov rax, rcx
shr rax, 0x2d
and rax, rbp
xor r10, qword [rax + rdi]
lea rax, [r9 + r9*8]
sub rax, r10
xor rax, r11
mov r10d, eax
shr r10d, 8
mov r9d, eax
shr r9d, 0x18
and r10d, r15d
mov r9, qword [rsi + r9*8]
xor r9, qword [rdi + r10*8]
mov r10, rax
shr r10, 0x25
and r10, rbp
xor r9, qword [r10 + rbx]
mov r10, rax
shr r10, 0x38
xor r9, qword [r14 + r10*8]
add r9, rcx
shr rcx, 0x38
xor r8, qword [r14 + rcx*8]
mov rcx, rax
mov r11d, 0xff
and rcx, r11
mov r10d, eax
shr r10d, 0x10
and r10d, r15d
mov r10, qword [rbx + r10*8]
xor r10, qword [r14 + rcx*8]
add r8, rdx
mov rcx, rax
shr rcx, 0x1d
and rcx, rbp
xor r10, qword [rcx + rsi]
mov rcx, rax
shr rcx, 0x2d
and rcx, rbp
xor r10, qword [rcx + rdi]
lea rcx, [r8 + r8*8]
sub rcx, r10
mov rsi, r12
xor rcx, r12
mov edx, ecx
shr edx, 8
mov r8d, ecx
shr r8d, 0x18
and edx, r15d
mov r8, qword [r13 + r8*8]
xor r8, qword [rdi + rdx*8]
mov rdx, rcx
shr rdx, 0x25
and rdx, rbp
xor r8, qword [rdx + rbx]
mov rdx, rcx
and rdx, r11
mov r12d, 0xff
mov r10d, ecx
shr r10d, 0x10
and r10d, r15d
mov r10, qword [rbx + r10*8]
xor r10, qword [r14 + rdx*8]
mov rdx, rcx
shr rdx, 0x1d
and rdx, rbp
xor r10, qword [rdx + r13]
mov r11, qword [rsp + 0x18]
xor r11, rsi
mov rdx, rcx
shr rdx, 0x2d
and rdx, rbp
xor r10, qword [rdx + rdi]
lea rdx, [r9 + r9*8]
sub rdx, r10
mov rsi, qword [rsp + 0x20]
add rsi, r11
xor rdx, r11
mov r10d, edx
shr r10d, 8
mov r9d, edx
shr r9d, 0x18
and r10d, r15d
mov r9, qword [r13 + r9*8]
xor r9, qword [rdi + r10*8]
mov r10, rdx
shr r10, 0x25
and r10, rbp
xor r9, qword [r10 + rbx]
mov r10, rdx
shr r10, 0x38
xor r9, qword [r14 + r10*8]
add r9, rcx
shr rcx, 0x38
xor r8, qword [r14 + rcx*8]
mov rcx, rdx
and rcx, r12
mov r10d, edx
shr r10d, 0x10
and r10d, r15d
mov r10, qword [rbx + r10*8]
xor r10, qword [r14 + rcx*8]
add r8, rax
mov rax, rdx
shr rax, 0x1d
and rax, rbp
xor r10, qword [rax + r13]
mov rax, rdx
shr rax, 0x2d
and rax, rbp
xor r10, qword [rax + rdi]
lea rax, [r8 + r8*8]
sub rax, r10
movabs r11, 0xfedcba9876543210
xor r11, rsi
xor rax, rsi
mov r8d, eax
shr r8d, 8
mov ecx, eax
shr ecx, 0x18
and r8d, r15d
mov rcx, qword [r13 + rcx*8]
xor rcx, qword [rdi + r8*8]
mov r8, rax
shr r8, 0x25
and r8, rbp
xor rcx, qword [r8 + rbx]
mov r8, rax
and r8, r12
mov r10d, eax
shr r10d, 0x10
and r10d, r15d
mov r10, qword [rbx + r10*8]
xor r10, qword [r14 + r8*8]
mov r8, qword [rsp]
add r11, r8
inc r11
mov r8, rax
shr r8, 0x1d
and r8, rbp
xor r10, qword [r8 + r13]
mov r8, rax
shr r8, 0x2d
and r8, rbp
xor r10, qword [r8 + rdi]
lea r8, [r9 + r9*8]
sub r8, r10
xor r8, r11
mov r9d, r8d
shr r9d, 8
mov r10d, r8d
shr r10d, 0x18
mov r11d, 0xff
and r9d, r11d
mov r10, qword [r13 + r10*8]
xor r10, qword [rdi + r9*8]
mov r9d, r8d
shr r9d, 0x10
and r9d, r11d
mov r11, r8
shr r11, 0x25
and r11, rbp
xor r10, qword [r11 + rbx]
mov r9, qword [rbx + r9*8]
mov r11d, 0xff
and r11, r8
xor r9, qword [r14 + r11*8]
mov r11, r8
shr r11, 0x1d
and r11, rbp
xor r9, qword [r11 + r13]
mov r11, r8
shr r11, 0x2d
and r11, rbp
xor r9, qword [r11 + rdi]
mov r11, rax
shr r11, 0x38
xor rcx, qword [r14 + r11*8]
mov r11, r8
shr r11, 0x38
xor r10, qword [r14 + r11*8]
add r10, rax
add rcx, rdx
lea rax, [r10 + r10*8]
xor rax, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x40]
mov qword [rdx], rax
sub r8, qword [rsp + 0x48]
mov qword [rdx + 8], r8
lea rax, [rcx + rcx*8]
add rax, qword [rsp + 0x58]
sub rax, r9
mov qword [rdx + 0x10], rax
add rsp, 0xa8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret