Function at 0x14003db20
Capabilities:
Hash data using sha512

Disassembly:
push rbp
mov rax, rdx
mov rbp, rsp
push r15
push r14
push r13
push r12
push rdi
push rsi
push rbx
and rsp, 0xfffffffffffffff0
sub rsp, 0x180
mov rdx, qword [rdx]
mov qword [rbp + 0x10], rcx
mov rcx, qword [rax + 8]
mov rsi, rdx
mov qword [rsp + 0x80], rdx
mov rdx, qword [rax + 0x10]
mov qword [rsp + 0x88], rcx
mov rcx, qword [rax + 0x18]
mov rbx, rdx
mov qword [rsp + 0x90], rdx
mov rdx, qword [rax + 0x20]
mov qword [rsp + 0x98], rcx
mov rcx, qword [rax + 0x28]
mov rdi, rdx
mov qword [rsp + 0xa0], rdx
mov rdx, qword [rax + 0x30]
mov qword [rsp + 0xa8], rcx
mov rcx, qword [rax + 0x38]
mov r15, rdx
mov qword [rsp + 0xb0], rdx
mov rdx, qword [rax + 0x40]
mov qword [rsp + 0xb8], rcx
mov rcx, qword [rax + 0x48]
mov qword [rsp + 0x70], rdx
mov qword [rsp + 0xc0], rdx
mov rdx, qword [rax + 0x50]
mov qword [rsp + 0xc8], rcx
mov rcx, qword [rax + 0x58]
mov r10, qword [rbp + 0x10]
mov r9, qword [rbp + 0x10]
mov qword [rsp + 0x68], rdx
mov qword [rsp + 0xd0], rdx
mov rdx, qword [rax + 0x60]
mov qword [rsp + 0xd8], rcx
mov rcx, qword [rax + 0x68]
mov qword [rsp + 0x60], rdx
mov r8, qword [r9 + 0x38]
mov qword [rsp + 0xe0], rdx
mov rdx, qword [rax + 0x70]
mov rax, qword [rax + 0x78]
mov qword [rsp + 0xe8], rcx
mov qword [rsp + 0x38], rdx
mov rcx, qword [r9 + 0x28]
mov qword [rsp + 0xf8], rax
mov rax, qword [rbp + 0x10]
mov qword [rsp + 0xf0], rdx
mov rdx, qword [r10 + 8]
mov rax, qword [rax]
mov qword [rsp + 0x128], rcx
mov qword [rsp + 0x108], rdx
mov rdx, qword [r10 + 0x18]
mov r11, rax
mov rax, qword [r10 + 0x10]
mov rcx, qword [r9 + 0x30]
mov qword [rsp + 0x138], r8
mov qword [rsp + 0x118], rdx
mov r9, qword [r9 + 0x40]
mov r10, rax
mov rax, qword [rbp + 0x10]
mov qword [rsp + 0x58], rsi
mov rax, qword [rax + 0x20]
mov rdx, rax
mov rax, rcx
movabs rcx, 0x510e527fade682d1
add r11, rdx
add r10, rax
add r11, rsi
xor r9, r11
add r11, qword [rsp + 0x88]
mov qword [rsp + 0x50], rbx
xor r9, rcx
mov r13, qword [rbp + 0x10]
mov qword [rsp + 0x48], rdi
movabs rcx, 0x6a09e667f3bcc908
rol r9, 0x20
mov r12, qword [rsp + 0x108]
mov qword [rsp + 0x40], r15
add rcx, r9
xor rdx, rcx
ror rdx, 0x18
add r11, rdx
xor r9, r11
ror r9, 0x10
lea r14, [rcx + r9]
movabs rcx, 0x9b05688c2b3e6c1f
xor rdx, r14
mov qword [rsp + 0x30], r14
mov r14, rdx
mov rdx, qword [rsp + 0x128]
rol r14, 1
add r12, rdx
mov qword [rsp + 0x20], r14
movabs r14, 0xbb67ae8584caa73b
mov rsi, r12
mov r12, qword [rbp + 0x10]
add rsi, rbx
movabs rbx, 0x1f83d9abfb41bd6b
mov r8, qword [r12 + 0x48]
mov r12, qword [r12 + 0x50]
xor r8, rsi
add rsi, qword [rsp + 0x98]
xor r8, rcx
rol r8, 0x20
add r14, r8
xor rdx, r14
ror rdx, 0x18
add rsi, rdx
xor r8, rsi
ror r8, 0x10
add r14, r8
xor rdx, r14
rol rdx, 1
add r10, rdi
mov rdi, qword [rsp + 0x138]
xor r12, r10
add r10, qword [rsp + 0xa8]
mov rcx, r12
movabs r12, 0x3c6ef372fe94f82b
xor rcx, rbx
mov rbx, qword [rsp + 0x118]
rol rcx, 0x20
add r12, rcx
add rbx, rdi
xor rax, r12
add rbx, r15
ror rax, 0x18
add r10, rax
xor rcx, r10
ror rcx, 0x10
mov qword [rsp + 0x18], rcx
add r12, rcx
mov rcx, qword [r13 + 0x58]
movabs r13, 0x5be0cd19137e2179
xor rax, r12
xor rcx, rbx
add rbx, qword [rsp + 0xb8]
rol rax, 1
mov r15, rcx
mov rcx, qword [rsp + 0x70]
xor r15, r13
movabs r13, 0xa54ff53a5f1d36f1
rol r15, 0x20
add r11, rcx
mov rcx, qword [rsp + 0x68]
add r13, r15
add r11, rdx
xor rdi, r13
ror rdi, 0x18
add rbx, rdi
xor r15, rbx
ror r15, 0x10
add r13, r15
xor r15, r11
xor rdi, r13
rol rdi, 1
rol r15, 0x20
add r11, qword [rsp + 0xc8]
add rsi, rcx
add r12, r15
add rsi, rax
mov rcx, qword [rsp + 0x18]
xor rdx, r12
xor r9, rsi
add rsi, qword [rsp + 0xd8]
ror rdx, 0x18
rol r9, 0x20
add r11, rdx
add r13, r9
xor r15, r11
xor rax, r13
ror r15, 0x10
ror rax, 0x18
add r12, r15
mov qword [rsp + 0x10], r15
mov r15, qword [rsp + 0x60]
add rsi, rax
xor r9, rsi
xor rdx, r12
ror r9, 0x10
add r10, r15
mov r15, qword [rsp + 0x30]
rol rdx, 1
add r10, rdi
add r13, r9
xor r8, r10
xor rax, r13
mov qword [rsp + 0x28], r13
mov r13, qword [rsp + 0x20]
rol r8, 0x20
rol rax, 1
add r15, r8
xor rdi, r15
ror rdi, 0x18
add r10, qword [rsp + 0xe8]
add r10, rdi
xor r8, r10
ror r8, 0x10
add r15, r8
mov qword [rsp + 8], r8
mov r8, qword [rsp + 0x38]
xor rdi, r15
add rbx, r8
add r11, r8
rol rdi, 1
add rbx, r13
xor rcx, rbx
add rbx, qword [rsp + 0xf8]
mov r8, qword [rsp + 0x68]
rol rcx, 0x20
add r14, rcx
xor r13, r14
ror r13, 0x18
add rbx, r13
xor rcx, rbx
ror rcx, 0x10
add r14, rcx
xor r13, r14
rol r13, 1
add r11, r13
xor r9, r11
add r11, r8
rol r9, 0x20
add r15, r9
xor r13, r15
ror r13, 0x18
add r11, r13
xor r9, r11
ror r9, 0x10
lea r8, [r15 + r9]
xor r13, r8
mov qword [rsp + 0x30], r8
mov r8, qword [rsp + 8]
mov r15, r13
mov r13, qword [rsp + 0x48]
add r10, qword [rsp + 0xc8]
add r10, rax
add rbx, qword [rsp + 0xe8]
rol r15, 1
add rsi, r13
xor rcx, r10
mov r13, qword [rsp + 0x70]
add rbx, rdi
add rsi, rdx
rol rcx, 0x20
add r10, qword [rsp + 0xf8]
xor r8, rsi
add r12, rcx
add rsi, r13
rol r8, 0x20
xor rax, r12
add r14, r8
ror rax, 0x18
xor rdx, r14
add r10, rax
ror rdx, 0x18
xor rcx, r10
add rsi, rdx
ror rcx, 0x10
xor r8, rsi
add r12, rcx
ror r8, 0x10
xor rax, r12
add r14, r8
rol rax, 1
mov qword [rsp + 0x20], r14
xor rdx, r14
mov r14, qword [rsp + 0x10]
rol rdx, 1
mov qword [rsp + 0x18], rax
mov rax, qword [rsp + 0x40]
xor r14, rbx
add r11, qword [rsp + 0x88]
mov r13, r14
mov r14, qword [rsp + 0x28]
add rbx, rax
add r11, rdx
rol r13, 0x20
mov rax, qword [rsp + 0x60]
add r14, r13
xor rdi, r14
ror rdi, 0x18
add rbx, rdi
xor r13, rbx
ror r13, 0x10
add r14, r13
xor r13, r11
add r11, rax
mov rax, qword [rsp + 0x18]
rol r13, 0x20
xor rdi, r14
add r12, r13
rol rdi, 1
xor rdx, r12
ror rdx, 0x18
add r11, rdx
xor r13, r11
ror r13, 0x10
add r12, r13
mov qword [rsp + 0x10], r13
mov r13, qword [rsp + 0x58]
xor rdx, r12
add rsi, r13
mov r13, qword [rsp + 0x50]
rol rdx, 1
add rsi, rax
xor r9, rsi
rol r9, 0x20
add r14, r9
xor rax, r14
ror rax, 0x18
add rsi, r13
add r10, qword [rsp + 0xd8]
add rbx, qword [rsp + 0xa8]
add rsi, rax
add r10, rdi
add rbx, r15
xor r9, rsi
xor r8, r10
xor rcx, rbx
add r10, qword [rsp + 0xb8]
ror r9, 0x10
rol r8, 0x20
add rbx, qword [rsp + 0x98]
lea r13, [r14 + r9]
mov r14, qword [rsp + 0x30]
rol rcx, 0x20
mov qword [rsp + 0x28], r13
xor rax, r13
lea r13, [r14 + r8]
mov r14, qword [rsp + 0x20]
rol rax, 1
xor rdi, r13
add r14, rcx
ror rdi, 0x18
xor r15, r14
add r10, rdi
ror r15, 0x18
xor r8, r10
add rbx, r15
ror r8, 0x10
xor rcx, rbx
add r13, r8
ror rcx, 0x10
xor rdi, r13
add r14, rcx
rol rdi, 1
mov qword [rsp + 0x20], rcx
mov rcx, qword [rsp + 0x70]
xor r15, r14
add r11, qword [rsp + 0xd8]
rol r15, 1
add r11, r15
xor r9, r11
add r11, rcx
rol r9, 0x20
add r13, r9
xor r15, r13
ror r15, 0x18
add r11, r15
xor r9, r11
ror r9, 0x10
add r13, r9
mov qword [rsp + 0x18], r9
xor r15, r13
mov r9, r15
rol r9, 1
mov qword [rsp + 8], r9
mov r9, qword [rsp + 0x60]
mov r15, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x20]
add rsi, r9
add r10, qword [rsp + 0xa8]
mov r9, qword [rsp + 0x28]
add rsi, rdx
add r10, rax
xor r8, rsi
add rsi, r15
rol r8, 0x20
add r14, r8
xor rdx, r14
ror rdx, 0x18
add rsi, rdx
xor r8, rsi
ror r8, 0x10
add r14, r8
mov qword [rsp + 0x30], r14
xor rdx, r14
mov r14, qword [rsp + 0x50]
rol rdx, 1
xor rcx, r10
add rbx, qword [rsp + 0xf8]
add r10, r14
mov r14, qword [rsp + 0x10]
add rbx, rdi
rol rcx, 0x20
add r12, rcx
xor r14, rbx
xor rax, r12
add rbx, qword [rsp + 0xe8]
rol r14, 0x20
ror rax, 0x18
lea r15, [r9 + r14]
mov r9, qword [rsp + 0x68]
add r10, rax
xor rdi, r15
xor rcx, r10
ror rdi, 0x18
add r11, r9
ror rcx, 0x10
mov r9, qword [rsp + 0x38]
add rbx, rdi
add r11, rdx
add r12, rcx
xor r14, rbx
xor rax, r12
ror r14, 0x10
rol rax, 1
add r15, r14
xor r14, r11
rol r14, 0x20
xor rdi, r15
add r12, r14
rol rdi, 1
xor rdx, r12
ror rdx, 0x18
add r11, r9
mov r9, qword [rsp + 0x18]
add rsi, qword [rsp + 0x98]
add r11, rdx
add rsi, rax
add r10, qword [rsp + 0xb8]
xor r14, r11
xor r9, rsi
add r10, rdi
ror r14, 0x10
rol r9, 0x20
xor r8, r10
add r10, qword [rsp + 0x88]
add r12, r14
add r15, r9
mov qword [rsp + 0x20], r14
mov r14, qword [rsp + 0x40]
xor rax, r15
rol r8, 0x20
xor rdx, r12
ror rax, 0x18
add rsi, r14
add r13, r8
rol rdx, 1
add rsi, rax
xor rdi, r13
xor r9, rsi
ror rdi, 0x18
add r10, rdi
ror r9, 0x10
add r15, r9
xor r8, r10
xor rax, r15
ror r8, 0x10
mov qword [rsp + 0x28], r15
mov r15, qword [rsp + 0x30]
rol rax, 1
add r13, r8
add rbx, qword [rsp + 0xc8]
add r11, qword [rsp + 0xb8]
xor rdi, r13
add rsi, qword [rsp + 0x98]
rol rdi, 1
add rsi, rdx
mov qword [rsp + 0x18], rdi
mov rdi, qword [rsp + 8]
add rbx, rdi
xor rcx, rbx
rol rcx, 0x20
lea r14, [r15 + rcx]
xor rdi, r14
mov r15, rdi
mov rdi, qword [rsp + 0x48]
ror r15, 0x18
add rbx, rdi
add rbx, r15
xor rcx, rbx
ror rcx, 0x10
add r14, rcx
xor r15, r14
rol r15, 1
add r11, r15
xor r9, r11
add r11, qword [rsp + 0xc8]
rol r9, 0x20
add r13, r9
xor r15, r13
ror r15, 0x18
add r11, r15
xor r9, r11
ror r9, 0x10
add r13, r9
xor r15, r13
rol r15, 1
xor r8, rsi
add rsi, qword [rsp + 0x88]
add r10, qword [rsp + 0xe8]
rol r8, 0x20
add r10, rax
mov qword [rsp + 0x10], r15
add r14, r8
xor rcx, r10
xor rdx, r14
rol rcx, 0x20
ror rdx, 0x18
add r12, rcx
add rsi, rdx
xor rax, r12
xor r8, rsi
ror rax, 0x18
ror r8, 0x10
lea rdi, [r14 + r8]
mov qword [rsp + 0x30], rdi
xor rdx, rdi
mov rdi, qword [rsp + 0x60]
rol rdx, 1
add r10, rdi
add r10, rax
xor rcx, r10
ror rcx, 0x10
add r12, rcx
xor rax, r12
rol rax, 1
mov qword [rsp + 8], rax
mov rdi, qword [rsp + 0x18]
mov r14, qword [rsp + 0x20]
add rbx, qword [rsp + 0xd8]
add rbx, rdi
mov rax, qword [rsp + 0x28]
xor r14, rbx
rol r14, 0x20
lea r15, [rax + r14]
mov rax, qword [rsp + 0x38]
xor rdi, r15
ror rdi, 0x18
add rbx, rax
mov rax, qword [rsp + 0x50]
add rbx, rdi
add rsi, qword [rsp + 0xa8]
xor r14, rbx
add r11, rax
mov rax, qword [rsp + 0x40]
add r11, rdx
ror r14, 0x10
add r15, r14
xor r14, r11
add r11, rax
mov rax, qword [rsp + 8]
rol r14, 0x20
xor rdi, r15
add r12, r14
add rsi, rax
rol rdi, 1
xor rdx, r12
xor r9, rsi
ror rdx, 0x18
rol r9, 0x20
add r11, rdx
add r15, r9
xor r14, r11
xor rax, r15
ror r14, 0x10
ror rax, 0x18
mov qword [rsp + 0x18], r14
add r12, r14
mov r14, qword [rsp + 0x68]
xor rdx, r12
add rsi, r14
rol rdx, 1
add rsi, rax
xor r9, rsi
mov qword [rsp + 0x28], rsi
ror r9, 0x10
lea rsi, [r15 + r9]
mov r15, qword [rsp + 0x58]
mov qword [rsp + 0x20], rsi
xor rax, rsi
mov rsi, qword [rsp + 0x48]
rol rax, 1
add rbx, qword [rsp + 0xf8]
add r11, qword [rsp + 0xc8]
add r10, rsi
mov rsi, qword [rsp + 0x10]
add r10, rdi
add rbx, rsi
xor r8, r10
add r10, r15
mov r15, qword [rsp + 0x30]
xor rcx, rbx
rol r8, 0x20
rol rcx, 0x20
add r13, r8
lea r14, [r15 + rcx]
xor rdi, r13
xor rsi, r14
ror rdi, 0x18
mov r15, rsi
mov rsi, qword [rsp + 0x70]
add r10, rdi
ror r15, 0x18
xor r8, r10
add rbx, rsi
ror r8, 0x10
mov rsi, qword [rsp + 0x58]
add rbx, r15
add r13, r8
xor rcx, rbx
xor rdi, r13
ror rcx, 0x10
rol rdi, 1
add r14, rcx
xor r15, r14
rol r15, 1
add r11, r15
xor r9, r11
rol r9, 0x20
add r13, r9
add r11, rsi
mov rsi, qword [rsp + 0x28]
add rsi, qword [rsp + 0xa8]
add rsi, rdx
xor r15, r13
xor r8, rsi
ror r15, 0x18
add rsi, qword [rsp + 0xb8]
rol r8, 0x20
add r11, r15
add r14, r8
xor r9, r11
xor rdx, r14
ror r9, 0x10
ror rdx, 0x18
add r13, r9
add rsi, rdx
xor r15, r13
xor r8, rsi
rol r15, 1
ror r8, 0x10
mov qword [rsp + 0x10], r15
lea r15, [r14 + r8]
mov r14, qword [rsp + 0x50]
mov qword [rsp + 0x30], r15
xor rdx, r15
mov r15, qword [rsp + 0x48]
add r10, r14
mov r14, qword [rsp + 0x68]
rol rdx, 1
add r10, rax
mov qword [rsp + 0x28], rdx
mov rdx, qword [rsp + 0x18]
xor rcx, r10
add r10, r15
rol rcx, 0x20
add r12, rcx
xor rax, r12
ror rax, 0x18
add r10, rax
xor rcx, r10
add rbx, r14
add rbx, rdi
ror rcx, 0x10
xor rdx, rbx
add r12, rcx
mov r14, rdx
mov rdx, qword [rsp + 0x20]
add rbx, qword [rsp + 0xf8]
xor rax, r12
rol r14, 0x20
rol rax, 1
lea r15, [rdx + r14]
mov rdx, qword [rsp + 0x38]
xor rdi, r15
ror rdi, 0x18
add r11, rdx
mov rdx, qword [rsp + 0x28]
add rbx, rdi
xor r14, rbx
add r11, rdx
ror r14, 0x10
add r15, r14
xor r14, r11
add r11, qword [rsp + 0x88]
rol r14, 0x20
xor rdi, r15
add r12, r14
rol rdi, 1
xor rdx, r12
ror rdx, 0x18
add r11, rdx
xor r14, r11
ror r14, 0x10
add r12, r14
mov qword [rsp + 0x20], r14
xor rdx, r12
rol rdx, 1
add rsi, qword [rsp + 0xd8]
add rbx, qword [rsp + 0x98]
add rsi, rax
mov qword [rsp + 0x18], rdx
mov rdx, qword [rsp + 0x60]
xor r9, rsi
rol r9, 0x20
add rsi, rdx
add r15, r9
xor rax, r15
ror rax, 0x18
add rsi, rax
xor r9, rsi
ror r9, 0x10
lea rdx, [r15 + r9]
mov r15, qword [rsp + 0x10]
mov qword [rsp + 0x28], rdx
xor rax, rdx
mov rdx, qword [rsp + 0x40]
add rbx, r15
rol rax, 1
add r10, rdx
mov rdx, qword [rsp + 0x70]
xor rcx, rbx
add r10, rdi
rol rcx, 0x20
xor r8, r10
add r10, rdx
mov rdx, qword [rsp + 0x30]
rol r8, 0x20
add r13, r8
lea r14, [rdx + rcx]
mov rdx, qword [rsp + 0x50]
xor rdi, r13
xor r15, r14
ror rdi, 0x18
add r10, rdi
xor r8, r10
ror r8, 0x10
add r13, r8
xor rdi, r13
rol rdi, 1
ror r15, 0x18
add rbx, qword [rsp + 0xe8]
add r11, rdx
add rbx, r15
mov rdx, qword [rsp + 0x60]
xor rcx, rbx
ror rcx, 0x10
add r14, rcx
xor r15, r14
rol r15, 1
add r11, r15
xor r9, r11
add r11, rdx
mov rdx, qword [rsp + 0x40]
rol r9, 0x20
add r13, r9
add rsi, rdx
mov rdx, qword [rsp + 0x18]
xor r15, r13
ror r15, 0x18
add rsi, rdx
add r11, r15
xor r8, rsi
xor r9, r11
rol r8, 0x20
ror r9, 0x10
add r14, r8
add r13, r9
xor rdx, r14
xor r15, r13
ror rdx, 0x18
rol r15, 1
mov qword [rsp + 0x10], r15
mov r15, qword [rsp + 0x68]
add rsi, r15
add rsi, rdx
xor r8, rsi
ror r8, 0x10
lea r15, [r14 + r8]
mov r14, qword [rsp + 0x20]
mov qword [rsp + 0x30], r15
xor rdx, r15
mov r15, qword [rsp + 0x58]
rol rdx, 1
add r10, r15
add r10, rax
xor rcx, r10
add r10, qword [rsp + 0xd8]
rol rcx, 0x20
add r12, rcx
xor rax, r12
ror rax, 0x18
add r10, rax
xor rcx, r10
ror rcx, 0x10
add r12, rcx
xor rax, r12
rol rax, 1
mov qword [rsp + 0x18], rax
mov rax, qword [rsp + 0x70]
add rbx, rax
mov rax, qword [rsp + 0x28]
add rbx, rdi
xor r14, rbx
add rbx, qword [rsp + 0x98]
rol r14, 0x20
lea r15, [rax + r14]
mov rax, qword [rsp + 0x48]
xor rdi, r15
ror rdi, 0x18
add r11, rax
add rbx, rdi
add r11, rdx
xor r14, rbx
ror r14, 0x10
add r15, r14
xor rdi, r15
rol rdi, 1
xor r14, r11
add r11, qword [rsp + 0xe8]
rol r14, 0x20
add r12, r14
xor rdx, r12
ror rdx, 0x18
add r11, rdx
xor r14, r11
ror r14, 0x10
mov qword [rsp + 0x20], r14
add rsi, qword [rsp + 0xb8]
add r12, r14
mov rax, qword [rsp + 0x18]
add r10, qword [rsp + 0xf8]
xor rdx, r12
add r10, rdi
rol rdx, 1
add rsi, rax
xor r8, r10
xor r9, rsi
add rsi, qword [rsp + 0xa8]
rol r8, 0x20
rol r9, 0x20
add r13, r8
add r15, r9
xor rdi, r13
xor rax, r15
ror rdi, 0x18
ror rax, 0x18
add rsi, rax
xor r9, rsi
ror r9, 0x10
lea r14, [r15 + r9]
mov r15, qword [rsp + 0x30]
mov qword [rsp + 0x28], r14
xor rax, r14
mov r14, qword [rsp + 0x38]
rol rax, 1
add r10, r14
add rbx, qword [rsp + 0x88]
add r10, rdi
xor r8, r10
ror r8, 0x10
add r13, r8
xor rdi, r13
rol rdi, 1
mov qword [rsp + 0x18], rdi
mov rdi, qword [rsp + 0x10]
add rbx, rdi
xor rcx, rbx
add rbx, qword [rsp + 0xc8]
rol rcx, 0x20
lea r14, [r15 + rcx]
xor rdi, r14
mov r15, rdi
mov rdi, qword [rsp + 0x60]
ror r15, 0x18
add rbx, r15
add r11, rdi
xor rcx, rbx
ror rcx, 0x10
add r14, rcx
xor r15, r14
rol r15, 1
add r11, r15
xor r9, r11
add r11, qword [rsp + 0xa8]
rol r9, 0x20
add r13, r9
xor r15, r13
ror r15, 0x18
add r11, r15
xor r9, r11
ror r9, 0x10
add r13, r9
xor r15, r13
add rsi, qword [rsp + 0x88]
add rsi, rdx
mov rdi, r15
xor r8, rsi
add rsi, qword [rsp + 0xf8]
rol rdi, 1
rol r8, 0x20
mov qword [rsp + 0x10], rdi
add r14, r8
xor rdx, r14
ror rdx, 0x18
add rsi, rdx
xor r8, rsi
ror r8, 0x10
lea rdi, [r14 + r8]
mov r14, qword [rsp + 0x20]
mov qword [rsp + 0x30], rdi
xor rdx, rdi
mov rdi, qword [rsp + 0x38]
rol rdx, 1
add r10, rdi
mov rdi, qword [rsp + 0x18]
add r10, rax
xor rcx, r10
add r10, qword [rsp + 0xe8]
rol rcx, 0x20
add r12, rcx
xor rax, r12
ror rax, 0x18
add r10, rax
xor rcx, r10
ror rcx, 0x10
add r12, rcx
xor rax, r12
rol rax, 1
mov qword [rsp + 8], rax
mov rax, qword [rsp + 0x48]
add rbx, rax
mov rax, qword [rsp + 0x28]
add rbx, rdi
xor r14, rbx
rol r14, 0x20
lea r15, [rax + r14]
mov rax, qword [rsp + 0x68]
xor rdi, r15
ror rdi, 0x18
add rbx, rax
mov rax, qword [rsp + 0x58]
add rbx, rdi
xor r14, rbx
add r11, rax
mov rax, qword [rsp + 8]
add r11, rdx
ror r14, 0x10
add r15, r14
xor r14, r11
add r11, qword [rsp + 0xb8]
rol r14, 0x20
xor rdi, r15
add r12, r14
rol rdi, 1
xor rdx, r12
ror rdx, 0x18
add r11, rdx
xor r14, r11
ror r14, 0x10
add r12, r14
mov qword [rsp + 0x20], r14
mov r14, qword [rsp + 0x40]
xor rdx, r12
add rsi, r14
rol rdx, 1
add rsi, rax
xor r9, rsi
add rsi, qword [rsp + 0x98]
rol r9, 0x20
add r15, r9
xor rax, r15
ror rax, 0x18
add rsi, rax
xor r9, rsi
ror r9, 0x10
add r15, r9
mov qword [rsp + 0x28], r15
xor rax, r15
add r10, qword [rsp + 0xc8]
mov r15, qword [rsp + 0x70]
mov r14, qword [rsp + 0x50]
add r10, rdi
rol rax, 1
xor r8, r10
add rbx, r15
mov r15, qword [rsp + 0x10]
rol r8, 0x20
add r10, r14
mov r14, qword [rsp + 0x30]
add r13, r8
add rbx, r15
xor rdi, r13
xor rcx, rbx
ror rdi, 0x18
add rbx, qword [rsp + 0xd8]
rol rcx, 0x20
add r10, rdi
add r14, rcx
xor r8, r10
xor r15, r14
ror r8, 0x10
ror r15, 0x18
add r13, r8
add rbx, r15
xor rdi, r13
xor rcx, rbx
rol rdi, 1
ror rcx, 0x10
add r14, rcx
xor r15, r14
add r11, qword [rsp + 0xe8]
add rsi, qword [rsp + 0xb8]
rol r15, 1
add rsi, rdx
add r11, r15
xor r8, rsi
xor r9, r11
add r11, qword [rsp + 0xd8]
rol r8, 0x20
rol r9, 0x20
add r14, r8
add r13, r9
xor rdx, r14
xor r15, r13
ror rdx, 0x18
ror r15, 0x18
add r11, r15
xor r9, r11
ror r9, 0x10
add r13, r9
xor r15, r13
rol r15, 1
mov qword [rsp + 0x18], r15
mov r15, qword [rsp + 0x38]
add rsi, r15
mov r15, qword [rsp + 0x60]
add rsi, rdx
xor r8, rsi
add r10, r15
ror r8, 0x10
add r10, rax
add r14, r8
xor rdx, r14
mov qword [rsp + 0x30], r14
mov r14, qword [rsp + 0x20]
rol rdx, 1
xor rcx, r10
add r10, qword [rsp + 0x88]
add rbx, qword [rsp + 0x98]
rol rcx, 0x20
add rbx, rdi
add r11, qword [rsp + 0xa8]
add r12, rcx
xor r14, rbx
add rbx, qword [rsp + 0xc8]
add r11, rdx
xor rax, r12
rol r14, 0x20
ror rax, 0x18
add r10, rax
xor rcx, r10
ror rcx, 0x10
add r12, rcx
xor rax, r12
rol rax, 1
mov qword [rsp + 0x10], rax
mov rax, qword [rsp + 0x28]
lea r15, [rax + r14]
mov rax, qword [rsp + 0x58]
xor rdi, r15
ror rdi, 0x18
add rbx, rdi
xor r14, rbx
ror r14, 0x10
add r15, r14
xor r14, r11
rol r14, 0x20
xor rdi, r15
add r12, r14
rol rdi, 1
xor rdx, r12
ror rdx, 0x18
add r11, rax
mov rax, qword [rsp + 0x10]
add rsi, qword [rsp + 0xf8]
add r11, rdx
add rsi, rax
xor r14, r11
xor r9, rsi
ror r14, 0x10
rol r9, 0x20
add r12, r14
mov qword [rsp + 0x20], r14
mov r14, qword [rsp + 0x48]
add r15, r9
xor rdx, r12
xor rax, r15
add rsi, r14
mov r14, qword [rsp + 0x50]
rol rdx, 1
ror rax, 0x18
add rsi, rax
xor r9, rsi
ror r9, 0x10
mov qword [rsp + 0x10], r9
add r9, r15
mov r15, qword [rsp + 0x40]
mov qword [rsp + 0x28], r9
xor rax, r9
mov r9, qword [rsp + 0x70]
rol rax, 1
add r10, r9
mov r9, qword [rsp + 0x18]
add r10, rdi
xor r8, r10
add r10, r15
mov r15, qword [rsp + 0x30]
rol r8, 0x20
add r13, r8
xor rdi, r13
ror rdi, 0x18
add r10, rdi
xor r8, r10
ror r8, 0x10
add r13, r8
add rbx, r14
add rbx, r9
xor rdi, r13
xor rcx, rbx
rol rdi, 1
rol rcx, 0x20
lea r14, [r15 + rcx]
xor r9, r14
mov r15, r9
mov r9, qword [rsp + 0x68]
ror r15, 0x18
add rbx, r9
mov r9, qword [rsp + 0x40]
add rbx, r15
xor rcx, rbx
add r11, r9
mov r9, qword [rsp + 0x10]
ror rcx, 0x10
add r14, rcx
xor r15, r14
rol r15, 1
add r11, r15
xor r9, r11
add r11, qword [rsp + 0xf8]
rol r9, 0x20
add r13, r9
xor r15, r13
ror r15, 0x18
add r11, r15
xor r9, r11
ror r9, 0x10
add r13, r9
xor r15, r13
rol r15, 1
mov qword [rsp + 0x18], r15
mov r15, qword [rsp + 0x38]
add rsi, r15
mov r15, qword [rsp + 0x58]
add rsi, rdx
xor r8, rsi
add r10, qword [rsp + 0xd8]
add rsi, qword [rsp + 0xc8]
add rbx, r15
add r10, rax
rol r8, 0x20
add rbx, rdi
xor rcx, r10
add r14, r8
add r10, qword [rsp + 0x98]
rol rcx, 0x20
xor rdx, r14
add r12, rcx
ror rdx, 0x18
xor rax, r12
add rsi, rdx
ror rax, 0x18
xor r8, rsi
add r10, rax
ror r8, 0x10
xor rcx, r10
add r14, r8
ror rcx, 0x10
mov qword [rsp + 0x30], r14
xor rdx, r14
mov qword [rsp + 0x10], rcx
add r12, rcx
mov rcx, qword [rsp + 0x20]
rol rdx, 1
xor rax, r12
xor rcx, rbx
rol rax, 1
mov r14, rcx
mov rcx, qword [rsp + 0x28]
rol r14, 0x20
lea r15, [rcx + r14]
mov rcx, qword [rsp + 0x70]
xor rdi, r15
ror rdi, 0x18
add rbx, rcx
mov rcx, qword [rsp + 0x60]
add rsi, qword [rsp + 0xe8]
add rbx, rdi
add rsi, rax
xor r14, rbx
add r11, rcx
mov rcx, qword [rsp + 0x50]
xor r9, rsi
add r11, rdx
ror r14, 0x10
add rsi, qword [rsp + 0xb8]
add r15, r14
xor r14, r11
rol r9, 0x20
add r11, rcx
rol r14, 0x20
xor rdi, r15
add r15, r9
mov rcx, qword [rsp + 0x10]
add r12, r14
xor rax, r15
rol rdi, 1
xor rdx, r12
ror rax, 0x18
ror rdx, 0x18
add rsi, rax
add r11, rdx
xor r9, rsi
xor r14, r11
ror r9, 0x10
ror r14, 0x10
add r12, r14
mov qword [rsp + 0x20], r14
mov r14, qword [rsp + 0x30]
xor rdx, r12
rol rdx, 1
mov qword [rsp + 8], rdx
lea rdx, [r15 + r9]
mov r15, qword [rsp + 0x18]
xor rax, rdx
mov qword [rsp + 0x28], rdx
add r10, qword [rsp + 0x88]
mov rdx, qword [rsp + 0x48]
add r10, rdi
rol rax, 1
xor r8, r10
add r10, rdx
mov rdx, qword [rsp + 0x68]
rol r8, 0x20
add r13, r8
add rbx, rdx
xor rdi, r13
add r11, rdx
mov rdx, qword [rsp + 0x50]
add rbx, r15
ror rdi, 0x18
xor rcx, rbx
add rbx, qword [rsp + 0xa8]
add r10, rdi
rol rcx, 0x20
xor r8, r10
add r14, rcx
ror r8, 0x10
xor r15, r14
add r13, r8
ror r15, 0x18
xor rdi, r13
add rbx, r15
rol rdi, 1
xor rcx, rbx
ror rcx, 0x10
add r14, rcx
xor r15, r14
rol r15, 1
add r11, r15
xor r9, r11
add r11, rdx
mov rdx, qword [rsp + 0x70]
rol r9, 0x20
add r13, r9
add rsi, rdx
xor r15, r13
ror r15, 0x18
add r11, r15
xor r9, r11
ror r9, 0x10
add r13, r9
xor r15, r13
rol r15, 1
mov qword [rsp + 0x18], r15
mov rdx, qword [rsp + 8]
mov r15, qword [rsp + 0x48]
add r10, qword [rsp + 0xb8]
add rsi, rdx
add r10, rax
xor r8, rsi
add rsi, r15
xor rcx, r10
mov r15, qword [rsp + 0x28]
rol r8, 0x20
rol rcx, 0x20
add r14, r8
add r12, rcx
xor rdx, r14
xor rax, r12
ror rdx, 0x18
add rsi, rdx
xor r8, rsi
ror r8, 0x10
add r14, r8
mov qword [rsp + 0x30], r14
xor rdx, r14
mov r14, qword [rsp + 0x40]
rol rdx, 1
ror rax, 0x18
add rbx, qword [rsp + 0x88]
add r11, qword [rsp + 0xf8]
add r10, r14
mov r14, qword [rsp + 0x20]
add rbx, rdi
add r11, rdx
add r10, rax
xor r14, rbx
add rbx, qword [rsp + 0xa8]
xor rcx, r10
rol r14, 0x20
ror rcx, 0x10
add r15, r14
add r12, rcx
xor rdi, r15
xor rax, r12
ror rdi, 0x18
rol rax, 1
add rbx, rdi
xor r14, rbx
ror r14, 0x10
add r15, r14
xor r14, r11
add r11, qword [rsp + 0xd8]
rol r14, 0x20
xor rdi, r15
add r12, r14
rol rdi, 1
xor rdx, r12
ror rdx, 0x18
add r11, rdx
xor r14, r11
ror r14, 0x10
add rsi, qword [rsp + 0xc8]
add r10, qword [rsp + 0x98]
add r12, r14
add rsi, rax
add r10, rdi
mov qword [rsp + 0x10], r14
mov qword [rsp + 0x28], r12
xor rdx, r12
xor r9, rsi
mov r12, qword [rsp + 0x38]
rol r9, 0x20
xor r8, r10
mov r14, qword [rsp + 0x18]
rol rdx, 1
rol r8, 0x20
add r15, r9
add rsi, r12
add rbx, qword [rsp + 0xe8]
lea r12, [r13 + r8]
mov r13, qword [rsp + 0x60]
xor rax, r15
add rbx, r14
xor rdi, r12
ror rax, 0x18
ror rdi, 0x18
add r10, r13
add rsi, rax
lea r13, [r10 + rdi]
xor r9, rsi
mov r10, qword [rsp + 0x30]
xor r8, r13
ror r9, 0x10
ror r8, 0x10
add r15, r9
add r12, r8
xor rax, r15
mov qword [rsp + 0x20], r15
mov r15, qword [rsp + 0x58]
xor rdi, r12
rol rax, 1
rol rdi, 1
xor rcx, rbx
add rbx, r15
rol rcx, 0x20
add r10, rcx
xor r14, r10
ror r14, 0x18
add rbx, r14
xor rcx, rbx
ror rcx, 0x10
lea r15, [r10 + rcx]
mov r10, qword [rsp + 0x58]
xor r14, r15
rol r14, 1
add r11, r10
add r11, r14
xor r9, r11
add r11, qword [rsp + 0x88]
rol r9, 0x20
add r12, r9
xor r14, r12
ror r14, 0x18
add r11, r14
xor r9, r11
ror r9, 0x10
mov r10, r9
lea r9, [r12 + r9]
mov r12, qword [rsp + 0x28]
xor r14, r9
mov qword [rsp + 0x30], r9
mov r9, r14
rol r9, 1
mov qword [rsp + 8], r9
mov r9, qword [rsp + 0x50]
add rsi, r9
add rsi, rdx
xor r8, rsi
add rsi, qword [rsp + 0x98]
rol r8, 0x20
add r15, r8
xor rdx, r15
ror rdx, 0x18
add rsi, rdx
xor r8, rsi
ror r8, 0x10
mov r9, r8
lea r8, [r15 + r8]
mov qword [rsp + 0x18], r8
xor rdx, r8
mov r8, qword [rsp + 0x48]
rol rdx, 1
add r13, r8
add r13, rax
xor rcx, r13
add r13, qword [rsp + 0xa8]
rol rcx, 0x20
add r12, rcx
xor rax, r12
ror rax, 0x18
lea r14, [r13 + rax]
xor rcx, r14
ror rcx, 0x10
mov r8, rcx
lea rcx, [r12 + rcx]
mov r12, qword [rsp + 0x40]
xor rax, rcx
add rbx, r12
mov r12, qword [rsp + 0x70]
rol rax, 1
lea r13, [rbx + rdi]
mov rbx, qword [rsp + 0x10]
add r11, r12
xor rbx, r13
add r13, qword [rsp + 0xb8]
add r11, rdx
mov r15, rbx
mov rbx, qword [rsp + 0x20]
rol r15, 0x20
add rbx, r15
xor rdi, rbx
ror rdi, 0x18
add r13, rdi
xor r15, r13
ror r15, 0x10
add rbx, r15
xor rdi, rbx
rol rdi, 1
xor r15, r11
add r11, qword [rsp + 0xc8]
rol r15, 0x20
add rcx, r15
xor rdx, rcx
ror rdx, 0x18
lea r12, [r11 + rdx]
xor r15, r12
mov r11, r15
ror r11, 0x10
mov qword [rsp + 0x20], r11
lea r15, [rcx + r11]
mov r11, qword [rsp + 0x68]
mov rcx, rdx
xor rcx, r15
add rsi, r11
rol rcx, 1
mov r11, qword [rsp + 0x18]
add rsi, rax
xor r10, rsi
add rsi, qword [rsp + 0xd8]
rol r10, 0x20
add rbx, r10
xor rax, rbx
mov rdx, rax
mov rax, qword [rsp + 0x60]
ror rdx, 0x18
add rsi, rdx
xor r10, rsi
ror r10, 0x10
add rbx, r10
mov qword [rsp + 0x28], rbx
xor rdx, rbx
lea rbx, [rax + r14]
mov rax, qword [rsp + 0x30]
add rbx, rdi
rol rdx, 1
xor r9, rbx
add rbx, qword [rsp + 0xe8]
rol r9, 0x20
lea r14, [rax + r9]
xor rdi, r14
mov rax, rdi
ror rax, 0x18
add rbx, rax
xor r9, rbx
ror r9, 0x10
add r14, r9
xor rax, r14
rol rax, 1
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x38]
lea rdi, [rax + r13]
mov r13, qword [rsp + 8]
add r12, rax
mov rax, qword [rsp + 0x68]
add rdi, r13
xor r8, rdi
add rdi, qword [rsp + 0xf8]
rol r8, 0x20
add r11, r8
xor r13, r11
ror r13, 0x18
add rdi, r13
xor r8, rdi
ror r8, 0x10
add r11, r8
xor r13, r11
rol r13, 1
add r12, r13
xor r10, r12
add r12, rax
rol r10, 0x20
add r14, r10
xor r13, r14
ror r13, 0x18
add r12, r13
xor r10, r12
ror r10, 0x10
lea rax, [r14 + r10]
mov r14, qword [rsp + 0x48]
xor r13, rax
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x30]
add rsi, r14
rol r13, 1
mov r14, qword [rsp + 0x70]
add rsi, rcx
mov qword [rsp + 0x38], r13
xor r9, rsi
add rbx, qword [rsp + 0xc8]
add rdi, qword [rsp + 0xe8]
add rsi, r14
add rbx, rdx
rol r9, 0x20
mov r13, rdi
mov rdi, qword [rsp + 0x20]
xor r8, rbx
add r11, r9
add r13, rax
mov r14, qword [rsp + 0x28]
rol r8, 0x20
add rbx, qword [rsp + 0xf8]
xor rcx, r11
xor rdi, r13
ror rcx, 0x18
add r15, r8
rol rdi, 0x20
xor rdx, r15
add rsi, rcx
add r14, rdi
ror rdx, 0x18
xor r9, rsi
xor rax, r14
add rbx, rdx
ror r9, 0x10
xor r8, rbx
add r11, r9
ror r8, 0x10
xor rcx, r11
add r15, r8
rol rcx, 1
xor rdx, r15
rol rdx, 1
ror rax, 0x18
add r12, qword [rsp + 0x88]
mov qword [rsp + 0x70], rdx
mov rdx, qword [rsp + 0x40]
add r12, rcx
add r13, rdx
mov rdx, qword [rsp + 0x60]
add r13, rax
xor rdi, r13
ror rdi, 0x10
add r14, rdi
xor rdi, r12
add r12, rdx
rol rdi, 0x20
xor rax, r14
add r15, rdi
rol rax, 1
xor rcx, r15
ror rcx, 0x18
add r12, rcx
mov qword [rsp + 0x100], r12
xor r12, rdi
ror r12, 0x10
add r15, r12
mov qword [rsp + 0x178], r12
mov qword [rsp + 0x150], r15
xor r15, rcx
rol r15, 1
mov qword [rsp + 0x128], r15
mov r15, qword [rsp + 0x58]
lea rcx, [r15 + rsi]
mov rsi, qword [rsp + 0x70]
add rcx, rsi
xor r10, rcx
rol r10, 0x20
add r14, r10
xor rsi, r14
mov rdx, rsi
mov rsi, qword [rsp + 0x50]
ror rdx, 0x18
add rcx, rsi
mov rsi, qword [rsp + 0x68]
add rcx, rdx
mov qword [rsp + 0x108], rcx
xor rcx, r10
ror rcx, 0x10
add r14, rcx
mov qword [rsp + 0x160], rcx
mov rcx, qword [rsp + 0xd8]
mov qword [rsp + 0x158], r14
xor r14, rdx
add rcx, rbx
mov rbx, qword [rsp + 0x38]
rol r14, 1
add rcx, rax
mov qword [rsp + 0x130], r14
xor r9, rcx
add rcx, qword [rsp + 0xb8]
rol r9, 0x20
mov rdx, rcx
lea r10, [rsi + r9]
xor rax, r10
ror rax, 0x18
add rdx, rax
mov qword [rsp + 0x110], rdx
xor rdx, r9
ror rdx, 0x10
add r10, rdx
mov qword [rsp + 0x168], rdx
mov qword [rsp + 0x140], r10
xor r10, rax
mov rax, qword [rsp + 0xa8]
rol r10, 1
add rax, r13
mov qword [rsp + 0x138], r10
add rax, rbx
xor r8, rax
add rax, qword [rsp + 0x98]
rol r8, 0x20
add r11, r8
xor rbx, r11
mov rdx, rbx
ror rdx, 0x18
add rax, rdx
mov qword [rsp + 0x118], rax
xor rax, r8
ror rax, 0x10
mov qword [rsp + 0x170], rax
add r11, rax
mov rax, qword [rbp + 0x10]
mov qword [rsp + 0x148], r11
xor r11, rdx
movdqu xmm0, xmmword [rsp + 0x140]
pxor xmm0, xmmword [rsp + 0x100]
movdqu xmm1, xmmword [rax]
rol r11, 1
mov qword [rsp + 0x120], r11
pxor xmm0, xmm1
movups xmmword [rax], xmm0
movdqu xmm0, xmmword [rsp + 0x150]
pxor xmm0, xmmword [rsp + 0x110]
movdqu xmm3, xmmword [rax + 0x10]
movdqu xmm5, xmmword [rax + 0x20]
movdqu xmm2, xmmword [rax + 0x30]
pxor xmm0, xmm3
movups xmmword [rax + 0x10], xmm0
movdqu xmm0, xmmword [rsp + 0x120]
pxor xmm0, xmmword [rsp + 0x160]
movups xmmword [rsp + 0x70], xmm2
pxor xmm0, xmm5
movups xmmword [rax + 0x20], xmm0
movdqu xmm0, xmmword [rsp + 0x170]
pxor xmm0, xmmword [rsp + 0x130]
pxor xmm0, xmm2
movups xmmword [rax + 0x30], xmm0
lea rsp, [rbp - 0x38]
xor eax, eax
pop rbx
pop rsi
pop rdi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret