Function at 0x180089290
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rsi
push rbp
push rdi
push r14
lea rbp, [rsp - 0x47]
sub rsp, 0xe0
mov rax, qword [0x1803435b8]
xor rax, rsp
mov qword [rbp + 0x37], rax
mov rax, rdx
mov r14, rcx
xor ebx, ebx
lea rdx, [rbp - 9]
mov rcx, rax
call fcn.18009ba80
nop
mov rdx, rax
lea rcx, [rbp - 0x49]
call fcn.180009d20
lea rdi, [rbp - 0x49]
mov rcx, qword [rbp - 0x49]
mov rdx, qword [rbp - 0x31]
cmp rdx, 0x10
cmovae rdi, rcx
lea rsi, [rbp - 0x49]
cmovae rsi, rcx
mov r8, qword [rbp - 0x39]
add rsi, r8
cmp rdi, rsi
je 0x180089320
movsx ecx, byte [rdi]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_tolower]
mov byte [rdi], al
inc rdi
cmp rdi, rsi
jne 0x180089301
mov rdx, qword [rbp - 0x31]
mov r8, qword [rbp - 0x39]
mov rcx, qword [rbp - 0x49]
lea rax, [rbp - 0x49]
cmp rdx, 0x10
cmovae rax, rcx
mov qword [rbp - 0x79], rax
mov qword [rbp - 0x71], r8
xor r8d, r8d
lea rdx, [rbp - 0x79]
lea rcx, [rbp + 0x17]
call fcn.180072b80
nop
mov rdx, qword [rbp - 0x31]
cmp rdx, 0x10
jb 0x180089383
inc rdx
mov rcx, qword [rbp - 0x49]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18008937e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18008937e
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800ef5a0
movdqa xmm0, xmmword [0x180103e90]
movdqu xmmword [rbp - 0x39], xmm0
mov byte [rbp - 0x49], 0
mov rdx, qword [rbp + 0xf]
cmp rdx, 0x10
jb 0x1800893d2
inc rdx
mov rcx, qword [rbp - 9]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800893cd
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800893cd
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800ef5a0
movdqa xmm0, xmmword [0x180103e90]
movdqu xmmword [rbp + 7], xmm0
mov byte [rbp - 9], 0
mov rcx, qword [r14 + 0x78]
mov rax, qword [r14 + 0x80]
cmp rcx, rax
je 0x18008959c
sub rax, rcx
sar rax, 5
movsxd r8, dword [r14 + 0x90]
mov rdx, r8
cmp r8, rax
jae 0x18008959c
cmp byte [r14 + 0x94], 0
je 0x1800894d6
test r8d, r8d
jne 0x1800894d6
mov esi, 1
cmp rax, rsi
jbe 0x1800894cf
mov edi, reloc.WLDAP32.dll_Ordinal_32
nop dword [rax + rax]
lea rax, [rdi + rcx]
mov rcx, qword [rax + 0x10]
cmp qword [rax + 0x18], 0x10
jb 0x180089452
mov rax, qword [rax]
mov qword [rbp - 0x59], rax
mov qword [rbp - 0x51], rcx
xor r8d, r8d
lea rdx, [rbp - 0x59]
lea rcx, [rbp - 0x29]
call fcn.180072b80
lea rax, [rbp - 0x29]
cmp qword [rbp - 0x11], 8
cmovae rax, qword [rbp - 0x29]
mov qword [rbp - 0x69], rax
mov rax, qword [rbp - 0x19]
mov qword [rbp - 0x61], rax
movaps xmm0, xmmword [rbp - 0x69]
movdqa xmmword [rbp - 0x79], xmm0
lea rdx, [rbp - 0x79]
lea rcx, [rbp + 0x17]
call fcn.1800906b0
mov ebx, eax
lea rcx, [rbp - 0x29]
call fcn.1800097f0
test ebx, ebx
je 0x18008959c
inc rsi
add rdi, 0x20
mov rcx, qword [r14 + 0x78]
mov rax, qword [r14 + 0x80]
sub rax, rcx
sar rax, 5
cmp rsi, rax
jb 0x180089440
xor bl, bl
jmp 0x18008959e
mov dword [rbp - 0x79], 0x1005a41
nop dword [rax]
lea eax, [rbx + 0x6f]
xor byte [rbp + rbx - 0x79], al
inc rbx
cmp rbx, 2
jb 0x1800894e0
mov byte [rbp - 0x76], 0
lea r8, [rbp - 0x79]
mov rax, 0xffffffffffffffff
nop
inc rax
cmp byte [r8 + rax], 0
jne 0x180089500
shl rdx, 5
lea rbx, [rdx + rcx]
mov rcx, rbx
mov rsi, qword [rbx + 0x18]
cmp rsi, 0x10
jb 0x180089522
mov rcx, qword [rbx]
mov rdi, qword [rbx + 0x10]
cmp rdi, rax
jne 0x18008953b
mov r8, rdi
lea rdx, [rbp - 0x79]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x18008959c
cmp rsi, 0x10
jb 0x180089544
mov rbx, qword [rbx]
mov qword [rbp - 0x69], rbx
mov qword [rbp - 0x61], rdi
xor r8d, r8d
lea rdx, [rbp - 0x69]
lea rcx, [rbp - 0x29]
call fcn.180072b80
lea rax, [rbp - 0x29]
cmp qword [rbp - 0x11], 8
cmovae rax, qword [rbp - 0x29]
mov qword [rbp - 0x69], rax
mov rax, qword [rbp - 0x19]
mov qword [rbp - 0x61], rax
movaps xmm0, xmmword [rbp - 0x69]
movdqa xmmword [rbp - 0x69], xmm0
lea rdx, [rbp - 0x69]
lea rcx, [rbp + 0x17]
call fcn.1800906b0
test eax, eax
sete bl
lea rcx, [rbp - 0x29]
call fcn.1800097f0
jmp 0x18008959e
mov bl, 1
lea rcx, [rbp + 0x17]
call fcn.1800097f0
movzx eax, bl
mov rcx, qword [rbp + 0x37]
xor rcx, rsp
call fcn.1800ef6c0
lea r11, [rsp + 0xe0]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x30]
mov rsp, r11
pop r14
pop rdi
pop rbp
ret