Function at 0x140005d10
Capabilities:
Encode data using xor

Disassembly:
push r13
push r12
push rdi
push rsi
push rbx
sub rsp, 0x310
xor eax, eax
lea r13, [rsp + 0x100]
mov rbx, rcx
mov ecx, 0x41
mov dword [rsp + 0x58], 0xc7bfbfe6
mov rdi, r13
rep stosq qword [rdi], rax
mov rax, qword [0x1403ef500]
lea rcx, [0x1403ed1e0]
mov qword [rsp + 0x50], rax
call fcn.140013570
lea rcx, [0x1403ed1c0]
mov rsi, rax
call fcn.140013570
cmp byte [rsi], 0
mov r12, rax
jne 0x140005d98
mov byte [rax + 0xc], 1
mov rax, qword [rsp + 0x50]
xor r8d, r8d
mov rdx, r12
mov dword [r12 + 8], 0xc7bfbfe6
lea rcx, [0x1400263d0]
mov qword [r12], rax
mov byte [rsi], 1
call fcn.140012280
cmp byte [r12 + 0xc], 0
je 0x140005dbd
movabs rax, 0x81a1a1d5d57373c5
xor qword [r12], rax
xor dword [r12 + 8], 0xc7bfbf81
mov byte [r12 + 0xc], 0
mov r8, r12
mov rdx, rbx
mov rcx, r13
movabs rdi, 0x27d9d91f3d623160
call fcn.140006c80
movdqa xmm0, xmmword [str.1Y]
lea rcx, [0x1403ed220]
mov qword [rsp + 0xf0], rdi
movaps xmmword [rsp + 0x50], xmm0
movdqa xmm0, xmmword [str..1UT_a_r_]
movaps xmmword [rsp + 0x60], xmm0
movdqa xmm0, xmmword [0x1403ef530]
movaps xmmword [rsp + 0x70], xmm0
movdqa xmm0, xmmword [str.e1ao_r_]
movaps xmmword [rsp + 0x80], xmm0
movdqa xmm0, xmmword [0x1403ef550]
movaps xmmword [rsp + 0x90], xmm0
movdqa xmm0, xmmword [str.1rRS_r]
movaps xmmword [rsp + 0xa0], xmm0
movdqa xmm0, xmmword [str._1TO]
movaps xmmword [rsp + 0xb0], xmm0
movdqa xmm0, xmmword [str._v1PP_v_r_]
movaps xmmword [rsp + 0xc0], xmm0
movdqa xmm0, xmmword [str._1TRU_rb]
movaps xmmword [rsp + 0xd0], xmm0
movdqa xmm0, xmmword [str.61BR_a_r3]
movaps xmmword [rsp + 0xe0], xmm0
call fcn.140013570
lea rcx, [0x1403ed200]
mov rsi, rax
call fcn.140013570
cmp byte [rsi], 0
mov r12, rax
jne 0x140005f3c
movdqa xmm2, xmmword [rsp + 0x50]
movdqa xmm3, xmmword [rsp + 0x60]
mov byte [rax + 0xa8], 1
xor r8d, r8d
movdqa xmm4, xmmword [rsp + 0x70]
mov qword [rax + 0xa0], rdi
mov rdx, rax
lea rcx, [0x140026400]
movdqa xmm5, xmmword [rsp + 0x80]
movups xmmword [rax], xmm2
movdqa xmm1, xmmword [rsp + 0x90]
movdqa xmm2, xmmword [rsp + 0xa0]
movups xmmword [rax + 0x10], xmm3
movdqa xmm3, xmmword [rsp + 0xb0]
movups xmmword [rax + 0x20], xmm4
movdqa xmm4, xmmword [rsp + 0xc0]
movups xmmword [rax + 0x30], xmm5
movdqa xmm5, xmmword [rsp + 0xd0]
movups xmmword [rax + 0x40], xmm1
movdqa xmm1, xmmword [rsp + 0xe0]
movups xmmword [rax + 0x50], xmm2
movups xmmword [rax + 0x60], xmm3
movups xmmword [rax + 0x70], xmm4
movups xmmword [rax + 0x80], xmm5
movups xmmword [rax + 0x90], xmm1
mov byte [rsi], 1
call fcn.140012280
cmp byte [r12 + 0xa8], 0
je 0x140005f80
movabs r8, 0xe7bf0d27d93d3145
xor eax, eax
nop dword [rax + rax]
mov rcx, rax
mov rdx, r8
and ecx, 7
shl rcx, 3
shr rdx, cl
xor word [r12 + rax*2], dx
add rax, 1
cmp rax, 0x54
jne 0x140005f58
mov byte [r12 + 0xa8], 0
mov rdx, r12
mov r9, r13
mov r8, rbx
mov ecx, 1
call fcn.140005be0
lea rdx, [rsp + 0x2c]
mov rcx, r13
call fcn.140007700
mov r12, rax
xor eax, eax
test r12, r12
je 0x140005fb2
mov ebx, dword [rsp + 0x2c]
test ebx, ebx
jne 0x140005fc1
add rsp, 0x310
pop rbx
pop rsi
pop rdi
pop r12
pop r13
ret
lea rsi, [rsp + 0x40]
mov rcx, r12
lea r13, [rsp + 0x30]
mov qword [rsp + 0x30], rsi
call sub.msvcrt.dll_wcslen
lea rbx, [rax + rax]
mov rdi, rbx
sar rdi, 1
mov qword [rsp + 0x50], rdi
cmp rbx, 0xe
ja 0x14000611d
mov rcx, qword [rsp + 0x30]
mov rax, rdi
cmp rdi, 1
je 0x140006144
test rdi, rdi
je 0x14000601d
mov r8, rbx
mov rdx, r12
call sub.msvcrt.dll_memcpy
mov rax, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x30]
xor r10d, r10d
mov qword [rsp + 0x38], rax
mov r11d, 0xffff9bd5
mov word [rcx + rax*2], r10w
mov rax, qword [0x1403ef5b0]
lea rcx, [0x1403ed260]
mov word [rsp + 0x5c], r11w
mov qword [rsp + 0x50], rax
mov dword [rsp + 0x58], 0xd5d495e6
call fcn.140013570
lea rcx, [0x1403ed240]
mov rbx, rax
call fcn.140013570
cmp byte [rbx], 0
mov r12, rax
jne 0x1400060a4
mov byte [rax + 0xe], 1
mov rax, qword [rsp + 0x50]
xor r8d, r8d
mov rdx, r12
mov r9d, 0xffff9bd5
lea rcx, [0x1400263e0]
mov dword [r12 + 8], 0xd5d495e6
mov qword [r12], rax
mov word [r12 + 0xc], r9w
mov byte [rbx], 1
call fcn.140012280
cmp byte [r12 + 0xe], 0
je 0x1400060d1
movabs rax, 0xaf85851d1d8b8be7
xor word [r12 + 0xc], 0x9bd5
xor qword [r12], rax
xor dword [r12 + 8], 0xd59595af
mov byte [r12 + 0xe], 0
mov rcx, r12
call sub.msvcrt.dll_wcslen
xor r8d, r8d
mov rdx, r12
mov rcx, r13
mov r9, rax
call fcn.1400293d0
cmp rax, 0xffffffffffffffff
je 0x140006151
mov rcx, qword [rsp + 0x30]
cmp rcx, rsi
je 0x140006109
mov rax, qword [rsp + 0x40]
lea rdx, [rax + rax + 2]
call fcn.140034d10
mov eax, 1
add rsp, 0x310
pop rbx
pop rsi
pop rdi
pop r12
pop r13
ret
mov rcx, r13
lea rdx, [rsp + 0x50]
xor r8d, r8d
call fcn.140033310
mov qword [rsp + 0x30], rax
mov rcx, rax
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x40], rax
jmp 0x140005ff9
movzx edx, word [r12]
mov word [rcx], dx
jmp 0x14000601d
mov rax, qword [0x1403ef5b8]
mov r8d, 0x39e3
lea rcx, [0x1403ed2a0]
mov dword [rsp + 0x58], 0xe3a0c1f2
mov word [rsp + 0x5c], r8w
mov qword [rsp + 0x50], rax
call fcn.140013570
lea rcx, [0x1403ed280]
mov rbx, rax
call fcn.140013570
cmp byte [rbx], 0
mov r12, rax
jne 0x1400061ca
mov byte [rax + 0xe], 1
mov rax, qword [rsp + 0x50]
xor r8d, r8d
mov rdx, r12
mov dword [r12 + 8], 0xe3a0c1f2
mov ecx, 0x39e3
mov word [r12 + 0xc], cx
lea rcx, [0x1400263f0]
mov qword [r12], rax
mov byte [rbx], 1
call fcn.140012280
cmp byte [r12 + 0xe], 0
je 0x1400061f7
movabs rax, 0x9bbbbb9393535373
xor word [r12 + 0xc], 0x39e3
xor qword [r12], rax
xor dword [r12 + 8], 0xe3c1c19b
mov byte [r12 + 0xe], 0
mov rcx, r12
call sub.msvcrt.dll_wcslen
xor r8d, r8d
mov rdx, r12
mov rcx, r13
mov r9, rax
call fcn.1400293d0
cmp rax, 0xffffffffffffffff
jne 0x1400060f0
lea rcx, [0x1403ed2e0]
call fcn.140013570
lea rcx, [0x1403ed2c0]
mov rbx, rax
call fcn.140013570
cmp byte [rbx], 0
mov r12, rax
jne 0x140006264
mov byte [rax + 8], 1
xor r8d, r8d
movabs rax, 0xd90d0d3b7faae776
mov rdx, r12
mov qword [r12], rax
lea rcx, [0x140026390]
mov byte [rbx], 1
call fcn.140012280
cmp byte [r12 + 8], 0
je 0x14000628a
movq xmm0, qword [r12]
mov byte [r12 + 8], 0
movq xmm1, qword [0x1403ef5c0]
pxor xmm0, xmm1
movq qword [r12], xmm0
mov rcx, r12
call sub.msvcrt.dll_wcslen
xor r8d, r8d
mov rdx, r12
mov rcx, r13
mov r9, rax
call fcn.1400293d0
cmp rax, 0xffffffffffffffff
jne 0x1400060f0
lea rcx, [0x1403ed320]
call fcn.140013570
lea rcx, [0x1403ed300]
mov rbx, rax
call fcn.140013570
cmp byte [rbx], 0
mov r12, rax
jne 0x1400062f7
mov byte [rax + 8], 1
xor r8d, r8d
movabs rax, 0x236b6bc4ad1347d8
mov rdx, r12
mov qword [r12], rax
lea rcx, [0x1400263a0]
mov byte [rbx], 1
call fcn.140012280
cmp byte [r12 + 8], 0
je 0x14000631d
movq xmm0, qword [r12]
mov byte [r12 + 8], 0
movq xmm1, qword [0x1403ef5c8]
pxor xmm0, xmm1
movq qword [r12], xmm0
mov rcx, r12
call sub.msvcrt.dll_wcslen
xor r8d, r8d
mov rdx, r12
mov rcx, r13
mov r9, rax
call fcn.1400293d0
cmp rax, 0xffffffffffffffff
jne 0x1400060f0
movdqa xmm0, xmmword [0x1403ef5d0]
mov edx, 0xffffc977
lea rcx, [0x1403ed360]
movabs rdi, 0x459af9f8914d3be2
mov word [rsp + 0x7c], dx
movaps xmmword [rsp + 0x50], xmm0
movdqa xmm0, xmmword [0x1403ef5e0]
mov qword [rsp + 0x70], rdi
movaps xmmword [rsp + 0x60], xmm0
mov dword [rsp + 0x78], 0x77681b20
call fcn.140013570
lea rcx, [0x1403ed340]
mov rbx, rax
call fcn.140013570
cmp byte [rbx], 0
mov r12, rax
jne 0x1400063e0
movdqa xmm2, xmmword [rsp + 0x50]
mov byte [rax + 0x2e], 1
xor r8d, r8d
mov rdx, r12
movdqa xmm3, xmmword [rsp + 0x60]
mov qword [rax + 0x20], rdi
lea rcx, [0x140026330]
mov dword [rax + 0x28], 0x77681b20
movups xmmword [rax], xmm2
movups xmmword [rax + 0x10], xmm3
mov eax, 0xffffc977
mov word [r12 + 0x2c], ax
mov byte [rbx], 1
call fcn.140012280
cmp byte [r12 + 0x2e], 0
je 0x140006419
movabs rdx, 0xc9771b45f9913b87
xor eax, eax
mov rcx, rax
mov rbx, rdx
and ecx, 7
shl rcx, 3
shr rbx, cl
xor word [r12 + rax*2], bx
add rax, 1
cmp rax, 0x17
jne 0x1400063f4
mov byte [r12 + 0x2e], 0
mov rcx, r12
call sub.msvcrt.dll_wcslen
xor r8d, r8d
mov rdx, r12
mov rcx, r13
mov r9, rax
call fcn.1400293d0
cmp rax, 0xffffffffffffffff
jne 0x1400060f0
mov rcx, qword [rsp + 0x30]
cmp rcx, rsi
je 0x140006457
mov rax, qword [rsp + 0x40]
lea rdx, [rax + 1]
add rdx, rdx
call fcn.140034d10
xor eax, eax
jmp 0x140005fb2