Function at 0x14000e9e0
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x118]
sub rsp, 0x218
movaps xmmword [rsp + 0x200], xmm6
mov rax, qword [0x1402dac00]
xor rax, rsp
mov qword [rbp + 0xf0], rax
mov rbx, r9
mov qword [rbp - 0x78], rbx
mov rdi, r8
mov qword [rbp - 0x70], r8
mov qword [rbp - 0x80], rdx
mov r13, rcx
mov qword [rbp + 0x80], rcx
mov qword [rbp + 0xb0], r8
mov qword [rbp + 0xb8], rbx
mov esi, 1
mov dword [rsp + 0x48], esi
mov rdx, r9
mov rcx, r8
call fcn.14000ce80
xorps xmm0, xmm0
movups xmmword [r13], xmm0
xor r14d, r14d
mov qword [r13], r14
mov qword [r13 + 8], r14
mov ecx, 0x50
call fcn.1401ebf78
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rax + 0x10], rax
mov word [rax + 0x18], 0x101
mov qword [r13], rax
mov dword [rsp + 0x48], esi
mov rcx, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x14000ea96
mov rcx, qword [rbx]
xor r9d, r9d
mov r8d, 6
lea rdx, [rsp + 0x40]
call fcn.1401224c0
test eax, eax
je 0x14000eac2
xor edx, edx
mov rcx, qword [rsp + 0x40]
call fcn.14011f870
nop
mov rcx, rdi
jmp 0x14000f2d4
movups xmm0, xmmword [0x14029d0b0]
movups xmmword [rbp - 0x48], xmm0
movups xmm1, xmmword [0x14029d0c0]
movups xmmword [rbp - 0x38], xmm1
movups xmm0, xmmword [0x14029d0d0]
movups xmmword [rbp - 0x28], xmm0
movsd xmm0, qword [0x14029d0e0]
movsd qword [rbp - 0x18], xmm0
mov eax, dword [0x14029d0e8]
mov dword [rbp - 0x10], eax
movzx eax, word [0x14029d0ec]
mov word [rbp - 0xc], ax
mov r8d, r14d
cmp dword [reloc.WS2_32.dll_accept], 2
jl 0x14000ec37
movdqa xmm4, xmmword [0x1402abae0]
movdqa xmm3, xmmword [0x1402abb70]
movdqa xmm5, xmmword [str.7777]
movdqa xmm0, xmmword [0x1402abba0]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp - 0x44]
movdqa xmm6, xmmword [0x1402abb50]
mov edx, dword [rsp + 0x50]
nop word [rax + rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm4
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm3
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
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 xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm4
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm3
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
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, 0x38
jl 0x14000eb50
cmp r8d, 0x3e
jge 0x14000ec70
movsxd rax, r8d
lea r9, [rbp - 0x48]
add r9, rax
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x37
movzx eax, r8b
sub al, cl
add al, 0x34
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x3e
jl 0x14000ec41
mov qword [rsp + 0x30], r14
lea rax, [rsp + 0x50]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r14
mov r9d, 0x80
mov r8d, 0xffffffff
lea rdx, [rbp - 0x48]
mov rdi, qword [rsp + 0x40]
mov qword [rsp + 0x40], rdi
mov rcx, rdi
call fcn.1400df630
test eax, eax
je 0x14000ecb4
xor edx, edx
mov rcx, rdi
call fcn.14011f870
mov rdi, qword [rsp + 0x50]
mov rcx, rdi
call fcn.14008c660
cmp eax, 0x64
jne 0x14000f2bb
mov r12d, 2
mov r15d, 0x202
lea rbx, [0x140298278]
test rdi, rdi
jne 0x14000ed02
mov rcx, rbx
movzx edx, word [rcx + 0x14]
movzx eax, dx
and ax, r15w
cmp ax, r15w
jne 0x14000ed4b
cmp byte [rcx + 0x16], 1
jne 0x14000ed4b
mov rsi, qword [rcx + 8]
jmp 0x14000ed5f
mov rax, qword [rdi]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x14000ed14
call qword [0x1402dc860]
mov rcx, qword [rdi + 0xa0]
test rcx, rcx
je 0x14000ed2a
cmp r14w, word [rdi + 0xc0]
jb 0x14000ed41
mov rcx, qword [rdi]
mov dword [rcx + 0x50], Ordinal_30
mov edx, Ordinal_26
call fcn.14005c280
mov rcx, rbx
test rcx, rcx
jne 0x14000ece5
mov rsi, r14
jmp 0x14000ed5f
test dl, 1
je 0x14000ed55
mov rsi, r14
jmp 0x14000ed5f
mov dl, 1
call fcn.1400856f0
mov rsi, rax
test rdi, rdi
je 0x14000ed98
mov edx, dword [rdi + 0x34]
mov rcx, qword [rdi]
cmp byte [rcx + 0x67], 0
jne 0x14000ed79
test edx, edx
jne 0x14000ed79
mov eax, r14d
jmp 0x14000ed7e
call fcn.140058f40
mov dword [rdi + 0x34], eax
mov rax, qword [rdi]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x14000ed93
call qword [0x1402dc870]
test rdi, rdi
jne 0x14000edb8
mov rcx, rbx
movzx edx, word [rcx + 0x14]
movzx eax, dx
and ax, r15w
cmp ax, r15w
jne 0x14000ee0b
cmp byte [rcx + 0x16], 1
jne 0x14000ee0b
mov r15, qword [rcx + 8]
jmp 0x14000ee1f
mov rax, qword [rdi]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x14000edca
call qword [0x1402dc860]
mov rcx, qword [rdi + 0xa0]
test rcx, rcx
je 0x14000edea
mov eax, 1
cmp ax, word [rdi + 0xc0]
jae 0x14000edea
add rcx, 0x38
jmp 0x14000ee01
mov rcx, qword [rdi]
mov dword [rcx + 0x50], Ordinal_30
mov edx, Ordinal_26
call fcn.14005c280
mov rcx, rbx
test rcx, rcx
jne 0x14000ed9b
mov r15, r14
jmp 0x14000ee1f
test dl, 1
je 0x14000ee15
mov r15, r14
jmp 0x14000ee1f
mov dl, 1
call fcn.1400856f0
mov r15, rax
test rdi, rdi
je 0x14000ee9a
mov edx, dword [rdi + 0x34]
mov rcx, qword [rdi]
cmp byte [rcx + 0x67], 0
jne 0x14000ee39
test edx, edx
jne 0x14000ee39
mov eax, r14d
jmp 0x14000ee3e
call fcn.140058f40
mov dword [rdi + 0x34], eax
mov rax, qword [rdi]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x14000ee53
call qword [0x1402dc870]
test rdi, rdi
je 0x14000ee9a
mov rax, qword [rdi]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x14000ee6a
call qword [0x1402dc860]
mov rcx, qword [rdi + 0xa0]
test rcx, rcx
je 0x14000ee86
cmp r12w, word [rdi + 0xc0]
jae 0x14000ee86
add rcx, 0x70
jmp 0x14000ee9d
mov rcx, qword [rdi]
mov dword [rcx + 0x50], Ordinal_30
mov edx, Ordinal_26
call fcn.14005c280
mov rcx, rbx
call fcn.14008b960
mov r12, rax
test rdi, rdi
je 0x14000ef24
mov edx, dword [rdi + 0x34]
mov rcx, qword [rdi]
cmp byte [rcx + 0x67], 0
jne 0x14000eebf
test edx, edx
jne 0x14000eebf
mov eax, r14d
jmp 0x14000eec4
call fcn.140058f40
mov dword [rdi + 0x34], eax
mov rax, qword [rdi]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x14000eed9
call qword [0x1402dc870]
test rdi, rdi
je 0x14000ef24
mov rax, qword [rdi]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x14000eef0
call qword [0x1402dc860]
mov rcx, qword [rdi + 0xa0]
test rcx, rcx
je 0x14000ef10
mov eax, 2
cmp ax, word [rdi + 0xc0]
jae 0x14000ef10
add rcx, 0x70
jmp 0x14000ef27
mov rcx, qword [rdi]
mov dword [rcx + 0x50], Ordinal_30
mov edx, Ordinal_26
call fcn.14005c280
mov rcx, rbx
movzx eax, word [rcx + 0x14]
test al, 2
je 0x14000ef3a
cmp byte [rcx + 0x16], 1
jne 0x14000ef3a
mov ebx, dword [rcx + 0x10]
jmp 0x14000ef5e
test al, 0x10
je 0x14000ef4c
mov ebx, dword [rcx + 0x10]
bt ax, 0xa
jae 0x14000ef5e
add ebx, dword [rcx]
jmp 0x14000ef5e
test al, 1
je 0x14000ef55
mov ebx, r14d
jmp 0x14000ef5e
mov dl, 1
call fcn.140085dc0
mov ebx, eax
test rdi, rdi
je 0x14000ef92
mov edx, dword [rdi + 0x34]
mov rcx, qword [rdi]
cmp byte [rcx + 0x67], 0
jne 0x14000ef78
test edx, edx
jne 0x14000ef78
mov eax, r14d
jmp 0x14000ef7d
call fcn.140058f40
mov dword [rdi + 0x34], eax
mov rax, qword [rdi]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x14000ef92
call qword [0x1402dc870]
xorps xmm0, xmm0
xor eax, eax
movsxd r14, ebx
movdqu xmmword [rbp + 0xc0], xmm0
mov qword [rbp + 0xd0], rax
test ebx, ebx
je 0x14000f02b
movabs rax, 0x7fffffffffffffff
cmp r14, rax
ja 0x14000f322
cmp r14, 0x1000
jb 0x14000eff5
lea rcx, [r14 + 0x27]
cmp rcx, r14
jbe 0x14000f31c
call fcn.1401ebf78
mov rcx, rax
test rax, rax
je 0x14000f316
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x14000effd
mov rcx, r14
call fcn.1401ebf78
mov qword [rbp + 0xc0], rax
mov qword [rbp + 0xc8], rax
lea rbx, [rax + r14]
mov qword [rbp + 0xd0], rbx
mov r8, r14
mov rdx, r12
mov rcx, rax
call fcn.14023fcb0
mov qword [rbp + 0xc8], rbx
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0xd8], xmm0
mov qword [rbp + 0xe8], rax
mov r8, qword [rbp - 0x80]
lea rdx, [rbp + 0xc0]
lea rcx, [rbp + 0xd8]
call fcn.14000e800
nop
mov rax, 0xffffffffffffffff
nop dword [rax]
inc rax
cmp byte [rsi + rax], 0
jne 0x14000f060
xor r14d, r14d
test rax, rax
je 0x14000f212
xorps xmm0, xmm0
movups xmmword [rsp + 0x60], xmm0
mov qword [rsp + 0x70], r14
mov qword [rsp + 0x78], r14
mov r8, 0xffffffffffffffff
nop
inc r8
cmp byte [r15 + r8], r14b
jne 0x14000f090
mov rdx, r15
lea rcx, [rsp + 0x60]
call fcn.14003c280
nop
xorps xmm0, xmm0
movups xmmword [rbp], xmm0
mov qword [rbp + 0x10], r14
mov qword [rbp + 0x18], r14
mov r8d, 8
lea rdx, str.username
lea rcx, [rbp]
call fcn.14003c280
movups xmm1, xmmword [rsp + 0x60]
movups xmmword [rbp + 0x20], xmm1
movups xmm0, xmmword [rsp + 0x70]
movups xmmword [rbp + 0x30], xmm0
mov qword [rsp + 0x70], r14
mov qword [rsp + 0x78], reloc.WS2_32.dll_ntohs
mov byte [rsp + 0x60], 0
mov r8, qword [rbp + 0xe0]
mov rdx, qword [rbp + 0xd8]
lea rcx, [rbp - 0x48]
call fcn.14003a5e0
mov rbx, rax
xorps xmm0, xmm0
movups xmmword [rbp + 0x40], xmm0
mov qword [rbp + 0x50], r14
mov qword [rbp + 0x58], r14
mov r8d, 8
lea rdx, str.password
lea rcx, [rbp + 0x40]
call fcn.14003c280
xorps xmm0, xmm0
movups xmmword [rbp + 0x60], xmm0
mov qword [rbp + 0x70], r14
mov qword [rbp + 0x78], r14
movups xmm0, xmmword [rbx]
movups xmmword [rbp + 0x60], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rbp + 0x70], xmm1
mov qword [rbx + 0x10], r14
mov qword [rbx + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rbx], 0
lea rax, [rbp]
mov qword [rsp + 0x50], rax
lea rax, [rbp + 0x80]
mov qword [rsp + 0x58], rax
movaps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rbp + 0x90], xmm0
xorps xmm1, xmm1
movups xmmword [rbp - 0x68], xmm1
mov qword [rbp - 0x58], r14
mov qword [rbp - 0x50], r14
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rsi + r8], 0
jne 0x14000f195
mov rdx, rsi
lea rcx, [rbp - 0x68]
call fcn.14003c280
nop
lea r8, [rbp - 0x68]
lea rdx, [rbp + 0xa0]
mov rcx, r13
call fcn.14003afc0
mov rcx, qword [rax]
add rcx, 0x40
lea rdx, [rbp + 0x90]
call fcn.14002f770
nop
lea rcx, [rbp - 0x68]
call fcn.140036800
nop
lea r9, [0x14000f360]
mov r12d, 2
mov r8d, r12d
mov edx, 0x40
lea rcx, [rbp]
call fcn.1401ebfb4
nop
lea rcx, [rbp - 0x48]
call fcn.140036800
nop
lea rcx, [rsp + 0x60]
call fcn.140036800
jmp 0x14000f218
mov r12d, 2
mov rcx, qword [rbp + 0xd8]
test rcx, rcx
je 0x14000f26a
mov rdx, qword [rbp + 0xe8]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000f253
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000f310
call fcn.1401ebf60
xorps xmm0, xmm0
movdqu xmmword [rbp + 0xd8], xmm0
mov qword [rbp + 0xe8], r14
mov rcx, qword [rbp + 0xc0]
test rcx, rcx
je 0x14000f2a6
mov rdx, qword [rbp + 0xd0]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000f2a1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000f316
call fcn.1401ebf60
mov rcx, rdi
call fcn.14008c660
cmp eax, 0x64
je 0x14000ecd0
mov rbx, qword [rbp - 0x78]
mov rcx, rdi
call fcn.14008b690
xor edx, edx
mov rcx, qword [rsp + 0x40]
call fcn.14011f870
nop
mov rcx, qword [rbp - 0x70]
call fcn.140036800
nop
mov rcx, rbx
call fcn.140036800
mov rax, r13
mov rcx, qword [rbp + 0xf0]
xor rcx, rsp
call fcn.1401ebf40
movaps xmm6, xmmword [rsp + 0x200]
add rsp, 0x218
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.1402016f8
nop
call fcn.1402016f8
int3
call fcn.140001ef0
int3
call fcn.140036350
int3