Function at 0x140059a80
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 - 0x5f]
sub rsp, 0xc0
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
mov rax, qword [0x14011a090]
xor rax, rsp
mov qword [rbp - 1], rax
call qword [sym.imp.KERNEL32.dll_IsDebuggerPresent]
test eax, eax
jne 0x14005a037
xor ebx, ebx
mov qword [rbp - 0x21], rbx
mov qword [rbp - 0x11], rbx
mov qword [rbp - 9], reloc.WS2_32.dll_ntohs
mov esi, ebx
lea r15d, [rax + 4]
lea r12d, [rax + 0x1f]
movabs r13, 0x7fffffffffffffff
mov r14d, dword [reloc.WS2_32.dll_accept]
nop dword [rax]
call fcn.140085070
mov rdi, rax
test rax, rax
je 0x14005a037
movups xmm0, xmmword [0x1401056c0]
movups xmmword [rbp - 0x59], xmm0
movups xmm1, xmmword [0x1401056d0]
movups xmmword [rbp - 0x49], xmm1
movups xmm0, xmmword [0x1401056e0]
movups xmmword [rbp - 0x39], xmm0
movzx ecx, word [0x1401056f0]
mov word [rbp - 0x29], cx
mov ecx, ebx
cmp r14d, 2
jl 0x140059c84
movdqa xmm5, xmmword [0x140106030]
movdqa xmm4, xmmword [0x1401062b0]
movd xmm6, r15d
movdqa xmm7, xmmword [0x140106060]
movd xmm8, r12d
movdqa xmm0, xmmword [str.1111111111111111]
movdqa xmmword [rbp - 0x69], xmm0
lea rdx, [rbp - 0x55]
mov r8d, dword [rbp - 0x69]
movd xmm2, ecx
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
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
pand xmm2, xmmword [0x140106110]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx - 4]
pxor xmm2, xmm0
movd dword [rdx - 4], xmm2
lea eax, [rcx + 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
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
pand xmm2, xmmword [0x140106110]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx]
pxor xmm2, xmm0
movd dword [rdx], xmm2
add ecx, 8
lea rdx, [rdx + 8]
cmp ecx, 0x30
jl 0x140059b80
cmp ecx, 0x32
jge 0x140059cbe
movsxd rax, ecx
lea r8, [rbp - 0x59]
add r8, rax
nop
mov eax, 0x5397829d
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul edx, eax, 0x31
add dl, cl
xor byte [r8], dl
inc ecx
lea r8, [r8 + 1]
cmp ecx, 0x32
jl 0x140059c90
lea r8, [rbp - 0x59]
mov edx, 0x2712
mov rcx, rdi
call fcn.140087870
lea r8, [0x1400595e0]
mov edx, 0x4e2b
mov rcx, rdi
call fcn.140087870
lea r8, [rbp - 0x21]
mov edx, 0x2711
mov rcx, rdi
call fcn.140087870
mov edx, 0x40
lea r8d, [rdx - 0x3f]
mov rcx, rdi
call fcn.140087870
mov edx, 0x51
lea r8d, [rdx - 0x4f]
mov rcx, rdi
call fcn.140087870
mov edx, reloc.WS2_32.dll_listen
lea r8d, [rdx - 3]
mov rcx, rdi
call fcn.140087870
mov rcx, rdi
call fcn.140085130
test eax, eax
je 0x140059daf
mov rcx, rdi
call fcn.140085050
inc esi
call qword [sym.imp.MSVCP140.dll__Query_perf_frequency]
mov rdi, rax
call qword [sym.imp.MSVCP140.dll__Query_perf_counter]
cmp rdi, 0x989680
jne 0x140059d5b
imul rax, rax, 0x64
jmp 0x140059d79
cqo
idiv rdi
mov rcx, rax
imul rax, rdx, 0x3b9aca00
cqo
idiv rdi
imul rcx, rcx, 0x3b9aca00
add rax, rcx
movabs rcx, 0x7fffffff88ca6bfe
cmp rax, rcx
jg 0x140059d94
add rax, 0x77359400
mov qword [rbp - 0x69], rax
jmp 0x140059d98
mov qword [rbp - 0x69], r13
lea rcx, [rbp - 0x69]
call fcn.140079080
cmp esi, 3
jge 0x14005a037
jmp 0x140059b00
mov r9, qword [rbp - 0x11]
lea rax, [r9 - 1]
cmp rax, 0xfe
ja 0x14005a037
movups xmm0, xmmword [str.Pq_S]
movups xmmword [rbp - 0x59], xmm0
movsd xmm1, qword [0x140104488]
movsd qword [rbp - 0x49], xmm1
movzx eax, byte [0x140104490]
mov byte [rbp - 0x41], al
cmp r14d, 2
jl 0x140059f32
movdqa xmm5, xmmword [0x140106030]
movdqa xmm4, xmmword [0x1401062b0]
movd xmm6, r15d
movdqa xmm7, xmmword [0x140106060]
movd xmm8, r12d
movdqa xmm0, xmmword [str.1111111111111111]
movdqa xmmword [rbp - 0x69], xmm0
lea rcx, [rbp - 0x55]
mov edx, dword [rbp - 0x69]
nop word [rax + rax]
movd xmm2, ebx
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
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
pand xmm2, xmmword [0x140106110]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
pxor xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [rbx + 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
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
pand xmm2, xmmword [0x140106110]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
pxor xmm2, xmm0
movd dword [rcx], xmm2
add ebx, 8
lea rcx, [rcx + 8]
cmp ebx, 0x18
jl 0x140059e30
cmp ebx, 0x19
jge 0x140059f6e
movsxd rax, ebx
lea r8, [rbp - 0x59]
add r8, rax
nop dword [rax]
mov eax, 0x5397829d
imul ebx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, bl
xor byte [r8], cl
inc ebx
lea r8, [r8 + 1]
cmp ebx, 0x19
jl 0x140059f40
lea rcx, [rbp - 0x59]
mov rax, 0xffffffffffffffff
nop dword [rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x140059f80
lea rcx, [rbp - 0x21]
cmp qword [rbp - 9], 0x10
cmovae rcx, qword [rbp - 0x21]
cmp r9, rax
jne 0x14005a037
mov r8, r9
lea rdx, [rbp - 0x59]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x14005a037
mov rcx, rdi
call fcn.140085050
mov rdx, qword [rbp - 9]
cmp rdx, 0x10
jb 0x140059ff9
inc rdx
mov rcx, qword [rbp - 0x21]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140059ff4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, r12
jbe 0x140059ff4
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400e83e8
xor eax, eax
mov rcx, qword [rbp - 1]
xor rcx, rsp
call fcn.1400e7b30
lea r11, [rsp + 0xc0]
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]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.140059a70
int3