Function at 0x14004aff0
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x60]
sub rsp, 0x160
movaps xmmword [rax - 0x38], xmm6
mov rax, qword [0x14011a090]
xor rax, rsp
mov qword [rbp + 0x40], rax
mov rdi, qword [0x1401511c0]
mov edx, 4
mov rax, qword gs:[0x58]
mov rcx, qword [rax]
xor r13d, r13d
mov eax, dword [rdx + rcx]
cmp dword [0x140151d40], eax
jle 0x14004b6c1
lea rcx, [0x140151d40]
call fcn.1400e7cd8
cmp dword [0x140151d40], 0xffffffff
jne 0x14004b6c1
xorps xmm0, xmm0
xor eax, eax
movups xmmword [0x140151db0], xmm0
mov qword [0x140151dc0], rax
mov eax, dword [0x140104c20]
mov dword [rsp + 0x30], eax
movzx eax, word [0x140104c24]
mov word [rsp + 0x34], ax
mov byte [rsp + 0x30], WSAStartup
xor byte [rsp + 0x31], 0x32
xor byte [rsp + 0x32], 0x33
xor byte [rsp + 0x33], 0x34
xor byte [rsp + 0x34], 0x35
xor byte [rsp + 0x35], 0x36
mov qword [rsp + 0x40], r13
movdqa xmm0, xmmword [0x140105e50]
movdqu xmmword [rsp + 0x50], xmm0
mov byte [rsp + 0x40], r13b
lea rax, [rsp + 0x30]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x14004b0d4
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x40]
call fcn.14003ebf0
nop
mov eax, dword [str.A___ZZ7]
mov dword [rsp + 0x30], eax
movzx eax, word [0x140104794]
mov word [rsp + 0x34], ax
movzx eax, byte [0x140104796]
mov byte [rsp + 0x30], reloc.WS2_32.dll_WSASetLastError
xor byte [rsp + 0x31], 0x32
xor byte [rsp + 0x32], 0x33
xor byte [rsp + 0x33], 0x34
xor byte [rsp + 0x34], 0x35
xor byte [rsp + 0x35], 0x36
xor al, 0x37
mov byte [rsp + 0x36], al
mov qword [rsp + 0x60], r13
movdqa xmm0, xmmword [0x140105e50]
movdqu xmmword [rsp + 0x70], xmm0
mov byte [rsp + 0x60], 0
lea rax, [rsp + 0x30]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x14004b153
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x60]
call fcn.14003ebf0
nop
mov eax, dword [str.S_D4zAwAXFRJzVRYSJ]
mov dword [rsp + 0x30], eax
mov esi, 4
lea r14d, [rsi + 0x1b]
mov ebx, dword [reloc.WS2_32.dll_accept]
cmp byte [0x1401053d7], 0
je 0x14004b258
mov r8d, r13d
cmp ebx, 2
jl 0x14004b226
movdqa xmm3, xmmword [0x140106030]
movdqa xmm2, xmm3
punpckldq xmm2, xmm3
pmuldq xmm2, xmmword [0x1401062b0]
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmmword [0x1401062b0]
shufps xmm2, xmm0, 0xdd
movd xmm0, esi
psrad xmm2, xmm0
movd xmm0, r14d
movdqa xmm1, xmm2
psrld xmm1, xmm0
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x140106060]
psubd xmm3, xmm1
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140106110]
packuswb xmm2, xmm2
paddb xmm2, xmmword [str.1111111111111111]
movd xmm0, eax
pxor xmm2, xmm0
movd dword [rsp + 0x30], xmm2
jmp 0x14004b258
lea r9, [rsp + 0x30]
nop dword [rax + rax]
mov eax, 0x5397829d
mul r8d
shr edx, 4
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
sub al, cl
add al, 0x31
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, esi
jl 0x14004b230
mov qword [rbp - 0x80], r13
movdqa xmm0, xmmword [0x140105e50]
movdqu xmmword [rbp - 0x70], xmm0
mov byte [rbp - 0x80], 0
lea rax, [rsp + 0x30]
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14004b280
lea rdx, [rsp + 0x30]
lea rcx, [rbp - 0x80]
call fcn.14003ebf0
nop
mov eax, dword [str.__T4PGG_ACEJNdXXNS_8D]
mov dword [rsp + 0x30], eax
cmp byte [0x140104927], 0
je 0x14004b379
mov r8d, r13d
cmp ebx, 2
jl 0x14004b343
movdqa xmm3, xmmword [0x140106030]
movdqa xmm2, xmm3
punpckldq xmm2, xmm3
pmuldq xmm2, xmmword [0x1401062b0]
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmmword [0x1401062b0]
shufps xmm2, xmm0, 0xdd
movd xmm0, esi
psrad xmm2, xmm0
movd xmm0, r14d
movdqa xmm1, xmm2
psrld xmm1, xmm0
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x140106060]
psubd xmm3, xmm1
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140106110]
packuswb xmm2, xmm2
paddb xmm2, xmmword [str.1111111111111111]
movd xmm0, eax
pxor xmm2, xmm0
movd dword [rsp + 0x30], xmm2
jmp 0x14004b379
lea r9, [rsp + 0x30]
nop dword [rax + rax]
mov eax, 0x5397829d
mul r8d
shr edx, 4
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
sub al, cl
add al, 0x31
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 4
jl 0x14004b350
mov qword [rbp - 0x60], r13
movdqa xmm0, xmmword [0x140105e50]
movdqu xmmword [rbp - 0x50], xmm0
mov byte [rbp - 0x60], 0
lea rax, [rsp + 0x30]
mov r8, 0xffffffffffffffff
nop word [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14004b3a0
lea rdx, [rsp + 0x30]
lea rcx, [rbp - 0x60]
call fcn.14003ebf0
nop
mov rax, qword [str.BZ_RCY8r_GFVQK:]
mov qword [rsp + 0x30], rax
cmp byte [0x14010510f], 0
je 0x14004b50b
mov r8d, r13d
cmp ebx, 2
jl 0x14004b4dd
movdqa xmm4, xmmword [0x1401062b0]
movd xmm6, esi
movd xmm5, r14d
movdqa xmm2, xmmword [0x140106030]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x140106060]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140106110]
packuswb xmm2, xmm2
paddb xmm2, xmmword [str.1111111111111111]
movd xmm0, dword [rsp + 0x30]
pxor xmm2, xmm0
movd dword [rsp + 0x30], xmm2
movdqa xmm3, xmmword [0x140106050]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x140106060]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140106110]
packuswb xmm2, xmm2
paddb xmm2, xmmword [str.1111111111111111]
movd xmm0, dword [rsp + 0x34]
pxor xmm2, xmm0
movd dword [rsp + 0x34], xmm2
jmp 0x14004b50b
lea r9, [rsp + 0x30]
mov eax, 0x5397829d
mul r8d
shr edx, 4
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
sub al, cl
add al, 0x31
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 8
jl 0x14004b4e2
mov qword [rbp - 0x40], r13
movdqa xmm0, xmmword [0x140105e50]
movdqu xmmword [rbp - 0x30], xmm0
mov byte [rbp - 0x40], 0
lea rax, [rsp + 0x30]
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14004b530
lea rdx, [rsp + 0x30]
lea rcx, [rbp - 0x40]
call fcn.14003ebf0
nop
mov eax, dword [str.B_T4uWP_XW_8b2]
mov dword [rsp + 0x30], eax
cmp byte [0x14010556f], 0
je 0x14004b629
mov r8d, r13d
cmp ebx, 2
jl 0x14004b5f3
movdqa xmm3, xmmword [0x140106030]
movdqa xmm2, xmm3
punpckldq xmm2, xmm3
pmuldq xmm2, xmmword [0x1401062b0]
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmmword [0x1401062b0]
shufps xmm2, xmm0, 0xdd
movd xmm0, esi
psrad xmm2, xmm0
movd xmm0, r14d
movdqa xmm1, xmm2
psrld xmm1, xmm0
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x140106060]
psubd xmm3, xmm1
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140106110]
packuswb xmm2, xmm2
paddb xmm2, xmmword [str.1111111111111111]
movd xmm0, eax
pxor xmm2, xmm0
movd dword [rsp + 0x30], xmm2
jmp 0x14004b629
lea r9, [rsp + 0x30]
nop dword [rax + rax]
mov eax, 0x5397829d
mul r8d
shr edx, 4
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
sub al, cl
add al, 0x31
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 4
jl 0x14004b600
mov qword [rbp - 0x20], r13
movdqa xmm0, xmmword [0x140105e50]
movdqu xmmword [rbp - 0x10], xmm0
mov byte [rbp - 0x20], 0
lea rax, [rsp + 0x30]
mov r8, 0xffffffffffffffff
nop word [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14004b650
lea rdx, [rsp + 0x30]
lea rcx, [rbp - 0x20]
call fcn.14003ebf0
nop
lea rax, [rsp + 0x40]
mov qword [rsp + 0x30], rax
lea rax, [rbp]
mov qword [rsp + 0x38], rax
lea rdx, [rsp + 0x30]
lea rcx, [0x140151db0]
call fcn.14006fa80
nop
lea r9, [fcn.14003eb20]
mov edx, reloc.WLDAP32.dll_Ordinal_32
lea r8d, [rdx - 0x1a]
lea rcx, [rsp + 0x40]
call fcn.1400e80c0
lea rcx, [0x1400ece00]
call fcn.1400e83c8
nop
lea rcx, [0x140151d40]
call fcn.1400e7c78
mov rdx, rdi
lea rcx, [rbp + 0x20]
call fcn.14004aed0
nop
lea rcx, [rbp + 0x20]
mov r12, qword [rbp + 0x20]
mov rax, qword [rbp + 0x30]
cmp qword [rbp + 0x38], 8
jb 0x14004b6ea
mov r14, r12
lea rbx, [r12 + rax*2]
jmp 0x14004b6f2
lea rbx, [rcx + rax*2]
lea r14, [rbp + 0x20]
mov rsi, r13
mov qword [rbp], r13
mov rdi, r13
mov qword [rbp + 0x10], r13
mov r15d, reloc.WS2_32.dll_ntohs
mov qword [rbp + 0x18], r15
mov rdx, rbx
sub rdx, r14
sar rdx, 1
cmp rdx, r15
jbe 0x14004b731
lea rcx, [rbp]
call fcn.140074620
mov qword [rbp + 0x10], r13
mov r12, qword [rbp + 0x20]
mov r15, qword [rbp + 0x18]
mov rsi, qword [rbp]
lea rax, [rbp]
mov qword [rsp + 0x30], rax
cmp r14, rbx
je 0x14004b78a
nop
movzx r9d, byte [r14]
cmp rdi, r15
jae 0x14004b768
lea rax, [rdi + 1]
mov qword [rbp + 0x10], rax
lea rax, [rbp]
cmp r15, 0x10
cmovae rax, rsi
mov byte [rax + rdi], r9b
mov byte [rax + rdi + 1], 0
jmp 0x14004b771
lea rcx, [rbp]
call fcn.1400749c0
add r14, 2
mov r15, qword [rbp + 0x18]
mov rdi, qword [rbp + 0x10]
mov rsi, qword [rbp]
cmp r14, rbx
jne 0x14004b740
mov r12, qword [rbp + 0x20]
mov rbx, qword [0x140151db0]
mov r13, qword [0x140151db8]
cmp rbx, r13
je 0x14004b86e
cmp r15, 0x10
setae r14b
nop dword [rax]
mov eax, dword [str.C_P_PB7]
mov dword [rsp + 0x30], eax
movzx eax, word [0x140104c78]
mov word [rsp + 0x34], ax
movzx eax, byte [0x140104c7a]
mov byte [rsp + 0x30], WSAStartup
xor byte [rsp + 0x31], 0x32
xor byte [rsp + 0x32], 0x33
xor byte [rsp + 0x33], 0x34
xor byte [rsp + 0x34], 0x35
xor byte [rsp + 0x35], 0x36
xor al, 0x37
mov byte [rsp + 0x36], al
lea rcx, [rsp + 0x30]
mov rax, 0xffffffffffffffff
nop dword [rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x14004b800
lea rcx, [rbp]
test r14b, r14b
cmovne rcx, rsi
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x30]
xor r8d, r8d
mov rdx, rdi
call fcn.140074550
cmp rax, 0xffffffffffffffff
jne 0x14004b86e
mov rax, qword [rbx + 0x10]
mov r9, rbx
cmp qword [rbx + 0x18], 0x10
jb 0x14004b840
mov r9, qword [rbx]
lea rcx, [rbp]
test r14b, r14b
cmovne rcx, rsi
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov rdx, rdi
call fcn.140074550
cmp rax, 0xffffffffffffffff
jne 0x14004b8a2
add rbx, 0x20
cmp rbx, r13
jne 0x14004b7b0
xor bl, bl
cmp r15, 0x10
jb 0x14004b8b2
lea rdx, [r15 + 1]
mov rax, rsi
cmp rdx, 0x1000
jb 0x14004b8a6
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14004b8a6
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov bl, 1
jmp 0x14004b870
mov rcx, rsi
call fcn.1400e83e8
mov r12, qword [rbp + 0x20]
mov qword [rbp + 0x10], 0
mov qword [rbp + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rbp], 0
mov rdx, qword [rbp + 0x38]
cmp rdx, 8
jb 0x14004b909
lea rdx, [rdx*2 + 2]
mov rax, r12
cmp rdx, 0x1000
jb 0x14004b901
add rdx, 0x27
mov r12, qword [r12 - 8]
sub rax, r12
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14004b901
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, r12
call fcn.1400e83e8
movzx eax, bl
mov rcx, qword [rbp + 0x40]
xor rcx, rsp
call fcn.1400e7b30
lea r11, [rsp + 0x160]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
movaps xmm6, xmmword [r11 - 0x10]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret