Function at 0x1400f9150
Capabilities:
Get socket status

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1038]
mov eax, 0x1138
call fcn.140169bf0
sub rsp, rax
mov qword [rsp + 0x48], 0xfffffffffffffffe
mov rax, qword [0x14026be10]
xor rax, rsp
mov qword [rbp + 0x1020], rax
mov byte [rsp + 0x31], r9b
mov byte [rsp + 0x30], r8b
mov r14d, edx
mov rsi, rcx
mov qword [rsp + 0x38], rcx
mov rbx, qword [rbp + 0x10a0]
mov qword [rsp + 0x40], rbx
mov r12, qword [rbp + 0x10a8]
mov rcx, rbx
call fcn.1400aeb50
mov r8d, 1
movzx ecx, byte [rsp + 0x30]
test cl, cl
je 0x1400f91d0
mov r14d, r8d
jmp 0x1400f91dc
mov eax, 0x1499700
test r14d, r14d
cmove r14d, eax
mov rax, qword [rbx + 8]
test rax, rax
je 0x1400f9213
cmp dword [rax + 0xd0], 0
jne 0x1400f9213
mov rcx, rbx
call fcn.1400aebf0
movzx ecx, byte [rsp + 0x30]
mov r8d, 1
test al, al
je 0x1400f9213
mov rax, qword [rbx + 8]
mov dword [rax + 0xd0], 0x42
cmp qword [rsi + 0xb0], 0xffffffffffffffff
jne 0x1400f9237
mov rax, qword [r12]
lea rdx, str.invalid_socket__not_ready_for_writing.
mov rcx, r12
call qword [rax + 0x28]
mov byte [rbx + 0x1a], 1
jmp 0x1400f9742
mov r13d, gethostbyname
mov rax, qword [rbx + 8]
test rax, rax
je 0x1400f9256
mov eax, dword [rax + 0xd0]
cmp eax, r13d
cmovb eax, r13d
mov r13d, eax
xor r15d, r15d
test r14d, r14d
je 0x1400f96ce
lea rbx, vtable.ckFdSet.0
xor edx, edx
xor eax, eax
xor edi, edi
test cl, cl
jne 0x1400f92b5
mov edi, r14d
sub edi, r15d
cmp r14d, edi
cmovbe edi, r13d
test r13d, r13d
je 0x1400f928c
cmp edi, r13d
cmova edi, r13d
cmp edi, r14d
jbe 0x1400f929b
mov edi, r14d
test r14d, r14d
cmove edi, r8d
mov eax, 0x10624dd3
mul edi
shr edx, 6
imul eax, edx, 0x3e8
mov ecx, edi
sub ecx, eax
imul eax, ecx, 0x3e8
mov dword [rsp + 0x68], edx
mov dword [rsp + 0x6c], eax
lea rcx, [rsp + 0x70]
call fcn.14006f550
mov qword [rsp + 0x70], rbx
mov dword [rbp - 0x80], 0x3004bc8d
mov dword [rbp + 0x1010], 0x3004bc8d
mov dword [rbp - 0x78], 0
xor edx, edx
mov r8d, pe_nt_image_headers64
lea rcx, [rbp + 0xf90]
call fcn.14016c710
cmp dword [rbp - 0x80], 0x3004bc8d
je 0x1400f9308
xor ecx, ecx
call fcn.140002260
cmp dword [rbp + 0x1010], 0x3004bc8d
je 0x1400f931b
xor ecx, ecx
call fcn.140002260
movsxd r9, dword [rsi + 0xb0]
test r9d, r9d
js 0x1400f96a6
xor eax, eax
mov edx, dword [rbp - 0x78]
test edx, edx
je 0x1400f9341
cmp qword [rbp + rax*8 - 0x70], r9
je 0x1400f9341
inc eax
cmp eax, edx
jb 0x1400f9334
cmp eax, edx
jne 0x1400f9355
cmp edx, 0x200
jae 0x1400f9355
mov qword [rbp + rax*8 - 0x70], r9
inc dword [rbp - 0x78]
xor eax, eax
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], rax
lea rcx, [rsp + 0x58]
call fcn.14006f570
nop
xor esi, esi
cmp byte [rsp + 0x31], sil
je 0x1400f9440
mov ecx, 0x10a8
call fcn.140169164
mov rbx, rax
mov qword [rsp + 0x50], rax
test rax, rax
je 0x1400f93b5
mov rcx, rax
call fcn.14006f550
lea rax, vtable.ckFdSet.0
mov qword [rbx], rax
mov dword [rbx + 0x10], 0x3004bc8d
mov dword [rbx + 0x10a0], 0x3004bc8d
jmp 0x1400f93b7
xor ebx, ebx
lea rsi, [rbx + 0x18]
mov dword [rsi], 0
lea rcx, [rbx + 0x1020]
xor edx, edx
mov r8d, pe_nt_image_headers64
call fcn.14016c710
cmp dword [rbx + 0x10], 0x3004bc8d
je 0x1400f93e5
xor ecx, ecx
call fcn.140002260
cmp dword [rbx + 0x10a0], 0x3004bc8d
je 0x1400f93f8
xor ecx, ecx
call fcn.140002260
mov qword [rsp + 0x60], rbx
mov rax, qword [rsp + 0x38]
movsxd r9, dword [rax + 0xb0]
test r9d, r9d
js 0x1400f9698
xor edx, edx
mov ecx, dword [rsi]
test ecx, ecx
je 0x1400f942d
nop word [rax + rax]
cmp qword [rbx + rdx*8 + 0x20], r9
je 0x1400f942d
inc edx
cmp edx, ecx
jb 0x1400f9420
cmp edx, ecx
jne 0x1400f9440
cmp ecx, 0x200
jae 0x1400f9440
mov qword [rbx + rdx*8 + 0x20], r9
inc dword [rsi]
lea rax, [rsp + 0x68]
mov qword [rsp + 0x20], rax
mov r9, rsi
lea r8, [rbp - 0x78]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.WS2_32.dll_select]
mov ebx, eax
cmp eax, 0xffffffff
je 0x1400f9616
test eax, eax
js 0x1400f9616
jg 0x1400f9555
cmp byte [rsp + 0x30], 0
jne 0x1400f9545
add r15d, edi
test r14d, r14d
je 0x1400f948c
cmp r15d, r14d
jae 0x1400f94ee
mov rdx, r12
mov rbx, qword [rsp + 0x40]
mov rcx, rbx
call fcn.1400aece0
test al, al
jne 0x1400f9529
lea rcx, [rsp + 0x58]
call fcn.14006f660
nop
lea rax, vtable.ckFdSet.0
mov qword [rsp + 0x70], rax
xor eax, eax
mov dword [rbp - 0x80], eax
mov dword [rbp + 0x1010], eax
lea rcx, [rsp + 0x70]
call fcn.14006f630
mov rsi, qword [rsp + 0x38]
cmp r15d, r14d
jae 0x1400f96ce
movzx ecx, byte [rsp + 0x30]
mov r8d, 1
jmp 0x1400f9262
lea rcx, [rsp + 0x58]
call fcn.14006f660
nop
lea rax, vtable.ckFdSet.0
mov qword [rsp + 0x70], rax
xor eax, eax
mov dword [rbp - 0x80], eax
mov dword [rbp + 0x1010], eax
lea rcx, [rsp + 0x70]
call fcn.14006f630
mov rbx, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x38]
jmp 0x1400f96ce
mov byte [rbx + 0x19], 1
mov rax, qword [r12]
lea rdx, str.socket_write_aborted_by_application..
mov rcx, r12
call qword [rax + 0x28]
xor bl, bl
jmp 0x1400f969a
mov rax, qword [rsp + 0x40]
mov byte [rax + 0x18], 1
xor bl, bl
jmp 0x1400f969a
lea rdx, [rbp - 0x78]
mov rdi, qword [rsp + 0x38]
mov rcx, qword [rdi + 0xb0]
call fcn.140168df8
test eax, eax
jne 0x1400f9698
test rsi, rsi
je 0x1400f958a
mov rdx, rsi
mov rcx, qword [rdi + 0xb0]
call fcn.140168df8
test eax, eax
jne 0x1400f953e
xor r8d, r8d
lea rdx, str.nfds
mov rcx, r12
call fcn.1400717d0
mov r8d, ebx
lea rdx, str.nStatus
mov rcx, r12
call fcn.1400717d0
mov r8d, dword [rdi + 0xb0]
lea rdx, str.socketNum
mov rcx, r12
call fcn.1400717d0
mov r8d, r14d
lea rdx, str.timeoutMs
mov rcx, r12
call fcn.1400717d0
movzx r8d, byte [rsp + 0x30]
lea rdx, str.bPoll
mov rcx, r12
call fcn.1400717d0
movzx r8d, byte [rsp + 0x31]
lea rdx, str.bForConnect
mov rcx, r12
call fcn.1400717d0
mov rax, qword [r12]
lea rdx, str.Socket_select_for_writeability_returned_unexpected_result_
mov rcx, r12
call qword [rax + 0x30]
jmp 0x1400f9698
mov rcx, r12
call fcn.1400720b0
xor r8d, r8d
lea rdx, str.nfds
mov rcx, r12
call fcn.1400717d0
mov rax, qword [rsp + 0x38]
mov r8d, dword [rax + 0xb0]
lea rdx, str.socketNum
mov rcx, r12
call fcn.1400717d0
mov r8d, r14d
lea rdx, str.timeoutMs
mov rcx, r12
call fcn.1400717d0
movzx r8d, byte [rsp + 0x30]
lea rdx, str.bPoll
mov rcx, r12
call fcn.1400717d0
movzx r8d, byte [rsp + 0x31]
lea rdx, str.bForConnect
mov rcx, r12
call fcn.1400717d0
mov rax, qword [r12]
lea rdx, str.Socket_select_for_writeable_returned_an_error_
mov rcx, r12
call qword [rax + 0x28]
mov bl, 1
lea rcx, [rsp + 0x58]
call fcn.14006f660
jmp 0x1400f96a8
mov bl, 1
lea rax, vtable.ckFdSet.0
mov qword [rsp + 0x70], rax
xor eax, eax
mov dword [rbp - 0x80], eax
mov dword [rbp + 0x1010], eax
lea rcx, [rsp + 0x70]
call fcn.14006f630
movzx eax, bl
jmp 0x1400f9744
mov rcx, r12
cmp byte [rsp + 0x31], 0
je 0x1400f96e1
lea rdx, str.timeout_waiting_for_connect_to_complete_
jmp 0x1400f9737
mov r8d, dword [rsi + 0xb0]
lea rdx, str.socketNum
call fcn.1400717d0
mov r8d, r14d
lea rdx, str.timeoutMs
mov rcx, r12
call fcn.1400717d0
movzx r8d, byte [rsp + 0x30]
lea rdx, str.bPoll
mov rcx, r12
call fcn.1400717d0
xor r8d, r8d
lea rdx, str.bForConnect
mov rcx, r12
call fcn.1400717d0
lea rdx, str.socket_is_not_ready_for_writing_
mov rcx, r12
mov rax, qword [r12]
call qword [rax + 0x28]
mov byte [rbx + 0x18], 1
xor al, al
mov rcx, qword [rbp + 0x1020]
xor rcx, rsp
call fcn.140168e10
add rsp, 0x1138
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret