Function at 0x1005eaf5
Capabilities:
Set socket configuration

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x74
movzx eax, byte [edx + 0x34]
mov edi, edx
mov ebx, ecx
test eax, eax
je 0x1005eb3a
cmp eax, 3
jne 0x1005f14e
mov edx, dword [edi + 0x30]
lea esi, [ebp - 0x20]
mov ecx, esi
push dword [ebp + 8]
call sym.tokio::io::poll_evented::PollEvented_LT_E_GT_::poll_write_ready::hb21394b6434e81c2
pop eax
cmp byte [esi], 5
jne 0x1005eccd
mov al, 3
mov dword [ebx], 3
jmp 0x1005f135
mov dword [ebp - 0x34], ebx
mov ebx, dword [edi]
mov dword [ebp - 0x28], edi
mov edi, dword [edi + 4]
lea esi, [ebp - 0x20]
mov dword [esi], 1
push esi
push 0x8004667e
push ebx
call sub.ws2_32.dll_ioctlsocket
cmp eax, 0xffffffff
je 0x1005ed71
mov ecx, 0x8c
call sym.__ZN5alloc5alloc15exchange_malloc17h142decb00e75c662E.464
xorps xmm0, xmm0
mov dword [eax], ebx
and dword [eax + 0x14], 0
xor ecx, ecx
movsd qword [eax + 4], xmm0
movsd qword [eax + 0xc], xmm0
mov dword [eax + 0x18], sym.mio::sys::windows::tcp::read_done::h3a73160fef2d903e
movsd qword [eax + 0x1c], xmm0
movsd qword [eax + 0x24], xmm0
and dword [eax + 0x2c], 0
mov dword [eax + 0x30], sym.mio::sys::windows::tcp::write_done::h80497f3a076906b8
and word [eax + 0x34], 0
and dword [eax + 0x38], 0
and dword [eax + 0x44], 0
and dword [eax + 0x40], 0
and dword [eax + 0x48], 0
movsd xmm0, qword [edi]
movsd xmm1, qword [edi + 8]
movsd qword [eax + 0x5c], xmm0
movsd qword [eax + 0x64], xmm1
movsd xmm0, qword [edi + 0x10]
movsd qword [eax + 0x6c], xmm0
movsd xmm0, qword [edi + 0x18]
xor edi, edi
movsd qword [eax + 0x74], xmm0
mov byte [eax + 0x7c], 4
mov byte [eax + 0x84], 0
mov dword [eax + 0x88], 1
and dword [ebp - 0x50], 0
and dword [ebp - 0x54], 0
and dword [ebp - 0x4c], 0
and dword [ebp - 0x58], 0
mov dword [ebp - 0x5c], eax
call sym.tokio::runtime::context::CONTEXT::__getit::h5320b618187f5812
test eax, eax
je 0x1005f160
mov ecx, eax
mov edx, 0x101c1124
call sym.core::cell::RefCell_LT_T_GT_::borrow::h176fc5b0b8a9713a
cmp dword [eax], 3
mov esi, edx
je 0x1005ec2e
mov ecx, dword [eax + 0xc]
call sym.__LT_core..option..Option_LT_T_GT__u20_as_u20_core..clone..Clone_GT_::clone::h5474631e46782ce9
mov edi, eax
dec dword [esi]
test edi, edi
je 0x1005f174
mov ecx, edi
call sym.alloc::sync::Weak_LT_T_C_A_GT_::upgrade::h7dfed63390437b25
test eax, eax
mov dword [ebp - 0x3c], edi
je 0x1005ed8d
lea esi, [ebp - 0x20]
lea edx, [eax + 0x2c]
mov ebx, eax
mov dword [ebp - 0x30], eax
mov ecx, esi
call sym.std::sync::mutex::Mutex_LT_T_GT_::lock::h8171d96aa8ea4859
cmp dword [esi], 0
jne 0x1005f186
mov eax, ebx
mov edx, dword [ebx + 0x24]
mov dword [ebp - 0x2c], ebx
add eax, 8
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x48], eax
mov al, byte [ebp - 0x18]
mov byte [ebp - 0x21], al
imul eax, dword [ebx + 0x28], 0x14
xor ebx, ebx
mov esi, eax
test eax, eax
je 0x1005efe9
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x14], edx
mov edx, dword [eax + 0x20]
mov ecx, dword [eax + 0x1c]
push ebx
call sym.tokio::util::slab::shard::Shard_LT_T_GT_::local::h0842e38eecf3f4fa
mov edx, dword [ebp - 0x14]
add esp, 4
mov edi, dword [eax]
cmp edi, dword [edx + 0xc]
jb 0x1005ecb6
mov edi, 0x7fffffff
xchg dword [edx + 8], edi
cmp edi, 0x7fffffff
jne 0x1005edad
mov eax, esi
add edx, 0x14
inc ebx
add eax, 0xffffffec
jmp 0x1005ec85
mov dword [ebp - 0x34], ebx
mov ebx, dword [ebp - 0x20]
mov dword [ebp - 0x28], edi
cmp bl, 4
jne 0x1005ed85
lea ecx, [edi + 8]
call sym.tokio::io::poll_evented::PollEvented_LT_E_GT_::get_ref::hdc658bb155c9d898
mov esi, eax
mov eax, dword [eax]
lea ecx, [ebp - 0x30]
lea edx, [ebp - 0x80]
mov eax, dword [eax]
and dword [ecx], 0
mov dword [edx], 4
push edx
push ecx
push 0x1007
push 0xffff
push eax
call sub.ws2_32.dll_getsockopt
cmp eax, 0xffffffff
je 0x1005edbe
mov edi, dword [ebp - 0x30]
xor ebx, ebx
test edi, edi
sete bl
shl ebx, 2
test ebx, ebx
je 0x1005ee1e
mov ecx, dword [esi]
call sym.mio::sys::windows::tcp::StreamImp::inner::h0a06bd42461a18a4
mov ebx, dword [eax + 0x48]
mov edi, dword [eax + 0x4c]
and dword [eax + 0x4c], 0
and dl, 1
mov dword [eax + 0x48], 4
mov dword [ebp - 0x14], eax
mov byte [ebp - 0x2c], dl
test bl, 0xfc
je 0x1005ee06
mov esi, eax
add esi, 0x48
mov ecx, esi
call sym.core::ptr::drop_in_place_LT_mio..sys..windows..tcp..State_LT__LP__RP__C__LP__RP__GT__GT_::h7d8fca943df61d06
mov dword [esi + 4], edi
xor edi, edi
mov dword [esi], ebx
push 4
pop ebx
jmp 0x1005ee12
call sub.ws2_32.dll_WSAGetLastError
mov edi, eax
push ebx
call sub.ws2_32.dll_closesocket
xor ebx, ebx
jmp 0x1005f0fe
mov edi, dword [ebp - 0x1c]
jmp 0x1005ee66
lea esi, [ebp - 0x20]
push 0x27
pop edx
mov ecx, esi
push 0x19
push 0x101c1091
call sym.std::io::error::Error::new::haca7853836d05e36
pop eax
pop ecx
mov ebx, dword [esi]
mov edi, dword [esi + 4]
jmp 0x1005f0ee
mov ecx, dword [edx]
mov dword [ebp - 0x40], eax
test ecx, ecx
je 0x1005edcc
mov ebx, dword [edx + 4]
jmp 0x1005ef98
call sub.ws2_32.dll_WSAGetLastError
mov edi, eax
xor ebx, ebx
jmp 0x1005ee66
mov ebx, dword [edx + 0xc]
test ebx, ebx
je 0x1005ee76
cmp ebx, 0x3ffffff
ja 0x1005f1ac
mov dword [ebp - 0x10], ebx
shl ebx, 5
push 4
pop ecx
mov edx, ebx
call sym.__ZN5alloc5alloc6Global10alloc_impl17h85ddb242f3d613d2E.1075
test eax, eax
je 0x1005f1b1
mov ecx, dword [ebp - 0x14]
mov ebx, dword [ecx + 0xc]
mov ecx, dword [ebp - 0x10]
jmp 0x1005ee7d
mov edx, eax
mov ecx, esi
add edx, 4
call sym.mio::sys::windows::tcp::StreamImp::schedule_read::hbdf9ce28551ddb64
movzx edx, byte [ebp - 0x2c]
mov ecx, dword [ebp - 0x14]
call sym.__ZN4core3ptr108drop_in_place_LT_std..sync..mutex..MutexGuard_LT_core..option..Option_LT_mio..poll..Registration_GT__GT__GT_17
cmp bl, 4
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x1c], edi
jne 0x1005ee66
lea ecx, [ebp - 0x20]
call sym.core::ptr::drop_in_place_LT_h2..proto..error..Error_GT_::hbaff44c2fd21bde6
mov edx, dword [ebp - 0x28]
movsd xmm0, qword [edx + 0x1c]
mov eax, dword [edx + 8]
mov ebx, dword [edx + 0xc]
mov edi, dword [edx + 0x10]
movsd qword [ebp - 0x70], xmm0
movsd xmm0, qword [edx + 0x24]
movsd qword [ebp - 0x68], xmm0
mov ecx, dword [edx + 0x2c]
mov dword [ebp - 0x60], ecx
movsd xmm0, qword [edx + 0x14]
movsd qword [ebp - 0x78], xmm0
jmp 0x1005f101
mov eax, dword [ebp - 0x28]
lea ecx, [eax + 8]
call sym.core::ptr::drop_in_place_LT_tokio..net..tcp..stream..TcpStream_GT_::hb7177d84eb3d0610
jmp 0x1005f0fe
push 4
pop eax
xor ebx, ebx
xor ecx, ecx
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x1c], eax
and dword [ebp - 0x18], 0
mov dword [ebp - 0x10], ebx
sub ebx, 1
mov edx, 0
cmovb ebx, edx
cmp ecx, ebx
jae 0x1005eeb5
xor edx, edx
lea ecx, [ebp - 0x20]
push ebx
call sym.alloc::raw_vec::RawVec_LT_T_C_A_GT_::grow_amortized::hc8d95ea268657f9a
pop ecx
mov ecx, eax
call sym.alloc::raw_vec::handle_reserve::h19da5151a8c296b7
lea ecx, [ebp - 0x20]
mov eax, dword [ecx + 4]
mov edx, dword [ecx + 8]
mov ecx, edx
shl ecx, 5
add ecx, eax
xor ebx, ebx
inc ebx
cmp ebx, dword [ebp - 0x10]
jae 0x1005eee1
mov dword [ecx], ebx
and dword [ecx + 4], 0
and dword [ecx + 8], 0
and dword [ecx + 0x10], 0
and dword [ecx + 0x14], 0
and dword [ecx + 0x1c], 0
inc ebx
inc edx
add ecx, 0x20
jmp 0x1005eebf
mov dword [ebp - 0x18], edx
cmp edx, dword [ebp - 0x20]
jne 0x1005eef9
lea ebx, [ebp - 0x20]
mov ecx, ebx
call sym.alloc::raw_vec::RawVec_LT_T_C_A_GT_::reserve_for_push::h677afcf3ab9f82c3
mov eax, dword [ebx + 4]
mov edx, dword [ebx + 8]
shl edx, 5
mov ecx, dword [ebp - 0x14]
mov dword [eax + edx], 0x7fffffff
and dword [eax + edx + 4], 0
and dword [eax + edx + 8], 0
and dword [eax + edx + 0x10], 0
and dword [eax + edx + 0x14], 0
and dword [eax + edx + 0x1c], 0
mov ebx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x20]
mov edx, dword [ebp - 0x1c]
inc ebx
mov dword [ebp - 0x10], edx
cmp eax, ebx
jbe 0x1005ef80
shl eax, 5
test ebx, ebx
je 0x1005ef58
mov ecx, ebx
mov edx, eax
shl ecx, 5
mov dword [ebp - 0x38], ecx
mov ecx, dword [ebp - 0x10]
push dword [ebp - 0x38]
call sym.__LT_alloc..alloc..Global_u20_as_u20_core..alloc..Allocator_GT_::shrink::h476389293526b136
pop ecx
test eax, eax
je 0x1005ef72
mov ecx, 0x80000001
jmp 0x1005ef6d
mov ecx, dword [ebp - 0x10]
push 4
pop edx
push eax
call sym.__ZN63__LT_alloc..alloc..Global_u20_as_u20_core..alloc..Allocator_GT_10deallocate17hcacc92fefce56ab3E.1567
pop eax
mov ecx, 0x80000001
push 4
pop eax
mov dword [ebp - 0x10], eax
jmp 0x1005ef78
push 4
pop ecx
mov edx, dword [ebp - 0x38]
call sym.alloc::raw_vec::handle_reserve::h19da5151a8c296b7
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov ecx, dword [ecx]
mov edx, dword [eax + 4]
call sym.__ZN4core3ptr165drop_in_place_LT_core..option..Option_LT_alloc..boxed..Box_LT__u5b_tokio..util..slab..slot..Slot_LT_tokio..io.
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x10]
mov dword [edx], ecx
mov dword [edx + 4], ebx
cmp edi, ebx
jae 0x1005f140
mov eax, edi
mov dword [ebp - 0x10], ecx
mov ebx, dword [ebp - 0x40]
shl eax, 5
mov ecx, dword [ecx + eax]
mov dword [ebx], ecx
mov ecx, dword [ebp - 0x10]
mov ebx, dword [ecx + eax + 4]
add edi, dword [edx + 0x10]
shr ebx, 0x1f
sub esp, 8
and dword [esp + 4], 0
mov ecx, 0x3fff
xor edx, edx
mov dword [esp], edi
call sym.tokio::util::bit::Pack::pack::h3317725eb39f387c
pop ecx
pop edx
push 0x1a
pop edx
mov ecx, 0x4000000
push eax
push ebx
call sym.tokio::util::bit::Pack::pack::h3317725eb39f387c
pop ecx
pop edx
mov edi, eax
movzx edx, byte [ebp - 0x21]
mov ecx, dword [ebp - 0x48]
call sym.__ZN4core3ptr108drop_in_place_LT_std..sync..mutex..MutexGuard_LT_core..option..Option_LT_mio..poll..Registration_GT__GT__GT_17
mov ebx, dword [ebp - 0x34]
test esi, esi
jne 0x1005f01b
lea esi, [ebp - 0x20]
push 0x27
pop edx
mov ecx, esi
push 0x27
push 0x101c0f3c
call sym.std::io::error::Error::new::haca7853836d05e36
pop eax
pop ecx
mov eax, dword [esi]
mov edi, dword [esi + 4]
cmp al, 4
jne 0x1005f087
mov eax, dword [ebp - 0x2c]
lock inc dword [eax + 0x30]
cmp edi, 0xffffffff
je 0x1005f056
lea esi, [ebp - 0x20]
lea edx, [ebp - 0x5c]
mov ecx, esi
push 1
push 3
push edi
push dword [ebp - 0x44]
call sym.__LT_mio..net..tcp..TcpStream_u20_as_u20_mio..event_imp..Evented_GT_::register::h41df4f62aa2cc580
add esp, 0x10
cmp byte [esi], 4
je 0x1005f08b
mov eax, dword [ebp - 0x20]
cmp al, 4
je 0x1005f08b
mov edx, dword [ebp - 0x1c]
mov ecx, eax
shrd ecx, edx, 8
jmp 0x1005f07d
lea esi, [ebp - 0x20]
push 0x27
pop edx
mov ecx, esi
push 0xd
push str.invalid_tokenregistration_handle_associated_with_another__Poll__instanceL
call sym.std::io::error::Error::new::haca7853836d05e36
pop eax
pop ecx
mov eax, dword [esi]
mov edx, dword [esi + 4]
mov ecx, eax
shrd ecx, edx, 8
cmp al, 4
je 0x1005f027
je 0x1005f027
and ecx, 0xffffff
mov edi, edx
jmp 0x1005f0de
cmp al, 4
jne 0x1005f0d9
lea ecx, [ebp - 0x30]
call sym.core::ptr::drop_in_place_LT_alloc..sync..Arc_LT_tokio..io..driver..Inner_GT__GT_::h56d2cb9a9f3ab99f
mov eax, dword [ebp - 0x5c]
mov ecx, dword [ebp - 0x58]
mov edx, dword [ebp - 0x28]
mov dword [edx + 8], 1
mov dword [edx + 0xc], eax
mov dword [edx + 0x10], ecx
lea eax, [ebp - 0x54]
mov ecx, dword [ebp - 0x3c]
movsd xmm0, qword [eax]
movsd qword [edx + 0x14], xmm0
mov eax, dword [eax + 8]
mov dword [edx + 0x1c], eax
mov dword [edx + 0x20], ecx
mov dword [edx + 0x24], edi
mov edi, edx
add edx, 8
and dword [edi + 0x28], 0
and dword [edi + 0x2c], 0
mov dword [edi + 0x30], edx
jmp 0x1005eb16
mov ecx, eax
shr ecx, 8
shl ecx, 8
movzx ebx, al
or ebx, ecx
lea ecx, [ebp - 0x30]
call sym.core::ptr::drop_in_place_LT_alloc..sync..Arc_LT_tokio..io..driver..Inner_GT__GT_::h56d2cb9a9f3ab99f
mov ecx, dword [ebp - 0x3c]
call sym.__LT_alloc..sync..Weak_LT_T_C_A_GT__u20_as_u20_core..ops..drop..Drop_GT_::drop::h72b03659f42e1d79
lea ecx, [ebp - 0x5c]
call sym.core::ptr::drop_in_place_LT_mio..net..tcp..TcpStream_GT_::he99fe4724bef523d
push 2
pop eax
mov ecx, dword [ebp - 0x34]
movsd xmm1, qword [ebp - 0x70]
movsd xmm0, qword [ebp - 0x78]
mov dword [ecx], eax
mov dword [ecx + 8], edi
mov dword [ecx + 4], ebx
movsd qword [ecx + 0x14], xmm1
movsd xmm1, qword [ebp - 0x68]
mov eax, dword [ebp - 0x60]
mov edi, dword [ebp - 0x28]
movsd qword [ecx + 0xc], xmm0
mov dword [ecx + 0x24], eax
movsd qword [ecx + 0x1c], xmm1
mov al, 1
mov byte [edi + 0x34], al
add esp, 0x74
pop esi
pop edi
pop ebx
pop ebp
ret
mov ecx, edi
mov edx, ebx
push 0x101c27c0
call dbg.panic_bounds_check
push 0x23
pop edx
mov ecx, str._async_fn__resumed_after_completion_home_lanbyshell_.cargo_registry_src_index.crates.io_6f17d22bba15001f_http_0.2.12_src_header_value.rsunable_to_find_any_user_specified_roots_in_the_final_cert_chainbytes_remaining_on_streamOut_of_bounds_accesspolling_StreamFuture_twice_home_lanbyshell_.cargo_registry_src_index.crates.io_6f17d22bba15001f_futures_util_0.3.30_src_stream_stream_into_future.rs
push 0x101b7d64
call dbg.panic
push 0x46
pop edx
mov ecx, 0x101c04a8
push 0x101c0540
push 0x101c067c
jmp 0x1005f1a6
push 0x55
pop edx
mov ecx, str.there_is_no_reactor_running__must_be_called_from_the_context_of_a_Tokio_0.2.x_runtime
push 0x101c0f1c
call dbg.expect_failed
mov eax, dword [ebp - 0x1c]
mov cl, byte [ebp - 0x18]
lea esi, [ebp - 0x80]
mov dword [esi], eax
mov byte [esi + 4], cl
push 0x2b
pop edx
mov ecx, str.called__Result::unwrap____on_an__Err__value
push 0x101c28c4
push 0x101c070c
push esi
call sym.core::result::unwrap_failed::hb9c5ac622931d85d
call sym.alloc::raw_vec::capacity_overflow::h5648a8ceafa88914
push 4
pop ecx
mov edx, ebx
call dbg.handle_alloc_error