Function at 0x54ee50
Capabilities:
Get socket status

Disassembly:
mov qword [rsp + 8], rcx
mov rax, rsp
sub rsp, 0x6a8
mov qword [rax - 8], rbp
mov qword [rax - 0x10], rsi
mov qword [rax - 0x18], rdi
xor edi, edi
test rcx, rcx
mov qword [rax - 0x28], r13
mov qword [rax - 0x38], r15
mov esi, edx
mov rbp, rcx
mov dword [rsp + 0x30], edi
mov dword [rsp + 0x34], edi
mov r13d, r8d
mov r15d, edi
je 0x54eea9
test edx, edx
mov r9d, edi
je 0x54eea9
mov rax, rcx
cmp qword [rax], 0xffffffffffffffff
jne 0x54eeda
inc r9d
add rax, 0x10
cmp r9d, esi
jb 0x54ee97
test r8d, r8d
je 0x54eed3
test r8d, r8d
jns 0x54eeca
mov ecx, 0x2726
call qword [sym.imp.WS2_32.dll_WSASetLastError]
mov edi, 0xffffffff
mov eax, edi
jmp 0x54f196
mov ecx, r8d
call qword [sym.imp.KERNEL32.dll_Sleep]
mov eax, edi
jmp 0x54f196
test r8d, r8d
mov qword [rsp + reloc.MFC42u.dll_CWnd::CancelToolTips], rbx
jle 0x54eef4
mov r15d, r8d
call fcn.00552c90
mov rbx, rax
jmp 0x54eef9
mov rbx, qword [rsp + 0x30]
mov qword [rsp + 0x688], r12
mov qword [rsp + 0x678], r14
mov r9d, edi
mov r14, rsi
mov dword [rsp + 0x40], edi
mov r10d, edi
mov dword [rsp + 0x250], edi
mov r8d, edi
mov dword [rsp + AfxDeleteObject], edi
mov r12, 0xffffffffffffffff
nop
mov rdx, qword [rbp]
mov word [rbp + 0xa], di
cmp rdx, 0xffffffffffffffff
je 0x54f02a
movzx r11d, word [rbp + 8]
test r11b, 7
je 0x54f02a
cmp rdx, r12
cmova r12, rdx
test r11b, 1
je 0x54ef96
test r9d, r9d
mov ecx, edi
mov rax, rdi
je 0x54ef79
cmp qword [rsp + rax*8 + 0x48], rdx
je 0x54ef79
inc ecx
inc rax
cmp ecx, r9d
jb 0x54ef68
cmp ecx, r9d
jne 0x54ef96
cmp r9d, 0x40
jae 0x54ef96
mov qword [rsp + rax*8 + 0x48], rdx
mov r9d, dword [rsp + 0x40]
inc r9d
mov dword [rsp + 0x40], r9d
test r11b, 4
je 0x54efe0
test r10d, r10d
mov ecx, edi
mov rax, rdi
je 0x54efba
cmp qword [rsp + rax*8 + 0x258], rdx
je 0x54efba
inc ecx
inc rax
cmp ecx, r10d
jb 0x54efa6
cmp ecx, r10d
jne 0x54efe0
cmp r10d, 0x40
jae 0x54efe0
mov qword [rsp + rax*8 + 0x258], rdx
mov r10d, dword [rsp + 0x250]
inc r10d
mov dword [rsp + 0x250], r10d
test r11b, 2
je 0x54f02a
test r8d, r8d
mov ecx, edi
mov rax, rdi
je 0x54f004
cmp qword [rsp + rax*8 + 0x468], rdx
je 0x54f004
inc ecx
inc rax
cmp ecx, r8d
jb 0x54eff0
cmp ecx, r8d
jne 0x54f02a
cmp r8d, 0x40
jae 0x54f02a
mov qword [rsp + rax*8 + 0x468], rdx
mov r8d, dword [rsp + 0x460]
inc r8d
mov dword [rsp + AfxDeleteObject], r8d
add rbp, 0x10
dec rsi
jne 0x54ef30
lea rbp, [rsp + 0x30]
test r13d, r13d
cmovs rbp, rdi
test r13d, r13d
jle 0x54f075
mov eax, 0x10624dd3
imul r15d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, r15d
mov dword [rsp + 0x30], edx
imul edx, edx, 0x3e8
sub eax, edx
imul eax, eax, 0x3e8
mov dword [rsp + 0x34], eax
jmp 0x54f082
test r13d, r13d
jne 0x54f082
mov dword [rsp + 0x30], edi
mov dword [rsp + 0x34], edi
lea r9, [rsp + 0x460]
lea r8, [rsp + 0x250]
lea rdx, [rsp + 0x40]
lea ecx, [r12 + 1]
mov qword [rsp + 0x20], rbp
call qword [sym.imp.WS2_32.dll_select]
cmp eax, 0xffffffff
mov esi, eax
jne 0x54f0e7
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
test eax, eax
je 0x54f0bf
cmp eax, 0x2714
jne 0x54f0e7
test r13d, r13d
jle 0x54f043
call fcn.00552c90
mov rdx, rbx
mov rcx, rax
call fcn.00552cd0
mov r15d, r13d
sub r15d, eax
test r15d, r15d
jg 0x54f043
test esi, esi
mov r12, qword [rsp + 0x688]
jns 0x54f0fd
mov eax, 0xffffffff
jmp 0x54f186
test esi, esi
jne 0x54f108
xor eax, eax
jmp 0x54f186
mov rbx, qword [rsp + 0x6b0]
add rbx, 0xa
nop
nop
nop
mov rcx, qword [rbx - 0xa]
mov word [rbx], 0
cmp rcx, 0xffffffffffffffff
je 0x54f17b
lea rdx, [rsp + 0x40]
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x54f141
or word [rbx], 1
mov rcx, qword [rbx - 0xa]
lea rdx, [rsp + 0x250]
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x54f15a
or word [rbx], 4
mov rcx, qword [rbx - 0xa]
lea rdx, [rsp + 0x460]
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x54f173
or word [rbx], 2
cmp word [rbx], 0
je 0x54f17b
inc edi
add rbx, 0x10
dec r14
jne 0x54f120
mov eax, edi
mov r14, qword [rsp + 0x678]
mov rbx, qword [rsp + reloc.MFC42u.dll_CWnd::CancelToolTips]
mov r15, qword [rsp + 0x670]
mov r13, qword [rsp + 0x680]
mov rdi, qword [rsp + 0x690]
mov rsi, qword [rsp + 0x698]
mov rbp, qword [rsp + 0x6a0]
add rsp, 0x6a8
ret