Function at 0x140085cc0
Capabilities:
Hash data using sha512

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xe0
mov r14, r8
mov r10, qword [rdx]
mov qword [rsp + 0x88], r10
mov rax, qword [rdx + 8]
mov qword [rsp + 0x60], rax
mov rsi, qword [rdx + 0x10]
mov qword [rsp + 0xa8], rsi
mov rax, qword [rdx + 0x18]
mov qword [rsp + 0x80], rax
mov rdi, qword [rdx + 0x20]
mov qword [rsp + 0xa0], rdi
mov rax, qword [rdx + 0x28]
mov qword [rsp + 0x70], rax
mov r11, qword [rdx + 0x30]
mov qword [rsp + 0x90], r11
mov r9, qword [rcx]
mov qword [rsp + 0xd8], r9
mov rax, qword [rcx + 0x20]
mov qword [rsp + 0xb0], rax
add rax, r9
add rax, r10
mov r8, rax
mov qword [rsp], rax
mov rax, qword [rcx + 0x40]
xor rax, r8
movabs rbx, 0x510e527fade682d1
xor rbx, rax
movabs r15, 0x1f83d9abfb41bd6b
xor r15, r14
mov rax, qword [rdx + 0x38]
mov qword [rsp + 0x78], rax
mov rax, qword [rdx + 0x40]
mov qword [rsp + 0x58], rax
mov rax, qword [rdx + 0x48]
mov qword [rsp + 0x40], rax
mov rax, qword [rdx + 0x50]
mov qword [rsp + 0x30], rax
mov rax, qword [rdx + 0x58]
mov qword [rsp + 0x38], rax
mov rax, qword [rdx + 0x60]
mov qword [rsp + 0x68], rax
mov rax, qword [rdx + 0x68]
mov qword [rsp + 0x98], rax
mov rax, qword [rdx + 0x70]
mov qword [rsp + 0x48], rax
mov rax, qword [rdx + 0x78]
mov qword [rsp + 0x50], rax
mov qword [rsp + 0xd0], rcx
mov rax, qword [rcx + 8]
mov qword [rsp + 0xb8], rax
mov r10, qword [rcx + 0x28]
lea r14, [r10 + rax]
add r14, rsi
mov rax, qword [rcx + 0x10]
mov qword [rsp + 0xc0], rax
mov r9, qword [rcx + 0x30]
lea r12, [r9 + rax]
add r12, rdi
mov rax, qword [rcx + 0x18]
mov qword [rsp + 0xc8], rax
mov rdi, qword [rcx + 0x38]
lea rsi, [rdi + rax]
add rsi, r11
movabs rbp, 0x9b05688c2b3e6c1f
xor rbp, r14
rol rbx, 0x20
rol rbp, 0x20
xor r15, r12
rol r15, 0x20
movabs r13, 0x5be0cd19137e2179
xor r13, rsi
rol r13, 0x20
movabs rdx, 0x6a09e667f3bcc908
add rdx, rbx
movabs rcx, 0xbb67ae8584caa73b
add rcx, rbp
movabs r8, 0x3c6ef372fe94f82b
add r8, r15
mov qword [rsp + 0x18], r8
movabs rax, 0xa54ff53a5f1d36f1
add rax, r13
mov r11, rdx
xor r11, qword [rsp + 0xb0]
xor r10, rcx
xor r9, r8
xor rdi, rax
rol r11, 0x28
rol r10, 0x28
rol r9, 0x28
rol rdi, 0x28
mov r8, qword [rsp]
add r8, qword [rsp + 0x60]
add r8, r11
add r14, qword [rsp + 0x80]
add r14, r10
add r12, qword [rsp + 0x70]
add r12, r9
add rsi, qword [rsp + 0x78]
add rsi, rdi
xor rbx, r8
xor rbp, r14
xor r15, r12
xor r13, rsi
rol rbx, 0x30
rol rbp, 0x30
rol r15, 0x30
rol r13, 0x30
add rdx, rbx
mov qword [rsp + 0x20], rdx
add rcx, rbp
mov qword [rsp + 8], rcx
mov rdx, qword [rsp + 0x18]
add rdx, r15
add rax, r13
xor r11, qword [rsp + 0x20]
xor r10, rcx
xor r9, rdx
xor rdi, rax
mov rcx, rax
rol r11, 1
rol r10, 1
rol r9, 1
rol rdi, 1
add r8, qword [rsp + 0x58]
add r8, r10
add r14, qword [rsp + 0x30]
add r14, r9
add r12, qword [rsp + 0x68]
add r12, rdi
add rsi, qword [rsp + 0x48]
add rsi, r11
xor r13, r8
xor rbx, r14
xor rbp, r12
xor r15, rsi
rol r13, 0x20
rol rbx, 0x20
rol rbp, 0x20
rol r15, 0x20
mov rax, rdx
add rax, r13
mov qword [rsp + 0x18], rax
mov rdx, rcx
add rdx, rbx
mov qword [rsp + 0x10], rdx
add qword [rsp + 0x20], rbp
mov rcx, qword [rsp + 8]
add rcx, r15
mov qword [rsp + 8], rcx
xor r10, rax
xor r9, rdx
mov rax, qword [rsp + 0x20]
xor rdi, rax
xor r11, rcx
rol r10, 0x28
rol r9, 0x28
rol rdi, 0x28
rol r11, 0x28
add r8, qword [rsp + 0x40]
add r8, r10
add r14, qword [rsp + 0x38]
add r14, r9
add r12, qword [rsp + 0x98]
add r12, rdi
add rsi, qword [rsp + 0x50]
add rsi, r11
xor r13, r8
xor rbx, r14
xor rbp, r12
xor r15, rsi
rol r13, 0x30
rol rbx, 0x30
rol rbp, 0x30
rol r15, 0x30
mov rcx, qword [rsp + 0x18]
add rcx, r13
mov qword [rsp + 0x18], rcx
mov rdx, qword [rsp + 0x10]
add rdx, rbx
mov qword [rsp + 0x10], rdx
add rax, rbp
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 8]
add rax, r15
xor r10, rcx
xor r9, rdx
mov rcx, qword [rsp + 0x20]
xor rdi, rcx
xor r11, rax
rol r10, 1
rol r9, 1
rol rdi, 1
rol r11, 1
add r8, qword [rsp + 0x48]
add r8, r11
mov qword [rsp], r8
add r14, qword [rsp + 0xa0]
add r14, r10
add r12, qword [rsp + 0x40]
add r12, r9
add rsi, qword [rsp + 0x98]
add rsi, rdi
xor rbx, r8
xor rbp, r14
xor r15, r12
xor r13, rsi
rol rbx, 0x20
rol rbp, 0x20
rol r15, 0x20
rol r13, 0x20
add rcx, rbx
mov r8, rcx
mov qword [rsp + 0x20], rcx
mov rcx, rax
add rcx, rbp
mov rdx, qword [rsp + 0x18]
add rdx, r15
mov qword [rsp + 0x18], rdx
mov rax, qword [rsp + 0x10]
add rax, r13
mov qword [rsp + 0x10], rax
xor r11, r8
xor r10, rcx
xor r9, rdx
xor rdi, rax
rol r11, 0x28
rol r10, 0x28
rol r9, 0x28
rol rdi, 0x28
mov r8, qword [rsp]
add r8, qword [rsp + 0x30]
add r8, r11
mov qword [rsp], r8
add r14, qword [rsp + 0x58]
add r14, r10
add r12, qword [rsp + 0x50]
add r12, r9
add rsi, qword [rsp + 0x90]
add rsi, rdi
xor rbx, r8
xor rbp, r14
xor r15, r12
xor r13, rsi
rol rbx, 0x30
rol rbp, 0x30
rol r15, 0x30
rol r13, 0x30
mov rdx, qword [rsp + 0x20]
add rdx, rbx
mov qword [rsp + 0x20], rdx
add rcx, rbp
mov qword [rsp + 8], rcx
mov rax, qword [rsp + 0x18]
add rax, r15
mov r8, qword [rsp + 0x10]
add r8, r13
xor r11, rdx
xor r10, rcx
mov rdx, rax
xor r9, rax
xor rdi, r8
mov rcx, r8
rol r11, 1
rol r10, 1
rol r9, 1
rol rdi, 1
mov r8, qword [rsp]
add r8, qword [rsp + 0x60]
add r8, r10
mov qword [rsp], r8
add r14, qword [rsp + 0x88]
add r14, r9
add r12, qword [rsp + 0x38]
add r12, rdi
add rsi, qword [rsp + 0x70]
add rsi, r11
xor r13, r8
xor rbx, r14
xor rbp, r12
xor r15, rsi
rol r13, 0x20
rol rbx, 0x20
rol rbp, 0x20
rol r15, 0x20
add rdx, r13
add rcx, rbx
mov qword [rsp + 0x10], rcx
mov r8, qword [rsp + 0x20]
add r8, rbp
mov rax, qword [rsp + 8]
add rax, r15
mov qword [rsp + 8], rax
xor r10, rdx
xor r9, rcx
xor rdi, r8
mov rcx, r8
xor r11, rax
rol r10, 0x28
rol r9, 0x28
rol rdi, 0x28
rol r11, 0x28
mov r8, qword [rsp]
add r8, qword [rsp + 0x68]
add r8, r10
mov qword [rsp], r8
add r14, qword [rsp + 0xa8]
add r14, r9
add r12, qword [rsp + 0x78]
add r12, rdi
add rsi, qword [rsp + 0x80]
add rsi, r11
xor r13, r8
xor rbx, r14
xor rbp, r12
xor r15, rsi
rol r13, 0x30
rol rbx, 0x30
rol rbp, 0x30
rol r15, 0x30
add rdx, r13
mov qword [rsp + 0x18], rdx
mov rax, qword [rsp + 0x10]
add rax, rbx
mov qword [rsp + 0x10], rax
mov r8, rcx
add r8, rbp
mov rcx, qword [rsp + 8]
add rcx, r15
xor r10, rdx
xor r9, rax
mov rdx, r8
xor rdi, r8
xor r11, rcx
rol r10, 1
rol r9, 1
rol rdi, 1
rol r11, 1
mov r8, qword [rsp]
add r8, qword [rsp + 0x38]
add r8, r11
mov qword [rsp], r8
add r14, qword [rsp + 0x68]
add r14, r10
add r12, qword [rsp + 0x70]
add r12, r9
add rsi, qword [rsp + 0x50]
add rsi, rdi
xor rbx, r8
xor rbp, r14
xor r15, r12
xor r13, rsi
rol rbx, 0x20
rol rbp, 0x20
rol r15, 0x20
rol r13, 0x20
add rdx, rbx
mov r8, rdx
mov qword [rsp + 0x20], rdx
add rcx, rbp
mov rax, qword [rsp + 0x18]
add rax, r15
mov qword [rsp + 0x18], rax
mov rdx, qword [rsp + 0x10]
add rdx, r13
xor r11, r8
xor r10, rcx
xor r9, rax
xor rdi, rdx
rol r11, 0x28
rol r10, 0x28
rol r9, 0x28
rol rdi, 0x28
mov r8, qword [rsp]
add r8, qword [rsp + 0x58]
add r8, r11
add r14, qword [rsp + 0x88]
add r14, r10
add r12, qword [rsp + 0xa8]
add r12, r9
add rsi, qword [rsp + 0x98]
add rsi, rdi
mov qword [rsp + 0x28], rsi
xor rbx, r8
xor rbp, r14
xor r15, r12
xor r13, rsi
rol rbx, 0x30
rol rbp, 0x30
rol r15, 0x30
rol r13, 0x30
mov rsi, qword [rsp + 0x20]
add rsi, rbx
mov qword [rsp + 0x20], rsi
mov rax, rcx
add rax, rbp
mov qword [rsp + 8], rax
mov rcx, qword [rsp + 0x18]
add rcx, r15
add rdx, r13
xor r11, rsi
xor r10, rax
xor r9, rcx
mov rax, rcx
xor rdi, rdx
mov rsi, rdx
rol r11, 1
rol r10, 1
rol r9, 1
rol rdi, 1
add r8, qword [rsp + 0x30]
add r8, r10
add r14, qword [rsp + 0x80]
add r14, r9
add r12, qword [rsp + 0x78]
add r12, rdi
mov rcx, qword [rsp + 0x28]
add rcx, qword [rsp + 0x40]
add rcx, r11
mov qword [rsp + 0x28], rcx
xor r13, r8
xor rbx, r14
xor rbp, r12
xor r15, rcx
rol r13, 0x20
rol rbx, 0x20
rol rbp, 0x20
rol r15, 0x20
mov rdx, rax
add rdx, r13
mov rcx, rsi
add rcx, rbx
mov qword [rsp + 0x10], rcx
mov rax, qword [rsp + 0x20]
add rax, rbp
mov qword [rsp + 0x20], rax
mov rsi, qword [rsp + 8]
add rsi, r15
xor r10, rdx
xor r9, rcx
xor rdi, rax
xor r11, rsi
mov rax, rsi
rol r10, 0x28
rol r9, 0x28
rol rdi, 0x28
rol r11, 0x28
add r8, qword [rsp + 0x48]
add r8, r10
add r14, qword [rsp + 0x90]
add r14, r9
add r12, qword [rsp + 0x60]
add r12, rdi
mov rcx, qword [rsp + 0x28]
add rcx, qword [rsp + 0xa0]
add rcx, r11
mov qword [rsp + 0x28], rcx
xor r13, r8
xor rbx, r14
xor rbp, r12
xor r15, rcx
rol r13, 0x30
rol rbx, 0x30
rol rbp, 0x30
rol r15, 0x30
add rdx, r13
mov rcx, qword [rsp + 0x10]
add rcx, rbx
mov qword [rsp + 0x10], rcx
mov rsi, qword [rsp + 0x20]
add rsi, rbp
add rax, r15
xor r10, rdx
xor r9, rcx
xor rdi, rsi
xor r11, rax
rol r10, 1
rol r9, 1
rol rdi, 1
rol r11, 1
add r8, qword [rsp + 0x78]
add r8, r11
add r14, qword [rsp + 0x80]
add r14, r10
add r12, qword [rsp + 0x98]
add r12, r9
mov rcx, qword [rsp + 0x28]
add rcx, qword [rsp + 0x38]
add rcx, rdi
mov qword [rsp + 0x28], rcx
xor rbx, r8
xor rbp, r14
xor r15, r12
xor r13, rcx
rol rbx, 0x20
rol rbp, 0x20
rol r15, 0x20
rol r13, 0x20
add rsi, rbx
mov qword [rsp + 0x20], rsi
mov rcx, rax
add rcx, rbp
mov qword [rsp + 8], rcx
add rdx, r15
mov qword [rsp + 0x18], rdx
mov rax, qword [rsp + 0x10]
add rax, r13
xor r11, rsi
xor r10, rcx
xor r9, rdx
xor rdi, rax
mov rsi, rax
rol r11, 0x28
rol r10, 0x28
rol r9, 0x28
rol rdi, 0x28
add r8, qword [rsp + 0x40]
add r8, r11
add r14, qword [rsp + 0x60]
add r14, r10
add r12, qword [rsp + 0x68]
add r12, r9
mov rdx, qword [rsp + 0x28]
add rdx, qword [rsp + 0x48]
add rdx, rdi
mov qword [rsp + 0x28], rdx
xor rbx, r8
xor rbp, r14
xor r15, r12
xor r13, rdx
rol rbx, 0x30
rol rbp, 0x30
rol r15, 0x30
rol r13, 0x30
mov rcx, qword [rsp + 0x20]
add rcx, rbx
mov rax, qword [rsp + 8]
add rax, rbp
mov qword [rsp + 8], rax
mov rdx, qword [rsp + 0x18]
add rdx, r15
add rsi, r13
xor r11, rcx
xor r10, rax
xor r9, rdx
mov rax, rdx
xor rdi, rsi
rol r11, 1
rol r10, 1
rol r9, 1
rol rdi, 1
add r8, qword [rsp + 0xa8]
add r8, r10
add r14, qword [rsp + 0x70]
add r14, r9
add r12, qword [rsp + 0xa0]
add r12, rdi
mov rdx, qword [rsp + 0x28]
add rdx, qword [rsp + 0x50]
add rdx, r11
mov qword [rsp + 0x28], rdx
xor r13, r8
xor rbx, r14
xor rbp, r12
xor r15, rdx
rol r13, 0x20
rol rbx, 0x20
rol rbp, 0x20
rol r15, 0x20
mov rdx, rax
add rdx, r13
mov qword [rsp + 0x18], rdx
add rsi, rbx
mov rax, rcx
add rax, rbp
mov rcx, qword [rsp + 8]
add rcx, r15
mov qword [rsp + 8], rcx
xor r10, rdx
xor r9, rsi
mov rdx, rsi
xor rdi, rax
xor r11, rcx
rol r10, 0x28
rol r9, 0x28
rol rdi, 0x28
rol r11, 0x28
add r8, qword [rsp + 0x90]
add r8, r10
mov qword [rsp], r8
add r14, qword [rsp + 0x30]
add r14, r9
add r12, qword [rsp + 0x88]
add r12, rdi
mov rsi, qword [rsp + 0x28]
add rsi, qword [rsp + 0x58]
add rsi, r11
xor r13, r8
xor rbx, r14
xor rbp, r12
xor r15, rsi
rol r13, 0x30
rol rbx, 0x30
rol rbp, 0x30
rol r15, 0x30
mov rcx, qword [rsp + 0x18]
add rcx, r13
mov qword [rsp + 0x18], rcx
mov r8, rdx
add r8, rbx
mov rdx, rax
add rdx, rbp
mov rax, qword [rsp + 8]
add rax, r15
mov qword [rsp + 8], rax
xor r10, rcx
mov qword [rsp + 0x10], r8
xor r9, r8
xor rdi, rdx
mov rcx, rdx
xor r11, rax
rol r10, 1
rol r9, 1
rol rdi, 1
rol r11, 1
mov r8, qword [rsp]
add r8, qword [rsp + 0x40]
add r8, r11
add r14, qword [rsp + 0x70]
add r14, r10
add r12, qword [rsp + 0xa8]
add r12, r9
mov rdx, rsi
add rdx, qword [rsp + 0x30]
add rdx, rdi
mov qword [rsp + 0x28], rdx
xor rbx, r8
xor rbp, r14
xor r15, r12
xor r13, rdx
rol rbx, 0x20
rol rbp, 0x20
rol r15, 0x20
rol r13, 0x20
mov rax, rcx
add rax, rbx
mov rcx, qword [rsp + 8]
add rcx, rbp
mov rdx, qword [rsp + 0x18]
add rdx, r15
mov qword [rsp + 0x18], rdx
mov rsi, qword [rsp + 0x10]
add rsi, r13
mov qword [rsp + 0x10], rsi
xor r11, rax
xor r10, rcx
xor r9, rdx
xor rdi, rsi
rol r11, 0x28
rol r10, 0x28
rol r9, 0x28
rol rdi, 0x28
add r8, qword [rsp + 0x88]
add r8, r11
mov qword [rsp], r8
add r14, qword [rsp + 0x78]
add r14, r10
add r12, qword [rsp + 0xa0]
add r12, r9
mov rsi, qword [rsp + 0x28]
add rsi, qword [rsp + 0x50]
add rsi, rdi
xor rbx, r8
xor rbp, r14
xor r15, r12
xor r13, rsi
rol rbx, 0x30
rol rbp, 0x30
rol r15, 0x30
rol r13, 0x30
add rax, rbx
mov qword [rsp + 0x20], rax
add rcx, rbp
mov qword [rsp + 8], rcx
mov rdx, qword [rsp + 0x18]
add rdx, r15
mov r8, qword [rsp + 0x10]
add r8, r13
xor r11, rax
xor r10, rcx
xor r9, rdx
mov rcx, r8
xor rdi, r8
rol r11, 1
rol r10, 1
rol r9, 1
rol rdi, 1
mov r8, qword [rsp]
add r8, qword [rsp + 0x48]
add r8, r10
mov qword [rsp], r8
add r14, qword [rsp + 0x38]
add r14, r9
add r12, qword [rsp + 0x90]
add r12, rdi
add rsi, qword [rsp + 0x80]
add rsi, r11
xor r13, r8
xor rbx, r14
xor rbp, r12
xor r15, rsi
rol r13, 0x20
rol rbx, 0x20
rol rbp, 0x20
rol r15, 0x20
add rdx, r13
mov r8, rdx
mov qword [rsp + 0x18], rdx
mov rdx, rcx
add rdx, rbx
mov rax, qword [rsp + 0x20]
add rax, rbp
mov rcx, qword [rsp + 8]
add rcx, r15
mov qword [rsp + 8], rcx
xor r10, r8
xor r9, rdx
xor rdi, rax
xor r11, rcx
rol r10, 0x28
rol r9, 0x28
rol rdi, 0x28
rol r11, 0x28
mov r8, qword [rsp]
add r8, qword [rsp + 0x60]
add r8, r10
mov qword [rsp], r8
add r14, qword [rsp + 0x68]
add r14, r9
add r12, qword [rsp + 0x58]
add r12, rdi
add rsi, qword [rsp + 0x98]
add rsi, r11
xor r13, r8
xor rbx, r14
xor rbp, r12
xor r15, rsi
rol r13, 0x30
rol rbx, 0x30
rol rbp, 0x30
rol r15, 0x30
mov rcx, qword [rsp + 0x18]
add rcx, r13
mov qword [rsp + 0x18], rcx
add rdx, rbx
mov r8, rdx
mov qword [rsp + 0x10], rdx
mov rdx, rax
add rdx, rbp
mov rax, qword [rsp + 8]
add rax, r15
xor r10, rcx
xor r9, r8
mov rcx, rdx
xor rdi, rdx
xor r11, rax
mov rdx, rax
rol r10, 1
rol r9, 1
rol rdi, 1
rol r11, 1
mov r8, qword [rsp]
add r8, qword [rsp + 0xa8]
add r8, r11
mov qword [rsp], r8
add r14, qword [rsp + 0x90]
add r14, r10
add r12, qword [rsp + 0x88]
add r12, r9
add rsi, qword [rsp + 0x58]
add rsi, rdi
xor rbx, r8
xor rbp, r14
xor r15, r12
xor r13, rsi
rol rbx, 0x20
rol rbp, 0x20
rol r15, 0x20
rol r13, 0x20
mov rax, rcx
add rax, rbx
mov rcx, rdx
add rcx, rbp
mov rdx, qword [rsp + 0x18]
add rdx, r15
mov qword [rsp + 0x18], rdx
mov r8, qword [rsp + 0x10]
add r8, r13
xor r11, rax
xor r10, rcx
xor r9, rdx
mov rdx, r8
xor rdi, r8
rol r11, 0x28
rol r10, 0x28
rol r9, 0x28
rol rdi, 0x28
mov r8, qword [rsp]
add r8, qword [rsp + 0x68]
add r8, r11
mov qword [rsp], r8
add r14, qword [rsp + 0x30]
add r14, r10
add r12, qword [rsp + 0x38]
add r12, r9
add rsi, qword [rsp + 0x80]
add rsi, rdi
xor rbx, r8
xor rbp, r14
xor r15, r12
xor r13, rsi
rol rbx, 0x30
rol rbp, 0x30
rol r15, 0x30
rol r13, 0x30
add rax, rbx
add rcx, rbp
mov qword [rsp + 8], rcx
mov r8, qword [rsp + 0x18]
add r8, r15
add rdx, r13
xor r11, rax
xor r10, rcx
mov rcx, r8
xor r9, r8
xor rdi, rdx
rol r11, 1
rol r10, 1
rol r9, 1
rol rdi, 1
mov r8, qword [rsp]
add r8, qword [rsp + 0xa0]
add r8, r10
mov qword [rsp], r8
add r14, qword [rsp + 0x78]
add r14, r9
add r12, qword [rsp + 0x50]
add r12, rdi
add rsi, qword [rsp + 0x60]
add rsi, r11
xor r13, r8
xor rbx, r14
xor rbp, r12
xor r15, rsi
rol r13, 0x20
rol rbx, 0x20
rol rbp, 0x20
rol r15, 0x20
add rcx, r13
mov qword [rsp + 0x18], rcx
add rdx, rbx
mov qword [rsp + 0x10], rdx
add rax, rbp
mov r8, rax
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 8]
add rax, r15
xor r10, rcx
xor r9, rdx
xor rdi, r8
xor r11, rax
mov rcx, rax
rol r10, 0x28
rol r9, 0x28
rol rdi, 0x28
rol r11, 0x28
mov r8, qword [rsp]
add r8, qword [rsp + 0x98]
add r8, r10
mov qword [rsp], r8
add r14, qword [rsp + 0x70]
add r14, r9
add r12, qword [rsp + 0x48]
add r12, rdi
add rsi, qword [rsp + 0x40]
add rsi, r11
xor r13, r8
xor rbx, r14
xor rbp, r12
xor r15, rsi
rol r13, 0x30
rol rbx, 0x30
rol rbp, 0x30
rol r15, 0x30
mov rdx, qword [rsp + 0x18]
add rdx, r13
mov qword [rsp + 0x18], rdx
mov r8, qword [rsp + 0x10]
add r8, rbx
mov rax, qword [rsp + 0x20]
add rax, rbp
add rcx, r15
xor r10, rdx
xor r9, r8
mov rdx, r8
xor rdi, rax
xor r11, rcx
rol r10, 1
rol r9, 1
rol rdi, 1
rol r11, 1
mov r8, qword [rsp]
add r8, qword [rsp + 0x68]
add r8, r11
mov qword [rsp], r8
add r14, qword [rsp + 0x60]
add r14, r10
add r12, qword [rsp + 0x48]
add r12, r9
add rsi, qword [rsp + 0xa0]
add rsi, rdi
xor rbx, r8
xor rbp, r14
xor r15, r12
xor r13, rsi
rol rbx, 0x20
rol rbp, 0x20
rol r15, 0x20
rol r13, 0x20
add rax, rbx
mov qword [rsp + 0x20], rax
add rcx, rbp
mov qword [rsp + 8], rcx
mov r8, qword [rsp + 0x18]
add r8, r15
add rdx, r13
xor r11, rax
xor r10, rcx
xor r9, r8
mov qword [rsp + 0x10], rdx
xor rdi, rdx
rol r11, 0x28
rol r10, 0x28
rol r9, 0x28
rol rdi, 0x28
mov rdx, qword [rsp]
add rdx, qword [rsp + 0x70]
add rdx, r11
add r14, qword [rsp + 0x50]
add r14, r10
add r12, qword [rsp + 0x98]
add r12, r9
add rsi, qword [rsp + 0x30]
add rsi, rdi
mov qword [rsp + 0x28], rsi
xor rbx, rdx
xor rbp, r14
xor r15, r12
xor r13, rsi
rol rbx, 0x30
rol rbp, 0x30
rol r15, 0x30
rol r13, 0x30
mov rcx, qword [rsp + 0x20]
add rcx, rbx
mov qword [rsp + 0x20], rcx
mov rax, qword [rsp + 8]
add rax, rbp
mov qword [rsp + 8], rax
add r8, r15
mov rsi, qword [rsp + 0x10]
add rsi, r13
xor r11, rcx
xor r10, rax
xor r9, r8
mov rcx, r8
mov qword [rsp + 0x10], rsi
xor rdi, rsi
rol r11, 1
rol r10, 1
rol r9, 1
rol rdi, 1
mov r8, rdx
add r8, qword [rsp + 0x88]
add r8, r10
mov rsi, qword [rsp + 0x90]
add r14, rsi
add r14, r9
add r12, qword [rsp + 0x40]
add r12, rdi
mov rdx, qword [rsp + 0x28]
add rdx, qword [rsp + 0x58]
add rdx, r11
mov qword [rsp + 0x28], rdx
xor r13, r8
xor rbx, r14
xor rbp, r12
xor r15, rdx
rol r13, 0x20
rol rbx, 0x20
rol rbp, 0x20
rol r15, 0x20
add rcx, r13
mov qword [rsp + 0x18], rcx
mov rdx, qword [rsp + 0x10]
add rdx, rbx
mov rsi, qword [rsp + 0x20]
add rsi, rbp
mov rax, qword [rsp + 8]
add rax, r15
mov qword [rsp + 8], rax
xor r10, rcx
mov qword [rsp + 0x10], rdx
xor r9, rdx
xor rdi, rsi
xor r11, rax
rol r10, 0x28
rol r9, 0x28
rol rdi, 0x28
rol r11, 0x28
add r8, qword [rsp + 0x78]
add r8, r10
add r14, qword [rsp + 0x80]
add r14, r9
add r12, qword [rsp + 0xa8]
add r12, rdi
mov rdx, qword [rsp + 0x28]
add rdx, qword [rsp + 0x38]
add rdx, r11
mov qword [rsp + 0x28], rdx
xor r13, r8
xor rbx, r14
xor rbp, r12
xor r15, rdx
rol r13, 0x30
rol rbx, 0x30
rol rbp, 0x30
rol r15, 0x30
mov rcx, qword [rsp + 0x18]
add rcx, r13
mov qword [rsp + 0x18], rcx
mov rax, qword [rsp + 0x10]
add rax, rbx
mov qword [rsp + 0x10], rax
add rsi, rbp
mov rdx, qword [rsp + 8]
add rdx, r15
xor r10, rcx
xor r9, rax
xor rdi, rsi
mov rax, rsi
xor r11, rdx
rol r10, 1
rol r9, 1
rol rdi, 1
rol r11, 1
add r8, qword [rsp + 0x98]
add r8, r11
mov qword [rsp], r8
add r14, qword [rsp + 0x78]
add r14, r10
add r12, qword [rsp + 0x68]
add r12, r9
mov rsi, qword [rsp + 0x28]
add rsi, qword [rsp + 0x80]
add rsi, rdi
xor rbx, r8
xor rbp, r14
xor r15, r12
xor r13, rsi
rol rbx, 0x20
rol rbp, 0x20
rol r15, 0x20
rol r13, 0x20
add rax, rbx
add rdx, rbp
mov qword [rsp + 8], rdx
mov r8, qword [rsp + 0x18]
add r8, r15
mov qword [rsp + 0x18], r8
mov rcx, qword [rsp + 0x10]
add rcx, r13
mov qword [rsp + 0x10], rcx
xor r11, rax
xor r10, rdx
xor r9, r8
xor rdi, rcx
rol r11, 0x28
rol r10, 0x28
rol r9, 0x28
rol rdi, 0x28
mov r8, qword [rsp]
add r8, qword [rsp + 0x38]
add r8, r11
mov qword [rsp], r8
add r14, qword [rsp + 0x48]
add r14, r10
add r12, qword [rsp + 0x60]
add r12, r9
add rsi, qword [rsp + 0x40]
add rsi, rdi
xor rbx, r8
xor rbp, r14
xor r15, r12
xor r13, rsi
rol rbx, 0x30
rol rbp, 0x30
rol r15, 0x30
rol r13, 0x30
mov rdx, rax
add rdx, rbx
mov qword [rsp + 0x20], rdx
mov r8, qword [rsp + 8]
add r8, rbp
mov qword [rsp + 8], r8
mov rcx, qword [rsp + 0x18]
add rcx, r15
mov rax, qword [rsp + 0x10]
add rax, r13
xor r11, rdx
xor r10, r8
xor r9, rcx
mov rdx, rcx
xor rdi, rax
rol r11, 1
rol r10, 1
rol r9, 1
rol rdi, 1
mov r8, qword [rsp]
add r8, qword [rsp + 0x70]
add r8, r10
mov qword [rsp], r8
add r14, qword [rsp + 0x50]
add r14, r9
add r12, qword [rsp + 0x58]
add r12, rdi
add rsi, qword [rsp + 0xa8]
add rsi, r11
xor r13, r8
xor rbx, r14
xor rbp, r12
xor r15, rsi
rol r13, 0x20
rol rbx, 0x20
rol rbp, 0x20
rol r15, 0x20
add rdx, r13
mov rcx, rax
add rcx, rbx
mov qword [rsp + 0x10], rcx
mov r8, qword [rsp + 0x20]
add r8, rbp
mov rax, qword [rsp + 8]
add rax, r15
mov qword [rsp + 8], rax
xor r10, rdx
xor r9, rcx
mov rcx, r8
xor rdi, r8
xor r11, rax
rol r10, 0x28
rol r9, 0x28
rol rdi, 0x28
rol r11, 0x28
mov r8, qword [rsp]
add r8, qword [rsp + 0x88]
add r8, r10
add r14, qword [rsp + 0xa0]
add r14, r9
add r12, qword [rsp + 0x90]
add r12, rdi
add rsi, qword [rsp + 0x30]
add rsi, r11
xor r13, r8
xor rbx, r14
xor rbp, r12
xor r15, rsi
rol r13, 0x30
rol rbx, 0x30
rol rbp, 0x30
rol r15, 0x30
add rdx, r13
mov qword [rsp + 0x18], rdx
mov rax, qword [rsp + 0x10]
add rax, rbx
mov qword [rsp + 0x10], rax
add rcx, rbp
mov qword [rsp + 0x20], rcx
mov rcx, qword [rsp + 8]
add rcx, r15
xor r10, rdx
xor r9, rax
mov rdx, qword [rsp + 0x20]
xor rdi, rdx
xor r11, rcx
rol r10, 1
rol r9, 1
rol rdi, 1
rol r11, 1
add r8, qword [rsp + 0x90]
add r8, r11
mov qword [rsp], r8
add r14, qword [rsp + 0x48]
add r14, r10
add r12, qword [rsp + 0x38]
add r12, r9
add rsi, qword [rsp + 0x88]
add rsi, rdi
xor rbx, r8
xor rbp, r14
xor r15, r12
xor r13, rsi
rol rbx, 0x20
rol rbp, 0x20
rol r15, 0x20
rol r13, 0x20
add rdx, rbx
mov r8, rdx
mov qword [rsp + 0x20], rdx
mov rdx, rcx
add rdx, rbp
mov qword [rsp + 8], rdx
mov rax, qword [rsp + 0x18]
add rax, r15
mov rcx, qword [rsp + 0x10]
add rcx, r13
xor r11, r8
xor r10, rdx
xor r9, rax
xor rdi, rcx
mov rdx, rcx
rol r11, 0x28
rol r10, 0x28
rol r9, 0x28
rol rdi, 0x28
mov r8, qword [rsp]
add r8, qword [rsp + 0x50]
add r8, r11
mov qword [rsp], r8
add r14, qword [rsp + 0x40]
add r14, r10
add r12, qword [rsp + 0x80]
add r12, r9
add rsi, qword [rsp + 0x58]
add rsi, rdi
xor rbx, r8
xor rbp, r14
xor r15, r12
xor r13, rsi
rol rbx, 0x30
rol rbp, 0x30
rol r15, 0x30
rol r13, 0x30
mov r8, qword [rsp + 0x20]
add r8, rbx
mov qword [rsp + 0x20], r8
mov rcx, qword [rsp + 8]
add rcx, rbp
mov qword [rsp + 8], rcx
add rax, r15
add rdx, r13
xor r11, r8
xor r10, rcx
xor r9, rax
mov rcx, rax
xor rdi, rdx
rol r11, 1
rol r10, 1
rol r9, 1
rol rdi, 1
mov r8, qword [rsp]
add r8, qword [rsp + 0x68]
add r8, r10
mov qword [rsp], r8
add r14, qword [rsp + 0x98]
add r14, r9
add r12, qword [rsp + 0x60]
add r12, rdi
add rsi, qword [rsp + 0x30]
add rsi, r11
xor r13, r8
xor rbx, r14
xor rbp, r12
xor r15, rsi
rol r13, 0x20
rol rbx, 0x20
rol rbp, 0x20
rol r15, 0x20
add rcx, r13
mov qword [rsp + 0x18], rcx
mov r8, rdx
add r8, rbx
mov rdx, qword [rsp + 0x20]
add rdx, rbp
mov qword [rsp + 0x20], rdx
mov rax, qword [rsp + 8]
add rax, r15
mov qword [rsp + 8], rax
xor r10, rcx
xor r9, r8
mov rcx, r8
xor rdi, rdx
xor r11, rax
rol r10, 0x28
rol r9, 0x28
rol rdi, 0x28
rol r11, 0x28
mov r8, qword [rsp]
add r8, qword [rsp + 0xa8]
add r8, r10
mov qword [rsp], r8
add r14, qword [rsp + 0x78]
add r14, r9
add r12, qword [rsp + 0xa0]
add r12, rdi
add rsi, qword [rsp + 0x70]
add rsi, r11
xor r13, r8
xor rbx, r14
xor rbp, r12
xor r15, rsi
rol r13, 0x30
rol rbx, 0x30
rol rbp, 0x30
rol r15, 0x30
mov rdx, qword [rsp + 0x18]
add rdx, r13
mov qword [rsp + 0x18], rdx
add rcx, rbx
mov qword [rsp + 0x10], rcx
mov rax, qword [rsp + 0x20]
add rax, rbp
mov r8, qword [rsp + 8]
add r8, r15
xor r10, rdx
xor r9, rcx
xor rdi, rax
mov rcx, rax
mov rdx, r8
xor r11, r8
rol r10, 1
rol r9, 1
rol rdi, 1
rol r11, 1
mov r8, qword [rsp]
add r8, qword [rsp + 0x30]
add r8, r11
mov qword [rsp], r8
add r14, qword [rsp + 0x58]
add r14, r10
add r12, qword [rsp + 0x78]
add r12, r9
add rsi, qword [rsp + 0x60]
add rsi, rdi
xor rbx, r8
xor rbp, r14
xor r15, r12
xor r13, rsi
rol rbx, 0x20
rol rbp, 0x20
rol r15, 0x20
rol r13, 0x20
add rcx, rbx
mov qword [rsp + 0x20], rcx
mov r8, rdx
add r8, rbp
mov rdx, qword [rsp + 0x18]
add rdx, r15
mov rax, qword [rsp + 0x10]
add rax, r13
mov qword [rsp + 0x10], rax
xor r11, rcx
xor r10, r8
mov rcx, r8
xor r9, rdx
xor rdi, rax
rol r11, 0x28
rol r10, 0x28
rol r9, 0x28
rol rdi, 0x28
mov r8, qword [rsp]
add r8, qword [rsp + 0xa8]
add r8, r11
mov qword [rsp], r8
add r14, qword [rsp + 0xa0]
add r14, r10
add r12, qword [rsp + 0x90]
add r12, r9
add rsi, qword [rsp + 0x70]
add rsi, rdi
xor rbx, r8
xor rbp, r14
xor r15, r12
xor r13, rsi
rol rbx, 0x30
rol rbp, 0x30
rol r15, 0x30
rol r13, 0x30
mov rax, qword [rsp + 0x20]
add rax, rbx
mov qword [rsp + 0x20], rax
add rcx, rbp
mov qword [rsp + 8], rcx
mov r8, rdx
add r8, r15
mov rdx, qword [rsp + 0x10]
add rdx, r13
xor r11, rax
xor r10, rcx
xor r9, r8
mov rax, r8
xor rdi, rdx
mov rcx, rdx
rol r11, 1
rol r10, 1
rol r9, 1
rol rdi, 1
mov r8, qword [rsp]
add r8, qword [rsp + 0x50]
add r8, r10
mov qword [rsp], r8
add r14, qword [rsp + 0x40]
add r14, r9
add r12, qword [rsp + 0x80]
add r12, rdi
add rsi, qword [rsp + 0x98]
add rsi, r11
xor r13, r8
xor rbx, r14
xor rbp, r12
xor r15, rsi
rol r13, 0x20
rol rbx, 0x20
rol rbp, 0x20
rol r15, 0x20
mov rdx, rax
add rdx, r13
mov rax, rcx
add rax, rbx
mov qword [rsp + 0x10], rax
mov r8, qword [rsp + 0x20]
add r8, rbp
mov rcx, qword [rsp + 8]
add rcx, r15
mov qword [rsp + 8], rcx
xor r10, rdx
xor r9, rax
xor rdi, r8
xor r11, rcx
rol r10, 0x28
rol r9, 0x28
rol rdi, 0x28
rol r11, 0x28
mov rcx, qword [rsp]
add rcx, qword [rsp + 0x38]
add rcx, r10
mov qword [rsp], rcx
add r14, qword [rsp + 0x48]
add r14, r9
add r12, qword [rsp + 0x68]
and al, 0x68
add r12, rdi
add rsi, qword [rsp + 0x88]
add byte [rcx + rax - 0x22], cl
xor r13, rcx
xor rbx, r14
xor rbp, r12
xor r15, rsi
rol r13, 0x30
rol rbx, 0x30
rol rbp, 0x30
rol r15, 0x30
mov rcx, rdx
add rcx, r13
mov qword [rsp + 0x18], rcx
mov rdx, qword [rsp + 0x10]
add rdx, rbx
mov qword [rsp + 0x10], rdx
add r8, rbp
mov rax, qword [rsp + 8]
add rax, r15
xor r10, rcx
xor r9, rdx
xor rdi, r8
mov rcx, r8
xor r11, rax
mov rdx, rax
rol r10, 1
rol r9, 1
rol rdi, 1
rol r11, 1
mov r8, qword [rsp]
add r8, qword [rsp + 0x88]
add r8, r11
mov qword [rsp], r8
add r14, qword [rsp + 0xa8]
add r14, r10
add r12, qword [rsp + 0xa0]
add r12, r9
add rsi, qword [rsp + 0x90]
add rsi, rdi
xor rbx, r8
xor rbp, r14
xor r15, r12
xor r13, rsi
rol rbx, 0x20
rol rbp, 0x20
rol r15, 0x20
rol r13, 0x20
mov rax, rcx
add rax, rbx
mov qword [rsp + 0x20], rax
mov r8, rdx
add r8, rbp
mov qword [rsp + 8], r8
mov rcx, qword [rsp + 0x18]
add rcx, r15
mov rdx, qword [rsp + 0x10]
add rdx, r13
mov qword [rsp + 0x10], rdx
xor r11, rax
xor r10, r8
xor r9, rcx
mov rax, rcx
xor rdi, rdx
rol r11, 0x28
rol r10, 0x28
rol r9, 0x28
rol rdi, 0x28
mov r8, qword [rsp]
add r8, qword [rsp + 0x60]
add r8, r11
add r14, qword [rsp + 0x80]
add r14, r10
add r12, qword [rsp + 0x70]
add r12, r9
add rsi, qword [rsp + 0x78]
add rsi, rdi
mov qword [rsp + 0x28], rsi
xor rbx, r8
xor rbp, r14
xor r15, r12
xor r13, rsi
rol rbx, 0x30
rol rbp, 0x30
rol r15, 0x30
rol r13, 0x30
mov rsi, qword [rsp + 0x20]
add rsi, rbx
mov qword [rsp + 0x20], rsi
mov rcx, qword [rsp + 8]
add rcx, rbp
mov qword [rsp + 8], rcx
mov rdx, rax
add rdx, r15
mov rax, qword [rsp + 0x10]
add rax, r13
xor r11, rsi
xor r10, rcx
xor r9, rdx
mov rsi, rdx
xor rdi, rax
mov rcx, rax
rol r11, 1
rol r10, 1
rol r9, 1
rol rdi, 1
add r8, qword [rsp + 0x58]
add r8, r10
add r14, qword [rsp + 0x30]
add r14, r9
add r12, qword [rsp + 0x68]
add r12, rdi
mov rdx, qword [rsp + 0x28]
add rdx, qword [rsp + 0x48]
add rdx, r11
mov qword [rsp + 0x28], rdx
xor r13, r8
xor rbx, r14
xor rbp, r12
xor r15, rdx
rol r13, 0x20
rol rbx, 0x20
rol rbp, 0x20
rol r15, 0x20
mov rax, rsi
add rax, r13
mov qword [rsp + 0x18], rax
add rcx, rbx
mov rsi, qword [rsp + 0x20]
add rsi, rbp
mov qword [rsp + 0x20], rsi
mov rdx, qword [rsp + 8]
add rdx, r15
xor r10, rax
xor r9, rcx
mov rax, rcx
xor rdi, rsi
xor r11, rdx
mov rsi, rdx
rol r10, 0x28
rol r9, 0x28
rol rdi, 0x28
rol r11, 0x28
add r8, qword [rsp + 0x40]
add r8, r10
xor r13, r8
add r8, qword [rsp + 0x48]
add r14, qword [rsp + 0x38]
add r14, r9
xor rbx, r14
add r14, qword [rsp + 0xa0]
mov rcx, qword [rsp + 0x98]
add r12, rcx
add r12, rdi
xor rbp, r12
add r12, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x28]
add rdx, qword [rsp + 0x50]
add rdx, r11
xor r15, rdx
rol r13, 0x30
rol rbx, 0x30
rol rbp, 0x30
rol r15, 0x30
add rdx, rcx
add rax, rbx
mov qword [rsp + 0x10], rax
add rsi, r15
mov qword [rsp + 8], rsi
xor r11, rsi
rol r11, 1
add r8, r11
xor rbx, r8
add r8, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x18]
add rcx, r13
mov rsi, qword [rsp + 0x20]
add rsi, rbp
xor r10, rcx
rol r10, 1
add r14, r10
xor rbp, r14
add r14, qword [rsp + 0x58]
xor r9, rax
rol r9, 1
add r12, r9
xor r15, r12
add r12, qword [rsp + 0x50]
xor rdi, rsi
rol rdi, 1
add rdx, rdi
xor r13, rdx
add rdx, qword [rsp + 0x90]
mov qword [rsp + 0x28], rdx
rol rbx, 0x20
add rsi, rbx
xor r11, rsi
rol r11, 0x28
add r8, r11
xor rbx, r8
add r8, qword [rsp + 0x60]
rol rbp, 0x20
rol r15, 0x20
mov rdx, qword [rsp + 8]
add rdx, rbp
add rcx, r15
mov qword [rsp + 0x18], rcx
xor r10, rdx
xor r9, rcx
rol r10, 0x28
rol r9, 0x28
add r14, r10
xor rbp, r14
add r14, qword [rsp + 0x88]
add r12, r9
xor r15, r12
add r12, qword [rsp + 0x38]
rol r13, 0x20
mov rax, qword [rsp + 0x10]
add rax, r13
xor rdi, rax
rol rdi, 0x28
mov rcx, qword [rsp + 0x28]
add rcx, rdi
xor r13, rcx
rol rbx, 0x30
rol rbp, 0x30
rol r15, 0x30
rol r13, 0x30
add rcx, qword [rsp + 0x70]
mov qword [rsp + 0x28], rcx
add rdx, rbp
mov qword [rsp + 8], rdx
add rax, r13
xor r10, rdx
rol r10, 1
add r8, r10
xor r13, r8
add r8, qword [rsp + 0x68]
add rsi, rbx
mov rcx, qword [rsp + 0x18]
add rcx, r15
xor r9, rcx
rol r9, 1
add r14, r9
xor rbx, r14
add r14, qword [rsp + 0xa8]
xor rdi, rax
rol rdi, 1
add r12, rdi
xor rbp, r12
add r12, qword [rsp + 0x78]
xor r11, rsi
rol r11, 1
mov rdx, qword [rsp + 0x28]
add rdx, r11
xor r15, rdx
add rdx, qword [rsp + 0x80]
rol r13, 0x20
add rcx, r13
xor r10, rcx
rol r10, 0x28
add r8, r10
xor r13, r8
xor r8, qword [rsp + 0xd8]
rol rbx, 0x20
rol rbp, 0x20
add rax, rbx
add rsi, rbp
xor r9, rax
xor rdi, rsi
rol r9, 0x28
rol rdi, 0x28
add r12, rdi
xor rbp, r12
rol rbp, 0x30
add rsi, rbp
xor rdi, rsi
xor r8, rsi
add r14, r9
xor rbx, r14
xor r14, qword [rsp + 0xb8]
rol r15, 0x20
mov rsi, qword [rsp + 8]
add rsi, r15
xor r11, rsi
rol r11, 0x28
add rdx, r11
xor r15, rdx
rol r15, 0x30
add rsi, r15
xor r11, rsi
xor r14, rsi
xor r12, qword [rsp + 0xc0]
rol r13, 0x30
rol rbx, 0x30
add rcx, r13
xor r10, rcx
xor r12, rcx
add rax, rbx
xor r9, rax
xor rax, qword [rsp + 0xc8]
xor rax, rdx
mov rsi, qword [rsp + 0xd0]
mov qword [rsi], r8
mov qword [rsi + 8], r14
mov qword [rsi + 0x10], r12
mov qword [rsi + 0x18], rax
xor rbx, qword [rsp + 0xb0]
rol r10, 1
rol r11, 1
xor r10, qword [rsi + 0x28]
xor rbx, r11
xor r10, rbp
rol r9, 1
rol rdi, 1
xor r9, qword [rsi + 0x30]
xor r9, r15
xor rdi, qword [rsi + 0x38]
xor rdi, r13
mov qword [rsi + 0x20], rbx
mov qword [rsi + 0x28], r10
mov qword [rsi + 0x30], r9
mov qword [rsi + 0x38], rdi
add rsp, 0xe0
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret