Function at 0x1400031b0
Capabilities:
Allocate or change rwx memory
Check for debugger via api
Check for outputdebugstring error
Check for software breakpoints
Check for time delay via gettickcount
Encode data using xor
Enumerate threads
Execute shellcode via indirect call
Get token privileges
Hide thread from debugger
Print debug messages
Terminate process

Disassembly:
mov rax, rsp
mov qword [rax + 0x18], rbx
push rbp
lea rbp, [rax - 0x478]
sub rsp, 0x570
movaps xmmword [rax - 0x18], xmm6
movaps xmmword [rax - 0x28], xmm7
mov rax, qword [0x1400b50c0]
xor rax, rsp
mov qword [rbp + 0x440], rax
call qword [sym.imp.KERNEL32.dll_IsDebuggerPresent]
test eax, eax
je 0x1400033a6
mov r10, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, [rsp + 0x40]
call fcn.140004c20
mov r9, rax
cmp byte [rax + 0x14], 0
je 0x14000337f
xor ebx, ebx
cmp dword [reloc.WS2_32.dll_accept], 2
jl 0x14000333e
movdqa xmm0, xmmword [str.3333333333333333]
mov rcx, rax
movdqa xmm5, xmmword [0x1400a3550]
movdqa xmm4, xmmword [0x1400a3600]
movdqa xmm6, xmmword [0x1400a3570]
movdqa xmm7, xmmword [0x1400a35d0]
movdqa xmmword [rsp + 0x30], xmm0
mov edx, dword [rsp + 0x30]
nop
movd xmm2, ebx
lea eax, [rbx + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 8]
paddd xmm2, xmm5
movd xmm3, eax
movdqa xmm1, xmm2
pshufd xmm3, xmm3, 0
punpckldq xmm1, xmm2
paddd xmm3, xmm5
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
add ebx, 8
pmuldq xmm0, xmm4
mov eax, ebx
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
pmulld xmm0, xmm6
psubd xmm2, xmm0
movd xmm0, edx
andps xmm2, xmm7
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [rcx - 8]
xorps xmm2, xmm0
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
movd dword [rcx - 8], xmm2
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
movd xmm0, edx
andps xmm3, xmm7
packuswb xmm3, xmm3
packuswb xmm3, xmm3
paddb xmm3, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm3, xmm0
movd dword [rcx - 4], xmm3
cmp ebx, 0x10
jl 0x140003250
cmp eax, 0x15
jge 0x14000337f
movsxd r8, ebx
add r8, r9
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x92492493
lea r8, [r8 + 1]
imul ebx
add edx, ebx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x38
movzx eax, bl
inc ebx
sub al, dl
add al, 0x33
xor byte [r8 - 1], al
cmp ebx, 0x15
jl 0x140003350
mov rdx, r9
mov rcx, r10
call fcn.140014c70
lea rdx, [0x140014e40]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
xor ebx, ebx
mov dword [rsp + 0x30], ebx
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov rcx, rax
lea rdx, [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_CheckRemoteDebuggerPresent]
cmp dword [rsp + 0x30], ebx
je 0x140003586
mov r10, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, [rsp + 0x40]
call fcn.140004c50
mov r9, rax
cmp byte [rax + 0x14], bl
je 0x14000355f
cmp dword [reloc.WS2_32.dll_accept], 2
jl 0x14000351e
movdqa xmm0, xmmword [str.3333333333333333]
mov rcx, rax
movdqa xmm5, xmmword [0x1400a3550]
movdqa xmm4, xmmword [0x1400a3600]
movdqa xmm6, xmmword [0x1400a3570]
movdqa xmm7, xmmword [0x1400a35d0]
movdqa xmmword [rsp + 0x30], xmm0
mov edx, dword [rsp + 0x30]
nop dword [rax]
movd xmm2, ebx
lea eax, [rbx + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 8]
paddd xmm2, xmm5
movd xmm3, eax
movdqa xmm1, xmm2
pshufd xmm3, xmm3, 0
punpckldq xmm1, xmm2
paddd xmm3, xmm5
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
add ebx, 8
pmuldq xmm0, xmm4
mov eax, ebx
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
pmulld xmm0, xmm6
psubd xmm2, xmm0
movd xmm0, edx
andps xmm2, xmm7
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [rcx - 8]
xorps xmm2, xmm0
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
movd dword [rcx - 8], xmm2
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
movd xmm0, edx
andps xmm3, xmm7
packuswb xmm3, xmm3
packuswb xmm3, xmm3
paddb xmm3, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm3, xmm0
movd dword [rcx - 4], xmm3
cmp ebx, 0x10
jl 0x140003430
cmp eax, 0x15
jge 0x14000355f
movsxd r8, ebx
add r8, r9
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x92492493
lea r8, [r8 + 1]
imul ebx
add edx, ebx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x38
movzx eax, bl
inc ebx
sub al, dl
add al, 0x33
xor byte [r8 - 1], al
cmp ebx, 0x15
jl 0x140003530
mov rdx, r9
mov rcx, r10
call fcn.140014c70
lea rdx, [0x140014e40]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
lea rcx, str.ntdll.dll
mov qword [rsp + 0x588], rdi
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov rcx, rax
lea rdx, str.NtQueryInformationProcess
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rdi, rax
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov r9d, Ordinal_50
mov qword [rsp + 0x20], rbx
mov rcx, rax
lea r8, [rsp + 0x40]
xor edx, edx
call rdi
test eax, eax
jne 0x1400037a6
mov rax, qword [rsp + 0x48]
cmp byte [rax + 2], 1
jne 0x1400037a6
mov r10, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, [rsp + 0x40]
call fcn.140004c80
mov r9, rax
cmp byte [rax + 0x14], bl
je 0x14000377f
cmp dword [reloc.WS2_32.dll_accept], 2
jl 0x14000373e
movdqa xmm0, xmmword [str.3333333333333333]
mov rcx, rax
movdqa xmm5, xmmword [0x1400a3550]
movdqa xmm4, xmmword [0x1400a3600]
movdqa xmm6, xmmword [0x1400a3570]
movdqa xmm7, xmmword [0x1400a35d0]
movdqa xmmword [rsp + 0x30], xmm0
mov edx, dword [rsp + 0x30]
nop dword [rax]
nop word [rax + rax]
movd xmm2, ebx
lea eax, [rbx + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 8]
paddd xmm2, xmm5
movd xmm3, eax
movdqa xmm1, xmm2
pshufd xmm3, xmm3, 0
punpckldq xmm1, xmm2
paddd xmm3, xmm5
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
add ebx, 8
pmuldq xmm0, xmm4
mov eax, ebx
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
pmulld xmm0, xmm6
psubd xmm2, xmm0
movd xmm0, edx
andps xmm2, xmm7
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [rcx - 8]
xorps xmm2, xmm0
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
movd dword [rcx - 8], xmm2
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
movd xmm0, edx
andps xmm3, xmm7
packuswb xmm3, xmm3
packuswb xmm3, xmm3
paddb xmm3, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm3, xmm0
movd dword [rcx - 4], xmm3
cmp ebx, 0x10
jl 0x140003650
cmp eax, 0x15
jge 0x14000377f
movsxd r8, ebx
add r8, r9
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x92492493
lea r8, [r8 + 1]
imul ebx
add edx, ebx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x38
movzx eax, bl
inc ebx
sub al, dl
add al, 0x33
xor byte [r8 - 1], al
cmp ebx, 0x15
jl 0x140003750
mov rdx, r9
mov rcx, r10
call fcn.140014c70
lea rdx, [0x140014e40]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
xor edx, edx
lea rcx, [rsp + 0x70]
mov r8d, 0x4d0
call sub.VCRUNTIME140.dll_memset
mov dword [rbp - 0x60], 0x100010
call qword [sym.imp.KERNEL32.dll_GetCurrentThread]
mov rcx, rax
lea rdx, [rsp + 0x70]
call qword [sym.imp.KERNEL32.dll_GetThreadContext]
test eax, eax
je 0x1400039b6
cmp qword [rbp - 0x48], rbx
jne 0x1400037f7
cmp qword [rbp - 0x40], rbx
jne 0x1400037f7
cmp qword [rbp - 0x38], rbx
jne 0x1400037f7
cmp qword [rbp - 0x30], rbx
je 0x1400039b6
mov r10, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, [rsp + 0x40]
call fcn.140004cb0
mov r9, rax
cmp byte [rax + 0x20], bl
je 0x14000398f
cmp dword [reloc.WS2_32.dll_accept], 2
jl 0x14000394e
movdqa xmm0, xmmword [str.3333333333333333]
mov rcx, rax
movdqa xmm5, xmmword [0x1400a3550]
movdqa xmm4, xmmword [0x1400a3600]
movdqa xmm6, xmmword [0x1400a3570]
movdqa xmm7, xmmword [0x1400a35d0]
movdqa xmmword [rsp + 0x30], xmm0
mov edx, dword [rsp + 0x30]
nop word [rax + rax]
movd xmm2, ebx
lea eax, [rbx + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 8]
paddd xmm2, xmm5
movd xmm3, eax
movdqa xmm1, xmm2
pshufd xmm3, xmm3, 0
punpckldq xmm1, xmm2
paddd xmm3, xmm5
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
add ebx, 8
pmuldq xmm0, xmm4
mov eax, ebx
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
pmulld xmm0, xmm6
psubd xmm2, xmm0
movd xmm0, edx
andps xmm2, xmm7
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [rcx - 8]
xorps xmm2, xmm0
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
movd dword [rcx - 8], xmm2
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
movd xmm0, edx
andps xmm3, xmm7
packuswb xmm3, xmm3
packuswb xmm3, xmm3
paddb xmm3, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm3, xmm0
movd dword [rcx - 4], xmm3
cmp ebx, 0x20
jl 0x140003860
cmp eax, 0x21
jge 0x14000398f
movsxd r8, ebx
add r8, r9
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x92492493
lea r8, [r8 + 1]
imul ebx
add edx, ebx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x38
movzx eax, bl
inc ebx
sub al, dl
add al, 0x33
xor byte [r8 - 1], al
cmp ebx, 0x21
jl 0x140003960
mov rdx, r9
mov rcx, r10
call fcn.140014c70
lea rdx, [0x140014e40]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
call fcn.140002a00
test al, al
je 0x140003b86
mov r10, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, [rsp + 0x40]
call fcn.140004ce0
mov r9, rax
cmp byte [rax + 0x1c], bl
je 0x140003b5f
cmp dword [reloc.WS2_32.dll_accept], 2
jl 0x140003b1e
movdqa xmm0, xmmword [str.3333333333333333]
mov rcx, rax
movdqa xmm5, xmmword [0x1400a3550]
movdqa xmm4, xmmword [0x1400a3600]
movdqa xmm6, xmmword [0x1400a3570]
movdqa xmm7, xmmword [0x1400a35d0]
movdqa xmmword [rsp + 0x30], xmm0
mov edx, dword [rsp + 0x30]
nop dword [rax]
nop word [rax + rax]
movd xmm2, ebx
lea eax, [rbx + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 8]
paddd xmm2, xmm5
movd xmm3, eax
movdqa xmm1, xmm2
pshufd xmm3, xmm3, 0
punpckldq xmm1, xmm2
paddd xmm3, xmm5
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
add ebx, 8
pmuldq xmm0, xmm4
mov eax, ebx
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
pmulld xmm0, xmm6
psubd xmm2, xmm0
movd xmm0, edx
andps xmm2, xmm7
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [rcx - 8]
xorps xmm2, xmm0
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
movd dword [rcx - 8], xmm2
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
movd xmm0, edx
andps xmm3, xmm7
packuswb xmm3, xmm3
packuswb xmm3, xmm3
paddb xmm3, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm3, xmm0
movd dword [rcx - 4], xmm3
cmp ebx, 0x18
jl 0x140003a30
cmp eax, 0x1d
jge 0x140003b5f
movsxd r8, ebx
add r8, r9
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x92492493
lea r8, [r8 + 1]
imul ebx
add edx, ebx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x38
movzx eax, bl
inc ebx
sub al, dl
add al, 0x33
xor byte [r8 - 1], al
cmp ebx, 0x1d
jl 0x140003b30
mov rdx, r9
mov rcx, r10
call fcn.140014c70
lea rdx, [0x140014e40]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
lea r8, [rsp + 0x30]
mov edx, 8
mov rcx, rax
call qword [sym.imp.ADVAPI32.dll_OpenProcessToken]
test eax, eax
je 0x140003bf6
mov rcx, qword [rsp + 0x30]
lea r8, [rsp + 0x40]
mov r9d, reloc.WS2_32.dll_recv
mov qword [rsp + 0x20], rbx
mov edx, 3
call qword [sym.imp.ADVAPI32.dll_GetTokenInformation]
test eax, eax
je 0x140003beb
mov r8, qword [rsp + 0x40]
mov edx, ebx
test r8d, r8d
je 0x140003beb
mov eax, edx
lea rcx, [rax + rax*2]
test byte [rsp + rcx*4 + 0x4c], 2
jne 0x140003dc6
inc edx
cmp edx, r8d
jb 0x140003bd3
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
call fcn.140002d60
test al, al
je 0x140003f86
mov r10, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, [rsp + 0x40]
call fcn.140004d40
mov r9, rax
cmp byte [rax + 0x1c], bl
je 0x140003d9f
cmp dword [reloc.WS2_32.dll_accept], 2
jl 0x140003d5e
movdqa xmm0, xmmword [str.3333333333333333]
mov rcx, rax
movdqa xmm5, xmmword [0x1400a3550]
movdqa xmm4, xmmword [0x1400a3600]
movdqa xmm6, xmmword [0x1400a3570]
movdqa xmm7, xmmword [0x1400a35d0]
movdqa xmmword [rsp + 0x30], xmm0
mov edx, dword [rsp + 0x30]
nop dword [rax]
nop word [rax + rax]
movd xmm2, ebx
lea eax, [rbx + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 8]
paddd xmm2, xmm5
movd xmm3, eax
movdqa xmm1, xmm2
pshufd xmm3, xmm3, 0
punpckldq xmm1, xmm2
paddd xmm3, xmm5
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
add ebx, 8
pmuldq xmm0, xmm4
mov eax, ebx
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
pmulld xmm0, xmm6
psubd xmm2, xmm0
movd xmm0, edx
andps xmm2, xmm7
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [rcx - 8]
xorps xmm2, xmm0
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
movd dword [rcx - 8], xmm2
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
movd xmm0, edx
andps xmm3, xmm7
packuswb xmm3, xmm3
packuswb xmm3, xmm3
paddb xmm3, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm3, xmm0
movd dword [rcx - 4], xmm3
cmp ebx, 0x18
jl 0x140003c70
cmp eax, 0x1d
jge 0x140003d9f
movsxd r8, ebx
add r8, r9
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x92492493
lea r8, [r8 + 1]
imul ebx
add edx, ebx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x38
movzx eax, bl
inc ebx
sub al, dl
add al, 0x33
xor byte [r8 - 1], al
cmp ebx, 0x1d
jl 0x140003d70
mov rdx, r9
mov rcx, r10
call fcn.140014c70
lea rdx, [0x140014e40]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov r10, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, [rsp + 0x40]
call fcn.140004d10
mov r9, rax
cmp byte [rax + 0x1c], bl
je 0x140003f5f
cmp dword [reloc.WS2_32.dll_accept], 2
jl 0x140003f1e
movdqa xmm0, xmmword [str.3333333333333333]
mov rcx, rax
movdqa xmm5, xmmword [0x1400a3550]
movdqa xmm4, xmmword [0x1400a3600]
movdqa xmm6, xmmword [0x1400a3570]
movdqa xmm7, xmmword [0x1400a35d0]
movdqa xmmword [rsp + 0x30], xmm0
mov edx, dword [rsp + 0x30]
movd xmm2, ebx
lea eax, [rbx + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 8]
paddd xmm2, xmm5
movd xmm3, eax
movdqa xmm1, xmm2
pshufd xmm3, xmm3, 0
punpckldq xmm1, xmm2
paddd xmm3, xmm5
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
add ebx, 8
pmuldq xmm0, xmm4
mov eax, ebx
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
pmulld xmm0, xmm6
psubd xmm2, xmm0
movd xmm0, edx
andps xmm2, xmm7
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [rcx - 8]
xorps xmm2, xmm0
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
movd dword [rcx - 8], xmm2
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
movd xmm0, edx
andps xmm3, xmm7
packuswb xmm3, xmm3
packuswb xmm3, xmm3
paddb xmm3, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm3, xmm0
movd dword [rcx - 4], xmm3
cmp ebx, 0x18
jl 0x140003e30
cmp eax, 0x1d
jge 0x140003f5f
movsxd r8, ebx
add r8, r9
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x92492493
lea r8, [r8 + 1]
imul ebx
add edx, ebx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x38
movzx eax, bl
inc ebx
sub al, dl
add al, 0x33
xor byte [r8 - 1], al
cmp ebx, 0x1d
jl 0x140003f30
mov rdx, r9
mov rcx, r10
call fcn.140014c70
lea rdx, [0x140014e40]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov edx, 0x1000
xor ecx, ecx
mov r8d, edx
mov r9d, 0x40
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov rdi, rax
test rax, rax
je 0x140003fe7
mov edx, 0xcc
mov r8d, 0x1000
mov rcx, rax
call sub.VCRUNTIME140.dll_memset
mov rcx, rbx
nop word [rax + rax]
cmp byte [rcx + rdi], 0xcc
jne 0x1400041c6
inc rcx
cmp rcx, 0x1000
jl 0x140003fc0
xor edx, edx
mov r8d, 0x8000
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_VirtualFree]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SetLastError]
lea rcx, [0x14009f419]
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
call qword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
je 0x140004396
mov r10, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, [rsp + 0x40]
call fcn.140004da0
mov r9, rax
cmp byte [rax + 0x23], bl
je 0x14000419f
cmp dword [reloc.WS2_32.dll_accept], 2
jl 0x14000415e
movdqa xmm0, xmmword [str.3333333333333333]
mov rcx, rax
movdqa xmm5, xmmword [0x1400a3550]
movdqa xmm4, xmmword [0x1400a3600]
movdqa xmm6, xmmword [0x1400a3570]
movdqa xmm7, xmmword [0x1400a35d0]
movdqa xmmword [rsp + 0x30], xmm0
mov edx, dword [rsp + 0x30]
nop dword [rax]
movd xmm2, ebx
lea eax, [rbx + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 8]
paddd xmm2, xmm5
movd xmm3, eax
movdqa xmm1, xmm2
pshufd xmm3, xmm3, 0
punpckldq xmm1, xmm2
paddd xmm3, xmm5
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
add ebx, 8
pmuldq xmm0, xmm4
mov eax, ebx
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
pmulld xmm0, xmm6
psubd xmm2, xmm0
movd xmm0, edx
andps xmm2, xmm7
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [rcx - 8]
xorps xmm2, xmm0
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
movd dword [rcx - 8], xmm2
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
movd xmm0, edx
andps xmm3, xmm7
packuswb xmm3, xmm3
packuswb xmm3, xmm3
paddb xmm3, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm3, xmm0
movd dword [rcx - 4], xmm3
cmp ebx, 0x20
jl 0x140004070
cmp eax, 0x24
jge 0x14000419f
movsxd r8, ebx
add r8, r9
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x92492493
lea r8, [r8 + 1]
imul ebx
add edx, ebx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x38
movzx eax, bl
inc ebx
sub al, dl
add al, 0x33
xor byte [r8 - 1], al
cmp ebx, 0x24
jl 0x140004170
mov rdx, r9
mov rcx, r10
call fcn.140014c70
lea rdx, [0x140014e40]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
xor edx, edx
mov r8d, 0x8000
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_VirtualFree]
mov r10, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, [rsp + 0x40]
call fcn.140004d70
mov r9, rax
cmp byte [rax + 0x20], bl
je 0x14000436f
cmp dword [reloc.WS2_32.dll_accept], 2
jl 0x14000432e
movdqa xmm0, xmmword [str.3333333333333333]
mov rcx, rax
movdqa xmm5, xmmword [0x1400a3550]
movdqa xmm4, xmmword [0x1400a3600]
movdqa xmm6, xmmword [0x1400a3570]
movdqa xmm7, xmmword [0x1400a35d0]
movdqa xmmword [rsp + 0x30], xmm0
mov edx, dword [rsp + 0x30]
nop word [rax + rax]
movd xmm2, ebx
lea eax, [rbx + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 8]
paddd xmm2, xmm5
movd xmm3, eax
movdqa xmm1, xmm2
pshufd xmm3, xmm3, 0
punpckldq xmm1, xmm2
paddd xmm3, xmm5
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
add ebx, 8
pmuldq xmm0, xmm4
mov eax, ebx
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
pmulld xmm0, xmm6
psubd xmm2, xmm0
movd xmm0, edx
andps xmm2, xmm7
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [rcx - 8]
xorps xmm2, xmm0
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
movd dword [rcx - 8], xmm2
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
movd xmm0, edx
andps xmm3, xmm7
packuswb xmm3, xmm3
packuswb xmm3, xmm3
paddb xmm3, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm3, xmm0
movd dword [rcx - 4], xmm3
cmp ebx, 0x20
jl 0x140004240
cmp eax, 0x21
jge 0x14000436f
movsxd r8, ebx
add r8, r9
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x92492493
lea r8, [r8 + 1]
imul ebx
add edx, ebx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x38
movzx eax, bl
inc ebx
sub al, dl
add al, 0x33
xor byte [r8 - 1], al
cmp ebx, 0x21
jl 0x140004340
mov rdx, r9
mov rcx, r10
call fcn.140014c70
lea rdx, [0x140014e40]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
xor edx, edx
mov qword [rsp + 0x580], rsi
mov ecx, 4
call qword [sym.imp.KERNEL32.dll_CreateToolhelp32Snapshot]
mov rsi, rax
cmp rax, 0xffffffffffffffff
je 0x14000445d
lea rdx, [rsp + 0x40]
mov dword [rsp + 0x40], Ordinal_33
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_Thread32First]
test eax, eax
je 0x140004454
call qword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
cmp dword [rsp + 0x4c], eax
jne 0x140004442
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov r8d, dword [rsp + 0x48]
cmp r8d, eax
je 0x140004442
xor edx, edx
mov ecx, reloc.WLDAP32.dll_Ordinal_32
call qword [sym.imp.KERNEL32.dll_OpenThread]
mov rdi, rax
test rax, rax
je 0x140004442
lea rcx, str.ntdll.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov rcx, rax
lea rdx, str.NtSetInformationThread
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x140004439
xor r9d, r9d
xor r8d, r8d
mov edx, reloc.WS2_32.dll_recvfrom
mov rcx, rdi
call rax
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rdx, [rsp + 0x40]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_Thread32Next]
test eax, eax
jne 0x1400043d6
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov rsi, qword [rsp + 0x580]
mov edi, eax
mov dword [rsp + 0x30], ebx
mov ecx, dword [rsp + 0x30]
nop word [rax + rax]
mov ecx, dword [rsp + 0x30]
inc ecx
mov dword [rsp + 0x30], ecx
mov ecx, dword [rsp + 0x30]
cmp ecx, 0x186a0
jl 0x140004480
call qword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, edi
cmp eax, 0x32
jbe 0x140004658
mov r10, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, [rsp + 0x40]
call fcn.140004dd0
mov rcx, rax
cmp byte [rax + 0x1f], bl
je 0x140004631
cmp dword [reloc.WS2_32.dll_accept], 2
jl 0x1400045fb
movdqa xmm0, xmmword [str.3333333333333333]
mov rdx, rax
movdqa xmm5, xmmword [0x1400a3550]
movdqa xmm4, xmmword [0x1400a3600]
movdqa xmm6, xmmword [0x1400a3570]
movdqa xmm7, xmmword [0x1400a35d0]
movdqa xmmword [rsp + 0x30], xmm0
mov r8d, dword [rsp + 0x30]
nop word [rax + rax]
movd xmm2, ebx
lea eax, [rbx + 4]
pshufd xmm2, xmm2, 0
lea rdx, [rdx + 8]
paddd xmm2, xmm5
movd xmm3, eax
movdqa xmm1, xmm2
pshufd xmm3, xmm3, 0
punpckldq xmm1, xmm2
paddd xmm3, xmm5
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
add ebx, 8
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
pmulld xmm0, xmm6
psubd xmm2, xmm0
movd xmm0, r8d
andps xmm2, xmm7
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [rdx - 8]
xorps xmm2, xmm0
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
movd dword [rdx - 8], xmm2
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
movd xmm0, r8d
andps xmm3, xmm7
packuswb xmm3, xmm3
packuswb xmm3, xmm3
paddb xmm3, xmm0
movd xmm0, dword [rdx - 4]
xorps xmm3, xmm0
movd dword [rdx - 4], xmm3
cmp ebx, 0x20
jl 0x140004510
jmp 0x140004631
mov r9, rcx
nop
mov eax, 0x92492493
lea r9, [r9 + 1]
imul ebx
add edx, ebx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul r8d, eax, 0x38
movzx eax, bl
inc ebx
sub al, r8b
add al, 0x33
xor byte [r9 - 1], al
cmp ebx, 0x20
jl 0x140004600
mov rdx, rcx
mov rcx, r10
call fcn.140014c70
lea rdx, [0x140014e40]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov rax, qword gs:[0x58]
mov edx, reloc.WS2_32.dll_sendto
mov rcx, qword [rax]
cmp dword [rdx + rcx], ebx
je 0x140004836
mov r10, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, [rsp + 0x40]
call fcn.140004df0
mov r9, rax
cmp byte [rax + 0x16], bl
je 0x14000480f
cmp dword [reloc.WS2_32.dll_accept], 2
jl 0x1400047ce
movdqa xmm0, xmmword [str.3333333333333333]
mov rcx, rax
movdqa xmm5, xmmword [0x1400a3550]
movdqa xmm4, xmmword [0x1400a3600]
movdqa xmm6, xmmword [0x1400a3570]
movdqa xmm7, xmmword [0x1400a35d0]
movdqa xmmword [rsp + 0x30], xmm0
mov edx, dword [rsp + 0x30]
nop dword [rax]
nop word [rax + rax]
movd xmm2, ebx
lea eax, [rbx + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 8]
paddd xmm2, xmm5
movd xmm3, eax
movdqa xmm1, xmm2
pshufd xmm3, xmm3, 0
punpckldq xmm1, xmm2
paddd xmm3, xmm5
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
add ebx, 8
pmuldq xmm0, xmm4
mov eax, ebx
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
pmulld xmm0, xmm6
psubd xmm2, xmm0
movd xmm0, edx
andps xmm2, xmm7
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [rcx - 8]
xorps xmm2, xmm0
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
movd dword [rcx - 8], xmm2
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
movd xmm0, edx
andps xmm3, xmm7
packuswb xmm3, xmm3
packuswb xmm3, xmm3
paddb xmm3, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm3, xmm0
movd dword [rcx - 4], xmm3
cmp ebx, 0x10
jl 0x1400046e0
cmp eax, 0x17
jge 0x14000480f
movsxd r8, ebx
add r8, r9
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x92492493
lea r8, [r8 + 1]
imul ebx
add edx, ebx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x38
movzx eax, bl
inc ebx
sub al, dl
add al, 0x33
xor byte [r8 - 1], al
cmp ebx, 0x17
jl 0x1400047e0
mov rdx, r9
mov rcx, r10
call fcn.140014c70
lea rdx, [0x140014e40]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
xor r9d, r9d
xor r8d, r8d
mov rcx, rax
mov edx, 1
call qword [sym.imp.KERNEL32.dll_HeapSetInformation]
test eax, eax
jne 0x140004a16
mov r10, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, [rsp + 0x40]
call fcn.140004e20
mov r9, rax
cmp byte [rax + 0x1e], bl
je 0x1400049ef
cmp dword [reloc.WS2_32.dll_accept], 2
jl 0x1400049ae
movdqa xmm0, xmmword [str.3333333333333333]
mov rcx, rax
movdqa xmm5, xmmword [0x1400a3550]
movdqa xmm4, xmmword [0x1400a3600]
movdqa xmm6, xmmword [0x1400a3570]
movdqa xmm7, xmmword [0x1400a35d0]
movdqa xmmword [rsp + 0x30], xmm0
mov edx, dword [rsp + 0x30]
nop word [rax + rax]
movd xmm2, ebx
lea eax, [rbx + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 8]
paddd xmm2, xmm5
movd xmm3, eax
movdqa xmm1, xmm2
pshufd xmm3, xmm3, 0
punpckldq xmm1, xmm2
paddd xmm3, xmm5
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
add ebx, 8
pmuldq xmm0, xmm4
mov eax, ebx
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
pmulld xmm0, xmm6
psubd xmm2, xmm0
movd xmm0, edx
andps xmm2, xmm7
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [rcx - 8]
xorps xmm2, xmm0
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
movd dword [rcx - 8], xmm2
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
movd xmm0, edx
andps xmm3, xmm7
packuswb xmm3, xmm3
packuswb xmm3, xmm3
paddb xmm3, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm3, xmm0
movd dword [rcx - 4], xmm3
cmp ebx, 0x18
jl 0x1400048c0
cmp eax, 0x1f
jge 0x1400049ef
movsxd r8, ebx
add r8, r9
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x92492493
lea r8, [r8 + 1]
imul ebx
add edx, ebx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x38
movzx eax, bl
inc ebx
sub al, dl
add al, 0x33
xor byte [r8 - 1], al
cmp ebx, 0x1f
jl 0x1400049c0
mov rdx, r9
mov rcx, r10
call fcn.140014c70
lea rdx, [0x140014e40]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov edx, 0x1000
xor ecx, ecx
mov r9d, 1
mov r8d, 0x3000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
test rax, rax
jne 0x140004be8
mov r10, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, [rsp + 0x40]
call fcn.140004e60
mov rcx, rax
cmp byte [rax + 0x1f], bl
je 0x140004bc1
cmp dword [reloc.WS2_32.dll_accept], 2
jl 0x140004b8b
movdqa xmm0, xmmword [str.3333333333333333]
mov rdx, rax
movdqa xmm5, xmmword [0x1400a3550]
movdqa xmm4, xmmword [0x1400a3600]
movdqa xmm6, xmmword [0x1400a3570]
movdqa xmm7, xmmword [0x1400a35d0]
movdqa xmmword [rsp + 0x30], xmm0
mov r8d, dword [rsp + 0x30]
nop dword [rax + rax]
movd xmm2, ebx
lea eax, [rbx + 4]
pshufd xmm2, xmm2, 0
lea rdx, [rdx + 8]
paddd xmm2, xmm5
movd xmm3, eax
movdqa xmm1, xmm2
pshufd xmm3, xmm3, 0
punpckldq xmm1, xmm2
paddd xmm3, xmm5
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
add ebx, 8
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
pmulld xmm0, xmm6
psubd xmm2, xmm0
movd xmm0, r8d
andps xmm2, xmm7
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [rdx - 8]
xorps xmm2, xmm0
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
movd dword [rdx - 8], xmm2
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
movd xmm0, r8d
andps xmm3, xmm7
packuswb xmm3, xmm3
packuswb xmm3, xmm3
paddb xmm3, xmm0
movd xmm0, dword [rdx - 4]
xorps xmm3, xmm0
movd dword [rdx - 4], xmm3
cmp ebx, 0x20
jl 0x140004aa0
jmp 0x140004bc1
mov r9, rcx
nop
mov eax, 0x92492493
lea r9, [r9 + 1]
imul ebx
add edx, ebx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul r8d, eax, 0x38
movzx eax, bl
inc ebx
sub al, r8b
add al, 0x33
xor byte [r9 - 1], al
cmp ebx, 0x20
jl 0x140004b90
mov rdx, rcx
mov rcx, r10
call fcn.140014c70
lea rdx, [0x140014e40]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov rdi, qword [rsp + 0x588]
mov rcx, qword [rbp + 0x440]
xor rcx, rsp
call fcn.14008aab0
lea r11, [rsp + 0x570]
mov rbx, qword [r11 + 0x20]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
mov rsp, r11
pop rbp
ret