Function at 0x180122b70
Capabilities:
Encode data using xor
Hash data using sha512

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0xa0]
sub rsp, 0x1a0
mov rax, qword [0x1803e3008]
xor rax, rsp
mov qword [rbp + 0x90], rax
xor edi, edi
mov qword [rbp - 0x80], rcx
mov esi, edi
mov r14, rdx
mov rbx, rcx
lea rcx, [r14 + rsi*8]
call fcn.180124ab0
mov qword [rbp + rsi*8 - 0x70], rax
inc rsi
cmp rsi, 0x10
jb 0x180122bae
mov r8d, 0x40
lea rcx, [rbp + 0x10]
mov rdx, rbx
call sub.VCRUNTIME140.dll_memcpy
movaps xmm0, xmmword [0x1802556c0]
lea rax, [0x1802556e0]
movaps xmm1, xmmword [0x1802556d0]
lea r9, [0x1802556c0]
mov r8, rbx
mov rdx, rdi
movups xmmword [rbp + 0x50], xmm0
sub r8, rax
movups xmmword [rbp + 0x60], xmm1
lea rax, [rdx + r9]
mov rcx, qword [r8 + rax + 0x60]
xor rcx, qword [rax + 0x20]
mov qword [rbp + rdx + 0x70], rcx
add rdx, 8
cmp rdx, 0x10
jl 0x180122c04
lea rax, [0x1802556f0]
sub rbx, rax
lea rax, [rdi + r9]
mov rcx, qword [rbx + rax + 0x80]
xor rcx, qword [rax + 0x30]
mov qword [rbp + rdi + 0x80], rcx
add rdi, 8
cmp rdi, 0x10
jl 0x180122c2a
mov r9, qword [rbp + 0x30]
mov rdx, qword [rbp + 0x10]
mov r8, qword [rbp + 0x70]
add rdx, r9
add rdx, qword [rbp - 0x70]
mov rcx, qword [rbp + 0x50]
xor r8, rdx
mov r15, qword [rbp - 0x68]
mov r12, qword [rbp - 0x58]
mov r13, qword [rbp - 0x48]
mov r14, qword [rbp - 0x38]
ror r8, 0x20
add rcx, r8
xor r9, rcx
ror r9, 0x18
add r15, r9
add r15, rdx
mov rdx, qword [rbp + 0x18]
mov rax, r15
xor rax, r8
mov r8, qword [rbp + 0x78]
ror rax, 0x10
mov qword [rsp + 0x78], rax
add rax, rcx
mov rcx, qword [rbp + 0x58]
mov qword [rsp + 0x58], rax
xor rax, r9
mov r9, qword [rbp + 0x38]
add rdx, r9
rol rax, 1
add rdx, qword [rbp - 0x60]
xor r8, rdx
mov qword [rsp + 0x68], rax
ror r8, 0x20
add rcx, r8
xor r9, rcx
ror r9, 0x18
add r12, r9
add r12, rdx
mov rdx, qword [rbp + 0x20]
mov rax, r12
xor rax, r8
mov r8, qword [rbp + 0x80]
ror rax, 0x10
mov qword [rsp + 0x70], rax
add rax, rcx
mov rcx, qword [rbp + 0x60]
mov rsi, rax
xor rsi, r9
mov qword [rsp + 0x48], rax
mov r9, qword [rbp + 0x40]
add rdx, r9
rol rsi, 1
add rdx, qword [rbp - 0x50]
xor r8, rdx
ror r8, 0x20
add rcx, r8
xor r9, rcx
ror r9, 0x18
add r13, r9
add r13, rdx
mov rdx, qword [rbp - 0x40]
mov rax, r13
xor rax, r8
mov r8, qword [rbp + 0x88]
ror rax, 0x10
mov qword [rsp + 0x60], rax
lea r11, [rax + rcx]
mov rcx, qword [rbp + 0x68]
mov rdi, r11
xor rdi, r9
mov r9, qword [rbp + 0x48]
add rdx, r9
rol rdi, 1
add rdx, qword [rbp + 0x28]
xor r8, rdx
ror r8, 0x20
add rcx, r8
xor r9, rcx
ror r9, 0x18
add r14, r9
add r14, rdx
mov rdx, r14
xor rdx, r8
ror rdx, 0x10
lea r10, [rdx + rcx]
mov rcx, qword [rbp - 0x30]
add rcx, rsi
mov rbx, r10
add rcx, r15
xor rbx, r9
mov r8, rcx
rol rbx, 1
xor r8, rdx
ror r8, 0x20
lea rdx, [r8 + r11]
mov r9, rdx
xor r9, rsi
ror r9, 0x18
lea r15, [r9 + rcx]
mov rcx, qword [rbp - 0x20]
add r15, qword [rbp - 0x28]
add rcx, rdi
add rcx, r12
mov rax, r15
xor rax, r8
mov r8, rcx
xor r8, qword [rsp + 0x78]
ror rax, 0x10
ror r8, 0x20
mov qword [rsp + 0x20], rax
add rax, rdx
mov qword [rsp + 0x38], rax
xor rax, r9
rol rax, 1
lea rdx, [r8 + r10]
mov qword [rsp + 0x50], rax
mov r9, rdx
xor r9, rdi
ror r9, 0x18
lea r12, [r9 + rcx]
mov rcx, qword [rbp - 0x10]
add r12, qword [rbp - 0x18]
add rcx, rbx
add rcx, r13
mov rsi, r12
xor rsi, r8
mov r8, rcx
xor r8, qword [rsp + 0x70]
ror r8, 0x20
ror rsi, 0x10
lea rax, [rsi + rdx]
mov rdx, qword [rsp + 0x58]
add rdx, r8
mov qword [rsp + 0x28], rax
xor rax, r9
mov r9, rdx
rol rax, 1
xor r9, rbx
ror r9, 0x18
mov qword [rsp + 0x78], rax
lea r13, [r9 + rcx]
mov rcx, qword [rbp]
add r13, qword [rbp - 8]
add rcx, r14
add rcx, qword [rsp + 0x68]
mov rdi, r13
xor rdi, r8
mov r8, rcx
xor r8, qword [rsp + 0x60]
ror rdi, 0x10
ror r8, 0x20
lea r10, [rdi + rdx]
mov rdx, qword [rsp + 0x48]
add rdx, r8
mov rax, r10
xor rax, r9
mov r9, rdx
xor r9, qword [rsp + 0x68]
rol rax, 1
ror r9, 0x18
mov qword [rsp + 0x58], rax
lea r14, [r9 + rcx]
mov rcx, qword [rbp]
add r14, qword [rbp + 8]
mov rbx, r14
xor rbx, r8
ror rbx, 0x10
lea r11, [rbx + rdx]
mov r8, r11
xor r8, r9
rol r8, 1
lea rax, [r8 + r15]
add rcx, rax
mov r9, rcx
xor r9, rsi
ror r9, 0x20
lea rdx, [r9 + r10]
mov r10, rdx
xor r10, r8
ror r10, 0x18
lea r15, [r10 + rcx]
mov rcx, qword [rbp - 0x50]
add r15, qword [rbp - 0x20]
mov rax, r15
xor rax, r9
ror rax, 0x10
mov qword [rsp + 0x48], rax
add rax, rdx
mov qword [rsp + 0x60], rax
xor rax, r10
mov r10, qword [rsp + 0x50]
rol rax, 1
mov qword [rsp + 0x68], 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 + 0x78]
ror r9, 0x18
lea r12, [r9 + rcx]
mov rcx, qword [rbp - 0x28]
add r12, qword [rbp - 0x30]
mov rax, r12
xor rax, r8
ror rax, 0x10
mov qword [rsp + 0x50], rax
add rax, rdx
mov rdx, qword [rsp + 0x38]
mov rdi, rax
mov qword [rsp + 0x70], rax
xor rdi, r9
lea rax, [r10 + r13]
rol rdi, 1
add rcx, rax
mov r8, rcx
xor r8, rbx
ror r8, 0x20
add rdx, r8
mov r9, rdx
xor r9, r10
mov r10, qword [rsp + 0x58]
ror r9, 0x18
lea r13, [r9 + rcx]
mov rcx, qword [rbp - 8]
add r13, qword [rbp + 8]
mov rax, r13
xor rax, r8
ror rax, 0x10
mov qword [rsp + 0x38], rax
lea r11, [rax + rdx]
lea rax, [r14 + r10]
mov rsi, r11
add rcx, rax
xor rsi, r9
mov r8, rcx
rol rsi, 1
xor r8, qword [rsp + 0x20]
ror r8, 0x20
mov rdx, qword [rsp + 0x28]
add rdx, r8
mov r9, rdx
xor r9, r10
ror r9, 0x18
lea rax, [r9 + rcx]
mov rcx, qword [rbp - 0x68]
add rax, qword [rbp - 0x40]
mov r10, rax
mov qword [rsp + 0x28], rax
xor r10, r8
lea rax, [rdi + r15]
add rcx, rax
ror r10, 0x10
mov r8, rcx
xor r8, r10
ror r8, 0x20
lea rbx, [r10 + rdx]
mov r14, rbx
xor r14, r9
lea rdx, [r8 + r11]
rol r14, 1
mov r9, rdx
xor r9, rdi
ror r9, 0x18
lea r15, [r9 + rcx]
mov rcx, qword [rbp - 0x70]
add r15, qword [rbp - 0x10]
mov rax, r15
xor rax, r8
ror rax, 0x10
mov qword [rsp + 0x40], rax
add rax, rdx
mov qword [rsp + 0x58], rax
xor rax, r9
rol rax, 1
mov qword [rsp + 0x20], rax
lea rax, [rsi + r12]
add rcx, rax
mov r8, rcx
xor r8, qword [rsp + 0x48]
ror r8, 0x20
lea rdx, [r8 + rbx]
mov r9, rdx
xor r9, rsi
ror r9, 0x18
lea rsi, [r9 + rcx]
add rsi, qword [rbp - 0x60]
lea rcx, [r14 + r13]
mov r13, qword [rbp - 0x18]
mov rbx, rsi
xor rbx, r8
add rcx, r13
mov r8, rcx
ror rbx, 0x10
xor r8, qword [rsp + 0x50]
ror r8, 0x20
lea rax, [rbx + rdx]
mov rdx, qword [rsp + 0x60]
mov qword [rsp + 0x30], rax
add rdx, r8
xor rax, r9
mov r9, rdx
rol rax, 1
xor r9, r14
mov qword [rsp + 0x48], rax
ror r9, 0x18
lea r14, [r9 + rcx]
mov rcx, qword [rbp - 0x48]
add r14, qword [rbp - 0x38]
mov rdi, r14
xor rdi, r8
ror rdi, 0x10
lea r8, [rdi + rdx]
mov rax, r8
xor rax, r9
rol rax, 1
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0x28]
add rax, qword [rsp + 0x68]
add rcx, rax
mov rdx, qword [rsp + 0x70]
mov r11, rcx
xor r11, qword [rsp + 0x38]
ror r11, 0x20
add rdx, r11
mov r9, rdx
xor r9, qword [rsp + 0x68]
ror r9, 0x18
lea r12, [r9 + rcx]
add r12, qword [rbp - 0x58]
lea rcx, [r15 + r13]
mov r15, qword [rbp - 0x70]
xor r11, r12
mov r13, qword [rbp - 0x60]
ror r11, 0x10
lea r10, [rdx + r11]
xor r9, r10
rol r9, 1
add rcx, r9
xor rbx, rcx
ror rbx, 0x20
lea rdx, [r8 + rbx]
mov r8, rdx
xor r8, r9
mov r9, qword [rbp - 0x30]
ror r8, 0x18
add r9, r8
add r9, rcx
mov rcx, qword [rbp - 0x10]
mov rax, r9
xor rax, rbx
ror rax, 0x10
mov qword [rsp + 0x28], rax
add rax, rdx
mov qword [rsp + 0x38], rax
xor rax, r8
mov r8, qword [rsp + 0x20]
rol rax, 1
mov qword [rsp + 0x50], rax
lea rax, [rsi + r8]
mov rsi, qword [rsp + 0x48]
add rcx, rax
xor rdi, rcx
ror rdi, 0x20
lea rdx, [rdi + r10]
xor r8, rdx
ror r8, 0x18
add r15, r8
add r15, rcx
mov rcx, qword [rbp - 0x48]
mov rax, r15
xor rax, rdi
ror rax, 0x10
mov qword [rsp + 0x20], rax
add rax, rdx
mov rdx, qword [rsp + 0x58]
mov rbx, rax
xor rbx, r8
mov qword [rsp + 0x60], rax
lea rax, [r14 + rsi]
rol rbx, 1
add rcx, rax
mov r8, rcx
xor r8, r11
ror r8, 0x20
add rdx, r8
xor rsi, rdx
ror rsi, 0x18
add r13, rsi
add r13, rcx
mov rcx, qword [rbp + 8]
mov rax, r13
xor rax, r8
mov r8, qword [rsp + 0x78]
ror rax, 0x10
mov qword [rsp + 0x48], rax
lea r10, [rax + rdx]
mov rdi, r10
xor rdi, rsi
rol rdi, 1
add rcx, r8
mov r11, qword [rsp + 0x40]
add rcx, r12
mov rdx, qword [rsp + 0x30]
xor r11, rcx
mov r14, qword [rbp - 8]
mov rax, qword [rbp]
ror r11, 0x20
add rdx, r11
xor r8, rdx
ror r8, 0x18
add r14, r8
mov qword [rsp + 0x78], r8
add r14, rcx
mov rcx, qword [rbp - 0x20]
add rcx, rbx
mov r8, r14
add rcx, r9
xor r8, r11
ror r8, 0x10
mov r9, rcx
xor r9, r8
ror r9, 0x20
lea r11, [r8 + rdx]
mov rsi, r11
xor rsi, qword [rsp + 0x78]
lea rdx, [r9 + r10]
mov r8, rdx
rol rsi, 1
xor r8, rbx
ror r8, 0x18
add rax, r8
add rax, rcx
mov rcx, qword [rbp - 0x58]
mov qword [rsp + 0x30], rax
add rcx, rdi
xor rax, r9
add rcx, r15
ror rax, 0x10
mov qword [rsp + 0x58], rax
add rax, rdx
mov qword [rsp + 0x68], rax
xor rax, r8
rol rax, 1
mov r8, rcx
xor r8, qword [rsp + 0x28]
ror r8, 0x20
mov qword [rsp + 0x40], rax
lea rdx, [r8 + r11]
mov r9, rdx
xor r9, rdi
ror r9, 0x18
lea r15, [r9 + rcx]
mov rcx, qword [rbp - 0x38]
add r15, qword [rbp - 0x40]
add rcx, rsi
add rcx, r13
mov rbx, r15
xor rbx, r8
mov r8, rcx
xor r8, qword [rsp + 0x20]
ror r8, 0x20
ror rbx, 0x10
lea rax, [rbx + rdx]
mov rdx, qword [rsp + 0x38]
mov qword [rsp + 0x70], rax
add rdx, r8
xor rax, r9
mov r9, rdx
rol rax, 1
xor r9, rsi
ror r9, 0x18
mov qword [rsp + 0x28], rax
lea r12, [r9 + rcx]
add r12, qword [rbp - 0x68]
mov rdi, r12
xor rdi, r8
ror rdi, 0x10
lea r10, [rdi + rdx]
mov rax, r10
xor rax, r9
rol rax, 1
mov r13, qword [rbp - 0x28]
mov rdx, qword [rsp + 0x60]
mov qword [rsp + 0x20], rax
mov rax, qword [rbp - 0x38]
lea rcx, [r14 + r13]
add rcx, qword [rsp + 0x50]
mov r8, rcx
xor r8, qword [rsp + 0x48]
ror r8, 0x20
add rdx, r8
mov r9, rdx
xor r9, qword [rsp + 0x50]
ror r9, 0x18
lea r14, [r9 + rcx]
mov rcx, qword [rsp + 0x30]
add r14, 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 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]
mov rcx, qword [rbp - 0x58]
add r13, rax
mov rax, r13
xor rax, r9
ror rax, 0x10
mov qword [rsp + 0x30], rax
add rax, rdx
mov qword [rsp + 0x38], rax
xor rax, r10
mov r10, qword [rsp + 0x40]
rol rax, 1
mov qword [rsp + 0x50], rax
lea rax, [r15 + 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 r15, [r9 + rcx]
mov rcx, qword [rbp - 8]
add r15, qword [rbp - 0x68]
mov rax, r15
xor rax, r8
ror rax, 0x10
mov qword [rsp + 0x40], rax
add rax, rdx
mov rdx, qword [rsp + 0x68]
mov rdi, rax
xor rdi, r9
mov qword [rsp + 0x60], rax
lea rax, [r12 + 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 r12, [r9 + rcx]
add r12, qword [rbp - 0x10]
mov rax, r12
xor rax, r8
mov r10, qword [rsp + 0x20]
mov rcx, qword [rbp - 0x18]
ror rax, 0x10
mov qword [rsp + 0x48], rax
lea r11, [rax + rdx]
mov rdx, qword [rsp + 0x70]
lea rax, [r14 + r10]
mov rsi, r11
add rcx, rax
xor rsi, r9
mov r8, rcx
rol rsi, 1
xor r8, qword [rsp + 0x58]
ror r8, 0x20
add rdx, r8
mov r9, rdx
xor r9, r10
ror r9, 0x18
lea rax, [r9 + rcx]
mov rcx, qword [rbp - 0x60]
add rax, qword [rbp]
mov r10, rax
mov qword [rsp + 0x28], rax
xor r10, r8
lea rax, [rdi + r13]
add rcx, rax
ror r10, 0x10
mov r8, rcx
xor r8, r10
ror r8, 0x20
lea rbx, [r10 + rdx]
mov r14, rbx
xor r14, r9
lea rdx, [r8 + r11]
rol r14, 1
mov r9, rdx
xor r9, rdi
ror r9, 0x18
lea r13, [r9 + rcx]
mov rcx, qword [rbp - 0x48]
add r13, qword [rbp - 0x40]
mov rax, r13
xor rax, r8
ror rax, 0x10
mov qword [rsp + 0x58], rax
add rax, rdx
mov qword [rsp + 0x68], rax
xor rax, r9
rol rax, 1
mov qword [rsp + 0x20], rax
lea rax, [rsi + r15]
add rcx, rax
mov r8, rcx
xor r8, qword [rsp + 0x30]
ror r8, 0x20
lea rdx, [r8 + rbx]
mov r9, rdx
xor r9, rsi
ror r9, 0x18
lea r15, [r9 + rcx]
mov rcx, qword [rbp - 0x50]
add r15, qword [rbp - 0x20]
mov rbx, r15
xor rbx, r8
ror rbx, 0x10
lea rax, [rbx + rdx]
mov rdx, qword [rsp + 0x38]
mov qword [rsp + 0x70], rax
xor rax, r9
rol rax, 1
mov qword [rsp + 0x30], rax
lea rax, [r14 + r12]
add rcx, rax
mov r8, rcx
xor r8, qword [rsp + 0x40]
ror r8, 0x20
add rdx, r8
mov r9, rdx
xor r9, r14
ror r9, 0x18
lea r14, [r9 + rcx]
add r14, qword [rbp - 0x70]
mov rcx, qword [rbp + 8]
mov rdi, r14
xor rdi, r8
ror rdi, 0x10
lea r10, [rdi + rdx]
mov rdx, qword [rsp + 0x60]
mov rax, r10
xor rax, r9
rol rax, 1
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0x28]
add rax, qword [rsp + 0x50]
add rcx, rax
mov r8, rcx
xor r8, qword [rsp + 0x48]
ror r8, 0x20
add rdx, r8
mov r9, rdx
xor r9, qword [rsp + 0x50]
ror r9, 0x18
lea r12, [r9 + rcx]
mov rcx, qword [rbp - 0x28]
add r12, qword [rbp - 0x30]
mov rsi, r12
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 r13, rcx
xor r13, rbx
ror r13, 0x20
lea rdx, [r10 + r13]
mov r10, rdx
xor r10, r8
mov r8, qword [rsp + 0x20]
ror r10, 0x18
lea r9, [r10 + rcx]
mov rcx, qword [rbp - 0x48]
add r9, qword [rbp - 0x70]
xor r13, r9
ror r13, 0x10
mov qword [rsp + 0x40], r13
lea rax, [rdx + r13]
xor r10, rax
mov qword [rsp + 0x38], rax
lea rax, [r15 + r8]
rol r10, 1
mov r15, qword [rbp - 0x38]
add rcx, rax
xor rdi, rcx
mov qword [rsp + 0x50], r10
ror rdi, 0x20
lea rdx, [r11 + rdi]
xor r8, rdx
ror r8, 0x18
add r15, r8
add r15, rcx
mov rcx, qword [rbp - 0x60]
mov rax, r15
xor rax, rdi
ror rax, 0x10
mov qword [rsp + 0x28], rax
add rax, rdx
mov rdx, qword [rsp + 0x68]
mov rbx, rax
xor rbx, r8
mov qword [rsp + 0x20], rax
mov r8, qword [rsp + 0x30]
rol rbx, 1
lea rax, [r14 + r8]
add rcx, rax
xor rsi, rcx
ror rsi, 0x20
add rdx, rsi
xor r8, rdx
ror r8, 0x18
mov r11, qword [rsp + 0x58]
mov r13, qword [rbp - 0x50]
mov r14, qword [rbp + 8]
add r13, r8
add r13, rcx
mov rcx, qword [rbp - 0x20]
mov rax, r13
xor rax, rsi
ror rax, 0x10
mov qword [rsp + 0x30], rax
lea r10, [rax + rdx]
mov rdx, qword [rsp + 0x70]
mov rdi, r10
xor rdi, r8
mov r8, qword [rsp + 0x78]
rol rdi, 1
lea rax, [r12 + r8]
add rcx, rax
mov rax, qword [rbp - 0x68]
xor r11, rcx
ror r11, 0x20
add rdx, r11
xor r8, rdx
ror r8, 0x18
add r14, r8
mov qword [rsp + 0x78], r8
add r14, rcx
mov rcx, qword [rbp]
add rcx, rbx
mov r8, r14
add rcx, r9
xor r8, r11
ror r8, 0x10
mov r9, rcx
xor r9, r8
ror r9, 0x20
lea r11, [r8 + rdx]
mov rsi, r11
xor rsi, qword [rsp + 0x78]
lea rdx, [r9 + r10]
mov r8, rdx
rol rsi, 1
xor r8, rbx
ror r8, 0x18
add rax, r8
add rax, rcx
mov rcx, qword [rbp - 0x18]
mov qword [rsp + 0x48], rax
add rcx, rdi
xor rax, r9
add rcx, r15
mov r15, qword [rbp - 0x10]
ror rax, 0x10
mov qword [rsp + 0x58], rax
add rax, rdx
mov qword [rsp + 0x68], rax
xor rax, r8
rol rax, 1
mov r8, rcx
xor r8, qword [rsp + 0x40]
ror r8, 0x20
mov qword [rsp + 0x60], rax
lea rdx, [r8 + r11]
mov r9, rdx
xor r9, rdi
ror r9, 0x18
add r15, r9
add r15, rcx
mov rcx, qword [rbp - 0x40]
add rcx, rsi
mov rbx, r15
xor rbx, r8
add rcx, r13
ror rbx, 0x10
mov r8, rcx
lea rax, [rbx + rdx]
mov qword [rsp + 0x70], rax
xor rax, r9
rol rax, 1
xor r8, qword [rsp + 0x28]
mov qword [rsp + 0x40], rax
mov rdx, qword [rsp + 0x38]
ror r8, 0x20
add rdx, r8
mov r9, rdx
xor r9, rsi
ror r9, 0x18
lea r12, [r9 + rcx]
mov rcx, qword [rbp - 0x58]
add r12, qword [rbp - 0x30]
add rcx, r14
add rcx, qword [rsp + 0x50]
mov rdi, r12
xor rdi, r8
mov r8, rcx
xor r8, qword [rsp + 0x30]
ror r8, 0x20
ror rdi, 0x10
lea r10, [rdi + rdx]
mov rdx, qword [rsp + 0x20]
add rdx, r8
mov rax, r10
xor rax, r9
mov r9, rdx
xor r9, qword [rsp + 0x50]
rol rax, 1
mov qword [rsp + 0x28], rax
mov rax, qword [rbp - 0x60]
ror r9, 0x18
lea r14, [r9 + rcx]
mov rcx, qword [rsp + 0x48]
add r14, qword [rbp - 8]
mov rsi, r14
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 r13, [r10 + rcx]
mov rcx, qword [rbp - 0x40]
add r13, qword [rbp - 0x10]
add rcx, r15
add rcx, qword [rsp + 0x60]
mov rax, r13
xor rax, r9
mov r8, rcx
ror rax, 0x10
xor r8, rdi
mov qword [rsp + 0x30], rax
add rax, rdx
mov qword [rsp + 0x38], rax
xor rax, r10
rol rax, 1
mov qword [rsp + 0x50], rax
ror r8, 0x20
lea rdx, [r8 + r11]
mov r9, rdx
xor r9, qword [rsp + 0x60]
ror r9, 0x18
lea r15, [r9 + rcx]
mov rcx, qword [rbp - 0x70]
add r15, qword [rbp - 0x20]
mov rax, r15
xor rax, r8
ror rax, 0x10
mov qword [rsp + 0x20], rax
add rax, rdx
mov rdi, rax
mov qword [rsp + 0x60], rax
xor rdi, r9
rol rdi, 1
add rcx, r12
add rcx, qword [rsp + 0x40]
mov r10, qword [rsp + 0x28]
mov r8, rcx
mov rdx, qword [rsp + 0x68]
xor r8, rsi
ror r8, 0x20
add rdx, r8
mov r9, rdx
xor r9, qword [rsp + 0x40]
ror r9, 0x18
lea r12, [r9 + rcx]
mov rcx, qword [rbp - 0x30]
add r12, qword [rbp - 0x18]
mov rax, r12
xor rax, r8
ror rax, 0x10
mov qword [rsp + 0x48], rax
lea r11, [rax + rdx]
mov rdx, qword [rsp + 0x70]
lea rax, [r14 + r10]
mov rsi, r11
add rcx, rax
xor rsi, r9
mov r8, rcx
rol rsi, 1
xor r8, qword [rsp + 0x58]
ror r8, 0x20
add rdx, r8
mov r9, rdx
xor r9, r10
ror r9, 0x18
lea rax, [r9 + rcx]
mov rcx, qword [rbp - 0x50]
add rax, qword [rbp - 0x58]
mov r10, rax
mov qword [rsp + 0x40], rax
xor r10, r8
lea rax, [rdi + r13]
add rcx, rax
ror r10, 0x10
mov r8, rcx
xor r8, r10
ror r8, 0x20
lea rbx, [r10 + rdx]
mov r14, rbx
xor r14, r9
lea rdx, [r8 + r11]
rol r14, 1
mov r9, rdx
xor r9, rdi
ror r9, 0x18
lea r13, [r9 + rcx]
mov rcx, qword [rbp - 0x38]
add r13, qword [rbp - 8]
mov rax, r13
xor rax, r8
ror rax, 0x10
mov qword [rsp + 0x58], rax
add rax, rdx
mov qword [rsp + 0x68], rax
xor rax, r9
rol rax, 1
mov qword [rsp + 0x28], rax
lea rax, [rsi + r15]
add rcx, rax
mov r8, rcx
xor r8, qword [rsp + 0x30]
ror r8, 0x20
lea rdx, [r8 + rbx]
mov r9, rdx
xor r9, rsi
ror r9, 0x18
lea rsi, [r9 + rcx]
add rsi, qword [rbp - 0x48]
mov rbx, rsi
xor rbx, r8
ror rbx, 0x10
lea rax, [rbx + rdx]
mov qword [rsp + 0x70], rax
xor rax, r9
rol rax, 1
mov rdx, qword [rsp + 0x38]
mov rcx, qword [rbp + 8]
mov qword [rsp + 0x30], rax
lea rax, [r14 + r12]
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 r15, [r9 + rcx]
mov rcx, qword [rbp - 0x68]
add r15, qword [rbp]
mov rdi, r15
xor rdi, r8
ror rdi, 0x10
lea r10, [rdi + rdx]
mov rdx, qword [rsp + 0x60]
mov rax, r10
xor rax, r9
rol rax, 1
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x40]
add rax, qword [rsp + 0x50]
add rcx, rax
mov r8, rcx
xor r8, qword [rsp + 0x48]
ror r8, 0x20
add rdx, r8
mov r9, rdx
xor r9, qword [rsp + 0x50]
ror r9, 0x18
lea r12, [r9 + rcx]
mov rcx, qword [rbp - 0x10]
add r12, qword [rbp - 0x28]
mov r14, r12
xor r14, r8
ror r14, 0x10
lea r11, [r14 + 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 - 0x68]
add r13, qword [rbp - 0x48]
mov rax, r13
xor rax, r9
mov r9, qword [rsp + 0x28]
ror rax, 0x10
mov qword [rsp + 0x38], rax
add rax, rdx
mov qword [rsp + 0x50], rax
xor rax, r10
rol rax, 1
mov qword [rsp + 0x48], rax
lea rax, [rsi + r9]
add rcx, rax
mov r8, rcx
xor r8, rdi
ror r8, 0x20
lea rdx, [r8 + r11]
mov rsi, rdx
xor rsi, r9
ror rsi, 0x18
lea rax, [rsi + rcx]
add rax, qword [rbp + 8]
mov qword [rsp + 0x40], rax
xor rax, r8
ror rax, 0x10
mov qword [rsp + 0x28], rax
mov r8, qword [rsp + 0x30]
add rax, rdx
mov r9, qword [rsp + 0x20]
xor rsi, rax
mov rdx, qword [rsp + 0x68]
mov r11, qword [rsp + 0x58]
mov rcx, qword [rbp]
mov qword [rsp + 0x60], rax
lea rax, [r15 + r8]
mov r15, qword [rbp - 8]
add rcx, rax
xor r14, rcx
rol rsi, 1
ror r14, 0x20
add rdx, r14
xor r8, rdx
ror r8, 0x18
add r15, r8
add r15, rcx
mov rcx, qword [rbp - 0x50]
mov rax, r15
xor rax, r14
mov r14, qword [rbp - 0x58]
ror rax, 0x10
mov qword [rsp + 0x30], rax
lea r10, [rax + rdx]
mov rdx, qword [rsp + 0x70]
lea rax, [r12 + r9]
mov rbx, r10
mov r12, qword [rbp - 0x20]
add rcx, rax
xor rbx, r8
xor r11, rcx
ror r11, 0x20
add rdx, r11
rol rbx, 1
xor r9, rdx
ror r9, 0x18
add r12, r9
add r12, rcx
mov rcx, qword [rbp - 0x70]
add rcx, r13
mov r8, r12
mov r13, qword [rbp - 0x38]
xor r8, r11
ror r8, 0x10
add rcx, rsi
lea r11, [r8 + rdx]
mov rdi, r11
xor rdi, r9
mov r9, rcx
xor r9, r8
rol rdi, 1
ror r9, 0x20
lea rdx, [r9 + r10]
mov r8, rdx
xor r8, rsi
ror r8, 0x18
add r13, r8
add r13, rcx
mov rcx, qword [rbp - 0x40]
add rcx, qword [rsp + 0x40]
mov rax, r13
xor rax, r9
add rcx, rbx
mov r9, qword [rsp + 0x38]
ror rax, 0x10
xor r9, rcx
mov qword [rsp + 0x58], rax
add rax, rdx
ror r9, 0x20
mov qword [rsp + 0x68], rax
xor rax, r8
rol rax, 1
mov qword [rsp + 0x20], rax
lea rdx, [r9 + r11]
mov r8, rdx
xor r8, rbx
ror r8, 0x18
add r14, r8
add r14, rcx
mov rcx, qword [rbp - 0x28]
mov rbx, r14
add rcx, rdi
xor rbx, r9
add rcx, r15
ror rbx, 0x10
mov r15, qword [rbp - 0x60]
lea rax, [rbx + rdx]
mov rdx, qword [rsp + 0x50]
mov qword [rsp + 0x38], rax
xor rax, r8
rol rax, 1
mov r8, rcx
xor r8, qword [rsp + 0x28]
ror r8, 0x20
add rdx, r8
mov qword [rsp + 0x40], rax
mov r9, rdx
xor r9, rdi
ror r9, 0x18
add r15, r9
add r15, rcx
mov rcx, qword [rbp - 0x30]
mov rdi, r15
xor rdi, r8
ror rdi, 0x10
lea r10, [rdi + rdx]
mov rdx, qword [rsp + 0x60]
mov rax, r10
xor rax, r9
mov r9, qword [rsp + 0x48]
add rcx, r9
rol rax, 1
add rcx, r12
mov qword [rsp + 0x28], rax
mov r12, qword [rbp - 0x18]
mov r8, rcx
xor r8, qword [rsp + 0x30]
ror r8, 0x20
add rdx, r8
xor r9, rdx
ror r9, 0x18
add r12, r9
add r12, rcx
mov rcx, qword [rbp - 8]
mov rsi, r12
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 - 0x38]
add r13, qword [rbp - 0x18]
add rcx, r14
add rcx, qword [rsp + 0x20]
mov rax, r13
xor rax, r9
mov r8, rcx
ror rax, 0x10
xor r8, rdi
mov qword [rsp + 0x50], rax
add rax, rdx
ror r8, 0x20
mov qword [rsp + 0x48], rax
xor rax, r10
rol rax, 1
mov qword [rsp + 0x60], rax
lea rdx, [r8 + r11]
mov r9, rdx
xor r9, qword [rsp + 0x20]
ror r9, 0x18
lea rax, [r9 + rcx]
mov rcx, qword [rbp - 0x10]
add rax, qword [rbp]
add rcx, r15
add rcx, qword [rsp + 0x40]
mov qword [rsp + 0x30], rax
xor rax, r8
ror rax, 0x10
mov r8, rcx
mov qword [rsp + 0x20], rax
xor r8, rsi
add rax, rdx
ror r8, 0x20
mov rdx, qword [rsp + 0x68]
mov rdi, rax
add rdx, r8
mov qword [rsp + 0x70], rax
xor rdi, r9
mov r9, rdx
xor r9, qword [rsp + 0x40]
ror r9, 0x18
rol rdi, 1
lea r15, [r9 + rcx]
mov rcx, qword [rbp - 0x58]
add r15, qword [rbp - 0x68]
add rcx, r12
add rcx, qword [rsp + 0x28]
mov rax, r15
xor rax, r8
mov r8, rcx
xor r8, qword [rsp + 0x58]
ror rax, 0x10
mov qword [rsp + 0x40], rax
ror r8, 0x20
lea r11, [rax + rdx]
mov rdx, qword [rsp + 0x38]
add rdx, r8
lea rax, [rdi + r13]
mov rsi, r11
xor rsi, r9
mov r9, rdx
xor r9, qword [rsp + 0x28]
ror r9, 0x18
rol rsi, 1
lea r12, [r9 + rcx]
mov rcx, qword [rbp - 0x48]
add r12, qword [rbp - 0x28]
add rcx, rax
mov r10, r12
xor r10, r8
mov r8, rcx
ror r10, 0x10
xor r8, r10
ror r8, 0x20
lea rbx, [r10 + rdx]
mov r14, rbx
lea rdx, [r8 + r11]
xor r14, r9
mov r9, rdx
rol r14, 1
xor r9, rdi
ror r9, 0x18
lea r13, [r9 + rcx]
mov rcx, qword [rbp + 8]
add r13, qword [rbp - 0x70]
mov rax, r13
xor rax, r8
ror rax, 0x10
mov qword [rsp + 0x58], rax
add rax, rdx
mov qword [rsp + 0x68], rax
xor rax, r9
rol rax, 1
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x30]
add rax, rsi
add rcx, rax
mov r8, rcx
xor r8, qword [rsp + 0x50]
ror r8, 0x20
mov r11, qword [rsp + 0x60]
lea rdx, [r8 + rbx]
mov r9, rdx
xor r9, rsi
ror r9, 0x18
lea rax, [r9 + rcx]
mov rcx, qword [rbp - 0x30]
add rax, qword [rbp - 0x50]
mov rbx, rax
mov qword [rsp + 0x30], rax
xor rbx, r8
ror rbx, 0x10
lea rax, [rbx + rdx]
mov rdx, qword [rsp + 0x48]
mov qword [rsp + 0x50], rax
xor rax, r9
rol rax, 1
mov qword [rsp + 0x38], rax
lea rax, [r14 + r15]
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 r15, [r9 + rcx]
mov rcx, qword [rbp - 0x60]
add r15, qword [rbp - 0x40]
mov rdi, r15
xor rdi, r8
ror rdi, 0x10
lea r10, [rdi + rdx]
mov rdx, qword [rsp + 0x70]
mov rax, r10
xor rax, r9
rol rax, 1
mov qword [rsp + 0x20], rax
lea rax, [r12 + r11]
add rcx, rax
mov r8, rcx
xor r8, qword [rsp + 0x40]
ror r8, 0x20
add rdx, r8
mov r9, rdx
xor r9, r11
ror r9, 0x18
lea r12, [r9 + rcx]
add r12, qword [rbp - 0x20]
mov rsi, r12
xor rsi, r8
ror rsi, 0x10
lea r11, [rsi + rdx]
mov r8, r11
xor r8, r9
rol r8, 1
lea rcx, [r8 + r13]
add rcx, qword [rbp - 0x40]
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]
add r13, qword [rbp + 8]
mov rax, r13
xor rax, r9
ror rax, 0x10
mov qword [rsp + 0x40], rax
add rax, rdx
mov qword [rsp + 0x48], rax
xor rax, r10
rol rax, 1
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0x30]
add rax, qword [rsp + 0x28]
add rcx, rax
mov r8, rcx
xor r8, rdi
ror r8, 0x20
lea rdx, [r8 + r11]
mov r11, qword [rsp + 0x58]
mov r9, rdx
xor r9, qword [rsp + 0x28]
ror r9, 0x18
lea rax, [r9 + rcx]
mov rcx, qword [rbp - 0x18]
add rax, qword [rbp - 0x28]
mov qword [rsp + 0x30], rax
xor rax, r8
ror rax, 0x10
mov qword [rsp + 0x28], rax
add rax, rdx
mov rdx, qword [rsp + 0x68]
mov r14, rax
mov qword [rsp + 0x70], rax
xor r14, r9
mov r9, qword [rsp + 0x38]
rol r14, 1
lea rax, [r15 + r9]
add rcx, rax
mov r8, rcx
xor r8, rsi
ror r8, 0x20
add rdx, r8
mov rdi, rdx
xor rdi, r9
mov r9, qword [rsp + 0x20]
ror rdi, 0x18
lea rsi, [rdi + rcx]
mov rcx, qword [rbp - 0x70]
add rsi, qword [rbp - 0x58]
mov rax, rsi
xor rax, r8
ror rax, 0x10
mov qword [rsp + 0x38], rax
lea r10, [rdx + rax]
mov rdx, qword [rsp + 0x50]
lea rax, [r12 + r9]
xor rdi, r10
mov r12, qword [rbp - 0x30]
add rcx, rax
lea rax, [r14 + r13]
rol rdi, 1
mov r13, qword [rbp - 0x60]
xor r11, rcx
ror r11, 0x20
add rdx, r11
xor r9, rdx
ror r9, 0x18
add r12, r9
add r12, rcx
mov rcx, qword [rbp - 0x10]
add rcx, rax
mov r8, r12
xor r8, r11
ror r8, 0x10
lea r11, [r8 + rdx]
mov rbx, r11
xor rbx, r9
mov r9, rcx
xor r9, r8
rol rbx, 1
ror r9, 0x20
lea rdx, [r9 + r10]
xor r14, rdx
ror r14, 0x18
add r13, r14
add r13, rcx
mov rax, r13
xor rax, r9
ror rax, 0x10
mov qword [rsp + 0x68], rax
add rax, rdx
mov qword [rsp + 0x50], rax
xor rax, r14
rol rax, 1
mov qword [rsp + 0x20], rax
mov r9, qword [rsp + 0x40]
mov rcx, qword [rbp - 8]
add rcx, qword [rsp + 0x30]
mov r14, qword [rbp - 0x38]
add rcx, rdi
mov r15, qword [rbp - 0x50]
xor r9, rcx
ror r9, 0x20
lea rdx, [r9 + r11]
mov r8, rdx
xor r8, rdi
ror r8, 0x18
add r14, r8
add r14, rcx
mov rcx, qword [rbp - 0x68]
add rcx, rsi
mov rdi, r14
add rcx, rbx
xor rdi, r9
mov r9, qword [rsp + 0x28]
xor r9, rcx
ror rdi, 0x10
ror r9, 0x20
lea rax, [rdi + rdx]
mov rdx, qword [rsp + 0x48]
add rdx, r9
mov qword [rsp + 0x58], rax
xor rax, r8
mov r8, rdx
xor r8, rbx
rol rax, 1
ror r8, 0x18
add r15, r8
mov qword [rsp + 0x30], rax
add r15, rcx
mov rcx, qword [rbp - 0x20]
mov rbx, r15
xor rbx, r9
mov r9, qword [rsp + 0x60]
add rcx, r9
ror rbx, 0x10
add rcx, r12
mov r12, qword [rbp - 0x48]
lea r10, [rbx + rdx]
mov rdx, qword [rsp + 0x70]
mov rax, r10
xor rax, r8
mov r8, rcx
xor r8, qword [rsp + 0x38]
ror r8, 0x20
add rdx, r8
rol rax, 1
xor r9, rdx
mov qword [rsp + 0x40], rax
ror r9, 0x18
add r12, r9
add r12, rcx
mov rcx, qword [rbp - 0x20]
mov rsi, r12
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 - 0x60]
mov r9, rcx
xor r9, rdi
ror r9, 0x20
lea rdx, [r9 + r10]
mov r10, rdx
xor r10, r8
ror r10, 0x18
add r13, r10
add r13, rcx
mov rax, r13
xor rax, r9
ror rax, 0x10
mov qword [rsp + 0x38], rax
mov rcx, qword [rbp - 0x30]
add rax, rdx
add rcx, r14
mov qword [rsp + 0x48], rax
add rcx, qword [rsp + 0x20]
xor rax, r10
rol rax, 1
mov r8, rcx
xor r8, rbx
mov qword [rsp + 0x60], rax
ror r8, 0x20
lea rdx, [r8 + r11]
mov r9, rdx
xor r9, qword [rsp + 0x20]
ror r9, 0x18
lea rax, [r9 + rcx]
mov rcx, qword [rbp - 0x38]
add rax, qword [rbp - 0x50]
add rcx, r15
add rcx, qword [rsp + 0x30]
mov qword [rsp + 0x28], rax
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 + 0x50]
mov rdi, rax
add rdx, r8
mov qword [rsp + 0x70], rax
xor rdi, r9
mov r9, rdx
xor r9, qword [rsp + 0x30]
ror r9, 0x18
rol rdi, 1
lea r15, [r9 + rcx]
mov rcx, qword [rbp - 0x68]
add r15, qword [rbp - 0x40]
add rcx, r12
add rcx, qword [rsp + 0x40]
mov rax, r15
xor rax, r8
mov r8, rcx
xor r8, qword [rsp + 0x68]
ror r8, 0x20
ror rax, 0x10
mov qword [rsp + 0x30], rax
lea r11, [rax + rdx]
mov rdx, qword [rsp + 0x58]
add rdx, r8
lea rax, [rdi + r13]
mov rsi, r11
xor rsi, r9
mov r9, rdx
xor r9, qword [rsp + 0x40]
ror r9, 0x18
rol rsi, 1
lea r12, [r9 + rcx]
mov rcx, qword [rbp + 8]
add r12, qword [rbp - 0x48]
add rcx, rax
mov r10, r12
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 - 0x18]
mov rax, r13
xor rax, r8
mov rcx, qword [rbp - 0x28]
mov r11, qword [rsp + 0x60]
ror rax, 0x10
mov qword [rsp + 0x58], rax
add rax, rdx
mov qword [rsp + 0x68], rax
xor rax, r9
rol rax, 1
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x28]
add rax, rsi
add rcx, rax
mov r8, rcx
xor r8, qword [rsp + 0x38]
ror r8, 0x20
lea rdx, [r8 + rbx]
mov r9, rdx
xor r9, rsi
ror r9, 0x18
lea rax, [r9 + rcx]
mov rcx, qword [rbp - 0x58]
add rax, qword [rbp]
mov rbx, rax
mov qword [rsp + 0x40], rax
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 + 0x28], rax
lea rax, [r14 + r15]
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 - 8]
add r14, qword [rbp - 0x10]
mov rdi, r14
xor rdi, r8
ror rdi, 0x10
lea r10, [rdi + rdx]
mov rdx, qword [rsp + 0x70]
mov rax, r10
xor rax, r9
rol rax, 1
mov qword [rsp + 0x20], rax
lea rax, [r12 + r11]
add rcx, rax
mov r8, rcx
xor r8, qword [rsp + 0x30]
ror r8, 0x20
add rdx, r8
mov r9, rdx
xor r9, r11
ror r9, 0x18
lea r15, [r9 + rcx]
mov rcx, qword [rbp - 0x70]
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 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 r12, [r10 + rcx]
mov rcx, qword [rbp - 0x60]
add r12, qword [rbp - 0x68]
mov rax, r12
xor rax, r9
ror rax, 0x10
mov qword [rsp + 0x30], rax
add rax, rdx
mov qword [rsp + 0x48], rax
xor rax, r10
mov r10, qword [rsp + 0x28]
rol rax, 1
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0x40]
add rax, qword [rsp + 0x50]
add rcx, rax
mov r8, rcx
xor r8, rdi
ror r8, 0x20
lea rdx, [r8 + r11]
mov r9, rdx
xor r9, qword [rsp + 0x50]
ror r9, 0x18
lea r13, [r9 + rcx]
mov rcx, qword [rbp - 0x50]
add r13, qword [rbp - 0x58]
mov rax, r13
xor rax, r8
ror rax, 0x10
mov qword [rsp + 0x40], rax
add rax, rdx
mov rdx, qword [rsp + 0x68]
mov rbx, rax
xor rbx, r9
mov qword [rsp + 0x50], 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 - 0x40]
add rsi, qword [rbp - 0x48]
mov rax, rsi
xor rax, r8
ror rax, 0x10
mov qword [rsp + 0x28], rax
lea r10, [rax + rdx]
mov rdx, qword [rsp + 0x38]
mov rdi, r10
xor rdi, r9
mov r9, qword [rsp + 0x20]
rol rdi, 1
lea rax, [r15 + r9]
add rcx, rax
lea rax, [rbx + r12]
mov r8, rcx
xor r8, qword [rsp + 0x58]
ror r8, 0x20
add rdx, r8
mov r11, rdx
xor r11, r9
ror r11, 0x18
lea r14, [r11 + rcx]
mov rcx, qword [rbp - 0x30]
add r14, qword [rbp - 0x38]
add rcx, rax
mov r9, r14
xor r9, r8
ror r9, 0x10
lea r8, [r9 + rdx]
xor r9, rcx
xor r11, r8
rol r11, 1
ror r9, 0x20
lea rdx, [r10 + r9]
mov rax, qword [rbp - 0x28]
xor rbx, rdx
mov r15, qword [rbp - 0x18]
mov r12, qword [rbp - 8]
ror rbx, 0x18
add rax, rbx
add rax, rcx
mov rcx, qword [rbp - 0x20]
mov qword [rsp + 0x20], rax
xor rax, r9
mov r9, qword [rsp + 0x30]
ror rax, 0x10
mov qword [rsp + 0x58], rax
add rax, rdx
mov qword [rsp + 0x68], rax
xor rax, rbx
rol rax, 1
mov qword [rsp + 0x38], rax
lea rax, [rdi + r13]
mov r13, qword [rbp]
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 - 0x10]
add rcx, rsi
mov rbx, r15
xor rbx, r9
add rcx, r11
mov r9, qword [rsp + 0x40]
xor r9, rcx
ror rbx, 0x10
ror r9, 0x20
lea rax, [rbx + rdx]
mov rdx, qword [rsp + 0x48]
add rdx, r9
mov qword [rsp + 0x70], rax
xor rax, rdi
mov r8, rdx
xor r8, r11
rol rax, 1
ror r8, 0x18
add r12, r8
mov qword [rsp + 0x30], rax
add r12, rcx
mov rdi, r12
xor rdi, r9
mov r9, qword [rsp + 0x60]
ror rdi, 0x10
lea rcx, [r14 + r9]
mov r14, qword [rbp + 8]
add rcx, r13
lea r10, [rdi + rdx]
mov rdx, qword [rsp + 0x50]
mov rax, r10
xor rax, r8
mov r8, qword [rsp + 0x28]
xor r8, rcx
rol rax, 1
ror r8, 0x20
add rdx, r8
mov qword [rsp + 0x40], rax
xor r9, rdx
ror r9, 0x18
add r14, r9
add r14, rcx
mov rcx, qword [rsp + 0x20]
mov rsi, r14
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
mov r13, qword [rbp - 0x20]
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 - 0x50]
add rcx, r15
mov rax, r13
add rcx, qword [rsp + 0x38]
xor rax, r9
mov r15, qword [rbp - 0x30]
mov r8, rcx
ror rax, 0x10
xor r8, rdi
mov qword [rsp + 0x28], rax
add rax, rdx
mov qword [rsp + 0x50], rax
xor rax, r10
rol rax, 1
ror r8, 0x20
mov qword [rsp + 0x48], rax
lea rdx, [r8 + r11]
mov r9, rdx
xor r9, qword [rsp + 0x38]
ror r9, 0x18
add r15, r9
add r15, rcx
mov rcx, qword [rbp - 0x28]
add rcx, r12
mov rax, r15
add rcx, qword [rsp + 0x30]
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 + 0x68]
mov rdi, rax
add rdx, r8
mov qword [rsp + 0x60], rax
xor rdi, r9
mov r9, rdx
xor r9, qword [rsp + 0x30]
ror r9, 0x18
rol rdi, 1
lea r12, [r9 + rcx]
mov rcx, qword [rbp - 8]
add r12, qword [rbp + 8]
add rcx, r14
add rcx, qword [rsp + 0x40]
mov rax, r12
xor rax, r8
mov r8, rcx
xor r8, qword [rsp + 0x58]
ror rax, 0x10
ror r8, 0x20
mov qword [rsp + 0x38], rax
lea r11, [rax + rdx]
mov rdx, qword [rsp + 0x70]
add rdx, r8
mov rsi, r11
xor rsi, r9
mov r9, rdx
xor r9, qword [rsp + 0x40]
ror r9, 0x18
rol rsi, 1
lea rax, [r9 + rcx]
add rax, qword [rbp - 0x40]
mov r10, rax
mov qword [rsp + 0x30], rax
xor r10, r8
ror r10, 0x10
lea rbx, [r10 + rdx]
mov r14, rbx
xor r14, r9
mov rcx, qword [rbp - 0x68]
add rcx, rdi
rol r14, 1
add rcx, r13
mov rdx, rcx
xor rdx, r10
ror rdx, 0x20
lea r8, [rdx + r11]
mov r9, r8
xor r9, rdi
ror r9, 0x18
lea rax, [r9 + rcx]
mov rcx, qword [rbp - 0x10]
add rcx, rax
mov qword [rbp + 0x10], rcx
xor rcx, rdx
ror rcx, 0x10
mov qword [rbp + 0x88], rcx
lea rax, [rcx + r8]
mov rcx, qword [rbp - 0x70]
mov qword [rbp + 0x60], rax
xor rax, r9
rol rax, 1
mov qword [rbp + 0x38], rax
lea rax, [rsi + r15]
add rcx, rax
mov rdx, rcx
xor rdx, qword [rsp + 0x28]
ror rdx, 0x20
lea r8, [rdx + rbx]
mov r9, r8
xor r9, rsi
ror r9, 0x18
lea rax, [r9 + rcx]
mov rcx, qword [rbp - 0x60]
add rcx, rax
mov qword [rbp + 0x18], rcx
xor rcx, rdx
ror rcx, 0x10
mov qword [rbp + 0x70], rcx
lea rax, [r8 + rcx]
mov rcx, qword [rbp - 0x18]
mov r8, qword [rsp + 0x50]
xor r9, rax
rol r9, 1
mov qword [rbp + 0x40], r9
mov qword [rbp + 0x68], rax
lea rax, [r14 + r12]
add rcx, rax
mov rdx, rcx
xor rdx, qword [rsp + 0x20]
ror rdx, 0x20
add r8, rdx
mov r9, r8
xor r9, r14
ror r9, 0x18
lea rax, [r9 + rcx]
mov rcx, qword [rbp - 0x38]
add rcx, rax
mov qword [rbp + 0x20], rcx
xor rcx, rdx
ror rcx, 0x10
mov qword [rbp + 0x78], rcx
lea rax, [r8 + rcx]
mov rcx, qword [rbp - 0x48]
add rcx, qword [rsp + 0x30]
xor r9, rax
mov r8, qword [rsp + 0x60]
rol r9, 1
mov qword [rbp + 0x48], r9
mov r9, qword [rsp + 0x48]
add rcx, r9
mov qword [rbp + 0x50], rax
mov rdx, rcx
add rcx, qword [rbp - 0x58]
xor rdx, qword [rsp + 0x38]
ror rdx, 0x20
add r8, rdx
xor r9, r8
ror r9, 0x18
add rcx, r9
mov qword [rbp + 0x28], rcx
xor rcx, rdx
ror rcx, 0x10
lea rdx, [rbp + 0x10]
mov qword [rbp + 0x80], rcx
lea rax, [rcx + r8]
mov rcx, qword [rbp - 0x80]
mov qword [rbp + 0x58], rax
mov r8d, 8
xor rax, r9
rol rax, 1
mov qword [rbp + 0x30], rax
sub rdx, rcx
mov rax, qword [rdx + rcx + 0x40]
xor rax, qword [rcx]
xor rax, qword [rdx + rcx]
mov qword [rcx], rax
lea rcx, [rcx + 8]
sub r8, 1
jne 0x1801249a0
xor eax, eax
mov rcx, qword [rbp + 0x90]
xor rcx, rsp
call fcn.180181080
mov rbx, qword [rsp + 0x1f0]
add rsp, 0x1a0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret