Function at 0x14010d690
Capabilities:
Connect socket

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x218
lea rbp, [rsp + 0x80]
movaps xmmword [rbp + 0x180], xmm6
mov qword [rbp + 0x178], 0xfffffffffffffffe
mov r15, r8
mov rsi, rdx
mov r14, rcx
movzx eax, byte [rdx + 0x78]
test eax, eax
je 0x14010d731
cmp eax, 3
jne 0x14010e53d
lea r13, [rsi + 0x30]
lea rdi, [rsi + 0x70]
movzx eax, byte [rsi + 0x70]
test eax, eax
je 0x14010d7e1
cmp eax, 3
jne 0x14010e56c
mov rcx, qword [rsi + 0x68]
mov rcx, qword [rsi + 0x20]
mov qword [rsi + 0x28], rcx
cmp word [rsi], 0
movzx eax, word [rsi + 0x12]
mov word [rbp + 0x80], ax
movups xmm0, xmmword [rsi + 2]
movaps xmmword [rbp + 0x70], xmm0
je 0x14010d7f4
mov edx, dword [rsi + 0x14]
mov r8d, dword [rsi + 0x18]
movzx eax, word [rsi + 0x1c]
mov r9, qword [rbp + 0x72]
mov r10d, dword [rbp + 0x7a]
movzx r11d, word [rbp + 0x7e]
movzx edi, word [rbp + 0x80]
xorps xmm0, xmm0
movups xmmword [rbp + 0xd4], xmm0
movups xmmword [rbp + 0xe4], xmm0
movups xmmword [rbp + 0xf4], xmm0
movups xmmword [rbp + 0x104], xmm0
movups xmmword [rbp + 0x114], xmm0
movups xmmword [rbp + 0x124], xmm0
rol ax, 8
mov dword [rbp + 0x134], 0
mov qword [rbp + 0xc0], r9
mov dword [rbp + 0xc8], r10d
mov word [rbp + 0xcc], r11w
mov word [rbp + 0xce], di
mov dword [rbp + 0xd0], r8d
mov r8d, 0x1c
mov r9w, 0x17
jmp 0x14010d83e
mov qword [rbp + 0x170], rdi
mov qword [rbp + 0x168], r13
jmp 0x14010d8ac
lea r8, [rbp + 0xc0]
movzx eax, word [rbp + 0x74]
rol ax, 8
mov edx, dword [rbp + 0x70]
xorps xmm0, xmm0
movups xmmword [r8 + 0x60], xmm0
movups xmmword [r8 + 0x50], xmm0
movups xmmword [r8 + 0x40], xmm0
movups xmmword [r8 + 0x30], xmm0
movups xmmword [r8 + 0x20], xmm0
movups xmmword [r8 + 0x10], xmm0
movups xmmword [r8], xmm0
mov qword [r8 + 0x70], 0
mov r8d, reloc.WS2_32.dll_recv
mov r9w, 2
mov word [rbp + 0xb8], r9w
mov word [rbp + 0xba], ax
mov dword [rbp + 0xbc], edx
mov dword [rbp + 0x138], r8d
lea rdx, [rbp + 0xb8]
call qword [sym.imp.WS2_32.dll_connect]
test eax, eax
je 0x14010d882
call sub.KERNEL32.dll_GetLastError
mov r12d, eax
mov ecx, eax
call fcn.14012f020
cmp al, 0xd
jne 0x14010da38
mov rax, qword [rsi + 0x28]
lea rcx, [rsi + 0x30]
mov qword [rbp + 0x168], rcx
mov qword [rsi + 0x30], rax
mov qword [rsi + 0x38], 0
lea rax, [rsi + 0x70]
mov qword [rbp + 0x170], rax
mov byte [rsi + 0x70], 0
mov rax, qword [rsi + 0x30]
mov qword [rbp + 0x158], rax
mov rbx, qword [rsi + 0x38]
lea rcx, str.C:UsersUser.cargo_registry_srcindex.crates.io_6f17d22bba15001f_tokio_1.32.0_src_net_tcp_stream.rs
call fcn.140144d20
mov r12, rdx
mov qword [rbp + 0x40], rax
mov qword [rbp + 0x48], rdx
lea r13, [rdx + 0x138]
add rdx, 0xd0
mov qword [rbp + 0x148], rax
test rax, rax
mov ecx, 0xd0
mov edi, 0x138
cmove rdi, rcx
cmove r13, rdx
cmp qword [r12 + rdi], 0
je 0x14010e4f0
mov qword [rbp + 0x50], r15
mov qword [rbp + 0x160], rbx
popfq
invalid
add dword [rax], eax
add byte [rcx - 0x73], cl
pop rbp
and byte [rax - 0x77], cl
fcos
adc eax, 0x5a729
mov rax, qword [0x1402153f0]
shl rax, 1
test rax, rax
jne 0x14010db9a
xor r15d, r15d
movzx eax, byte [r13 + 0x28]
cmp byte [r13 + 0x58], 0
je 0x14010dbb6
mov rdi, r14
movzx eax, byte [0x1402153f8]
mov rcx, qword [0x140215360]
test rcx, rcx
jne 0x14010d974
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x14010e50a
mov rcx, rax
mov qword [0x140215360], rax
mov r8d, 0x38
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x14010e50a
mov r14, rax
movups xmm0, xmmword [0x1401dff30]
movups xmmword [rax + 0x20], xmm0
movups xmm0, xmmword [0x1401dff20]
movups xmmword [rax + 0x10], xmm0
movups xmm0, xmmword [str.A_Tokio_1.x_context_was_found__but_it_is_being_shutdown._mark_pending_called_when_the_timer_entry_is_in_an_invalid_stateI]
movups xmmword [rax], xmm0
movabs rax, 0x2e6e776f64747568
mov qword [r14 + 0x30], rax
movzx eax, byte [0x1402153f8]
mov rcx, qword [0x140215360]
test rcx, rcx
jne 0x14010d9e8
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x14010e51b
mov rcx, rax
mov qword [0x140215360], rax
mov r8d, 0x18
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x14010e51b
mov qword [rax], r14
mov qword [rax + 8], 0x38
mov qword [rbp + 0x148], rax
mov qword [rax + 0x10], 0x38
movzx eax, byte [0x1402153f8]
mov rcx, qword [0x140215360]
test rcx, rcx
je 0x14010da54
mov r14, rdi
mov rdi, qword [rbp + 0x170]
jmp 0x14010da77
shl r12, 0x20
or r12, 2
mov rcx, qword [rsi + 0x28]
call qword [sym.imp.WS2_32.dll_closesocket]
mov edi, 2
jmp 0x14010ddfd
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
mov r14, rdi
mov rdi, qword [rbp + 0x170]
je 0x14010e52c
mov rcx, rax
mov qword [0x140215360], rax
mov r8d, 0x18
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x14010e52c
mov r12, rax
mov rax, qword [rbp + 0x148]
mov qword [r12], rax
lea rax, fcn.140022090
mov qword [r12 + 8], rax
mov byte [r12 + 0x10], 0x27
test r15b, r15b
jne 0x14010dac6
mov rax, qword [0x1402153f0]
shl rax, 1
test rax, rax
jne 0x14010e22f
inc r12
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov r13, qword [rbp + 0x168]
mov r15, qword [rbp + 0x160]
lea rcx, [rbp + 0x48]
cmp qword [rbp + 0x40], 0
je 0x14010dd7b
call fcn.1401666c0
mov r15d, eax
xor r15b, 1
movzx eax, byte [r13 + 0x28]
cmp byte [r13 + 0x58], 0
jne 0x14010d945
mov qword [rbp + 0x150], r14
xorps xmm0, xmm0
movups xmmword [rbp + 0xc0], xmm0
mov qword [rbp + 0xd0], 0
movups xmmword [rbp + 0x8f], xmm0
mov qword [rbp + 0x9f], 0
movzx eax, byte [0x1402153f8]
mov rcx, qword [0x140215360]
test rcx, rcx
jne 0x14010dc10
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x14010e55b
mov rcx, rax
mov qword [0x140215360], rax
mov r8d, 0x180
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x14010e55b
mov r14, rax
and r14, 0xffffffffffffff80
mov qword [r14 + 0x78], rax
mov qword [r14 + 0x80], 1
mov qword [r14 + 0x88], 1
mov qword [r14 + 0x100], 0
mov byte [r14 + 0x108], 0
movups xmm0, xmmword [rbp + 0x88]
movups xmm1, xmmword [rbp + 0x97]
movups xmmword [r14 + 0x109], xmm0
movups xmmword [r14 + 0x118], xmm1
mov qword [r14 + 0x130], 0
movups xmm0, xmmword [rbp + 0xb8]
movups xmm1, xmmword [rbp + 0xc8]
movups xmmword [r14 + 0x138], xmm0
movups xmmword [r14 + 0x148], xmm1
lock inc qword [r14 + 0x80]
jle 0x14010e557
lea rcx, [r14 + 0x100]
mov qword [rbp + 0x88], rcx
mov rax, qword [r13 + 0x48]
cmp rax, rcx
je 0x14010e586
sub r14, 0xffffffffffffff80
mov qword [r14 + 0xc8], rax
mov qword [r14 + 0xc0], 0
test rax, rax
je 0x14010dcea
mov qword [rax + 0x40], rcx
mov qword [r13 + 0x48], rcx
cmp qword [r13 + 0x50], 0
je 0x14010dd03
mov qword [rbp + 0x140], rcx
test r15b, r15b
jne 0x14010dd26
jmp 0x14010dd13
mov qword [r13 + 0x50], rcx
mov qword [rbp + 0x140], rcx
test r15b, r15b
jne 0x14010dd26
mov rax, qword [0x1402153f0]
shl rax, 1
test rax, rax
jne 0x14010e35b
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov r15, qword [rbp + 0x160]
test r15, r15
je 0x14010de35
movabs r12, 0xc00000003
mov r13, qword [rbp + 0x168]
mov rdi, qword [rbp + 0x170]
lock dec qword [r14]
jne 0x14010dd65
mov rbx, qword [r12 + rdi]
lea rdi, [rbx + 0x18]
mov qword [rbp + 0x38], rdi
lea r15, [rbx + 0x20]
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
mov rax, qword [0x1402153f0]
shl rax, 1
test rax, rax
jne 0x14010e372
xor r13d, r13d
movzx eax, byte [rbx + 0x28]
test al, al
jne 0x14010e38a
mov qword [rbp + 0x60], r15
mov byte [rbp + 0x68], r13b
lea rdx, [rbx + 0x30]
mov rax, qword [rbx + 0x40]
test rax, rax
mov qword [rbp + 0x58], rbx
je 0x14010dec8
mov rcx, qword [rdx]
mov rax, qword [rcx + rax*8 - 8]
mov rax, qword [rax]
mov r15, qword [rbp + 0x60]
cmp rax, 0x21
jb 0x14010df10
mov rax, qword [rbp + 0x38]
lea rdx, [r15 + 0x10]
mov rax, qword [rax]
mov rcx, qword [rax + 0x10]
call fcn.14009e670
test rax, rax
mov rdi, qword [rbp + 0x170]
je 0x14010df10
mov rbx, rax
movzx r13d, byte [rbp + 0x68]
jmp 0x14010dee3
mov rax, qword [rdi]
mov rcx, qword [rax + 0x10]
call fcn.14009e670
mov rbx, rax
test rax, rax
mov rdi, qword [rbp + 0x170]
je 0x14010df10
test r13b, r13b
jne 0x14010defb
mov rax, qword [0x1402153f0]
shl rax, 1
test rax, rax
jne 0x14010e4d9
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov r13, qword [rbp + 0x168]
jmp 0x14010e464
mov rax, qword [r15 + 0x20]
test rax, rax
je 0x14010e5d8
mov rcx, qword [r15 + 0x10]
mov r15, qword [rcx + rax*8 - 8]
lock inc qword [r15]
mov rdi, qword [rbp + 0x158]
jle 0x14010e557
mov rbx, qword [rbp + 0x60]
cmp byte [rbp + 0x68], 0
jne 0x14010df54
mov rax, qword [0x1402153f0]
shl rax, 1
test rax, rax
jne 0x14010e4c3
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov qword [rbp + 0xb8], 0
mov dword [rbp + 0x88], 0
xorps xmm6, xmm6
movups xmmword [rsp + 0x38], xmm6
lea r13, [rbp + 0x88]
mov qword [rsp + 0x30], r13
lea rbx, [rbp + 0xb8]
mov qword [rsp + 0x20], rbx
mov dword [rsp + 0x28], 8
mov rcx, rdi
mov edx, 0x48000022
xor r8d, r8d
xor r9d, r9d
call qword [sym.imp.WS2_32.dll_WSAIoctl]
cmp eax, 0xffffffff
je 0x14010e1ca
mov rdi, qword [rbp + 0xb8]
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov rcx, rbx
invalid
mov ebx, eax
mov qword [rbp + 0xb8], 0
add byte [rax], al
add byte [rax], al
add byte [rax], al
invalid
call fcn.1401666c0
test al, al
jne 0x14010dac6
mov byte [r13 + 0x28], 1
jmp 0x14010dac6
call fcn.1401666c0
test al, al
jne 0x14010dd26
mov byte [r13 + 0x28], 1
jmp 0x14010dd26
call fcn.1401666c0
mov r13d, eax
xor r13b, 1
movzx eax, byte [rbx + 0x28]
test al, al
je 0x14010de70
mov qword [rbp + 0xb8], r15
mov byte [rbp + 0xc0], r13b
lea rax, str.C:UsersUser.cargo_registry_srcindex.crates.io_6f17d22bba15001fmio_0.8.8_src_syswindows_selector.rs_b
mov qword [rsp + 0x20], rax
lea rcx, str.called__Result::unwrap____on_an__Err__value
lea r9, [0x1401d10a0]
lea ecx, [0x1401d10a0]
lea r8, [rbp + 0xb8]
mov edx, 0x2b
call fcn.140161200
ud2
call fcn.1401666c0
test al, al
jne 0x14010df54
mov byte [rbx + 8], 1
jmp 0x14010df54
call fcn.1401666c0
test al, al
jne 0x14010defb
invalid
invalid
mov byte [r15 + 8], 1
jmp 0x14010defb
lea rcx, str.A_Tokio_1.x_context_was_found__but_IO_is_disabled._Call__enable_io__on_the_runtime_builder_to_enable_IO.A_Tokio_1.x_context_was_found__but_timers_are_disabled._Call__enable_time__on_the_runtime_builder_to_enable_timers.Oh_no__We_never_placed_the_Core_back__this_is_a_bug_
lea r8, str.C:UsersUser.cargo_registry_srcindex.crates.io_6f17d22bba15001f_tokio_1.32.0_src_net_tcp_stream.rs
mov edx, 0x68
call fcn.140161290
ud2
mov ecx, 1
mov edx, 0x38
cmp byte [rax], al
add byte [rax], al
mov ecx, 8
mov edx, 0x18
mov ecx, 8
mov edx, 0x18
call fcn.14015d7f0
ud2
lea rcx, str._async_fn__resumed_after_completionunable_to_find_any_user_specified_roots_in_the_final_cert_chain
lea r8, str.C:UsersUser.cargo_registry_srcindex.crates.io_6f17d22bba15001f_tokio_1.32.0_src_net_tcp_socket.rs
mov ecx, 0x80
mov edx, 0x100
call fcn.14015d7f0
ud2
lea rcx, str._async_fn__resumed_after_completionunable_to_find_any_user_specified_roots_in_the_final_cert_chain
mov qword [rbp + 0xb8], 0
lea rax, [rbp + 0x38]
mov qword [rbp - 0x20], rax
lea rax, [0x14009ea50]
mov qword [rbp - 0x18], rax