Function at 0x1401b3610
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
xchg rbp, r14
mov qword [rsp + 0x10], r14
xchg r14, rbp
mov qword [rsp + 0x18], rsi
nop
mov qword [rsp - 8], rdi
sub rsp, 8
push r12
mov qword [rsp], r12
nop
mov qword [rsp - 8], r13
sub rsp, 8
push r14
nop
mov qword [rsp - 8], r15
sub rsp, 8
sub rsp, 0x40
xchg r14, r9
mov r9, r14
xchg r14, r9
mov rbx, r8
mov r12, rdx
mov r15, rcx
xchg rsi, r10
mov rsi, qword [r8 + 0x10]
xchg rsi, r10
cmp qword [r8 + 0x18], 0x10
jb 0x1401b3679
mov r8, qword [r8]
movabs rdi, 0xcbf29ce416def427
add rdi, 0x37884cc2
add rdi, 0x1a6152bc
xor rdi, 0xd928373
sub rdi, 0x481d5154
add rdi, 0x2f2a7f75
add rdi, 0xb0cbdb2
add rdi, 0x2cae267c
xor r13d, r13d
mov ecx, r13d
test r10, r10
je 0x1401b3748
movabs rdx, 0x1005d811bc1
sub rdx, 0x59a7d46f
add rdx, 0x4fd0894a
sub rdx, 0x44689207
add rdx, 0x24469ff5
add rdx, 0x3a2c5fe6
sub rdx, 0x44eb5d59
xor rdx, 0x2591a5e1
sub rdx, 0xd594343
nop word [rax + rax]
movzx eax, byte [rcx + r8]
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
or rdi, qword [rsp]
add rsp, 0x10
imul rdi, rdx
inc rcx
cmp rcx, r10
jb 0x1401b3710
xchg rcx, r9
mov rcx, rdi
xchg rcx, r9
xchg r10, rbx
mov r8, r10
xchg r10, rbx
lea rdx, [rsp + 0x20]
xchg rcx, r15
mov r15, rcx
xchg rcx, r15
call fcn.1401b24f0
xchg rdx, rax
mov rdx, qword [rsp + 0x28]
xchg rdx, rax
test rax, rax
je 0x1401b3791
xchg r9, rax
mov qword [r12], r9
xchg r9, rax
mov byte [r12 + 8], r13b
jmp 0x1401b3c99
movabs rax, 0x33333333ad303b3
add rax, 0x288e5fc9
xor rax, 0x512444b3
add rax, 0x28adc92f
xor rax, 0x4dab2ca6
add rax, 0x18868b2
add rax, 0x1a50ee29
cmp qword [r15 + 0x10], rax
je 0x1401b3ce8
lea rbp, [r15 + 8]
xchg rbp, r13
mov qword [rsp + 0x30], r13
xchg r13, rbp
xchg r13, rcx
mov qword [rsp + 0x38], rcx
xchg rcx, r13
mov ecx, 0x11f4057c
add ecx, 0x4a0e5435
xor ecx, 0x1b267715
add ecx, 0x2e23b6b8
xor ecx, 0x59e6a823
sub ecx, 0x2ca14d2f
call fcn.1401fc7c8
xchg rsi, r14
mov r14, rax
xchg rsi, r14
mov qword [rsp + 0x38], rax
xorps xmm0, xmm0
movups xmmword [rax + 0x10], xmm0
xchg r13, r12
mov qword [rax + 0x20], r12
xchg r13, r12
xchg r11, r13
mov qword [rax + 0x28], r11
xchg r11, r13
xchg rbx, r12
movups xmm0, xmmword [r12]
xchg rbx, r12
xchg r13, rax
movups xmmword [r13 + 0x10], xmm0
xchg r13, rax
xchg rbx, r15
movups xmm1, xmmword [r15 + 0x10]
xchg rbx, r15
xchg r8, rax
movups xmmword [r8 + 0x20], xmm1
xchg r8, rax
xchg r13, r11
mov qword [rbx + 0x10], r11
xchg r13, r11
mov qword [rbx + 0x18], 0x24c8293b
add qword [rbx + 0x18], 0x782b306
xor qword [rbx + 0x18], 0x693d4bcb
add qword [rbx + 0x18], 0x2d4ee5e8
xor qword [rbx + 0x18], 0x7e948925
add qword [rbx + 0x18], 0x560db402
sub qword [rbx + 0x18], 0x6260a84a
mov byte [rbx], 0x51
sub byte [rbx], 0x13
xor byte [rbx], 0x5d
xor byte [rbx], 0x6d
xor byte [rbx], 0x7c
sub byte [rbx], 0x16
xor byte [rbx], 0x1e
xor byte [rbx], 0x54
sub byte [rbx], 0x16
xorps xmm0, xmm0
xchg rdi, rax
movups xmmword [rdi + 0x30], xmm0
xchg rdi, rax
xchg rdi, r13
mov qword [rax + 0x40], rdi
xchg r13, rdi
mov qword [rax + 0x48], r13
xchg r11, r14
movups xmm0, xmmword [r11]
xchg r11, r14
xchg rcx, rax
movups xmmword [rcx + 0x30], xmm0
xchg rcx, rax
xchg r14, r10
movups xmm1, xmmword [r10 + 0x10]
xchg r10, r14
xchg rsi, rax
movups xmmword [rsi + 0x40], xmm1
xchg rsi, rax
xchg r13, rbx
mov qword [r14 + 0x10], rbx
xchg rbx, r13
mov qword [r14 + 0x18], 0x26ae991a
xor qword [r14 + 0x18], 0x23503777
add qword [r14 + 0x18], 0x6dd3b6a
xor qword [r14 + 0x18], 0x1b48753e
add qword [r14 + 0x18], 0x15430f13
sub qword [r14 + 0x18], 0x1d3ec54b
xor qword [r14 + 0x18], 0xf97e6be
mov byte [r14], 0xe
add byte [r14], 0x1f
add byte [r14], 0x39
sub byte [r14], 0x1e
xor byte [r14], 0x31
sub byte [r14], 0x1f
sub byte [r14], 0x5a
xchg rcx, r13
mov r13, qword [r15 + 0x10]
xchg rcx, r13
xchg rbx, r15
movss xmm3, dword [rbx]
xchg rbx, r15
neg rcx
add rcx, 0xffffffffffffffff
neg rcx
xorps xmm0, xmm0
js 0x1401b3986
cvtsi2ss xmm0, rcx
jmp 0x1401b399b
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
mov rbx, qword [r15 + 0x38]
xorps xmm2, xmm2
test rbx, rbx
js 0x1401b39b5
cvtsi2ss xmm2, rbx
jmp 0x1401b39d9
xchg r11, rbx
mov rcx, r11
xchg r11, rbx
shr rcx, 1
xchg rbx, rsi
mov rax, rsi
xchg rbx, rsi
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 0x1401b3beb
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 0x1401b3a48
subss xmm0, xmm1
comiss xmm0, xmm1
jae 0x1401b3a48
movabs rax, 0x800000003c742a57
add rax, 0x30e50bd2
add rax, 0x4759200
sub rax, 0x538bcc7a
xor rax, 0x40de263f
xor rax, 0x6126eb92
xor rax, 0x3fba3602
mov rcx, rax
cvttss2si rax, xmm0
add rax, rcx
mov ecx, 0x13627150
add ecx, 0x2ceff701
sub ecx, 0x232cb12d
xor ecx, 0x8f42c7
xor ecx, 0x411d2696
xor ecx, 0x35d3ad8b
sub ecx, 0x3b52317a
sub ecx, 0x9b5c033
sub ecx, 0x245c8d49
cmp rax, rcx
cmova rcx, rax
cmp rbx, rcx
jae 0x1401b3ab6
cmp rbx, 0x200
jae 0x1401b3ab3
lea rbx, [rbx*8]
cmp rbx, rcx
jae 0x1401b3ab6
mov rbx, rcx
xchg rdx, rbx
mov rbx, rdx
xchg rbx, rdx
xchg r11, rcx
mov r11, r15
xchg r11, rcx
call fcn.1401bcbd0
xchg r9, rax
mov r9, rdi
xchg r9, rax
and rax, qword [r15 + 0x30]
add rax, rax
mov r13, qword [r15 + 0x18]
mov rbx, qword [r13 + rax*8 + 8]
mov rcx, qword [rbp]
cmp rbx, rcx
jne 0x1401b3b01
xchg rdx, rcx
mov qword [rsp + 0x20], rdx
xchg rdx, rcx
jmp 0x1401b3b98
mov r13, qword [r13 + rax*8]
mov rbp, qword [rsi + 0x20]
nop word [rax + rax]
lea rdx, [rbx + 0x10]
mov rax, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0x10
jb 0x1401b3b2b
mov rdx, qword [rdx]
lea rcx, [rsi + 0x10]
cmp qword [rsi + 0x28], 0x10
jb 0x1401b3b3e
mov rcx, qword [rsi + 0x10]
cmp rbp, rax
jne 0x1401b3b5d
xchg r9, rbp
mov r8, r9
xchg rbp, r9
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x1401b3b6f
cmp rbx, r13
je 0x1401b3b89
mov rbx, qword [rbx + 8]
jmp 0x1401b3b15
mov rax, qword [rbx]
xchg r10, rax
mov qword [rsp + 0x20], r10
xchg r10, rax
mov qword [rsp + 0x28], rbx
lea rbp, [r15 + 8]
jmp 0x1401b3be0
xchg r15, rbx
mov qword [rsp + 0x20], r15
xchg rbx, r15
lea rbp, [r15 + 8]
mov qword [rsp + 0x28], 0x43b9cc35
sub qword [rsp + 0x28], 0x2af653d3
xor qword [rsp + 0x28], 0x16bc1203
sub qword [rsp + 0x28], 0x721824b
add qword [rsp + 0x28], 0x2118f9bc
add qword [rsp + 0x28], 0x2a8404f4
xor qword [rsp + 0x28], 0x3c9ff383
xor qword [rsp + 0x28], 0x6e651545
movaps xmm0, xmmword [rsp + 0x20]
movdqa xmmword [rsp + 0x20], xmm0
mov rdx, qword [rsp + 0x20]
xchg rcx, r8
mov rcx, qword [rdx + 8]
xchg r8, rcx
inc qword [r15 + 0x10]
mov qword [rsi], rdx
xchg r10, r8
mov qword [rsi + 8], r10
xchg r8, r10
mov qword [r8], rsi
mov qword [rdx + 8], rsi
xchg rcx, rbx
mov rbx, qword [r15 + 0x18]
xchg rcx, rbx
mov rax, qword [r15 + 0x30]
and rax, rdi
add rax, rax
mov r9, qword [rcx + rax*8]
cmp r9, qword [rbp]
jne 0x1401b3c43
xchg r10, rsi
mov qword [rcx + rax*8], r10
xchg r10, rsi
jmp 0x1401b3c60
cmp r9, rdx
jne 0x1401b3c55
mov qword [rcx + rax*8], rsi
jmp 0x1401b3c65
cmp qword [rcx + rax*8 + 8], r8
jne 0x1401b3c65
mov qword [rcx + rax*8 + 8], rsi
xchg rsi, rdi
mov qword [r12], rdi
xchg rdi, rsi
mov byte [r12 + 8], 0x66
sub byte [r12 + 8], 0x66
add byte [r12 + 8], 0x21
xor byte [r12 + 8], 0x13
sub byte [r12 + 8], 0x31
xor byte [r12 + 8], 0x67
sub byte [r12 + 8], 0x65
mov rax, r12
mov rbx, qword [rsp + 0x70]
mov rbp, qword [rsp + 0x78]
xchg rdx, rsi
mov rdx, qword [rsp + 0x80]
xchg rsi, rdx
add rsp, 0x40
nop
mov r15, qword [rsp]
add rsp, 8
nop
add rsp, 8
xchg qword [rsp - 8], r14
nop
add rsp, 8
mov r13, qword [rsp - 8]
nop
xchg qword [rsp], r12
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