Function at 0x14016e9c0
Capabilities:
Encode data using xor

Disassembly:
push r14
mov qword [rsp], rbp
push rbx
nop
sub rsp, 8
mov qword [rsp], rsi
push rdi
push r12
push r13
nop
mov qword [rsp - 8], r14
sub rsp, 8
nop
sub rsp, 8
mov qword [rsp], r15
lea rbp, [rsp - 0x2138]
mov eax, 0x1d9b2054
add eax, 0xdb4ea4a
add eax, 0x4170b282
xor eax, 0xbcd2c4d
add eax, 0x134cd84a
xor eax, 0x7a5a4b8f
call fcn.1401fd410
sub rsp, rax
xchg rdi, r14
mov rdi, rcx
xchg r14, rdi
xor r13d, r13d
lea rsi, [r13 - 1]
cmp qword [rcx + 0x50], r13
jne 0x14016f9db
xorps xmm0, xmm0
xchg rbx, rbp
movups xmmword [rbx - 0x40], xmm0
xchg rbp, rbx
mov qword [rbp - 0x30], r13
mov qword [rbp - 0x28], 0xf29126d
add qword [rbp - 0x28], 0x65853324
sub qword [rbp - 0x28], 0x2da596d8
add qword [rbp - 0x28], 0x2254bfc0
sub qword [rbp - 0x28], 0x278eab32
xor qword [rbp - 0x28], 0x41cec340
mov word [rbp - 0x40], r13w
movups xmmword [rbp - 0x78], xmm0
mov qword [rbp - 0x68], r13
mov qword [rbp - 0x60], 0x125701d9
add qword [rbp - 0x60], 0x45bbc15c
sub qword [rbp - 0x60], 0x25a18886
xor qword [rbp - 0x60], 0x6214eb99
sub qword [rbp - 0x60], 0x401ea66f
xor qword [rbp - 0x60], 0x7fbad3ff
xor qword [rbp - 0x60], 0x6571c1b1
xor qword [rbp - 0x60], 0xa8c3886
mov byte [rbp - 0x78], r13b
lea r8, [rbp - 0x78]
lea rdx, [rbp - 0x40]
call fcn.140161ee0
mov dword [rsp + 0x52], 0x4a207ec1
sub dword [rsp + 0x52], 0x2f1278d1
xor dword [rsp + 0x52], 0x30c6efc2
xor dword [rsp + 0x52], 0x7791f6be
sub dword [rsp + 0x52], 0x35afc76a
xor dword [rsp + 0x52], 0xd05fa3d4
mov dword [rsp + 0x58], 0x39afe585
add dword [rsp + 0x58], 0x21c8df2
sub dword [rsp + 0x58], 0x3f07f61
xor dword [rsp + 0x58], 0x13fab8a6
xor dword [rsp + 0x58], 0x2c579499
add dword [rsp + 0x58], 0x44af2eb6
sub dword [rsp + 0x58], 0x38bc1ac5
add dword [rsp + 0x58], 0xeafd134c
mov dword [rsp + 0x5c], 0x1b4c812d
xor dword [rsp + 0x5c], 0x24715774
sub dword [rsp + 0x5c], 0x30ead9fd
add dword [rsp + 0x5c], 0x4bdbfa9c
sub dword [rsp + 0x5c], 0x13232d48
add dword [rsp + 0x5c], 0x1c264829
add dword [rsp + 0x5c], 0x9c34ed5f
xor eax, eax
mov word [rsp + 0x60], ax
mov edx, r13d
movzx eax, word [rsp + rdx*2 + 0x58]
movzx ecx, byte [rsp + rdx + 0x52]
add cx, ax
mov word [rsp + rdx*2 + 0x58], cx
mov byte [rsp + rdx + 0x52], 0x72
sub byte [rsp + rdx + 0x52], 0x22
sub byte [rsp + rdx + 0x52], 0x2b
xor byte [rsp + rdx + 0x52], 0x14
sub byte [rsp + rdx + 0x52], 0x29
sub byte [rsp + rdx + 0x52], 8
inc rdx
cmp rdx, 4
jb 0x14016eb81
xorps xmm0, xmm0
xchg rsi, rbp
movups xmmword [rsi + 0x90], xmm0
xchg rsi, rbp
xorps xmm1, xmm1
movdqu xmmword [rbp + 0xa0], xmm1
lea rax, [rsp + 0x58]
xchg r9, r8
mov r9, rsi
xchg r9, r8
nop
inc r8
cmp word [rax + r8*2], 0
jne 0x14016ebe9
lea rdx, [rsp + 0x58]
lea rcx, [rbp + 0x90]
call fcn.140030c70
nop
lea rdx, [rbp - 0x40]
cmp qword [rbp - 0x28], 8
cmovae rdx, qword [rbp - 0x40]
mov r8, qword [rbp - 0x30]
lea rcx, [rbp + 0x90]
call fcn.140053aa0
movups xmm0, xmmword [rax]
xchg rdi, rbp
movups xmmword [rdi + 0xd0], xmm0
xchg rbp, rdi
xchg r11, rax
movups xmm1, xmmword [r11 + 0x10]
xchg r11, rax
xchg rbp, rcx
movups xmmword [rcx + 0xe0], xmm1
xchg rbp, rcx
xchg r13, r9
mov qword [rax + 0x10], r9
xchg r9, r13
mov qword [rax + 0x18], 0x7fb556f7
xor qword [rax + 0x18], 0x2d7c1f0c
xor qword [rax + 0x18], 0x3079336e
sub qword [rax + 0x18], 0x48d51f96
add qword [rax + 0x18], 0x3544f72a
sub qword [rax + 0x18], 0x2668becb
sub qword [rax + 0x18], 0x288e7195
xor qword [rax + 0x18], 0x2921ce
mov word [rax], r13w
lea r12, [r14 + 0x88]
lea rdx, [rbp + 0xd0]
xchg r12, r14
mov rcx, r14
xchg r14, r12
call fcn.1400926c0
mov rdx, qword [rbp + 0xe8]
cmp rdx, 8
jb 0x14016ed22
lea rdx, [rdx*2 + 2]
xchg rbx, rcx
mov rbx, qword [rbp + 0xd0]
xchg rcx, rbx
xchg rdx, rax
mov rdx, rcx
xchg rdx, rax
cmp rdx, 0x1000
jb 0x14016ed1d
nop
add rdx, 0x43e7f7d9
sub rdx, 0x43e7f7b2
mov rcx, qword [rcx - 8]
sub rax, rcx
sub rax, 8
cmp rax, 0x1f
jbe 0x14016ed1d
push rbp
call fcn.140389199
int3
call fcn.1401fd098
movdqa xmm0, xmmword [0x140002c70]
xchg rbx, rbp
movdqu xmmword [rbx + 0xe0], xmm0
xchg rbx, rbp
mov word [rbp + 0xd0], r13w
mov rdx, qword [rbp + 0xa8]
cmp rdx, 8
jb 0x14016eda9
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x90]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14016eda4
nop
sub rdx, 0x44722478
add rdx, 0x4472249f
mov rcx, qword [rcx - 8]
sub rax, rcx
nop
add rax, 0xffffffffb45ded92
sub rax, 0xffffffffb45ded9a
cmp rax, 0x1f
jbe 0x14016eda4
push rax
call fcn.1404f57dd
int3
call fcn.1401fd098
movdqa xmm0, xmmword [0x140002c70]
xchg r13, rbp
movdqu xmmword [r13 + 0xa0], xmm0
xchg rbp, r13
mov word [rbp + 0x90], r13w
xchg r13, rsi
mov rax, rsi
xchg r13, rsi
nop dword [rax + rax]
mov byte [rsp + rax + 0x58], 0x53
xor byte [rsp + rax + 0x58], 0x10
xor byte [rsp + rax + 0x58], 0x3d
sub byte [rsp + rax + 0x58], 0xf
sub byte [rsp + rax + 0x58], 0x6d
add byte [rsp + rax + 0x58], 0x64
sub byte [rsp + rax + 0x58], 0x66
inc rax
cmp rax, 8
jb 0x14016edd6
mov dword [rsp + 0x62], 0x13141422
xor dword [rsp + 0x62], 0x76373051
sub dword [rsp + 0x62], 0x24ae2ffd
xor dword [rsp + 0x62], 0x280ed7c1
sub dword [rsp + 0x62], 0x1043eb7e
sub dword [rsp + 0x62], 0x11a080a5
sub dword [rsp + 0x62], 0x416ddf48
add dword [rsp + 0x62], 0x6ddc691e
xor dword [rsp + 0x62], 0x85f2b79c
mov dword [rsp + 0x6a], 0x11892f8e
add dword [rsp + 0x6a], 0x1c4cc20
xor dword [rsp + 0x6a], 0x46192ff5
xor dword [rsp + 0x6a], 0x292162f7
xor dword [rsp + 0x6a], 0xb3d636d
sub dword [rsp + 0x6a], 0x123051df
add dword [rsp + 0x6a], 0x3b4693a
add dword [rsp + 0x6a], 0x96aa1235
mov dword [rsp + 0x6e], 0x2ceca4e3
add dword [rsp + 0x6e], 0x4ea4eef3
sub dword [rsp + 0x6e], 0x4e8f1afa
add dword [rsp + 0x6e], 0x44131cc6
sub dword [rsp + 0x6e], 0x395303e3
sub dword [rsp + 0x6e], 0x19e4f575
add dword [rsp + 0x6e], 0xe18f632f
mov word [rsp + 0x66], 0x1779
xor word [rsp + 0x66], 0x78d2
add word [rsp + 0x66], 0xcd3
sub word [rsp + 0x66], 0x7bf
sub word [rsp + 0x66], 0x5d18
add word [rsp + 0x66], 0x1627
add word [rsp + 0x66], 0xc928
mov dword [rsp + 0x72], 0x5db24634
xor dword [rsp + 0x72], 0x76f66187
xor dword [rsp + 0x72], 0x7459558b
sub dword [rsp + 0x72], 0x5aee195
sub dword [rsp + 0x72], 0x44122246
xor dword [rsp + 0x72], 0x74c8c1fa
add dword [rsp + 0x72], 0x29b7928
add dword [rsp + 0x72], 0x9b46d69c
mov byte [rsp + 0x68], 0x15
sub byte [rsp + 0x68], 0xe
add byte [rsp + 0x68], 0x42
add byte [rsp + 0x68], 0x11
sub byte [rsp + 0x68], 0x10
sub byte [rsp + 0x68], 0xa
xor byte [rsp + 0x68], 0x76
add byte [rsp + 0x68], 0xc0
mov dword [rsp + 0x76], 0x2b4a5835
xor dword [rsp + 0x76], 0x4c5dde90
xor dword [rsp + 0x76], 0x13ad6e7b
add dword [rsp + 0x76], 0xab3106b
sub dword [rsp + 0x76], 0x219caf45
sub dword [rsp + 0x76], 0x2de9cc2
xor dword [rsp + 0x76], 0x8c42786
xor dword [rsp + 0x76], 0x15df61f0
sub dword [rsp + 0x76], 0x47e8ebce
mov rdx, r13
nop word [rax + rax]
movzx eax, word [rsp + rdx*2 + 0x6a]
movzx ecx, byte [rsp + rdx + 0x62]
add cx, ax
mov word [rsp + rdx*2 + 0x6a], cx
mov byte [rsp + rdx + 0x62], 0x5f
sub byte [rsp + rdx + 0x62], 0x5e
xor byte [rsp + rdx + 0x62], 0x5b
sub byte [rsp + rdx + 0x62], 0x32
sub byte [rsp + rdx + 0x62], 0x1e
add byte [rsp + rdx + 0x62], 0x50
xor byte [rsp + rdx + 0x62], 0x1d
xor byte [rsp + rdx + 0x62], 0x47
inc rdx
cmp rdx, 7
jb 0x14016efb5
xorps xmm0, xmm0
xchg r11, rbp
movups xmmword [r11 + 0xb0], xmm0
xchg rbp, r11
xorps xmm1, xmm1
xchg rbp, rbx
movdqu xmmword [rbx + 0xc0], xmm1
xchg rbx, rbp
lea rax, [rsp + 0x6a]
xchg rdi, rsi
mov r8, rdi
xchg rdi, rsi
nop dword [rax]
inc r8
cmp word [rax + r8*2], 0
jne 0x14016f02f
lea rdx, [rsp + 0x6a]
lea rcx, [rbp + 0xb0]
call fcn.140030c70
nop
lea rdx, [rbp - 0x40]
cmp qword [rbp - 0x28], 8
cmovae rdx, qword [rbp - 0x40]
xchg r8, r14
mov r14, qword [rbp - 0x30]
xchg r8, r14
lea rcx, [rbp + 0xb0]
call fcn.140053aa0
xchg rsi, rax
movups xmm0, xmmword [rsi]
xchg rsi, rax
xchg rbp, r10
movups xmmword [r10 + 0xf0], xmm0
xchg rbp, r10
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x100], xmm1
xchg r13, r12
mov qword [rax + 0x10], r12
xchg r12, r13
mov qword [rax + 0x18], 0x55724bd2
xor qword [rax + 0x18], 0x64ffd845
add qword [rax + 0x18], 0x21fbf8d0
sub qword [rax + 0x18], 0x10425bd
sub qword [rax + 0x18], 0x1d9ff4e5
sub qword [rax + 0x18], 0xa169e5b
sub qword [rax + 0x18], 0x2aced363
mov word [rax], r13w
lea rdi, [r14 + 0xa8]
lea rdx, [rbp + 0xf0]
xchg rcx, rdi
mov rdi, rcx
xchg rdi, rcx
call fcn.1400926c0
mov rdx, qword [rbp + 0x108]
cmp rdx, 8
jb 0x14016f160
lea rdx, [rdx*2 + 2]
xchg rcx, r12
mov r12, qword [rbp + 0xf0]
xchg r12, rcx
xchg rbp, rax
mov rbp, rcx
xchg rbp, rax
cmp rdx, 0x1000
jb 0x14016f15b
nop
add rdx, 0x7401c53d
sub rdx, 0x7401c516
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14016f15b
push rbp
call fcn.14078c999
int3
call fcn.1401fd098
movdqa xmm0, xmmword [0x140002c70]
xchg rbp, r8
movdqu xmmword [r8 + 0x100], xmm0
xchg rbp, r8
mov word [rbp + 0xf0], r13w
mov rdx, qword [rbp + 0xc8]
cmp rdx, 8
jb 0x14016f1da
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0xb0]
xchg r8, rcx
mov rax, r8
xchg rcx, r8
cmp rdx, 0x1000
jb 0x14016f1d5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
sub rax, 8
cmp rax, 0x1f
jbe 0x14016f1d5
push rdi
call fcn.140c2286b
int3
call fcn.1401fd098
movdqa xmm0, xmmword [0x140002c70]
xchg r11, rbp
movdqu xmmword [r11 + 0xc0], xmm0
xchg rbp, r11
mov word [rbp + 0xb0], r13w
xchg rdi, rax
mov rdi, r13
xchg rdi, rax
nop dword [rax + rax]
mov byte [rsp + rax + 0x6a], 0x52
xor byte [rsp + rax + 0x6a], 0x44
xor byte [rsp + rax + 0x6a], 1
add byte [rsp + rax + 0x6a], 0x30
add byte [rsp + rax + 0x6a], 6
add byte [rsp + rax + 0x6a], 0x21
sub byte [rsp + rax + 0x6a], 9
sub byte [rsp + rax + 0x6a], 0x65
inc rax
cmp rax, 0xe
jb 0x14016f205
xor ecx, ecx
call fcn.140820cfd
int3
xchg rcx, r10
mov r10, qword [r14 + 0x50]
xchg rcx, r10
cmp byte [rcx + 0x10], 0
jne 0x14016f9fc
call fcn.1401c4750
test al, al
je 0x1401706b9
cmp byte [0x140217064], 0
jne 0x140170666
mov rcx, qword [r14 + 0x60]
test rcx, rcx
je 0x14016fa92
lea rdx, [rbp - 0x80]
call fcn.1401adcb0
xchg rcx, rdi
mov rdi, qword [r14 + 0x50]
xchg rdi, rcx
call fcn.1401c26e0
xchg rcx, rax
mov rcx, qword [rbp - 0x80]
xchg rcx, rax
xchg rbx, r13
mov r13, qword [rax]
xchg r13, rbx
cmp rbx, qword [rax + 8]
je 0x14016faa1
nop dword [rax + rax]
xchg r12, rbx
mov rdx, r12
xchg rbx, r12
cmp qword [rbx + 0x18], 8
jb 0x14016fa68
mov rdx, qword [rbx]
xchg rdi, rcx
mov rdi, qword [r14 + 0x50]
xchg rdi, rcx
call fcn.1401c2630
add rbx, 0x20
xchg r8, rax
mov r8, qword [rbp - 0x80]
xchg r8, rax
cmp rbx, qword [rax + 8]
jne 0x14016fa51
jmp 0x14016faa1
xchg r10, rcx
mov r10, qword [r14 + 0x50]
xchg rcx, r10
call fcn.1401c26e0
mov dword [rbp + 0x2188], r13d
mov qword [rbp + 0x2198], r13
mov dword [rbp + 0x2180], r13d
xor edx, edx
mov r8d, 0x1624aea
add r8d, 0x5f4cc474
add r8d, 0x120d01e7
sub r8d, 0x6239c314
sub r8d, 0x6a32847
sub r8d, 0x9df23ea
lea rcx, [rbp + 0x130]
call fcn.1401fe0f6
lea rax, [rbp + 0x130]
xchg rbx, rax
mov qword [rsp + 0x20], rbx
xchg rbx, rax
lea r9, [rbp + 0x2180]
lea r8, [rbp + 0x2198]
lea rdx, [rbp + 0x2188]
mov rcx, qword [r14 + 0x50]
call fcn.1401c3b70
test al, al
je 0x14017065f
mov edi, dword [rbp + 0x2188]
cmp edi, 8
jb 0x14017065f
mov byte [r14 + 0x328], 0x50
xor byte [r14 + 0x328], 0x62
sub byte [r14 + 0x328], 0x21
add byte [r14 + 0x328], 0x19
xor byte [r14 + 0x328], 0x3f
add byte [r14 + 0x328], 0x10
xor byte [r14 + 0x328], 0x31
add byte [r14 + 0x328], 0x34
sub byte [r14 + 0x328], 0x47
mov dword [r14 + 0x334], edi
mov eax, dword [rbp + 0x2198]
mov dword [r14 + 0x330], eax
mov r12d, dword [rbp + 0x2180]
mov dword [r14 + 0x32c], r12d
lea rbx, [r14 + 0x338]
xor edx, edx
mov r8d, 0x3e563e3
add r8d, 0x4ee2df69
add r8d, 0x2b828bad
sub r8d, 0x66157bb
xor r8d, 0x491f851c
add r8d, 0x1d4d8322
sub r8d, 0x5c447344
mov rcx, rbx
call fcn.1401fe0f6
cmp edi, 8
jbe 0x14017065f
cmp r12d, 0xc0000028
je 0x14017065f
mov word [rbp + 0x32e], r13w
mov ecx, dword [r14 + 0x48]
mov qword [rbp - 0x80], r14
xchg rdx, r14
mov qword [rbp + 0x68], rdx
xchg r14, rdx
xchg r10, r14
mov qword [rbp + 0x60], r10
xchg r14, r10
test ecx, ecx
je 0x14016fdea
sub ecx, 1
je 0x14016fd14
cmp ecx, 1
jne 0x14016fdea
mov rax, qword [r14 + 0x30]
movabs rdi, 0x2aaaaaaa0911def1
xor rdi, 0x3b4e250
xor rdi, 0x6f094f19
sub rdi, 0x5c3ef539
add rdi, 0x1fc1312c
add rdi, 0x15d74d11
add rdi, 0x36fe4658
sub rdi, 0x159f913e
add rdi, 0x7fffffff
sub rdi, 0x35ba072a
cmp rax, qword [r14 + 0x38]
jne 0x14016fd0b
xchg rcx, r10
mov r10, qword [r14 + 0x40]
xchg r10, rcx
sub rcx, rax
xchg r9, rax
mov r9, rdi
xchg r9, rax
imul rcx
sar rdx, 1
sar rdx, 1
mov rax, rdx
shr rax, 0x30
shr rax, 0xc
shr rax, 2
shr rax, 1
add rdx, rax
cmp rdx, 0x54
jae 0x14016fd02
mov edx, 0xbe79618
xor edx, 0x72319d0a
sub edx, 0x19a71755
sub edx, 0x364cb436
add edx, 0x3b1739b4
sub edx, 0x3fc049e2
xor edx, 0x76a46ea2
xor edx, 0x1a045955
xor edx, 0x499918fa
lea rcx, [r14 + 0x30]
call fcn.140175320
lea rcx, [rbp - 0x80]
call fcn.14009c790
mov rdx, qword [r14 + 0x30]
jmp 0x14016fed4
mov rax, qword [r14 + 0x18]
movabs rdi, 0x2aaaaaaa7189a719
sub rdi, 0x1c2ca08d
sub rdi, 0xeb8d014
sub rdi, 0x227c5055
add rdi, 0x1a82b803
add rdi, 0x7fffffff
xor rdi, 0x1400348e
cmp rax, qword [r14 + 0x20]
jne 0x14016fde1
xchg r15, rcx
mov r15, qword [r14 + 0x28]
xchg r15, rcx
sub rcx, rax
xchg rdi, r10
mov rax, r10
xchg r10, rdi
imul rcx
sar rdx, 2
xchg r13, rax
mov r13, rdx
xchg r13, rax
shr rax, 0x36
shr rax, 4
shr rax, 2
shr rax, 2
shr rax, 1
add rdx, rax
cmp rdx, 0x54
jae 0x14016fdd8
mov edx, 0xc2557cd
xor edx, 0x48e5b8da
add edx, 0x1f263077
add edx, 0xd3c5d7e
sub edx, 0x2194c010
sub edx, 0x2f03d6d2
add edx, 0x25a93912
xor edx, 0x116474ce
sub edx, 0x57506b9e
lea rcx, [r14 + 0x18]
call fcn.140175320
lea rcx, [rbp + 0x60]
call fcn.140136b20
mov rdx, qword [r14 + 0x18]
jmp 0x14016fed4
xchg r12, rax
mov r12, qword [r14]
xchg r12, rax
movabs rdi, 0x2aaaaaaa06a0b045
add rdi, 0x21ce871c
add rdi, 0x4afaeabc
sub rdi, 0x44e31054
sub rdi, 0xf7f86a8
add rdi, 0x4e4bc688
xor rdi, 0x6d39e406
xor rdi, 0x65b7a386
add rdi, 0x7fffffff
xor rdi, 0x4f77bc83
cmp rax, qword [r14 + 8]
jne 0x14016fed1
mov rcx, qword [r14 + 0x10]
sub rcx, rax
xchg r12, rdi
mov rax, r12
xchg rdi, r12
imul rcx
sar rdx, 2
xchg rdx, rbx
mov rax, rbx
xchg rdx, rbx
shr rax, 0x15
shr rax, 0x13
shr rax, 5
shr rax, 4
shr rax, 0xc
shr rax, 1
shr rax, 1
add rdx, rax
cmp rdx, 0x54
jae 0x14016fec8
mov edx, 0x2060d1a8
xor edx, 0x434b7ccc
sub edx, 0x2e617da3
add edx, 0x2e797d05
sub edx, 0x5fe7b631
add edx, 0x5cf5ad2
add edx, 0x27c79740
sub edx, 0x30f2e853
xchg rcx, r14
mov r14, rcx
xchg r14, rcx
call fcn.140175320
lea rcx, [rbp + 0x68]
call fcn.1400f33c0
mov rdx, qword [r14]
sub rdx, 0xfffffffffffffbb0
lea rcx, [rbp + 0x110]
call fcn.14007aa80
nop
mov ecx, dword [r14 + 0x48]
mov qword [rbp - 0x58], r14
xchg r14, rdx
mov qword [rbp - 0x48], rdx
xchg r14, rdx
mov qword [rbp - 0x50], r14
test ecx, ecx
je 0x14017003d
sub ecx, 1
je 0x14016ffb6
cmp ecx, 1
jne 0x14017003d
mov rax, qword [r14 + 0x30]
cmp rax, qword [r14 + 0x38]
jne 0x14016ffa7
mov rcx, qword [r14 + 0x40]
sub rcx, rax
xchg rdi, rax
mov rdi, rax
xchg rdi, rax
imul rcx
sar rdx, 1
sar rdx, 1
xchg rdx, rax
mov rdx, rax
xchg rdx, rax
shr rax, 0x17
shr rax, 7
shr rax, 0xf
shr rax, 2
shr rax, 7
shr rax, 6
shr rax, 1
shr rax, 1
shr rax, 1
add rdx, rax
cmp rdx, 0x54
jae 0x14016ff9e
mov edx, 0xa22ff01
add edx, 0x63b1d8de
sub edx, 0x6d1ff68f
xor edx, 0x4dc9358b
add edx, 0x291d5c98
xor edx, 0x769b3127
lea rcx, [r14 + 0x30]
call fcn.140175320
lea rcx, [rbp - 0x58]
call fcn.14009c790
xchg r8, rdx
mov r8, qword [r14 + 0x30]
xchg rdx, r8
jmp 0x1401700d6
mov rax, qword [r14 + 0x18]
cmp rax, qword [r14 + 0x20]
jne 0x140170034
mov rcx, qword [r14 + 0x28]
sub rcx, rax
xchg rdi, r12
mov rax, r12
xchg r12, rdi
imul rcx
sar rdx, 2
xchg rcx, rdx
mov rax, rcx
xchg rcx, rdx
shr rax, 0xf
shr rax, 0x30
add rdx, rax
cmp rdx, 0x54
jae 0x14017002b
mov edx, 0x36623a21
add edx, 0x35e0da36
xor edx, 0xcd098d1
xor edx, 0x43213259
add edx, 0x2179b774
add edx, 0x80b3ee3
sub edx, 0x4d37b4e2
lea rcx, [r14 + 0x18]
call fcn.140175320
lea rcx, [rbp - 0x50]
call fcn.140136b20
mov rdx, qword [r14 + 0x18]
jmp 0x1401700d6
mov rax, qword [r14]
cmp rax, qword [r14 + 8]
jne 0x1401700cd
xchg rcx, rbp
mov rbp, qword [r14 + 0x10]
xchg rcx, rbp
sub rcx, rax
mov rax, rdi
imul rcx
sar rdx, 2
xchg rcx, rax
mov rcx, rdx
xchg rcx, rax
shr rax, 0x20
shr rax, 0x19
shr rax, 4
shr rax, 1
shr rax, 1
add rdx, rax
cmp rdx, 0x54
jae 0x1401700c4
mov edx, 0x191903f1
add edx, 0x158d044f
sub edx, 0x235ec0c0
add edx, 0xf3212a
sub edx, 0xa3efd07
add edx, 0x49c2f70e
add edx, 0x20b0a056
xor edx, 0x2ce02507
xor edx, 0x408f2654
mov rcx, r14
call fcn.140175320
lea rcx, [rbp - 0x48]
call fcn.1400f33c0
xchg rdx, r9
mov r9, qword [r14]
xchg rdx, r9
neg rdx
add rdx, 0xffffffffffffffe8
neg rdx
lea rcx, [rbp + 0x78]
call fcn.14007aa80
nop
mov r12d, dword [rbp + 0x2180]
test r12d, r12d
jne 0x140170125
xorps xmm0, xmm0
xchg r14, rbp
movups xmmword [r14 - 0x20], xmm0
xchg rbp, r14
movdqa xmm1, xmmword [0x140002c70]
xchg rsi, rbp
movdqu xmmword [rsi - 0x10], xmm1
xchg rsi, rbp
mov word [rbp - 0x20], r13w
jmp 0x14017022b
xchg r13, rsi
mov qword [rbp + 0x2190], rsi
xchg rsi, r13
xchg r10, r13
mov qword [rsp + 0x30], r10
xchg r10, r13
mov dword [rsp + 0x28], r13d
lea rax, [rbp + 0x2190]
xchg r12, rax
mov qword [rsp + 0x20], r12
xchg r12, rax
mov r9d, 0x64d1323e
xor r9d, 0x64811a9a
xor r9d, 0x6f77948f
add r9d, 0xc42157
xor r9d, 0x4db058bc
add r9d, 0x1c682151
add r9d, 0x2b3fde0c
sub r9d, 0x98dea99
xor r9d, 0x60759e02
mov r8d, r12d
xor edx, edx
mov ecx, 0x7267c4d5
sub ecx, 0x11887e67
sub ecx, 0x31e68645
add ecx, 0x1252d2c
add ecx, 0x4e598a0b
xor ecx, 0x2ce646d7
xor ecx, 0x529122b7
push rax
call fcn.1402afe76
mov r8d, eax
xorps xmm0, xmm0
xchg rbp, rsi
movups xmmword [rsi + 0x40], xmm0
xchg rbp, rsi
xorps xmm1, xmm1
xchg rbp, r15
movdqu xmmword [r15 + 0x50], xmm1
xchg r15, rbp
mov rdx, qword [rbp + 0x2190]
lea rcx, [rbp + 0x40]
call fcn.140030c70
xchg rdx, rcx
mov rdx, qword [rbp + 0x2190]
xchg rdx, rcx
call fcn.1402f8be6
int3
cmp word [rbp + 0x130], 0
je 0x140170573
mov ecx, dword [r14 + 0x48]
mov qword [rbp - 0x48], r14
xchg rbx, r14
mov qword [rbp - 0x58], rbx
xchg r14, rbx
xchg r14, r10
mov qword [rbp - 0x50], r10
xchg r10, r14
test ecx, ecx
je 0x1401703a6
sub ecx, 1
je 0x14017030b
cmp ecx, 1
jne 0x1401703a6
mov rax, qword [r14 + 0x30]
cmp rax, qword [r14 + 0x38]
jne 0x140170302
xchg r9, rcx
mov r9, qword [r14 + 0x40]
xchg rcx, r9
sub rcx, rax
xchg rcx, rax
mov rcx, rdi
xchg rcx, rax
imul rcx
sar rdx, 1
sar rdx, 1
xchg rdx, rax
mov rdx, rax
xchg rdx, rax
shr rax, 0x32
shr rax, 1
shr rax, 6
shr rax, 2
shr rax, 1
shr rax, 2
shr rax, 1
add rdx, rax
cmp rdx, 0x54
jae 0x1401702f9
mov edx, 0x3780c9d2
xor edx, 0x406b654c
sub edx, 0x20eb8194
xor edx, 0x37b48680
xor edx, 0x76e69111
add edx, 0xfb28f4a
sub edx, 0x2604cb91
lea rcx, [r14 + 0x30]
call fcn.140175320
lea rcx, [rbp - 0x48]
call fcn.14009c790
mov rdx, qword [r14 + 0x30]
jmp 0x14017043f
xchg r13, rax
mov r13, qword [r14 + 0x18]
xchg r13, rax
cmp rax, qword [r14 + 0x20]
jne 0x140170397
xchg rcx, r9
mov r9, qword [r14 + 0x28]
xchg rcx, r9
sub rcx, rax
xchg rdx, rax
mov rdx, rdi
xchg rdx, rax
imul rcx
sar rdx, 2
xchg rsi, rax
mov rsi, rdx
xchg rsi, rax
shr rax, 0x3d
shr rax, 1
shr rax, 1
add rdx, rax
cmp rdx, 0x54
jae 0x14017038e
mov edx, 0x6c0d9ddb
xor edx, 0x25a36370
add edx, 0x35384af3
xor edx, 0x6f7883a4
xor edx, 0x56ae817f
xor edx, 0x6394c6fa
sub edx, 0x1fe6c999
sub edx, 0x4bec3d2
lea rcx, [r14 + 0x18]
call fcn.140175320
lea rcx, [rbp - 0x50]
call fcn.140136b20
xchg r8, rdx
mov r8, qword [r14 + 0x18]
xchg rdx, r8
jmp 0x14017043f
mov rax, qword [r14]
cmp rax, qword [r14 + 8]
jne 0x14017043c
xchg rdi, rcx
mov rdi, qword [r14 + 0x10]
xchg rdi, rcx
sub rcx, rax
xchg r9, rax
mov r9, rdi
xchg r9, rax
imul rcx
sar rdx, 1
sar rdx, 1
xchg r13, rax
mov r13, rdx
xchg r13, rax
shr rax, 7
shr rax, 0x26
shr rax, 0x10
shr rax, 1
shr rax, 1
add rdx, rax
cmp rdx, 0x54
jae 0x140170433
mov edx, 0x273ace99
add edx, 0x4446a326
xor edx, 0x1b59cf77
add edx, 0xe22ada2
sub edx, 0x14a4e237
xor edx, 0x4bc696b9
sub edx, 0xb2be09c
xor edx, 0x16643bba
xchg r14, rcx
mov r14, rcx
xchg rcx, r14
call fcn.140175320
lea rcx, [rbp - 0x58]
call fcn.1400f33c0
mov rdx, qword [r14]
sub rdx, 0x71d99e5b
add rdx, 0x71d9a2c3
lea rcx, [rbp + 0x40]
call fcn.14007aa80
nop
lea rcx, [rbp + 0x40]
call fcn.14007b2d0
inc rsi
cmp word [rax + rsi*2], 0
jne 0x140170460
xchg r8, rsi
mov rsi, r8
xchg rsi, r8
mov rdx, rax
lea rcx, [rbp - 0x20]
call fcn.140175f30
nop
lea rcx, [rbp + 0x40]
call fcn.14007af90
lea rax, [rbp + 0x130]
mov ecx, 0x1ae9c076
xor ecx, 0x8b96594
xor ecx, 0x543aa79
sub ecx, 0x6360f93
add ecx, 0x658d9d29
xor ecx, 0x2351d3cb
sub ecx, 0x2ec725b1
add ecx, 0x4ac4f0df
sub ecx, 0x71391a24
nop dword [rax]
nop word [rax + rax]
xchg r12, rax
movups xmm0, xmmword [r12]
xchg r12, rax
xchg r8, rbx
movups xmmword [r8], xmm0
xchg rbx, r8
xchg r12, rax
movups xmm1, xmmword [r12 + 0x10]
xchg r12, rax
xchg rdi, rbx
movups xmmword [rdi + 0x10], xmm1
xchg rbx, rdi
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rbx + 0x20], xmm0
xchg rbx, rax
movups xmm1, xmmword [rbx + 0x30]
xchg rbx, rax
xchg r14, rbx
movups xmmword [r14 + 0x30], xmm1
xchg r14, rbx
xchg r14, rax
movups xmm0, xmmword [r14 + 0x40]
xchg r14, rax
xchg rbx, r10
movups xmmword [r10 + 0x40], xmm0
xchg rbx, r10
xchg r13, rax
movups xmm1, xmmword [r13 + 0x50]
xchg r13, rax
xchg rbx, r9
movups xmmword [r9 + 0x50], xmm1
xchg r9, rbx
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rbx + 0x60], xmm0
lea rbx, [rbx + 0x80]
xchg rbp, rax
movups xmm1, xmmword [rbp + 0x70]
xchg rbp, rax
movups xmmword [rbx - 0x10], xmm1
lea rax, [rax + 0x80]
sub rcx, 1
jne 0x1401704d6
mov r12d, dword [rbp + 0x2180]
lea rsi, [rbp - 0x20]
cmp qword [rbp - 8], 8
cmovae rsi, qword [rbp - 0x20]
mov rbx, qword [rbp + 0x2198]
mov edi, dword [rbp + 0x2188]
lea rcx, [rbp + 0x110]
call fcn.14007b2d0
lea rcx, [rbp + 0x130]
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x20], rbx
mov r9d, r12d
mov r8d, edi
xchg r12, rax
mov rdx, r12
xchg r12, rax
xchg rcx, r14
mov r14, rcx
xchg rcx, r14
call fcn.14016d670
nop
mov rdx, qword [rbp - 8]
cmp rdx, 8
jb 0x140170630
lea rdx, [rdx*2 + 2]
xchg rcx, r12
mov r12, qword [rbp - 0x20]
xchg rcx, r12
xchg rsi, rcx
mov rax, rsi
xchg rsi, rcx
cmp rdx, 0x1000
jb 0x14017062b
sub rdx, 0xffffffffffffffd9
mov rcx, qword [rcx - 8]
sub rax, rcx
nop
sub rax, 0xffffffffde0c953d
add rax, 0xffffffffde0c9535
cmp rax, 0x1f
jbe 0x14017062b
call fcn.14078c8ff
int3
call fcn.1401fd098
movdqa xmm0, xmmword [0x140002c70]
xchg r13, rbp
movdqu xmmword [r13 - 0x10], xmm0
xchg rbp, r13
mov word [rbp - 0x20], r13w
lea rcx, [rbp + 0x78]
call fcn.14007af90
nop
lea rcx, [rbp + 0x110]
call fcn.14007af90
mov byte [0x140217064], 1
mov rdx, qword gs:[0x40]
mov rcx, qword [r14 + 0x50]
call fcn.1401c4300
mov rcx, qword [r14 + 0x50]
call fcn.1401c4040
test al, al
je 0x1401706a9
mov dl, 0x25
sub dl, 0x16
add dl, 0x67
sub dl, 0x47
add dl, 0xe
sub dl, 1
sub dl, 0x3b
mov rcx, qword [r14 + 0x2a0]
call fcn.14017b620
mov al, 0x73
sub al, 0x3e
xor al, 0x1e
add al, 6
xor al, 0x61
sub al, 2
sub al, 0x46
sub al, 7
add rsp, 0x2238
nop
mov r15, qword [rsp]
add rsp, 8
nop
mov r14, qword [rsp]
add rsp, 8
nop
xchg qword [rsp], r13
add rsp, 8
nop
add rsp, 8
xchg qword [rsp - 8], r12
nop
add rsp, 8
xchg qword [rsp - 8], rdi
nop
xchg qword [rsp], rsi
add rsp, 8
nop
add rsp, 8
mov rbx, qword [rsp - 8]
nop
mov rbp, qword [rsp]
add rsp, 8
nop
add rsp, 8
jmp qword [rsp - 8]