Function at 0x1400783a0
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 - 0x30]
sub rsp, 0x130
mov rax, qword [0x14038d940]
xor rax, rsp
mov qword [rbp + 0x20], rax
lea r9, [rbp - 0x60]
mov qword [rsp + 0x60], rcx
lea r10, [rbp - 0x5e]
sub r9, rdx
lea r11, [rbp - 0x56]
sub r10, rdx
lea rbx, [rbp - 0x4e]
sub r11, rdx
lea rdi, [rbp - 0x46]
sub rbx, rdx
lea rsi, [rbp - 0x3e]
sub rdi, rdx
lea r14, [rbp - 0x36]
sub rsi, rdx
sub r14, rdx
lea r15, [rbp - 0x2e]
sub r15, 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 + r9 - 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 + r10], 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 + r11], 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 + rbx], 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 [rdi + rax], 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 + rsi], 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 [r14 + rax], 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 + r15 - 0x40], rdx
sub r8, 1
jne 0x140078420
mov r8, qword [r12 + 0x20]
movabs rdx, 0x6a09e667f3bcc908
mov r14, qword [r12 + 0x28]
mov rbx, qword [r12 + 8]
mov rcx, qword [r12 + 0x30]
mov r9, qword [r12]
mov rdi, qword [r12 + 0x10]
add r9, r8
add r9, qword [rbp - 0x60]
mov r15, qword [r12 + 0x18]
mov rax, r9
xor rax, qword [r12 + 0x40]
mov qword [rsp + 0x68], rcx
mov rcx, qword [r12 + 0x38]
mov r12, qword [rbp - 0x58]
mov qword [rsp + 0x70], rcx
add r12, r9
mov qword [rbp - 0x70], r8
movabs rcx, 0x510e527fade682d1
xor rax, rcx
mov qword [rbp - 0x68], r14
mov rcx, rax
mov qword [rsp + 0x78], rbx
shl rax, 0x20
shr rcx, 0x20
or rcx, rax
mov qword [rbp - 0x80], rdi
add rdx, rcx
mov qword [rbp - 0x78], r15
mov rax, r8
xor rax, rdx
mov r8, rax
shr rax, 0x18
shl r8, 0x28
or r8, rax
add r12, r8
mov rax, r12
xor rax, rcx
mov r13, rax
shr rax, 0x10
shl r13, 0x30
or r13, rax
lea rax, [rdx + r13]
xor r8, rax
mov qword [rsp + 0x38], rax
mov rcx, r8
shr rcx, 0x3f
lea rax, [r8 + r8]
or rcx, rax
lea r8, [r14 + rbx]
add r8, qword [rbp - 0x50]
mov rbx, qword [rsp + 0x60]
mov rax, r8
mov qword [rsp + 0x40], rcx
movabs rcx, 0x9b05688c2b3e6c1f
xor rax, qword [rbx + 0x48]
xor rax, rcx
movabs rcx, 0xbb67ae8584caa73b
mov r9, rax
shl rax, 0x20
shr r9, 0x20
or r9, rax
mov rax, r14
mov r14, qword [rbp - 0x48]
add rcx, r9
xor rax, rcx
mov rdx, rax
shr rax, 0x18
shl rdx, 0x28
or rdx, rax
add r14, rdx
add r14, r8
xor r9, r14
mov rax, r9
shr r9, 0x10
shl rax, 0x30
or rax, r9
mov qword [rsp + 0x50], rax
add rax, rcx
mov qword [rsp + 0x28], rax
xor rdx, rax
mov r8, qword [rbp - 0x40]
lea rax, [rdx + rdx]
add r8, qword [rsp + 0x68]
mov rsi, rdx
add r8, rdi
shr rsi, 0x3f
or rsi, rax
movabs rcx, 0x1f83d9abfb41bd6b
mov rax, r8
xor rax, qword [rbx + 0x50]
xor rax, rcx
movabs rcx, 0x3c6ef372fe94f82b
mov r9, rax
shl rax, 0x20
shr r9, 0x20
or r9, rax
mov rax, qword [rsp + 0x68]
add rcx, r9
xor rax, rcx
mov rdx, rax
shr rax, 0x18
shl rdx, 0x28
or rdx, rax
mov rax, qword [rbp - 0x38]
add rax, rdx
add rax, r8
mov r8, qword [rbp - 0x30]
add r8, qword [rsp + 0x70]
xor r9, rax
mov qword [rsp + 0x58], rax
add r8, r15
mov r15, qword [rbp - 0x28]
mov rax, r9
shl rax, 0x30
shr r9, 0x10
or rax, r9
mov qword [rsp + 0x48], rax
lea r11, [rax + rcx]
movabs rcx, 0x5be0cd19137e2179
xor rdx, r11
mov rdi, rdx
shr rdi, 0x3f
lea rax, [rdx + rdx]
or rdi, rax
mov rax, r8
xor rax, qword [rbx + 0x58]
xor rax, rcx
movabs rcx, 0xa54ff53a5f1d36f1
mov r9, rax
shl rax, 0x20
shr r9, 0x20
or r9, rax
mov rax, qword [rsp + 0x70]
add rcx, r9
xor rax, rcx
mov rdx, rax
shr rax, 0x18
shl rdx, 0x28
or rdx, rax
add r15, rdx
add r15, r8
xor r9, r15
mov r8, r9
shr r9, 0x10
shl r8, 0x30
or r8, r9
lea r10, [r8 + rcx]
mov rcx, qword [rbp - 0x20]
xor rdx, r10
add rcx, r12
add rcx, rsi
mov rbx, rdx
xor r8, rcx
shr rbx, 0x3f
mov r9, r8
shl r8, 0x20
lea rax, [rdx + rdx]
shr r9, 0x20
or rbx, rax
or r9, r8
lea rdx, [r9 + r11]
mov r12, qword [rbp - 0x18]
xor rsi, rdx
mov r8, rsi
shr rsi, 0x18
shl r8, 0x28
or r8, rsi
add r12, r8
add r12, rcx
xor r9, r12
mov rax, r9
shr r9, 0x10
shl rax, 0x30
or rax, r9
mov qword [rsp + 8], rax
add rax, rdx
xor r8, rax
mov qword [rsp + 0x18], rax
mov rcx, r8
shr rcx, 0x3f
lea rax, [r8 + r8]
or rcx, rax
mov qword [rsp + 0x30], rcx
mov rcx, qword [rbp - 0x10]
add rcx, rdi
add rcx, r14
mov rax, rcx
xor rax, r13
mov r13, qword [rbp - 8]
mov r9, rax
shl rax, 0x20
shr r9, 0x20
or r9, rax
lea rdx, [r9 + r10]
xor rdi, rdx
mov r8, rdi
shr rdi, 0x18
shl r8, 0x28
or r8, rdi
add r13, r8
add r13, rcx
xor r9, r13
mov r14, r9
shr r9, 0x10
shl r14, 0x30
or r14, r9
lea rax, [r14 + rdx]
mov rdx, qword [rsp + 0x38]
xor r8, rax
mov qword [rsp], rax
mov rcx, r8
shr rcx, 0x3f
lea rax, [r8 + r8]
or rcx, rax
mov rax, qword [rbp]
add rax, rbx
mov qword [rsp + 0x10], rcx
mov rcx, qword [rsp + 0x58]
add rcx, rax
mov rax, rcx
xor rax, qword [rsp + 0x50]
mov r9, rax
shl rax, 0x20
shr r9, 0x20
or r9, rax
mov rax, qword [rbp + 8]
add rdx, r9
xor rbx, rdx
mov r8, rbx
shr rbx, 0x18
shl r8, 0x28
or r8, rbx
add rax, r8
add rax, rcx
xor r9, rax
mov qword [rsp + 0x38], rax
mov rsi, r9
shr r9, 0x10
shl rsi, 0x30
or rsi, r9
lea rbx, [rsi + rdx]
xor r8, rbx
mov r10, qword [rsp + 0x40]
lea rax, [r8 + r8]
mov rdx, qword [rbp + 0x10]
mov rcx, r8
mov r8, qword [rsp + 0x28]
add rdx, r15
mov r15, qword [rbp + 0x18]
add rdx, r10
shr rcx, 0x3f
or rcx, rax
mov rax, rdx
xor rax, qword [rsp + 0x48]
mov qword [rsp + 0x50], rcx
mov rcx, rax
shl rax, 0x20
shr rcx, 0x20
or rcx, rax
add r8, rcx
xor r10, r8
mov r9, r10
shr r10, 0x18
shl r9, 0x28
or r9, r10
add r15, r9
add r15, rdx
mov rdx, qword [rbp + 0x10]
mov rax, r15
xor rax, rcx
mov rdi, rax
shr rax, 0x10
shl rdi, 0x30
or rdi, rax
lea r11, [rdi + r8]
xor r9, r11
mov r10, r9
shr r10, 0x3f
lea rax, [r9 + r9]
or r10, rax
add rdx, r10
add rdx, r12
mov r12, qword [rbp - 0x10]
mov rax, rdx
xor rax, r14
mov rcx, rax
shl rax, 0x20
shr rcx, 0x20
or rcx, rax
lea r8, [rcx + rbx]
xor r10, r8
mov r9, r10
shr r10, 0x18
shl r9, 0x28
or r9, r10
mov r10, qword [rsp + 0x30]
add r12, r9
add r12, rdx
mov rdx, qword [rbp - 0x40]
add rdx, r10
mov rax, r12
xor rax, rcx
add rdx, r13
mov rcx, rax
shr rax, 0x10
shl rcx, 0x30
or rcx, rax
mov qword [rsp + 0x28], rcx
lea rax, [rcx + r8]
xor r9, rax
mov qword [rsp + 0x48], rax
mov rcx, r9
shr rcx, 0x3f
lea rax, [r9 + r9]
or rcx, rax
mov rax, rdx
xor rax, rsi
mov qword [rsp + 0x40], rcx
mov rcx, rax
shl rax, 0x20
shr rcx, 0x20
or rcx, rax
lea r8, [rcx + r11]
mov r13, qword [rbp - 0x20]
xor r10, r8
mov r11, qword [rsp + 0x50]
add r13, rdx
mov rdx, qword [rbp - 0x18]
mov r9, r10
mov r14, qword [rbp - 0x30]
shl r9, 0x28
shr r10, 0x18
or r9, r10
mov r10, qword [rsp + 0x10]
add r13, r9
add rdx, r10
add rdx, qword [rsp + 0x38]
mov rax, r13
xor rax, rcx
mov rcx, rax
shr rax, 0x10
shl rcx, 0x30
or rcx, rax
mov qword [rsp + 0x30], rcx
lea rax, [rcx + r8]
mov r8, qword [rsp + 0x18]
xor r9, rax
mov qword [rsp + 0x58], rax
mov rbx, r9
shr rbx, 0x3f
lea rax, [r9 + r9]
or rbx, rax
mov rax, rdx
xor rax, rdi
mov rcx, rax
shl rax, 0x20
shr rcx, 0x20
or rcx, rax
mov rax, qword [rbp + 0x18]
add rax, rdx
add r8, rcx
mov rdx, qword [rbp + 8]
xor r10, r8
mov r9, r10
add rdx, r15
shl r9, 0x28
add rdx, r11
shr r10, 0x18
add r14, rdx
or r9, r10
add rax, r9
mov qword [rsp + 0x18], rax
xor rax, rcx
mov rcx, rax
shr rax, 0x10
shl rcx, 0x30
or rcx, rax
mov qword [rsp + 0x10], rcx
lea r10, [rcx + r8]
mov r8, qword [rsp]
xor r9, r10
mov rdi, r9
shr rdi, 0x3f
lea rax, [r9 + r9]
or rdi, rax
mov rax, rdx
xor rax, qword [rsp + 8]
mov rcx, rax
shl rax, 0x20
shr rcx, 0x20
or rcx, rax
add r8, rcx
xor r11, r8
mov r9, r11
shr r11, 0x18
shl r9, 0x28
or r9, r11
add r14, r9
mov rax, r14
xor rax, rcx
mov rcx, rax
shr rax, 0x10
shl rcx, 0x30
or rcx, rax
mov rdx, qword [rbp - 0x58]
lea r11, [rcx + r8]
mov r15, qword [rbp - 0x50]
xor r9, r11
add rdx, rbx
mov rsi, r9
add rdx, r12
shr rsi, 0x3f
lea rax, [r9 + r9]
or rsi, rax
mov rax, rdx
xor rax, rcx
mov rcx, rax
shl rax, 0x20
shr rcx, 0x20
or rcx, rax
mov rax, qword [rbp]
add rax, rdx
mov rdx, qword [rbp - 0x60]
add rdx, rdi
add rdx, r13
lea r8, [rcx + r10]
add r15, rdx
xor rbx, r8
mov r9, rbx
shr rbx, 0x18
shl r9, 0x28
or r9, rbx
add rax, r9
mov qword [rsp], rax
xor rax, rcx
mov rcx, rax
shr rax, 0x10
shl rcx, 0x30
or rcx, rax
mov qword [rsp + 0x50], rcx
lea rax, [rcx + r8]
xor r9, rax
mov qword [rsp + 0x38], rax
mov rcx, r9
shr rcx, 0x3f
lea rax, [r9 + r9]
or rcx, rax
mov rax, rdx
xor rax, qword [rsp + 0x28]
mov rdx, qword [rbp - 8]
mov qword [rsp + 8], rcx
add rdx, rsi
add rdx, qword [rsp + 0x18]
mov rcx, rax
shl rax, 0x20
shr rcx, 0x20
or rcx, rax
lea r8, [rcx + r11]
xor rdi, r8
mov r9, rdi
shr rdi, 0x18
shl r9, 0x28
or r9, rdi
add r15, r9
mov rax, r15
xor rax, rcx
mov rdi, rax
shr rax, 0x10
shl rdi, 0x30
or rdi, rax
lea rax, [rdi + r8]
mov r8, qword [rsp + 0x48]
xor r9, rax
mov qword [rsp + 0x20], rax
mov rcx, r9
shr rcx, 0x3f
lea rax, [r9 + r9]
or rcx, rax
mov rax, rdx
xor rax, qword [rsp + 0x30]
mov qword [rsp + 0x28], rcx
mov rcx, rax
shr rcx, 0x20
shl rax, 0x20
or rcx, rax
mov r10, qword [rsp + 0x40]
add r8, rcx
mov r12, qword [rbp - 0x28]
xor rsi, r8
mov r13, qword [rbp - 0x48]
add r12, rdx
mov rdx, qword [rbp - 0x38]
mov r9, rsi
shl r9, 0x28
add rdx, r14
add rdx, r10
shr rsi, 0x18
or r9, rsi
add r13, rdx
add r12, r9
mov rax, r12
xor rax, rcx
mov rsi, rax
shr rax, 0x10
shl rsi, 0x30
or rsi, rax
lea r11, [rsi + r8]
mov r8, qword [rsp + 0x58]
xor r9, r11
mov rcx, r9
shr rcx, 0x3f
lea rax, [r9 + r9]
or rcx, rax
mov rax, rdx
xor rax, qword [rsp + 0x10]
mov rdx, qword [rbp - 8]
mov qword [rsp + 0x18], rcx
mov rcx, rax
shl rax, 0x20
shr rcx, 0x20
or rcx, rax
add r8, rcx
xor r10, r8
mov r9, r10
shr r10, 0x18
shl r9, 0x28
or r9, r10
add r13, r9
mov rax, r13
xor rax, rcx
mov r14, rax
shr rax, 0x10
shl r14, 0x30
or r14, rax
lea rbx, [r14 + r8]
xor r9, rbx
mov r10, r9
shr r10, 0x3f
lea rax, [r9 + r9]
or r10, rax
add rdx, r10
add rdx, qword [rsp]
mov rax, rdx
xor rax, rdi
mov rcx, rax
shl rax, 0x20
shr rcx, 0x20
or rcx, rax
lea r8, [rcx + r11]
xor r10, r8
mov r9, r10
shr r10, 0x18
shl r9, 0x28
or r9, r10
lea rax, [rdx + r9]
add rax, qword [rbp - 0x20]
mov qword [rsp], rax
xor rax, rcx
mov rcx, rax
shr rax, 0x10
shl rcx, 0x30
or rcx, rax
mov qword [rsp + 0x10], rcx
lea rax, [rcx + r8]
mov qword [rsp + 0x30], rax
xor r9, rax
mov r10, qword [rsp + 8]
lea rax, [r9 + r9]
mov rdx, qword [rbp]
mov rcx, r9
mov r11, qword [rsp + 0x18]
add rdx, r15
shr rcx, 0x3f
add rdx, r10
or rcx, rax
mov rax, rdx
xor rax, rsi
mov qword [rsp + 0x48], rcx
mov rcx, rax
shl rax, 0x20
shr rcx, 0x20
or rcx, rax
lea r8, [rcx + rbx]
xor r10, r8
mov r9, r10
shr r10, 0x18
shl r9, 0x28
or r9, r10
mov r10, qword [rsp + 0x28]
lea r15, [rdx + r9]
mov rdx, qword [rbp - 0x38]
add r15, qword [rbp - 0x60]
add rdx, r12
add rdx, r10
mov rax, r15
xor rax, rcx
mov rcx, rax
shr rax, 0x10
shl rcx, 0x30
or rcx, rax
mov qword [rsp + 8], rcx
lea rax, [rcx + r8]
mov r8, qword [rsp + 0x38]
xor r9, rax
mov qword [rsp + 0x40], rax
mov rbx, r9
shr rbx, 0x3f
lea rax, [r9 + r9]
or rbx, rax
mov rax, rdx
xor rax, r14
mov rcx, rax
shl rax, 0x20
shr rcx, 0x20
or rcx, rax
add r8, rcx
xor r10, r8
mov r9, r10
shr r10, 0x18
shl r9, 0x28
or r9, r10
lea r14, [rdx + r9]
mov rdx, qword [rbp + 0x18]
add r14, qword [rbp - 0x50]
add rdx, r13
add rdx, r11
mov rax, r14
xor rax, rcx
mov rcx, rax
shr rax, 0x10
shl rcx, 0x30
or rcx, rax
mov qword [rsp + 0x28], rcx
lea r10, [rcx + r8]
mov r8, qword [rsp + 0x20]
xor r9, r10
mov rdi, r9
shr rdi, 0x3f
lea rax, [r9 + r9]
or rdi, rax
mov rax, rdx
xor rax, qword [rsp + 0x50]
mov rcx, rax
shl rax, 0x20
shr rcx, 0x20
or rcx, rax
add r8, rcx
xor r11, r8
mov r9, r11
shr r11, 0x18
shl r9, 0x28
or r9, r11
lea r12, [rdx + r9]
mov rdx, qword [rbp - 0x10]
add r12, qword [rbp + 8]
mov rax, r12
xor rax, rcx
mov rcx, rax
shr rax, 0x10
shl rcx, 0x30
or rcx, rax
lea r11, [rcx + r8]
xor r9, r11
mov rsi, r9
shr rsi, 0x3f
lea rax, [r9 + r9]
or rsi, rax
mov rax, qword [rsp]
add rax, rbx
add rdx, rax
mov rax, rdx
xor rax, rcx
mov rcx, rax
shl rax, 0x20
shr rcx, 0x20
or rcx, rax
lea r8, [rcx + r10]
mov r10, qword [rbp + 0x10]
xor rbx, r8
mov r9, rbx
shr rbx, 0x18
shl r9, 0x28
or r9, rbx
lea rax, [rdx + r9]
add r10, rax
lea rdx, [r15 + rdi]
add rdx, qword [rbp - 0x48]
mov rax, r10
xor rax, rcx
mov rcx, rax
shr rax, 0x10
shl rcx, 0x30
or rcx, rax
mov qword [rsp + 0x38], rcx
lea rax, [rcx + r8]
xor r9, rax
mov qword [rsp + 0x18], rax
mov rcx, r9
shr rcx, 0x3f
lea rax, [r9 + r9]
or rcx, rax
mov rax, rdx
xor rax, qword [rsp + 0x10]
mov qword [rsp + 0x20], rcx
mov rcx, rax
shl rax, 0x20
shr rcx, 0x20
or rcx, rax
lea r8, [rcx + r11]
xor rdi, r8
mov r9, rdi
shr rdi, 0x18
shl r9, 0x28
or r9, rdi
lea r15, [rdx + r9]
add r15, qword [rbp - 0x30]
mov rax, r15
xor rax, rcx
mov rdi, rax
shr rax, 0x10
shl rdi, 0x30
or rdi, rax
lea rax, [rdi + r8]
xor r9, rax
mov qword [rsp + 0x10], rax
mov rcx, r9
shr rcx, 0x3f
lea rax, [r9 + r9]
mov rdx, qword [rsp + 0x30]
or rcx, rax
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x48]
mov r13, qword [rbp - 0x58]
mov qword [rsp], rcx
lea rcx, [r14 + rsi]
add rcx, qword [rbp - 0x28]
xor rax, rcx
mov r9, rax
shl rax, 0x20
shr r9, 0x20
or r9, rax
add rdx, r9
xor rsi, rdx
mov r8, rsi
shr rsi, 0x18
shl r8, 0x28
or r8, rsi
add r13, r8
add r13, rcx
xor r9, r13
mov rsi, r9
shr r9, 0x10
shl rsi, 0x30
or rsi, r9
lea r11, [rsi + rdx]
mov rdx, qword [rsp + 0x40]
xor r8, r11
mov rcx, r8
shr rcx, 0x3f
lea rax, [r8 + r8]
or rcx, rax
mov rax, qword [rsp + 0x28]
mov qword [rsp + 8], rcx
lea rcx, [r12 + rbx]
add rcx, qword [rbp - 0x18]
mov r12, qword [rbp - 0x40]
xor rax, rcx
mov r9, rax
shl rax, 0x20
shr r9, 0x20
or r9, rax
add rdx, r9
xor rbx, rdx
mov r8, rbx
shr rbx, 0x18
shl r8, 0x28
or r8, rbx
add r12, r8
add r12, rcx
mov rcx, qword [rbp - 0x28]
xor r9, r12
mov r14, r9
shr r9, 0x10
shl r14, 0x30
or r14, r9
lea rbx, [r14 + rdx]
xor r8, rbx
mov r9, r8
shr r9, 0x3f
lea rax, [r8 + r8]
or r9, rax
lea rax, [r10 + r9]
add rcx, rax
mov rax, qword [rbp - 0x18]
xor rdi, rcx
mov r10, rdi
shl rdi, 0x20
shr r10, 0x20
or r10, rdi
lea rdx, [r10 + r11]
xor r9, rdx
mov r8, r9
shr r9, 0x18
shl r8, 0x28
or r8, r9
add rax, r8
add rax, rcx
mov qword [rsp + 0x30], rax
xor r10, rax
mov rax, r10
shr r10, 0x10
shl rax, 0x30
or rax, r10
mov r10, qword [rsp + 0x20]
mov qword [rsp + 0x28], rax
add rax, rdx
xor r8, rax
mov qword [rsp + 0x40], rax
mov rcx, r8
shr rcx, 0x3f
lea rax, [r8 + r8]
or rcx, rax
lea rax, [r15 + r10]
mov qword [rsp + 0x50], rcx
mov rcx, qword [rbp - 0x48]
add rcx, rax
mov rax, qword [rbp - 0x58]
xor rsi, rcx
mov r9, rsi
shl rsi, 0x20
shr r9, 0x20
or r9, rsi
lea rdx, [r9 + rbx]
xor r10, rdx
mov r8, r10
shr r10, 0x18
shl r8, 0x28
or r8, r10
mov r10, qword [rsp]
add rax, r8
add rax, rcx
mov rcx, qword [rbp + 8]
xor r9, rax
mov qword [rsp + 0x20], rax
mov rax, r9
add rcx, r10
shl rax, 0x30
add rcx, r13
mov r13, qword [rbp]
xor r14, rcx
shr r9, 0x10
or rax, r9
mov r9, r14
mov qword [rsp + 0x48], rax
add rax, rdx
mov rdx, qword [rsp + 0x18]
xor r8, rax
mov qword [rsp + 0x58], rax
mov rdi, r8
shr r9, 0x20
shl r14, 0x20
lea rax, [r8 + r8]
shr rdi, 0x3f
or rdi, rax
or r9, r14
add rdx, r9
xor r10, rdx
mov r8, r10
shr r10, 0x18
shl r8, 0x28
or r8, r10
add r13, r8
add r13, rcx
mov rcx, qword [rbp - 8]
xor r9, r13
mov rax, r9
shr r9, 0x10
shl rax, 0x30
or rax, r9
mov r9, qword [rsp + 8]
mov qword [rsp + 0x18], rax
add rcx, r9
lea r11, [rax + rdx]
xor r8, r11
mov rsi, r8
shr rsi, 0x3f
lea rax, [r8 + r8]
or rsi, rax
mov rax, qword [rsp + 0x38]
add rcx, r12
mov rdx, qword [rsp + 0x10]
xor rax, rcx
mov r15, qword [rbp - 0x30]
mov r10, rax
mov r12, qword [rbp - 0x10]
shl rax, 0x20
shr r10, 0x20
or r10, rax
mov rax, qword [rbp + 0x10]
add rdx, r10
xor r9, rdx
mov r8, r9
shr r9, 0x18
shl r8, 0x28
or r8, r9
add rax, r8
add rax, rcx
mov rcx, qword [rsp + 0x30]
xor r10, rax
mov qword [rsp], rax
mov r9, r10
shr r10, 0x10
shl r9, 0x30
or r9, r10
lea rbx, [r9 + rdx]
xor r8, rbx
mov r14, r8
shr r14, 0x3f
lea rax, [r8 + r8]
or r14, rax
mov rax, qword [rbp - 0x50]
add rax, rdi
add rcx, rax
xor r9, rcx
mov r10, r9
shl r9, 0x20
shr r10, 0x20
or r10, r9
lea rdx, [r10 + r11]
xor rdi, rdx
mov r8, rdi
shr rdi, 0x18
shl r8, 0x28
or r8, rdi
add r15, r8
add r15, rcx
xor r10, r15
mov rax, r10
shr r10, 0x10
shl rax, 0x30
or rax, r10
mov qword [rsp + 0x38], rax
add rax, rdx
xor r8, rax
mov qword [rsp + 0x10], rax
mov rcx, r8
shr rcx, 0x3f
lea rax, [r8 + r8]
mov r8, qword [rbp - 0x38]
or rcx, rax
add r8, rsi
add r8, qword [rsp + 0x20]
mov rax, qword [rsp + 0x28]
add r12, r8
xor rax, r8
mov qword [rsp + 8], rcx
mov rcx, rax
shl rax, 0x20
shr rcx, 0x20
or rcx, rax
lea r9, [rbx + rcx]
xor rsi, r9
mov rdx, rsi
shr rsi, 0x18
shl rdx, 0x28
or rdx, rsi
add r12, rdx
mov rax, r12
xor rax, rcx
mov rbx, rax
shl rbx, 0x30
mov r8, qword [rbp - 0x40]
mov r11, qword [rsp + 0x50]
add r8, r14
shr rax, 0x10
add r8, r13
mov r13, qword [rbp - 0x20]
or rbx, rax
lea rax, [r9 + rbx]
mov r9, qword [rsp + 0x40]
mov qword [rsp + 0x28], rax
xor rax, rdx
mov rcx, rax
add rax, rax
shr rcx, 0x3f
or rcx, rax
mov rax, qword [rsp + 0x48]
xor rax, r8
mov qword [rsp + 0x20], rcx
mov rcx, rax
shl rax, 0x20
shr rcx, 0x20
or rcx, rax
add r9, rcx
xor r14, r9
mov rdx, r14
shr r14, 0x18
shl rdx, 0x28
or rdx, r14
mov r14, qword [rbp - 0x60]
add r14, r8
mov r8, qword [rbp + 0x18]
add r8, r11
add r14, rdx
add r8, qword [rsp]
mov rax, r14
xor rax, rcx
add r13, r8
mov rdi, rax
shr rax, 0x10
shl rdi, 0x30
or rdi, rax
lea r10, [r9 + rdi]
mov r9, qword [rsp + 0x58]
mov rax, r10
xor rax, rdx
mov rcx, rax
add rax, rax
shr rcx, 0x3f
or rcx, rax
mov rax, qword [rsp + 0x18]
xor rax, r8
mov qword [rsp + 0x30], rcx
mov r8, qword [rbp - 0x18]
mov rcx, rax
shl rax, 0x20
add r8, r15
shr rcx, 0x20
or rcx, rax
add r9, rcx
xor r11, r9
mov rdx, r11
shr r11, 0x18
shl rdx, 0x28
or rdx, r11
add r13, rdx
mov rax, r13
xor rax, rcx
mov rsi, rax
shr rax, 0x10
shl rsi, 0x30
or rsi, rax
lea r11, [r9 + rsi]
mov rax, r11
xor rax, rdx
mov rcx, rax
add rax, rax
shr rcx, 0x3f
or rcx, rax
add r8, rcx
mov rax, r8
xor rax, rbx
mov r15, qword [rbp - 0x60]
mov rdx, rax
shl rax, 0x20
add r15, r8
mov r8, qword [rbp - 0x38]
shr rdx, 0x20
add r8, r12
or rdx, rax
add r8, qword [rsp + 8]
mov r12, qword [rbp - 0x28]
add r12, r8
lea r9, [r10 + rdx]
mov rax, r9
xor rax, rcx
mov rcx, rax
shr rax, 0x18
shl rcx, 0x28
or rcx, rax
add r15, rcx
mov rax, r15
xor rax, rdx
mov rdx, rax
shr rax, 0x10
shl rdx, 0x30
or rdx, rax
mov qword [rsp], rdx
lea rax, [r9 + rdx]
mov qword [rsp + 0x18], rax
xor rax, rcx
mov rcx, rax
add rax, rax
shr rcx, 0x3f
or rcx, rax
mov rax, r8
mov r8, qword [rbp - 0x50]
xor rax, rdi
mov qword [rsp + 0x48], rcx
add r8, r14
add r8, qword [rsp + 0x20]
mov rcx, rax
mov r14, qword [rbp - 0x40]
shl rax, 0x20
shr rcx, 0x20
or rcx, rax
lea r9, [r11 + rcx]
mov rax, r9
xor rax, qword [rsp + 8]
mov rdx, rax
shr rax, 0x18
shl rdx, 0x28
or rdx, rax
add r12, rdx
mov rax, r12
xor rax, rcx
mov rcx, rax
shr rax, 0x10
shl rcx, 0x30
or rcx, rax
mov qword [rsp + 8], rcx
lea rax, [r9 + rcx]
mov r9, qword [rsp + 0x10]
mov qword [rsp + 0x40], rax
xor rax, rdx
mov rbx, rax
add rax, rax
shr rbx, 0x3f
or rbx, rax
mov rax, r8
xor rax, rsi
mov rcx, rax
shl rax, 0x20
shr rcx, 0x20
or rcx, rax
add r9, rcx
mov rax, r9
xor rax, qword [rsp + 0x20]
mov rdx, rax
shr rax, 0x18
shl rdx, 0x28
or rdx, rax
add r14, r8
mov r8, qword [rbp - 0x10]
add r14, rdx
add r8, r13
mov rax, r14
xor rax, rcx
add r8, qword [rsp + 0x30]
mov r13, qword [rbp + 0x18]
mov rcx, rax
shr rax, 0x10
add r13, r8
shl rcx, 0x30
or rcx, rax
mov qword [rsp + 0x20], rcx
lea r10, [r9 + rcx]
mov r9, qword [rsp + 0x28]
mov rax, r10
xor rax, rdx
mov rdi, rax
add rax, rax
shr rdi, 0x3f
or rdi, rax
mov rax, qword [rsp + 0x38]
xor rax, r8
mov r8, qword [rbp + 0x10]
mov rcx, rax
add r8, r15
mov r15, qword [rbp - 0x58]
add r8, rbx
shl rax, 0x20
add r15, r8
shr rcx, 0x20
or rcx, rax
add r9, rcx
mov rax, r9
xor rax, qword [rsp + 0x30]
mov rdx, rax
shr rax, 0x18
shl rdx, 0x28
or rdx, rax
add r13, rdx
mov rax, r13
xor rax, rcx
mov rcx, rax
shr rax, 0x10
shl rcx, 0x30
or rcx, rax
lea r11, [r9 + rcx]
mov rax, r11
xor rax, rdx
mov rsi, rax
add rax, rax
shr rsi, 0x3f
or rsi, rax
mov rax, r8
xor rax, rcx
mov rcx, rax
shl rax, 0x20
shr rcx, 0x20
or rcx, rax
lea r9, [r10 + rcx]
mov rax, r9
xor rax, rbx
mov rdx, rax
shr rax, 0x18
shl rdx, 0x28
or rdx, rax
add r15, rdx
mov rax, r15
xor rax, rcx
mov rcx, rax
shr rax, 0x10
shl rcx, 0x30
or rcx, rax
mov qword [rsp + 0x28], rcx
lea rax, [r9 + rcx]
mov qword [rsp + 0x30], rax
xor rax, rdx
mov rcx, rax
add rax, rax
shr rcx, 0x3f
or rcx, rax
mov r8, qword [rbp - 8]
mov qword [rsp + 0x10], rcx
add r8, r12
mov r12, qword [rbp]
add r8, rdi
add r12, r8
mov rax, r8
xor rax, qword [rsp]
mov r8, qword [rbp - 0x30]
mov rcx, rax
shl rax, 0x20
add r8, r14
mov r14, qword [rbp - 0x20]
add r8, rsi
shr rcx, 0x20
add r14, r8
or rcx, rax
lea r9, [r11 + rcx]
mov rax, r9
xor rax, rdi
mov rdx, rax
shr rax, 0x18
shl rdx, 0x28
or rdx, rax
add r12, rdx
mov rax, r12
xor rax, rcx
mov rbx, rax
shr rax, 0x10
shl rbx, 0x30
or rbx, rax
lea rax, [r9 + rbx]
mov r9, qword [rsp + 0x18]
mov qword [rsp + 0x38], rax
xor rax, rdx
mov rcx, rax
add rax, rax
shr rcx, 0x3f
or rcx, rax
mov rax, r8
xor rax, qword [rsp + 8]
mov r8, qword [rbp - 0x48]
mov qword [rsp], rcx
add r8, r13
add r8, qword [rsp + 0x48]
mov rcx, rax
shl rax, 0x20
shr rcx, 0x20
or rcx, rax
add r9, rcx
mov rax, r9
xor rax, rsi
mov rdx, rax
shr rax, 0x18
shl rdx, 0x28
or rdx, rax
add r14, rdx
mov rax, r14
xor rax, rcx
mov rdi, rax
shr rax, 0x10
shl rdi, 0x30
or rdi, rax
lea r10, [r9 + rdi]
mov r9, qword [rsp + 0x40]
mov rax, r10
xor rax, rdx
mov rcx, rax
add rax, rax
shr rcx, 0x3f
or rcx, rax
mov rax, r8
xor rax, qword [rsp + 0x20]
mov qword [rsp + 8], rcx
mov rcx, rax
shl rax, 0x20
shr rcx, 0x20
or rcx, rax
add r9, rcx
mov rax, r9
xor rax, qword [rsp + 0x48]
mov r13, qword [rbp + 8]
mov rdx, rax
shr rax, 0x18
add r13, r8
mov r8, qword [rbp - 0x50]
shl rdx, 0x28
add r8, r15
or rdx, rax
mov r15, qword [rbp]
add r13, rdx
mov rax, r13
xor rax, rcx
mov rsi, rax
shr rax, 0x10
shl rsi, 0x30
or rsi, rax
lea r11, [r9 + rsi]
mov rax, r11
xor rax, rdx
mov rcx, rax
add rax, rax
shr rcx, 0x3f
or rcx, rax
add r8, rcx
add r15, r8
mov rax, r8
mov r8, qword [rbp - 0x30]
xor rax, rbx
mov rdx, rax
add r8, r12
add r8, qword [rsp + 0x10]
mov r12, qword [rbp - 0x10]
shl rax, 0x20
add r12, r8
shr rdx, 0x20
or rdx, rax
lea r9, [r10 + rdx]
mov rax, r9
xor rax, rcx
mov rcx, rax
shr rax, 0x18
shl rcx, 0x28
or rcx, rax
add r15, rcx
mov rax, r15
xor rax, rdx
mov rdx, rax
shr rax, 0x10
shl rdx, 0x30
or rdx, rax
mov qword [rsp + 0x20], rdx
lea rax, [r9 + rdx]
mov qword [rsp + 0x48], rax
xor rax, rcx
mov rcx, rax
add rax, rax
shr rcx, 0x3f
or rcx, rax
mov rax, r8
xor rax, rdi
mov qword [rsp + 0x40], rcx
mov rcx, rax
shl rax, 0x20
shr rcx, 0x20
or rcx, rax
lea r9, [r11 + rcx]
mov rax, r9
xor rax, qword [rsp + 0x10]
mov rdx, rax
shr rax, 0x18
shl rdx, 0x28
or rdx, rax
add r12, rdx
mov rax, r12
xor rax, rcx
mov rcx, rax
shr rax, 0x10
shl rcx, 0x30
or rcx, rax
mov qword [rsp + 0x18], rcx
lea rax, [r9 + rcx]
mov r8, qword [rbp - 0x60]
mov r9, qword [rsp + 0x30]
add r8, r14
add r8, qword [rsp]
mov qword [rsp + 0x50], rax
xor rax, rdx
mov rdi, rax
add rax, rax
shr rdi, 0x3f
or rdi, rax
mov rax, r8
xor rax, rsi
mov rcx, rax
shl rax, 0x20
shr rcx, 0x20
or rcx, rax
add r9, rcx
mov rax, r9
xor rax, qword [rsp]
mov rdx, rax
shr rax, 0x18
shl rdx, 0x28
or rdx, rax
mov rax, qword [rbp - 8]
add rax, r8
add rax, rdx
mov qword [rsp], rax
xor rax, rcx
mov rcx, rax
shr rax, 0x10
shl rcx, 0x30
or rcx, rax
mov qword [rsp + 0x10], rcx
lea r11, [r9 + rcx]
mov rcx, qword [rbp - 0x20]
add rcx, r13
mov rax, r11
add rcx, qword [rsp + 8]
xor rax, rdx
mov rdx, qword [rsp + 0x38]
mov rsi, rax
mov r13, qword [rbp - 0x48]
add rax, rax
add r13, rcx
shr rsi, 0x3f
or rsi, rax
mov rax, rcx
xor rax, qword [rsp + 0x28]
mov rcx, qword [rbp - 0x40]
mov r10, rax
shl rax, 0x20
add rcx, r15
shr r10, 0x20
add rcx, rdi
or r10, rax
add rdx, r10
mov rax, rdx
xor rax, qword [rsp + 8]
mov r8, rax
shr rax, 0x18
shl r8, 0x28
or r8, rax
add r13, r8
xor r10, r13
mov r9, r10
shr r10, 0x10
shl r9, 0x30
or r9, r10
lea rbx, [r9 + rdx]
xor r9, rcx
xor r8, rbx
mov r10, r9
mov r14, r8
shr r10, 0x20
shr r14, 0x3f
shl r9, 0x20
lea rax, [r8 + r8]
or r14, rax
or r10, r9
lea rdx, [r10 + r11]
mov rax, rdx
mov r15, qword [rbp + 8]
xor rax, rdi
mov r8, rax
shr rax, 0x18
shl r8, 0x28
or r8, rax
add r15, r8
add r15, rcx
xor r10, r15
mov rax, r10
shr r10, 0x10
shl rax, 0x30
or rax, r10
mov qword [rsp + 0x28], rax
add rax, rdx
xor r8, rax
mov qword [rsp + 0x30], rax
mov rcx, r8
shr rcx, 0x3f
lea rax, [r8 + r8]
or rcx, rax
mov rax, qword [rsp + 0x20]
mov qword [rsp + 8], rcx
mov rcx, qword [rbp - 0x28]
add rcx, r12
mov r12, qword [rbp - 0x38]
add rcx, rsi
xor rax, rcx
mov r9, rax
shl rax, 0x20
shr r9, 0x20
or r9, rax
lea rdx, [r9 + rbx]
mov rax, rdx
xor rax, rsi
mov r8, rax
shr rax, 0x18
shl r8, 0x28
or r8, rax
add r12, r8
add r12, rcx
xor r9, r12
mov rdi, r9
shr r9, 0x10
shl rdi, 0x30
or rdi, r9
lea rax, [rdi + rdx]
mov rdx, qword [rsp + 0x48]
xor r8, rax
mov qword [rsp + 0x38], rax
mov rcx, r8
shr rcx, 0x3f
lea rax, [r8 + r8]
or rcx, rax
mov rax, qword [rsp + 0x18]
mov qword [rsp + 0x20], rcx
mov rcx, qword [rsp]
add rcx, qword [rbp + 0x18]
add rcx, r14
xor rax, rcx
mov r9, rax
shl rax, 0x20
shr r9, 0x20
or r9, rax
add rdx, r9
mov rax, rdx
xor rax, r14
mov r8, rax
shr rax, 0x18
shl r8, 0x28
or r8, rax
mov rax, qword [rbp + 0x10]
add rax, r8
add rax, rcx
xor r9, rax
mov qword [rsp], rax
mov rsi, r9
shr r9, 0x10
shl rsi, 0x30
or rsi, r9
lea r11, [rsi + rdx]
mov rdx, qword [rsp + 0x50]
xor r8, r11
mov rcx, r8
shr rcx, 0x3f
lea rax, [r8 + r8]
or rcx, rax
mov rax, qword [rsp + 0x10]
mov qword [rsp + 0x18], rcx
mov rcx, qword [rbp - 0x58]
add rcx, qword [rsp + 0x40]
add rcx, r13
mov r13, qword [rbp - 0x18]
xor rax, rcx
mov r9, rax
shl rax, 0x20
shr r9, 0x20
or r9, rax
add rdx, r9
mov rax, rdx
xor rax, qword [rsp + 0x40]
mov r8, rax
shr rax, 0x18
shl r8, 0x28
or r8, rax
add r13, r8
add r13, rcx
mov rcx, qword [rbp]
xor r9, r13
mov r14, r9
shr r9, 0x10
shl r14, 0x30
or r14, r9
lea rbx, [r14 + rdx]
xor r8, rbx
mov r9, r8
shr r9, 0x3f
lea rax, [r8 + r8]
or r9, rax
add rcx, r9
add rcx, r15
mov r15, qword [rbp - 0x38]
xor rdi, rcx
mov r10, rdi
shl rdi, 0x20
shr r10, 0x20
or r10, rdi
lea rdx, [r10 + r11]
xor r9, rdx
mov r8, r9
shr r9, 0x18
shl r8, 0x28
or r8, r9
add r15, r8
add r15, rcx
xor r10, r15
mov rax, r10
shr r10, 0x10
shl rax, 0x30
or rax, r10
mov qword [rsp + 0x10], rax
add rax, rdx
xor r8, rax
mov qword [rsp + 0x48], rax
mov rcx, r8
shr rcx, 0x3f
lea rax, [r8 + r8]
or rcx, rax
mov qword [rsp + 0x40], rcx
mov rcx, qword [rbp - 0x58]
add rcx, qword [rsp + 8]
add rcx, r12
xor rsi, rcx
mov r9, rsi
shl rsi, 0x20
shr r9, 0x20
or r9, rsi
lea rdx, [r9 + rbx]
mov rax, rdx
xor rax, qword [rsp + 8]
mov r8, rax
shl r8, 0x28
mov r10, qword [rsp + 0x20]
mov r12, qword [rbp + 0x18]
shr rax, 0x18
or r8, rax
add r12, r8
add r12, rcx
mov rcx, qword [rsp]
xor r9, r12
mov rax, r9
shr r9, 0x10
shl rax, 0x30
or rax, r9
mov qword [rsp + 8], rax
add rax, rdx
mov rdx, qword [rsp + 0x30]
xor r8, rax
mov qword [rsp + 0x50], rax
mov rdi, r8
shr rdi, 0x3f
lea rax, [r8 + r8]
or rdi, rax
mov rax, qword [rbp + 0x10]
add rax, r10
add rcx, rax
mov rax, qword [rbp + 8]
xor r14, rcx
mov r9, r14
shl r14, 0x20
shr r9, 0x20
or r9, r14
add rdx, r9
xor r10, rdx
mov r8, r10
shr r10, 0x18
shl r8, 0x28
or r8, r10
add rax, r8
add rax, rcx
mov rcx, qword [rbp - 0x40]
xor r9, rax
mov qword [rsp + 0x20], rax
mov rax, r9
shr r9, 0x10
shl rax, 0x30
or rax, r9
mov r9, qword [rsp + 0x18]
add rcx, r9
mov qword [rsp], rax
add rcx, r13
mov r13, qword [rbp - 0x10]
lea r11, [rax + rdx]
mov rdx, qword [rsp + 0x38]
xor r8, r11
mov rsi, r8
shr rsi, 0x3f
lea rax, [r8 + r8]
or rsi, rax
mov rax, qword [rsp + 0x28]
xor rax, rcx
mov r10, rax
shl rax, 0x20
shr r10, 0x20
or r10, rax
add rdx, r10
xor r9, rdx
mov r8, r9
shr r9, 0x18
shl r8, 0x28
or r8, r9
add r13, r8
add r13, rcx
xor r10, r13
mov r9, r10
shr r10, 0x10
shl r9, 0x30
or r9, r10
lea rbx, [r9 + rdx]
xor r8, rbx
mov r14, r8
shr r14, 0x3f
lea rax, [r8 + r8]
mov rcx, qword [rbp - 0x60]
or r14, rax
add rcx, rdi
add rcx, r15
mov r15, qword [rbp - 0x28]
xor r9, rcx
mov r10, r9
shl r9, 0x20
shr r10, 0x20
or r10, r9
lea rdx, [r10 + r11]
xor rdi, rdx
mov r8, rdi
shr rdi, 0x18
shl r8, 0x28
or r8, rdi
add r15, r8
add r15, rcx
xor r10, r15
mov rax, r10
shr r10, 0x10
shl rax, 0x30
or rax, r10
mov qword [rsp + 0x28], rax
add rax, rdx
xor r8, rax
mov qword [rsp + 0x30], rax
mov rcx, r8
shr rcx, 0x3f
lea rax, [r8 + r8]
or rcx, rax
mov rax, qword [rsp + 0x10]
mov qword [rsp + 0x18], rcx
mov rcx, qword [rbp - 0x30]
add rcx, rsi
add rcx, r12
mov r12, qword [rbp - 0x48]
xor rax, rcx
mov r9, rax
shl rax, 0x20
shr r9, 0x20
or r9, rax
lea rdx, [r9 + rbx]
xor rsi, rdx
mov r8, rsi
shr rsi, 0x18
shl r8, 0x28
or r8, rsi
add r12, r8
add r12, rcx
xor r9, r12
mov rdi, r9
shr r9, 0x10
shl rdi, 0x30
or rdi, r9
lea rax, [rdi + rdx]
mov rdx, qword [rsp + 0x48]
xor r8, rax
mov qword [rsp + 0x38], rax
mov rcx, r8
shr rcx, 0x3f
lea rax, [r8 + r8]
or rcx, rax
mov rax, qword [rbp - 0x18]
add rax, r14
mov qword [rsp + 0x10], rcx
mov rcx, qword [rsp + 0x20]
add rcx, rax
mov rax, qword [rsp + 8]
xor rax, rcx
mov r9, rax
shl rax, 0x20
shr r9, 0x20
or r9, rax
mov rax, qword [rbp - 0x50]
add rdx, r9
xor r14, rdx
mov r8, r14
shr r14, 0x18
shl r8, 0x28
or r8, r14
mov r10, qword [rsp + 0x40]
add rax, r8
add rax, rcx
xor r9, rax
mov qword [rsp + 0x20], rax
mov rsi, r9
shr r9, 0x10
shl rsi, 0x30
or rsi, r9
lea r11, [rsi + rdx]
mov rdx, qword [rsp + 0x50]
xor r8, r11
mov rcx, r8
shr rcx, 0x3f
lea rax, [r8 + r8]
or rcx, rax
mov rax, qword [rsp]
mov qword [rsp + 8], rcx
mov rcx, qword [rbp - 0x20]
add rcx, r10
add rcx, r13
mov r13, qword [rbp - 8]
xor rax, rcx
mov r9, rax
shl rax, 0x20
shr r9, 0x20
or r9, rax
add rdx, r9
xor r10, rdx
mov r8, r10
shr r10, 0x18
shl r8, 0x28
or r8, r10
lea rax, [r8 + r13]
add rax, rcx
mov rcx, qword [rbp + 8]
xor r9, rax
mov qword [rsp], rax
mov r14, r9
shr r9, 0x10
shl r14, 0x30
or r14, r9
lea rbx, [r14 + rdx]
xor r8, rbx
mov r9, r8
shr r9, 0x3f
lea rax, [r8 + r8]
or r9, rax
add rcx, r9
add rcx, r15
xor rdi, rcx
mov r10, rdi
shl rdi, 0x20
shr r10, 0x20
or r10, rdi
lea rdx, [r10 + r11]
xor r9, rdx
mov r8, r9
shr r9, 0x18
shl r8, 0x28
or r8, r9
lea r15, [r8 + r13]
add r15, rcx
xor r10, r15
mov rax, r10
shr r10, 0x10
shl rax, 0x30
or rax, r10
mov r10, qword [rsp + 0x18]
mov qword [rsp + 0x48], rax
add rax, rdx
xor r8, rax
mov qword [rsp + 0x40], rax
mov rcx, r8
shr rcx, 0x3f
lea rax, [r8 + r8]
or rcx, rax
mov qword [rsp + 0x50], rcx
mov rcx, qword [rbp - 0x28]
add rcx, r10
add rcx, r12
xor rsi, rcx
mov r9, rsi
shl rsi, 0x20
shr r9, 0x20
or r9, rsi
lea rdx, [r9 + rbx]
xor r10, rdx
mov r8, r10
shr r10, 0x18
shl r8, 0x28
or r8, r10
mov r10, qword [rsp + 0x10]
lea r12, [r8 + rcx]
mov rcx, qword [rsp + 0x20]
add r12, qword [rbp + 0x10]
xor r9, r12
mov rax, r9
shr r9, 0x10
shl rax, 0x30
or rax, r9
mov qword [rsp + 0x18], rax
add rax, rdx
mov rdx, qword [rsp + 0x30]
xor r8, rax
mov qword [rsp + 0x58], rax
mov rdi, r8
shr rdi, 0x3f
lea rax, [r8 + r8]
or rdi, rax
mov rax, qword [rbp]
add rax, r10
add rcx, rax
xor r14, rcx
mov r9, r14
shl r14, 0x20
shr r9, 0x20
or r9, r14
add rdx, r9
xor r10, rdx
mov r8, r10
shr r10, 0x18
shl r8, 0x28
or r8, r10
lea r13, [r8 + rcx]
mov rcx, qword [rsp]
add r13, qword [rbp - 0x58]
xor r9, r13
mov rax, r9
shr r9, 0x10
shl rax, 0x30
or rax, r9
mov r9, qword [rsp + 8]
mov qword [rsp + 0x10], rax
lea r11, [rax + rdx]
mov rdx, qword [rsp + 0x38]
xor r8, r11
mov rsi, r8
shr rsi, 0x3f
lea rax, [r8 + r8]
or rsi, rax
mov rax, qword [rbp - 0x48]
add rax, r9
add rcx, rax
mov rax, qword [rsp + 0x28]
xor rax, rcx
mov r10, rax
shl rax, 0x20
shr r10, 0x20
or r10, rax
add rdx, r10
xor r9, rdx
mov r8, r9
shr r9, 0x18
shl r8, 0x28
or r8, r9
lea rax, [r8 + rcx]
add rax, qword [rbp - 0x18]
xor r10, rax
mov qword [rsp + 0x20], rax
mov r9, r10
shl r9, 0x30
shr r10, 0x10
lea rcx, [rdi + r15]
add rcx, qword [rbp - 0x38]
or r9, r10
lea rbx, [r9 + rdx]
xor r9, rcx
xor r8, rbx
mov r10, r9
mov r14, r8
shl r9, 0x20
shr r10, 0x20
or r10, r9
shr r14, 0x3f
lea rax, [r8 + r8]
or r14, rax
lea rdx, [r10 + r11]
xor rdi, rdx
mov r8, rdi
shr rdi, 0x18
shl r8, 0x28
or r8, rdi
lea r15, [r8 + rcx]
add r15, qword [rbp - 0x60]
xor r10, r15
mov rax, r10
shr r10, 0x10
shl rax, 0x30
or rax, r10
mov qword [rsp + 0x28], rax
add rax, rdx
xor r8, rax
mov qword [rsp + 0x30], rax
mov rcx, r8
shr rcx, 0x3f
lea rax, [r8 + r8]
or rcx, rax
lea r8, [rsi + r12]
add r8, qword [rbp + 0x18]
mov rax, qword [rsp + 0x48]
mov r12, qword [rbp - 0x40]
xor rax, r8
mov qword [rsp], rcx
add r12, r8
mov rcx, rax
lea r8, [r14 + r13]
add r8, qword [rbp - 0x20]
shl rax, 0x20
shr rcx, 0x20
or rcx, rax
lea r9, [rbx + rcx]
xor rsi, r9
mov rdx, rsi
shr rsi, 0x18
shl rdx, 0x28
or rdx, rsi
add r12, rdx
mov rax, r12
xor rax, rcx
mov rbx, rax
shr rax, 0x10
shl rbx, 0x30
or rbx, rax
lea rax, [r9 + rbx]
mov r9, qword [rsp + 0x40]
mov qword [rsp + 0x48], rax
xor rax, rdx
mov rcx, rax
add rax, rax
shr rcx, 0x3f
or rcx, rax
mov rax, qword [rsp + 0x18]
xor rax, r8
mov qword [rsp + 8], rcx
mov rcx, rax
shl rax, 0x20
shr rcx, 0x20
or rcx, rax
add r9, rcx
xor r14, r9
mov rdx, r14
shl rdx, 0x28
mov r11, qword [rsp + 0x50]
mov r13, qword [rbp - 0x10]
shr r14, 0x18
or rdx, r14
mov r14, qword [rbp - 0x30]
add r14, r8
mov r8, qword [rsp + 0x20]
add r14, rdx
add r8, r11
add r8, qword [rbp - 0x50]
mov rax, r14
xor rax, rcx
add r13, r8
mov rdi, rax
shr rax, 0x10
shl rdi, 0x30
or rdi, rax
lea r10, [r9 + rdi]
mov r9, qword [rsp + 0x58]
mov rax, r10
xor rax, rdx
mov rcx, rax
add rax, rax
shr rcx, 0x3f
or rcx, rax
mov rax, qword [rsp + 0x10]
xor rax, r8
mov qword [rsp + 0x18], rcx
mov rcx, rax
shl rax, 0x20
shr rcx, 0x20
or rcx, rax
add r9, rcx
xor r11, r9
mov rdx, r11
shr r11, 0x18
shl rdx, 0x28
or rdx, r11
add r13, rdx
mov rax, r13
xor rax, rcx
mov rsi, rax
shr rax, 0x10
shl rsi, 0x30
or rsi, rax
lea r11, [r9 + rsi]
mov rax, r11
xor rax, rdx
mov rdx, qword [rbp - 0x30]
mov rcx, rax
add rdx, r15
add rax, rax
shr rcx, 0x3f
or rcx, rax
add rdx, rcx
mov rax, rdx
xor rax, rbx
mov r9, rax
shl rax, 0x20
shr r9, 0x20
or r9, rax
lea r8, [r10 + r9]
mov rax, r8
xor rax, rcx
mov rcx, rax
shr rax, 0x18
shl rcx, 0x28
or rcx, rax
mov rax, qword [rbp + 0x18]
add rax, rdx
add rax, rcx
xor r9, rax
mov qword [rsp + 0x20], rax
mov rax, r9
shr r9, 0x10
shl rax, 0x30
or rax, r9
mov qword [rsp + 0x10], rax
add rax, r8
mov qword [rsp + 0x38], rax
xor rax, rcx
mov rdx, qword [rbp + 0x10]
mov rcx, rax
add rax, rax
shr rcx, 0x3f
or rcx, rax
add rdx, r12
add rdx, qword [rsp]
mov r12, qword [rbp - 0x18]
xor rdi, rdx
mov qword [rsp + 0x50], rcx
mov r9, rdi
shr r9, 0x20
shl rdi, 0x20
or r9, rdi
lea r8, [r11 + r9]
mov rax, r8
xor rax, qword [rsp]
mov rcx, rax
shr rax, 0x18
shl rcx, 0x28
or rcx, rax
add r12, rcx
add r12, rdx
mov rdx, qword [rbp - 8]
xor r9, r12
add rdx, r14
add rdx, qword [rsp + 8]
mov rax, r9
shl rax, 0x30
xor rsi, rdx
shr r9, 0x10
or rax, r9
mov r9, rsi
mov qword [rsp + 0x40], rax
add rax, r8
mov r8, qword [rsp + 0x30]
mov qword [rsp + 0x58], rax
xor rax, rcx
mov rdi, rax
shl rsi, 0x20
add rax, rax
shr r9, 0x20
or r9, rsi
shr rdi, 0x3f
or rdi, rax
add r8, r9
mov rax, r8
xor rax, qword [rsp + 8]
mov rcx, rax
shr rax, 0x18
shl rcx, 0x28
or rcx, rax
mov rax, qword [rbp - 0x48]
add rax, rcx
add rax, rdx
mov rdx, qword [rbp - 0x60]
xor r9, rax
mov qword [rsp], rax
mov rax, r9
add rdx, r13
add rdx, qword [rsp + 0x18]
shl rax, 0x30
shr r9, 0x10
or rax, r9
mov qword [rsp + 8], rax
lea r11, [r8 + rax]
mov r8, qword [rsp + 0x48]
mov rax, r11
xor rax, rcx
mov rsi, rax
add rax, rax
shr rsi, 0x3f
or rsi, rax
mov rax, qword [rsp + 0x28]
xor rax, rdx
mov r10, rax
shl rax, 0x20
shr r10, 0x20
or r10, rax
add r8, r10
mov rax, r8
xor rax, qword [rsp + 0x18]
mov r15, qword [rbp - 0x20]
mov rcx, rax
mov r13, qword [rbp - 0x50]
shr rax, 0x18
shl rcx, 0x28
or rcx, rax
add r15, rcx
add r15, rdx
mov rdx, qword [rbp]
xor r10, r15
add rdx, rdi
add rdx, qword [rsp + 0x20]
mov r9, r10
shl r9, 0x30
shr r10, 0x10
or r9, r10
lea rbx, [r8 + r9]
xor r9, rdx
mov r10, r9
mov rax, rbx
xor rax, rcx
shl r9, 0x20
mov r14, rax
shr r10, 0x20
add rax, rax
shr r14, 0x3f
or r14, rax
or r10, r9
lea r8, [r11 + r10]
mov rax, r8
xor rax, rdi
mov rcx, rax
shr rax, 0x18
shl rcx, 0x28
or rcx, rax
add r13, rcx
add r13, rdx
mov rdx, qword [rbp + 8]
xor r10, r13
add rdx, rsi
add rdx, r12
mov rax, r10
mov r12, qword [rbp - 0x28]
shl rax, 0x30
shr r10, 0x10
or rax, r10
mov qword [rsp + 0x28], rax
add rax, r8
mov qword [rsp + 0x30], rax
xor rax, rcx
mov rcx, rax
add rax, rax
shr rcx, 0x3f
or rcx, rax
mov rax, rdx
xor rax, qword [rsp + 0x10]
mov r9, rax
mov qword [rsp + 0x20], rcx
shl rax, 0x20
shr r9, 0x20
or r9, rax
lea r8, [rbx + r9]
mov rax, r8
xor rax, rsi
mov rcx, rax
shr rax, 0x18
shl rcx, 0x28
or rcx, rax
add r12, rcx
add r12, rdx
xor r9, r12
mov rbx, r9
shr r9, 0x10
shl rbx, 0x30
or rbx, r9
lea rax, [r8 + rbx]
mov qword [rsp + 0x48], rax
xor rax, rcx
mov rcx, rax
shr rcx, 0x3f
mov rdx, qword [rbp - 0x58]
add rax, rax
or rcx, rax
mov r8, qword [rsp + 0x38]
mov qword [rsp + 0x18], rcx
add rdx, r14
add rdx, qword [rsp]
mov rax, rdx
xor rax, qword [rsp + 0x40]
mov r9, rax
shl rax, 0x20
shr r9, 0x20
or r9, rax
add r8, r9
mov rax, r8
xor rax, r14
mov r14, qword [rbp - 0x38]
mov rcx, rax
shr rax, 0x18
shl rcx, 0x28
or rcx, rax
mov rax, qword [rbp - 0x40]
add rax, rcx
add rax, rdx
xor r9, rax
mov qword [rsp], rax
mov rdi, r9
shr r9, 0x10
shl rdi, 0x30
or rdi, r9
mov r9, qword [rsp + 0x58]
lea r10, [r8 + rdi]
mov r8, qword [rbp - 0x10]
add r8, r15
mov rax, r10
add r8, qword [rsp + 0x50]
xor rax, rcx
mov rcx, rax
add rax, rax
shr rcx, 0x3f
or rcx, rax
mov rax, r8
xor rax, qword [rsp + 8]
mov qword [rsp + 0x10], rcx
mov rcx, rax
shl rax, 0x20
shr rcx, 0x20
or rcx, rax
add r9, rcx
mov rax, r9
xor rax, qword [rsp + 0x50]
mov rdx, rax
shr rax, 0x18
shl rdx, 0x28
or rdx, rax
add r14, rdx
add r14, r8
mov r8, qword [rbp - 0x10]
mov rax, r14
xor rax, rcx
mov rsi, rax
shr rax, 0x10
shl rsi, 0x30
or rsi, rax
lea r11, [r9 + rsi]
mov rax, r11
xor rax, rdx
mov rcx, rax
add rax, rax
shr rcx, 0x3f
or rcx, rax
add r8, rcx
add r8, r13
mov rax, r8
xor rax, rbx
mov rdx, rax
shl rax, 0x20
shr rdx, 0x20
or rdx, rax
lea r9, [r10 + rdx]
mov rax, r9
xor rax, rcx
mov r15, qword [rbp - 0x50]
mov r13, qword [rbp - 0x30]
mov rcx, rax
shr rax, 0x18
shl rcx, 0x28
or rcx, rax
add r15, rcx
add r15, r8
mov r8, qword [rbp - 0x20]
add r8, qword [rsp + 0x20]
mov rax, r15
xor rax, rdx
add r8, r12
mov r12, qword [rbp - 0x40]
mov rdx, rax
shr rax, 0x10
add r12, r8
shl rdx, 0x30
or rdx, rax
mov qword [rsp + 8], rdx
lea rax, [r9 + rdx]
mov qword [rsp + 0x40], rax
xor rax, rcx
mov rcx, rax
add rax, rax
shr rcx, 0x3f
or rcx, rax
mov rax, r8
mov r8, qword [rbp - 0x28]
xor rax, rdi
add r8, qword [rsp + 0x18]
add r8, qword [rsp]
mov qword [rsp + 0x38], rcx
add r13, r8
mov rcx, rax
shl rax, 0x20
shr rcx, 0x20
or rcx, rax
lea r9, [r11 + rcx]
mov rax, r9
xor rax, qword [rsp + 0x20]
mov rdx, rax
shr rax, 0x18
shl rdx, 0x28
or rdx, rax
add r12, rdx
mov rax, r12
xor rax, rcx
mov rcx, rax
shr rax, 0x10
shl rcx, 0x30
or rcx, rax
mov qword [rsp + 0x20], rcx
lea rax, [r9 + rcx]
mov r9, qword [rsp + 0x30]
mov qword [rsp + 0x50], rax
xor rax, rdx
mov rbx, rax
add rax, rax
shr rbx, 0x3f
or rbx, rax
mov rax, r8
xor rax, rsi
mov rcx, rax
shl rax, 0x20
shr rcx, 0x20
or rcx, rax
add r9, rcx
mov rax, r9
xor rax, qword [rsp + 0x18]
mov rdx, rax
shr rax, 0x18
shl rdx, 0x28
or rdx, rax
add r13, rdx
mov rax, r13
xor rax, rcx
mov rcx, rax
shl rcx, 0x30
shr rax, 0x10
or rcx, rax
mov r8, qword [rbp - 0x58]
mov qword [rsp], rcx
add r8, r14
add r8, qword [rsp + 0x10]
mov r14, qword [rbp - 0x38]
lea r10, [r9 + rcx]
add r14, r8
mov r9, qword [rsp + 0x48]
mov rax, r10
xor rax, rdx
mov rdi, rax
add rax, rax
shr rdi, 0x3f
or rdi, rax
mov rax, r8
xor rax, qword [rsp + 0x28]
mov r8, qword [rbp + 0x18]
mov rcx, rax
shl rax, 0x20
add r8, rbx
shr rcx, 0x20
add r8, r15
or rcx, rax
add r9, rcx
mov rax, r9
xor rax, qword [rsp + 0x10]
mov rdx, rax
shr rax, 0x18
shl rdx, 0x28
or rdx, rax
add r14, rdx
mov rax, r14
xor rax, rcx
mov rcx, rax
shr rax, 0x10
shl rcx, 0x30
or rcx, rax
lea r11, [r9 + rcx]
mov rax, r11
xor rax, rdx
mov rsi, rax
add rax, rax
shr rsi, 0x3f
or rsi, rax
mov rax, r8
xor rax, rcx
mov rcx, rax
shl rax, 0x20
shr rcx, 0x20
or rcx, rax
lea r9, [r10 + rcx]
mov rax, r9
xor rax, rbx
mov rdx, rax
shr rax, 0x18
shl rdx, 0x28
or rdx, rax
mov rax, qword [rbp - 8]
add rax, r8
mov r8, qword [rbp - 0x18]
add rax, rdx
add r8, rdi
mov qword [rsp + 0x18], rax
add r8, r12
xor rax, rcx
mov rcx, rax
shr rax, 0x10
shl rcx, 0x30
or rcx, rax
mov qword [rsp + 0x28], rcx
lea rax, [r9 + rcx]
mov qword [rsp + 0x30], rax
xor rax, rdx
mov rcx, rax
add rax, rax
shr rcx, 0x3f
or rcx, rax
mov rax, r8
xor rax, qword [rsp + 8]
mov qword [rsp + 0x10], rcx
mov r15, qword [rbp + 0x10]
mov rcx, rax
mov r12, qword [rbp]
add r15, r8
mov r8, qword [rbp - 0x48]
shl rax, 0x20
add r8, rsi
shr rcx, 0x20
add r8, r13
or rcx, rax
mov r13, qword [rbp - 0x60]
add r12, r8
lea r9, [r11 + rcx]
mov rax, r9
xor rax, rdi
mov rdx, rax
shr rax, 0x18
shl rdx, 0x28
or rdx, rax
add r15, rdx
mov rax, r15
xor rax, rcx
mov rbx, rax
shr rax, 0x10
shl rbx, 0x30
or rbx, rax
lea rax, [r9 + rbx]
mov r9, qword [rsp + 0x40]
mov qword [rsp + 0x48], rax
xor rax, rdx
mov rcx, rax
add rax, rax
shr rcx, 0x3f
or rcx, rax
mov rax, r8
xor rax, qword [rsp + 0x20]
mov r8, qword [rbp + 8]
mov qword [rsp + 8], rcx
add r8, r14
add r8, qword [rsp + 0x38]
mov rcx, rax
shl rax, 0x20
shr rcx, 0x20
or rcx, rax
add r9, rcx
lea r14, [r8 + r13]
mov rax, r9
xor rax, rsi
mov rdx, rax
shr rax, 0x18
shl rdx, 0x28
or rdx, rax
add r12, rdx
mov rax, r12
xor rax, rcx
mov rdi, rax
shr rax, 0x10
shl rdi, 0x30
or rdi, rax
lea r10, [r9 + rdi]
mov r9, qword [rsp + 0x50]
mov rax, r10
xor rax, rdx
mov rcx, rax
add rax, rax
shr rcx, 0x3f
or rcx, rax
mov rax, r8
xor rax, qword [rsp]
mov qword [rsp + 0x20], rcx
mov rcx, rax
shl rax, 0x20
shr rcx, 0x20
or rcx, rax
add r9, rcx
mov rax, r9
xor rax, qword [rsp + 0x38]
mov rdx, rax
shr rax, 0x18
shl rdx, 0x28
or rdx, rax
add r14, rdx
mov rax, r14
xor rax, rcx
mov rsi, rax
shr rax, 0x10
shl rsi, 0x30
or rsi, rax
lea r11, [r9 + rsi]
mov rax, r11
xor rax, rdx
mov rcx, rax
add rax, rax
shr rcx, 0x3f
or rcx, rax
lea r8, [rcx + r13]
add r8, qword [rsp + 0x18]
mov rax, r8
xor rax, rbx
mov rdx, rax
shl rax, 0x20
shr rdx, 0x20
or rdx, rax
lea r9, [r10 + rdx]
mov rax, r9
xor rax, rcx
mov rcx, rax
shr rax, 0x18
shl rcx, 0x28
or rcx, rax
lea r13, [r8 + rcx]
mov r8, qword [rbp - 0x50]
add r13, qword [rbp - 0x58]
add r8, r15
add r8, qword [rsp + 0x10]
mov rax, r13
xor rax, rdx
mov rdx, rax
shr rax, 0x10
shl rdx, 0x30
or rdx, rax
mov qword [rsp], rdx
lea rax, [r9 + rdx]
mov qword [rsp + 0x40], rax
xor rax, rcx
mov rcx, rax
add rax, rax
shr rcx, 0x3f
or rcx, rax
mov rax, r8
xor rax, rdi
mov qword [rsp + 0x38], rcx
mov rcx, rax
shl rax, 0x20
shr rcx, 0x20
or rcx, rax
lea r9, [r11 + rcx]
mov rax, r9
xor rax, qword [rsp + 0x10]
mov rdx, rax
shr rax, 0x18
shl rdx, 0x28
or rdx, rax
lea r15, [r8 + rdx]
mov r8, qword [rbp - 0x40]
add r15, qword [rbp - 0x48]
add r8, r12
mov rax, r15
xor rax, rcx
mov rcx, rax
shr rax, 0x10
shl rcx, 0x30
or rcx, rax
mov qword [rsp + 0x18], rcx
lea rax, [r9 + rcx]
mov qword [rsp + 0x10], rax
xor rax, rdx
mov rbx, rax
add rax, rax
shr rbx, 0x3f
or rbx, rax
add r8, qword [rsp + 8]
mov r9, qword [rsp + 0x30]
mov rax, r8
xor rax, rsi
mov rcx, rax
shl rax, 0x20
shr rcx, 0x20
or rcx, rax
add r9, rcx
mov rax, r9
xor rax, qword [rsp + 8]
mov rdx, rax
shr rax, 0x18
shl rdx, 0x28
or rdx, rax
lea r12, [r8 + rdx]
mov r8, qword [rbp - 0x30]
add r12, qword [rbp - 0x38]
add r8, r14
add r8, qword [rsp + 0x20]
mov rax, r12
xor rax, rcx
mov rcx, rax
shr rax, 0x10
shl rcx, 0x30
or rcx, rax
mov qword [rsp + 8], rcx
lea r10, [r9 + rcx]
mov r9, qword [rsp + 0x48]
mov rax, r10
xor rax, rdx
mov rdi, rax
add rax, rax
shr rdi, 0x3f
or rdi, rax
mov rax, r8
xor rax, qword [rsp + 0x28]
mov rcx, rax
shl rax, 0x20
shr rcx, 0x20
or rcx, rax
add r9, rcx
mov rax, r9
xor rax, qword [rsp + 0x20]
mov rdx, rax
shr rax, 0x18
shl rdx, 0x28
or rdx, rax
lea r14, [r8 + rdx]
add r14, qword [rbp - 0x28]
lea r8, [rbx + r13]
add r8, qword [rbp - 0x20]
mov rax, r14
xor rax, rcx
mov rcx, rax
shr rax, 0x10
shl rcx, 0x30
or rcx, rax
lea r11, [r9 + rcx]
mov rax, r11
xor rax, rdx
mov rsi, rax
add rax, rax
shr rsi, 0x3f
or rsi, rax
mov rax, r8
xor rax, rcx
mov rcx, rax
shl rax, 0x20
shr rcx, 0x20
or rcx, rax
lea r9, [r10 + rcx]
mov rax, r9
xor rax, rbx
mov rdx, rax
shr rax, 0x18
shl rdx, 0x28
or rdx, rax
lea r13, [r8 + rdx]
add r13, qword [rbp - 0x18]
mov rax, r13
xor rax, rcx
mov rcx, rax
lea r8, [r15 + rdi]
add r8, qword [rbp - 0x10]
shr rax, 0x10
shl rcx, 0x30
or rcx, rax
mov qword [rsp + 0x28], rcx
lea rax, [r9 + rcx]
mov qword [rsp + 0x30], rax
xor rax, rdx
mov rcx, rax
add rax, rax
shr rcx, 0x3f
or rcx, rax
mov rax, r8
xor rax, qword [rsp]
mov qword [rsp + 0x20], rcx
mov rcx, rax
shl rax, 0x20
shr rcx, 0x20
or rcx, rax
lea r9, [r11 + rcx]
mov rax, r9
xor rax, rdi
mov rdx, rax
shr rax, 0x18
shl rdx, 0x28
or rdx, rax
lea r15, [r8 + rdx]
mov r8, qword [rsp + 0x40]
add r15, qword [rbp - 8]
mov rax, r15
xor rax, rcx
mov rbx, rax
shr rax, 0x10
shl rbx, 0x30
or rbx, rax
lea rax, [r9 + rbx]
mov qword [rsp + 0x48], rax
xor rax, rdx
mov rcx, rax
lea rdx, [r12 + rsi]
add rdx, qword [rbp]
add rax, rax
mov r12, qword [rbp + 8]
shr rcx, 0x3f
or rcx, rax
mov rax, qword [rsp + 0x18]
xor rax, rdx
mov qword [rsp], rcx
mov r9, rax
shl rax, 0x20
shr r9, 0x20
or r9, rax
add r8, r9
mov rax, r8
xor rax, rsi
mov rcx, rax
shr rax, 0x18
shl rcx, 0x28
or rcx, rax
add r12, rcx
add r12, rdx
xor r9, r12
mov rdi, r9
shr r9, 0x10
shl rdi, 0x30
or rdi, r9
lea r10, [r8 + rdi]
mov rax, r10
xor rax, rcx
mov rcx, rax
add rax, rax
shr rcx, 0x3f
or rcx, rax
mov rax, qword [rsp + 8]
mov qword [rsp + 0x18], rcx
mov rcx, qword [rsp + 0x38]
lea rdx, [r14 + rcx]
add rdx, qword [rbp + 0x10]
xor rax, rdx
mov r8, qword [rsp + 0x10]
mov r9, rax
shl rax, 0x20
shr r9, 0x20
or r9, rax
add r8, r9
mov rax, r8
xor rax, rcx
mov rcx, rax
shr rax, 0x18
shl rcx, 0x28
or rcx, rax
mov rax, qword [rbp + 0x18]
add rax, rcx
add rax, rdx
xor r9, rax
mov qword [rsp + 8], rax
mov r14, r9
shr r9, 0x10
shl r14, 0x30
or r14, r9
lea r11, [r8 + r14]
mov rax, r11
xor rax, rcx
mov rcx, rax
add rax, rax
shr rcx, 0x3f
or rcx, rax
lea rdx, [rcx + r13]
mov r13, qword [rbp - 0x10]
add rdx, qword [rbp + 0x10]
xor rbx, rdx
mov r9, rbx
shl rbx, 0x20
shr r9, 0x20
or r9, rbx
lea r8, [r10 + r9]
mov rax, r8
xor rax, rcx
mov rcx, rax
shr rax, 0x18
shl rcx, 0x28
or rcx, rax
add r13, rcx
add r13, rdx
mov rdx, qword [rbp - 0x40]
xor r9, r13
mov rax, r9
shr r9, 0x10
shl rax, 0x30
or rax, r9
mov qword [rsp + 0x10], rax
add rax, r8
mov qword [rsp + 0x40], rax
xor rax, rcx
mov rcx, rax
add rax, rax
shr rcx, 0x3f
or rcx, rax
mov qword [rsp + 0x38], rcx
mov rcx, qword [rsp + 0x20]
lea rax, [r15 + rcx]
mov r15, qword [rbp - 0x20]
add rdx, rax
xor rdi, rdx
mov r9, rdi
shl rdi, 0x20
shr r9, 0x20
or r9, rdi
lea r8, [r9 + r11]
mov rax, r8
xor rax, rcx
mov rcx, rax
shr rax, 0x18
shl rcx, 0x28
or rcx, rax
add r15, rcx
add r15, rdx
xor r9, r15
mov rax, r9
shl rax, 0x30
mov rdx, qword [rsp + 0x30]
shr r9, 0x10
or rax, r9
mov qword [rsp + 0x20], rax
add rax, r8
mov qword [rsp + 0x50], rax
xor rax, rcx
mov rcx, qword [rbp - 0x18]
mov rsi, rax
add rcx, qword [rsp]
add rax, rax
add rcx, r12
shr rsi, 0x3f
or rsi, rax
xor r14, rcx
mov r9, r14
shl r14, 0x20
shr r9, 0x20
or r9, r14
mov r14, qword [rbp + 0x18]
add rdx, r9
mov rax, rdx
xor rax, qword [rsp]
mov r8, rax
shr rax, 0x18
shl r8, 0x28
or r8, rax
add r14, r8
add r14, rcx
mov rcx, qword [rsp + 8]
xor r9, r14
mov rax, r9
shr r9, 0x10
shl rax, 0x30
or rax, r9
mov qword [rsp + 0x30], rax
lea r11, [rax + rdx]
mov rdx, qword [rsp + 0x48]
xor r8, r11
mov rdi, r8
shr rdi, 0x3f
lea rax, [r8 + r8]
or rdi, rax
mov rax, qword [rbp + 8]
add rax, qword [rsp + 0x18]
add rcx, rax
mov rax, qword [rsp + 0x28]
xor rax, rcx
mov r10, rax
shl rax, 0x20
shr r10, 0x20
or r10, rax
add rdx, r10
mov rax, rdx
xor rax, qword [rsp + 0x18]
mov r8, rax
shr rax, 0x18
shl r8, 0x28
or r8, rax
mov rax, qword [rbp - 0x30]
add rax, r8
add rax, rcx
mov rcx, qword [rbp - 0x58]
xor r10, rax
mov qword [rsp], rax
mov r9, r10
add rcx, rsi
shl r9, 0x30
add rcx, r13
shr r10, 0x10
or r9, r10
lea r10, [r9 + rdx]
xor r9, rcx
xor r8, r10
mov rbx, r8
shr rbx, 0x3f
lea rax, [r8 + r8]
mov r8, r9
shr r8, 0x20
or rbx, rax
shl r9, 0x20
mov r13, qword [rbp]
or r8, r9
lea rdx, [r8 + r11]
mov r11, qword [rbp - 0x28]
mov rax, rdx
xor rax, rsi
mov rsi, qword [rbp - 0x50]
mov r9, rax
shr rax, 0x18
shl r9, 0x28
or r9, rax
add r13, r9
mov qword [rsp + 0x18], r9
add r13, rcx
mov rcx, qword [rbp - 0x60]
add rcx, rdi
xor r8, r13
add rcx, r15
mov rax, r8
shl rax, 0x30
add rsi, rcx
shr r8, 0x10
or rax, r8
mov qword [rsp + 0x28], rax
add rax, rdx
mov qword [rsp + 8], rax
mov rax, qword [rsp + 0x10]
xor rax, rcx
mov rcx, qword [rbp - 8]
mov rdx, rax
add rcx, rbx
shl rax, 0x20
add rcx, r14
shr rdx, 0x20
add r11, rcx
or rdx, rax
lea r8, [r10 + rdx]
xor rdi, r8
mov rax, rdi
shr rdi, 0x18
shl rax, 0x28
or rax, rdi
add rsi, rax
mov qword [rsp + 0x10], rax
mov rax, rsi
xor rax, rdx
mov r15, rax
shr rax, 0x10
shl r15, 0x30
or r15, rax
mov rax, qword [rsp + 0x20]
xor rax, rcx
mov rcx, qword [rsp]
mov rdx, rax
shl rax, 0x20
shr rdx, 0x20
or rdx, rax
lea r12, [r8 + r15]
mov r8, qword [rsp + 0x40]
add r8, rdx
xor rbx, r8
mov r14, rbx
shr rbx, 0x18
shl r14, 0x28
or r14, rbx
add r11, r14
mov rax, r11
xor rax, rdx
mov rbx, rax
shr rax, 0x10
shl rbx, 0x30
or rbx, rax
mov rax, qword [rbp - 0x38]
add rax, qword [rsp + 0x38]
add rcx, rax
mov rax, qword [rsp + 0x30]
xor rax, rcx
mov rdx, rax
lea rdi, [r8 + rbx]
shr rdx, 0x20
shl rax, 0x20
mov r8, qword [rsp + 0x50]
or rdx, rax
mov r9, qword [rbp - 0x48]
add r8, rdx
add r9, rcx
mov rax, r8
xor rax, qword [rsp + 0x38]
mov r10, rax
shr rax, 0x18
shl r10, 0x28
or r10, rax
add r9, r10
mov rax, r9
xor rax, rdx
mov rdx, rax
shr rax, 0x10
shl rdx, 0x30
or rdx, rax
mov rax, rdi
xor rdi, r14
ror rdi, 0x3f
xor rdi, qword [rsp + 0x28]
lea rcx, [r8 + rdx]
mov r8, qword [rsp + 0x60]
xor rax, qword [r8]
xor rax, r13
mov qword [r8], rax
mov rax, rcx
xor rax, qword [rsp + 0x78]
xor rcx, r10
xor rax, rsi
ror rcx, 0x3f
xor rcx, qword [rbp - 0x70]
mov qword [r8 + 8], rax
xor rcx, r15
mov rax, qword [rsp + 8]
xor rax, qword [rbp - 0x80]
xor rax, r11
mov qword [r8 + 0x20], rcx
mov qword [r8 + 0x10], rax
mov rax, r12
xor rax, qword [rbp - 0x78]
xor r12, qword [rsp + 0x10]
xor rax, r9
mov qword [r8 + 0x18], rax
mov rax, qword [rsp + 0x18]
xor rax, qword [rsp + 8]
ror rax, 0x3f
xor rax, qword [rbp - 0x68]
ror r12, 0x3f
xor rax, rbx
xor r12, qword [rsp + 0x68]
xor r12, rdx
mov qword [r8 + 0x28], rax
xor rdi, qword [rsp + 0x70]
mov qword [r8 + 0x38], rdi
mov qword [r8 + 0x30], r12
mov rcx, qword [rbp + 0x20]
xor rcx, rsp
call fcn.1402200b0
lea r11, [rsp + 0x130]
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