Function at 0x6d952490
Capabilities:
Hash data using murmur3

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