Function at 0x14004c1a0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x10]
sub rsp, 0x110
mov rax, qword [0x1400fc0c0]
xor rax, rsp
mov qword [rbp + 8], rax
mov rsi, r8
mov r14, rdx
mov r13, rcx
mov qword [rsp + 0x20], rcx
mov qword [rbp - 0x48], rdx
mov qword [rbp - 0x40], r8
xor edi, edi
call fcn.140050ce0
mov rbx, rax
test rax, rax
jne 0x14004c243
mov dword [rsp + 0x20], 0xeeedf511
mov word [rsp + 0x24], 0x100
nop
lea eax, [rdi + 0x7f]
xor byte [rsp + rdi + 0x20], al
inc rdi
cmp rdi, 4
jb 0x14004c200
mov byte [rsp + 0x25], 0
lea r9, [rsp + 0x40]
lea r8, [rsp + 0x24]
lea rdx, [rsp + 0x20]
mov rcx, r13
call fcn.140037ac0
nop
mov rcx, r14
call fcn.1400371d0
nop
mov rcx, rsi
call fcn.1400371d0
jmp 0x14004c5d0
xorps xmm0, xmm0
movups xmmword [rbp - 0x38], xmm0
mov qword [rbp - 0x28], rdi
mov qword [rbp - 0x20], reloc.WS2_32.dll_ntohs
mov byte [rbp - 0x38], 0
movups xmmword [rbp - 0x18], xmm0
movdqa xmm1, xmmword [0x1400ec710]
movdqu xmmword [rbp - 8], xmm1
mov byte [rbp - 0x18], 0
mov r8, rsi
cmp qword [rsi + 0x18], 0x10
jb 0x14004c27c
mov r8, qword [rsi]
mov edx, 0x2712
mov rcx, rbx
call fcn.1400534e0
mov edx, 0x51
lea r8d, [rdx - 0x50]
mov rcx, rbx
call fcn.1400534e0
mov dword [rsp + 0x30], 0xe3f8e514
mov dword [rsp + 0x34], 0xa8edf0f6
mov dword [rsp + 0x38], 0xe7e1f0
mov byte [rsp + 0x3c], 1
lea r8, [rsp + 0x30]
mov edx, 0x27c1
mov rcx, rbx
call fcn.1400534e0
mov edx, 0x40
lea r8d, [rdx - 0x3f]
mov rcx, rbx
call fcn.1400534e0
mov r8, r14
cmp qword [r14 + 0x18], 0x10
jb 0x14004c2e7
mov r8, qword [r14]
mov edx, 0x271f
mov rcx, rbx
call fcn.1400534e0
lea r8, [0x14004f3e0]
mov edx, 0x4e2b
mov rcx, rbx
call fcn.1400534e0
lea r8, [rbp - 0x38]
mov edx, 0x2711
mov rcx, rbx
call fcn.1400534e0
lea r8, [0x140047330]
mov edx, 0x4e6f
mov rcx, rbx
call fcn.1400534e0
lea r8, [rbp - 0x18]
mov edx, 0x272d
mov rcx, rbx
call fcn.1400534e0
mov rcx, rbx
call fcn.140050da0
mov r8, 0xffffffffffffffff
test eax, eax
je 0x14004c399
mov ecx, eax
call fcn.1400503d0
xorps xmm0, xmm0
movups xmmword [rsp + 0x48], xmm0
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x60], rdi
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x14004c371
mov rdx, rax
lea rcx, [rsp + 0x48]
call fcn.1400378a0
lea rcx, [rsp + 0x48]
call fcn.1400463a0
mov r8, 0xffffffffffffffff
lea rax, [rsp + 0x48]
mov qword [rsp + 0x20], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x48], xmm0
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x60], rdi
mov r15, qword [rbp - 0x28]
lea r12, [rbp - 0x38]
cmp qword [rbp - 0x20], 0x10
cmovae r12, qword [rbp - 0x38]
movabs rbx, 0x7fffffffffffffff
cmp r15, rbx
ja 0x14004c608
mov qword [rsp + 0x60], reloc.WS2_32.dll_ntohs
cmp r15, 0x10
jae 0x14004c3fa
mov qword [rsp + 0x58], r15
movups xmm0, xmmword [r12]
movups xmmword [rsp + 0x48], xmm0
jmp 0x14004c449
mov rax, r15
or rax, 0xf
cmp rax, rbx
ja 0x14004c415
mov rbx, rax
mov ecx, reloc.WLDAP32.dll_Ordinal_22
cmp rax, rcx
cmovb rbx, rcx
mov rdx, rbx
add rdx, 1
cmovb rdx, r8
lea rcx, [rsp + 0x48]
call fcn.140037d20
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x58], r15
mov qword [rsp + 0x60], rbx
lea r8, [r15 + 1]
mov rdx, r12
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
nop
lea rax, [rsp + 0x78]
mov qword [rsp + 0x70], rax
mov rdx, rsi
lea rcx, [rsp + 0x78]
call fcn.140037370
mov rbx, rax
mov rdx, r14
lea rcx, [rbp - 0x68]
call fcn.140037370
nop
lea r8, [rsp + 0x48]
mov rdx, rbx
mov rcx, rax
call fcn.140043d00
movups xmm0, xmmword [rbp - 0x38]
movups xmmword [r13], xmm0
movups xmm1, xmmword [rbp - 0x28]
movups xmmword [r13 + 0x10], xmm1
mov qword [rbp - 0x28], rdi
mov edx, reloc.WS2_32.dll_ntohs
mov qword [rbp - 0x20], rdx
mov byte [rbp - 0x38], 0
mov rax, qword [rbp]
cmp rax, 0x10
jb 0x14004c4e6
lea rdx, [rax + 1]
mov rcx, qword [rbp - 0x18]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004c4dd
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14004c4dd
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14009e7b0
mov rdx, qword [rbp - 0x20]
movdqa xmm0, xmmword [0x1400ec710]
movdqu xmmword [rbp - 8], xmm0
mov byte [rbp - 0x18], 0
cmp rdx, 0x10
jb 0x14004c531
inc rdx
mov rcx, qword [rbp - 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004c52c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14004c52c
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14009e7b0
mov qword [rbp - 0x28], rdi
mov qword [rbp - 0x20], reloc.WS2_32.dll_ntohs
mov byte [rbp - 0x38], 0
mov rdx, qword [r14 + 0x18]
cmp rdx, 0x10
jb 0x14004c57b
mov rcx, qword [r14]
inc rdx
cmp rdx, 0x1000
jb 0x14004c576
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14004c5fa
mov rcx, r8
call fcn.14009e7b0
mov qword [r14 + 0x10], rdi
mov qword [r14 + 0x18], reloc.WS2_32.dll_ntohs
mov byte [r14], 0
mov rdx, qword [rsi + 0x18]
cmp rdx, 0x10
jb 0x14004c5c1
inc rdx
mov rcx, qword [rsi]
cmp rdx, 0x1000
jb 0x14004c5bc
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14004c601
mov rcx, r8
call fcn.14009e7b0
mov qword [rsi + 0x10], rdi
mov qword [rsi + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rsi], 0
mov rax, r13
mov rcx, qword [rbp + 8]
xor rcx, rsp
call fcn.14009ef80
mov rbx, qword [rsp + 0x168]
add rsp, 0x110
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call fcn.140033ac0
int3