Function at 0x140001990
Capabilities:
Encode data using xor

Disassembly:
push r15
mov eax, 0x10cc8
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
call fcn.140005b90
sub rsp, rax
xor ecx, ecx
mov qword [rsp + 0x58], 0xfffffffff70f2e80
lea rdx, [rsp + 0x58]
call fcn.140004687
lea rdi, [rsp + 0x60]
xor edx, edx
mov r8d, 0x208
mov rcx, rdi
call sub.msvcrt.dll_memset
mov eax, dword [0x1401f9070]
lea rcx, [0x14000c820]
movdqa xmm0, xmmword [0x1401f9060]
movaps xmmword [rsp + 0xcc0], xmm0
mov dword [rsp + 0xcd0], eax
call fcn.140005d20
lea rcx, [0x14000c800]
cmp byte [rax], 0
mov rbx, rax
je 0x14000271e
call fcn.140005d20
mov rsi, rax
cmp byte [rsi + 0x14], 0
je 0x140001a43
movabs rax, 0x3589893b3bd5d55d
mov byte [rsi + 0x14], 0
xor qword [rsi], rax
movabs rax, 0x7076363878735
xor dword [rsi + 0x10], 0x3bd5d55d
xor qword [rsi + 8], rax
mov eax, dword [0x1401f9090]
mov ebp, 0xffff893b
movdqa xmm0, xmmword [0x1401f9080]
lea rcx, [0x14000c7e0]
mov word [rsp + 0xcd4], bp
movaps xmmword [rsp + 0xcc0], xmm0
mov dword [rsp + 0xcd0], eax
call fcn.140005d20
lea rcx, [0x14000c7c0]
mov rbp, rax
call fcn.140005d20
cmp byte [rbp], 0
mov rbx, rax
jne 0x140001ace
mov byte [rax + 0x16], 1
xor r8d, r8d
mov rax, qword [rsp + 0xcc0]
mov rdx, rbx
lea rcx, [0x14000b0a0]
mov qword [rbx], rax
mov rax, qword [rsp + 0xcc8]
mov qword [rbx + 8], rax
mov rax, qword [rsp + 0xcce]
mov qword [rbx + 0xe], rax
mov byte [rbp], 1
call fcn.140005460
cmp byte [rbx + 0x16], 0
je 0x140001b00
movabs rax, 0x3589893b3bd5d55d
mov byte [rbx + 0x16], 0
xor qword [rbx], rax
movabs rax, 0x7076363878735
xor dword [rbx + 0x10], 0x3bd5d55d
xor qword [rbx + 8], rax
xor word [rbx + 0x14], 0x893b
mov rcx, rbx
mov rbp, qword [sym.imp.msvcrt.dll__wgetenv]
call rbp
lea rbx, [rsp + 0x270]
mov r8, rsi
mov rcx, rdi
mov rdx, rax
mov esi, 0xffffc5a3
call fcn.140003660
xor edx, edx
mov r8d, 0x208
mov rcx, rbx
call sub.msvcrt.dll_memset
movdqa xmm0, xmmword [0x1401f90a0]
lea rcx, [0x14000c860]
mov word [rsp + 0xcd0], si
movaps xmmword [rsp + 0xcc0], xmm0
call fcn.140005d20
lea rcx, [0x14000c840]
mov r12, rax
call fcn.140005d20
cmp byte [r12], 0
mov rsi, rax
jne 0x140001bb1
mov byte [rax + 0x12], 1
mov r11d, 0xffffc5a3
xor r8d, r8d
mov rdx, rsi
mov rax, qword [rsp + 0xcc0]
mov word [rsi + 0x10], r11w
lea rcx, [0x14000b220]
mov qword [rsi], rax
mov rax, qword [rsp + 0xcc8]
mov qword [rsi + 8], rax
mov byte [r12], 1
call fcn.140005460
cmp byte [rsi + 0x12], 0
je 0x140001bdc
movabs rax, 0xfd79798d8dc5c5a3
mov byte [rsi + 0x12], 0
xor qword [rsi], rax
movabs rax, 0x959535355d5dfd
xor word [rsi + 0x10], 0xc5a3
xor qword [rsi + 8], rax
mov r8, rsi
mov rdx, rdi
lea r12, [rsp + 0x480]
mov rcx, rbx
call fcn.140003660
xor edx, edx
mov r8d, 0x208
mov rcx, r12
call sub.msvcrt.dll_memset
mov rax, qword [0x1401f90f0]
mov r10d, 0x739
movdqa xmm0, xmmword [0x1401f90b0]
lea rcx, [0x14000c8a0]
mov word [rsp + 0xd0c], r10w
movaps xmmword [rsp + 0xcc0], xmm0
movdqa xmm0, xmmword [0x1401f90c0]
mov qword [rsp + 0xd00], rax
mov eax, dword [0x1401f90f8]
movaps xmmword [rsp + 0xcd0], xmm0
movdqa xmm0, xmmword [0x1401f90d0]
movaps xmmword [rsp + 0xce0], xmm0
movdqa xmm0, xmmword [0x1401f90e0]
mov dword [rsp + 0xd08], eax
movaps xmmword [rsp + 0xcf0], xmm0
call fcn.140005d20
lea rcx, [0x14000c880]
cmp byte [rax], 0
mov r13, rax
je 0x14000267f
call fcn.140005d20
mov rsi, rax
cmp byte [rsi + 0x4e], 0
je 0x140001cd2
movabs r8, 0x7393dc74711e7eb
xor eax, eax
nop word cs:[rax + rax]
mov rcx, rax
mov rdx, r8
and ecx, 7
shl rcx, 3
shr rdx, cl
xor word [rsi + rax*2], dx
add rax, 1
cmp rax, 0x27
jne 0x140001cb0
mov byte [rsi + 0x4e], 0
mov r8, rsi
mov rdx, rdi
mov rcx, r12
call fcn.140003660
lea rsi, [rsp + 0xcc0]
mov r8d, 0xa2
lea rdx, [0x14000c020]
mov rcx, rsi
call sub.msvcrt.dll_memcpy
lea rcx, [0x14000c8e0]
call fcn.140005d20
lea rcx, [0x14000c8c0]
cmp byte [rax], 0
mov r14, rax
je 0x140002644
call fcn.140005d20
mov r13, rax
cmp byte [r13 + 0xa2], 0
je 0x140001d68
movabs r8, 0x89d75571bba92fd7
xor eax, eax
nop word [rax + rax]
mov rcx, rax
mov rdx, r8
and ecx, 7
shl rcx, 3
shr rdx, cl
xor word [r13 + rax*2], dx
add rax, 1
cmp rax, 0x51
jne 0x140001d40
mov byte [r13 + 0xa2], 0
mov r9, r13
mov r8, r12
mov rdx, rdi
mov qword [rsp + 0x20], r12
mov ecx, 1
call fcn.140002fc0
mov r8d, 0x346
mov rcx, rsi
lea rdx, [0x14000c0e0]
call sub.msvcrt.dll_memcpy
lea rcx, [0x14000c920]
call fcn.140005d20
lea rcx, [0x14000c900]
cmp byte [rax], 0
mov r13, rax
je 0x140002608
call fcn.140005d20
mov r12, rax
cmp byte [r12 + 0x346], 0
je 0x140001e02
movabs r8, 0xcb0b4fdb6b4b3b87
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, 0x1a3
jne 0x140001dd8
mov byte [r12 + 0x346], 0
mov r9, r12
xor ecx, ecx
mov r8, rbx
mov qword [rsp + 0x20], rbx
mov rdx, rdi
call fcn.140002fc0
mov r8d, 0x130
mov rcx, rsi
lea rdx, [0x14000c440]
call sub.msvcrt.dll_memcpy
lea rcx, [0x14000c960]
call fcn.140005d20
lea rcx, [0x14000c940]
cmp byte [rax], 0
mov r13, rax
je 0x1400025cc
call fcn.140005d20
mov r12, rax
cmp byte [r12 + 0x130], 0
je 0x140001e9a
movabs r8, 0xeb995df1ff715fd1
xor eax, eax
nop word [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, 0x98
jne 0x140001e70
mov byte [r12 + 0x130], 0
mov r9, r12
xor ecx, ecx
mov r8, rbx
mov qword [rsp + 0x20], rbx
lea r13, [rsp + 0x690]
mov rdx, rdi
call fcn.140002fc0
xor edx, edx
mov r8d, 0x208
mov rcx, r13
call sub.msvcrt.dll_memset
mov rax, qword [0x1401f9110]
lea rcx, [0x14000c9e0]
movdqa xmm0, xmmword [0x1401f9100]
movaps xmmword [rsp + 0xcc0], xmm0
mov qword [rsp + 0xcd0], rax
mov eax, dword [0x1401f9118]
mov dword [rsp + 0xcd8], eax
call fcn.140005d20
lea rcx, [0x14000c9c0]
cmp byte [rax], 0
mov r14, rax
je 0x140002573
call fcn.140005d20
mov r12, rax
cmp byte [r12 + 0x1c], 0
je 0x140001f53
movabs rax, 0xb7171ffffd9d95b
mov byte [r12 + 0x1c], 0
movabs rdx, 0x1f1ff1f1a1a10b
xor qword [r12], rax
xor qword [r12 + 8], rdx
xor qword [r12 + 0x10], rax
xor dword [r12 + 0x18], 0xf1a1a10b
movdqa xmm0, xmmword [0x1401f9120]
lea rcx, [0x14000c9a0]
movaps xmmword [rsp + 0xcc0], xmm0
call fcn.140005d20
lea rcx, [0x14000c980]
mov r15, rax
call fcn.140005d20
cmp byte [r15], 0
mov r14, rax
jne 0x140001fb8
mov byte [rax + 0x10], 1
xor r8d, r8d
mov rax, qword [rsp + 0xcc0]
mov rdx, r14
lea rcx, [0x14000b210]
mov qword [r14], rax
mov rax, qword [rsp + 0xcc8]
mov qword [r14 + 8], rax
mov byte [r15], 1
call fcn.140005460
cmp byte [r14 + 0x10], 0
je 0x140001fdf
movabs rax, 0xb7171ffffd9d95b
mov byte [r14 + 0x10], 0
xor qword [r14], rax
movabs rax, 0x1f1ff1f1a1a10b
xor qword [r14 + 8], rax
mov rcx, r14
call rbp
lea r14, [rsp + 0x8a0]
mov r8, r12
mov rcx, r13
mov rdx, rax
call fcn.140003660
xor edx, edx
mov r8d, 0x208
mov rcx, r14
call sub.msvcrt.dll_memset
movdqa xmm0, xmmword [0x1401f9130]
mov r9d, 0xffffa519
mov word [rsp + 0xcd0], r9w
lea rcx, [0x14000ca20]
movaps xmmword [rsp + 0xcc0], xmm0
call fcn.140005d20
lea rcx, [0x14000ca00]
mov r12, rax
call fcn.140005d20
cmp byte [r12], 0
mov rbp, rax
jne 0x14000208c
mov byte [rax + 0x12], 1
mov r8d, 0xffffa519
mov rax, qword [rsp + 0xcc0]
mov rdx, rbp
mov word [rbp + 0x10], r8w
lea rcx, [0x14000b230]
xor r8d, r8d
mov qword [rbp], rax
mov rax, qword [rsp + 0xcc8]
mov qword [rbp + 8], rax
mov byte [r12], 1
call fcn.140005460
cmp byte [rbp + 0x12], 0
je 0x1400020b8
movabs rax, 0x67b1b14545a5a519
mov byte [rbp + 0x12], 0
xor qword [rbp], rax
movabs rax, 0xefef37379d9d67
xor word [rbp + 0x10], 0xa519
xor qword [rbp + 8], rax
mov r8, rbp
mov rcx, r14
lea rbp, [0x14000cb80]
mov rdx, r13
call fcn.140003660
mov edx, dword [0x140010450]
mov rcx, rbp
call fcn.140001840
mov r8d, dword [0x140010450]
mov rcx, r14
mov rdx, rbp
call fcn.140003cc0
mov rdx, rbx
mov r8, r13
mov rcx, rdi
call fcn.140003080
lea rcx, [0x14000ca60]
mov r14d, eax
call fcn.140005d20
lea rcx, [0x14000ca40]
cmp byte [rax], 0
mov rbx, rax
je 0x140002540
call fcn.140005d20
mov r15, rax
cmp byte [r15 + 8], 0
je 0x140002147
movq xmm0, qword [r15]
mov byte [r15 + 8], 0
movq xmm1, qword [str.qqyyQQe]
pxor xmm0, xmm1
movq qword [r15], xmm0
movdqa xmm0, xmmword [str.q3y]
mov ecx, 0x5179
mov eax, dword [0x1401f9190]
mov word [rsp + 0xd04], cx
lea rcx, [0x14000caa0]
movaps xmmword [rsp + 0xcc0], xmm0
movdqa xmm0, xmmword [0x1401f9160]
movaps xmmword [rsp + 0xcd0], xmm0
movdqa xmm0, xmmword [str._bq_y_rQ_es]
mov dword [rsp + 0xd00], eax
movaps xmmword [rsp + 0xce0], xmm0
movdqa xmm0, xmmword [0x1401f9180]
movaps xmmword [rsp + 0xcf0], xmm0
call fcn.140005d20
lea rcx, [0x14000ca80]
mov rbx, rax
call fcn.140005d20
cmp byte [rbx], 0
mov rbp, rax
jne 0x14000224d
mov byte [rax + 0x46], 1
xor r8d, r8d
mov rax, qword [rsp + 0xcc0]
mov rdx, rbp
lea rcx, [0x14000b120]
mov qword [rbp], rax
mov rax, qword [rsp + 0xcc8]
mov qword [rbp + 8], rax
mov rax, qword [rsp + 0xcd0]
mov qword [rbp + 0x10], rax
mov rax, qword [rsp + 0xcd8]
mov qword [rbp + 0x18], rax
mov rax, qword [rsp + 0xce0]
mov qword [rbp + 0x20], rax
mov rax, qword [rsp + 0xce8]
mov qword [rbp + 0x28], rax
mov rax, qword [rsp + 0xcf0]
mov qword [rbp + 0x30], rax
mov rax, qword [rsp + 0xcf8]
mov qword [rbp + 0x38], rax
mov rax, qword [rsp + 0xcfe]
mov qword [rbp + 0x3e], rax
mov byte [rbx], 1
call fcn.140005460
cmp byte [rbp + 0x46], 0
je 0x140002283
movabs r8, 0x3d559f1b5179717b
xor eax, eax
nop
mov rcx, rax
mov rdx, r8
and ecx, 7
shl rcx, 3
shr rdx, cl
xor word [rbp + rax*2], dx
add rax, 1
cmp rax, 0x23
jne 0x140002260
mov byte [rbp + 0x46], 0
mov rax, qword [0x1401f91b0]
mov edx, 0xffff9f1b
movdqa xmm0, xmmword [0x1401f91a0]
lea rcx, [0x14000cae0]
mov word [rsp + 0xcd8], dx
movaps xmmword [rsp + 0xcc0], xmm0
mov qword [rsp + 0xcd0], rax
call fcn.140005d20
lea rcx, [0x14000cac0]
mov rbx, rax
call fcn.140005d20
cmp byte [rbx], 0
mov r13, rax
jne 0x140002319
mov byte [rax + 0x1a], 1
xor r8d, r8d
mov rax, qword [rsp + 0xcc0]
mov rdx, r13
lea rcx, [0x14000b0c0]
mov qword [r13], rax
mov rax, qword [rsp + 0xcc8]
mov qword [r13 + 8], rax
mov rax, qword [rsp + 0xcd0]
mov qword [r13 + 0x10], rax
mov eax, 0xffff9f1b
mov word [r13 + 0x18], ax
mov byte [rbx], 1
call fcn.140005460
cmp byte [r13 + 0x1a], 0
je 0x14000234c
movabs rax, 0x1b5151797971717b
mov byte [r13 + 0x1a], 0
movabs rdx, 0x3d3d55559f9f1b
xor qword [r13], rax
xor qword [r13 + 8], rdx
xor qword [r13 + 0x10], rax
xor word [r13 + 0x18], 0x9f1b
mov r8d, 0x17e
mov rcx, rsi
lea rdx, [0x14000c580]
call sub.msvcrt.dll_memcpy
lea rcx, [0x14000cb20]
call fcn.140005d20
lea rcx, [0x14000cb00]
mov rbx, rax
call fcn.140005d20
cmp byte [rbx], 0
mov r12, rax
jne 0x1400023b1
mov r8d, 0x17e
mov rdx, rsi
mov rcx, rax
mov byte [rax + 0x17e], 1
call sub.msvcrt.dll_memcpy
mov byte [rbx], 1
xor r8d, r8d
mov rdx, r12
lea rcx, [0x14000b100]
call fcn.140005460
cmp byte [r12 + 0x17e], 0
je 0x1400023fa
movabs r8, 0x3d559f1b5179717b
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, 0xbf
jne 0x1400023d0
mov byte [r12 + 0x17e], 0
mov edx, dword [0x1401fc034]
lea rcx, [0x1401fc031]
call fcn.140001840
mov edx, dword [0x1401f6e60]
lea rcx, [0x140010460]
call fcn.140001840
lea rcx, [0x14000cb60]
call fcn.140005d20
lea rcx, [0x14000cb40]
mov qword [rsp + 0x48], rax
call fcn.140005d20
mov rdx, qword [rsp + 0x48]
mov rbx, rax
cmp byte [rdx], 0
jne 0x14000246b
mov byte [rax + 8], 1
mov rax, qword [0x1401f91b8]
xor r8d, r8d
lea rcx, [0x14000b150]
mov qword [rbx], rax
mov byte [rdx], 1
mov rdx, rbx
call fcn.140005460
cmp byte [rbx + 8], 0
je 0x140002489
movq xmm0, qword [rbx]
mov byte [rbx + 8], 0
movq xmm1, qword [0x1401f91c0]
pxor xmm0, xmm1
movq qword [rbx], xmm0
mov rcx, rbx
mov rdx, r15
call sub.msvcrt.dll__wcsicmp
test eax, eax
mov ebx, eax
jne 0x1400024b8
test r14b, r14b
jne 0x1400024b8
xor eax, eax
add rsp, 0x10cc8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
lea r14, [rsp + 0xab0]
xor edx, edx
mov r8d, 0x208
mov rcx, r14
call sub.msvcrt.dll_memset
mov r8, r13
mov rdx, rdi
mov rcx, r14
call fcn.140003660
xor edx, edx
mov r8d, 0xfffe
mov rcx, rsi
call sub.msvcrt.dll_memset
mov r8, r12
mov rdx, r14
mov rcx, rsi
call fcn.140003660
test ebx, ebx
jne 0x140002530
movsxd r8, dword [0x1401fc034]
lea rdx, [0x1401fc031]
mov dword [rsp + 0x30], 1
mov r9, r14
mov rcx, rbp
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], rsi
call fcn.140001630
jmp 0x14000249f
movsxd r8, dword [0x1401f6e60]
lea rdx, [0x140010460]
jmp 0x14000250e
call fcn.140005d20
lea rcx, [0x14000b170]
xor r8d, r8d
mov r15, rax
mov byte [rax + 8], 1
movabs rax, 0x1b51510b791c7103
mov qword [r15], rax
mov rdx, r15
mov byte [rbx], 1
call fcn.140005460
jmp 0x140002125
call fcn.140005d20
lea rcx, [0x14000b0d0]
xor r8d, r8d
mov r12, rax
mov byte [rax + 0x1c], 1
mov rax, qword [rsp + 0xcc0]
mov rdx, r12
mov qword [r12], rax
mov rax, qword [rsp + 0xcc8]
mov qword [r12 + 8], rax
mov rax, qword [rsp + 0xcd0]
mov qword [r12 + 0x10], rax
mov eax, dword [rsp + 0xcd8]
mov dword [r12 + 0x18], eax
mov byte [r14], 1
call fcn.140005460
jmp 0x140001f1a
call fcn.140005d20
mov rdx, rsi
mov r8d, 0x130
mov r12, rax
mov rcx, rax
mov byte [rax + 0x130], 1
call sub.msvcrt.dll_memcpy
mov byte [r13], 1
xor r8d, r8d
mov rdx, r12
lea rcx, [0x14000b0f0]
call fcn.140005460
jmp 0x140001e53
call fcn.140005d20
mov rdx, rsi
mov r8d, 0x346
mov r12, rax
mov rcx, rax
mov byte [rax + 0x346], 1
call sub.msvcrt.dll_memcpy
mov byte [r13], 1
xor r8d, r8d
mov rdx, r12
lea rcx, [0x14000b140]
call fcn.140005460
jmp 0x140001dbc
call fcn.140005d20
mov rdx, rsi
mov r8d, 0xa2
mov r13, rax
mov rcx, rax
mov byte [rax + 0xa2], 1
call sub.msvcrt.dll_memcpy
mov byte [r14], 1
xor r8d, r8d
mov rdx, r13
lea rcx, [0x14000b200]
call fcn.140005460
jmp 0x140001d24
call fcn.140005d20
lea rcx, [0x14000b130]
xor r8d, r8d
mov rsi, rax
mov byte [rax + 0x4e], 1
mov rax, qword [rsp + 0xcc0]
mov rdx, rsi
mov qword [rsi], rax
mov rax, qword [rsp + 0xcc8]
mov qword [rsi + 8], rax
mov rax, qword [rsp + 0xcd0]
mov qword [rsi + 0x10], rax
mov rax, qword [rsp + 0xcd8]
mov qword [rsi + 0x18], rax
mov rax, qword [rsp + 0xce0]
mov qword [rsi + 0x20], rax
mov rax, qword [rsp + 0xce8]
mov qword [rsi + 0x28], rax
mov rax, qword [rsp + 0xcf0]
mov qword [rsi + 0x30], rax
mov rax, qword [rsp + 0xcf8]
mov qword [rsi + 0x38], rax
mov rax, qword [rsp + 0xd00]
mov qword [rsi + 0x40], rax
mov rax, qword [rsp + 0xd06]
mov qword [rsi + 0x46], rax
mov byte [r13], 1
call fcn.140005460
jmp 0x140001c94
call fcn.140005d20
lea rcx, [0x14000b090]
xor r8d, r8d
mov rsi, rax
mov byte [rax + 0x14], 1
mov rax, qword [rsp + 0xcc0]
mov rdx, rsi
mov qword [rsi], rax
mov rax, qword [rsp + 0xcc8]
mov qword [rsi + 8], rax
mov eax, dword [rsp + 0xcd0]
mov dword [rsi + 0x10], eax
mov byte [rbx], 1
call fcn.140005460
jmp 0x140001a17