Function at 0x1005c518
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x100
mov esi, dword [ebp + 8]
mov ebx, ecx
mov dword [esp + 0x14], edx
mov dword [esp + 0x10], ecx
cmp byte [esi + 8], 2
jne 0x1005c580
cmp dword [ebx + 0x3c], 0
je 0x1005c580
mov edi, dword [esp + 0x14]
mov ecx, dword [ebx + 0x40]
mov edx, dword [ebx + 0x44]
lea eax, [ebx + 0x30]
mov dword [esp + 0xc], eax
push edi
push dword [ebx + 0x4c]
push dword [ebx + 0x48]
call sym.core::hash::BuildHasher::hash_one::hf68754dfd71b72b4
add esp, 0xc
mov ecx, dword [esp + 0xc]
mov ebx, edx
mov edx, eax
push edi
push ebx
mov ebx, dword [esp + 0x18]
call sym.hashbrown::raw::RawTable_LT_T_C_A_GT_::find::hf148a94438f9d58a
pop ecx
pop edx
test eax, eax
je 0x1005c580
mov ecx, esi
jmp 0x1005cab4
movq xmm0, qword [esi + 0x10]
movsd xmm2, qword [esi]
movq xmm1, qword [esi + 8]
mov edx, dword [esp + 0x14]
lea ecx, [ebx + 0x50]
mov dword [esp + 0x18], ecx
movq qword [esp + 0x48], xmm0
movq qword [esp + 0x40], xmm1
movsd qword [esp + 0x38], xmm2
call sym.hashbrown::map::HashMap_LT_K_C_V_C_S_C_A_GT_::get_mut::h124f72259d794825
test eax, eax
je 0x1005c8eb
mov ebx, eax
xor edi, edi
mov eax, dword [ebx + 0xc]
test eax, eax
je 0x1005c8d0
mov ecx, dword [ebx + 8]
mov esi, dword [ebx]
lea edx, [ecx + 1]
cmp edx, esi
mov edx, dword [ebx + 4]
cmovb esi, edi
dec eax
neg esi
lea esi, [ecx + esi + 1]
mov dword [ebx + 8], esi
mov dword [ebx + 0xc], eax
mov eax, dword [edx + ecx*4]
mov dword [esp + 0x74], eax
mov al, byte [eax + 0x3c]
test al, al
je 0x1005c5fd
lea ecx, [esp + 0x74]
call sym.__ZN4core3ptr131drop_in_place_LT_futures_channel..oneshot..Sender_LT_hyper..client..PoolClient_LT_reqwest..async_impl..body..I
jmp 0x1005c5bc
mov al, byte [esp + 0x4d]
movzx ecx, word [esp + 0x4e]
mov byte [esp + 0x4d], 2
cmp al, 2
je 0x1005cbc0
movsd xmm0, qword [esp + 0x45]
movsd xmm2, qword [esp + 0x38]
movsd xmm1, qword [esp + 0x40]
lea edx, [esp + 0xc8]
movsd qword [esp + 0xd5], xmm0
movsd qword [esp + 0xd0], xmm1
movsd qword [esp + 0xc8], xmm2
mov byte [esp + 0xdd], al
mov word [esp + 0xde], cx
lea ecx, [esp + 0x78]
call sym.__LT_hyper..client..PoolClient_LT_B_GT__u20_as_u20_hyper..client..pool..Poolable_GT_::reserve::h488a2146818bd116
mov al, byte [esp + 0xa5]
cmp al, 2
jne 0x1005c6a9
movsd xmm0, qword [esp + 0x85]
movsd xmm2, qword [esp + 0x78]
mov al, byte [esp + 0x8d]
movzx esi, word [esp + 0x8e]
movsd xmm1, qword [esp + 0x80]
movsd qword [esp + 0x2d], xmm0
movsd qword [esp + 0x28], xmm1
movsd qword [esp + 0x20], xmm2
mov byte [esp + 0xc], al
jmp 0x1005c70f
lea ecx, [esp + 0x90]
movzx esi, word [esp + 0xa6]
mov byte [esp + 0xc], al
movsd xmm0, qword [ecx + 0xd]
movsd xmm2, qword [ecx]
movsd xmm1, qword [ecx + 8]
lea ecx, [esp + 0x38]
movsd qword [esp + 0x2d], xmm0
movsd qword [esp + 0x28], xmm1
movsd qword [esp + 0x20], xmm2
call sym.__ZN4core3ptr119drop_in_place_LT_core..option..Option_LT_hyper..client..PoolClient_LT_reqwest..async_impl..body..ImplStream_GT
movsd xmm0, qword [esp + 0x88]
movsd xmm2, qword [esp + 0x78]
movsd xmm1, qword [esp + 0x80]
movsd qword [esp + 0x48], xmm0
movsd qword [esp + 0x40], xmm1
movsd qword [esp + 0x38], xmm2
mov edi, dword [esp + 0x74]
mov dword [esp + 0xac], edi
mov al, byte [edi + 0x3c]
test al, al
jne 0x1005c72e
mov al, 1
xchg byte [edi + 0x20], al
test al, al
je 0x1005c7ce
movq xmm0, qword [esp + 0x2d]
movsd xmm2, qword [esp + 0x20]
movq xmm1, qword [esp + 0x28]
mov word [esp + 0xb0], si
movq qword [esp + 0x5d], xmm0
movq qword [esp + 0x58], xmm1
movsd qword [esp + 0x50], xmm2
lea ecx, [esp + 0xac]
call sym.__ZN4core3ptr131drop_in_place_LT_futures_channel..oneshot..Sender_LT_hyper..client..PoolClient_LT_reqwest..async_impl..body..I
mov al, byte [esp + 0xc]
mov edi, 0
cmp al, 2
jne 0x1005c783
cmp byte [esp + 0x4d], 2
jne 0x1005c5bc
jmp 0x1005c8ca
lea ecx, [esp + 0x38]
mov byte [esp + 0xc], al
call sym.__ZN4core3ptr119drop_in_place_LT_core..option..Option_LT_hyper..client..PoolClient_LT_reqwest..async_impl..body..ImplStream_GT
movq xmm0, qword [esp + 0x5d]
movsd xmm2, qword [esp + 0x50]
movq xmm1, qword [esp + 0x58]
mov al, byte [esp + 0xc]
movzx ecx, word [esp + 0xb0]
movq qword [esp + 0x45], xmm0
movq qword [esp + 0x40], xmm1
movsd qword [esp + 0x38], xmm2
mov byte [esp + 0x4d], al
mov word [esp + 0x4e], cx
jmp 0x1005c5bc
cmp byte [edi + 0x1d], 2
jne 0x1005cbd2
lea ecx, [edi + 8]
mov dword [esp + 0x1c], ecx
call sym.__ZN4core3ptr119drop_in_place_LT_core..option..Option_LT_hyper..client..PoolClient_LT_reqwest..async_impl..body..ImplStream_GT
mov ecx, dword [esp + 0x1c]
movsd xmm0, qword [esp + 0x2d]
mov al, byte [esp + 0xc]
movsd qword [ecx + 0xd], xmm0
movq xmm0, qword [esp + 0x20]
movq xmm1, qword [esp + 0x28]
movq qword [ecx + 8], xmm1
movq qword [ecx], xmm0
mov byte [edi + 0x1d], al
mov word [edi + 0x1e], si
xor eax, eax
xchg byte [edi + 0x20], al
mov al, byte [edi + 0x3c]
mov byte [esp + 0xc], 2
test al, al
je 0x1005c75a
mov al, 1
xchg byte [edi + 0x20], al
test al, al
jne 0x1005c75a
movsd xmm0, qword [ecx + 0x10]
movsd qword [esp + 0x88], xmm0
movq xmm0, qword [ecx]
movq xmm1, qword [ecx + 8]
movq qword [esp + 0x80], xmm1
movq qword [esp + 0x78], xmm0
mov byte [edi + 0x1d], 2
mov al, byte [esp + 0x8d]
cmp al, 2
jne 0x1005c882
lea ecx, [esp + 0x78]
call sym.__ZN4core3ptr119drop_in_place_LT_core..option..Option_LT_hyper..client..PoolClient_LT_reqwest..async_impl..body..ImplStream_GT
xor eax, eax
xchg byte [edi + 0x20], al
mov byte [esp + 0xc], 2
jmp 0x1005c75a
mov byte [esp + 0xc], al
movq xmm0, qword [esp + 0x85]
movsd xmm2, qword [esp + 0x78]
movzx eax, word [esp + 0x8e]
movq xmm1, qword [esp + 0x80]
movq qword [esp + 0x5d], xmm0
mov word [esp + 0xb0], ax
movq qword [esp + 0x58], xmm1
movsd qword [esp + 0x50], xmm2
xor eax, eax
xchg byte [edi + 0x20], al
jmp 0x1005c75a
cmp dword [ebx + 0xc], 0
jne 0x1005c8eb
mov edx, dword [esp + 0x18]
lea esi, [esp + 0x78]
mov ecx, esi
push dword [esp + 0x14]
call sym.hashbrown::map::HashMap_LT_K_C_V_C_S_C_A_GT_::remove::had57eba3e552ad50
pop eax
mov ecx, esi
call sym.__ZN4core3ptr206drop_in_place_LT_core..option..Option_LT_alloc..collections..vec_deque..VecDeque_LT_futures_channel..oneshot..
cmp byte [esp + 0x4d], 2
je 0x1005cab9
mov esi, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
lea edi, [esp + 0x78]
mov ecx, edi
lea eax, [esi + 0x30]
mov dword [esp + 0x18], eax
call sym.core::clone::Clone::clone::hd6d5a46ee3bb8af2
mov edx, dword [esi + 0x44]
mov ecx, dword [esi + 0x40]
lea eax, [esi + 0x40]
mov dword [esp + 0xa8], eax
push edi
push dword [esi + 0x4c]
push dword [esi + 0x48]
call sym.core::hash::BuildHasher::hash_one::hf68754dfd71b72b4
add esp, 0xc
mov ecx, eax
mov dword [esp + 0x70], edx
mov edx, dword [esi + 0x30]
mov esi, dword [esi + 0x34]
mov dword [esp + 0x6c], eax
mov dword [esp + 0x1c], 0
shr ecx, 0x19
movd xmm0, ecx
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
mov dword [esp + 0xc], esi
and esi, eax
pshufd xmm1, xmm0, 0
movdqa xmmword [esp + 0xe0], xmm1
movdqu xmm0, xmmword [edx + esi]
mov ebx, edx
movdqa xmmword [esp + 0xb0], xmm0
pcmpeqb xmm0, xmm1
pmovmskb eax, xmm0
mov word [esp + 0x20], ax
lea ecx, [esp + 0x20]
call sym.__ZN95__LT_hashbrown..raw..bitmask..BitMaskIter_u20_as_u20_core..iter..traits..iterator..Iterator_GT_4next17h86e2910f2b3b32cfE
test eax, eax
je 0x1005c9b3
add edx, esi
and edx, dword [esp + 0xc]
neg edx
imul edi, edx, 0x24
lea edx, [esp + 0x78]
lea ecx, [ebx + edi - 0x24]
call sym.core::tuple::__LT_impl_u20_core..cmp..PartialEq_u20_for_u20__LP_U_C_T_RP__GT_::eq::h9f356e71f9cc3959
test al, al
je 0x1005c988
jmp 0x1005c9f3
movdqa xmm1, xmmword [esp + 0xb0]
pcmpeqd xmm0, xmm0
pcmpeqb xmm1, xmm0
pmovmskb eax, xmm1
test eax, eax
jne 0x1005caca
mov eax, dword [esp + 0x1c]
movdqa xmm1, xmmword [esp + 0xe0]
mov edx, ebx
lea esi, [esi + eax + 0x10]
add eax, 0x10
and esi, dword [esp + 0xc]
mov dword [esp + 0x1c], eax
jmp 0x1005c96b
movsd xmm0, qword [esp + 0x78]
movsd xmm1, qword [esp + 0x80]
mov eax, dword [esp + 0x88]
mov edx, dword [esp + 0x8c]
add ebx, edi
movsd qword [esp + 0x53], xmm0
movsd qword [esp + 0x5b], xmm1
mov dword [esp + 0x63], eax
mov eax, dword [esp + 0x63]
movsd xmm0, qword [esp + 0x53]
movsd xmm1, qword [esp + 0x5b]
lea ecx, [esp + 0x78]
mov dword [ecx + 0x10], eax
movsd qword [ecx + 8], xmm1
movsd qword [ecx], xmm0
mov dword [ecx + 0x14], edx
mov edx, dword [esp + 0x18]
mov dword [ecx + 0x18], ebx
mov dword [esp + 0x33], eax
movsd qword [esp + 0x2b], xmm1
movsd qword [esp + 0x23], xmm0
mov dword [ecx + 0x1c], edx
call sym.__ZN4core3ptr116drop_in_place_LT_core..option..Option_LT__LP_http..uri..scheme..Scheme_C_http..uri..authority..Authority_RP__G
mov esi, dword [esp + 0x10]
mov eax, dword [esi + 0x70]
cmp eax, dword [ebx - 4]
jbe 0x1005cab0
movsd xmm0, qword [esp + 0x48]
movsd xmm2, qword [esp + 0x38]
movsd xmm1, qword [esp + 0x40]
lea esi, [esp + 0x78]
add ebx, 0xfffffff4
movsd qword [esi + 0x10], xmm0
movsd qword [esi + 8], xmm1
movsd qword [esi], xmm2
call sym.std::time::Instant::now::hde9c0d73c3f11fa1
mov dword [esi + 0x1c], edx
mov dword [esi + 0x18], eax
mov dword [esi + 0x20], ecx
mov ecx, ebx
mov edx, esi
call sym.alloc::vec::Vec_LT_T_C_A_GT_::push::hd6a6f25b62b10f01
jmp 0x1005cab9
lea ecx, [esp + 0x38]
call sym.core::ptr::drop_in_place_LT_hyper..client..PoolClient_LT_reqwest..async_impl..body..ImplStream_GT__GT_::h5a61567e021f0c1e
mov ecx, dword [esp + 0x14]
call sym.core::ptr::drop_in_place_LT__LP_http..uri..scheme..Scheme_C_http..uri..authority..Authority_RP__GT_::h1a3e07909a469c23
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x38], 0
je 0x1005cbab
mov bl, byte [esp + 0x78]
movsd xmm0, qword [esp + 0x79]
movsd xmm2, qword [esp + 0x81]
movsd xmm1, qword [esp + 0x88]
cmp bl, 3
movsd qword [esp + 0x58], xmm2
movsd qword [esp + 0x50], xmm0
movsd qword [esp + 0x5f], xmm1
jne 0x1005cb18
mov ebx, dword [esp + 0x70]
mov edx, dword [esp + 0x6c]
jmp 0x1005ca22
mov esi, dword [esp + 0x10]
lea eax, [esp + 0x79]
movsd xmm0, qword [eax + 0xf]
movsd xmm2, qword [eax]
movsd xmm1, qword [eax + 8]
mov ecx, dword [esi + 0x30]
mov edx, dword [esi + 0x34]
movsd qword [esp + 0x2f], xmm0
movsd qword [esp + 0x28], xmm1
movsd qword [esp + 0x20], xmm2
push dword [esp + 0x70]
push dword [esp + 0x70]
call sym.hashbrown::raw::RawTableInner::prepare_insert_slot::hddc661eb0b13c37a
pop ecx
pop ecx
mov ecx, dword [esi + 0x30]
and dl, 1
neg eax
movzx edx, dl
imul eax, eax, 0x24
sub dword [esi + 0x38], edx
mov byte [ecx + eax - 0x24], bl
lea ebx, [ecx + eax]
movsd xmm0, qword [esp + 0x20]
movsd xmm1, qword [esp + 0x28]
movsd qword [ecx + eax - 0x23], xmm0
movsd qword [ecx + eax - 0x1b], xmm1
movsd xmm0, qword [esp + 0x2f]
movsd qword [ecx + eax - 0x14], xmm0
and dword [ecx + eax - 0xc], 0
mov dword [ecx + eax - 8], 8
and dword [ecx + eax - 4], 0
inc dword [esi + 0x3c]
jmp 0x1005ca68
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0xa8]
call sym.hashbrown::raw::RawTable_LT_T_C_A_GT_::reserve_rehash::ha1fde177ac8c8182
jmp 0x1005cad8
push 0x12
pop edx
mov ecx, str.value_already_sent
push 0x101bb3dc
call dbg.expect_failed
push 0x20
pop edx
mov ecx, 0x101b8f60
push 0x101b8fec
call dbg.panic