Function at 0x180107100
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x20], r9
push rbx
push rbp
push rsi
push rdi
push r15
sub rsp, 0xc0
mov rax, qword [rcx]
mov rbp, r9
mov rbx, r8
mov rsi, rdx
mov rdi, rcx
call qword [rax + 0x20]
test al, al
jne 0x180107130
mov rcx, rdi
call fcn.1800a53c0
mov r10, qword [rdi + 0x20]
mov r15, qword [rdi + 8]
mov qword [rsp + 0x50], r10
mov qword [rsp + 0x78], r15
test rbp, rbp
je 0x180109510
sub rbx, rsi
mov qword [rsp + 0xf8], r12
lea r9, [rsi + 0x20]
mov qword [rsp + 0xb8], r13
mov qword [rsp + 0xb0], r14
mov qword [rsp + 0x70], r9
lea rax, [rbx - 0x18]
mov qword [rsp + 0x100], rbx
mov qword [rsp + 0x90], rax
lea rax, [rbx - 0x10]
mov qword [rsp + 0x98], rax
lea rax, [rbx - 8]
mov qword [rsp + 0xa0], rax
lea rax, [rbx - 0x20]
mov qword [rsp + 0x88], rax
nop word [rax + rax]
mov rdi, qword [r9 - 0x10]
mov r14, qword [r9]
mov rcx, qword [r9 + 0x10]
mov rdx, qword [r9 - 0x18]
mov r8, qword [r9 + 0x18]
mov r11, qword [r9 - 0x20]
mov rax, qword [r10 + 0x10]
mov rbx, qword [r10 + 0x30]
sub rdi, rax
mov r12, qword [r10 + 8]
mov r13, qword [r10 + 0x28]
sub rdx, r12
mov rsi, qword [r10]
mov rbp, qword [r15]
sub r11, rsi
mov qword [rsp + 0x38], rax
mov rax, qword [r10 + 0x20]
sub r14, rax
mov qword [rsp + 0x40], rax
mov rax, qword [r15 + 8]
mov r15, qword [r10 + 0x18]
sub rcx, rax
mov qword [rsp + 0x58], rax
sub rcx, rbx
mov rax, qword [r10 + 0x38]
xor rdx, rcx
sub r8, rax
mov qword [rsp + 0x48], rax
mov rax, qword [r9 + 8]
sub r8, 0x12
sub rax, rbp
mov qword [rsp + 0xf0], rcx
mov rcx, qword [r9 - 8]
sub rax, r13
xor rax, rdi
mov qword [rsp + 0x68], rbx
sub rcx, r15
mov qword [rsp + 0x60], rbp
xor rcx, r14
mov r9, rdx
shl r9, 0x38
xor r8, r11
shr rdx, 8
mov r10, r8
or r9, rdx
shl r8, 0x1d
mov rdx, rax
shr r10, 0x23
shl rax, 8
or r10, r8
shr rdx, 0x38
sub r11, r10
or rdx, rax
mov rax, rcx
shr rcx, 0x16
sub rdi, rdx
shl rax, 0x2a
xor rdx, r11
or rax, rcx
xor r10, rdi
mov rcx, qword [rsp + 0xf0]
sub r14, rax
sub rcx, r9
mov r8, rdx
xor rax, rcx
mov qword [rsp + 0xf0], rcx
xor r9, r14
shr r8, 0x27
mov rcx, r9
shl rdx, 0x19
shr r9, 0x19
or r8, rdx
shl rcx, 0x27
or rcx, r9
mov r9, rax
shr rax, 0x1d
shl r9, 0x23
or r9, rax
mov rax, r10
shr rax, 0x2b
shl r10, 0x15
mov rdx, qword [rsp + 0xf0]
or rax, r10
sub rdi, rax
sub rdx, r9
sub r11, r8
mov qword [rsp + 0xf0], rdx
xor r8, rdx
sub r14, rcx
xor rax, r14
xor rcx, rdi
mov r10, rax
xor r9, r11
shl rax, 0xe
mov rdx, rcx
shl rdx, 0x33
shr rcx, 0xd
or rdx, rcx
shr r10, 0x32
or r10, rax
sub rdi, rdx
mov rcx, r8
mov qword [rsp + 0x30], rdi
shr r8, 0xa
sub r14, r10
shl rcx, 0x36
mov rax, r9
or rcx, r8
shl rax, 0x2f
mov r8, qword [rsp + 0xf0]
sub r8, rcx
shr r9, 0x11
or rax, r9
mov qword [rsp + 0xf0], r8
mov r9, qword [rsp + 0x30]
sub r11, rax
xor rax, rdi
mov qword [rsp + 0x28], r11
xor rdx, r11
mov qword [rsp + 0x20], r14
xor r10, r8
mov rdi, rax
shr rax, 0x1e
mov r8, rdx
shl rdx, 0x19
xor rcx, r14
shr r8, 0x27
mov r11, rcx
or r8, rdx
shl rcx, 0x1e
mov rdx, r10
shl rdi, 0x22
or rdi, rax
shl rdx, 0x28
mov rax, qword [rsp + 0x50]
shr r10, 0x18
or rdx, r10
shr r11, 0x22
mov r10, qword [rsp + 0x20]
or r11, rcx
mov r14, qword [rax + 0x40]
mov rcx, qword [rsp + 0x28]
lea rax, [r14 + r8]
sub r8, rsi
mov rsi, qword [rsp + 0x78]
sub rcx, rax
lea rax, [r12 + rdi]
mov qword [rsp + 0x28], rcx
sub r9, rax
lea rax, [r15 + r11]
sub r10, rax
mov qword [rsp + 0x30], r9
mov rsi, qword [rsi + 0x10]
mov rax, r13
add rax, rbp
mov qword [rsp + 0x80], rsi
add rax, rdx
sub rdx, rbx
sub qword [rsp + 0xf0], rax
sub rdx, 0x11
xor r8, qword [rsp + 0xf0]
xor rdx, rcx
sub rdi, qword [rsp + 0x38]
mov rcx, r8
xor rdi, r10
shl r8, 0x14
shr rcx, 0x2c
sub r11, rsi
sub r11, qword [rsp + 0x40]
or rcx, r8
mov r8, qword [rsp + 0xf0]
xor r11, r9
sub r8, rcx
mov r9, rdx
shr rdx, 9
mov rax, rdi
shr rax, 0x38
mov qword [rsp + 0xf0], r8
shl r9, 0x37
or r9, rdx
shl rdi, 8
or rax, rdi
mov rdx, r11
mov rdi, qword [rsp + 0x30]
sub r10, rax
xor rax, r8
shr rdx, 0x36
xor rcx, r10
mov qword [rsp + 0x20], r10
mov r10, rax
shl r11, 0xa
or rdx, r11
shl rax, 0xf
mov r11, qword [rsp + 0x28]
sub rdi, rdx
sub r11, r9
shr r10, 0x31
or r10, rax
xor rdx, r11
xor r9, rdi
mov r8, rcx
shr rcx, 0x11
mov rax, r9
shl r8, 0x2f
or r8, rcx
shr rax, 0x27
mov rcx, rdx
shl r9, 0x19
or rax, r9
shl rdx, 0x1c
mov r9, qword [rsp + 0xf0]
sub rdi, rax
sub r9, r10
shr rcx, 0x24
or rcx, rdx
mov qword [rsp + 0xf0], r9
mov rdx, qword [rsp + 0x20]
sub r11, rcx
sub rdx, r8
xor rcx, r9
xor rax, rdx
mov qword [rsp + 0x20], rdx
xor r8, rdi
mov r9, rax
mov rdx, r8
shr rax, 0x1b
shl r8, 0x1f
xor r10, r11
shl r9, 0x25
or r9, rax
shr rdx, 0x21
or rdx, r8
mov rax, r10
mov r8, rcx
shr rax, 0x2a
shr rcx, 0xe
shl r8, 0x32
shl r10, 0x16
or r8, rcx
mov rcx, qword [rsp + 0x20]
or rax, r10
sub rdi, rdx
mov qword [rsp + 0x30], rdi
mov r10, qword [rsp + 0xf0]
sub r11, rax
xor rax, rdi
mov qword [rsp + 0x28], r11
xor rdx, r11
sub r10, r8
sub rcx, r9
mov qword [rsp + 0xf0], r10
xor r9, r10
mov qword [rsp + 0x20], rcx
mov rdi, rax
mov r10, rdx
shl rax, 0x1c
xor r8, rcx
mov rcx, qword [rsp + 0x28]
mov r11, r8
shl rdx, 0x12
shl r11, 0x2d
shr rdi, 0x24
or rdi, rax
shr r10, 0x2e
mov rax, qword [rsp + 0x48]
or r10, rdx
add rax, r10
shr r8, 0x13
sub rcx, rax
or r11, r8
mov r8, qword [rsp + 0x20]
mov rdx, r9
mov rax, qword [rsp + 0x50]
sub r10, r14
shr rdx, 0x25
shl r9, 0x1b
or rdx, r9
mov qword [rsp + 0x28], rcx
mov rax, qword [rax]
mov r9, qword [rsp + 0x30]
add rax, rdi
sub r9, rax
sub rdi, r12
mov rax, qword [rsp + 0x38]
add rax, r11
mov qword [rsp + 0x30], r9
sub r8, rax
sub r11, r15
sub r11, qword [rsp + 0x58]
xor rdi, r8
mov rax, qword [rsp + 0x40]
xor r11, r9
add rax, rsi
add rax, rdx
sub rdx, r13
sub qword [rsp + 0xf0], rax
sub rdx, 0x10
xor r10, qword [rsp + 0xf0]
xor rdx, rcx
mov r9, rdx
mov rcx, r10
shl rdx, 0x1d
mov rax, rdi
shr r10, 8
shr rdi, 0x16
shr r9, 0x23
or r9, rdx
shl rcx, 0x38
mov rdx, r11
shl rax, 0x2a
shl r11, 8
or rcx, r10
mov r10, qword [rsp + 0xf0]
or rax, rdi
mov rdi, qword [rsp + 0x30]
sub r10, rcx
shr rdx, 0x38
or rdx, r11
mov qword [rsp + 0xf0], r10
mov r11, qword [rsp + 0x28]
sub rdi, rdx
sub r11, r9
sub r8, rax
mov qword [rsp + 0x20], r8
xor rax, r10
xor rcx, r8
xor rdx, r11
xor r9, rdi
mov r10, rax
mov r8, rcx
shr rax, 0x1d
shr rcx, 0x19
shl r8, 0x27
or r8, rcx
shl r10, 0x23
or r10, rax
mov rcx, rdx
shl rdx, 0x19
mov rax, r9
shr rax, 0x2b
shl r9, 0x15
or rax, r9
shr rcx, 0x27
mov r9, qword [rsp + 0xf0]
or rcx, rdx
mov rdx, qword [rsp + 0x20]
sub r9, r10
sub rdx, r8
mov qword [rsp + 0xf0], r9
sub rdi, rax
mov qword [rsp + 0x20], rdx
xor rax, rdx
xor r8, rdi
sub r11, rcx
mov rdx, r8
xor r10, r11
shl rdx, 0x33
xor rcx, r9
shr r8, 0xd
or rdx, r8
mov r9, rax
sub rdi, rdx
shl rax, 0xe
mov r8, rcx
shr r9, 0x32
or r9, rax
shr rcx, 0xa
mov rax, r10
shl r8, 0x36
shr r10, 0x11
or r8, rcx
mov rcx, qword [rsp + 0x20]
sub rcx, r9
shl rax, 0x2f
or rax, r10
mov qword [rsp + 0x30], rdi
mov r10, qword [rsp + 0xf0]
sub r11, rax
xor rdx, r11
mov qword [rsp + 0x28], r11
sub r10, r8
mov qword [rsp + 0x20], rcx
xor r9, r10
mov qword [rsp + 0xf0], r10
xor rax, rdi
mov r10, rdx
shl rdx, 0x19
xor r8, rcx
mov rcx, qword [rsp + 0x28]
mov rdi, rax
shr rax, 0x1e
mov r11, r8
shr r10, 0x27
or r10, rdx
shl rdi, 0x22
mov rdx, r9
shr r11, 0x22
shl rdx, 0x28
or rdi, rax
shl r8, 0x1e
shr r9, 0x18
lea rax, [rbx + r10]
or rdx, r9
or r11, r8
sub rcx, rax
sub r10, qword [rsp + 0x48]
lea rax, [r14 + rdi]
mov r8, qword [rsp + 0x20]
mov r9, qword [rsp + 0x30]
sub r9, rax
mov qword [rsp + 0x28], rcx
lea rax, [r12 + r11]
mov qword [rsp + 0x30], r9
sub r8, rax
sub r11, rbp
sub r11, qword [rsp + 0x38]
mov rax, qword [rsp + 0x58]
xor r11, r9
add rax, r15
add rax, rdx
sub rdx, qword [rsp + 0x40]
sub qword [rsp + 0xf0], rax
sub rdx, 0xf
xor r10, qword [rsp + 0xf0]
xor rdx, rcx
mov rcx, qword [rsp + 0x50]
mov r9, rdx
shr rdx, 9
shl r9, 0x37
or r9, rdx
mov rdx, r11
sub rdi, qword [rcx]
mov rcx, r10
xor rdi, r8
shr rcx, 0x2c
shl r10, 0x14
mov rax, rdi
or rcx, r10
shr rax, 0x38
mov r10, qword [rsp + 0xf0]
sub r10, rcx
shr rdx, 0x36
mov qword [rsp + 0xf0], r10
shl rdi, 8
or rax, rdi
shl r11, 0xa
mov rdi, qword [rsp + 0x30]
sub r8, rax
xor rcx, r8
mov qword [rsp + 0x20], r8
or rdx, r11
xor rax, r10
mov r11, qword [rsp + 0x28]
sub rdi, rdx
sub r11, r9
mov r8, rcx
xor rdx, r11
shr rcx, 0x11
mov r10, rax
shl r8, 0x2f
or r8, rcx
shl rax, 0xf
xor r9, rdi
shr r10, 0x31
or r10, rax
mov rcx, rdx
shl rdx, 0x1c
mov rax, r9
shl r9, 0x19
shr rcx, 0x24
or rcx, rdx
shr rax, 0x27
mov rdx, qword [rsp + 0x20]
or rax, r9
mov r9, qword [rsp + 0xf0]
sub rdx, r8
sub r9, r10
mov qword [rsp + 0x20], rdx
sub rdi, rax
mov qword [rsp + 0xf0], r9
sub r11, rcx
xor rax, rdx
xor r8, rdi
xor rcx, r9
xor r10, r11
mov rdx, r8
mov r9, rax
shr rdx, 0x21
shr rax, 0x1b
shl r8, 0x1f
or rdx, r8
shl r9, 0x25
or r9, rax
sub rdi, rdx
mov rax, r10
mov qword [rsp + 0x30], rdi
shr rax, 0x2a
mov r8, rcx
shl r10, 0x16
or rax, r10
shr rcx, 0xe
mov r10, qword [rsp + 0xf0]
sub r11, rax
xor rdx, r11
mov qword [rsp + 0x28], r11
xor rax, rdi
shl r8, 0x32
or r8, rcx
mov rdi, rax
mov rcx, qword [rsp + 0x20]
sub r10, r8
sub rcx, r9
shl rax, 0x1c
xor r9, r10
mov qword [rsp + 0xf0], r10
xor r8, rcx
mov qword [rsp + 0x20], rcx
mov rcx, qword [rsp + 0x28]
mov r10, rdx
shl rdx, 0x12
mov r11, r8
shr r10, 0x2e
or r10, rdx
shl r11, 0x2d
mov rdx, r9
shr r8, 0x13
or r11, r8
shr rdx, 0x25
mov r8, qword [rsp + 0x50]
shl r9, 0x1b
or rdx, r9
shr rdi, 0x24
mov r9, qword [rsp + 0x30]
or rdi, rax
lea rax, [r10 + r13]
sub r10, rbx
sub rcx, rax
mov rax, qword [rsp + 0x48]
add rax, rdi
mov qword [rsp + 0x28], rcx
sub r9, rax
sub rdi, r14
mov rax, qword [r8]
mov r8, qword [rsp + 0x20]
add rax, r11
sub r8, rax
mov qword [rsp + 0x30], r9
mov rax, qword [rsp + 0x38]
sub r11, rsi
add rax, rbp
sub r11, r12
add rax, rdx
xor r11, r9
sub qword [rsp + 0xf0], rax
sub rdx, r15
xor r10, qword [rsp + 0xf0]
sub rdx, 0xe
xor rdx, rcx
xor rdi, r8
mov rcx, r10
mov r9, rdx
shl rcx, 0x38
shr r10, 8
or rcx, r10
shr r9, 0x23
shl rdx, 0x1d
or r9, rdx
mov r10, qword [rsp + 0xf0]
mov rax, rdi
sub r10, rcx
shl rax, 0x2a
mov qword [rsp + 0xf0], r10
mov rdx, r11
shr rdx, 0x38
shr rdi, 0x16
or rax, rdi
shl r11, 8
mov rdi, qword [rsp + 0x30]
sub r8, rax
xor rax, r10
mov qword [rsp + 0x20], r8
xor rcx, r8
or rdx, r11
mov r11, qword [rsp + 0x28]
sub rdi, rdx
sub r11, r9
mov r10, rax
xor rdx, r11
shr rax, 0x1d
xor r9, rdi
shl r10, 0x23
or r10, rax
mov r8, rcx
shr rcx, 0x19
mov rax, r9
shl r8, 0x27
or r8, rcx
shr rax, 0x2b
mov rcx, rdx
shl r9, 0x15
or rax, r9
shl rdx, 0x19
mov r9, qword [rsp + 0xf0]
sub rdi, rax
sub r9, r10
shr rcx, 0x27
or rcx, rdx
mov qword [rsp + 0xf0], r9
mov rdx, qword [rsp + 0x20]
sub r11, rcx
sub rdx, r8
xor rcx, r9
xor rax, rdx
mov qword [rsp + 0x20], rdx
xor r8, rdi
xor r10, r11
mov r9, rax
mov rdx, r8
shl rax, 0xe
shr r8, 0xd
shr r9, 0x32
or r9, rax
shl rdx, 0x33
or rdx, r8
mov rax, r10
shr r10, 0x11
mov r8, rcx
shr rcx, 0xa
sub rdi, rdx
shl rax, 0x2f
or rax, r10
shl r8, 0x36
mov r10, qword [rsp + 0xf0]
or r8, rcx
mov rcx, qword [rsp + 0x20]
sub r10, r8
sub r11, rax
mov qword [rsp + 0xf0], r10
sub rcx, r9
mov qword [rsp + 0x30], rdi
xor rdx, r11
mov qword [rsp + 0x20], rcx
xor r9, r10
mov qword [rsp + 0x28], r11
mov r10, rdx
xor rax, rdi
xor r8, rcx
shr r10, 0x27
mov rcx, qword [rsp + 0x28]
mov rdi, rax
shl rdx, 0x19
mov r11, r8
or r10, rdx
shr rax, 0x1e
mov rdx, r9
shr r11, 0x22
shl rdx, 0x28
shl r8, 0x1e
or r11, r8
shr r9, 0x18
mov r8, qword [rsp + 0x20]
or rdx, r9
mov r9, qword [rsp + 0x30]
shl rdi, 0x22
or rdi, rax
mov rax, qword [rsp + 0x40]
add rax, r10
sub r10, r13
sub rcx, rax
mov qword [rsp + 0x28], rcx
lea rax, [rbx + rdi]
sub rdi, qword [rsp + 0x48]
mov rbx, qword [rsp + 0xf0]
sub r9, rax
lea rax, [r14 + r11]
mov qword [rsp + 0x30], r9
sub r11, qword [rsp + 0x58]
sub r8, rax
xor rdi, r8
lea rax, [rsi + r12]
add rax, rdx
sub rdx, qword [rsp + 0x38]
sub rbx, rax
sub rdx, 0xd
xor rdx, rcx
xor r10, rbx
mov rcx, qword [rsp + 0x50]
mov rax, rdi
shr rax, 0x38
shl rdi, 8
or rax, rdi
mov rdi, qword [rsp + 0x30]
sub r11, qword [rcx]
sub r8, rax
xor r11, r9
mov qword [rsp + 0x20], r8
mov r9, rdx
mov rcx, r10
shr rdx, 9
shr rcx, 0x2c
shl r10, 0x14
or rcx, r10
shl r9, 0x37
or r9, rdx
sub rbx, rcx
xor rcx, r8
mov rdx, r11
mov r8, rcx
shr rdx, 0x36
shl r11, 0xa
xor rax, rbx
or rdx, r11
shr rcx, 0x11
mov r11, qword [rsp + 0x28]
sub rdi, rdx
sub r11, r9
shl r8, 0x2f
xor rdx, r11
mov r10, rax
or r8, rcx
shl rax, 0xf
mov rcx, rdx
shr r10, 0x31
xor r9, rdi
shr rcx, 0x24
or r10, rax
shl rdx, 0x1c
or rcx, rdx
mov rax, r9
mov rdx, qword [rsp + 0x20]
sub r11, rcx
mov rbp, qword [rsp + 0x50]
sub rdx, r8
shr rax, 0x27
sub rbx, r10
mov qword [rsp + 0x20], rdx
xor r10, r11
shl r9, 0x19
xor rcx, rbx
or rax, r9
sub rdi, rax
xor rax, rdx
mov r9, rax
xor r8, rdi
shr rax, 0x1b
mov rdx, r8
shr rdx, 0x21
shl r8, 0x1f
or rdx, r8
shl r9, 0x25
or r9, rax
sub rdi, rdx
mov rax, r10
mov qword [rsp + 0x30], rdi
shr rax, 0x2a
mov r8, rcx
shl r10, 0x16
or rax, r10
shl r8, 0x32
sub r11, rax
shr rcx, 0xe
xor rdx, r11
mov qword [rsp + 0x28], r11
xor rax, rdi
or r8, rcx
mov rcx, qword [rsp + 0x20]
mov rdi, rax
sub rcx, r9
shl rax, 0x1c
mov r10, rdx
mov qword [rsp + 0x20], rcx
shl rdx, 0x12
sub rbx, r8
xor r8, rcx
shr r10, 0x2e
mov rcx, qword [rsp + 0x28]
or r10, rdx
xor r9, rbx
shr rdi, 0x24
or rdi, rax
mov rdx, r9
shr rdx, 0x25
mov r11, r8
lea rax, [r15 + r10]
shl r9, 0x1b
sub r10, qword [rsp + 0x40]
sub rcx, rax
or rdx, r9
shr r8, 0x13
mov r9, qword [rsp + 0x30]
lea rax, [rdi + r13]
sub r9, rax
shl r11, 0x2d
mov rax, qword [rsp + 0x48]
or r11, r8
mov r8, qword [rsp + 0x20]
add rax, r11
sub r8, rax
mov qword [rsp + 0x28], rcx
mov rax, qword [rbp]
add rax, qword [rsp + 0x58]
add rax, rdx
mov qword [rsp + 0x30], r9
sub rdx, r12
sub rbx, rax
sub rdx, 0xc
mov qword [rsp + 0xf0], rbx
xor rdx, rcx
xor r10, rbx
sub r11, r14
mov rbp, qword [rsp + 0x60]
mov rcx, r10
mov rbx, qword [rsp + 0x68]
sub r11, rbp
xor r11, r9
shl rcx, 0x38
mov r9, rdx
shr r10, 8
or rcx, r10
shl rdx, 0x1d
mov r10, qword [rsp + 0xf0]
sub rdi, rbx
xor rdi, r8
shr r9, 0x23
or r9, rdx
sub r10, rcx
mov qword [rsp + 0xf0], r10
mov rax, rdi
shl rax, 0x2a
mov rdx, r11
shr rdx, 0x38
shr rdi, 0x16
or rax, rdi
shl r11, 8
mov rdi, qword [rsp + 0x30]
sub r8, rax
xor rcx, r8
mov qword [rsp + 0x20], r8
xor rax, r10
or rdx, r11
mov r11, qword [rsp + 0x28]
mov r10, rax
sub r11, r9
shr rax, 0x1d
sub rdi, rdx
shl r10, 0x23
or r10, rax
xor rdx, r11
xor r9, rdi
mov r8, rcx
shl r8, 0x27
mov rax, r9
shr rcx, 0x19
or r8, rcx
shr rax, 0x2b
mov rcx, rdx
shl r9, 0x15
or rax, r9
shl rdx, 0x19
mov r9, qword [rsp + 0xf0]
sub rdi, rax
sub r9, r10
shr rcx, 0x27
or rcx, rdx
mov qword [rsp + 0xf0], r9
mov rdx, qword [rsp + 0x20]
sub r11, rcx
sub rdx, r8
xor rcx, r9
xor rax, rdx
mov qword [rsp + 0x20], rdx
xor r8, rdi
mov r9, rax
mov rdx, r8
shl rax, 0xe
shr r8, 0xd
xor r10, r11
shr r9, 0x32
or r9, rax
shl rdx, 0x33
or rdx, r8
mov rax, r10
mov r8, rcx
shl rax, 0x2f
shl r8, 0x36
shr rcx, 0xa
shr r10, 0x11
or r8, rcx
or rax, r10
sub rdi, rdx
mov qword [rsp + 0x30], rdi
mov r10, qword [rsp + 0xf0]
sub r11, rax
mov rcx, qword [rsp + 0x20]
xor rdx, r11
xor rax, rdi
mov qword [rsp + 0x28], r11
sub r10, r8
sub rcx, r9
xor r9, r10
mov qword [rsp + 0xf0], r10
mov rdi, rax
mov qword [rsp + 0x20], rcx
mov r10, rdx
shr rax, 0x1e
shl rdx, 0x19
xor r8, rcx
mov rcx, qword [rsp + 0x28]
mov r11, r8
shr r11, 0x22
shl rdi, 0x22
or rdi, rax
shr r10, 0x27
mov rax, qword [rsp + 0x38]
or r10, rdx
add rax, r10
shl r8, 0x1e
sub rcx, rax
or r11, r8
mov r8, qword [rsp + 0x20]
mov rdx, r9
mov rax, qword [rsp + 0x40]
sub r10, r15
add rax, rdi
shl rdx, 0x28
shr r9, 0x18
sub rdi, r13
or rdx, r9
mov qword [rsp + 0x28], rcx
mov r9, qword [rsp + 0x30]
sub r9, rax
lea rax, [rbx + r11]
sub r8, rax
mov qword [rsp + 0x30], r9
sub r11, rsi
lea rax, [r14 + rbp]
sub r11, qword [rsp + 0x48]
add rax, rdx
sub qword [rsp + 0xf0], rax
xor r11, r9
xor r10, qword [rsp + 0xf0]
xor rdi, r8
mov rbp, qword [rsp + 0x50]
mov rax, rdi
shl rdi, 8
shr rax, 0x38
or rax, rdi
mov rdi, qword [rsp + 0x30]
sub rdx, qword [rbp]
sub r8, rax
sub rdx, 0xb
mov qword [rsp + 0x20], r8
xor rdx, rcx
mov rcx, r10
mov r9, rdx
shl r10, 0x14
shr rdx, 9
shl r9, 0x37
or r9, rdx
shr rcx, 0x2c
mov rdx, r11
or rcx, r10
mov r10, qword [rsp + 0xf0]
shl r11, 0xa
sub r10, rcx
shr rdx, 0x36
or rdx, r11
mov qword [rsp + 0xf0], r10
mov r11, qword [rsp + 0x28]
sub rdi, rdx
sub r11, r9
xor rcx, r8
xor rax, r10
xor rdx, r11
xor r9, rdi
mov r10, rax
shl rax, 0xf
mov r8, rcx
shr rcx, 0x11
shl r8, 0x2f
or r8, rcx
shr r10, 0x31
or r10, rax
mov rcx, rdx
shl rdx, 0x1c
mov rax, r9
shr rax, 0x27
shl r9, 0x19
or rax, r9
shr rcx, 0x24
mov r9, qword [rsp + 0xf0]
or rcx, rdx
mov rdx, qword [rsp + 0x20]
sub r9, r10
sub rdx, r8
mov qword [rsp + 0xf0], r9
sub rdi, rax
mov qword [rsp + 0x20], rdx
xor rax, rdx
xor r8, rdi
sub r11, rcx
mov rdx, r8
xor r10, r11
shr rdx, 0x21
xor rcx, r9
shl r8, 0x1f
or rdx, r8
mov r9, rax
sub rdi, rdx
shr rax, 0x1b
mov r8, rcx
shl r9, 0x25
or r9, rax
shr rcx, 0xe
mov rax, r10
shl r8, 0x32
shl r10, 0x16
or r8, rcx
mov rcx, qword [rsp + 0x20]
sub rcx, r9
shr rax, 0x2a
or rax, r10
mov qword [rsp + 0x30], rdi
mov r10, qword [rsp + 0xf0]
sub r11, rax
xor rdx, r11
mov qword [rsp + 0x28], r11
sub r10, r8
mov qword [rsp + 0x20], rcx
xor r9, r10
mov qword [rsp + 0xf0], r10
xor rax, rdi
mov r10, rdx
shl rdx, 0x12
xor r8, rcx
mov rcx, qword [rsp + 0x28]
mov rdi, rax
shl rax, 0x1c
mov r11, r8
shr r10, 0x2e
or r10, rdx
shr rdi, 0x24
mov rdx, r9
shl r11, 0x2d
shr rdx, 0x25
or rdi, rax
shr r8, 0x13
shl r9, 0x1b
lea rax, [r12 + r10]
or rdx, r9
or r11, r8
sub rcx, rax
mov qword [rsp + 0x28], rcx
sub r10, qword [rsp + 0x38]
lea rax, [r15 + rdi]
sub rdi, qword [rsp + 0x40]
mov r8, qword [rsp + 0x20]
mov r9, qword [rsp + 0x30]
sub r9, rax
lea rax, [r11 + r13]
sub r11, qword [rsp + 0x58]
sub r8, rax
mov rax, qword [rsp + 0x48]
xor rdi, r8
add rax, rsi
mov qword [rsp + 0x30], r9
add rax, rdx
sub r11, rbx
sub qword [rsp + 0xf0], rax
sub rdx, r14
xor r10, qword [rsp + 0xf0]
xor r11, r9
sub rdx, 0xa
mov rax, rdi
xor rdx, rcx
shl rax, 0x2a
mov r9, rdx
shr rdi, 0x16
shl rdx, 0x1d
or rax, rdi
mov rdi, qword [rsp + 0x30]
sub r8, rax
mov rcx, r10
mov qword [rsp + 0x20], r8
shl rcx, 0x38
shr r10, 8
or rcx, r10
shr r9, 0x23
mov r10, qword [rsp + 0xf0]
or r9, rdx
sub r10, rcx
mov rdx, r11
xor rcx, r8
shr rdx, 0x38
xor rax, r10
mov qword [rsp + 0xf0], r10
mov r8, rcx
shl r11, 8
or rdx, r11
shr rcx, 0x19
mov r11, qword [rsp + 0x28]
sub rdi, rdx
sub r11, r9
shl r8, 0x27
xor rdx, r11
or r8, rcx
mov r10, rax
xor r9, rdi
shr rax, 0x1d
mov rcx, rdx
shl rdx, 0x19
shl r10, 0x23
or r10, rax
shr rcx, 0x27
or rcx, rdx
mov rax, r9
mov rdx, qword [rsp + 0x20]
sub r11, rcx
sub rdx, r8
shl r9, 0x15
shr rax, 0x2b
or rax, r9
mov qword [rsp + 0x20], rdx
mov r9, qword [rsp + 0xf0]
sub rdi, rax
sub r9, r10
xor rax, rdx
xor r8, rdi
mov qword [rsp + 0xf0], r9
mov rdx, r8
xor rcx, r9
shl rdx, 0x33
xor r10, r11
shr r8, 0xd
or rdx, r8
mov r9, rax
sub rdi, rdx
shl rax, 0xe
shr r9, 0x32
mov r8, rcx
or r9, rax
shr rcx, 0xa
mov rax, r10
mov qword [rsp + 0x30], rdi
shl rax, 0x2f
shr r10, 0x11
or rax, r10
shl r8, 0x36
mov r10, qword [rsp + 0xf0]
sub r11, rax
xor rdx, r11
mov qword [rsp + 0x28], r11
xor rax, rdi
or r8, rcx
mov rcx, qword [rsp + 0x20]
sub r10, r8
sub rcx, r9
mov qword [rsp + 0xf0], r10
xor r9, r10
mov qword [rsp + 0x20], rcx
mov rdi, rax
mov r10, rdx
shr rax, 0x1e
xor r8, rcx
mov rcx, qword [rsp + 0x28]
mov r11, r8
shl rdx, 0x19
shr r10, 0x27
or r10, rdx
shr r11, 0x22
mov rdx, r9
shl rdi, 0x22
or rdi, rax
shl rdx, 0x28
mov rax, qword [rbp]
add rax, r10
shr r9, 0x18
sub rcx, rax
shl r8, 0x1e
mov rax, qword [rsp + 0x38]
or rdx, r9
mov r9, qword [rsp + 0x30]
add rax, rdi
sub r9, rax
mov qword [rsp + 0x28], rcx
mov rax, qword [rsp + 0x40]
or r11, r8
mov r8, qword [rsp + 0x20]
add rax, r11
sub r11, qword [rsp + 0x60]
sub r8, rax
mov rax, qword [rsp + 0x58]
sub r10, r12
mov qword [rsp + 0x30], r9
add rax, rbx
add rax, rdx
sub r11, r13
sub rdx, qword [rsp + 0x48]
xor r11, r9
sub qword [rsp + 0xf0], rax
sub rdx, 9
xor r10, qword [rsp + 0xf0]
xor rdx, rcx
mov r9, rdx
mov rcx, r10
shr rdx, 9
sub rdi, r15
shl r9, 0x37
xor rdi, r8
shr rcx, 0x2c
or r9, rdx
shl r10, 0x14
mov rdx, r11
or rcx, r10
shr rdx, 0x36
mov r10, qword [rsp + 0xf0]
mov rax, rdi
sub r10, rcx
shr rax, 0x38
mov qword [rsp + 0xf0], r10
shl rdi, 8
or rax, rdi
shl r11, 0xa
mov rdi, qword [rsp + 0x30]
sub r8, rax
xor rax, r10
mov qword [rsp + 0x20], r8
xor rcx, r8
or rdx, r11
mov r11, qword [rsp + 0x28]
sub rdi, rdx
sub r11, r9
mov r10, rax
xor rdx, r11
shl rax, 0xf
xor r9, rdi
shr r10, 0x31
or r10, rax
mov r8, rcx
shr rcx, 0x11
mov rax, r9
shl r8, 0x2f
or r8, rcx
shr rax, 0x27
mov rcx, rdx
shl r9, 0x19
or rax, r9
shl rdx, 0x1c
mov r9, qword [rsp + 0xf0]
sub rdi, rax
sub r9, r10
shr rcx, 0x24
or rcx, rdx
mov qword [rsp + 0xf0], r9
mov rdx, qword [rsp + 0x20]
sub r11, rcx
sub rdx, r8
xor rcx, r9
xor rax, rdx
mov qword [rsp + 0x20], rdx
xor r8, rdi
xor r10, r11
mov r9, rax
mov rdx, r8
shr rax, 0x1b
shl r8, 0x1f
shr rdx, 0x21
or rdx, r8
shl r9, 0x25
or r9, rax
sub rdi, rdx
mov rax, r10
mov qword [rsp + 0x30], rdi
shl r10, 0x16
mov r8, rcx
shr rcx, 0xe
shr rax, 0x2a
or rax, r10
shl r8, 0x32
mov r10, qword [rsp + 0xf0]
or r8, rcx
mov rcx, qword [rsp + 0x20]
sub r10, r8
sub r11, rax
mov qword [rsp + 0xf0], r10
sub rcx, r9
mov qword [rsp + 0x28], r11
xor rdx, r11
mov qword [rsp + 0x20], rcx
xor r9, r10
xor rax, rdi
mov r10, rdx
xor r8, rcx
shr r10, 0x2e
shl rdx, 0x12
or r10, rdx
mov rcx, qword [rsp + 0x28]
mov rdi, rax
shl rax, 0x1c
mov rdx, r9
shr rdx, 0x25
mov r11, r8
shl r11, 0x2d
shr r8, 0x13
or r11, r8
shl r9, 0x1b
mov r8, qword [rsp + 0x20]
or rdx, r9
mov r9, qword [rsp + 0x30]
shr rdi, 0x24
or rdi, rax
lea rax, [r14 + r10]
sub r10, qword [rbp]
sub rcx, rax
mov qword [rsp + 0x28], rcx
lea rax, [r12 + rdi]
sub rdi, qword [rsp + 0x38]
sub r9, rax
lea rax, [r15 + r11]
sub r8, rax
mov qword [rsp + 0x30], r9
xor rdi, r8
sub r11, rsi
sub r11, qword [rsp + 0x40]
mov rax, r13
add rax, qword [rsp + 0x60]
xor r11, r9
add rax, rdx
sub rdx, rbx
sub qword [rsp + 0xf0], rax
sub rdx, 8
xor r10, qword [rsp + 0xf0]
xor rdx, rcx
mov r9, rdx
mov rcx, r10
shl rdx, 0x1d
mov rax, rdi
shl rcx, 0x38
shr r10, 8
or rcx, r10
shl rax, 0x2a
mov r10, qword [rsp + 0xf0]
sub r10, rcx
shr rdi, 0x16
or rax, rdi
shr r9, 0x23
mov rdi, qword [rsp + 0x30]
sub r8, rax
or r9, rdx
mov qword [rsp + 0x20], r8
xor rcx, r8
mov qword [rsp + 0xf0], r10
xor rax, r10
mov r8, rcx
shr rcx, 0x19
mov rdx, r11
shr rdx, 0x38
mov r10, rax
shl r11, 8
or rdx, r11
shr rax, 0x1d
mov r11, qword [rsp + 0x28]
sub rdi, rdx
sub r11, r9
shl r8, 0x27
or r8, rcx
shl r10, 0x23
xor rdx, r11
or r10, rax
mov rcx, rdx
xor r9, rdi
shr rcx, 0x27
mov rax, r9
shl rdx, 0x19
or rcx, rdx
shr rax, 0x2b
shl r9, 0x15
mov rdx, qword [rsp + 0x20]
or rax, r9
mov r9, qword [rsp + 0xf0]
sub rdi, rax
sub rdx, r8
sub r9, r10
xor rax, rdx
mov qword [rsp + 0x20], rdx
xor r8, rdi
mov qword [rsp + 0xf0], r9
sub r11, rcx
mov rdx, r8
xor rcx, r9
shr r8, 0xd
mov r9, rax
shl rdx, 0x33
shl rax, 0xe
or rdx, r8
xor r10, r11
shr r9, 0x32
or r9, rax
sub rdi, rdx
mov rax, r10
mov qword [rsp + 0x30], rdi
shl rax, 0x2f
mov r8, rcx
shr r10, 0x11
or rax, r10
shl r8, 0x36
mov r10, qword [rsp + 0xf0]
sub r11, rax
xor rax, rdi
shr rcx, 0xa
mov rdi, rax
mov qword [rsp + 0x28], r11
shr rax, 0x1e
or r8, rcx
mov rcx, qword [rsp + 0x20]
sub r10, r8
xor rdx, r11
mov qword [rsp + 0xf0], r10
sub rcx, r9
shl rdi, 0x22
xor r9, r10
mov qword [rsp + 0x20], rcx
or rdi, rax
mov r10, rdx
mov rax, qword [rsp + 0x48]
xor r8, rcx
mov rcx, qword [rsp + 0x28]
mov r11, r8
shl rdx, 0x19
shr r10, 0x27
or r10, rdx
shl r8, 0x1e
add rax, r10
shr r11, 0x22
sub rcx, rax
mov rdx, r9
mov rax, qword [rbp]
or r11, r8
mov r8, qword [rsp + 0x20]
add rax, rdi
shr r9, 0x18
sub r10, r14
shl rdx, 0x28
or rdx, r9
mov qword [rsp + 0x28], rcx
mov r9, qword [rsp + 0x30]
sub r9, rax
mov rax, qword [rsp + 0x38]
add rax, r11
mov qword [rsp + 0x30], r9
sub r8, rax
mov rax, qword [rsp + 0x40]
add rax, rsi
add rax, rdx
sub rdx, r13
sub qword [rsp + 0xf0], rax
xor r10, qword [rsp + 0xf0]
sub rdx, 7
xor rdx, rcx
sub r11, r15
sub r11, qword [rsp + 0x58]
mov rcx, r10
xor r11, r9
shr rcx, 0x2c
mov r9, rdx
shl r10, 0x14
or rcx, r10
shr rdx, 9
mov r10, qword [rsp + 0xf0]
sub rdi, r12
xor rdi, r8
shl r9, 0x37
or r9, rdx
sub r10, rcx
mov qword [rsp + 0xf0], r10
mov rax, rdi
shr rax, 0x38
mov rdx, r11
shr rdx, 0x36
shl rdi, 8
or rax, rdi
shl r11, 0xa
mov rdi, qword [rsp + 0x30]
sub r8, rax
xor rcx, r8
mov qword [rsp + 0x20], r8
xor rax, r10
or rdx, r11
mov r11, qword [rsp + 0x28]
mov r10, rax
sub r11, r9
shl rax, 0xf
sub rdi, rdx
shr r10, 0x31
or r10, rax
xor rdx, r11
xor r9, rdi
mov r8, rcx
shl r8, 0x2f
mov rax, r9
shr rcx, 0x11
or r8, rcx
shr rax, 0x27
mov rcx, rdx
shl r9, 0x19
or rax, r9
shl rdx, 0x1c
mov r9, qword [rsp + 0xf0]
sub rdi, rax
sub r9, r10
shr rcx, 0x24
or rcx, rdx
mov qword [rsp + 0xf0], r9
mov rdx, qword [rsp + 0x20]
sub r11, rcx
sub rdx, r8
xor rcx, r9
xor rax, rdx
mov qword [rsp + 0x20], rdx
xor r8, rdi
mov r9, rax
mov rdx, r8
shr rax, 0x1b
shl r8, 0x1f
xor r10, r11
shl r9, 0x25
or r9, rax
shr rdx, 0x21
or rdx, r8
mov rax, r10
mov r8, rcx
shr rax, 0x2a
shl r8, 0x32
shr rcx, 0xe
shl r10, 0x16
or r8, rcx
or rax, r10
sub rdi, rdx
mov qword [rsp + 0x30], rdi
mov r10, qword [rsp + 0xf0]
sub r11, rax
mov rcx, qword [rsp + 0x20]
xor rdx, r11
mov rbp, qword [rsp + 0x60]
xor rax, rdi
sub r10, r8
mov qword [rsp + 0x28], r11
sub rcx, r9
mov qword [rsp + 0xf0], r10
xor r9, r10
mov qword [rsp + 0x20], rcx
mov r10, rdx
xor r8, rcx
mov rcx, qword [rsp + 0x28]
mov rdi, rax
shl rdx, 0x12
mov r11, r8
shl rax, 0x1c
shl r11, 0x2d
shr r10, 0x2e
or r10, rdx
shr rdi, 0x24
or rdi, rax
shr r8, 0x13
or r11, r8
mov rdx, r9
mov r8, qword [rsp + 0x20]
shr rdx, 0x25
lea rax, [rbx + r10]
sub r10, qword [rsp + 0x48]
sub rcx, rax
shl r9, 0x1b
lea rax, [r14 + rdi]
or rdx, r9
mov qword [rsp + 0x28], rcx
mov r9, qword [rsp + 0x30]
sub r9, rax
lea rax, [r12 + r11]
sub r8, rax
mov qword [rsp + 0x30], r9
mov rax, qword [rsp + 0x58]
sub r11, rbp
sub r11, qword [rsp + 0x38]
add rax, r15
add rax, rdx
xor r11, r9
sub rdx, qword [rsp + 0x40]
sub qword [rsp + 0xf0], rax
sub rdx, 6
xor r10, qword [rsp + 0xf0]
xor rdx, rcx
mov rcx, qword [rsp + 0x50]
mov r9, rdx
shl rdx, 0x1d
shr r9, 0x23
or r9, rdx
mov rdx, r11
sub rdi, qword [rcx]
mov rcx, r10
xor rdi, r8
shr r10, 8
mov rax, rdi
shl r11, 8
shr rdi, 0x16
shl rax, 0x2a
or rax, rdi
shl rcx, 0x38
mov rdi, qword [rsp + 0x30]
or rcx, r10
mov r10, qword [rsp + 0xf0]
sub r8, rax
shr rdx, 0x38
sub r10, rcx
or rdx, r11
mov qword [rsp + 0xf0], r10
mov r11, qword [rsp + 0x28]
sub rdi, rdx
sub r11, r9
mov qword [rsp + 0x20], r8
xor rcx, r8
xor rax, r10
xor rdx, r11
xor r9, rdi
mov r10, rax
shr rax, 0x1d
mov r8, rcx
shr rcx, 0x19
shl r8, 0x27
or r8, rcx
shl r10, 0x23
or r10, rax
mov rcx, rdx
shl rdx, 0x19
mov rax, r9
shr rax, 0x2b
shl r9, 0x15
or rax, r9
shr rcx, 0x27
mov r9, qword [rsp + 0xf0]
or rcx, rdx
mov rdx, qword [rsp + 0x20]
sub r9, r10
sub rdx, r8
mov qword [rsp + 0xf0], r9
sub rdi, rax
mov qword [rsp + 0x20], rdx
xor rax, rdx
xor r8, rdi
sub r11, rcx
mov rdx, r8
xor r10, r11
shl rdx, 0x33
xor rcx, r9
shr r8, 0xd
or rdx, r8
mov r9, rax
sub rdi, rdx
shl rax, 0xe
mov r8, rcx
shr r9, 0x32
or r9, rax
shr rcx, 0xa
mov rax, r10
shl r8, 0x36
shr r10, 0x11
or r8, rcx
mov rcx, qword [rsp + 0x20]
sub rcx, r9
shl rax, 0x2f
or rax, r10
mov qword [rsp + 0x30], rdi
mov r10, qword [rsp + 0xf0]
sub r11, rax
xor rdx, r11
mov qword [rsp + 0x28], r11
sub r10, r8
mov qword [rsp + 0x20], rcx
xor r9, r10
mov qword [rsp + 0xf0], r10
xor rax, rdi
mov r10, rdx
shl rdx, 0x19
xor r8, rcx
mov rcx, qword [rsp + 0x28]
mov rdi, rax
shr rax, 0x1e
mov r11, r8
shr r10, 0x27
or r10, rdx
shl rdi, 0x22
mov rdx, r9
shr r11, 0x22
shl rdx, 0x28
or rdi, rax
shl r8, 0x1e
shr r9, 0x18
lea rax, [r10 + r13]
or rdx, r9
or r11, r8
sub rcx, rax
mov qword [rsp + 0x28], rcx
mov r8, qword [rsp + 0x50]
sub r10, rbx
mov r9, qword [rsp + 0x30]
mov rax, qword [rsp + 0x48]
add rax, rdi
sub rdi, r14
sub r9, rax
mov rax, qword [r8]
mov r8, qword [rsp + 0x20]
add rax, r11
sub r8, rax
mov qword [rsp + 0x30], r9
mov rax, qword [rsp + 0x38]
xor rdi, r8
add rax, rbp
sub r11, rsi
add rax, rdx
sub r11, r12
sub qword [rsp + 0xf0], rax
xor r11, r9
xor r10, qword [rsp + 0xf0]
sub rdx, r15
sub rdx, 5
mov rax, rdi
xor rdx, rcx
shr rax, 0x38
mov r9, rdx
shl rdi, 8
or rax, rdi
shr rdx, 9
mov rdi, qword [rsp + 0x30]
sub r8, rax
mov rcx, r10
shl r9, 0x37
or r9, rdx
shr rcx, 0x2c
shl r10, 0x14
mov rdx, r11
or rcx, r10
shr rdx, 0x36
mov r10, qword [rsp + 0xf0]
sub r10, rcx
mov qword [rsp + 0x20], r8
xor rcx, r8
mov qword [rsp + 0xf0], r10
xor rax, r10
shl r11, 0xa
or rdx, r11
mov r8, rcx
mov r11, qword [rsp + 0x28]
sub rdi, rdx
sub r11, r9
shr rcx, 0x11
mov r10, rax
shl r8, 0x2f
or r8, rcx
shl rax, 0xf
xor rdx, r11
shr r10, 0x31
xor r9, rdi
or r10, rax
mov rcx, rdx
mov rax, r9
shl rdx, 0x1c
shl r9, 0x19
shr rcx, 0x24
or rcx, rdx
shr rax, 0x27
mov rdx, qword [rsp + 0x20]
or rax, r9
mov r9, qword [rsp + 0xf0]
sub rdx, r8
sub r9, r10
mov qword [rsp + 0x20], rdx
sub rdi, rax
mov qword [rsp + 0xf0], r9
sub r11, rcx
xor rax, rdx
xor r8, rdi
xor rcx, r9
xor r10, r11
mov r9, rax
mov rdx, r8
shr rax, 0x1b
shr rdx, 0x21
shl r8, 0x1f
or rdx, r8
shl r9, 0x25
or r9, rax
sub rdi, rdx
mov rax, r10
mov qword [rsp + 0x30], rdi
mov r8, rcx
shr rax, 0x2a
shl r10, 0x16
or rax, r10
shr rcx, 0xe
mov r10, qword [rsp + 0xf0]
sub r11, rax
xor rdx, r11
mov qword [rsp + 0x28], r11
xor rax, rdi
shl r8, 0x32
or r8, rcx
mov rdi, rax
mov rcx, qword [rsp + 0x20]
sub r10, r8
sub rcx, r9
shl rax, 0x1c
xor r9, r10
mov qword [rsp + 0xf0], r10
xor r8, rcx
mov qword [rsp + 0x20], rcx
mov rcx, qword [rsp + 0x28]
mov r10, rdx
shl rdx, 0x12
mov r11, r8
shr r10, 0x2e
or r10, rdx
shl r11, 0x2d
mov rdx, r9
shr rdi, 0x24
or rdi, rax
shr rdx, 0x25
mov rax, qword [rsp + 0x40]
add rax, r10
shl r9, 0x1b
sub rcx, rax
shr r8, 0x13
or rdx, r9
mov qword [rsp + 0x28], rcx
mov r9, qword [rsp + 0x30]
lea rax, [rbx + rdi]
sub rdi, qword [rsp + 0x48]
sub r9, rax
mov rbx, qword [rsp + 0xf0]
or r11, r8
mov r8, qword [rsp + 0x20]
sub r10, r13
mov qword [rsp + 0x30], r9
lea rax, [r14 + r11]
sub r11, qword [rsp + 0x58]
sub r8, rax
lea rax, [rsi + r12]
add rax, rdx
xor rdi, r8
sub rdx, qword [rsp + 0x38]
sub rbx, rax
sub rdx, 4
xor r10, rbx
xor rdx, rcx
mov rcx, qword [rsp + 0x50]
sub r11, qword [rcx]
mov rcx, r10
xor r11, r9
shl rcx, 0x38
mov r9, rdx
shr r10, 8
or rcx, r10
shr r9, 0x23
shl rdx, 0x1d
or r9, rdx
sub rbx, rcx
mov rax, rdi
shl rax, 0x2a
mov rdx, r11
shr rdx, 0x38
shr rdi, 0x16
or rax, rdi
shl r11, 8
mov rdi, qword [rsp + 0x30]
sub r8, rax
xor rcx, r8
mov qword [rsp + 0x20], r8
or rdx, r11
xor rax, rbx
mov r11, qword [rsp + 0x28]
sub rdi, rdx
mov r10, rax
sub r11, r9
xor rdx, r11
shr rax, 0x1d
xor r9, rdi
shl r10, 0x23
or r10, rax
mov r8, rcx
shr rcx, 0x19
sub rbx, r10
shl r8, 0x27
mov rax, r9
or r8, rcx
shr rax, 0x2b
mov rcx, rdx
shl r9, 0x15
or rax, r9
shl rdx, 0x19
sub rdi, rax
shr rcx, 0x27
or rcx, rdx
mov rdx, qword [rsp + 0x20]
sub rdx, r8
sub r11, rcx
xor rax, rdx
mov qword [rsp + 0x20], rdx
xor r8, rdi
mov r9, rax
shl rax, 0xe
xor r10, r11
mov rdx, r8
shr r9, 0x32
or r9, rax
shr r8, 0xd
xor rcx, rbx
shl rdx, 0x33
or rdx, r8
mov rax, r10
sub rdi, rdx
shr r10, 0x11
shl rax, 0x2f
mov r8, rcx
or rax, r10
shr rcx, 0xa
sub r11, rax
shl r8, 0x36
or r8, rcx
mov qword [rsp + 0x30], rdi
mov rcx, qword [rsp + 0x20]
xor rax, rdi
sub rcx, r9
mov qword [rsp + 0x28], r11
xor rdx, r11
mov qword [rsp + 0x20], rcx
sub rbx, r8
mov r10, rdx
shr r10, 0x27
mov rdi, rax
shl rdx, 0x19
xor r8, rcx
or r10, rdx
shl rdi, 0x22
xor r9, rbx
shr rax, 0x1e
or rdi, rax
mov rcx, qword [rsp + 0x28]
lea rax, [r15 + r10]
sub r10, qword [rsp + 0x40]
sub rcx, rax
mov rsi, qword [rsp + 0x50]
lea rax, [rdi + r13]
mov rdx, r9
mov qword [rsp + 0x28], rcx
shl rdx, 0x28
mov r11, r8
shr r9, 0x18
or rdx, r9
shr r11, 0x22
mov r9, qword [rsp + 0x30]
sub r9, rax
shl r8, 0x1e
mov rax, qword [rsp + 0x48]
or r11, r8
mov r8, qword [rsp + 0x20]
add rax, r11
sub r8, rax
mov qword [rsp + 0x30], r9
mov rax, qword [rsi]
sub r11, r14
add rax, qword [rsp + 0x58]
sub r11, rbp
add rax, rdx
xor r11, r9
sub rbx, rax
sub rdx, r12
xor r10, rbx
mov qword [rsp + 0xf0], rbx
mov rbx, qword [rsp + 0x68]
sub rdx, 3
xor rdx, rcx
sub rdi, rbx
xor rdi, r8
mov r9, rdx
mov rcx, r10
shr rdx, 9
shr rcx, 0x2c
mov rax, rdi
shl r10, 0x14
or rcx, r10
shr rax, 0x38
mov r10, qword [rsp + 0xf0]
sub r10, rcx
shl rdi, 8
or rax, rdi
shl r9, 0x37
mov rdi, qword [rsp + 0x30]
sub r8, rax
or r9, rdx
mov qword [rsp + 0x20], r8
xor rcx, r8
mov qword [rsp + 0xf0], r10
xor rax, r10
mov r8, rcx
shr rcx, 0x11
mov rdx, r11
shr rdx, 0x36
mov r10, rax
shl r11, 0xa
or rdx, r11
shl rax, 0xf
mov r11, qword [rsp + 0x28]
sub rdi, rdx
sub r11, r9
shl r8, 0x2f
or r8, rcx
shr r10, 0x31
xor rdx, r11
or r10, rax
mov rcx, rdx
xor r9, rdi
shr rcx, 0x24
mov rax, r9
shl rdx, 0x1c
or rcx, rdx
shr rax, 0x27
shl r9, 0x19
mov rdx, qword [rsp + 0x20]
or rax, r9
mov r9, qword [rsp + 0xf0]
sub rdx, r8
sub rdi, rax
mov qword [rsp + 0x20], rdx
xor rax, rdx
sub r9, r10
xor r8, rdi
mov qword [rsp + 0xf0], r9
sub r11, rcx
mov rdx, r8
xor rcx, r9
shr rdx, 0x21
mov r9, rax
shl r8, 0x1f
or rdx, r8
shr rax, 0x1b
xor r10, r11
shl r9, 0x25
or r9, rax
sub rdi, rdx
mov rax, r10
mov qword [rsp + 0x30], rdi
shr rax, 0x2a
mov r8, rcx
shl r10, 0x16
or rax, r10
shl r8, 0x32
mov r10, qword [rsp + 0xf0]
sub r11, rax
xor rax, rdi
shr rcx, 0xe
xor rdx, r11
mov qword [rsp + 0x28], r11
or r8, rcx
mov rdi, rax
mov rcx, qword [rsp + 0x20]
sub r10, r8
sub rcx, r9
shl rax, 0x1c
xor r9, r10
mov qword [rsp + 0xf0], r10
mov r10, rdx
mov qword [rsp + 0x20], rcx
shl rdx, 0x12
xor r8, rcx
mov rcx, qword [rsp + 0x28]
mov r11, r8
shr r10, 0x2e
or r10, rdx
shr r8, 0x13
mov rdx, r9
shr rdi, 0x24
or rdi, rax
shr rdx, 0x25
mov rax, qword [rsp + 0x38]
add rax, r10
shl r9, 0x1b
sub rcx, rax
shl r11, 0x2d
mov rax, qword [rsp + 0x40]
or rdx, r9
mov r9, qword [rsp + 0x30]
add rax, rdi
sub r9, rax
mov qword [rsp + 0x28], rcx
or r11, r8
mov qword [rsp + 0x30], r9
mov r8, qword [rsp + 0x20]
sub r10, r15
lea rax, [rbx + r11]
sub r8, rax
lea rax, [r14 + rbp]
add rax, rdx
sub rdx, qword [rsi]
sub qword [rsp + 0xf0], rax
sub rdx, 2
xor r10, qword [rsp + 0xf0]
xor rdx, rcx
sub r11, qword [rsp + 0x80]
sub r11, qword [rsp + 0x48]
mov rcx, r10
xor r11, r9
shl rcx, 0x38
mov r9, rdx
shr r10, 8
or rcx, r10
shl rdx, 0x1d
mov r10, qword [rsp + 0xf0]
sub rdi, r13
xor rdi, r8
shr r9, 0x23
or r9, rdx
sub r10, rcx
mov qword [rsp + 0xf0], r10
mov rax, rdi
shl rax, 0x2a
mov rdx, r11
shr rdx, 0x38
shr rdi, 0x16
or rax, rdi
shl r11, 8
mov rdi, qword [rsp + 0x30]
sub r8, rax
xor rcx, r8
mov qword [rsp + 0x20], r8
xor rax, r10
or rdx, r11
mov r11, qword [rsp + 0x28]
sub rdi, rdx
mov r10, rax
sub r11, r9
shr rax, 0x1d
xor r9, rdi
mov r8, rcx
shl r10, 0x23
or r10, rax
shr rcx, 0x19
xor rdx, r11
shl r8, 0x27
or r8, rcx
mov rax, r9
mov rcx, rdx
shr rax, 0x2b
shl rdx, 0x19
shl r9, 0x15
or rax, r9
shr rcx, 0x27
mov r9, qword [rsp + 0xf0]
or rcx, rdx
mov rdx, qword [rsp + 0x20]
sub rdi, rax
sub rdx, r8
sub r9, r10
xor rax, rdx
mov qword [rsp + 0x20], rdx
xor r8, rdi
mov qword [rsp + 0xf0], r9
sub r11, rcx
mov rdx, r8
xor rcx, r9
shr r8, 0xd
mov r9, rax
shl rdx, 0x33
shl rax, 0xe
or rdx, r8
mov r8, rcx
shr r9, 0x32
or r9, rax
shr rcx, 0xa
xor r10, r11
shl r8, 0x36
mov rax, r10
or r8, rcx
mov rcx, qword [rsp + 0x20]
sub rdi, rdx
shl rax, 0x2f
shr r10, 0x11
or rax, r10
mov qword [rsp + 0x30], rdi
sub rcx, r9
mov r10, qword [rsp + 0xf0]
sub r11, rax
xor rdx, r11
mov qword [rsp + 0x28], r11
xor rax, rdi
sub r10, r8
xor r9, r10
mov qword [rsp + 0xf0], r10
xor r8, rcx
mov r10, rdx
shl rdx, 0x19
mov rdi, rax
shr rax, 0x1e
mov r11, r8
shr r11, 0x22
shl rdi, 0x22
or rdi, rax
shl r8, 0x1e
or r11, r8
shr r10, 0x27
mov r8, qword [rsp + 0xf0]
or r10, rdx
mov rdx, r9
shr r9, 0x18
shl rdx, 0x28
or rdx, r9
lea rax, [r12 + r10]
sub r10, qword [rsp + 0x38]
sub qword [rsp + 0x28], rax
lea rax, [r15 + rdi]
sub qword [rsp + 0x30], rax
lea rax, [r11 + r13]
sub r11, qword [rsp + 0x58]
sub rcx, rax
sub rdi, qword [rsp + 0x40]
sub r11, rbx
mov rsi, qword [rsp + 0x28]
xor rdi, rcx
mov rax, qword [rsp + 0x48]
add rax, qword [rsp + 0x80]
add rax, rdx
mov qword [rsp + 0x20], rcx
sub rdx, r14
sub r8, rax
mov r14, qword [rsp + 0x30]
dec rdx
xor rdx, rsi
xor r10, r8
mov r9, rdx
xor r11, r14
shr rdx, 9
mov rax, rdi
mov rcx, r10
shl rdi, 8
shr rcx, 0x2c
shl r9, 0x37
or r9, rdx
shr rax, 0x38
or rax, rdi
shl r10, 0x14
or rcx, r10
mov rdx, r11
shl r11, 0xa
mov rdi, r8
sub rdi, rcx
shr rdx, 0x36
or rdx, r11
sub rsi, r9
mov r11, qword [rsp + 0x20]
sub r14, rdx
sub r11, rax
xor rdx, rsi
xor rcx, r11
xor rax, rdi
mov r8, rcx
xor r9, r14
shl r8, 0x2f
mov r10, rax
shr rcx, 0x11
or r8, rcx
shr r10, 0x31
mov rbx, qword [rsp + 0x88]
sub r11, r8
shl rax, 0xf
mov rcx, rdx
or r10, rax
shl rdx, 0x1c
shr rcx, 0x24
mov rax, r9
or rcx, rdx
shr rax, 0x27
sub rsi, rcx
shl r9, 0x19
or rax, r9
sub rdi, r10
sub r14, rax
xor rcx, rdi
xor rax, r11
xor r8, r14
mov r9, rax
mov rdx, r8
shr rax, 0x1b
xor r10, rsi
shl r8, 0x1f
shr rdx, 0x21
or rdx, r8
shl r9, 0x25
or r9, rax
sub r14, rdx
mov r8, rcx
sub r11, r9
shr rcx, 0xe
mov rax, r10
shr rax, 0x2a
shl r8, 0x32
or r8, rcx
shl r10, 0x16
or rax, r10
sub rdi, r8
mov r10, qword [rsp + 0x50]
sub rsi, rax
xor rdx, rsi
xor rax, r14
sub r14, qword [rsp + 0x38]
xor r8, r11
sub r11, qword [rsp + 0x40]
mov rcx, rdx
sub rsi, qword [r10]
xor r9, rdi
shl rdx, 0x12
shr rcx, 0x2e
or rcx, rdx
mov rdx, rax
shl rax, 0x1c
sub rsi, rcx
sub rcx, r12
shr rdx, 0x24
or rdx, rax
mov rax, r8
shr r8, 0x13
sub r14, rdx
shl rax, 0x2d
sub rdx, r15
or rax, r8
mov r8, r9
shl r9, 0x1b
sub r11, rax
shr r8, 0x25
sub rax, rbp
or r8, r9
mov r9, qword [rsp + 0x70]
sub rax, r13
mov qword [rbx + r9], rsi
mov rbx, qword [rsp + 0x90]
mov qword [rbx + r9], rcx
mov rcx, qword [rsp + 0x98]
mov rbx, qword [rsp + 0x100]
mov qword [rcx + r9], r14
mov rcx, qword [rsp + 0xa0]
mov qword [rbx + r9], r11
mov qword [rbx + r9 + 8], rax
mov qword [rcx + r9], rdx
sub rdi, qword [rsp + 0x58]
sub rdi, qword [rsp + 0x68]
mov r15, qword [rsp + 0x78]
sub rdi, r8
sub r8, qword [rsp + 0x48]
mov qword [rbx + r9 + 0x18], r8
mov qword [rbx + r9 + 0x10], rdi
add r9, 0x40
sub qword [rsp + 0x108], 1
mov qword [rsp + 0x70], r9
jne 0x1801071b0
mov r14, qword [rsp + 0xb0]
mov r13, qword [rsp + 0xb8]
mov r12, qword [rsp + 0xf8]
add rsp, 0xc0
pop r15
pop rdi
pop rsi
pop rbp
pop rbx
ret