Function at 0x1400529e0
Capabilities:
Get socket status

Disassembly:
push rbp
push rsi
push rdi
sub rsp, 0x670
mov rsi, r8
mov rdi, rdx
mov rbp, rcx
cmp rcx, 0xffffffffffffffff
jne 0x140052a17
cmp rdx, rcx
jne 0x140052a17
cmp r8, rcx
jne 0x140052a17
mov rcx, r9
call fcn.1400529a0
add rsp, 0x670
pop rdi
pop rsi
pop rbp
ret
mov qword [rsp + 0x698], rbx
xor ebx, ebx
or r11, 0xffffffffffffffff
mov qword [rsp + 0x6a0], r12
mov qword [rsp + 0x660], r14
lea r14d, [rbx + 1]
mov ecx, ebx
mov dword [rsp + 0x30], ebx
mov r10d, ebx
mov dword [rsp + 0x240], ebx
cmp rbp, r11
je 0x140052a70
mov ecx, r14d
mov qword [rsp + 0x248], rbp
mov r10d, r14d
mov dword [rsp + 0x240], r14d
mov qword [rsp + 0x38], rbp
mov r11, rbp
mov dword [rsp + 0x30], ecx
cmp rdx, 0xffffffffffffffff
je 0x140052af4
mov eax, ebx
test r10d, r10d
je 0x140052a95
lea rdx, [rsp + 0x248]
cmp qword [rdx], rdi
je 0x140052a95
inc eax
add rdx, 8
cmp eax, r10d
jb 0x140052a85
cmp eax, r10d
jne 0x140052abb
cmp r10d, 0x40
jae 0x140052abb
mov qword [rsp + rax*8 + 0x248], rdi
mov r10d, dword [rsp + 0x240]
inc r10d
mov dword [rsp + 0x240], r10d
mov eax, ebx
test ecx, ecx
je 0x140052ad5
lea rdx, [rsp + 0x38]
cmp qword [rdx], rdi
je 0x140052ad5
inc eax
add rdx, 8
cmp eax, ecx
jb 0x140052ac6
cmp eax, ecx
jne 0x140052aed
cmp ecx, 0x40
jae 0x140052aed
mov qword [rsp + rax*8 + 0x38], rdi
mov ecx, dword [rsp + 0x30]
inc ecx
mov dword [rsp + 0x30], ecx
cmp rdi, r11
cmova r11, rdi
mov r12d, ebx
mov dword [rsp + 0x450], ebx
cmp r8, 0xffffffffffffffff
je 0x140052b50
mov qword [rsp + 0x458], r8
mov r12d, r14d
mov dword [rsp + 0x450], r14d
mov eax, ebx
test ecx, ecx
je 0x140052b31
lea rdx, [rsp + 0x38]
cmp qword [rdx], r8
je 0x140052b31
inc eax
add rdx, 8
cmp eax, ecx
jb 0x140052b22
cmp eax, ecx
jne 0x140052b49
cmp ecx, 0x40
jae 0x140052b49
mov qword [rsp + rax*8 + 0x38], r8
mov ecx, dword [rsp + 0x30]
inc ecx
mov dword [rsp + 0x30], ecx
cmp r8, r11
cmova r11, r8
test r10d, r10d
jne 0x140052ba3
test r12d, r12d
jne 0x140052ba3
test ecx, ecx
jne 0x140052ba3
test r9, r9
jne 0x140052b6a
mov eax, ebx
jmp 0x140052c5c
test r9, r9
jns 0x140052b82
mov ecx, 0x2726
call qword [sym.imp.WS2_32.dll_WSASetLastError]
or eax, 0xffffffff
jmp 0x140052c5c
mov ecx, 0xfffffffe
mov eax, 0xffffffff
cmp r9, rax
cmovge r9, rcx
mov ecx, r9d
call qword [sym.imp.KERNEL32.dll_Sleep]
mov eax, ebx
jmp 0x140052c5c
mov qword [rsp + 0x668], r13
lea r13, [rsp + 0x690]
test r9, r9
jns 0x140052bbd
mov r13, rbx
jmp 0x140052c1c
test r9, r9
jle 0x140052c0e
movabs rax, 0x20c49ba5e353f7cf
imul r9
sar rdx, 7
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov rax, rdx
imul rax, rax, 0x3e8
sub r9, rax
mov eax, 0x7fffffff
imul r9, r9, 0x3e8
cmp rdx, rax
cmovg rdx, rax
mov dword [rsp + 0x690], edx
mov dword [rsp + 0x694], r9d
jmp 0x140052c1c
mov dword [rsp + 0x690], ebx
mov dword [rsp + 0x694], ebx
test ecx, ecx
lea r9, [rsp + 0x30]
lea r8, [rsp + 0x450]
cmove r9, rbx
test r12d, r12d
lea rdx, [rsp + 0x240]
cmove r8, rbx
test r10d, r10d
lea ecx, [r11 + 1]
cmove rdx, rbx
mov qword [rsp + 0x20], r13
call qword [sym.imp.WS2_32.dll_select]
mov r13, qword [rsp + 0x668]
mov r12, qword [rsp + 0x6a0]
test eax, eax
jns 0x140052c70
or eax, 0xffffffff
jmp 0x140052d0c
test eax, eax
je 0x140052d0c
cmp rbp, 0xffffffffffffffff
je 0x140052ca8
lea rdx, [rsp + 0x240]
mov rcx, rbp
call sub.WS2_32.dll___WSAFDIsSet
lea rdx, [rsp + 0x30]
mov rcx, rbp
test eax, eax
cmovne ebx, r14d
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x140052ca8
or ebx, 4
cmp rdi, 0xffffffffffffffff
je 0x140052cd9
lea rdx, [rsp + 0x240]
mov rcx, rdi
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x140052cc5
or ebx, 8
lea rdx, [rsp + 0x30]
mov rcx, rdi
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x140052cd9
or ebx, 4
cmp rsi, 0xffffffffffffffff
je 0x140052d0a
lea rdx, [rsp + 0x450]
mov rcx, rsi
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x140052cf6
or ebx, 2
lea rdx, [rsp + 0x30]
mov rcx, rsi
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x140052d0a
or ebx, 4
mov eax, ebx
mov rbx, qword [rsp + 0x698]
mov r14, qword [rsp + 0x660]
add rsp, 0x670
pop rdi
pop rsi
pop rbp
ret