Function at 0x14002ca70
Capabilities:
Create vmci socket

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r14
sub rsp, 0x1f0
mov rax, qword [0x1400db748]
xor rax, rsp
mov qword [rsp + 0x1e0], rax
mov r14, qword [0x1401052c8]
lea rax, [rsp + 0x48]
movsxd rbp, r8d
lea r9, [rsp + 0x60]
mov rdi, rdx
mov dword [rsp + 0x48], 0x174
mov rsi, rbp
mov qword [rsp + 0x20], rax
shl rsi, 4
mov edx, 0xffff
mov r8d, 0x2004
add rsi, r14
mov rcx, qword [rdi + 0x48]
call qword [sym.imp.WS2_32.dll_getsockopt]
test eax, eax
jns 0x14002cb00
call fcn.140013250
mov rbx, rax
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov r8, rbx
lea rcx, str.Could_not_determine_socket_provider:__d__s_n
mov edx, eax
call fcn.14001bf60
mov eax, 1
jmp 0x14002cce9
mov qword [rsp + 0x220], r15
lea rcx, str..VMCI
xor r15d, r15d
mov dword [rsp + 0x40], 0xffffffff
mov qword [rsp + 0x30], r15
xor r9d, r9d
mov dword [rsp + 0x28], 0x40000000
xor r8d, r8d
mov edx, 0x80000000
mov dword [rsp + 0x20], 3
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov rbx, rax
cmp rax, 0xffffffffffffffff
je 0x14002cb8a
mov qword [rsp + 0x38], r15
lea rax, [rsp + 0x50]
mov qword [rsp + 0x30], rax
lea r9d, [r15 + 4]
lea rax, [rsp + 0x40]
mov dword [rsp + 0x28], 4
lea r8, [rsp + 0x40]
mov qword [rsp + 0x20], rax
mov edx, 0x81032068
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [rsp + 0x40]
mov edx, r15d
cmp dword [rsp + 0xac], eax
mov ecx, ebp
sete dl
inc edx
mov dword [rdi + 0x58], edx
call fcn.14002e440
test eax, eax
jns 0x14002cbc1
lea rcx, str.POLL_Could_not_find_suitable_socket_thread__n
call fcn.14001bf60
mov eax, 1
jmp 0x14002cce1
lfence
cdqe
mov rsi, qword [rsi + rax*8 + 0x28]
mov eax, dword [rsi + 0x28]
cmp dword [rsi + 0x24], eax
jge 0x14002ccc3
mov rax, qword [rsi + 0x10]
mov rbx, r15
test rax, rax
je 0x14002cc08
mov rcx, qword [rdi + 0x48]
mov rbx, rax
cmp qword [rax + 0x10], rcx
je 0x14002cc02
mov rax, qword [rbx + 0x20]
test rax, rax
je 0x14002cc02
mov rbx, rax
cmp qword [rax + 0x10], rcx
jne 0x14002cbf0
cmp qword [rbx + 0x10], rcx
je 0x14002cc5a
mov rdx, qword [r14]
test rdx, rdx
je 0x14002cc19
mov rax, qword [rdx + 0x20]
mov qword [r14], rax
jmp 0x14002cc26
mov ecx, 0x28
call fcn.140020af0
mov rdx, rax
mov qword [rdx + 0x10], 0xffffffffffffffff
mov qword [rdx], r15
mov qword [rdx + 8], r15
mov dword [rdx + 0x18], r15d
mov qword [rdx + 0x20], r15
mov rcx, qword [rdi + 0x48]
mov qword [rdx + 0x10], rcx
test rbx, rbx
jne 0x14002cc50
mov qword [rsi + 0x10], rdx
jmp 0x14002cc54
mov qword [rbx + 0x20], rdx
inc dword [rsi + 0x24]
mov rbx, rdx
mov eax, dword [rdi + 0x18]
test al, 4
je 0x14002cc6d
mov qword [rbx], rdi
inc dword [rdi + 8]
inc dword [rbx + 0x18]
mov eax, dword [rdi + 0x18]
test al, 8
je 0x14002ccb3
mov qword [rbx + 8], rdi
lea rax, [rsp + 0x4c]
inc dword [rdi + 8]
lea r9, [rsp + 0x44]
mov rcx, qword [rbx + 0x10]
mov edx, 0xffff
inc dword [rbx + 0x18]
mov r8d, 0x1008
mov dword [rsp + 0x44], r15d
mov dword [rsp + 0x4c], 4
mov qword [rsp + 0x20], rax
call qword [sym.imp.WS2_32.dll_getsockopt]
cmp dword [rsp + 0x44], 1
jne 0x14002cd07
mov ecx, dword [rsi + 0x2c]
mov byte [rsi + 0x1c], 1
call fcn.14002ece0
xor eax, eax
jmp 0x14002cce1
mov r8d, 0x86e
lea rdx, str.boralibpollDefaultpollDefault.c
lea rcx, str._s:_d_reached_array_limit_n
call fcn.14001dba0
mov eax, 3
mov r15, qword [rsp + 0x220]
mov rcx, qword [rsp + 0x1e0]
xor rcx, rsp
call fcn.14006a480
add rsp, 0x1f0
pop r14
pop rdi
pop rsi
pop rbp
pop rbx
ret
mov r8d, 0x7a5
lea rdx, str.boralibpollDefaultpollDefault.c
lea rcx, str.VERIFY__s:_d_n
call fcn.14002b900
int3