Function at 0x14005c160
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, [rax - 0x288]
sub rsp, 0x360
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
movaps xmmword [rax - 0x78], xmm10
movaps xmmword [rax - 0x88], xmm11
movaps xmmword [rax - 0x98], xmm12
movaps xmmword [rax - 0xa8], xmm13
movaps xmmword [rax - 0xb8], xmm14
mov rax, qword [0x14018af70]
xor rax, rsp
mov qword [rbp + 0x1c0], rax
mov r13, qword [0x14018b140]
mov r12, qword [0x14018b138]
mov rcx, r13
sub rcx, r12
movabs rax, 0x358ae0358ae0358b
imul rcx
sar rdx, 6
mov rax, rdx
shr rax, 0x3f
add rdx, rax
je 0x14005ca0a
cmp r12, r13
je 0x14005ca0a
xor r14d, r14d
lea edi, [r14 + 5]
lea esi, [rdi + 0x1a]
mov ebx, dword [reloc.WS2_32.dll_accept]
xorps xmm12, xmm12
movss xmm14, dword [0x14014a050]
movss xmm13, dword [0x14014a038]
nop dword [rax]
nop word [rax + rax]
mov rax, r12
lea rcx, [rbp + 0x80]
mov edx, 2
nop
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rax, [rax + 0x80]
sub rdx, 1
jne 0x14005c250
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movzx eax, word [rax + 0x30]
mov word [rcx + 0x30], ax
cmp byte [rbp + 0x166], dl
je 0x14005c9fa
cmp byte [rbp + 0x16c], dl
je 0x14005c9fa
movss xmm0, dword [0x14018b212]
comiss xmm0, xmm12
jbe 0x14005c9fa
movss xmm7, dword [rbp + 0x17e]
movaps xmm1, xmm7
subss xmm1, dword [0x14018b24e]
movss xmm6, dword [rbp + 0x17a]
movaps xmm2, xmm6
subss xmm2, dword [0x14018b24a]
movss xmm8, dword [rbp + 0x176]
movaps xmm0, xmm8
subss xmm0, dword [0x14018b246]
mulss xmm2, xmm2
mulss xmm0, xmm0
addss xmm2, xmm0
mulss xmm1, xmm1
addss xmm2, xmm1
xorps xmm0, xmm0
ucomiss xmm0, xmm2
ja 0x14005c34c
xorps xmm11, xmm11
sqrtss xmm11, xmm2
jmp 0x14005c358
movaps xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movaps xmm11, xmm0
mov qword [rsp + 0x60], 0
movss xmm9, dword [0x14019502c]
movss xmm10, dword [0x14019501c]
movss dword [rbp - 0x10], xmm8
movaps xmm1, xmm6
addss xmm1, xmm14
movss dword [rbp - 0xc], xmm1
movss dword [rbp - 8], xmm7
movaps xmm0, xmm9
unpcklps xmm0, xmm10
movq r9, xmm0
lea r8, [rsp + 0x60]
lea rdx, [rbp - 0x10]
call fcn.1400516a0
test al, al
je 0x14005c9fa
movss dword [rbp], xmm8
subss xmm6, xmm13
movss dword [rbp + 4], xmm6
movss dword [rbp + 8], xmm7
movaps xmm0, xmm9
unpcklps xmm0, xmm10
movq r9, xmm0
lea r8, [rsp + 0x58]
lea rdx, [rbp]
call fcn.1400516a0
test al, al
je 0x14005c9fa
movzx eax, word [0x140149f18]
mov word [rsp + 0x44], ax
cmp byte [0x140149f19], 0
je 0x14005c405
mov byte [rsp + 0x44], 0x5d
xor byte [rsp + 0x45], 0x3a
mov r8, qword [rbp + 0x88]
mov rdx, qword [rbp + 0x110]
lea rcx, [rbp + 0x60]
call fcn.1400544b0
mov r15, rax
cmp qword [rax + 0x18], 0x10
jb 0x14005c429
mov r15, qword [rax]
movsd xmm0, qword [0x140149d98]
movsd qword [rsp + 0x48], xmm0
movzx eax, byte [0x140149da0]
mov byte [rsp + 0x48], 0x5b
xor byte [rsp + 0x49], 0x3a
xor byte [rsp + 0x4a], 0x3b
xor byte [rsp + 0x4b], 0x3c
xor byte [rsp + 0x4c], 0x3d
xor byte [rsp + 0x4d], 0x3e
xor byte [rsp + 0x4e], 0x3f
xor byte [rsp + 0x4f], 0x40
xor al, 0x41
mov byte [rsp + 0x50], al
mov eax, dword [str.Tge_VK_RSHIFT]
mov dword [rsp + 0x58], eax
cmp byte [reloc.WLDAP32.dll_Ordinal_60], 0
je 0x14005c549
mov r8d, r14d
cmp ebx, 2
jl 0x14005c519
movdqa xmm3, xmmword [0x14014a280]
movdqa xmm2, xmm3
punpckldq xmm2, xmm3
pmuldq xmm2, xmmword [0x14014a720]
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmmword [0x14014a720]
shufps xmm2, xmm0, 0xdd
paddd xmm2, xmm3
movd xmm0, edi
psrad xmm2, xmm0
movd xmm0, esi
movdqa xmm1, xmm2
psrld xmm1, xmm0
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x14014a2a0]
psubd xmm3, xmm1
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14014a350]
packuswb xmm2, xmm2
paddb xmm2, xmmword [str.9999999999999999]
movd xmm0, eax
pxor xmm2, xmm0
movd dword [rsp + 0x58], xmm2
jmp 0x14005c549
lea r9, [rsp + 0x58]
nop
mov eax, 0x8d3dcb09
mul r8d
shr edx, 5
movsx eax, dl
imul ecx, eax, 0x3a
movzx eax, r8b
sub al, cl
add al, 0x39
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 4
jl 0x14005c520
cvttss2si edx, xmm11
lea rcx, [rbp + 0x40]
call fcn.14004c790
mov rdi, rax
movzx eax, word [0x140149c18]
mov word [rsp + 0x40], ax
cmp byte [0x140149c19], 0
je 0x14005c579
mov byte [rsp + 0x40], 0x5b
xor byte [rsp + 0x41], 0x3a
lea rax, [rsp + 0x40]
mov rbx, 0xffffffffffffffff
inc rbx
cmp byte [rax + rbx], 0
jne 0x14005c585
mov r8, qword [rdi + 0x10]
mov rcx, qword [rdi + 0x18]
mov rax, rcx
sub rax, r8
cmp rbx, rax
ja 0x14005c631
lea rax, [r8 + rbx]
mov qword [rdi + 0x10], rax
mov rsi, rdi
cmp rcx, 0x10
jb 0x14005c5b9
mov rsi, qword [rdi]
lea rax, [rsp + 0x40]
add rax, rbx
cmp rax, rsi
jbe 0x14005c5eb
lea rax, [rsi + r8]
lea rcx, [rsp + 0x40]
cmp rcx, rax
ja 0x14005c5eb
lea rax, [rsp + 0x40]
cmp rsi, rax
jbe 0x14005c5ee
lea rax, [rsp + 0x40]
mov r14, rsi
sub r14, rax
jmp 0x14005c5ee
mov r14, rbx
inc r8
lea rcx, [rsi + rbx]
mov rdx, rsi
call sub.VCRUNTIME140.dll_memmove
mov r8, r14
lea rdx, [rsp + 0x40]
mov rcx, rsi
call sub.VCRUNTIME140.dll_memcpy
mov r8, rbx
sub r8, r14
lea rax, [r14 + rbx]
lea rdx, [rsp + 0x40]
add rdx, rax
lea rcx, [rsi + r14]
call sub.VCRUNTIME140.dll_memcpy
xor r14d, r14d
lea esi, [r14 + 0x1f]
jmp 0x14005c651
mov qword [rsp + 0x28], rbx
lea rax, [rsp + 0x40]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov rdx, rbx
mov rcx, rdi
call fcn.140077400
mov rdi, rax
mov qword [rbp - 0x30], r14
mov qword [rbp - 0x20], r14
mov qword [rbp - 0x18], r14
movups xmm0, xmmword [rdi]
movups xmmword [rbp - 0x30], xmm0
movups xmm1, xmmword [rdi + 0x10]
movups xmmword [rbp - 0x20], xmm1
mov qword [rdi + 0x10], r14
mov qword [rdi + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rdi], 0
lea rax, [rsp + 0x58]
mov r8, 0xffffffffffffffff
nop word [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14005c690
lea rdx, [rsp + 0x58]
lea rcx, [rbp - 0x30]
call fcn.140006630
mov qword [rbp - 0x50], r14
mov qword [rbp - 0x40], r14
mov qword [rbp - 0x38], r14
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x50], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x40], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], 0
lea rax, [rsp + 0x48]
mov r8, 0xffffffffffffffff
nop
inc r8
cmp byte [rax + r8], 0
jne 0x14005c6e0
lea rdx, [rsp + 0x48]
lea rcx, [rbp - 0x50]
call fcn.140006630
mov qword [rbp - 0x70], r14
mov qword [rbp - 0x60], r14
mov qword [rbp - 0x58], r14
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x70], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x60], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], 0
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [r15 + r8], 0
jne 0x14005c730
mov rdx, r15
lea rcx, [rbp - 0x70]
call fcn.140006630
mov qword [rsp + 0x70], r14
mov qword [rbp - 0x80], r14
mov qword [rbp - 0x78], r14
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x70], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x80], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], 0
lea rax, [rsp + 0x44]
mov r8, 0xffffffffffffffff
nop
inc r8
cmp byte [rax + r8], 0
jne 0x14005c780
lea rdx, [rsp + 0x44]
lea rcx, [rsp + 0x70]
call fcn.140006630
mov qword [rbp + 0x20], r14
mov qword [rbp + 0x30], r14
mov qword [rbp + 0x38], r14
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x20], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x30], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], 0
mov rax, qword [0x140194da0]
mov qword [rbp + 0x10], 0x3f800000
mov dword [rbp + 0x18], 0
movss xmm0, dword [rax + 0x37e0]
movss dword [rbp + 0x1c], xmm0
lea rcx, [rbp + 0x10]
call fcn.14000acf0
movss xmm0, dword [rsp + 0x60]
movss dword [rsp + 0x68], xmm0
movss xmm1, dword [rsp + 0x64]
movss dword [rsp + 0x6c], xmm1
movss xmm0, dword [rbp + 0x146]
movss dword [rsp + 0x30], xmm0
movss xmm1, dword [rbp + 0x142]
movss dword [rsp + 0x28], xmm1
movss dword [rsp + 0x20], xmm11
lea r9, [rbp + 0x20]
mov edx, eax
lea rcx, [rsp + 0x68]
call fcn.140051bb0
nop
mov rdx, qword [rbp - 0x78]
cmp rdx, 0x10
jb 0x14005c877
inc rdx
mov rcx, qword [rsp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005c872
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14005ca6a
call fcn.14010da94
mov qword [rbp - 0x80], r14
mov qword [rbp - 0x78], reloc.WS2_32.dll_ntohs
mov byte [rsp + 0x70], 0
mov rdx, qword [rbp - 0x58]
cmp rdx, 0x10
jb 0x14005c8c3
inc rdx
mov rcx, qword [rbp - 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005c8be
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14005ca71
call fcn.14010da94
mov qword [rbp - 0x60], r14
mov qword [rbp - 0x58], reloc.WS2_32.dll_ntohs
mov byte [rbp - 0x70], 0
mov rdx, qword [rbp - 0x38]
cmp rdx, 0x10
jb 0x14005c90e
inc rdx
mov rcx, qword [rbp - 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005c909
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14005ca78
call fcn.14010da94
mov qword [rbp - 0x40], r14
mov qword [rbp - 0x38], reloc.WS2_32.dll_ntohs
mov byte [rbp - 0x50], 0
mov rdx, qword [rbp - 0x18]
cmp rdx, 0x10
jb 0x14005c959
inc rdx
mov rcx, qword [rbp - 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005c954
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14005ca7f
call fcn.14010da94
mov qword [rbp - 0x20], r14
mov qword [rbp - 0x18], reloc.WS2_32.dll_ntohs
mov byte [rbp - 0x30], 0
mov rdx, qword [rbp + 0x58]
cmp rdx, 0x10
jb 0x14005c9a4
inc rdx
mov rcx, qword [rbp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005c99f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14005ca86
call fcn.14010da94
mov qword [rbp + 0x50], r14
mov qword [rbp + 0x58], reloc.WS2_32.dll_ntohs
mov byte [rbp + 0x40], 0
mov rdx, qword [rbp + 0x78]
cmp rdx, 0x10
jb 0x14005c9ef
inc rdx
mov rcx, qword [rbp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005c9ea
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14005ca8d
call fcn.14010da94
mov edi, 5
mov ebx, dword [reloc.WS2_32.dll_accept]
add r12, 0x132
cmp r12, r13
jne 0x14005c240
mov rcx, qword [rbp + 0x1c0]
xor rcx, rsp
call fcn.14010d7e0
lea r11, [rsp + 0x360]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
movaps xmm13, xmmword [r11 - 0x80]
movaps xmm14, xmmword [r11 - 0x90]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
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 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 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]
int3