Function at 0x1401b2fc0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
xchg rbp, r13
mov qword [rsp + 0x10], r13
xchg rbp, r13
mov qword [rsp + 0x18], rsi
push rdi
push r11
mov qword [rsp], r12
push r13
push r14
push r15
sub rsp, 0x40
xchg r12, r14
mov r12, r9
xchg r14, r12
xchg r11, r8
mov rbx, r11
xchg r8, r11
xchg r15, r12
mov r12, rdx
xchg r15, r12
mov r13, rcx
xchg r11, r9
mov r9, qword [r8 + 0x10]
xchg r11, r9
xchg r10, r8
mov r8, r10
xchg r10, r8
cmp qword [r8 + 0x18], 0x10
jb 0x1401b302b
xchg rbx, r10
mov rbx, qword [r8]
xchg rbx, r10
movabs rdi, 0xcbf29ce42552f14f
sub rdi, 0x1a03a268
sub rdi, 0xac0c741
add rdi, 0x93733f6
add rdi, 0x57331605
xor rdi, 0x3d729a56
xor rdi, 0x495d6762
add rdi, 0x6f4af690
xor r8d, r8d
test r11, r11
je 0x1401b30f7
movabs rcx, 0x100758d7842
xor rcx, 0x424096
xor rcx, 0x383afba6
xor rcx, 0x38ffb807
sub rcx, 0x948f26d
xor rcx, 0x659d35b9
xor rcx, 0x1d56843f
add rcx, 0x2b0b0134
sub rcx, 0x3e15380f
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 0x1401b30bf
xchg r9, r10
mov r10, rdi
xchg r10, r9
mov r8, rbx
lea rdx, [rsp + 0x30]
xchg rdx, r13
mov rcx, rdx
xchg rdx, r13
call fcn.1401b26e0
xchg r11, rax
mov r11, qword [rsp + 0x38]
xchg r11, rax
test rax, rax
je 0x1401b3158
mov qword [r15], rax
mov byte [r15 + 8], 0x5b
xor byte [r15 + 8], 0x2a
xor byte [r15 + 8], 0x4b
xor byte [r15 + 8], 0x38
xor byte [r15 + 8], 0x66
sub byte [r15 + 8], 0x62
add byte [r15 + 8], 0x5d
sub byte [r15 + 8], 0x5f
jmp 0x1401b35a6
movabs rax, 0x3ffffff3f8e3232
sub rax, 0x13061a19
xor rax, 0x227c5ca9
add rax, 0x39254f0b
add rax, 0x31a567ce
xor rax, 0x728d5176
add rax, 0x7fffffff
add rax, 0x74cc5501
cmp qword [r13 + 0x10], rax
je 0x1401b35fa
lea r12, [r13 + 8]
mov qword [rsp + 0x20], r12
mov qword [rsp + 0x28], 0x115bec09
add qword [rsp + 0x28], 0xf41d45c
xor qword [rsp + 0x28], 0x33ab03e2
add qword [rsp + 0x28], 0x534dcc9e
sub qword [rsp + 0x28], 0x26642fa3
xor qword [rsp + 0x28], 0x79b73176
xor qword [rsp + 0x28], 0x6f25f015
xor qword [rsp + 0x28], 0x56b2a1e1
mov ecx, 0x695f322a
sub ecx, 0xc7a71f2
xor ecx, 0x63bcfbfd
add ecx, 0xaff35ac
sub ecx, 0x40a831d4
add ecx, 0x3f714aad
sub ecx, 0x49208a0a
call fcn.1401fc7c8
xchg rsi, rax
mov rax, rsi
xchg rsi, rax
xchg rcx, rax
mov qword [rsp + 0x28], rcx
xchg rcx, rax
lea rbp, [rax + 0x10]
mov rdx, rbx
xchg rcx, rbp
mov rbp, rcx
xchg rbp, rcx
call fcn.140049760
xor eax, eax
mov qword [rbp + 0x20], rax
xchg rcx, rax
mov qword [rbp + 0x28], rcx
xchg rcx, rax
xchg rsi, rax
mov rsi, qword [r14 + 8]
xchg rsi, rax
test rax, rax
je 0x1401b3262
lock inc dword [rax + 8]
mov rsi, qword [rsp + 0x28]
xchg rdi, rax
mov rdi, qword [r14]
xchg rdi, rax
xchg rsi, rax
mov qword [rbp + 0x20], rsi
xchg rsi, rax
xchg r11, rax
mov r11, qword [r14 + 8]
xchg r11, rax
mov qword [rbp + 0x28], rax
mov rcx, qword [r13 + 0x10]
xchg r13, rdx
movss xmm3, dword [rdx]
xchg r13, rdx
sub rcx, 0xffffffffffffffff
xorps xmm0, xmm0
js 0x1401b32a2
cvtsi2ss xmm0, rcx
jmp 0x1401b32bd
xchg rcx, r15
mov rax, r15
xchg rcx, r15
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 0x1401b32d7
cvtsi2ss xmm2, rbx
jmp 0x1401b32f5
xchg r13, rbx
mov rcx, r13
xchg r13, rbx
shr rcx, 1
mov rax, rbx
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 0x1401b34f2
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 0x1401b3362
subss xmm0, xmm1
comiss xmm0, xmm1
jae 0x1401b3362
movabs rax, 0x80000000708b3c11
sub rax, 0x4ed6bee2
xor rax, 0x4e73ec98
xor rax, 0x3caf45ee
xor rax, 0x1c5af72f
sub rax, 0x4f322376
xchg rcx, rax
mov rax, rcx
xchg rcx, rax
cvttss2si rax, xmm0
add rax, rcx
mov ecx, 0x56c1b60
xor ecx, 0x1df3efb3
xor ecx, 0xb5c5142
add ecx, 0x383124bd
xor ecx, 0x1434a22d
sub ecx, 0x19b7f8e5
xor ecx, 0x32450ea5
sub ecx, 0x281a44c3
xor ecx, 0x4c331d10
cmp rax, rcx
cmova rcx, rax
cmp rbx, rcx
jae 0x1401b33d0
cmp rbx, 0x200
jae 0x1401b33cd
lea rbx, [rbx*8]
cmp rbx, rcx
jae 0x1401b33d0
mov rbx, rcx
xchg rdx, r14
mov r14, rbx
xchg rdx, r14
mov rcx, r13
call fcn.1401bd0b0
mov rax, qword [r13 + 0x30]
and rax, rdi
add rax, rax
mov rdx, qword [r13 + 0x18]
mov rbx, qword [rdx + rax*8 + 8]
mov rcx, qword [r12]
cmp rbx, rcx
jne 0x1401b340b
mov qword [rsp + 0x20], rcx
jmp 0x1401b34b1
mov r12, qword [rdx + rax*8]
xchg r12, rbp
mov r12, qword [rsi + 0x20]
xchg rbp, r12
nop word [rax + rax]
lea rdx, [rbx + 0x10]
xchg rcx, rax
mov rcx, qword [rdx + 0x10]
xchg rcx, rax
cmp qword [rdx + 0x18], 0x10
jb 0x1401b343e
mov rdx, qword [rdx]
lea rcx, [rsi + 0x10]
cmp qword [rsi + 0x28], 0x10
jb 0x1401b3457
xchg rcx, r9
mov r9, qword [rsi + 0x10]
xchg rcx, r9
cmp rbp, rax
jne 0x1401b3476
xchg r8, r12
mov r12, rbp
xchg r8, r12
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x1401b3488
cmp rbx, r12
je 0x1401b34a2
mov rbx, qword [rbx + 8]
jmp 0x1401b3424
mov rax, qword [rbx]
xchg r13, rax
mov qword [rsp + 0x20], r13
xchg r13, rax
mov qword [rsp + 0x28], rbx
lea r12, [r13 + 8]
jmp 0x1401b34e7
xchg rbx, r15
mov qword [rsp + 0x20], r15
xchg r15, rbx
lea r12, [r13 + 8]
mov qword [rsp + 0x28], 0x60618f0f
sub qword [rsp + 0x28], 0x242e9db6
add qword [rsp + 0x28], 0x4a9820
sub qword [rsp + 0x28], 0x39e0de44
xor qword [rsp + 0x28], 0x33a6b870
sub qword [rsp + 0x28], 0x313a1345
movaps xmm0, xmmword [rsp + 0x20]
movdqa xmmword [rsp + 0x30], xmm0
xchg rdx, rdi
mov rdi, qword [rsp + 0x30]
xchg rdi, rdx
mov r8, qword [rdx + 8]
inc qword [r13 + 0x10]
mov qword [rsi], rdx
mov qword [rsi + 8], r8
xchg rcx, rsi
mov qword [r8], rcx
xchg rcx, rsi
mov qword [rdx + 8], rsi
xchg rbx, rcx
mov rbx, qword [r13 + 0x18]
xchg rbx, rcx
xchg rdx, rax
mov rdx, qword [r13 + 0x30]
xchg rdx, rax
and rax, rdi
add rax, rax
mov r9, qword [rcx + rax*8]
cmp r9, qword [r12]
jne 0x1401b3548
mov qword [rcx + rax*8], rsi
jmp 0x1401b356b
cmp r9, rdx
jne 0x1401b3560
xchg rsi, r10
mov qword [rcx + rax*8], r10
xchg rsi, r10
jmp 0x1401b3570
cmp qword [rcx + rax*8 + 8], r8
jne 0x1401b3570
mov qword [rcx + rax*8 + 8], rsi
xchg rcx, rsi
mov qword [r15], rcx
xchg rcx, rsi
mov byte [r15 + 8], 0x5d
add byte [r15 + 8], 0x20
xor byte [r15 + 8], 0x18
xor byte [r15 + 8], 0x57
add byte [r15 + 8], 7
xor byte [r15 + 8], 0x20
xor byte [r15 + 8], 0x58
xor byte [r15 + 8], 0x66
sub byte [r15 + 8], 0x26
xchg rsi, r15
mov rax, rsi
xchg r15, rsi
mov rbx, qword [rsp + 0x70]
mov rbp, qword [rsp + 0x78]
xchg r14, rsi
mov r14, qword [rsp + 0x80]
xchg rsi, r14
add rsp, 0x40
nop
add rsp, 8
xchg qword [rsp - 8], r15
nop
mov r14, qword [rsp]
add rsp, 8
nop
xchg qword [rsp], r13
add rsp, 8
nop
mov r12, qword [rsp]
add rsp, 8
nop
mov rdi, qword [rsp]
add rsp, 8
ret
lea rcx, [0x140001510]
call sub.MSVCP140.dll_void___cdecl_std::_Xlength_error_char_const____ptr64_
int3