Function at 0x140038060
Capabilities:
Hash data using sha512

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x40]
sub rsp, 0x140
mov rax, qword [0x14012fd48]
xor rax, rsp
mov qword [rbp + 0x30], rax
lea r15, [rbp - 0x50]
mov qword [rsp + 0x60], rcx
lea r9, [rbp - 0x4e]
sub r15, rdx
lea r10, [rbp - 0x46]
sub r9, rdx
lea r11, [rbp - 0x3e]
sub r10, rdx
lea rbx, [rbp - 0x36]
sub r11, rdx
lea rdi, [rbp - 0x2e]
sub rbx, rdx
lea rsi, [rbp - 0x26]
sub rdi, rdx
sub rsi, rdx
lea r14, [rbp - 0x1e]
sub r14, rdx
lea rax, [rdx + 6]
mov r12, rcx
mov r8d, 2
nop dword [rax]
movzx ecx, byte [rax]
movzx edx, byte [rax + 1]
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax - 1]
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax - 2]
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax - 3]
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax - 4]
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax - 5]
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax - 6]
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax + 8]
mov qword [rax + r15 - 6], rdx
movzx edx, byte [rax + 9]
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax + 7]
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax + 6]
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax + 5]
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax + 4]
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax + 3]
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax + 2]
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax + 0x10]
mov qword [rax + r9], rdx
movzx edx, byte [rax + 0x11]
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax + 0xf]
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax + 0xe]
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax + 0xd]
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax + 0xc]
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax + 0xb]
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax + 0xa]
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax + 0x18]
mov qword [rax + r10], rdx
movzx edx, byte [rax + 0x19]
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax + 0x17]
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax + 0x16]
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax + 0x15]
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax + 0x14]
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax + 0x13]
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax + 0x12]
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax + 0x20]
mov qword [rax + r11], rdx
movzx edx, byte [rax + 0x21]
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax + 0x1f]
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax + 0x1e]
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax + 0x1d]
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax + 0x1c]
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax + 0x1b]
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax + 0x1a]
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax + 0x28]
mov qword [rax + rbx], rdx
movzx edx, byte [rax + 0x29]
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax + 0x27]
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax + 0x26]
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax + 0x25]
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax + 0x24]
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax + 0x23]
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax + 0x22]
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax + 0x30]
mov qword [rax + rdi], rdx
movzx edx, byte [rax + 0x31]
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax + 0x2f]
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax + 0x2e]
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax + 0x2d]
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax + 0x2c]
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax + 0x2b]
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax + 0x2a]
shl rdx, 8
or rdx, rcx
mov qword [rax + rsi], rdx
movzx edx, byte [rax + 0x39]
movzx ecx, byte [rax + 0x38]
lea rax, [rax + 0x40]
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax - 9]
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax - 0xa]
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax - 0xb]
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax - 0xc]
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax - 0xd]
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax - 0xe]
shl rdx, 8
or rdx, rcx
mov qword [rax + r14 - 0x40], rdx
sub r8, 1
jne 0x1400380e0
mov r10, qword [r12 + 0x20]
mov rax, qword [r12]
mov rcx, qword [r12 + 0x38]
mov r11, qword [r12 + 0x28]
mov rdi, qword [r12 + 0x30]
mov r8, qword [r12 + 0x40]
mov r9, qword [r12 + 8]
mov rbx, qword [r12 + 0x10]
mov r14, qword [r12 + 0x18]
mov r15, qword [rbp - 0x28]
mov qword [rsp + 0x70], rax
add rax, r10
add rax, qword [rbp - 0x50]
xor r8, rax
mov qword [rsp + 0x68], rcx
movabs rcx, 0x510e527fade682d1
mov qword [rbp - 0x70], r10
xor r8, rcx
mov qword [rsp + 0x78], r9
ror r8, 0x20
movabs rcx, 0x6a09e667f3bcc908
add rcx, r8
mov qword [rbp - 0x80], rbx
mov rdx, rcx
mov qword [rbp - 0x78], r14
xor rdx, r10
mov qword [rbp - 0x68], r11
mov r10, qword [rsp + 0x60]
ror rdx, 0x18
mov qword [rbp - 0x60], rdi
lea r13, [rdx + rax]
add r13, qword [rbp - 0x48]
mov rax, r13
xor rax, r8
mov r8, qword [r12 + 0x48]
ror rax, 0x10
mov qword [rsp + 0x58], rax
add rax, rcx
mov qword [rsp + 0x38], rax
movabs rcx, 0x9b05688c2b3e6c1f
xor rax, rdx
rol rax, 1
mov qword [rsp + 0x40], rax
lea rax, [r9 + r11]
add rax, qword [rbp - 0x40]
xor r8, rax
xor r8, rcx
movabs rcx, 0xbb67ae8584caa73b
ror r8, 0x20
add rcx, r8
mov rdx, rcx
xor rdx, r11
ror rdx, 0x18
lea r12, [rdx + rax]
add r12, qword [rbp - 0x38]
mov rax, r12
xor rax, r8
mov r8, qword [r10 + 0x50]
ror rax, 0x10
mov qword [rsp + 0x50], rax
add rax, rcx
mov rsi, rax
mov qword [rsp + 0x20], rax
xor rsi, rdx
lea rax, [rbx + rdi]
add rax, qword [rbp - 0x30]
movabs rcx, 0x1f83d9abfb41bd6b
xor r8, rax
rol rsi, 1
xor r8, rcx
add r15, rax
ror r8, 0x20
movabs rcx, 0x3c6ef372fe94f82b
add rcx, r8
mov rdx, rcx
xor rdx, rdi
ror rdx, 0x18
add r15, rdx
xor r8, r15
ror r8, 0x10
mov qword [rsp + 0x48], r8
mov r9, qword [r10 + 0x58]
lea r11, [rcx + r8]
mov rdi, r11
movabs rcx, 0x5be0cd19137e2179
xor rdi, rdx
mov rdx, qword [rsp + 0x68]
rol rdi, 1
lea rax, [rdx + r14]
mov r14, qword [rbp - 0x18]
add rax, qword [rbp - 0x20]
xor r9, rax
add r14, rax
xor r9, rcx
lea rax, [rsi + r13]
mov r13, qword [rbp + 8]
movabs rcx, 0xa54ff53a5f1d36f1
ror r9, 0x20
add rcx, r9
xor rdx, rcx
ror rdx, 0x18
add r14, rdx
xor r9, r14
ror r9, 0x10
lea r10, [r9 + rcx]
mov rcx, qword [rbp - 0x10]
add rcx, rax
mov rbx, r10
mov r8, rcx
xor rbx, rdx
xor r8, r9
rol rbx, 1
mov r9, qword [rbp - 8]
ror r8, 0x20
lea rdx, [r8 + r11]
mov r11, qword [rsp + 0x58]
xor rsi, rdx
ror rsi, 0x18
add r9, rsi
add r9, rcx
mov rcx, qword [rbp]
add rcx, r12
mov rax, r9
xor rax, r8
add rcx, rdi
ror rax, 0x10
xor r11, rcx
mov qword [rsp], rax
add rax, rdx
mov qword [rsp + 0x28], rax
xor rax, rsi
rol rax, 1
ror r11, 0x20
mov qword [rsp + 0x30], rax
lea rdx, [r11 + r10]
mov r10, qword [rsp + 0x50]
mov r8, rdx
xor r8, rdi
ror r8, 0x18
add r13, r8
add r13, rcx
mov rcx, qword [rbp + 0x10]
add rcx, rbx
mov rsi, r13
add rcx, r15
xor rsi, r11
mov r15, qword [rbp + 0x18]
xor r10, rcx
ror rsi, 0x10
ror r10, 0x20
lea rax, [rsi + rdx]
mov rdx, qword [rsp + 0x38]
add rdx, r10
mov qword [rsp + 8], rax
xor rax, r8
mov r8, rdx
xor r8, rbx
rol rax, 1
ror r8, 0x18
add r15, r8
mov qword [rsp + 0x58], rax
add r15, rcx
mov r12, qword [rsp + 0x40]
mov rdi, r15
mov rcx, qword [rbp + 0x20]
xor rdi, r10
add rcx, r12
ror rdi, 0x10
add rcx, r14
mov r14, qword [rbp + 0x28]
lea r10, [rdi + rdx]
mov rdx, qword [rsp + 0x20]
mov rax, r10
xor rax, r8
mov r8, rcx
xor r8, qword [rsp + 0x48]
ror r8, 0x20
add rdx, r8
rol rax, 1
mov qword [rsp + 0x38], rax
xor r12, rdx
ror r12, 0x18
add r14, r12
add r14, rcx
mov rcx, qword [rbp + 0x20]
mov rbx, r14
xor rbx, r8
ror rbx, 0x10
lea r11, [rbx + rdx]
mov r8, r11
xor r8, r12
mov r12, qword [rbp]
rol r8, 1
add rcx, r8
add rcx, r9
mov r9, rcx
xor r9, rsi
ror r9, 0x20
lea rdx, [r9 + r10]
mov r10, rdx
xor r10, r8
ror r10, 0x18
add r12, r10
add r12, rcx
mov rcx, qword [rbp - 0x30]
add rcx, r13
mov rax, r12
add rcx, qword [rsp + 0x30]
xor rax, r9
mov r13, qword [rbp - 0x10]
mov r8, rcx
ror rax, 0x10
xor r8, rdi
mov qword [rsp + 0x20], rax
add rax, rdx
ror r8, 0x20
mov qword [rsp + 0x48], rax
xor rax, r10
rol rax, 1
mov qword [rsp + 0x40], rax
lea rdx, [r8 + r11]
mov r9, rdx
xor r9, qword [rsp + 0x30]
ror r9, 0x18
add r13, r9
add r13, rcx
mov rcx, qword [rbp - 8]
add rcx, r15
mov rax, r13
add rcx, qword [rsp + 0x58]
xor rax, r8
ror rax, 0x10
mov r8, rcx
xor r8, rbx
mov qword [rsp + 0x30], rax
add rax, rdx
ror r8, 0x20
mov rdx, qword [rsp + 0x28]
mov rdi, rax
xor rdi, r9
mov qword [rsp + 0x10], rax
rol rdi, 1
add rdx, r8
mov rax, qword [rbp + 0x28]
mov r9, rdx
xor r9, qword [rsp + 0x58]
mov r15, qword [rbp - 0x20]
ror r9, 0x18
add rax, r9
add rax, rcx
mov rcx, qword [rbp + 0x18]
mov qword [rsp + 0x28], rax
add rcx, r14
add rcx, qword [rsp + 0x38]
xor rax, r8
ror rax, 0x10
mov r8, rcx
xor r8, qword [rsp]
mov qword [rsp + 0x50], rax
ror r8, 0x20
lea r11, [rax + rdx]
mov rdx, qword [rsp + 8]
mov rax, qword [rbp + 0x10]
add rdx, r8
mov rsi, r11
xor rsi, r9
mov r9, rdx
xor r9, qword [rsp + 0x38]
ror r9, 0x18
add r15, r9
rol rsi, 1
add r15, rcx
mov rcx, qword [rbp - 0x48]
add rcx, rdi
mov r10, r15
add rcx, r12
xor r10, r8
mov r12, qword [rbp - 0x40]
mov r8, rcx
ror r10, 0x10
xor r8, r10
ror r8, 0x20
lea rbx, [r10 + rdx]
mov r14, rbx
xor r14, r9
lea rdx, [r8 + r11]
mov r9, rdx
rol r14, 1
xor r9, rdi
ror r9, 0x18
add rax, r9
add rax, rcx
mov rcx, qword [rbp - 0x50]
mov qword [rsp + 8], rax
add rcx, rsi
xor rax, r8
add rcx, r13
mov r13, qword [rbp + 8]
mov r8, rcx
xor r8, qword [rsp + 0x20]
ror rax, 0x10
mov qword [rsp + 0x58], rax
add rax, rdx
mov qword [rsp + 0x38], rax
xor rax, r9
rol rax, 1
mov qword [rsp], rax
ror r8, 0x20
lea rdx, [r8 + rbx]
mov r9, rdx
xor r9, rsi
ror r9, 0x18
add r12, r9
add r12, rcx
mov rcx, qword [rsp + 0x28]
mov rbx, r12
xor rbx, r8
ror rbx, 0x10
lea rax, [rbx + rdx]
mov qword [rsp + 0x18], rax
xor rax, r9
rol rax, 1
mov qword [rsp + 0x20], rax
lea rax, [r14 + r13]
mov rdx, qword [rsp + 0x48]
add rcx, rax
mov r8, rcx
xor r8, qword [rsp + 0x30]
ror r8, 0x20
add rdx, r8
mov r9, rdx
xor r9, r14
mov r14, qword [rbp - 0x18]
ror r9, 0x18
add r14, r9
add r14, rcx
mov rcx, qword [rbp - 0x28]
add rcx, r15
mov rdi, r14
add rcx, qword [rsp + 0x40]
xor rdi, r8
mov r15, qword [rbp - 0x38]
mov r8, rcx
xor r8, qword [rsp + 0x50]
ror r8, 0x20
ror rdi, 0x10
lea r10, [rdi + rdx]
mov rdx, qword [rsp + 0x10]
add rdx, r8
mov rax, r10
xor rax, r9
mov r9, rdx
xor r9, qword [rsp + 0x40]
rol rax, 1
mov qword [rsp + 0x28], rax
ror r9, 0x18
add r15, r9
add r15, rcx
mov rcx, qword [rsp + 8]
mov rsi, r15
xor rsi, r8
ror rsi, 0x10
lea r11, [rsi + rdx]
mov r8, r11
xor r8, r9
rol r8, 1
lea rax, [r8 + r13]
mov r13, qword [rbp - 0x10]
add rcx, rax
mov r9, rcx
xor r9, rbx
ror r9, 0x20
lea rdx, [r9 + r10]
mov r10, rdx
xor r10, r8
ror r10, 0x18
add r13, r10
add r13, rcx
mov rcx, qword [rbp + 0x10]
add rcx, r12
mov rax, r13
add rcx, qword [rsp]
xor rax, r9
mov r12, qword [rbp - 0x50]
mov r8, rcx
ror rax, 0x10
xor r8, rdi
mov qword [rsp + 0x10], rax
add rax, rdx
mov qword [rsp + 0x30], rax
xor rax, r10
rol rax, 1
mov qword [rsp + 0x48], rax
ror r8, 0x20
lea rdx, [r8 + r11]
mov r9, rdx
xor r9, qword [rsp]
ror r9, 0x18
add r12, r9
add r12, rcx
mov rax, r12
xor rax, r8
ror rax, 0x10
mov qword [rsp], rax
add rax, rdx
mov rdx, qword [rsp + 0x38]
mov rdi, rax
mov rcx, qword [rbp - 0x28]
xor rdi, r9
add rcx, r14
mov qword [rsp + 0x40], rax
add rcx, qword [rsp + 0x20]
mov rax, qword [rbp - 0x40]
mov r8, rcx
xor r8, rsi
rol rdi, 1
ror r8, 0x20
add rdx, r8
mov r9, rdx
xor r9, qword [rsp + 0x20]
ror r9, 0x18
add rax, r9
add rax, rcx
mov rcx, qword [rbp + 0x28]
add rcx, r15
mov qword [rsp + 8], rax
add rcx, qword [rsp + 0x28]
xor rax, r8
mov r15, qword [rbp + 0x18]
mov r8, rcx
xor r8, qword [rsp + 0x58]
ror rax, 0x10
ror r8, 0x20
mov qword [rsp + 0x20], rax
lea r11, [rax + rdx]
mov rdx, qword [rsp + 0x18]
add rdx, r8
mov rsi, r11
xor rsi, r9
mov r9, rdx
xor r9, qword [rsp + 0x28]
ror r9, 0x18
add r15, r9
rol rsi, 1
add r15, rcx
mov rcx, qword [rbp]
add rcx, rdi
mov r10, r15
add rcx, r13
xor r10, r8
mov r13, qword [rbp + 0x20]
mov r8, rcx
ror r10, 0x10
xor r8, r10
ror r8, 0x20
lea rbx, [r10 + rdx]
mov r14, rbx
xor r14, r9
lea rdx, [r8 + r11]
mov r9, rdx
rol r14, 1
xor r9, rdi
ror r9, 0x18
add r13, r9
add r13, rcx
mov rcx, qword [rbp - 0x38]
add rcx, rsi
mov rax, r13
xor rax, r8
add rcx, r12
mov r12, qword [rbp - 0x20]
mov r8, rcx
xor r8, qword [rsp + 0x10]
ror rax, 0x10
mov qword [rsp + 0x38], rax
add rax, rdx
ror r8, 0x20
mov qword [rsp + 0x28], rax
xor rax, r9
rol rax, 1
mov qword [rsp + 0x18], rax
lea rdx, [r8 + rbx]
mov r9, rdx
xor r9, rsi
ror r9, 0x18
add r12, r9
add r12, rcx
mov rcx, qword [rsp + 8]
mov rbx, r12
xor rbx, r8
ror rbx, 0x10
lea rax, [rbx + rdx]
mov rdx, qword [rsp + 0x30]
mov qword [rsp + 0x50], rax
xor rax, r9
rol rax, 1
mov qword [rsp + 0x10], rax
mov rax, qword [rbp - 0x18]
add rax, r14
add rcx, rax
mov r8, rcx
xor r8, qword [rsp]
ror r8, 0x20
add rdx, r8
mov r9, rdx
xor r9, r14
mov r14, qword [rbp - 0x48]
ror r9, 0x18
add r14, r9
add r14, rcx
mov rcx, qword [rbp - 8]
add rcx, r15
mov rdi, r14
add rcx, qword [rsp + 0x48]
xor rdi, r8
mov r15, qword [rbp - 0x30]
mov r8, rcx
xor r8, qword [rsp + 0x20]
ror r8, 0x20
ror rdi, 0x10
lea r10, [rdi + rdx]
mov rdx, qword [rsp + 0x40]
add rdx, r8
mov rax, r10
xor rax, r9
mov r9, rdx
xor r9, qword [rsp + 0x48]
rol rax, 1
mov qword [rsp + 8], rax
mov rax, qword [rbp - 8]
ror r9, 0x18
add r15, r9
add r15, rcx
mov rcx, qword [rbp - 0x18]
mov rsi, r15
xor rsi, r8
ror rsi, 0x10
lea r11, [rsi + rdx]
mov r8, r11
xor r8, r9
rol r8, 1
add rcx, r8
add rcx, r13
mov r9, rcx
xor r9, rbx
ror r9, 0x20
lea rdx, [r9 + r10]
mov r10, rdx
xor r10, r8
ror r10, 0x18
add rax, r10
add rax, rcx
mov rcx, qword [rbp - 0x38]
mov qword [rsp], rax
add rcx, r12
add rcx, qword [rsp + 0x18]
xor rax, r9
ror rax, 0x10
mov r8, rcx
mov qword [rsp + 0x30], rax
xor r8, rdi
add rax, rdx
mov qword [rsp + 0x20], rax
xor rax, r10
rol rax, 1
mov qword [rsp + 0x48], rax
ror r8, 0x20
lea rdx, [r8 + r11]
mov r9, rdx
xor r9, qword [rsp + 0x18]
ror r9, 0x18
lea r12, [r9 + rcx]
mov rcx, qword [rbp + 0x18]
add r12, qword [rbp - 0x48]
add rcx, r14
add rcx, qword [rsp + 0x10]
mov rax, r12
xor rax, r8
mov r8, rcx
ror rax, 0x10
xor r8, rsi
mov qword [rsp + 0x18], rax
add rax, rdx
mov rdx, qword [rsp + 0x28]
mov rdi, rax
mov qword [rsp + 0x40], rax
xor rdi, r9
ror r8, 0x20
add rdx, r8
rol rdi, 1
mov r9, rdx
xor r9, qword [rsp + 0x10]
ror r9, 0x18
lea r13, [r9 + rcx]
mov rcx, qword [rbp + 8]
add r13, qword [rbp + 0x10]
add rcx, r15
add rcx, qword [rsp + 8]
mov rax, r13
xor rax, r8
mov r8, rcx
xor r8, qword [rsp + 0x38]
ror rax, 0x10
mov qword [rsp + 0x10], rax
ror r8, 0x20
lea r11, [rax + rdx]
mov rdx, qword [rsp + 0x50]
mov rax, qword [rbp - 0x40]
add rdx, r8
add rax, rdi
mov rsi, r11
xor rsi, r9
mov r9, rdx
xor r9, qword [rsp + 8]
ror r9, 0x18
rol rsi, 1
lea r15, [r9 + rcx]
mov rcx, qword [rsp]
add r15, qword [rbp + 0x20]
add rcx, rax
mov r10, r15
xor r10, r8
mov r8, rcx
ror r10, 0x10
xor r8, r10
ror r8, 0x20
lea rbx, [r10 + rdx]
mov r14, rbx
xor r14, r9
lea rdx, [r8 + r11]
mov r9, rdx
rol r14, 1
xor r9, rdi
ror r9, 0x18
lea rax, [r9 + rcx]
add rax, qword [rbp - 0x20]
lea rcx, [rsi + r12]
mov qword [rsp + 8], rax
xor rax, r8
ror rax, 0x10
mov qword [rsp + 0x50], rax
add rax, rdx
mov qword [rsp + 0x38], rax
xor rax, r9
rol rax, 1
add rcx, qword [rbp - 0x28]
mov r8, rcx
mov qword [rsp], rax
xor r8, qword [rsp + 0x30]
mov r11, qword [rsp + 0x48]
ror r8, 0x20
lea rdx, [r8 + rbx]
mov r9, rdx
xor r9, rsi
ror r9, 0x18
lea r12, [r9 + rcx]
mov rcx, qword [rbp - 0x30]
add r12, qword [rbp]
mov rbx, r12
xor rbx, r8
ror rbx, 0x10
lea rax, [rbx + rdx]
mov rdx, qword [rsp + 0x20]
mov qword [rsp + 0x30], rax
xor rax, r9
rol rax, 1
mov qword [rsp + 0x28], rax
lea rax, [r14 + r13]
mov r13, qword [rbp - 0x50]
add rcx, rax
mov r8, rcx
xor r8, qword [rsp + 0x18]
ror r8, 0x20
add rdx, r8
mov r9, rdx
xor r9, r14
ror r9, 0x18
lea r14, [r9 + rcx]
mov rcx, qword [rbp + 0x28]
add r14, r13
mov rdi, r14
xor rdi, r8
ror rdi, 0x10
lea r10, [rdi + rdx]
mov rdx, qword [rsp + 0x40]
mov rax, r10
xor rax, r9
rol rax, 1
mov qword [rsp + 0x18], rax
lea rax, [r15 + r11]
add rcx, rax
mov rax, qword [rsp + 8]
mov r8, rcx
xor r8, qword [rsp + 0x10]
ror r8, 0x20
add rdx, r8
mov r9, rdx
xor r9, r11
ror r9, 0x18
lea r15, [r9 + rcx]
mov rcx, qword [rbp - 8]
add r15, qword [rbp - 0x10]
mov rsi, r15
xor rsi, r8
ror rsi, 0x10
lea r11, [rsi + rdx]
mov r8, r11
xor r8, r9
rol r8, 1
add rax, r8
add rcx, rax
mov r9, rcx
xor r9, rbx
ror r9, 0x20
lea rdx, [r9 + r10]
mov r10, rdx
xor r10, r8
ror r10, 0x18
lea rax, [r10 + rcx]
add r13, rax
mov rax, r13
xor rax, r9
ror rax, 0x10
mov qword [rsp + 0x10], rax
add rax, rdx
mov qword [rsp + 0x20], rax
xor rax, r10
rol rax, 1
mov qword [rsp + 0x48], rax
mov r10, qword [rsp]
mov rcx, qword [rbp - 0x28]
lea rax, [r12 + r10]
add rcx, rax
mov r8, rcx
xor r8, rdi
ror r8, 0x20
lea rdx, [r8 + r11]
mov r9, rdx
xor r9, r10
mov r10, qword [rsp + 0x28]
ror r9, 0x18
lea r12, [r9 + rcx]
mov rcx, qword [rbp - 0x40]
add r12, qword [rbp - 0x18]
mov rax, r12
xor rax, r8
ror rax, 0x10
mov qword [rsp], rax
add rax, rdx
mov rdx, qword [rsp + 0x38]
mov rdi, rax
xor rdi, r9
mov qword [rsp + 0x40], rax
lea rax, [r14 + r10]
rol rdi, 1
add rcx, rax
mov r8, rcx
xor r8, rsi
ror r8, 0x20
add rdx, r8
mov r9, rdx
xor r9, r10
mov r10, qword [rsp + 0x18]
ror r9, 0x18
lea rax, [r9 + rcx]
mov rcx, qword [rbp]
add rax, qword [rbp - 0x30]
mov qword [rsp + 8], rax
xor rax, r8
ror rax, 0x10
mov qword [rsp + 0x28], rax
lea r11, [rax + rdx]
mov rdx, qword [rsp + 0x30]
lea rax, [r15 + r10]
mov rsi, r11
add rcx, rax
xor rsi, r9
lea rax, [rdi + r13]
rol rsi, 1
mov r8, rcx
xor r8, qword [rsp + 0x50]
ror r8, 0x20
add rdx, r8
mov r9, rdx
xor r9, r10
ror r9, 0x18
lea r15, [r9 + rcx]
mov rcx, qword [rbp + 0x20]
add r15, qword [rbp + 0x28]
add rcx, rax
mov r10, r15
xor r10, r8
mov r8, rcx
ror r10, 0x10
xor r8, r10
ror r8, 0x20
lea rbx, [r10 + rdx]
mov r14, rbx
xor r14, r9
lea rdx, [r8 + r11]
mov r9, rdx
rol r14, 1
xor r9, rdi
ror r9, 0x18
lea r13, [r9 + rcx]
add r13, qword [rbp - 0x48]
mov rax, r13
xor rax, r8
ror rax, 0x10
mov qword [rsp + 0x38], rax
mov rcx, qword [rbp + 8]
add rax, rdx
mov qword [rsp + 0x30], rax
xor rax, r9
rol rax, 1
mov qword [rsp + 0x18], rax
lea rax, [rsi + r12]
add rcx, rax
mov r8, rcx
xor r8, qword [rsp + 0x10]
ror r8, 0x20
lea rdx, [r8 + rbx]
mov r9, rdx
xor r9, rsi
ror r9, 0x18
lea r12, [r9 + rcx]
mov rcx, qword [rbp - 0x20]
add r12, qword [rbp + 0x10]
mov rdi, r12
xor rdi, r8
ror rdi, 0x10
lea rax, [rdi + rdx]
mov rdx, qword [rsp + 0x20]
mov qword [rsp + 0x50], rax
xor rax, r9
rol rax, 1
mov qword [rsp + 0x10], rax
mov rax, qword [rsp + 8]
add rax, r14
add rcx, rax
mov r8, rcx
xor r8, qword [rsp]
ror r8, 0x20
add rdx, r8
mov r9, rdx
xor r9, r14
ror r9, 0x18
lea r14, [r9 + rcx]
add r14, qword [rbp - 0x10]
mov rsi, r14
xor rsi, r8
ror rsi, 0x10
lea r10, [rsi + rdx]
mov rdx, qword [rsp + 0x40]
mov rax, r10
xor rax, r9
mov r9, qword [rsp + 0x48]
rol rax, 1
mov qword [rsp + 8], rax
lea rcx, [r15 + r9]
mov r15, qword [rbp + 0x18]
add rcx, qword [rbp - 0x38]
add r15, rcx
mov r8, rcx
xor r8, qword [rsp + 0x28]
mov rcx, qword [rbp - 0x40]
ror r8, 0x20
add rcx, r13
mov r13, qword [rbp + 0x10]
add rdx, r8
xor r9, rdx
ror r9, 0x18
add r15, r9
mov rbx, r15
xor rbx, r8
ror rbx, 0x10
lea r11, [rbx + rdx]
mov r8, r11
xor r8, r9
rol r8, 1
add rcx, r8
xor rdi, rcx
ror rdi, 0x20
lea rdx, [r10 + rdi]
mov r9, rdx
xor r9, r8
ror r9, 0x18
add r13, r9
add r13, rcx
mov rax, r13
xor rax, rdi
mov r8, qword [rsp + 0x18]
mov rcx, qword [rbp - 0x20]
ror rax, 0x10
mov qword [rsp], rax
add rax, rdx
mov qword [rsp + 0x20], rax
xor rax, r9
mov r9, qword [rsp + 0x10]
rol rax, 1
mov qword [rsp + 0x48], rax
lea rax, [r12 + r8]
mov r12, qword [rbp]
add rcx, rax
xor rsi, rcx
ror rsi, 0x20
lea rdx, [rsi + r11]
mov r11, qword [rsp + 0x38]
xor r8, rdx
ror r8, 0x18
add r12, r8
add r12, rcx
mov rcx, qword [rbp - 0x50]
mov rax, r12
xor rax, rsi
ror rax, 0x10
mov qword [rsp + 0x28], rax
add rax, rdx
mov rdx, qword [rsp + 0x30]
mov rdi, rax
xor rdi, r8
mov qword [rsp + 0x40], rax
lea rax, [r14 + r9]
rol rdi, 1
mov r14, qword [rbp - 0x38]
add rcx, rax
mov rax, qword [rbp + 8]
mov r8, rcx
xor r8, rbx
ror r8, 0x20
add rdx, r8
xor r9, rdx
ror r9, 0x18
add rax, r9
add rax, rcx
mov rcx, qword [rbp - 0x10]
mov qword [rsp + 0x18], rax
xor rax, r8
ror rax, 0x10
mov qword [rsp + 0x10], rax
lea r10, [rax + rdx]
mov rdx, qword [rsp + 0x50]
mov rbx, r10
xor rbx, r9
mov r9, qword [rsp + 8]
add rcx, r9
rol rbx, 1
add rcx, r15
xor r11, rcx
ror r11, 0x20
add rdx, r11
xor r9, rdx
ror r9, 0x18
add r14, r9
add r14, rcx
mov rcx, qword [rbp - 0x30]
add rcx, rdi
mov r8, r14
xor r8, r11
add rcx, r13
ror r8, 0x10
lea r11, [r8 + rdx]
mov rsi, r11
xor rsi, r9
mov r9, rcx
xor r9, r8
rol rsi, 1
ror r9, 0x20
lea rdx, [r9 + r10]
mov r8, rdx
xor r8, rdi
ror r8, 0x18
mov r13, qword [rbp + 0x18]
mov r15, qword [rbp - 0x28]
add r13, r8
add r13, rcx
mov rcx, qword [rbp - 0x18]
add rcx, rbx
mov rax, r13
xor rax, r9
add rcx, r12
mov r12, qword [rbp + 0x20]
ror rax, 0x10
mov qword [rsp + 0x38], rax
add rax, rdx
mov qword [rsp + 0x30], rax
xor rax, r8
rol rax, 1
mov r8, rcx
xor r8, qword [rsp]
ror r8, 0x20
mov qword [rsp + 8], rax
lea rdx, [r8 + r11]
mov r9, rdx
xor r9, rbx
ror r9, 0x18
add r15, r9
add r15, rcx
mov rcx, qword [rsp + 0x18]
mov rbx, r15
xor rbx, r8
ror rbx, 0x10
lea rax, [rbx + rdx]
mov rdx, qword [rsp + 0x20]
mov qword [rsp + 0x50], rax
xor rax, r9
rol rax, 1
mov qword [rsp], rax
mov rax, qword [rbp + 0x28]
add rax, rsi
add rcx, rax
mov r8, rcx
xor r8, qword [rsp + 0x28]
ror r8, 0x20
add rdx, r8
mov r9, rdx
xor r9, rsi
ror r9, 0x18
add r12, r9
add r12, rcx
mov rcx, qword [rbp - 0x48]
add rcx, r14
mov rdi, r12
add rcx, qword [rsp + 0x48]
xor rdi, r8
mov r14, qword [rbp - 8]
mov r8, rcx
xor r8, qword [rsp + 0x10]
ror r8, 0x20
ror rdi, 0x10
lea r10, [rdi + rdx]
mov rdx, qword [rsp + 0x40]
add rdx, r8
mov rax, r10
xor rax, r9
mov r9, rdx
xor r9, qword [rsp + 0x48]
ror r9, 0x18
add r14, r9
rol rax, 1
add r14, rcx
mov qword [rsp + 0x18], rax
mov rcx, qword [rbp + 0x10]
mov rsi, r14
xor rsi, r8
ror rsi, 0x10
lea r11, [rsi + rdx]
mov r8, r11
xor r8, r9
rol r8, 1
add rcx, r8
add rcx, r13
mov r9, rcx
mov r13, qword [rbp - 0x28]
xor r9, rbx
ror r9, 0x20
lea rdx, [r9 + r10]
mov r10, rdx
xor r10, r8
ror r10, 0x18
add r13, r10
add r13, rcx
mov rcx, qword [rbp - 0x48]
add rcx, r15
mov rax, r13
add rcx, qword [rsp + 8]
xor rax, r9
mov r15, qword [rbp]
mov r8, rcx
ror rax, 0x10
xor r8, rdi
mov qword [rsp + 0x28], rax
add rax, rdx
mov qword [rsp + 0x48], rax
xor rax, r10
rol rax, 1
mov qword [rsp + 0x40], rax
mov rax, qword [rbp + 0x28]
ror r8, 0x20
lea rdx, [r8 + r11]
mov r9, rdx
xor r9, qword [rsp + 8]
ror r9, 0x18
add rax, r9
add rax, rcx
mov rcx, qword [rbp + 0x20]
mov qword [rsp + 0x10], rax
add rcx, r12
add rcx, qword [rsp]
xor rax, r8
ror rax, 0x10
mov r8, rcx
xor r8, rsi
mov qword [rsp + 0x20], rax
add rax, rdx
ror r8, 0x20
mov rdx, qword [rsp + 0x30]
mov rdi, rax
add rdx, r8
mov qword [rsp + 0x58], rax
mov rax, qword [rbp + 0x18]
xor rdi, r9
mov r9, rdx
rol rdi, 1
xor r9, qword [rsp]
ror r9, 0x18
add rax, r9
add rax, rcx
mov rcx, qword [rbp - 0x30]
add rcx, r14
mov qword [rsp + 8], rax
add rcx, qword [rsp + 0x18]
xor rax, r8
ror rax, 0x10
mov r8, rcx
xor r8, qword [rsp + 0x38]
ror r8, 0x20
mov qword [rsp], rax
lea r11, [rax + rdx]
mov rdx, qword [rsp + 0x50]
add rdx, r8
mov rsi, r11
xor rsi, r9
mov r9, rdx
xor r9, qword [rsp + 0x18]
ror r9, 0x18
add r15, r9
rol rsi, 1
add r15, rcx
mov r10, r15
xor r10, r8
ror r10, 0x10
lea rbx, [r10 + rdx]
mov r14, rbx
mov rcx, qword [rbp - 0x50]
xor r14, r9
mov r12, qword [rbp - 0x38]
add rcx, rdi
add rcx, r13
rol r14, 1
mov r13, qword [rbp - 0x18]
mov r8, rcx
xor r8, r10
ror r8, 0x20
lea rdx, [r8 + r11]
mov r9, rdx
xor r9, rdi
ror r9, 0x18
add r13, r9
add r13, rcx
mov rcx, qword [rsp + 0x10]
mov rax, r13
xor rax, r8
ror rax, 0x10
mov qword [rsp + 0x38], rax
add rax, rdx
mov qword [rsp + 0x30], rax
xor rax, r9
rol rax, 1
mov qword [rsp + 0x18], rax
mov rax, qword [rbp - 0x20]
add rax, rsi
add rcx, rax
mov r8, rcx
xor r8, qword [rsp + 0x28]
ror r8, 0x20
lea rdx, [r8 + rbx]
mov r9, rdx
xor r9, rsi
ror r9, 0x18
add r12, r9
add r12, rcx
mov rcx, qword [rsp + 8]
mov rbx, r12
xor rbx, r8
ror rbx, 0x10
lea rax, [rbx + rdx]
mov rdx, qword [rsp + 0x48]
mov qword [rsp + 0x28], rax
xor rax, r9
rol rax, 1
mov qword [rsp + 0x10], rax
mov rax, qword [rbp - 8]
add rax, r14
add rcx, rax
mov r8, rcx
xor r8, qword [rsp + 0x20]
ror r8, 0x20
add rdx, r8
mov r9, rdx
xor r9, r14
mov r14, qword [rbp - 0x40]
ror r9, 0x18
add r14, r9
add r14, rcx
mov rcx, qword [rbp - 0x10]
add rcx, r15
mov rdi, r14
add rcx, qword [rsp + 0x40]
xor rdi, r8
mov r15, qword [rbp + 8]
mov r8, rcx
xor r8, qword [rsp]
ror rdi, 0x10
ror r8, 0x20
lea r10, [rdi + rdx]
mov rdx, qword [rsp + 0x58]
add rdx, r8
mov rax, r10
xor rax, r9
mov r9, rdx
xor r9, qword [rsp + 0x40]
rol rax, 1
ror r9, 0x18
mov qword [rsp + 8], rax
add r15, r9
add r15, rcx
mov rcx, qword [rbp + 0x18]
mov rsi, r15
xor rsi, r8
ror rsi, 0x10
lea r11, [rsi + rdx]
mov r8, r11
xor r8, r9
rol r8, 1
add rcx, r8
add rcx, r13
mov r13, qword [rbp + 8]
mov r9, rcx
xor r9, rbx
ror r9, 0x20
lea rdx, [r9 + r10]
mov r10, rdx
xor r10, r8
ror r10, 0x18
add r13, r10
add r13, rcx
mov rcx, qword [rbp - 0x18]
add rcx, r12
mov rax, r13
add rcx, qword [rsp + 0x18]
xor rax, r9
mov r12, qword [rbp + 0x20]
mov r8, rcx
ror rax, 0x10
xor r8, rdi
mov qword [rsp], rax
add rax, rdx
mov qword [rsp + 0x48], rax
xor rax, r10
rol rax, 1
mov qword [rsp + 0x40], rax
ror r8, 0x20
lea rdx, [r8 + r11]
mov r9, rdx
xor r9, qword [rsp + 0x18]
ror r9, 0x18
add r12, r9
add r12, rcx
mov rcx, qword [rbp + 0x10]
add rcx, r14
mov rax, r12
add rcx, qword [rsp + 0x10]
xor rax, r8
ror rax, 0x10
mov r8, rcx
xor r8, rsi
mov qword [rsp + 0x20], rax
add rax, rdx
ror r8, 0x20
mov rdx, qword [rsp + 0x30]
mov rdi, rax
add rdx, r8
mov qword [rsp + 0x50], rax
mov rax, qword [rbp - 0x48]
xor rdi, r9
mov r9, rdx
rol rdi, 1
xor r9, qword [rsp + 0x10]
ror r9, 0x18
add rax, r9
add rax, rcx
mov rcx, qword [rbp - 0x38]
mov qword [rsp + 0x18], rax
add rcx, r15
add rcx, qword [rsp + 8]
xor rax, r8
ror rax, 0x10
mov r8, rcx
xor r8, qword [rsp + 0x38]
mov qword [rsp + 0x10], rax
lea r11, [rax + rdx]
mov rsi, r11
xor rsi, r9
rol rsi, 1
ror r8, 0x20
mov rdx, qword [rsp + 0x28]
mov r15, qword [rbp - 8]
add rdx, r8
mov r9, rdx
xor r9, qword [rsp + 8]
ror r9, 0x18
add r15, r9
add r15, rcx
mov rcx, qword [rbp - 0x28]
add rcx, rdi
mov r10, r15
xor r10, r8
add rcx, r13
mov r13, qword [rbp - 0x50]
mov r8, rcx
ror r10, 0x10
xor r8, r10
ror r8, 0x20
lea rbx, [r10 + rdx]
mov r14, rbx
xor r14, r9
lea rdx, [r8 + r11]
mov r9, rdx
rol r14, 1
xor r9, rdi
ror r9, 0x18
add r13, r9
add r13, rcx
mov rcx, qword [rbp + 0x28]
add rcx, rsi
mov rax, r13
xor rax, r8
add rcx, r12
mov r12, qword [rbp - 0x30]
mov r8, rcx
xor r8, qword [rsp]
ror rax, 0x10
mov qword [rsp + 0x30], rax
add rax, rdx
mov qword [rsp + 0x28], rax
xor rax, r9
rol rax, 1
mov qword [rsp + 8], rax
ror r8, 0x20
lea rdx, [r8 + rbx]
mov r9, rdx
xor r9, rsi
ror r9, 0x18
add r12, r9
add r12, rcx
mov rcx, qword [rsp + 0x18]
mov rbx, r12
xor rbx, r8
ror rbx, 0x10
lea rax, [rbx + rdx]
mov rdx, qword [rsp + 0x48]
mov qword [rsp + 0x38], rax
xor rax, r9
rol rax, 1
mov qword [rsp], rax
mov rax, qword [rbp - 0x10]
add rax, r14
add rcx, rax
mov r8, rcx
xor r8, qword [rsp + 0x20]
ror r8, 0x20
add rdx, r8
mov r9, rdx
xor r9, r14
ror r9, 0x18
lea r14, [r9 + rcx]
mov rcx, qword [rbp - 0x40]
add r14, qword [rbp - 0x20]
mov rdi, r14
xor rdi, r8
ror rdi, 0x10
lea r10, [rdi + rdx]
mov rax, r10
xor rax, r9
rol rax, 1
mov qword [rsp + 0x18], rax
mov rdx, qword [rsp + 0x50]
add rcx, r15
add rcx, qword [rsp + 0x40]
mov r8, rcx
xor r8, qword [rsp + 0x10]
ror r8, 0x20
add rdx, r8
mov r9, rdx
xor r9, qword [rsp + 0x40]
ror r9, 0x18
lea r15, [r9 + rcx]
mov rcx, qword [rbp - 0x20]
add r15, qword [rbp]
mov rsi, r15
xor rsi, r8
ror rsi, 0x10
lea r11, [rsi + rdx]
mov r8, r11
xor r8, r9
rol r8, 1
add rcx, r8
add rcx, r13
mov r9, rcx
xor r9, rbx
ror r9, 0x20
lea rdx, [r9 + r10]
mov r10, rdx
xor r10, r8
ror r10, 0x18
lea r13, [r10 + rcx]
mov rcx, qword [rbp + 0x20]
add r13, qword [rbp + 0x28]
add rcx, r12
add rcx, qword [rsp + 8]
mov rax, r13
xor rax, r9
mov r8, rcx
ror rax, 0x10
xor r8, rdi
mov qword [rsp + 0x10], rax
add rax, rdx
mov qword [rsp + 0x48], rax
xor rax, r10
mov r10, qword [rsp]
rol rax, 1
mov qword [rsp + 0x40], rax
ror r8, 0x20
lea rdx, [r8 + r11]
mov r9, rdx
xor r9, qword [rsp + 8]
ror r9, 0x18
lea r12, [r9 + rcx]
mov rcx, qword [rbp + 8]
add r12, qword [rbp - 8]
mov rax, r12
xor rax, r8
ror rax, 0x10
mov qword [rsp + 0x20], rax
add rax, rdx
mov rdx, qword [rsp + 0x28]
mov rdi, rax
mov qword [rsp + 0x50], rax
xor rdi, r9
lea rax, [r14 + r10]
rol rdi, 1
add rcx, rax
mov r8, rcx
xor r8, rsi
ror r8, 0x20
add rdx, r8
mov r9, rdx
xor r9, r10
ror r9, 0x18
lea rax, [r9 + rcx]
add rax, qword [rbp - 0x38]
mov qword [rsp + 8], rax
xor rax, r8
ror rax, 0x10
mov qword [rsp], rax
lea r11, [rax + rdx]
mov rsi, r11
mov r10, qword [rsp + 0x18]
xor rsi, r9
mov rdx, qword [rsp + 0x38]
mov rcx, qword [rbp - 0x50]
rol rsi, 1
lea rax, [r15 + r10]
add rcx, rax
lea rax, [rdi + r13]
mov r8, rcx
xor r8, qword [rsp + 0x30]
ror r8, 0x20
add rdx, r8
mov r9, rdx
xor r9, r10
ror r9, 0x18
lea r15, [r9 + rcx]
mov rcx, qword [rbp + 0x10]
add r15, qword [rbp - 0x10]
add rcx, rax
mov r10, r15
xor r10, r8
mov r8, rcx
ror r10, 0x10
xor r8, r10
ror r8, 0x20
lea rbx, [r10 + rdx]
mov r14, rbx
xor r14, r9
lea rdx, [r8 + r11]
mov r9, rdx
rol r14, 1
xor r9, rdi
ror r9, 0x18
lea r13, [r9 + rcx]
mov rcx, qword [rbp + 0x18]
add r13, qword [rbp - 0x40]
mov rax, r13
xor rax, r8
ror rax, 0x10
mov qword [rsp + 0x30], rax
add rax, rdx
mov qword [rsp + 0x28], rax
xor rax, r9
rol rax, 1
mov qword [rsp + 0x18], rax
lea rax, [rsi + r12]
add rcx, rax
mov r8, rcx
xor r8, qword [rsp + 0x10]
ror r8, 0x20
lea rdx, [r8 + rbx]
mov r9, rdx
xor r9, rsi
ror r9, 0x18
lea r12, [r9 + rcx]
mov rcx, qword [rbp - 0x48]
add r12, qword [rbp - 0x18]
mov rbx, r12
xor rbx, r8
ror rbx, 0x10
lea rax, [rbx + rdx]
mov rdx, qword [rsp + 0x48]
mov qword [rsp + 0x38], rax
xor rax, r9
rol rax, 1
mov qword [rsp + 0x10], rax
mov rax, qword [rsp + 8]
add rax, r14
add rcx, rax
mov r8, rcx
xor r8, qword [rsp + 0x20]
ror r8, 0x20
add rdx, r8
mov r9, rdx
xor r9, r14
ror r9, 0x18
lea r14, [r9 + rcx]
add r14, qword [rbp - 0x30]
mov rdi, r14
xor rdi, r8
ror rdi, 0x10
mov r11, qword [rsp + 0x40]
lea r10, [rdi + rdx]
mov rcx, qword [rbp]
mov rax, r10
mov rdx, qword [rsp + 0x50]
xor rax, r9
rol rax, 1
mov qword [rsp + 8], rax
lea rax, [r15 + r11]
add rcx, rax
mov r8, rcx
xor r8, qword [rsp]
ror r8, 0x20
add rdx, r8
mov r9, rdx
xor r9, r11
ror r9, 0x18
lea r15, [r9 + rcx]
mov rcx, qword [rbp]
add r15, qword [rbp - 0x28]
mov rsi, r15
xor rsi, r8
ror rsi, 0x10
lea r11, [rsi + rdx]
mov r8, r11
xor r8, r9
rol r8, 1
lea rax, [r8 + r13]
add rcx, rax
mov r9, rcx
xor r9, rbx
ror r9, 0x20
lea rdx, [r9 + r10]
mov r10, rdx
xor r10, r8
ror r10, 0x18
lea r13, [r10 + rcx]
mov rcx, qword [rbp - 0x10]
add r13, qword [rbp - 0x40]
mov rax, r13
xor rax, r9
ror rax, 0x10
mov qword [rsp], rax
add rax, rdx
mov qword [rsp + 0x20], rax
xor rax, r10
mov r10, qword [rsp + 0x18]
rol rax, 1
mov qword [rsp + 0x48], rax
lea rax, [r12 + r10]
add rcx, rax
mov r8, rcx
xor r8, rdi
ror r8, 0x20
lea rdx, [r8 + r11]
mov r9, rdx
xor r9, r10
mov r10, qword [rsp + 0x10]
ror r9, 0x18
lea r12, [r9 + rcx]
mov rcx, qword [rbp - 0x18]
add r12, qword [rbp - 0x30]
mov rax, r12
xor rax, r8
ror rax, 0x10
mov qword [rsp + 0x18], rax
add rax, rdx
mov rdx, qword [rsp + 0x28]
mov rbx, rax
xor rbx, r9
mov qword [rsp + 0x40], rax
lea rax, [r14 + r10]
rol rbx, 1
add rcx, rax
mov r8, rcx
xor r8, rsi
ror r8, 0x20
add rdx, r8
mov r9, rdx
xor r9, r10
ror r9, 0x18
lea rsi, [r9 + rcx]
mov rcx, qword [rbp - 0x48]
add rsi, qword [rbp - 0x20]
mov rax, rsi
xor rax, r8
ror rax, 0x10
mov qword [rsp + 0x10], rax
lea r10, [rax + rdx]
mov rdx, qword [rsp + 0x38]
mov rdi, r10
xor rdi, r9
mov r9, qword [rsp + 8]
rol rdi, 1
lea rax, [r15 + r9]
mov r15, qword [rbp + 0x20]
add rcx, rax
lea rax, [rbx + r13]
mov r13, qword [rbp + 8]
mov r8, rcx
xor r8, qword [rsp + 0x30]
ror r8, 0x20
add rdx, r8
mov r11, rdx
xor r11, r9
ror r11, 0x18
lea r14, [r11 + rcx]
mov rcx, qword [rbp + 0x28]
add r14, qword [rbp - 0x28]
add rcx, rax
mov r9, r14
xor r9, r8
ror r9, 0x10
lea r8, [r9 + rdx]
xor r9, rcx
ror r9, 0x20
xor r11, r8
rol r11, 1
lea rdx, [r10 + r9]
xor rbx, rdx
ror rbx, 0x18
add r13, rbx
add r13, rcx
mov rcx, qword [rbp - 8]
mov rax, r13
xor rax, r9
mov r9, qword [rsp]
ror rax, 0x10
mov qword [rsp + 0x30], rax
add rax, rdx
mov qword [rsp + 0x28], rax
xor rax, rbx
rol rax, 1
mov qword [rsp + 8], rax
lea rax, [rdi + r12]
add rcx, rax
xor r9, rcx
ror r9, 0x20
lea rdx, [r9 + r8]
xor rdi, rdx
ror rdi, 0x18
add r15, rdi
add r15, rcx
mov rcx, qword [rbp - 0x38]
add rcx, rsi
mov rbx, r15
xor rbx, r9
add rcx, r11
mov r9, qword [rsp + 0x18]
ror rbx, 0x10
xor r9, rcx
ror r9, 0x20
lea rax, [rbx + rdx]
mov rdx, qword [rsp + 0x20]
add rdx, r9
mov qword [rsp + 0x38], rax
xor rax, rdi
mov r8, rdx
rol rax, 1
xor r8, r11
ror r8, 0x18
mov qword [rsp], rax
mov r12, qword [rbp + 0x10]
add r12, r8
add r12, rcx
mov rcx, qword [rbp + 0x18]
mov rdi, r12
xor rdi, r9
mov r9, qword [rsp + 0x48]
ror rdi, 0x10
lea r10, [rdi + rdx]
mov rdx, qword [rsp + 0x40]
mov rax, r10
xor rax, r8
mov r8, qword [rsp + 0x10]
rol rax, 1
mov qword [rsp + 0x18], rax
lea rax, [r14 + r9]
mov r14, qword [rbp - 0x50]
add rcx, rax
xor r8, rcx
ror r8, 0x20
add rdx, r8
xor r9, rdx
ror r9, 0x18
add r14, r9
add r14, rcx
mov rcx, qword [rbp - 0x50]
mov rsi, r14
xor rsi, r8
ror rsi, 0x10
lea r11, [rsi + rdx]
mov r8, r11
xor r8, r9
rol r8, 1
add rcx, r8
add rcx, r13
mov r13, qword [rbp - 0x48]
mov r9, rcx
xor r9, rbx
ror r9, 0x20
lea rdx, [r9 + r10]
mov r10, rdx
xor r10, r8
ror r10, 0x18
add r13, r10
add r13, rcx
mov rcx, qword [rbp - 0x40]
add rcx, r15
mov rax, r13
add rcx, qword [rsp + 8]
xor rax, r9
ror rax, 0x10
mov r8, rcx
mov qword [rsp + 0x20], rax
xor r8, rdi
add rax, rdx
ror r8, 0x20
mov qword [rsp + 0x40], rax
xor rax, r10
rol rax, 1
mov qword [rsp + 0x50], rax
mov rax, qword [rbp - 0x38]
lea rdx, [r8 + r11]
mov r9, rdx
xor r9, qword [rsp + 8]
ror r9, 0x18
add rax, r9
add rax, rcx
mov rcx, qword [rbp - 0x30]
mov qword [rsp + 0x10], rax
add rcx, r12
add rcx, qword [rsp]
xor rax, r8
ror rax, 0x10
mov r8, rcx
mov qword [rsp + 0x48], rax
add rax, rdx
mov rdi, rax
mov qword [rsp + 0x58], rax
xor rdi, r9
rol rdi, 1
xor r8, rsi
mov rdx, qword [rsp + 0x28]
mov rax, qword [rbp - 0x28]
mov r15, qword [rbp - 0x18]
mov r12, qword [rbp + 8]
ror r8, 0x20
add rdx, r8
mov r9, rdx
xor r9, qword [rsp]
ror r9, 0x18
add rax, r9
add rax, rcx
mov rcx, qword [rbp - 0x20]
mov qword [rsp + 8], rax
add rcx, r14
add rcx, qword [rsp + 0x18]
xor rax, r8
ror rax, 0x10
mov r8, rcx
xor r8, qword [rsp + 0x30]
mov qword [rsp], rax
ror r8, 0x20
lea r11, [rax + rdx]
mov rdx, qword [rsp + 0x38]
add rdx, r8
mov rsi, r11
xor rsi, r9
mov r9, rdx
xor r9, qword [rsp + 0x18]
ror r9, 0x18
add r15, r9
rol rsi, 1
add r15, rcx
mov rcx, qword [rbp - 0x10]
add rcx, rdi
mov r10, r15
xor r10, r8
add rcx, r13
mov r13, qword [rbp - 8]
mov r8, rcx
ror r10, 0x10
xor r8, r10
ror r8, 0x20
lea rbx, [r10 + rdx]
mov r14, rbx
xor r14, r9
lea rdx, [r8 + r11]
mov r9, rdx
rol r14, 1
xor r9, rdi
ror r9, 0x18
add r13, r9
add r13, rcx
mov rcx, qword [rsp + 0x10]
mov rax, r13
xor rax, r8
ror rax, 0x10
mov qword [rsp + 0x38], rax
add rax, rdx
mov qword [rsp + 0x30], rax
xor rax, r9
rol rax, 1
mov qword [rsp + 0x18], rax
mov rax, qword [rbp]
add rax, rsi
add rcx, rax
mov r8, rcx
xor r8, qword [rsp + 0x20]
ror r8, 0x20
lea rdx, [r8 + rbx]
mov r9, rdx
xor r9, rsi
ror r9, 0x18
add r12, r9
add r12, rcx
mov rbx, r12
xor rbx, r8
ror rbx, 0x10
lea rax, [rbx + rdx]
mov qword [rsp + 0x20], rax
xor rax, r9
rol rax, 1
mov rcx, qword [rsp + 8]
mov rdx, qword [rsp + 0x40]
mov qword [rsp + 0x28], rax
mov rax, qword [rbp + 0x10]
add rax, r14
add rcx, rax
mov rax, qword [rbp + 0x18]
mov r8, rcx
xor r8, qword [rsp + 0x48]
ror r8, 0x20
add rdx, r8
mov r9, rdx
xor r9, r14
mov r14, qword [rbp + 0x20]
ror r9, 0x18
add rax, r9
add rax, rcx
mov rdi, rax
mov qword [rsp + 0x10], rax
xor rdi, r8
lea rcx, [r14 + r15]
add rcx, qword [rsp + 0x50]
mov r15, qword [rbp + 0x28]
mov r8, rcx
xor r8, qword [rsp]
ror r8, 0x20
ror rdi, 0x10
lea r10, [rdi + rdx]
mov rdx, qword [rsp + 0x58]
add rdx, r8
mov rax, r10
xor rax, r9
mov r9, rdx
xor r9, qword [rsp + 0x50]
rol rax, 1
ror r9, 0x18
add r15, r9
mov qword [rsp + 8], rax
mov rax, qword [rbp]
add r15, rcx
mov rsi, r15
xor rsi, r8
ror rsi, 0x10
lea r11, [rsi + rdx]
mov r8, r11
xor r8, r9
rol r8, 1
lea rcx, [r14 + r8]
add rcx, r13
mov r13, qword [rbp - 0x10]
mov r9, rcx
xor r9, rbx
ror r9, 0x20
lea rdx, [r9 + r10]
mov r10, rdx
xor r10, r8
ror r10, 0x18
add rax, r10
add rax, rcx
mov rcx, qword [rbp - 0x30]
mov qword [rsp], rax
add rcx, r12
add rcx, qword [rsp + 0x18]
xor rax, r9
ror rax, 0x10
mov r8, rcx
mov qword [rsp + 0x48], rax
xor r8, rdi
add rax, rdx
ror r8, 0x20
mov qword [rsp + 0x40], rax
xor rax, r10
rol rax, 1
mov qword [rsp + 0x50], rax
lea rdx, [r8 + r11]
mov r9, rdx
xor r9, qword [rsp + 0x18]
ror r9, 0x18
add r13, r9
add r13, rcx
mov rax, r13
mov rcx, qword [rbp - 8]
xor rax, r8
add rcx, qword [rsp + 0x10]
add rcx, qword [rsp + 0x28]
mov r12, qword [rbp + 0x28]
mov r8, rcx
ror rax, 0x10
xor r8, rsi
mov qword [rsp + 0x18], rax
add rax, rdx
mov rdx, qword [rsp + 0x30]
mov r14, rax
mov qword [rsp + 0x58], rax
xor r14, r9
ror r8, 0x20
add rdx, r8
rol r14, 1
mov r9, rdx
xor r9, qword [rsp + 0x28]
ror r9, 0x18
add r12, r9
add r12, rcx
mov rcx, qword [rbp + 0x18]
add rcx, r15
mov rax, r12
add rcx, qword [rsp + 8]
xor rax, r8
mov r15, qword [rbp - 0x20]
mov r8, rcx
xor r8, qword [rsp + 0x38]
ror rax, 0x10
mov qword [rsp + 0x10], rax
ror r8, 0x20
lea rbx, [rax + rdx]
mov rdx, qword [rsp + 0x20]
mov rax, qword [rbp - 0x48]
add rdx, r8
add rax, r14
mov rsi, rbx
xor rsi, r9
mov r9, rdx
xor r9, qword [rsp + 8]
ror r9, 0x18
add r15, r9
rol rsi, 1
add r15, rcx
mov rcx, qword [rsp]
add rcx, rax
mov r10, r15
xor r10, r8
mov r8, rcx
ror r10, 0x10
xor r8, r10
ror r8, 0x20
lea r11, [r10 + rdx]
mov rdi, r11
lea rdx, [r8 + rbx]
xor rdi, r9
mov rax, rdx
rol rdi, 1
xor rax, r14
mov r14, qword [rbp + 0x10]
ror rax, 0x18
add r14, rax
mov qword [rsp + 0x28], rax
add r14, rcx
mov rcx, qword [rbp - 0x50]
add rcx, rsi
mov rax, r14
xor rax, r8
add rcx, r13
ror rax, 0x10
mov qword [rsp + 0x20], rax
add rax, rdx
mov rdx, rcx
mov qword [rsp + 8], rax
xor rdx, qword [rsp + 0x48]
ror rdx, 0x20
lea rax, [rdx + r11]
mov r8, rax
xor r8, rsi
ror r8, 0x18
mov qword [rsp + 0x30], r8
lea r10, [r8 + rcx]
mov rcx, qword [rbp + 8]
add r10, qword [rbp - 0x40]
add rcx, rdi
add rcx, r12
xor rdx, r10
ror rdx, 0x10
mov rsi, rcx
xor rsi, qword [rsp + 0x18]
ror rsi, 0x20
mov qword [rsp], rdx
lea r13, [rax + rdx]
mov rax, qword [rsp + 0x40]
add rax, rsi
mov r12, rax
xor r12, rdi
mov rdi, qword [rsp + 0x60]
ror r12, 0x18
lea r9, [r12 + rcx]
mov rcx, qword [rbp - 0x28]
add r9, qword [rbp - 0x18]
add rcx, r15
add rcx, qword [rsp + 0x50]
xor rsi, r9
ror rsi, 0x10
mov r11, rcx
xor r11, qword [rsp + 0x10]
ror r11, 0x20
lea rbx, [rax + rsi]
mov rax, qword [rsp + 0x58]
add rax, r11
xor r12, rbx
mov r8, rax
rol r12, 1
xor r8, qword [rsp + 0x50]
xor r12, qword [rsp + 0x68]
ror r8, 0x18
lea rdx, [r8 + rcx]
add rdx, qword [rbp - 0x38]
xor r11, rdx
ror r11, 0x10
lea rcx, [rax + r11]
mov rax, qword [rsp + 0x70]
xor rax, rbx
xor r8, rcx
xor rax, r14
rol r8, 1
xor r8, qword [rbp - 0x70]
xor r8, qword [rsp]
mov qword [rdi], rax
mov rax, qword [rsp + 0x78]
xor rax, r10
mov qword [rdi + 0x20], r8
mov r10, qword [rbp - 0x80]
xor rax, rcx
mov qword [rdi + 8], rax
mov rax, qword [rsp + 8]
xor r10, rax
xor rax, qword [rsp + 0x28]
rol rax, 1
xor r10, r9
xor rax, qword [rbp - 0x68]
mov r9, qword [rbp - 0x78]
xor rax, rsi
mov qword [rdi + 0x28], rax
xor r9, r13
mov rax, qword [rsp + 0x30]
xor r9, rdx
xor rax, r13
mov qword [rdi + 0x10], r10
rol rax, 1
xor rax, qword [rbp - 0x60]
xor rax, r11
mov qword [rdi + 0x18], r9
xor r12, qword [rsp + 0x20]
mov qword [rdi + 0x38], r12
mov qword [rdi + 0x30], rax
mov rcx, qword [rbp + 0x30]
xor rcx, rsp
call fcn.140079690
lea r11, [rsp + 0x140]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret