Function at 0x1401b3220
Capabilities:
Encode data using xor

Disassembly:
xchg rbx, rbp
mov qword [rsp + 8], rbp
xchg rbp, rbx
xchg rbp, rcx
mov qword [rsp + 0x10], rcx
xchg rbp, rcx
mov qword [rsp + 0x18], rsi
nop
sub rsp, 8
mov qword [rsp], rdi
push r11
mov qword [rsp], r12
push r13
nop
mov qword [rsp - 8], r14
sub rsp, 8
push r15
sub rsp, 0x40
xchg r9, r14
mov r9, r14
xchg r9, r14
xchg r8, rcx
mov rbx, rcx
xchg rcx, r8
xchg r15, rdx
mov rdx, r15
xchg rdx, r15
xchg rcx, r13
mov rcx, r13
xchg rcx, r13
mov r11, qword [r8 + 0x10]
xchg r8, rdx
mov r10, rdx
xchg r8, rdx
cmp qword [r8 + 0x18], 0x10
jb 0x1401b32a1
xchg r10, rbp
mov rbp, qword [r8]
xchg rbp, r10
movabs rdi, 0xcbf29ce446a5ad0b
sub rdi, 0x15676a7a
xor rdi, 0x5db29723
xor rdi, 0x2c5ee314
xor rdi, 0x71bf31f1
xor rdi, 0x1d54bc06
sub rdi, 0x10a4d36
add rdi, 0x3c6a338e
add rdi, 0x1c88817c
xor r8d, r8d
test r11, r11
je 0x1401b3374
movabs rcx, 0x1000ea8bf6e
xor rcx, 0x64b2ba66
xor rcx, 0xce6e0f6
xor rcx, 0x58a86b01
sub rcx, 0x32026796
xor rcx, 0x6825dfe7
sub rcx, 0x11755486
add rcx, 0x16bdda74
sub rcx, 0x69c07cc9
nop word [rax + rax]
movzx eax, byte [r8 + r10]
push rdi
xor edi, eax
push rdi
xor rdi, qword [rsp + 8]
shr rdi, 0x20
ror rax, 0x20
xor edi, eax
ror rax, 0x20
shl rdi, 0x20
xor rdi, qword [rsp]
add rsp, 0x10
imul rdi, rcx
inc r8
cmp r8, r11
jb 0x1401b333c
xchg rdx, rdi
mov r9, rdx
xchg rdi, rdx
mov r8, rbx
lea rdx, [rsp + 0x30]
xchg rcx, r12
mov r12, r13
xchg r12, rcx
call fcn.1401b2960
xchg r12, rax
mov r12, qword [rsp + 0x38]
xchg r12, rax
test rax, rax
je 0x1401b33d4
xchg r9, rax
mov qword [r15], r9
xchg r9, rax
mov byte [r15 + 8], SHCreateMemStream
add byte [r15 + 8], 0x51
sub byte [r15 + 8], 0x41
xor byte [r15 + 8], 0x6b
xor byte [r15 + 8], 1
sub byte [r15 + 8], 0x1c
sub byte [r15 + 8], 0x55
jmp 0x1401b382b
movabs rax, 0x3ffffff5d53e5fa
xor rax, 0xa8908e6
sub rax, 0x18f43a1f
sub rax, 0x3e562e3
sub rax, 0x18dcc2bb
xor rax, 0x4e9c9050
add rax, 0x7fffffff
xor rax, 0x1347e2f1
cmp qword [r13 + 0x10], rax
je 0x1401b388b
lea r12, [r13 + 8]
xchg r12, r14
mov qword [rsp + 0x20], r14
xchg r14, r12
mov qword [rsp + 0x28], 0xe579cd4
add qword [rsp + 0x28], 0x31831977
xor qword [rsp + 0x28], 0x4a6470f8
sub qword [rsp + 0x28], 0x2dae443f
add qword [rsp + 0x28], 0x2600ce3a
xor qword [rsp + 0x28], 0x6e1150ae
mov ecx, 0x363f29c7
xor ecx, 0xc24af1f
xor ecx, 0x42f18e14
sub ecx, 0x2480f1de
sub ecx, 0x219468ab
xor ecx, 0x7c4bb6a9
sub ecx, 0x4e9f18aa
call fcn.1401fcb34
xchg r9, rax
mov rsi, r9
xchg r9, rax
mov qword [rsp + 0x28], rax
lea rbp, [rax + 0x10]
mov rdx, rbx
mov rcx, rbp
call fcn.140049ad0
xor eax, eax
xchg rcx, rax
mov qword [rbp + 0x20], rcx
xchg rcx, rax
xchg rbx, rax
mov qword [rbp + 0x28], rbx
xchg rbx, rax
xchg r8, rax
mov r8, qword [r14 + 8]
xchg r8, rax
test rax, rax
je 0x1401b34d2
lock inc dword [rax + 8]
xchg rsi, r11
mov r11, qword [rsp + 0x28]
xchg r11, rsi
mov rax, qword [r14]
mov qword [rbp + 0x20], rax
xchg r15, rax
mov r15, qword [r14 + 8]
xchg r15, rax
xchg rdi, rax
mov qword [rbp + 0x28], rdi
xchg rdi, rax
mov rcx, qword [r13 + 0x10]
xchg r13, r10
movss xmm3, dword [r10]
xchg r10, r13
add rcx, 1
xorps xmm0, xmm0
js 0x1401b350f
cvtsi2ss xmm0, rcx
jmp 0x1401b3528
xchg rcx, rax
mov rcx, rax
xchg rcx, rax
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
mov rbx, qword [r13 + 0x38]
xorps xmm2, xmm2
test rbx, rbx
js 0x1401b3542
cvtsi2ss xmm2, rbx
jmp 0x1401b3564
xchg rdi, rcx
mov rdi, rbx
xchg rdi, rcx
shr rcx, 1
xchg r9, rax
mov r9, rbx
xchg r9, rax
and eax, 1
or rcx, rax
cvtsi2ss xmm2, rcx
addss xmm2, xmm2
movaps xmm1, xmm0
divss xmm1, xmm2
comiss xmm1, xmm3
seta al
test al, al
je 0x1401b376b
divss xmm0, xmm3
call sub.api_ms_win_crt_math_l1_1_0.dll_ceilf
xor ecx, ecx
movss xmm1, dword [0x140001590]
comiss xmm0, xmm1
jb 0x1401b35cd
subss xmm0, xmm1
comiss xmm0, xmm1
jae 0x1401b35cd
movabs rax, 0x800000000cee2282
xor rax, 0x77160322
sub rax, 0x4e9ab9c7
add rax, 0x2e8a8af9
xor rax, 0x655a9398
xor rax, 0x3ebd614a
mov rcx, rax
cvttss2si rax, xmm0
add rax, rcx
mov ecx, 0x5d582f7d
xor ecx, 0x50dac049
add ecx, 0xe38a4db
xor ecx, 0x5e9b3220
xor ecx, 0x42937f7e
add ecx, 0x5268e82a
sub ecx, 0x5a1cc173
cmp rax, rcx
cmova rcx, rax
cmp rbx, rcx
jae 0x1401b3635
cmp rbx, 0x200
jae 0x1401b362c
lea rbx, [rbx*8]
cmp rbx, rcx
jae 0x1401b3635
xchg rbx, r14
mov r14, rcx
xchg rbx, r14
xchg rdx, rbx
mov rbx, rdx
xchg rbx, rdx
mov rcx, r13
call fcn.1401bd380
xchg rbx, rax
mov rbx, qword [r13 + 0x30]
xchg rbx, rax
and rax, rdi
add rax, rax
xchg r12, rdx
mov r12, qword [r13 + 0x18]
xchg rdx, r12
xchg r13, rbx
mov r13, qword [rdx + rax*8 + 8]
xchg rbx, r13
xchg rdx, rcx
mov rdx, qword [r12]
xchg rcx, rdx
cmp rbx, rcx
jne 0x1401b368c
xchg r8, rcx
mov qword [rsp + 0x20], r8
xchg rcx, r8
jmp 0x1401b372a
xchg r12, r8
mov r8, qword [rdx + rax*8]
xchg r12, r8
xchg rbp, r14
mov r14, qword [rsi + 0x20]
xchg rbp, r14
nop word [rax + rax]
lea rdx, [rbx + 0x10]
mov rax, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0x10
jb 0x1401b36c1
mov rdx, qword [rdx]
lea rcx, [rsi + 0x10]
cmp qword [rsi + 0x28], 0x10
jb 0x1401b36d4
mov rcx, qword [rsi + 0x10]
cmp rbp, rax
jne 0x1401b36f3
xchg r13, rbp
mov r8, r13
xchg rbp, r13
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x1401b3705
cmp rbx, r12
je 0x1401b3721
mov rbx, qword [rbx + 8]
jmp 0x1401b36ab
mov rax, qword [rbx]
mov qword [rsp + 0x20], rax
xchg rdx, rbx
mov qword [rsp + 0x28], rdx
xchg rdx, rbx
lea r12, [r13 + 8]
jmp 0x1401b3760
mov qword [rsp + 0x20], rbx
lea r12, [r13 + 8]
mov qword [rsp + 0x28], 0x55efac23
add qword [rsp + 0x28], 0x27958e20
xor qword [rsp + 0x28], 0x60aba833
add qword [rsp + 0x28], 0xdb06692
xor qword [rsp + 0x28], 0x2db8cdae
sub qword [rsp + 0x28], 0x76634ac
movaps xmm0, xmmword [rsp + 0x20]
movdqa xmmword [rsp + 0x30], xmm0
xchg rdx, rsi
mov rsi, qword [rsp + 0x30]
xchg rsi, rdx
xchg r8, r14
mov r14, qword [rdx + 8]
xchg r8, r14
inc qword [r13 + 0x10]
xchg rdx, r9
mov qword [rsi], r9
xchg rdx, r9
xchg r15, r8
mov qword [rsi + 8], r15
xchg r8, r15
mov qword [r8], rsi
mov qword [rdx + 8], rsi
mov rcx, qword [r13 + 0x18]
xchg r14, rax
mov r14, qword [r13 + 0x30]
xchg r14, rax
and rax, rdi
add rax, rax
xchg r9, r12
mov r12, qword [rcx + rax*8]
xchg r9, r12
cmp r9, qword [r12]
jne 0x1401b37d3
xchg rdx, rsi
mov qword [rcx + rax*8], rdx
xchg rdx, rsi
jmp 0x1401b37f0
cmp r9, rdx
jne 0x1401b37e5
mov qword [rcx + rax*8], rsi
jmp 0x1401b37f5
cmp qword [rcx + rax*8 + 8], r8
jne 0x1401b37f5
mov qword [rcx + rax*8 + 8], rsi
xchg rbx, rsi
mov qword [r15], rbx
xchg rsi, rbx
mov byte [r15 + 8], 0x7e
xor byte [r15 + 8], 0x53
sub byte [r15 + 8], 0x19
xor byte [r15 + 8], 0x1d
xor byte [r15 + 8], 0x4c
xor byte [r15 + 8], 0x5f
xor byte [r15 + 8], 0x34
add byte [r15 + 8], 0x14
xor byte [r15 + 8], 0x43
mov rax, r15
xchg r9, rbx
mov r9, qword [rsp + 0x70]
xchg r9, rbx
mov rbp, qword [rsp + 0x78]
xchg r12, rsi
mov r12, qword [rsp + 0x80]
xchg rsi, r12
add rsp, 0x40
nop
add rsp, 8
mov r15, qword [rsp - 8]
nop
mov r14, qword [rsp]
add rsp, 8
push rbx
push rdx
xchg qword [rsp + 0x10], r13
add rsp, 0x18
nop
add rsp, 8
xchg qword [rsp - 8], r12
nop
add rsp, 8
xchg qword [rsp - 8], rdi
nop
add rsp, 8
jmp qword [rsp - 8]
lea rcx, [0x140001510]
call fcn.1401fd790
int3