Function at 0x100de1cc
Capabilities:
Receive data
Receive data on socket

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x40
mov edi, dword [ebp + 8]
mov esi, ecx
lea ebx, [ebp - 0x30]
mov dword [ebp - 0x40], edx
mov ecx, ebx
push edi
call sym.tokio::io::poll_evented::PollEvented_LT_E_GT_::poll_read_ready::hcbdb4484144b904a
pop eax
cmp byte [ebx], 5
jne 0x100de1f6
mov byte [esi], 5
jmp 0x100de32c
mov eax, dword [ebp - 0x30]
cmp al, 4
jne 0x100de252
mov ecx, dword [ebp - 0x40]
mov dword [ebp - 0x24], esi
mov esi, dword [ebp + 0x10]
call sym.tokio::io::poll_evented::PollEvented_LT_E_GT_::get_ref::hdc658bb155c9d898
test esi, esi
je 0x100de25f
mov ecx, dword [ebp + 0xc]
mov dword [ebp - 0x4c], esi
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x48], ecx
mov ecx, dword [eax]
call sym.mio::sys::windows::tcp::StreamImp::inner::h0a06bd42461a18a4
mov dh, byte [eax + 0x48]
and dl, 1
mov byte [ebp - 0xd], dl
add dh, 0xfc
movzx ecx, dh
cmp dh, 3
push 3
pop ebx
cmovb ebx, ecx
mov dword [ebp - 0x34], eax
cmp bl, 2
jae 0x100de26f
mov dword [ebp - 0x14], 0
mov ebx, 0xd01
xor esi, esi
jmp 0x100de2ad
mov ecx, dword [ebp - 0x2c]
mov dword [esi], eax
mov dword [esi + 4], ecx
jmp 0x100de32c
and dword [ebp - 0x18], 0
mov byte [ebp - 0x1c], 4
mov esi, dword [ebp - 0x24]
jmp 0x100de323
mov esi, eax
movzx ecx, bl
lea edx, [eax + 4]
add esi, 0x48
cmp ecx, 3
jne 0x100de334
mov ecx, dword [esi + 4]
mov eax, dword [esi]
and dword [esi + 4], 0
mov dword [esi], 4
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp - 0x28]
test al, 0xfc
jne 0x100de47f
mov ebx, eax
call sym.mio::sys::windows::tcp::StreamImp::schedule_read::hbdf9ce28551ddb64
mov esi, dword [ebp - 0x14]
shr esi, 8
movzx edx, byte [ebp - 0xd]
mov ecx, dword [ebp - 0x34]
call sym.__ZN4core3ptr108drop_in_place_LT_std..sync..mutex..MutexGuard_LT_core..option..Option_LT_mio..poll..Registration_GT__GT__GT_17
movzx eax, byte [ebp - 0x14]
shl esi, 8
mov dword [ebp - 0x1c], ebx
or eax, esi
mov esi, dword [ebp - 0x24]
mov dword [ebp - 0x18], eax
cmp bl, 4
je 0x100de323
lea ecx, [ebp - 0x1c]
call sym.__ZN3std2io5error5Error4kind17h56131edcda4d7810E.1767
cmp al, 0xd
jne 0x100de323
mov edx, dword [ebp - 0x40]
lea ebx, [ebp - 0x30]
mov ecx, ebx
lock and dword [edx + 0x20], 0xfffffffe
push edi
call sym.tokio::io::poll_evented::PollEvented_LT_E_GT_::poll_read_ready::hcbdb4484144b904a
pop eax
movzx eax, byte [ebx]
cmp eax, 4
je 0x100de3c7
cmp eax, 5
je 0x100de3d4
mov eax, dword [ebp - 0x30]
cmp al, 4
je 0x100de3d4
je 0x100de3d4
mov ecx, dword [ebp - 0x2c]
mov dword [esi], eax
mov dword [esi + 4], ecx
jmp 0x100de3d7
movsd xmm0, qword [ebp - 0x1c]
movsd qword [esi], xmm0
add esp, 0x40
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, dword [ebp - 0x28]
xor ecx, ecx
mov dword [ebp - 0x3c], esi
mov dword [ebp - 0x38], edx
push 0xfffffffffffffff8
pop esi
test esi, esi
je 0x100de381
mov ebx, edi
mov edi, dword [ebp + esi - 0x44]
mov eax, dword [eax]
mov dword [ebp - 0x14], ecx
mov ecx, 0x7fffffff
cmp edi, ecx
cmovb ecx, edi
push 0
push ecx
push dword [ebp + esi - 0x40]
push dword [eax]
call sub.ws2_32.dll_recv
cmp eax, 0xffffffff
je 0x100de399
mov ecx, dword [ebp - 0x14]
add esi, 8
add ecx, eax
cmp eax, edi
mov eax, dword [ebp - 0x28]
mov edi, ebx
jae 0x100de342
jmp 0x100de3aa
mov dword [ebp - 0x18], ecx
movzx edx, byte [ebp - 0xd]
mov ecx, dword [ebp - 0x34]
mov byte [ebp - 0x1c], 4
call sym.__ZN4core3ptr108drop_in_place_LT_std..sync..mutex..MutexGuard_LT_core..option..Option_LT_mio..poll..Registration_GT__GT__GT_17
jmp 0x100de267
call sub.ws2_32.dll_WSAGetLastError
cmp eax, 0x274a
jne 0x100de3e4
mov ecx, dword [ebp - 0x14]
mov edi, ebx
mov bl, 4
mov dword [ebp - 0x18], ecx
mov byte [ebp - 0x1c], 4
mov esi, dword [ebp - 0x24]
movzx edx, byte [ebp - 0xd]
mov ecx, dword [ebp - 0x34]
call sym.__ZN4core3ptr108drop_in_place_LT_std..sync..mutex..MutexGuard_LT_core..option..Option_LT_mio..poll..Registration_GT__GT__GT_17
jmp 0x100de2cb
mov eax, dword [edi]
mov ecx, dword [eax]
push dword [eax + 4]
call dword [ecx + 8]
add esp, 4
mov byte [esi], 5
lea ecx, [ebp - 0x1c]
call sym.core::ptr::drop_in_place_LT_core..result..Result_LT_usize_C_std..io..error..Error_GT__GT_::hc126e1dfd3e2f161
jmp 0x100de32c
and dword [ebp - 0x30], 0
cmp dword [ebp - 0x14], 0
mov edi, ebx
mov ebx, eax
mov dword [ebp - 0x2c], eax
je 0x100de43f
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x44], ebx
call sym.std::io::error::Error::kind::h56131edcda4d7810
mov ebx, dword [ebp - 0x3c]
mov byte [ebp - 0x1d], al
mov ecx, ebx
call sym.core::ptr::drop_in_place_LT_mio..sys..windows..tcp..State_LT__LP__RP__C__LP__RP__GT__GT_::h7d8fca943df61d06
cmp byte [ebp - 0x1d], 0xd
mov esi, dword [ebp - 0x24]
jne 0x100de465
mov ecx, dword [ebp - 0x28]
mov edx, dword [ebp - 0x38]
mov al, 4
mov byte [ebx], al
mov bl, 4
call sym.mio::sys::windows::tcp::StreamImp::schedule_read::hbdf9ce28551ddb64
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x30]
mov byte [ebp - 0x1c], bl
push eax
call sym.core::ptr::drop_in_place_LT_std..io..error..Error_GT_::h32f5383628deadbc
pop eax
jmp 0x100de3b6
mov esi, dword [ebp - 0x3c]
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 ecx, dword [ebp - 0x28]
mov edx, dword [ebp - 0x38]
mov byte [esi], 4
call sym.mio::sys::windows::tcp::StreamImp::schedule_read::hbdf9ce28551ddb64
and dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], ebx
xor ebx, ebx
jmp 0x100de3b3
mov eax, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x14]
and dword [ebx], 0
mov dword [ebx + 4], eax
mov dword [ebp - 0x18], ecx
mov byte [ebp - 0x1c], 4
mov bl, 4
jmp 0x100de3b6
push 0xe
pop edx
mov ecx, 0x101b37db
push 0x101b37ec
call sym.std::panicking::begin_panic::h656122f32956c99b