Function at 0x1400019c0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r14
push r15
mov rbp, rsp
sub rsp, 0x80
movdqa xmm0, xmmword [0x140013330]
lea rax, [rbp - 0x3f]
xor r15d, r15d
mov ebx, r8d
movdqu xmmword [rbp - 0x30], xmm0
lea r10, str.secretxorkey
mov r14, rdx
movdqa xmm0, xmmword [0x140013320]
mov rsi, rcx
movdqu xmmword [rbp - 0x18], xmm0
mov dword [rbp - 0x40], 0x6110c25
mov edx, r15d
mov dword [rbp - 0x3c], 0x2e141510
mov r9d, r15d
mov dword [rbp - 0x38], 0x1a0a071e
mov word [rbp - 0x34], 0x1d36
mov word [rbp - 0x20], 0xd17
mov word [rbp - 8], 0x1004
nop dword [rax]
cmp edx, 0xc
mov r8d, r15d
cmovne r8d, edx
mov edx, r15d
movsxd rcx, r8d
movzx ecx, byte [rcx + r10]
xor byte [rax - 1], cl
lea ecx, [r8 + 1]
cmp r8d, 0xb
mov r8d, r15d
cmovne edx, ecx
movsxd rcx, edx
movzx ecx, byte [rcx + r10]
xor byte [rax], cl
lea ecx, [rdx + 1]
cmp edx, 0xb
mov edx, r15d
cmovne r8d, ecx
movsxd rcx, r8d
movzx ecx, byte [rcx + r10]
xor byte [rax + 1], cl
lea ecx, [r8 + 1]
cmp r8d, 0xb
mov r8d, r15d
cmovne edx, ecx
movsxd rcx, edx
movzx ecx, byte [rcx + r10]
xor byte [rax + 2], cl
lea ecx, [rdx + 1]
cmp edx, 0xb
mov edx, r15d
cmovne r8d, ecx
movsxd rcx, r8d
movzx ecx, byte [rcx + r10]
xor byte [rax + 3], cl
lea ecx, [r8 + 1]
cmp r8d, 0xb
mov r8d, r15d
cmovne edx, ecx
movsxd rcx, edx
movzx ecx, byte [rcx + r10]
xor byte [rax + 4], cl
lea ecx, [rdx + 1]
cmp edx, 0xb
mov edx, r15d
cmovne r8d, ecx
movsxd rcx, r8d
movzx ecx, byte [rcx + r10]
xor byte [rax + 5], cl
lea ecx, [r8 + 1]
cmp r8d, 0xb
mov r8d, r15d
cmovne edx, ecx
movsxd rcx, edx
movzx ecx, byte [rcx + r10]
xor byte [rax + 6], cl
lea ecx, [rdx + 1]
cmp edx, 0xb
mov edx, r15d
cmovne r8d, ecx
movsxd rcx, r8d
movzx ecx, byte [rcx + r10]
xor byte [rax + 7], cl
lea ecx, [r8 + 1]
cmp r8d, 0xb
mov r8d, r15d
cmovne edx, ecx
movsxd rcx, edx
movzx ecx, byte [rcx + r10]
xor byte [rax + 8], cl
lea ecx, [rdx + 1]
cmp edx, 0xb
mov edx, r15d
cmovne r8d, ecx
movsxd rcx, r8d
movzx ecx, byte [rcx + r10]
xor byte [rax + 9], cl
lea ecx, [r8 + 1]
cmp r8d, 0xb
cmovne edx, ecx
movsxd rcx, edx
movzx ecx, byte [rcx + r10]
mov r8d, r15d
xor byte [rax + 0xa], cl
lea rax, [rax + 0xe]
cmp edx, 0xb
lea ecx, [rdx + 1]
mov edx, r15d
cmovne r8d, ecx
movsxd rcx, r8d
movzx ecx, byte [rcx + r10]
xor byte [rax - 3], cl
lea ecx, [r8 + 1]
cmp r8d, 0xb
cmovne edx, ecx
add r9d, 0xe
movsxd rcx, edx
movzx ecx, byte [rcx + r10]
xor byte [rax - 2], cl
inc edx
cmp r9d, 0xe
jb 0x140001a40
mov ecx, r15d
lea r8, [rbp - 0x2f]
mov r9d, r15d
cmp ecx, 0xc
mov edx, r15d
cmovne edx, ecx
mov ecx, r15d
movsxd rax, edx
movzx eax, byte [rax + r10]
xor byte [r8 - 1], al
lea eax, [rdx + 1]
cmp edx, 0xb
mov edx, r15d
cmovne ecx, eax
movsxd rax, ecx
movzx eax, byte [rax + r10]
xor byte [r8], al
lea eax, [rcx + 1]
cmp ecx, 0xb
mov ecx, r15d
cmovne edx, eax
movsxd rax, edx
movzx eax, byte [rax + r10]
xor byte [r8 + 1], al
lea eax, [rdx + 1]
cmp edx, 0xb
mov edx, r15d
cmovne ecx, eax
movsxd rax, ecx
movzx eax, byte [rax + r10]
xor byte [r8 + 2], al
lea eax, [rcx + 1]
cmp ecx, 0xb
mov ecx, r15d
cmovne edx, eax
movsxd rax, edx
movzx eax, byte [rax + r10]
xor byte [r8 + 3], al
lea eax, [rdx + 1]
cmp edx, 0xb
mov edx, r15d
cmovne ecx, eax
movsxd rax, ecx
movzx eax, byte [rax + r10]
xor byte [r8 + 4], al
lea eax, [rcx + 1]
cmp ecx, 0xb
mov ecx, r15d
cmovne edx, eax
movsxd rax, edx
movzx eax, byte [rax + r10]
xor byte [r8 + 5], al
lea eax, [rdx + 1]
cmp edx, 0xb
mov edx, r15d
cmovne ecx, eax
movsxd rax, ecx
movzx eax, byte [rax + r10]
xor byte [r8 + 6], al
lea eax, [rcx + 1]
cmp ecx, 0xb
mov ecx, r15d
cmovne edx, eax
movsxd rax, edx
movzx eax, byte [rax + r10]
xor byte [r8 + 7], al
lea eax, [rdx + 1]
cmp edx, 0xb
mov edx, r15d
cmovne ecx, eax
movsxd rax, ecx
movzx eax, byte [rax + r10]
xor byte [r8 + 8], al
lea eax, [rcx + 1]
cmp ecx, 0xb
mov ecx, r15d
cmovne edx, eax
movsxd rax, edx
movzx eax, byte [rax + r10]
xor byte [r8 + 9], al
lea eax, [rdx + 1]
cmp edx, 0xb
cmovne ecx, eax
movsxd rax, ecx
movzx eax, byte [rax + r10]
mov edx, r15d
xor byte [r8 + 0xa], al
lea r8, [r8 + 0x12]
cmp ecx, 0xb
lea eax, [rcx + 1]
mov ecx, r15d
cmovne edx, eax
movsxd rax, edx
movzx eax, byte [rax + r10]
xor byte [r8 - 7], al
lea eax, [rdx + 1]
cmp edx, 0xb
mov edx, r15d
cmovne ecx, eax
movsxd rax, ecx
movzx eax, byte [rax + r10]
xor byte [r8 - 6], al
lea eax, [rcx + 1]
cmp ecx, 0xb
mov ecx, r15d
cmovne edx, eax
movsxd rax, edx
movzx eax, byte [rax + r10]
xor byte [r8 - 5], al
lea eax, [rdx + 1]
cmp edx, 0xb
mov edx, r15d
cmovne ecx, eax
movsxd rax, ecx
movzx eax, byte [rax + r10]
xor byte [r8 - 4], al
lea eax, [rcx + 1]
cmp ecx, 0xb
mov ecx, r15d
cmovne edx, eax
movsxd rax, edx
movzx eax, byte [rax + r10]
xor byte [r8 - 3], al
lea eax, [rdx + 1]
cmp edx, 0xb
cmovne ecx, eax
add r9d, 0x12
movsxd rax, ecx
movzx eax, byte [rax + r10]
xor byte [r8 - 2], al
inc ecx
cmp r9d, 0x12
jb 0x140001bb1
mov ecx, r15d
lea r8, [rbp - 0x17]
mov r9d, r15d
nop dword [rax + rax]
cmp ecx, 0xc
mov edx, r15d
cmovne edx, ecx
mov ecx, r15d
movsxd rax, edx
movzx eax, byte [rax + r10]
xor byte [r8 - 1], al
lea eax, [rdx + 1]
cmp edx, 0xb
mov edx, r15d
cmovne ecx, eax
movsxd rax, ecx
movzx eax, byte [rax + r10]
xor byte [r8], al
lea eax, [rcx + 1]
cmp ecx, 0xb
mov ecx, r15d
cmovne edx, eax
movsxd rax, edx
movzx eax, byte [rax + r10]
xor byte [r8 + 1], al
lea eax, [rdx + 1]
cmp edx, 0xb
mov edx, r15d
cmovne ecx, eax
movsxd rax, ecx
movzx eax, byte [rax + r10]
xor byte [r8 + 2], al
lea eax, [rcx + 1]
cmp ecx, 0xb
mov ecx, r15d
cmovne edx, eax
movsxd rax, edx
movzx eax, byte [rax + r10]
xor byte [r8 + 3], al
lea eax, [rdx + 1]
cmp edx, 0xb
mov edx, r15d
cmovne ecx, eax
movsxd rax, ecx
movzx eax, byte [rax + r10]
xor byte [r8 + 4], al
lea eax, [rcx + 1]
cmp ecx, 0xb
mov ecx, r15d
cmovne edx, eax
movsxd rax, edx
movzx eax, byte [rax + r10]
xor byte [r8 + 5], al
lea eax, [rdx + 1]
cmp edx, 0xb
mov edx, r15d
cmovne ecx, eax
movsxd rax, ecx
movzx eax, byte [rax + r10]
xor byte [r8 + 6], al
lea eax, [rcx + 1]
cmp ecx, 0xb
mov ecx, r15d
cmovne edx, eax
movsxd rax, edx
movzx eax, byte [rax + r10]
xor byte [r8 + 7], al
lea eax, [rdx + 1]
cmp edx, 0xb
mov edx, r15d
cmovne ecx, eax
movsxd rax, ecx
movzx eax, byte [rax + r10]
xor byte [r8 + 8], al
lea eax, [rcx + 1]
cmp ecx, 0xb
mov ecx, r15d
cmovne edx, eax
movsxd rax, edx
movzx eax, byte [rax + r10]
xor byte [r8 + 9], al
lea eax, [rdx + 1]
cmp edx, 0xb
cmovne ecx, eax
movsxd rax, ecx
movzx eax, byte [rax + r10]
mov edx, r15d
xor byte [r8 + 0xa], al
lea r8, [r8 + 0x12]
cmp ecx, 0xb
lea eax, [rcx + 1]
mov ecx, r15d
cmovne edx, eax
movsxd rax, edx
movzx eax, byte [rax + r10]
xor byte [r8 - 7], al
lea eax, [rdx + 1]
cmp edx, 0xb
mov edx, r15d
cmovne ecx, eax
movsxd rax, ecx
movzx eax, byte [rax + r10]
xor byte [r8 - 6], al
lea eax, [rcx + 1]
cmp ecx, 0xb
mov ecx, r15d
cmovne edx, eax
movsxd rax, edx
movzx eax, byte [rax + r10]
xor byte [r8 - 5], al
lea eax, [rdx + 1]
cmp edx, 0xb
mov edx, r15d
cmovne ecx, eax
movsxd rax, ecx
movzx eax, byte [rax + r10]
xor byte [r8 - 4], al
lea eax, [rcx + 1]
cmp ecx, 0xb
mov ecx, r15d
cmovne edx, eax
movsxd rax, edx
movzx eax, byte [rax + r10]
xor byte [r8 - 3], al
lea eax, [rdx + 1]
cmp edx, 0xb
cmovne ecx, eax
add r9d, 0x12
movsxd rax, ecx
movzx eax, byte [rax + r10]
xor byte [r8 - 2], al
inc ecx
cmp r9d, 0x12
jb 0x140001d80
lea rcx, [0x14001d040]
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, [rbp - 0x40]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, [0x14001d050]
mov qword [0x14001ed18], rax
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, [rbp - 0x30]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, [0x14001d060]
mov qword [0x14001ed10], rax
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, [rbp - 0x18]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov r9d, 0x1000
mov dword [rsp + 0x20], 0x20
mov r8, rbx
mov qword [0x14001ed08], rax
xor edx, edx
mov rcx, rsi
call qword [0x14001ed18]
mov r9, rbx
mov qword [rsp + 0x20], r15
mov rdx, rax
mov r8, r14
mov rcx, rsi
mov rdi, rax
call qword [0x14001ed10]
mov qword [rsp + 0x30], r15
mov r9, rdi
mov dword [rsp + 0x28], r15d
xor r8d, r8d
xor edx, edx
mov qword [rsp + 0x20], r15
mov rcx, rsi
call qword [0x14001ed08]
mov rbx, rax
test rax, rax
je 0x14000201c
mov edx, 0x1f4
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
xor eax, eax
jmp 0x140002021
mov eax, 0xffffffff
lea r11, [rsp + 0x80]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov rsp, r11
pop r15
pop r14
pop rbp
ret