Function at 0x14009c1c0
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x198]
sub rsp, 0x270
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
mov rax, qword [0x1401e56c8]
xor rax, rsp
mov qword [rbp + 0x128], rax
mov rsi, rdx
mov qword [rsp + 0x30], rdx
xor r13d, r13d
mov dword [rsp + 0x50], r13d
call fcn.1400fe110
mov r14, rax
xorps xmm0, xmm0
test rax, rax
jne 0x14009c28e
mov eax, dword [str.ymuv_]
mov dword [rsp + 0x30], eax
movzx eax, byte [0x1401c19a0]
mov byte [rsp + 0x30], Ordinal_79
xor byte [rsp + 0x31], 0x38
xor byte [rsp + 0x32], 0x39
xor byte [rsp + 0x33], 0x3a
xor al, 0x3b
mov byte [rsp + 0x34], al
movups xmmword [rsi], xmm0
mov qword [rsi + 0x10], r13
mov qword [rsi + 0x18], r13
lea rax, [rsp + 0x30]
mov rbx, 0xffffffffffffffff
nop dword [rax + rax]
inc rbx
cmp byte [rax + rbx], r13b
jne 0x14009c270
mov r8, rbx
lea rdx, [rsp + 0x30]
mov rcx, rsi
call fcn.140010900
jmp 0x14009da37
movups xmmword [rbp + 0x108], xmm0
mov qword [rbp + 0x118], r13
mov qword [rbp + 0x120], reloc.WS2_32.dll_ntohs
mov byte [rbp + 0x108], r13b
movups xmmword [rbp + 0xe8], xmm0
movdqa xmm9, xmmword [0x1401c4af0]
movdqu xmmword [rbp + 0xf8], xmm9
mov byte [rbp + 0xe8], 0
mov edi, 2
cmp byte [0x1401ec46b], 0
je 0x14009c2ea
mov r8d, edi
lea edx, [rdi + 0xb]
mov rcx, r14
call fcn.1401011e0
movups xmm0, xmmword [0x1401c30e8]
movups xmmword [rbp + 0xb0], xmm0
movups xmm1, xmmword [0x1401c30f8]
movups xmmword [rbp + 0xc0], xmm1
movups xmm0, xmmword [0x1401c3108]
movups xmmword [rbp + 0xd0], xmm0
mov eax, dword [0x1401c3118]
mov dword [rbp + 0xe0], eax
movzx eax, word [0x1401c311c]
mov word [rbp + 0xe4], ax
mov r8d, r13d
mov eax, 5
lea ecx, [rax + 0x1a]
mov r12d, dword [reloc.WS2_32.dll_accept]
cmp r12d, edi
jl 0x14009c49b
movdqa xmm5, xmmword [0x1401c4b30]
movdqa xmm4, xmmword [0x1401c4ec0]
movd xmm6, eax
movdqa xmm7, xmmword [0x1401c4bf0]
movd xmm8, ecx
movdqa xmm0, xmmword [0x1401c4dc0]
movdqa xmmword [rbp + 0xa0], xmm0
lea rcx, [rbp + 0xb4]
mov edx, dword [rbp + 0xa0]
nop word [rax + rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1401c4d00]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1401c4d00]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x30
jl 0x14009c390
cmp r8d, 0x36
jge 0x14009c4e3
movsxd rax, r8d
lea r9, [rbp + 0xb0]
add r9, rax
nop dword [rax + rax]
mov eax, 0x92492493
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x38
movzx eax, r8b
sub al, cl
add al, 0x37
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x36
jl 0x14009c4b0
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x40], xmm1
lea rax, [rbp + 0xb0]
mov rbx, 0xffffffffffffffff
mov r8, rbx
inc r8
cmp byte [rax + r8], 0
jne 0x14009c505
lea rdx, [rbp + 0xb0]
lea rcx, [rsp + 0x30]
call fcn.140010900
lea r8, [rsp + 0x30]
cmp qword [rsp + 0x48], 0x10
cmovae r8, qword [rsp + 0x30]
mov edx, 0x2712
mov rcx, r14
call fcn.1401011e0
lea rcx, [rsp + 0x30]
call fcn.140010730
lea r8, [0x14009da80]
mov edx, 0x4e2b
mov rcx, r14
call fcn.1401011e0
lea r8, [rbp + 0x108]
mov edx, 0x2711
mov rcx, r14
call fcn.1401011e0
mov rcx, r14
call fcn.1400fe180
test eax, eax
jne 0x14009d92c
cmp qword [rbp + 0x118], 0
je 0x14009d92c
mov qword [rbp + 0x90], r13
lea r8, [rbp + 0x58]
lea rdx, [rbp + 0x108]
lea rcx, [rbp + 0xa0]
call fcn.1400b3240
nop
movsd xmm0, qword [str.SYM_oUP__]
movsd qword [rsp + 0x30], xmm0
movzx eax, byte [0x1401c2ce0]
mov byte [rsp + 0x30], 0x64
xor byte [rsp + 0x31], 0x38
xor byte [rsp + 0x32], 0x39
xor byte [rsp + 0x33], 0x3a
xor byte [rsp + 0x34], 0x3b
xor byte [rsp + 0x35], 0x3c
xor byte [rsp + 0x36], 0x3d
xor byte [rsp + 0x37], 0x3e
xor al, 0x3f
mov byte [rsp + 0x38], al
xorps xmm0, xmm0
movups xmmword [rbp + 0xb0], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0xc0], xmm1
lea rax, [rsp + 0x30]
mov r8, rbx
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14009c610
lea rdx, [rsp + 0x30]
lea rcx, [rbp + 0xb0]
call fcn.140010900
nop
mov dword [rsp + 0x50], edi
cmp byte [rbp + 0xa0], 1
jne 0x14009cfdf
mov r15, qword [rbp + 0xa8]
lea r8, [rbp + 0xb0]
lea rdx, [rsp + 0x30]
mov rcx, r15
call fcn.1400b7f80
mov r14, qword [rsp + 0x40]
cmp byte [r14 + 0x19], 0
jne 0x14009c678
lea r8, [r14 + 0x20]
lea rdx, [rbp + 0xb0]
call fcn.1400bb000
test al, al
je 0x14009c67b
mov r14, qword [r15]
mov rax, qword [rbp + 0xa8]
cmp r14, qword [rax]
je 0x14009cfdf
movsd xmm0, qword [str.SYM_oUP__]
movsd qword [rsp + 0x30], xmm0
movzx eax, byte [0x1401c2ce0]
mov byte [rsp + 0x30], 0x64
xor byte [rsp + 0x31], 0x38
xor byte [rsp + 0x32], 0x39
xor byte [rsp + 0x33], 0x3a
xor byte [rsp + 0x34], 0x3b
xor byte [rsp + 0x35], 0x3c
xor byte [rsp + 0x36], 0x3d
xor byte [rsp + 0x37], 0x3e
xor al, 0x3f
mov byte [rsp + 0x38], al
xorps xmm0, xmm0
movups xmmword [rsp + 0x78], xmm0
mov qword [rbp - 0x78], r13
mov qword [rbp - 0x70], r13
lea rax, [rsp + 0x30]
mov r8, rbx
inc r8
cmp byte [rax + r8], 0
jne 0x14009c6e6
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x78]
call fcn.140010900
lea rdx, [rsp + 0x78]
lea rcx, [rbp + 0xa0]
call fcn.1400b0bb0
cmp byte [rax], 3
jne 0x14009cfdf
mov eax, dword [str.N_XH_]
mov dword [rsp + 0x30], eax
movzx eax, byte [0x1401c3198]
mov byte [rsp + 0x30], 0x79
xor byte [rsp + 0x31], 0x38
xor byte [rsp + 0x32], 0x39
xor byte [rsp + 0x33], 0x3a
xor al, 0x3b
mov byte [rsp + 0x34], al
xorps xmm0, xmm0
movups xmmword [rsp + 0x58], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x68], xmm1
lea rax, [rsp + 0x30]
mov r8, rbx
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14009c760
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x58]
call fcn.140010900
nop
mov edi, 6
mov dword [rsp + 0x50], edi
cmp byte [rbp + 0xa0], 1
jne 0x14009cfdf
mov r15, qword [rbp + 0xa8]
lea r8, [rsp + 0x58]
lea rdx, [rsp + 0x30]
mov rcx, r15
call fcn.1400b7f80
mov r14, qword [rsp + 0x40]
cmp byte [r14 + 0x19], 0
jne 0x14009c7c7
lea r8, [r14 + 0x20]
lea rdx, [rsp + 0x58]
call fcn.1400bb000
test al, al
je 0x14009c7ca
mov r14, qword [r15]
mov rax, qword [rbp + 0xa8]
cmp r14, qword [rax]
je 0x14009cfdf
mov eax, dword [str.ZWWNS_]
mov dword [rsp + 0x30], eax
movzx eax, word [0x1401c2f4c]
mov word [rsp + 0x34], ax
mov byte [rsp + 0x30], WSAGetLastError
xor byte [rsp + 0x31], 0x38
xor byte [rsp + 0x32], 0x39
xor byte [rsp + 0x33], 0x3a
xor al, 0x3b
mov byte [rsp + 0x34], al
xor byte [rsp + 0x35], 0x3c
xorps xmm0, xmm0
movups xmmword [rbp + 0x38], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x48], xmm1
lea rax, [rsp + 0x30]
mov r8, rbx
inc r8
cmp byte [rax + r8], 0
jne 0x14009c826
lea rdx, [rsp + 0x30]
lea rcx, [rbp + 0x38]
call fcn.140010900
nop
mov edi, select
mov dword [rsp + 0x50], edi
cmp byte [rbp + 0xa0], 1
jne 0x14009cfdf
mov r15, qword [rbp + 0xa8]
lea r8, [rbp + 0x38]
lea rdx, [rsp + 0x30]
mov rcx, r15
call fcn.1400b7f80
mov r14, qword [rsp + 0x40]
cmp byte [r14 + 0x19], 0
jne 0x14009c88a
lea r8, [r14 + 0x20]
lea rdx, [rbp + 0x38]
call fcn.1400bb000
test al, al
je 0x14009c88d
mov r14, qword [r15]
mov rax, qword [rbp + 0xa8]
cmp r14, qword [rax]
je 0x14009cfdf
mov eax, dword [str.SY_:]
mov dword [rsp + 0x30], eax
cmp byte [0x1401c2d3b], 0
je 0x14009c993
cmp r12d, 2
jl 0x14009c950
movdqa xmm3, xmmword [0x1401c4b30]
movdqa xmm2, xmm3
punpckldq xmm2, xmm3
pmuldq xmm2, xmmword [0x1401c4ec0]
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmmword [0x1401c4ec0]
shufps xmm2, xmm0, 0xdd
paddd xmm2, xmm3
mov ecx, 5
movd xmm0, ecx
psrad xmm2, xmm0
mov ecx, Ordinal_35
movd xmm0, ecx
movdqa xmm1, xmm2
psrld xmm1, xmm0
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1401c4bf0]
psubd xmm3, xmm1
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1401c4d00]
packuswb xmm2, xmm2
paddb xmm2, xmmword [0x1401c4dc0]
movd xmm0, eax
xorps xmm2, xmm0
movd dword [rsp + 0x30], xmm2
jmp 0x14009c993
lea r9, [rsp + 0x30]
mov r8d, r13d
nop dword [rax + rax]
mov eax, 0x92492493
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x38
movzx eax, r8b
sub al, cl
add al, 0x37
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 4
jl 0x14009c960
xorps xmm0, xmm0
movups xmmword [rbp + 0x18], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x28], xmm1
lea rax, [rsp + 0x30]
mov r8, rbx
nop word [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14009c9b0
lea rdx, [rsp + 0x30]
lea rcx, [rbp + 0x18]
call fcn.140010900
nop
mov edi, reloc.WLDAP32.dll_Ordinal_30
mov dword [rsp + 0x50], edi
cmp byte [rbp + 0xa0], 1
jne 0x14009cfdf
mov r15, qword [rbp + 0xa8]
lea r8, [rbp + 0x18]
lea rdx, [rsp + 0x30]
mov rcx, r15
call fcn.1400b7f80
mov r14, qword [rsp + 0x40]
cmp byte [r14 + 0x19], 0
jne 0x14009ca14
lea r8, [r14 + 0x20]
lea rdx, [rbp + 0x18]
call fcn.1400bb000
test al, al
je 0x14009ca17
mov r14, qword [r15]
mov rax, qword [rbp + 0xa8]
cmp r14, qword [rax]
je 0x14009cfdf
mov eax, dword [0x1401c2c94]
mov dword [rsp + 0x30], eax
movzx eax, byte [0x1401c2c98]
mov byte [rsp + 0x30], 0x68
xor byte [rsp + 0x31], 0x38
xor byte [rsp + 0x32], 0x39
xor byte [rsp + 0x33], 0x3a
xor al, 0x3b
mov byte [rsp + 0x34], al
xorps xmm0, xmm0
movups xmmword [rbp - 8], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 8], xmm1
lea rax, [rsp + 0x30]
mov r8, rbx
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14009ca70
lea rdx, [rsp + 0x30]
lea rcx, [rbp - 8]
call fcn.140010900
nop
mov edi, 0x3e
mov dword [rsp + 0x50], edi
cmp byte [rbp + 0xa0], 1
jne 0x14009cfdf
mov r15, qword [rbp + 0xa8]
lea r8, [rbp - 8]
lea rdx, [rsp + 0x30]
mov rcx, r15
call fcn.1400b7f80
mov r14, qword [rsp + 0x40]
cmp byte [r14 + 0x19], 0
jne 0x14009cad4
lea r8, [r14 + 0x20]
lea rdx, [rbp - 8]
call fcn.1400bb000
test al, al
je 0x14009cad7
mov r14, qword [r15]
mov rax, qword [rbp + 0xa8]
cmp r14, qword [rax]
je 0x14009cfdf
mov eax, dword [str.ZQWOOY]
mov dword [rsp + 0x30], eax
movzx ecx, word [0x1401c17d0]
mov word [rsp + 0x34], cx
movzx eax, byte [0x1401c17d2]
mov byte [rsp + 0x30], WSAGetLastError
xor byte [rsp + 0x31], 0x38
xor byte [rsp + 0x32], 0x39
xor byte [rsp + 0x33], 0x3a
xor cl, 0x3b
mov byte [rsp + 0x34], cl
xor byte [rsp + 0x35], 0x3c
xor al, 0x3d
mov byte [rsp + 0x36], al
xorps xmm0, xmm0
movups xmmword [rbp - 0x28], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x18], xmm1
lea rax, [rsp + 0x30]
mov r8, rbx
inc r8
cmp byte [rax + r8], 0
jne 0x14009cb41
lea rdx, [rsp + 0x30]
lea rcx, [rbp - 0x28]
call fcn.140010900
nop
mov edi, 0x7e
mov dword [rsp + 0x50], edi
cmp byte [rbp + 0xa0], 1
jne 0x14009cfdf
mov r15, qword [rbp + 0xa8]
lea r8, [rbp - 0x28]
lea rdx, [rsp + 0x30]
mov rcx, r15
call fcn.1400b7f80
mov r14, qword [rsp + 0x40]
cmp byte [r14 + 0x19], 0
jne 0x14009cba5
lea r8, [r14 + 0x20]
lea rdx, [rbp - 0x28]
call fcn.1400bb000
test al, al
je 0x14009cba8
mov r14, qword [r15]
mov rax, qword [rbp + 0xa8]
cmp r14, qword [rax]
je 0x14009cfdf
mov rax, qword [str.D_ZUUXN_vVZRTN]
mov qword [rsp + 0x30], rax
cmp byte [0x1401c175f], 0
je 0x14009cd33
cmp r12d, 2
jl 0x14009cced
movdqa xmm4, xmmword [0x1401c4ec0]
mov eax, 5
movd xmm6, eax
mov eax, Ordinal_35
movd xmm5, eax
movdqa xmm2, xmmword [0x1401c4b30]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1401c4bf0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1401c4d00]
packuswb xmm2, xmm2
mov eax, dword [0x1401c4dc0]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x30]
xorps xmm2, xmm1
movd dword [rsp + 0x30], xmm2
movdqa xmm3, xmmword [0x1401c4b40]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1401c4bf0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1401c4d00]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x34]
xorps xmm2, xmm1
movd dword [rsp + 0x34], xmm2
jmp 0x14009cd33
lea r9, [rsp + 0x30]
mov r8d, r13d
nop word [rax + rax]
mov eax, 0x92492493
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x38
movzx eax, r8b
sub al, cl
add al, 0x37
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 8
jl 0x14009cd00
xorps xmm0, xmm0
movups xmmword [rbp - 0x48], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x38], xmm1
lea rax, [rsp + 0x30]
mov r8, rbx
nop word [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14009cd50
lea rdx, [rsp + 0x30]
lea rcx, [rbp - 0x48]
call fcn.140010900
nop
mov edi, 0xfe
mov dword [rsp + 0x50], edi
cmp byte [rbp + 0xa0], 1
jne 0x14009cfdf
mov r15, qword [rbp + 0xa8]
lea r8, [rbp - 0x48]
lea rdx, [rsp + 0x30]
mov rcx, r15
call fcn.1400b7f80
mov r14, qword [rsp + 0x40]
cmp byte [r14 + 0x19], 0
jne 0x14009cdb4
lea r8, [r14 + 0x20]
lea rdx, [rbp - 0x48]
call fcn.1400bb000
test al, al
je 0x14009cdb7
mov r14, qword [r15]
mov rax, qword [rbp + 0xa8]
cmp r14, qword [rax]
je 0x14009cfdf
movsd xmm0, qword [str.ZQUVRoX_P._1C]
movsd qword [rsp + 0x30], xmm0
mov eax, dword [0x1401c2f80]
mov dword [rsp + 0x38], eax
movzx eax, byte [0x1401c2f84]
mov byte [rsp + 0x3c], al
mov r8d, r13d
cmp r12d, 2
jl 0x14009cf0f
movdqa xmm4, xmmword [0x1401c4ec0]
mov eax, 5
movd xmm6, eax
mov eax, Ordinal_35
movd xmm5, eax
movdqa xmm2, xmmword [0x1401c4b30]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1401c4bf0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1401c4d00]
packuswb xmm2, xmm2
mov eax, dword [0x1401c4dc0]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [str.ZQUVRoX_P._1C]
xorps xmm2, xmm0
movd dword [rsp + 0x30], xmm2
movdqa xmm3, xmmword [0x1401c4b40]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1401c4bf0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1401c4d00]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x34]
xorps xmm2, xmm1
movd dword [rsp + 0x34], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rsp + 0x30]
add r9, rax
nop word [rax + rax]
mov eax, 0x92492493
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x38
movzx eax, r8b
sub al, cl
add al, 0x37
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xd
jl 0x14009cf20
xorps xmm0, xmm0
movups xmmword [rbp - 0x68], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x58], xmm1
lea rax, [rsp + 0x30]
mov r8, rbx
nop word [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14009cf70
lea rdx, [rsp + 0x30]
lea rcx, [rbp - 0x68]
call fcn.140010900
mov edi, 0x1fe
cmp byte [rbp + 0xa0], 1
jne 0x14009cfdf
mov r15, qword [rbp + 0xa8]
lea r8, [rbp - 0x68]
lea rdx, [rsp + 0x30]
mov rcx, r15
call fcn.1400b7f80
mov r14, qword [rsp + 0x40]
cmp byte [r14 + 0x19], 0
jne 0x14009cfcb
lea r8, [r14 + 0x20]
lea rdx, [rbp - 0x68]
call fcn.1400bb000
test al, al
je 0x14009cfce
mov r14, qword [r15]
mov rax, qword [rbp + 0xa8]
cmp r14, qword [rax]
je 0x14009cfdf
mov r14b, 1
jmp 0x14009cfe2
xor r14b, r14b
bt edi, 8
jae 0x14009cff6
btr edi, 8
lea rcx, [rbp - 0x68]
call fcn.140010730
nop
test dil, dil
jns 0x14009d009
btr edi, 7
lea rcx, [rbp - 0x48]
call fcn.140010730
nop
test dil, 0x40
je 0x14009d01c
and edi, 0xffffffbf
lea rcx, [rbp - 0x28]
call fcn.140010730
nop
test dil, 0x20
je 0x14009d02f
and edi, 0xffffffdf
lea rcx, [rbp - 8]
call fcn.140010730
nop
test dil, 0x10
je 0x14009d042
and edi, 0xffffffef
lea rcx, [rbp + 0x18]
call fcn.140010730
nop
test dil, 8
je 0x14009d055
and edi, 0xfffffff7
lea rcx, [rbp + 0x38]
call fcn.140010730
nop
test dil, 4
je 0x14009d069
and edi, 0xfffffffb
lea rcx, [rsp + 0x58]
call fcn.140010730
nop
test dil, 2
je 0x14009d07b
lea rcx, [rbp + 0xb0]
call fcn.140010730
test r14b, r14b
je 0x14009d918
mov byte [0x1401ec46b], 1
movsd xmm0, qword [str.SYM_oUP__]
movsd qword [rsp + 0x30], xmm0
movzx eax, byte [0x1401c2ce0]
mov byte [rsp + 0x30], 0x64
xor byte [rsp + 0x31], 0x38
xor byte [rsp + 0x32], 0x39
xor byte [rsp + 0x33], 0x3a
xor byte [rsp + 0x34], 0x3b
xor byte [rsp + 0x35], 0x3c
xor byte [rsp + 0x36], 0x3d
xor byte [rsp + 0x37], 0x3e
xor al, 0x3f
mov byte [rsp + 0x38], al
xorps xmm0, xmm0
movups xmmword [rbp + 0xb0], xmm0
mov qword [rbp + 0xc0], r13
mov qword [rbp + 0xc8], r13
lea rax, [rsp + 0x30]
mov r8, rbx
nop
inc r8
cmp byte [rax + r8], 0
jne 0x14009d0f0
lea rdx, [rsp + 0x30]
lea rcx, [rbp + 0xb0]
call fcn.140010900
lea rdx, [rbp + 0xb0]
lea rcx, [rbp + 0xa0]
call fcn.1400b0bb0
lea rdx, [rsp + 0x58]
mov rcx, rax
call fcn.1400b3360
lea rcx, [rbp + 0xe8]
cmp rcx, rax
je 0x14009d162
movups xmm8, xmmword [rax]
movups xmmword [rbp + 0xe8], xmm8
movups xmm9, xmmword [rax + 0x10]
movdqu xmmword [rbp + 0xf8], xmm9
mov qword [rax + 0x10], r13
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], 0
jmp 0x14009d16a
movups xmm8, xmmword [rbp + 0xe8]
lea rcx, [rsp + 0x58]
call fcn.140010730
call qword [sym.imp.MSVCP140.dll__Xtime_get_ticks]
mov qword [0x1401ec470], rax
mov eax, dword [str.N_XH_]
mov dword [rsp + 0x30], eax
movzx eax, byte [0x1401c3198]
mov byte [rsp + 0x30], 0x79
xor byte [rsp + 0x31], 0x38
xor byte [rsp + 0x32], 0x39
xor byte [rsp + 0x33], 0x3a
xor al, 0x3b
mov byte [rsp + 0x34], al
xorps xmm0, xmm0
movups xmmword [rbp + 0xb0], xmm0
mov qword [rbp + 0xc0], r13
mov qword [rbp + 0xc8], r13
lea rax, [rsp + 0x30]
mov r8, rbx
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14009d1d0
lea rdx, [rsp + 0x30]
lea rcx, [rbp + 0xb0]
call fcn.140010900
lea rdx, [rbp + 0xb0]
lea rcx, [rbp + 0xa0]
call fcn.1400b0bb0
mov rcx, rax
call fcn.1400b3410
mov word [0x1401eca78], ax
mov eax, dword [str.ZWWNS_]
mov dword [rsp + 0x30], eax
movzx eax, word [0x1401c2f4c]
mov word [rsp + 0x34], ax
mov byte [rsp + 0x30], WSAGetLastError
xor byte [rsp + 0x31], 0x38
xor byte [rsp + 0x32], 0x39
xor byte [rsp + 0x33], 0x3a
xor al, 0x3b
mov byte [rsp + 0x34], al
xor byte [rsp + 0x35], 0x3c
xorps xmm0, xmm0
movups xmmword [rbp + 0xb0], xmm0
mov qword [rbp + 0xc0], r13
mov qword [rbp + 0xc8], r13
lea rax, [rsp + 0x30]
mov r8, rbx
inc r8
cmp byte [rax + r8], 0
jne 0x14009d262
lea rdx, [rsp + 0x30]
lea rcx, [rbp + 0xb0]
call fcn.140010900
lea rdx, [rbp + 0xb0]
lea rcx, [rbp + 0xa0]
call fcn.1400b0bb0
mov rcx, rax
call fcn.1400b3410
mov word [0x1401eca7a], ax
mov eax, dword [str.SY_:]
mov dword [rsp + 0x30], eax
cmp byte [0x1401c2d3b], 0
je 0x14009d393
cmp r12d, 2
jl 0x14009d354
movdqa xmm3, xmmword [0x1401c4b30]
movdqa xmm2, xmm3
punpckldq xmm2, xmm3
pmuldq xmm2, xmmword [0x1401c4ec0]
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmmword [0x1401c4ec0]
shufps xmm2, xmm0, 0xdd
paddd xmm2, xmm3
mov edi, 5
movd xmm0, edi
psrad xmm2, xmm0
mov r14d, Ordinal_35
movd xmm0, r14d
movdqa xmm1, xmm2
psrld xmm1, xmm0
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1401c4bf0]
psubd xmm3, xmm1
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1401c4d00]
packuswb xmm2, xmm2
paddb xmm2, xmmword [0x1401c4dc0]
movd xmm0, eax
xorps xmm2, xmm0
movd dword [rsp + 0x30], xmm2
jmp 0x14009d39d
lea r9, [rsp + 0x30]
mov r8d, r13d
nop dword [rax]
mov eax, 0x92492493
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x38
movzx eax, r8b
sub al, cl
add al, 0x37
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 4
jl 0x14009d360
mov r14d, Ordinal_35
lea edi, [r14 - 0x1a]
xorps xmm0, xmm0
movups xmmword [rbp + 0xb0], xmm0
mov qword [rbp + 0xc0], r13
mov qword [rbp + 0xc8], r13
lea rax, [rsp + 0x30]
mov r8, rbx
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14009d3c0
lea rdx, [rsp + 0x30]
lea rcx, [rbp + 0xb0]
call fcn.140010900
lea rdx, [rbp + 0xb0]
lea rcx, [rbp + 0xa0]
call fcn.1400b0bb0
mov rcx, rax
call fcn.1400b3410
mov word [0x1401eca7c], ax
mov eax, dword [0x1401c2c94]
mov dword [rsp + 0x30], eax
movzx eax, byte [0x1401c2c98]
mov byte [rsp + 0x30], 0x68
xor byte [rsp + 0x31], 0x38
xor byte [rsp + 0x32], 0x39
xor byte [rsp + 0x33], 0x3a
xor al, 0x3b
mov byte [rsp + 0x34], al
xorps xmm0, xmm0
movups xmmword [rbp + 0xb0], xmm0
mov qword [rbp + 0xc0], r13
mov qword [rbp + 0xc8], r13
lea rax, [rsp + 0x30]
mov r8, rbx
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14009d450
lea rdx, [rsp + 0x30]
lea rcx, [rbp + 0xb0]
call fcn.140010900
lea rdx, [rbp + 0xb0]
lea rcx, [rbp + 0xa0]
call fcn.1400b0bb0
mov rcx, rax
call fcn.1400b3410
mov word [0x1401eca7e], ax
mov eax, dword [str.ZQWOOY]
mov dword [rsp + 0x30], eax
movzx ecx, word [0x1401c17d0]
mov word [rsp + 0x34], cx
movzx eax, byte [0x1401c17d2]
mov byte [rsp + 0x30], WSAGetLastError
xor byte [rsp + 0x31], 0x38
xor byte [rsp + 0x32], 0x39
xor byte [rsp + 0x33], 0x3a
xor cl, 0x3b
mov byte [rsp + 0x34], cl
xor byte [rsp + 0x35], 0x3c
xor al, 0x3d
mov byte [rsp + 0x36], al
xorps xmm0, xmm0
movups xmmword [rbp + 0xb0], xmm0
mov qword [rbp + 0xc0], r13
mov qword [rbp + 0xc8], r13
lea rax, [rsp + 0x30]
mov r8, rbx
inc r8
cmp byte [rax + r8], 0
jne 0x14009d4f0
lea rdx, [rsp + 0x30]
lea rcx, [rbp + 0xb0]
call fcn.140010900
lea rdx, [rbp + 0xb0]
lea rcx, [rbp + 0xa0]
call fcn.1400b0bb0
mov rcx, rax
call fcn.1400b3410
mov word [0x1401eca80], ax
mov rax, qword [str.D_ZUUXN_vVZRTN]
mov qword [rsp + 0x30], rax
cmp byte [0x1401c175f], 0
je 0x14009d6a3
cmp r12d, 2
jl 0x14009d659
movdqa xmm4, xmmword [0x1401c4ec0]
movd xmm6, edi
movd xmm5, r14d
movdqa xmm2, xmmword [0x1401c4b30]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1401c4bf0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1401c4d00]
packuswb xmm2, xmm2
mov eax, dword [0x1401c4dc0]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x30]
xorps xmm2, xmm1
movd dword [rsp + 0x30], xmm2
movdqa xmm3, xmmword [0x1401c4b40]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1401c4bf0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1401c4d00]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x34]
xorps xmm2, xmm1
movd dword [rsp + 0x34], xmm2
jmp 0x14009d6a3
lea r9, [rsp + 0x30]
mov r8d, r13d
nop dword [rax]
nop word [rax + rax]
mov eax, 0x92492493
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x38
movzx eax, r8b
sub al, cl
add al, 0x37
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 8
jl 0x14009d670
xorps xmm0, xmm0
movups xmmword [rbp + 0xb0], xmm0
mov qword [rbp + 0xc0], r13
mov qword [rbp + 0xc8], r13
lea rax, [rsp + 0x30]
mov r8, rbx
inc r8
cmp byte [rax + r8], 0
jne 0x14009d6c3
lea rdx, [rsp + 0x30]
lea rcx, [rbp + 0xb0]
call fcn.140010900
lea rdx, [rbp + 0xb0]
lea rcx, [rbp + 0xa0]
call fcn.1400b0bb0
mov rcx, rax
call fcn.1400b3410
mov word [0x1401eca82], ax
movsd xmm0, qword [str.ZQUVRoX_P._1C]
movsd qword [rsp + 0x30], xmm0
mov eax, dword [0x1401c2f80]
mov dword [rsp + 0x38], eax
movzx eax, byte [0x1401c2f84]
mov byte [rsp + 0x3c], al
mov r8d, r13d
cmp r12d, 2
jl 0x14009d83f
movdqa xmm4, xmmword [0x1401c4ec0]
movd xmm6, edi
movd xmm5, r14d
movdqa xmm2, xmmword [0x1401c4b30]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1401c4bf0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1401c4d00]
packuswb xmm2, xmm2
mov eax, dword [0x1401c4dc0]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [str.ZQUVRoX_P._1C]
xorps xmm2, xmm0
movd dword [rsp + 0x30], xmm2
movdqa xmm3, xmmword [0x1401c4b40]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1401c4bf0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1401c4d00]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x34]
xorps xmm2, xmm1
movd dword [rsp + 0x34], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rsp + 0x30]
add r9, rax
nop word [rax + rax]
mov eax, 0x92492493
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x38
movzx eax, r8b
sub al, cl
add al, 0x37
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xd
jl 0x14009d850
xorps xmm0, xmm0
movups xmmword [rbp + 0xb0], xmm0
mov qword [rbp + 0xc0], r13
mov qword [rbp + 0xc8], r13
lea rax, [rsp + 0x30]
inc rbx
cmp byte [rax + rbx], 0
jne 0x14009d8a0
mov r8, rbx
lea rdx, [rsp + 0x30]
lea rcx, [rbp + 0xb0]
call fcn.140010900
lea rdx, [rbp + 0xb0]
lea rcx, [rbp + 0xa0]
call fcn.1400b0bb0
mov rcx, rax
call fcn.1400b3410
mov word [0x1401eca84], ax
movups xmmword [rsi], xmm8
movups xmmword [rsi + 0x10], xmm9
movdqa xmm0, xmmword [0x1401c4af0]
movdqu xmmword [rbp + 0xf8], xmm0
mov byte [rbp + 0xe8], 0
movzx edx, byte [rbp + 0xa0]
lea rcx, [rbp + 0xa8]
call fcn.1400b2a60
nop
jmp 0x14009da1e
movzx edx, byte [rbp + 0xa0]
lea rcx, [rbp + 0xa8]
call fcn.1400b2a60
nop
cmp word [0x1401eca78], 0
je 0x14009d9c6
call qword [sym.imp.MSVCP140.dll__Xtime_get_ticks]
mov rcx, rax
mov rdx, rax
sub rdx, qword [0x1401ec470]
movabs rax, 0x346dc5d63886594b
imul rdx
sar rdx, 0xb
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov qword [rsp + 0x30], rdx
mov qword [0x1401ec470], rcx
lea r9, [rsp + 0x30]
lea r8, [0x1401eca78]
lea rdx, [rbp + 0xb0]
call fcn.1400b3520
movups xmm0, xmmword [rbp + 0xb0]
movups xmmword [rsi], xmm0
movups xmm1, xmmword [rbp + 0xc0]
movups xmmword [rsi + 0x10], xmm1
movdqa xmm0, xmmword [0x1401c4af0]
movdqu xmmword [rbp + 0xc0], xmm0
mov byte [rbp + 0xb0], 0
lea rcx, [rbp + 0xb0]
call fcn.140010730
jmp 0x14009da1e
mov eax, dword [str.ymuv_]
mov dword [rsp + 0x30], eax
movzx eax, byte [0x1401c19a0]
mov byte [rsp + 0x30], Ordinal_79
xor byte [rsp + 0x31], 0x38
xor byte [rsp + 0x32], 0x39
xor byte [rsp + 0x33], 0x3a
xor al, 0x3b
mov byte [rsp + 0x34], al
xorps xmm0, xmm0
movups xmmword [rsi], xmm0
mov qword [rsi + 0x10], r13
mov qword [rsi + 0x18], r13
lea rax, [rsp + 0x30]
inc rbx
cmp byte [rax + rbx], 0
jne 0x14009da04
mov r8, rbx
lea rdx, [rsp + 0x30]
mov rcx, rsi
call fcn.140010900
nop
lea rcx, [rbp + 0xe8]
call fcn.140010730
nop
lea rcx, [rbp + 0x108]
call fcn.140010730
mov rax, rsi
mov rcx, qword [rbp + 0x128]
xor rcx, rsp
call fcn.14015bde0
lea r11, [rsp + 0x270]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret