Function at 0x140046f40
Capabilities:
Check for time delay via gettickcount

Disassembly:
sub rsp, 0x28
mov eax, dword [reloc.WSOCK32.dll_inet_addr]
add eax, 2
movsxd rcx, eax
imul rcx, rcx, 0xc8
call fcn.1400c0494
mov qword [0x140125ae0], rax
mov rdx, rax
test rax, rax
jne 0x140046f70
add rsp, 0x28
ret
mov rax, qword [0x14011f188]
lea rcx, [rdx + 0x80]
inc dword [0x140125b08]
lea r9, [0x140004a70]
mov qword [rsp + 0x30], rbx
mov r8d, 0x4ef6d80
mov qword [rsp + 0x38], rbp
xor ebp, ebp
movups xmm0, xmmword [rax]
mov qword [0x14011f188], rdx
mov qword [rsp + 0x40], rsi
movups xmmword [rdx], xmm0
mov qword [rsp + 0x20], rdi
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rdx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rdx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rdx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rdx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rdx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rdx + 0x60], xmm0
movups xmm0, xmmword [rax + 0x70]
movups xmmword [rcx - 0x10], xmm0
movups xmm1, xmmword [rax + 0x80]
movups xmmword [rcx], xmm1
movups xmm0, xmmword [rax + 0x90]
movups xmmword [rcx + 0x10], xmm0
movups xmm1, xmmword [rax + 0xa0]
movups xmmword [rcx + 0x20], xmm1
movups xmm0, xmmword [rax + 0xb0]
movups xmmword [rcx + 0x30], xmm0
mov rax, qword [rax + 0xc0]
mov qword [rcx + 0x40], rax
mov rcx, qword [0x140125b28]
mov qword [rdx + 0x80], rbp
lea edx, [rbp + 0xe]
call qword [sym.imp.USER32.dll_SetTimer]
cmp qword [0x140127620], rbp
jne 0x14004704a
lea esi, [rbp + 1]
jmp 0x14004711c
mov rax, qword [0x14011f188]
mov byte [rax + 0x7f], bpl
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov rcx, qword [0x14011f188]
mov dword [rcx + 0x74], eax
mov dword [rcx + 0x70], WSAAsyncSelect
mov byte [0x140127dbd], 1
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov rcx, qword [0x140121a58]
cmp rcx, qword [0x140121a60]
mov dword [0x140127dd8], eax
jne 0x14004709b
call fcn.140007ba8
mov rcx, qword [0x140121a58]
cmp rcx, qword [0x140121a50]
jb 0x1400470b5
mov rax, qword [0x140127cd8]
mov qword [rcx], rax
mov rcx, qword [0x140121a58]
add rcx, 0x18
lea rax, [0x1400fdf28]
mov qword [0x140121a58], rcx
xor r9d, r9d
xor r8d, r8d
mov qword [rcx], rbp
mov qword [rcx + 8], rax
lea edx, [r9 + 1]
mov dword [rcx + 0x10], ebp
mov rcx, qword [0x140127620]
call fcn.14005a100
mov rcx, qword [0x140121a58]
mov esi, eax
sub rcx, 0x18
cmp rcx, qword [0x140121a50]
mov qword [0x140121a58], rcx
jb 0x140047115
mov rcx, qword [rcx]
mov qword [0x140121a78], rcx
mov qword [0x140127cd8], rcx
mov byte [0x140127dbd], bpl
mov rbx, qword [0x14011f188]
dec dword [0x140125b08]
mov rdi, qword [rbx + 0x58]
test rdi, rdi
je 0x140047168
cmp dword [rdi + 0x10], 5
jne 0x140047141
mov rcx, qword [rdi]
mov rax, qword [rcx]
call qword [rax + reloc.WSOCK32.dll_recv]
mov rcx, qword [rdi + 0x20]
test rcx, rcx
je 0x14004714f
call fcn.1400c0480
mov rcx, qword [rbx + 0x58]
mov edx, reloc.WSOCK32.dll_getservbyport
call fcn.1400b9c5c
mov qword [rbx + 0x58], rbp
mov rbx, qword [0x14011f188]
mov rdi, qword [rsp + 0x20]
mov eax, esi
mov rsi, qword [rsp + 0x40]
mov rbp, qword [rsp + 0x38]
mov dword [rbx + 0x68], 0x80000000
mov rbx, qword [rsp + 0x30]
add rsp, 0x28
ret