Function at 0x14016dd70
Capabilities:
Encode data using xor

Disassembly:
push rax
mov qword [rsp], rbp
push rbx
nop
sub rsp, 8
mov qword [rsp], rsi
nop
sub rsp, 8
mov qword [rsp], rdi
nop
mov qword [rsp - 8], r14
sub rsp, 8
lea rbp, [rsp - 0x37]
sub rsp, 0xc0
mov rdi, rcx
xor r14d, r14d
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
mov ecx, dword [rdi + 0x48]
xchg r11, rdi
mov qword [rbp + 0x67], r11
xchg r11, rdi
xchg rdi, r10
mov qword [rbp + 0x77], r10
xchg rdi, r10
mov qword [rbp + 0x6f], rdi
test ecx, ecx
je 0x14016df2f
sub ecx, 1
je 0x14016de7f
cmp ecx, 1
jne 0x14016df2f
xchg rcx, rax
mov rcx, qword [rdi + 0x30]
xchg rcx, rax
cmp rax, qword [rdi + 0x38]
jne 0x14016de76
mov rcx, qword [rdi + 0x40]
sub rcx, rax
movabs rax, 0x2aaaaaaa000d2085
xor rax, 0x4b4492cd
xor rax, 0x27784f21
sub rax, 0x2aed0531
sub rax, 0x2d26654e
xor rax, 0x3256738f
add rax, 0x43973371
sub rax, 0x30aee1e8
add rax, 0x717977bd
imul rcx
sar rdx, 1
sar rdx, 1
xchg rdx, rax
mov rdx, rax
xchg rdx, rax
shr rax, 0x20
shr rax, 0x1b
shr rax, 3
shr rax, 1
add rdx, rax
cmp rdx, 0x54
jae 0x14016de6d
lea edx, [r14 + 0x54]
lea rcx, [rdi + 0x30]
call fcn.1401754d0
lea rcx, [rbp + 0x67]
call fcn.14009c980
mov rdx, qword [rdi + 0x30]
jmp 0x14016dfd9
xchg r11, rax
mov r11, qword [rdi + 0x18]
xchg r11, rax
cmp rax, qword [rdi + 0x20]
jne 0x14016df26
xchg rcx, r13
mov r13, qword [rdi + 0x28]
xchg rcx, r13
sub rcx, rax
movabs rax, 0x2aaaaaaa5484abb5
add rax, 0xbb8007a
add rax, 0x5ce71ca
xor rax, 0x2c6d454b
add rax, 0x22062996
xor rax, 0x2ff656e4
add rax, 0x670fd5ff
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x12
shr rax, 0x2d
add rdx, rax
cmp rdx, 0x54
jae 0x14016df1d
mov edx, 0x48d8d5a8
add edx, 0x3fd2898
add edx, 0x73dcf4a
add edx, 0xd21cecc
xor edx, 0x743ff3d0
add edx, 0x40f10b13
xor edx, 0x55fb7acd
lea rcx, [rdi + 0x18]
call fcn.1401754d0
lea rcx, [rbp + 0x6f]
call fcn.140136c60
mov rdx, qword [rdi + 0x18]
jmp 0x14016dfd9
xchg r8, rax
mov r8, qword [rdi]
xchg r8, rax
cmp rax, qword [rdi + 8]
jne 0x14016dfd6
mov rcx, qword [rdi + 0x10]
sub rcx, rax
movabs rax, 0x2aaaaaaa24632183
add rax, 0x9fbf460
add rax, 0x344f607d
sub rax, 0x4f9c4281
xor rax, 0x72c2c460
add rax, 0x48d9b2ec
imul rcx
sar rdx, 2
xchg rdx, rax
mov rdx, rax
xchg rdx, rax
shr rax, 0x38
shr rax, 1
shr rax, 2
shr rax, 3
shr rax, 1
add rdx, rax
cmp rdx, 0x54
jae 0x14016dfcd
mov edx, 0x37458d25
xor edx, 0x3d9dc9f7
add edx, 0x701ab6c7
add edx, 0x3a807b5
xor edx, 0x7fb1e97a
sub edx, 0x12ae9e0
xchg rdi, rcx
mov rdi, rcx
xchg rcx, rdi
call fcn.1401754d0
lea rcx, [rbp + 0x77]
call fcn.1400f3500
mov rdx, qword [rdi]
nop
add rdx, 0x6510ff4d
sub rdx, 0x6510ff35
lea rcx, [rbp - 9]
call fcn.14007aa10
nop
lea rcx, [rbp - 9]
call fcn.14007b260
xorps xmm0, xmm0
movups xmmword [rbp - 0x29], xmm0
mov qword [rbp - 0x19], r14
xchg rcx, r14
mov qword [rbp - 0x11], rcx
xchg r14, rcx
nop
movabs rbx, 0xffffffff03141f02
add rbx, 0x693a9500
xor rbx, 0x79f88c37
add rbx, 0x544cf61f
sub rbx, 0x287d82a3
xor rbx, 0x20e0a2cd
xor rbx, 0x4e0b1b76
add rbx, 0x7fffffff
add rbx, 0x5091edf6
xchg rbp, rbx
mov r8, rbp
xchg rbp, rbx
inc r8
cmp word [rax + r8*2], 0
jne 0x14016e05c
mov rdx, rax
lea rcx, [rbp - 0x29]
call fcn.140030e10
nop
lea rcx, [rbp - 9]
call fcn.14007af20
mov dword [rbp - 0x69], 0x2ad2a38c
add dword [rbp - 0x69], 0x3d503555
sub dword [rbp - 0x69], 0x2b9814ef
add dword [rbp - 0x69], 0x340ee82e
sub dword [rbp - 0x69], 0x34c4e770
add dword [rbp - 0x69], 0x3384da7a
xor dword [rbp - 0x69], 0x5a860cd5
xor dword [rbp - 0x69], 0x7ee312a4
add dword [rbp - 0x69], 0xabba759b
mov dword [rbp - 0x5f], 0x5c056088
xor dword [rbp - 0x5f], 0x50ce763c
add dword [rbp - 0x5f], 0x3dd78b39
sub dword [rbp - 0x5f], 0x3a9327ac
sub dword [rbp - 0x5f], 0xb97e71
xor dword [rbp - 0x5f], 0x7949693e
add dword [rbp - 0x5f], 0x891e6c3c
mov dword [rbp - 0x5b], 0x7a56a539
sub dword [rbp - 0x5b], 0x5ea82745
xor dword [rbp - 0x5b], 0x5d42bfde
sub dword [rbp - 0x5b], 0x32f43bb
sub dword [rbp - 0x5b], 0x172b2e9
xor dword [rbp - 0x5b], 0x4a4d8f03
add dword [rbp - 0x5b], 0x6b74bf49
xor dword [rbp - 0x5b], 0x264fba4d
add dword [rbp - 0x5b], 0xa9fc45ff
mov dword [rbp - 0x65], 0x14543812
xor dword [rbp - 0x65], 0x2d42f3d1
sub dword [rbp - 0x65], 0x29549871
xor dword [rbp - 0x65], 0x1785d14b
add dword [rbp - 0x65], 0x1f8e127a
sub dword [rbp - 0x65], 0x10920878
xor dword [rbp - 0x65], 0xd1b51aed
mov dword [rbp - 0x57], 0x4b91b35d
xor dword [rbp - 0x57], 0x5651ca4d
xor dword [rbp - 0x57], 0x4d304e9b
sub dword [rbp - 0x57], 0xe8ad322
sub dword [rbp - 0x57], 0x79bb2eb
add dword [rbp - 0x57], 0xc47b4de4
mov dword [rbp - 0x53], 0x59821463
sub dword [rbp - 0x53], 0x40770055
xor dword [rbp - 0x53], 0x66cc0e12
xor dword [rbp - 0x53], 0x5169b46b
sub dword [rbp - 0x53], 0x24862b25
add dword [rbp - 0x53], 0x3d5efebc
add dword [rbp - 0x53], 0xb7a87d1c
mov byte [rbp - 0x61], 0x22
sub byte [rbp - 0x61], 0x16
xor byte [rbp - 0x61], 0x5f
xor byte [rbp - 0x61], 0x1a
xor byte [rbp - 0x61], 0x15
sub byte [rbp - 0x61], 0x4a
add byte [rbp - 0x61], 0x42
add byte [rbp - 0x61], 0xa2
mov dword [rbp - 0x4f], 0x26541b7e
add dword [rbp - 0x4f], 0x56988736
sub dword [rbp - 0x4f], 0x4cf802e0
add dword [rbp - 0x4f], 0x4aa02597
sub dword [rbp - 0x4f], 0x6976358d
xor dword [rbp - 0x4f], 0x111e70a3
xchg r14, rdx
mov r14, rdx
xchg rdx, r14
nop dword [rax]
movzx eax, word [rbp + rdx*2 - 0x5f]
movzx ecx, byte [rbp + rdx - 0x69]
add cx, ax
mov word [rbp + rdx*2 - 0x5f], cx
mov byte [rbp + rdx - 0x69], 0x4d
xor byte [rbp + rdx - 0x69], 0x38
sub byte [rbp + rdx - 0x69], 0x2b
xor byte [rbp + rdx - 0x69], 4
xor byte [rbp + rdx - 0x69], 0x2d
xor byte [rbp + rdx - 0x69], 0x6e
add byte [rbp + rdx - 0x69], 0x2f
sub byte [rbp + rdx - 0x69], 0x3c
inc rdx
cmp rdx, 9
jb 0x14016e216
xorps xmm0, xmm0
xchg rbx, rbp
movups xmmword [rbx + 0x17], xmm0
xchg rbx, rbp
xorps xmm1, xmm1
xchg rbp, r10
movdqu xmmword [r10 + 0x27], xmm1
xchg rbp, r10
lea rax, [rbp - 0x5f]
inc rbx
cmp word [rax + rbx*2], 0
jne 0x14016e27d
xchg r8, r12
mov r12, rbx
xchg r12, r8
lea rdx, [rbp - 0x5f]
lea rcx, [rbp + 0x17]
call fcn.140030e10
nop
lea r8, [rbp - 0x29]
cmp qword [rbp - 0x11], 8
cmovae r8, qword [rbp - 0x29]
xchg r9, r15
mov r15, qword [rbp - 0x19]
xchg r9, r15
xor edx, edx
lea rcx, [rbp + 0x17]
call fcn.1401773c0
xorps xmm0, xmm0
movups xmmword [rbp - 0x49], xmm0
xorps xmm1, xmm1
xchg r12, rbp
movdqu xmmword [r12 - 0x39], xmm1
xchg rbp, r12
xchg r11, rax
movups xmm0, xmmword [r11]
xchg r11, rax
movups xmmword [rbp - 0x49], xmm0
xchg r14, rax
movups xmm1, xmmword [r14 + 0x10]
xchg r14, rax
xchg r15, rbp
movups xmmword [r15 - 0x39], xmm1
xchg rbp, r15
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 0x4acce8fc
sub qword [rax + 0x18], 0x2193304b
xor qword [rax + 0x18], 0x8cdd7d7
sub qword [rax + 0x18], 0x18364dc8
add qword [rax + 0x18], 0x1267c619
add qword [rax + 0x18], 0x5f890992
sub qword [rax + 0x18], 0x7baef142
mov word [rax], r14w
xchg rsi, rdx
mov rsi, qword [rbp + 0x2f]
xchg rdx, rsi
cmp rdx, 8
jb 0x14016e3a9
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x17]
xchg rcx, rax
mov rcx, rax
xchg rcx, rax
cmp rdx, 0x1000
jb 0x14016e3a4
nop
sub rdx, 0x530eb919
add rdx, 0x530eb940
mov rcx, qword [rcx - 8]
sub rax, rcx
nop
add rax, 0xffffffff86505357
sub rax, 0xffffffff8650535f
cmp rax, 0x1f
jbe 0x14016e3a4
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1401fcccc
movdqa xmm0, xmmword [0x140002c70]
movdqu xmmword [rbp + 0x27], xmm0
mov word [rbp + 0x17], r14w
xchg r14, rbp
mov rax, rbp
xchg r14, rbp
mov byte [rbp + rax - 0x5f], 0x18
add byte [rbp + rax - 0x5f], 0x62
sub byte [rbp + rax - 0x5f], 0x22
xor byte [rbp + rax - 0x5f], 0x24
xor byte [rbp + rax - 0x5f], 0x45
sub byte [rbp + rax - 0x5f], 0x27
sub byte [rbp + rax - 0x5f], 0x12
inc rax
cmp rax, 0x12
jb 0x14016e3c4
mov r8d, esi
lea rdx, [rbp - 9]
xchg rcx, rsi
mov rsi, rdi
xchg rcx, rsi
call fcn.140164010
nop
cmp qword [rax + 0x18], 8
jb 0x14016e418
mov rax, qword [rax]
lea rdx, [rbp - 0x49]
cmp qword [rbp - 0x31], 8
cmovae rdx, qword [rbp - 0x49]
mov r9, rax
mov r8d, esi
mov rcx, rdi
call fcn.14016d460
nop
mov rdx, qword [rbp + 0xf]
cmp rdx, 8
jb 0x14016e489
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 9]
xchg rcx, rax
mov rcx, rax
xchg rcx, rax
cmp rdx, 0x1000
jb 0x14016e483
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
sub rax, 8
cmp rax, 0x1f
jbe 0x14016e483
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1401fcccc
nop
mov rdx, qword [rbp - 0x31]
cmp rdx, 8
jb 0x14016e4dc
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x49]
xchg rbx, rax
mov rbx, rcx
xchg rbx, rax
cmp rdx, 0x1000
jb 0x14016e4d7
sub rdx, 0xffffffffffffffd9
mov rcx, qword [rcx - 8]
sub rax, rcx
sub rax, 8
cmp rax, 0x1f
jbe 0x14016e4d7
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1401fcccc
movdqa xmm0, xmmword [0x140002c70]
xchg rbp, rbx
movdqu xmmword [rbx - 0x39], xmm0
xchg rbp, rbx
mov word [rbp - 0x49], r14w
mov rdx, qword [rbp - 0x11]
cmp rdx, 8
jb 0x14016e54f
lea rdx, [rdx*2 + 2]
xchg rcx, r13
mov r13, qword [rbp - 0x29]
xchg r13, rcx
xchg r14, rcx
mov rax, r14
xchg r14, rcx
cmp rdx, 0x1000
jb 0x14016e54a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14016e54a
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1401fcccc
add rsp, 0xc0
push rdx
push rax
push rdx
push rbx
push rdx
xchg qword [rsp + 0x28], r14
pop rdx
pop rbx
pop rdx
pop rax
pop rdx
add rsp, 8
push rcx
push rbx
push rax
push rbx
push rax
xchg qword [rsp + 0x28], rdi
add rsp, 0x30
nop
add rsp, 8
xchg qword [rsp - 8], rsi
push rax
push rax
push rax
push rcx
push rcx
push rdx
xchg qword [rsp + 0x30], rbx
add rsp, 0x38
push rdx
push rax
push rbx
push rax
push rdx
xchg qword [rsp + 0x28], rbp
pop rdx
pop rax
pop rbx
pop rax
pop rdx
add rsp, 8
ret