Function at 0x1403bd39d
Capabilities:
Hash data using murmur3

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x168
mov rax, qword [rdx + 0x28]
mov rbx, qword [rcx + 0x28]
mov r13, qword [rcx + 0x70]
xor rbx, rax
mov qword [rsp + 0xc0], rax
mov rax, qword [rdx + 0x38]
mov r10, rdx
mov r11, rcx
mov r15, r8
mov rdi, qword [r10 + 8]
mov qword [rsp + 0x50], rax
xor rax, qword [rcx + 0x38]
mov qword [rsp + 8], rax
mov rax, qword [rdx + 0x50]
mov qword [rsp + 0xc8], rdi
mov qword [rsp + 0x58], rax
xor rax, qword [rcx + 0x50]
mov qword [rsp + 0x10], rax
mov rax, qword [rdx + 0x68]
mov rdx, qword [rcx + 0x68]
mov qword [rsp + 0x88], rax
xor rdx, rax
mov rax, qword [r10 + 0x70]
xor r13, rax
mov qword [rsp + 0x98], rax
mov rax, qword [rsp + 0x10]
add rax, rbx
add rax, rdx
add rax, r13
sub rax, qword [rsp + 8]
mov rcx, rax
lea r8, [rax*8]
shr rcx, 1
xor r8, rcx
mov rcx, rax
ror rax, 0x1b
rol rcx, 4
xor rcx, r8
xor rcx, rax
mov rax, qword [r10 + 0x30]
add rcx, rdi
mov qword [rsp + 0xd0], rax
xor rax, qword [r11 + 0x30]
mov qword [rsp + 0x48], rax
mov rax, qword [r10 + 0x40]
mov qword [rsp + 0xb8], rcx
mov qword [rsp + 0x70], rax
xor rax, qword [r11 + 0x40]
mov qword [rsp + 0x18], rax
mov rax, qword [rsp + 0x48]
add rax, r13
mov qword [rsp + 0x28], rax
mov rax, qword [r10 + 0x58]
mov rdi, qword [r11 + 0x58]
mov rcx, qword [r11 + 0x78]
mov rbp, qword [r11]
mov rsi, qword [r10 + 0x10]
mov qword [rsp + 0xd8], rax
xor rdi, rax
mov rax, qword [r10 + 0x78]
mov r14, qword [r11 + 0x60]
mov qword [rsp + 0xe8], rsi
xor rcx, rax
mov qword [rsp + 0xe0], rax
mov rax, qword [rsp + 0x28]
sub rax, qword [rsp + 0x18]
add rax, rdi
sub rax, rcx
mov r8, rax
lea r9, [rax*4]
shr r8, 1
xor r9, r8
mov r8, rax
ror rax, 0x15
rol r8, 0xd
xor r8, r9
mov r9, qword [r11 + 0x48]
xor r8, rax
mov rax, qword [r10]
add r8, rsi
mov rsi, qword [r10 + 0x18]
xor rbp, rax
mov qword [rsp + 0xf0], rax
mov rax, qword [r10 + 0x48]
mov qword [rsp + 0xa0], r8
xor r9, rax
mov qword [rsp + 0xf8], rax
mov rax, qword [r10 + 0x60]
mov qword [rsp + 0x108], rsi
xor r14, rax
mov qword [rsp + 0x100], rax
mov rax, qword [rsp + 8]
add rax, rcx
add rax, rbp
add rax, r9
sub rax, r14
mov r8, rax
lea rsi, [rax + rax]
shr r8, 2
xor rsi, r8
mov r8, rax
ror rax, 0xb
rol r8, 0x13
xor r8, rsi
mov rsi, qword [rsp + 0x18]
xor r8, rax
add r8, qword [rsp + 0x108]
mov rax, qword [rsp + 0xc8]
mov qword [rsp + 0xa8], r8
lea r8, [rdx + rsi]
xor rax, qword [r11 + 8]
add r8, rbp
mov rsi, qword [r10 + 0x20]
sub r8, rax
sub r8, qword [rsp + 0x10]
mov r10, r8
mov qword [rsp + 0x110], rsi
lea rsi, [r8*4]
shr r10, 2
xor rsi, r10
mov r10, r8
ror r8, 5
rol r10, 0x1c
xor r10, rsi
xor r10, r8
add r10, qword [rsp + 0x110]
lea r8, [r9 + rax]
mov qword [rsp + 0x90], r10
mov rsi, qword [rsp + 0xe8]
xor rsi, qword [r11 + 0x10]
add r8, rsi
mov qword [rsp + 0x20], rsi
mov rsi, qword [rsp + 0x108]
sub r8, rdi
xor rsi, qword [r11 + 0x18]
sub r8, r13
mov r10, r8
shr r10, 1
xor r10, r8
add r10, qword [rsp + 0xc0]
mov qword [rsp + 0xb0], r10
mov r10, qword [rsp + 0x10]
lea r8, [r10 + rcx]
add r8, rsi
sub r8, qword [rsp + 0x20]
sub r8, r14
mov r10, r8
lea r12, [r8*8]
shr r10, 1
xor r12, r10
mov r10, r8
ror r8, 0x1b
rol r10, 4
xor r10, r12
xor r10, r8
add r10, qword [rsp + 0xd0]
mov qword [rsp + 0x78], r10
mov r10, qword [rsp + 0x110]
xor r10, qword [r11 + 0x20]
lea r8, [rdx + r10]
sub r8, rbp
sub r8, rsi
sub r8, rdi
mov r12, r8
shr r12, 1
mov qword [rsp + 0x30], r12
lea r12, [r8*4]
xor r12, qword [rsp + 0x30]
mov qword [rsp + 0x30], r12
mov r12, r8
ror r8, 0x15
rol r12, 0xd
xor r12, qword [rsp + 0x30]
xor r12, r8
add r12, qword [rsp + 0x50]
mov r8, rax
mov qword [rsp + 0x80], r12
lea r12, [rbx + r10]
sub r8, r12
sub r8, r14
sub r8, r13
mov r12, r8
lea r13, [r8 + r8]
shr r12, 2
xor r13, r12
mov r12, r8
ror r8, 0xb
rol r12, 0x13
xor r12, r13
xor r12, r8
mov r8, qword [rsp + 0x20]
add r12, qword [rsp + 0x70]
mov qword [rsp + 0x60], r12
add r8, rdx
sub r8, rbx
sub r8, qword [rsp + 0x48]
sub r8, rcx
add rcx, qword [rsp + 0x18]
mov r12, r8
lea r13, [r8*4]
sub rcx, rax
shr r12, 2
sub rcx, r10
sub rcx, qword [rsp + 8]
xor r13, r12
mov r12, r8
ror r8, 5
rol r12, 0x1c
xor r12, r13
xor r12, r8
mov r8, qword [rsp + 0x28]
add r12, qword [rsp + 0xf8]
mov qword [rsp + 0x68], r12
sub r8, rsi
add r8, rbp
sub r8, qword [rsp + 8]
mov r12, r8
shr r12, 1
xor r12, r8
mov r8, rcx
add r12, qword [rsp + 0x58]
mov qword [rsp + 0x28], r12
shr r8, 1
lea r12, [rcx*8]
xor r12, r8
mov r8, rcx
ror rcx, 0x1b
rol r8, 4
xor r8, r12
xor r8, rcx
add r8, qword [rsp + 0xd8]
mov qword [rsp + 0x30], r8
mov rcx, qword [rsp + 0x18]
mov r12, qword [rsp + 0x30]
add rcx, r9
sub rcx, rbp
sub rcx, qword [rsp + 0x20]
sub rcx, rbx
mov r8, rcx
lea rbp, [rcx*4]
shr r8, 1
xor rbp, r8
add rax, qword [rsp + 0x10]
mov r8, rcx
ror rcx, 0x15
add rax, rsi
rol r8, 0xd
sub rax, qword [rsp + 0x48]
sub rax, r9
xor r8, rbp
mov rbp, qword [rsp + 0x68]
xor r8, rcx
mov rcx, rax
add r8, qword [rsp + 0x100]
mov qword [rsp + 0x38], r8
shr rcx, 2
lea r8, [rax + rax]
xor r8, rcx
mov rcx, rax
ror rax, 0xb
rol rcx, 0x13
xor rcx, r8
xor rcx, rax
mov rax, qword [rsp + 8]
add rax, qword [rsp + 0x10]
add rax, rdi
add rax, qword [rsp + 0x20]
add rcx, qword [rsp + 0x88]
add rax, r10
mov qword [rsp + 0x40], rcx
mov rcx, rax
lea r8, [rax*4]
shr rcx, 2
xor r8, rcx
mov rcx, rax
ror rax, 5
rol rcx, 0x1c
xor rcx, r8
xor rcx, rax
mov rax, qword [rsp + 0x18]
add rcx, qword [rsp + 0x98]
mov qword [rsp + 8], rcx
add rax, rsi
sub rax, rbx
mov rbx, qword [rsp + 0xa8]
sub rax, rdi
mov rdi, qword [rsp + 0xf0]
sub rax, r14
mov rcx, rax
shr rcx, 1
add rdx, r14
shr rbx, 2
shr rbp, 1
sub rdx, r10
sub rdx, qword [rsp + 0x48]
xor rcx, rax
sub rdx, r9
add rcx, qword [rsp + 0xe0]
shr r12, 2
mov rax, rdx
mov qword [rsp + 0x10], rcx
lea rcx, [rdx*8]
mov r9, qword [rsp + 0x10]
shr rax, 1
xor rcx, rax
mov rax, rdx
ror rdx, 0x1b
rol rax, 4
shr r9, 2
xor rax, rcx
xor rax, rdx
mov rdx, qword [rsp + 0xb0]
lea r14, [rax + rdi]
mov rax, qword [rsp + 0x38]
mov rdi, qword [rsp + 0x80]
shr rdx, 1
ror rax, 0x1b
shr rdi, 2
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x40]
shr rax, 1
mov qword [rsp + 0x20], rax
mov rax, r14
ror rax, 0x1b
mov qword [rsp + 0x150], rax
mov rax, qword [r11]
rol rax, 1
mov qword [rsp + 0x118], rax
mov rax, qword [r11 + 0x18]
rol rax, 4
mov qword [rsp + 0x120], rax
mov rax, qword [r11 + 0x50]
mov rcx, qword [rsp + 0x28]
mov rsi, qword [rsp + 0x10]
rol rax, 0xb
mov qword [rsp + 0x128], rax
mov rax, qword [rsp + 0x28]
shr rcx, 2
add rax, rax
xor rax, rcx
mov rcx, qword [rsp + 0x28]
rol rcx, 0x13
xor rcx, rax
mov rax, qword [rsp + 0x28]
ror rax, 0xb
xor rcx, rax
mov rax, qword [rsp + 0xb0]
lea r8, [rax*4]
xor r8, rdx
rol rax, 0xd
xor rax, r8
mov r8, qword [rsp + 0xb0]
ror r8, 0x15
xor rax, r8
movabs r8, 0x5555555555555550
add rax, rcx
mov rcx, qword [rsp + 0x118]
add rcx, qword [rsp + 0x120]
add rcx, r8
sub rcx, qword [rsp + 0x128]
xor rcx, qword [rsp + 0x50]
add rax, rcx
lea r8, [rsi*4]
mov rcx, rsi
xor r8, r9
rol rcx, 0x1c
xor rcx, r8
mov r8, rsi
mov rsi, qword [rsp + 0xb8]
ror r8, 5
xor rcx, r8
lea r8, [rsi*4]
add rax, rcx
mov rcx, qword [rsp + 0xb8]
shr rcx, 1
xor r8, rcx
mov rcx, rsi
rol rcx, 0xd
xor rcx, r8
mov r8, rsi
mov rsi, qword [rsp + 0xa8]
ror r8, 0x15
xor rcx, r8
mov r8, qword [rsp + 0xa0]
add rax, rcx
mov rcx, qword [rsp + 0xa0]
add r8, r8
shr rcx, 2
xor r8, rcx
mov rcx, qword [rsp + 0xa0]
rol rcx, 0x13
xor rcx, r8
mov r8, qword [rsp + 0xa0]
ror r8, 0xb
xor rcx, r8
lea r8, [rsi*4]
add rax, rcx
mov rcx, rsi
xor r8, rbx
rol rcx, 0x1c
xor rcx, r8
mov r8, rsi
mov rsi, qword [rsp + 0x90]
ror r8, 5
xor rcx, r8
lea r8, [rsi*8]
add rax, rcx
mov rcx, qword [rsp + 0x90]
shr rcx, 1
xor r8, rcx
mov rcx, rsi
rol rcx, 4
xor rcx, r8
mov r8, rsi
mov rsi, qword [rsp + 0x80]
ror r8, 0x1b
xor rcx, r8
mov r8, qword [rsp + 0x78]
add rax, rcx
mov rcx, qword [rsp + 0x78]
add r8, r8
shr rcx, 2
xor r8, rcx
mov rcx, qword [rsp + 0x78]
rol rcx, 0x13
xor rcx, r8
mov r8, qword [rsp + 0x78]
ror r8, 0xb
xor rcx, r8
lea r8, [rsi*4]
add rax, rcx
mov rcx, rsi
xor r8, rdi
rol rcx, 0x1c
xor rcx, r8
mov r8, rsi
mov rsi, qword [rsp + 0x68]
ror r8, 5
xor rcx, r8
lea r8, [rsi*4]
add rax, rcx
mov rcx, rsi
xor r8, rbp
rol rcx, 0xd
xor rcx, r8
mov r8, rsi
mov rsi, qword [rsp + 0x30]
ror r8, 0x15
xor rcx, r8
lea r8, [rsi*4]
add rax, rcx
mov rcx, rsi
xor r8, r12
rol rcx, 0x1c
xor rcx, r8
mov r8, rsi
ror r8, 5
xor rcx, r8
mov r8, qword [rsp + 0x38]
add rcx, rax
mov rax, qword [rsp + 0x38]
shr r8, 1
shl rax, 3
xor rax, r8
mov r8, qword [rsp + 0x38]
rol r8, 4
xor rax, r8
xor rax, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x40]
add rax, rcx
mov r13, qword [r11 + 0x20]
mov rcx, rsi
lea r8, [rsi*4]
xor r8, qword [rsp + 0x20]
rol rcx, 0xd
xor rcx, r8
mov r8, rsi
ror r8, 0x15
xor rcx, r8
mov r8, qword [rsp + 8]
add rax, rcx
mov rcx, qword [rsp + 8]
add r8, r8
shr rcx, 2
xor r8, rcx
mov rcx, qword [rsp + 8]
rol rcx, 0x13
xor rcx, r8
mov r8, qword [rsp + 8]
ror r8, 0xb
xor rcx, r8
mov r8, r14
add rcx, rax
shr r8, 1
lea rax, [r14*8]
xor rax, r8
mov r8, r14
rol r8, 4
xor rax, r8
xor rax, qword [rsp + 0x150]
mov r8, qword [rsp + 0x60]
rol r13, 5
add rcx, rax
mov rax, qword [rsp + 0x60]
ror rsi, 0x1b
shr r8, 1
shl rax, 3
xor rax, r8
mov r8, qword [rsp + 0x60]
rol r8, 4
xor r8, rax
mov rax, qword [rsp + 0x60]
ror rax, 0x1b
xor r8, rax
lea rax, [rcx + r8]
mov r8, qword [rsp + 0x28]
mov rcx, qword [rsp + 8]
mov qword [rsp + 0x18], rax
mov r10, rax
ror rax, 0x1b
mov qword [rsp + 0x158], rax
mov rax, qword [r11 + 8]
shl r8, 2
ror rcx, 0x15
shr r10, 1
rol rax, 2
mov qword [rsp + 0x130], rax
mov rax, qword [r11 + 0x58]
rol rax, 0xc
mov qword [rsp + 0x138], rax
mov rax, qword [rsp + 0x28]
shr rax, 1
xor r8, rax
mov rax, qword [rsp + 0x28]
rol rax, 0xd
xor rax, r8
mov r8, qword [rsp + 0x28]
ror r8, 0x15
xor rax, r8
mov r8, qword [rsp + 0xb0]
shl r8, 3
xor r8, rdx
mov rdx, qword [rsp + 0xb0]
rol rdx, 4
xor rdx, r8
mov r8, qword [rsp + 0xb0]
ror r8, 0x1b
xor rdx, r8
movabs r8, 0x5aaaaaaaaaaaaaa5
add rdx, rax
mov rax, qword [rsp + 0x130]
add rax, r13
add rax, r8
mov r8, qword [rsp + 0x10]
sub rax, qword [rsp + 0x138]
xor rax, qword [rsp + 0x70]
add rdx, rax
mov rax, qword [rsp + 0x10]
add r8, r8
xor r8, r9
rol rax, 0x13
xor rax, r8
mov r8, qword [rsp + 0x10]
mov r9, qword [rsp + 0xa0]
ror r8, 0xb
xor rax, r8
lea r8, [r9*4]
add rax, rdx
mov rdx, qword [rsp + 0xa0]
shr rdx, 1
xor r8, rdx
mov rdx, r9
rol rdx, 0xd
xor rdx, r8
mov r8, r9
mov r9, qword [r11 + 0x28]
ror r8, 0x15
xor rdx, r8
mov r8, qword [rsp + 0xa8]
add rax, rdx
mov rdx, qword [rsp + 0xa8]
add r8, r8
xor r8, rbx
rol rdx, 0x13
mov rbx, qword [rsp + 0x90]
xor rdx, r8
mov r8, qword [rsp + 0xa8]
ror r8, 0xb
xor rdx, r8
lea r8, [rbx*4]
add rax, rdx
mov rdx, qword [rsp + 0x90]
shr rdx, 2
xor r8, rdx
mov rdx, rbx
rol rdx, 0x1c
xor rdx, r8
mov r8, rbx
mov rbx, qword [rsp + 0x78]
ror r8, 5
xor rdx, r8
lea r8, [rbx*4]
add rax, rdx
mov rdx, qword [rsp + 0x78]
shr rdx, 1
xor r8, rdx
mov rdx, rbx
rol rdx, 0xd
xor rdx, r8
mov r8, rbx
ror r8, 0x15
xor rdx, r8
mov r8, qword [rsp + 0x80]
add rax, rdx
mov rdx, qword [rsp + 0x80]
add r8, r8
xor r8, rdi
rol rdx, 0x13
mov rdi, qword [rsp + 0x68]
xor rdx, r8
mov r8, qword [rsp + 0x80]
ror r8, 0xb
xor rdx, r8
lea r8, [rdi*8]
add rax, rdx
mov rdx, rdi
xor r8, rbp
rol rdx, 4
xor rdx, r8
mov r8, rdi
mov rdi, qword [rsp + 0x38]
ror r8, 0x1b
xor rdx, r8
mov r8, qword [rsp + 0x30]
add rax, rdx
mov rdx, qword [rsp + 0x30]
add r8, r8
xor r8, r12
rol rdx, 0x13
xor rdx, r8
mov r8, qword [rsp + 0x30]
ror r8, 0xb
xor rdx, r8
lea r8, [rdi*4]
add rax, rdx
mov rdx, qword [rsp + 0x38]
shr rdx, 2
xor r8, rdx
mov rdx, rdi
rol rdx, 0x1c
xor rdx, r8
mov r8, rdi
mov rdi, qword [rsp + 0x40]
ror r8, 5
xor rdx, r8
mov r8, rdi
add rax, rdx
rol r8, 4
lea rdx, [rdi*8]
xor rdx, qword [rsp + 0x20]
mov rdi, qword [rsp + 8]
xor rdx, r8
mov r8, qword [rsp + 8]
xor rdx, rsi
add rax, rdx
shr r8, 1
lea rdx, [rdi*4]
xor rdx, r8
mov r8, rdi
mov rdi, qword [rsp + 0x60]
rol r8, 0xd
xor rdx, r8
mov r8, r14
xor rdx, rcx
shr r8, 2
add rax, rdx
lea rdx, [r14*4]
xor rdx, r8
mov r8, r14
rol r8, 0x1c
xor r8, rdx
mov rdx, r14
ror rdx, 5
xor r8, rdx
mov rdx, qword [rsp + 0x60]
add rax, r8
lea r8, [rdi*4]
shr rdx, 2
xor r8, rdx
mov rdx, rdi
rol rdx, 0x1c
xor rdx, r8
mov r8, rdi
ror r8, 5
xor rdx, r8
mov r8, qword [rsp + 0x18]
add rdx, rax
mov rax, qword [rsp + 0x18]
rol r8, 4
shl rax, 3
xor rax, r10
xor rax, r8
xor rax, qword [rsp + 0x158]
movabs r8, 0x5ffffffffffffffa
add rax, rdx
mov qword [rsp + 0x20], rax
mov rax, qword [r11 + 0x10]
rol rax, 3
rol r9, 6
mov qword [rsp + 0x140], rax
mov r12, qword [r11 + 0x60]
add rax, r9
add rax, r8
mov r8, qword [rsp + 0x28]
mov rdx, qword [rsp + 0xb0]
rol r12, 0xd
add rdx, qword [rsp + 0x10]
xor r10, qword [rsp + 0x18]
sub rax, r12
xor rax, qword [rsp + 0xf8]
rol r8, 0x20
add rax, rdx
add rax, r8
add rax, qword [rsp + 0xa8]
add rax, qword [rsp + 0x80]
add rax, qword [rsp + 0x68]
add rax, qword [rsp + 0x30]
add rax, qword [rsp + 0x40]
add rax, qword [rsp + 0x48]
add rax, rcx
mov rcx, qword [rsp + 0x90]
rol rcx, 5
add rcx, rax
mov rax, rbx
mov rbx, qword [r11 + 0x30]
rol rax, 0xb
add rax, rcx
mov rcx, r14
rol rbx, 7
ror rcx, 0xb
add rcx, rax
mov rax, rdi
rol rax, 0x1b
add rax, rcx
add r10, rax
mov rax, qword [rsp + 0x20]
shr rax, 2
xor rax, qword [rsp + 0x20]
add rax, r10
mov qword [rsp + 0x48], rax
mov rax, qword [r11 + 0x68]
rol rax, 0xe
mov qword [rsp + 0xf8], rax
mov rax, qword [rsp + 0x120]
lea rcx, [rax + rbx]
movabs rax, 0x655555555555554f
add rcx, rax
mov rax, qword [rsp + 0xb0]
sub rcx, qword [rsp + 0xf8]
xor rcx, qword [rsp + 0x58]
add rcx, qword [rsp + 0x28]
rol rax, 5
add rax, rcx
mov rcx, qword [rsp + 0x10]
ror rcx, 0x15
add rax, rcx
add rax, qword [rsp + 0x90]
add rax, qword [rsp + 0x78]
add rax, qword [rsp + 0x38]
add rax, qword [rsp + 8]
mov rcx, qword [rsp + 0x80]
add rax, r14
add rax, rdi
add rax, rsi
rol rcx, 0xb
add rax, rcx
mov rcx, qword [rsp + 0x68]
rol rcx, 0x1b
add rcx, rax
mov rax, qword [rsp + 0x30]
rol rax, 0x20
add rax, rcx
mov rcx, qword [rsp + 0x18]
mov rsi, qword [r11 + 0x38]
ror rcx, 0xb
rol rsi, 8
add rax, rcx
mov rcx, qword [rsp + 0x20]
shr rcx, 1
xor rcx, qword [rsp + 0x20]
add rax, rcx
mov rcx, qword [rsp + 0x48]
shr rcx, 2
xor rcx, qword [rsp + 0x48]
add rax, rcx
movabs rcx, 0x6aaaaaaaaaaaaaa4
mov qword [rsp + 0x50], rax
mov rax, qword [r11 + 0x70]
rol rax, 0xf
mov qword [rsp + 0x148], rax
lea rax, [r13 + rsi]
add rax, rcx
sub rax, qword [rsp + 0x148]
xor rax, qword [rsp + 0xd8]
add rax, rdx
mov rdx, qword [rsp + 0x28]
rol rdx, 0x1b
add rax, rdx
mov rdx, qword [rsp + 0x78]
add rax, qword [rsp + 0x80]
add rax, qword [rsp + 0x68]
add rax, qword [rsp + 0x30]
rol rdx, 5
add rax, qword [rsp + 0x40]
add rdx, rax
mov rax, qword [rsp + 0x38]
rol rax, 0x20
add rax, rdx
mov rdx, qword [rsp + 8]
ror rdx, 0x1b
add rdx, rax
mov rax, r14
ror rax, 0x15
add rax, rdx
mov rdx, rdi
mov rdi, qword [r11 + 0x40]
rol rdx, 0xb
add rax, rdx
mov rdx, qword [rsp + 0x20]
add rax, qword [rsp + 0x18]
rol rdi, 9
ror rdx, 0xb
add rax, rdx
mov rdx, qword [rsp + 0x48]
shr rdx, 1
xor rdx, qword [rsp + 0x48]
add rax, rdx
mov rdx, qword [rsp + 0x50]
shr rdx, 2
xor rdx, qword [rsp + 0x50]
add rax, rdx
movabs rdx, 0x6ffffffffffffff9
mov qword [rsp + 0x58], rax
mov rax, qword [r11 + 0x78]
rol rax, 0x10
mov qword [rsp + 0xd8], rax
lea rax, [r9 + rdi]
add rax, rdx
sub rax, qword [rsp + 0xd8]
xor rax, qword [rsp + 0x100]
add rax, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x10]
mov rbp, qword [r11 + 0x48]
ror rdx, 0x1b
add rax, rdx
mov rdx, qword [rsp + 0x80]
add rax, qword [rsp + 0x78]
rol rbp, 0xa
add rax, qword [rsp + 0x38]
add rax, qword [rsp + 8]
add rax, r14
rol rdx, 5
add rax, qword [rsp + 0x60]
add rdx, rax
mov rax, qword [rsp + 0x68]
rol rax, 0xb
add rax, rdx
mov rdx, qword [rsp + 0x30]
rol rdx, 0x1b
add rdx, rax
mov rax, qword [rsp + 0x40]
rol rax, 0x20
add rax, rdx
mov rdx, qword [rsp + 0x18]
ror rdx, 0x15
add rax, rdx
mov rdx, qword [rsp + 0x48]
add rax, qword [rsp + 0x20]
ror rdx, 0xb
add rax, rdx
mov rdx, qword [rsp + 0x50]
shr rdx, 1
xor rdx, qword [rsp + 0x50]
add rax, rdx
mov rdx, qword [rsp + 0x58]
shr rdx, 2
xor rdx, qword [rsp + 0x58]
add rax, rdx
movabs rdx, 0x755555555555554e
mov qword [rsp + 0x70], rax
lea rax, [rbx + rbp]
add rax, rdx
mov rdx, qword [rsp + 0x28]
sub rax, qword [rsp + 0x118]
xor rax, qword [rsp + 0x88]
add rax, qword [rsp + 0x10]
rol rdx, 0xb
add rax, rdx
mov rdx, qword [rsp + 0x38]
add rax, qword [rsp + 0x80]
add rax, qword [rsp + 0x68]
add rax, qword [rsp + 0x30]
rol rdx, 0x1b
add rax, qword [rsp + 0x40]
add rax, qword [rsp + 0x150]
add rdx, rax
mov rax, qword [rsp + 8]
rol rax, 0x20
add rax, rdx
mov rdx, qword [rsp + 0x60]
rol rdx, 5
add rax, rdx
mov rdx, qword [rsp + 0x20]
add rax, qword [rsp + 0x18]
ror rdx, 0x15
add rax, rdx
add rax, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x30]
ror rdx, 0xb
add rax, rdx
mov rdx, qword [rsp + 0x58]
shr rdx, 1
xor rdx, qword [rsp + 0x58]
add rax, rdx
mov rdx, qword [rsp + 0x70]
shr rdx, 2
xor rdx, qword [rsp + 0x70]
add rax, rdx
movabs rdx, 0x7aaaaaaaaaaaaaa3
mov qword [rsp + 0x88], rax
mov rax, qword [rsp + 0x128]
add rax, rsi
add rax, rdx
mov rdx, qword [rsp + 0x10]
sub rax, qword [rsp + 0x130]
xor rax, qword [rsp + 0x98]
add rax, qword [rsp + 0x28]
rol rdx, 0x20
rol rcx, 0xb
add rax, rdx
mov rdx, qword [rsp + 0x68]
add rax, qword [rsp + 0x38]
add rax, qword [rsp + 8]
add rax, r14
rol rdx, 5
add rax, qword [rsp + 0x60]
add rax, rdx
movabs rdx, 0x7ffffffffffffff8
add rcx, rax
mov rax, qword [rsp + 0x40]
rol rax, 0x1b
add rcx, rax
mov rax, qword [rsp + 0x48]
add rcx, qword [rsp + 0x158]
add rcx, qword [rsp + 0x20]
ror rax, 0x15
add rcx, rax
mov rax, qword [rsp + 0x58]
add rcx, qword [rsp + 0x50]
ror rax, 0xb
add rcx, rax
mov rax, qword [rsp + 0x70]
shr rax, 1
xor rax, qword [rsp + 0x70]
add rcx, rax
mov rax, qword [rsp + 0x88]
shr rax, 2
xor rax, qword [rsp + 0x88]
add rcx, rax
mov rax, qword [rsp + 0x138]
add rax, rdi
add rax, rdx
mov rdx, qword [rsp + 0x28]
sub rax, qword [rsp + 0x140]
xor rax, qword [rsp + 0xe0]
add rax, qword [rsp + 0x10]
rol rdx, 5
add rax, rdx
add rax, qword [rsp + 0x68]
mov rdx, qword [rsp + 0x38]
add rax, qword [rsp + 0x30]
add rax, qword [rsp + 0x40]
rol rdx, 0xb
mov r10, qword [rsp + 0x40]
add rdx, rax
mov rax, qword [rsp + 8]
rol rax, 0x1b
add rax, rdx
mov rdx, r14
rol rdx, 0x20
add rax, rdx
mov rdx, qword [rsp + 0x20]
add rax, qword [rsp + 0x18]
ror rdx, 0x1b
add rax, rdx
mov rdx, qword [rsp + 0x50]
add rax, qword [rsp + 0x48]
ror rdx, 0x15
add rax, rdx
mov rdx, qword [rsp + 0x70]
add rax, qword [rsp + 0x58]
ror rdx, 0xb
add rax, rdx
mov rdx, qword [rsp + 0x88]
shr rdx, 1
xor rdx, qword [rsp + 0x88]
add rax, rdx
mov rdx, rcx
shr rdx, 2
xor rdx, rcx
add rax, rdx
movabs rdx, 0x855555555555554d
mov qword [rsp + 0x98], rax
lea rax, [r12 + rbp]
add rax, rdx
mov rdx, qword [rsp + 0x10]
sub rax, qword [rsp + 0x120]
xor rax, qword [rsp + 0xf0]
add rax, qword [rsp + 0x28]
rol rdx, 0x1b
add rax, rdx
mov rdx, qword [rsp + 0x30]
add rax, qword [rsp + 0x38]
add rax, qword [rsp + 8]
add rax, r14
rol rdx, 5
add rax, rdx
rol r10, 0xb
movabs rdx, 0x8aaaaaaaaaaaaaa2
add r10, rax
mov rax, qword [rsp + 0x18]
rol rax, 0x20
add r10, rax
mov rax, qword [rsp + 0x48]
add r10, qword [rsp + 0x20]
ror rax, 0x1b
add r10, rax
mov rax, qword [rsp + 0x58]
add r10, qword [rsp + 0x50]
ror rax, 0x15
add r10, rax
mov rax, qword [rsp + 0x88]
add r10, qword [rsp + 0x70]
ror rax, 0xb
add r10, rax
mov rax, rcx
shr rax, 1
xor rax, rcx
add r10, rax
mov rax, qword [rsp + 0x98]
shr rax, 2
xor rax, qword [rsp + 0x98]
add r10, rax
mov rax, qword [rsp + 0x128]
add rax, qword [rsp + 0xf8]
add rax, rdx
mov rdx, qword [rsp + 0x38]
mov r8, qword [rsp + 8]
sub rax, r13
xor rax, qword [rsp + 0xc8]
add rax, qword [rsp + 0x10]
rol rdx, 5
add rax, qword [rsp + 0x30]
add rax, qword [rsp + 0x40]
rol r8, 0xb
add rax, rdx
movabs rdx, 0x8ffffffffffffff7
add r8, rax
mov rax, r14
rol rax, 0x1b
add r8, rax
mov rax, qword [rsp + 0x20]
add r8, qword [rsp + 0x18]
rol rax, 0x20
add r8, rax
mov rax, qword [rsp + 0x50]
add r8, qword [rsp + 0x48]
ror rax, 0x1b
add r8, rax
mov rax, qword [rsp + 0x70]
add r8, qword [rsp + 0x58]
ror rax, 0x15
add r8, rax
mov rax, rcx
add r8, qword [rsp + 0x88]
ror rax, 0xb
add r8, rax
mov rax, qword [rsp + 0x98]
shr rax, 1
xor rax, qword [rsp + 0x98]
add r8, rax
mov rax, r10
shr rax, 2
xor rax, r10
add r8, rax
mov rax, qword [rsp + 0x138]
add rax, qword [rsp + 0x148]
add rax, rdx
mov rdx, qword [rsp + 0x10]
sub rax, r9
mov r9, qword [rsp + 0x40]
xor rax, qword [rsp + 0xe8]
rol rdx, 0xb
add rax, rdx
add rax, qword [rsp + 0x38]
add rax, qword [rsp + 8]
rol r9, 5
movabs rdx, 0x955555555555554c
add rax, r14
add r9, rax
mov rax, qword [rsp + 0x18]
rol rax, 0x1b
add r9, rax
mov rax, qword [rsp + 0x48]
add r9, qword [rsp + 0x20]
rol rax, 0x20
add r9, rax
mov rax, qword [rsp + 0x58]
add r9, qword [rsp + 0x50]
ror rax, 0x1b
add r9, rax
mov rax, qword [rsp + 0x88]
add r9, qword [rsp + 0x70]
ror rax, 0x15
add r9, rax
mov rax, qword [rsp + 0x98]
add r9, rcx
ror rax, 0xb
add r9, rax
mov rax, r10
shr rax, 1
xor rax, r10
add r9, rax
mov rax, r8
shr rax, 2
xor rax, r8
add r9, rax
mov rax, qword [rsp + 0xd8]
add rax, r12
add rax, rdx
sub rax, rbx
xor rax, qword [rsp + 0x108]
mov rdx, qword [rsp + 8]
movabs rbx, 0x9aaaaaaaaaaaaaa1
add rax, qword [rsp + 0x10]
add rax, qword [rsp + 0x40]
rol rdx, 5
add rdx, rax
mov rax, r14
rol rax, 0xb
add rdx, rax
mov rax, qword [rsp + 0x20]
add rdx, qword [rsp + 0x18]
rol rax, 0x1b
add rdx, rax
mov rax, qword [rsp + 0x50]
add rdx, qword [rsp + 0x48]
rol rax, 0x20
add rdx, rax
mov rax, qword [rsp + 0x70]
add rdx, qword [rsp + 0x58]
ror rax, 0x1b
add rdx, rax
mov rax, rcx
add rdx, qword [rsp + 0x88]
ror rax, 0x15
add rdx, rax
mov rax, r10
add rdx, qword [rsp + 0x98]
ror rax, 0xb
add rdx, rax
mov rax, r8
shr rax, 1
xor rax, r8
add rdx, rax
mov rax, r9
shr rax, 2
xor rax, r9
add rdx, rax
mov rax, qword [rsp + 0x118]
add rax, qword [rsp + 0xf8]
add rax, rbx
mov rbx, qword [rsp + 0x10]
sub rax, rsi
xor rax, qword [rsp + 0x110]
movabs rsi, 0x9ffffffffffffff6
rol rbx, 5
add rax, rbx
mov rbx, qword [rsp + 0x18]
add rax, qword [rsp + 8]
add rax, r14
rol rbx, 0xb
add rax, rbx
mov rbx, qword [rsp + 0x48]
add rax, qword [rsp + 0x20]
rol rbx, 0x1b
add rax, rbx
mov rbx, qword [rsp + 0x58]
add rax, qword [rsp + 0x50]
rol rbx, 0x20
add rax, rbx
mov rbx, qword [rsp + 0x88]
add rax, qword [rsp + 0x70]
ror rbx, 0x1b
add rax, rbx
mov rbx, qword [rsp + 0x98]
add rax, rcx
ror rbx, 0x15
add rax, rbx
mov rbx, r8
add rax, r10
ror rbx, 0xb
add rax, rbx
mov rbx, r9
shr rbx, 1
xor rbx, r9
add rax, rbx
mov rbx, rdx
shr rbx, 2
xor rbx, rdx
add rax, rbx
mov rbx, qword [rsp + 0x130]
add rbx, qword [rsp + 0x148]
add rbx, rsi
mov rsi, r14
sub rbx, rdi
rol rsi, 5
xor rbx, qword [rsp + 0xc0]
add rbx, qword [rsp + 0x10]
add rbx, rsi
mov rsi, qword [rsp + 0x20]
add rbx, qword [rsp + 0x18]
rol rsi, 0xb
add rbx, rsi
add rbx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
mov r12, qword [rsp + 0x98]
rol rsi, 0x1b
add rbx, rsi
mov rsi, qword [rsp + 0x70]
add rbx, qword [rsp + 0x58]
rol rsi, 0x20
add rbx, rsi
mov rsi, rcx
add rbx, qword [rsp + 0x88]
ror rsi, 0x1b
add rbx, rsi
mov rsi, r10
add rbx, qword [rsp + 0x98]
ror rsi, 0x15
add rbx, rsi
mov rsi, r9
add rbx, r8
ror rsi, 0xb
add rbx, rsi
mov rsi, rdx
shr rsi, 1
xor rsi, rdx
add rbx, rsi
mov rsi, rax
shr rsi, 2
xor rsi, rax
lea rdi, [rbx + rsi]
mov rbx, qword [rsp + 0x140]
movabs rsi, 0xa55555555555554b
add rbx, qword [rsp + 0xd8]
add rbx, rsi
mov rsi, qword [rsp + 0x18]
mov qword [rsp + 0xc0], rdi
sub rbx, rbp
xor rbx, qword [rsp + 0xd0]
mov rbp, qword [rsp + 0x18]
add rbx, r14
rol rsi, 5
add rbx, rsi
mov rsi, qword [rsp + 0x48]
add rbx, qword [rsp + 0x20]
rol rsi, 0xb
add rbx, rsi
mov rsi, qword [rsp + 0x58]
add rbx, qword [rsp + 0x50]
rol rsi, 0x1b
add rbx, rsi
mov rsi, qword [rsp + 0x88]
add rbx, qword [rsp + 0x70]
rol rsi, 0x20
add rbx, rsi
mov rsi, qword [rsp + 0x98]
add rbx, rcx
shr rbp, 5
xor rbp, qword [r11]
ror rsi, 0x1b
add rbx, rsi
mov rsi, r8
add rbx, r10
ror rsi, 0x15
add rbx, rsi
mov rsi, rdx
add rbx, r9
ror rsi, 0xb
add rbx, rsi
mov rsi, rax
shr rsi, 1
xor rsi, rax
add rbx, rsi
mov rsi, rdi
shr rsi, 2
xor rsi, rdi
lea rdi, [rbx + rsi]
mov rbx, qword [rsp + 0x18]
xor rbx, qword [rsp + 0x20]
mov rsi, r10
xor rbx, qword [rsp + 0x48]
xor rbx, qword [rsp + 0x50]
mov qword [rsp + 0xc8], rdi
xor rbx, qword [rsp + 0x58]
xor rbx, qword [rsp + 0x70]
xor rbx, qword [rsp + 0x88]
xor rbx, rcx
xor r12, rbx
xor rsi, r12
xor rsi, r8
xor rsi, r9
xor rsi, rdx
xor rsi, rax
xor rsi, qword [rsp + 0xc0]
mov qword [rsp + 0xd0], rsi
mov rsi, qword [rsp + 0xd0]
xor rsi, rdi
mov rdi, rsi
shl rdi, 5
xor rdi, rbp
mov rbp, qword [rsp + 0xb8]
xor rbp, r12
add rdi, rbp
mov qword [rsp + 0xb8], rdi
mov rbp, qword [rsp + 0x20]
mov r13, qword [rsp + 0x70]
mov r12, qword [rsp + 0x88]
mov qword [r15], rdi
mov rdi, rsi
shr rdi, 7
shl rbp, 8
xor rbp, qword [r11 + 8]
xor rbp, rdi
mov rdi, qword [rsp + 0xa0]
shr r13, 6
xor rdi, rbx
xor rdi, r10
add rdi, rbp
mov rbp, qword [rsp + 0x48]
mov qword [r15 + 8], rdi
mov qword [rsp + 0xa0], rdi
mov rdi, rsi
shl rbp, 5
xor rbp, qword [r11 + 0x10]
shr rdi, 5
xor rbp, rdi
mov rdi, qword [rsp + 0xa8]
xor rdi, rbx
xor rdi, r8
add rdi, rbp
mov rbp, qword [rsp + 0x50]
mov qword [r15 + 0x10], rdi
mov qword [rsp + 0xa8], rdi
mov rdi, rsi
shl rbp, 5
xor rbp, qword [r11 + 0x18]
shr rdi, 1
xor rbp, rdi
mov rdi, qword [rsp + 0x90]
xor rdi, rbx
xor rdi, r9
add rdi, rbp
mov rbp, qword [rsp + 0x58]
mov qword [r15 + 0x18], rdi
xor rbp, qword [r11 + 0x20]
mov qword [rsp + 0x90], rdi
mov rdi, rsi
shr rdi, 3
xor rbp, rdi
mov rdi, qword [rsp + 0xb0]
xor rdi, rbx
xor rdi, rdx
add rdi, rbp
lea rbp, [rcx*4]
mov qword [r15 + 0x20], rdi
xor r13, qword [r11 + 0x28]
mov qword [rsp + 0xb0], rdi
mov rdi, rsi
shl rdi, 6
shl r12, 6
xor r13, rdi
mov rdi, qword [rsp + 0x78]
xor rdi, rbx
xor rdi, rax
add r13, rdi
mov rdi, rsi
mov qword [r15 + 0x28], r13
shr rdi, 4
xor r12, qword [r11 + 0x30]
xor r12, rdi
mov rdi, qword [rsp + 0x80]
xor rdi, rbx
xor rdi, qword [rsp + 0xc0]
add r12, rdi
mov rdi, rsi
mov qword [r15 + 0x30], r12
shr rdi, 0xb
xor rbp, qword [r11 + 0x38]
xor rbp, rdi
mov rdi, qword [rsp + 0x60]
xor rdi, rbx
xor rdi, qword [rsp + 0xc8]
xor rcx, qword [rsp + 0x68]
add rbp, rdi
mov qword [rsp + 0x60], rcx
mov rdi, qword [rsp + 0x98]
mov rcx, rbx
mov qword [r15 + 0x38], rbp
xor rdi, qword [r11 + 0x40]
shl rcx, 8
xor rdi, rsi
xor rcx, qword [rsp + 0x60]
add rcx, rdi
mov rdi, qword [rsp + 0xb0]
rol rdi, 9
add rcx, rdi
mov rdi, rbx
mov qword [r15 + 0x40], rcx
shr rdi, 6
xor r10, qword [r11 + 0x48]
mov rcx, qword [rsp + 0x28]
xor rcx, qword [rsp + 0x18]
xor r10, rsi
xor rcx, rdi
add rcx, r10
rol r13, 0xa
mov r10, rbx
shl r10, 6
add rcx, r13
rol r12, 0xb
mov qword [r15 + 0x48], rcx
mov rcx, qword [rsp + 0x30]
rol rbp, 0xc
xor r8, qword [r11 + 0x50]
xor rcx, qword [rsp + 0x20]
xor r8, rsi
xor rcx, r10
add rcx, r8
mov r8, rbx
add rcx, r12
shl r8, 4
mov qword [r15 + 0x50], rcx
mov rcx, qword [rsp + 0x38]
xor r9, qword [r11 + 0x58]
xor rcx, qword [rsp + 0x48]
xor r9, rsi
xor rcx, r8
mov r8, rbx
add rcx, r9
shr r8, 3
add rcx, rbp
mov qword [r15 + 0x58], rcx
mov rcx, qword [rsp + 0x40]
xor rdx, qword [r11 + 0x60]
xor rcx, qword [rsp + 0x50]
xor rdx, rsi
xor rcx, r8
add rcx, rdx
mov rdx, qword [rsp + 0xb8]
rol rdx, 0xd
add rcx, rdx
mov rdx, qword [rsp + 8]
xor rdx, qword [rsp + 0x58]
mov qword [r15 + 0x60], rcx
mov rcx, rbx
xor rax, qword [r11 + 0x68]
shr rcx, 4
xor rax, rsi
xor rdx, rcx
mov rcx, rbx
add rax, rdx
mov rdx, qword [rsp + 0xa0]
rol rdx, 0xe
shr rcx, 7
add rax, rdx
shr rbx, 2
mov qword [r15 + 0x68], rax
mov rax, qword [rsp + 0xc0]
xor rax, qword [r11 + 0x70]
xor rax, rsi
mov rdx, rax
mov rax, qword [rsp + 0x10]
xor rax, qword [rsp + 0x70]
xor rax, rcx
add rax, rdx
mov rdx, qword [rsp + 0xa8]
rol rdx, 0xf
add rax, rdx
mov qword [r15 + 0x70], rax
mov rax, qword [rsp + 0x88]
xor rax, r14
xor rbx, rax
mov rax, qword [rsp + 0xd0]
xor rax, qword [r11 + 0x78]
add rbx, rax
mov rax, qword [rsp + 0x90]
rol rax, 0x10
add rbx, rax
mov qword [r15 + 0x78], rbx
add rsp, 0x168
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret