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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x1e8
mov eax, dword [0x10163024]
mov edi, edx
lea edx, [esp + 0x68]
lea esi, [esp + 0xa8]
mov ebx, dword [ebp + 0x10]
mov dword [esp + 0x54], ecx
mov dword [edx], str._rustc_9b00956e56009bab2aa15d7bff10916599e3d6d6librarycore_srccharmethods.rs_g
and dword [edx + 4], 0
mov dword [esi + 8], 2
mov ecx, esi
mov dword [esi + 0x18], eax
add eax, 0x1c
mov dword [edx + 8], eax
call 0x1003297a
pop eax
mov dword [esp + 0x24], eax
call sym.tracing::span::Span::record_all::h86859229ee59b1aa
movsd xmm1, qword [esi + 8]
movsd xmm0, qword [esi]
movsd xmm2, qword [esi + 0x10]
movsd qword [esp + 0x178], xmm1
movsd xmm1, qword [esi + 0x18]
movsd qword [esp + 0x170], xmm0
movsd qword [esp + 0x180], xmm2
movsd qword [esp + 0x188], xmm1
cmp dword [esp + 0x178], 2
je 0x100329d8
lea ecx, [esp + 0x178]
lea edx, [esp + 0x170]
call sym.tracing_core::dispatcher::Dispatch::enter::h952e9fb5ca537f24
mov eax, dword [ebx]
mov ecx, edi
mov esi, dword [ecx + 8]
mov dword [esp + 0xc], ecx
mov eax, dword [eax + 4]
mov dword [esp + 0x18], eax
mov eax, dword [edi]
mov edi, dword [edi + 4]
mov dword [ecx], 2
test eax, eax
je 0x10032a2f
cmp eax, 1
jne 0x10032a4e
mov eax, dword [esp + 0xc]
mov edx, edi
lea ebx, [eax + 0xc]
mov ecx, ebx
call sym.h2::hpack::table::Table::resize::h25fb3df066db014e
mov ecx, ebx
mov ebx, dword [ebp + 0x10]
mov edx, esi
call sym.h2::hpack::table::Table::resize::h25fb3df066db014e
mov ecx, edi
mov edx, ebx
call sym.h2::hpack::encoder::encode_size_update::ha645110ff8ee6258
test al, al
jne 0x10033cc5
mov ecx, esi
jmp 0x10032a3f
mov eax, dword [esp + 0xc]
mov edx, edi
lea ecx, [eax + 0xc]
call sym.h2::hpack::table::Table::resize::h25fb3df066db014e
mov ecx, edi
mov edx, ebx
call sym.h2::hpack::encoder::encode_size_update::ha645110ff8ee6258
test al, al
jne 0x10033cc5
mov eax, dword [ebp + 8]
mov cl, 1
mov dword [esp + 0x1b8], 5
mov dword [esp + 0x98], ecx
mov eax, dword [eax]
cmp eax, 5
mov dword [esp + 0x150], eax
je 0x10032b23
push 0x10
pop ecx
mov esi, dword [ebp + 8]
lea edi, [esp + 0xa8]
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebx]
mov esi, dword [eax + 4]
lea eax, [esp + 0xd4]
cmp byte [eax + 0x10], 2
jne 0x10032aac
mov ecx, dword [esp + 0xc]
lea edx, [esp + 0xa8]
push ebx
call sym.h2::hpack::encoder::Encoder::encode_header::h99bd8b3facb3cd8c
pop ecx
jmp 0x10032ac0
mov ecx, dword [esp + 0xc]
lea edx, [esp + 0xa8]
push ebx
push eax
call sym.h2::hpack::encoder::Encoder::encode_header_without_name::hda9a16de5077db35
pop ecx
pop edx
test al, al
je 0x10032ae5
mov eax, dword [ebx]
cmp dword [eax + 4], esi
jb 0x10032ace
mov dword [eax + 4], esi
push 0x10
pop ecx
mov edi, dword [esp + 0x54]
lea esi, [esp + 0xa8]
xor ebx, ebx
rep movsd dword es:[edi], dword [esi]
jmp 0x10033bd7
push 0xb
pop ecx
lea edi, [esp + 0x68]
lea esi, [esp + 0xa8]
rep movsd dword es:[edi], dword [esi]
lea edi, [esp + 0x1b8]
mov ecx, edi
call sym.core::ptr::drop_in_place_LT_core..option..Option_LT_h2..hpack..table..Index_GT__GT_::he8f8baacb455ad75
push 0xb
pop ecx
lea esi, [esp + 0x68]
rep movsd dword es:[edi], dword [esi]
lea ecx, [esp + 0xd4]
call sym.core::ptr::drop_in_place_LT_core..option..Option_LT_http..header..value..HeaderValue_GT__GT_::h51da8b74c8cffb9f
mov dword [esp + 0x98], 0
mov esi, dword [esp + 0xc]
mov eax, dword [ebp + 0xc]
lea ecx, [esi + 0xc]
lea edi, [eax + 0x24]
mov dword [esp + 0x34], ecx
lea ecx, [esi + 0x18]
mov dword [esp + 0x9c], edi
mov dword [esp + 0xa4], ecx
lea ecx, [eax + 0x38]
mov dword [esp + 0x158], ecx
lea ecx, [eax + 0x48]
lea eax, [eax + 0x58]
mov dword [esp + 0x154], ecx
lea ecx, [esp + 0x68]
mov dword [esp + 0x14c], eax
mov dword [esp + 0x30], eax
cmp byte [edi], 0xc
jne 0x10032c53
mov ecx, edi
mov byte [esp + 0x18], dh
call sym.core::ptr::drop_in_place_LT_core..option..Option_LT_h2..frame..headers..Pseudo_GT__GT_::h15ecf06008d4f97c
mov edx, dword [ebp + 0xc]
lea ecx, [esp + 0xa8]
mov byte [edx + 0x24], 0xc
call sym.__LT_http..header..map..IntoIter_LT_T_GT__u20_as_u20_core..iter..traits..iterator..Iterator_GT_::next::h0533c8844af4bdb3
mov esi, dword [esp + 0xa8]
cmp esi, 2
je 0x10033c1c
lea edx, [esp + 0xac]
lea edi, [esi - 1]
movzx eax, word [esp + 0xac]
mov ecx, dword [edx + 0xc]
movsd xmm0, qword [edx + 4]
mov dword [esp + 0x60], ecx
mov ecx, dword [edx + 0x1c]
movsd qword [esp + 0x58], xmm0
movsd xmm0, qword [edx + 0x14]
mov dh, byte [esp + 0x18]
mov dl, 6
mov dword [esp + 0x148], ecx
mov cl, byte [esp + 0xcc]
movsd qword [esp + 0x140], xmm0
mov byte [esp + 0x21], cl
mov cl, byte [esp + 0xcd]
mov byte [esp + 0x11], cl
mov ecx, dword [ebx]
movzx ebx, word [esp + 0xae]
mov ecx, dword [ecx + 4]
mov dword [esp + 0x30], ebx
movzx ebx, word [esp + 0xbc]
mov dword [esp + 0x38], ecx
lea ecx, [esi - 2]
mov word [esp + 0x2e], bx
movzx ebx, word [esp + 0xbe]
cmp ecx, 5
mov ecx, 0
cmovae edi, ecx
mov cl, 2
mov edi, dword [edi*4 + 0x10033cf4]
mov word [esp + 0x1e], bx
movzx ebx, word [esp + 0xce]
add edi, dword [esp + 0x24]
mov word [esp + 0x3c], bx
jmp edi
movsd xmm0, qword [edi]
mov eax, dword [edi + 0x10]
movsd xmm1, qword [edi + 8]
mov byte [edi], 0xb
movsd qword [esp + 0x68], xmm0
mov dword [esp + 0x78], eax
movsd qword [esp + 0x70], xmm1
cmp byte [esp + 0x68], 0xb
jne 0x10032d0f
mov byte [esp + 0x18], dh
call sym.core::ptr::drop_in_place_LT_core..option..Option_LT_http..method..Method_GT__GT_::h1b66c50672551f1d
mov eax, dword [esp + 0x158]
movsd xmm0, qword [eax]
movsd xmm1, qword [eax + 8]
and dword [eax], 0
movsd qword [esp + 0xa8], xmm0
movsd qword [esp + 0xb0], xmm1
mov eax, dword [esp + 0xa8]
test eax, eax
je 0x10032e01
mov ecx, eax
lea edx, [esp + 0xac]
shr ecx, 0x10
movsd xmm0, qword [edx]
mov dword [esp + 0x30], ecx
mov ecx, dword [edx + 8]
movsd qword [esp + 0x58], xmm0
mov dword [esp + 0x60], ecx
mov ecx, dword [ebx]
mov ecx, dword [ecx + 4]
mov dword [esp + 0x38], ecx
push 4
pop ebx
lea ecx, [ebx - 2]
lea esi, [ebx - 1]
mov dh, byte [esp + 0x18]
mov dl, 6
cmp ecx, 5
mov ecx, 0
cmovae esi, ecx
mov cl, 2
mov edi, dword [esi*4 + 0x10033cf4]
mov esi, ebx
add edi, dword [esp + 0x24]
jmp edi
movzx ecx, word [esp + 0x6a]
movzx eax, word [esp + 0x68]
mov dword [esp + 0x30], ecx
lea ecx, [esp + 0x6c]
movsd xmm0, qword [ecx]
mov ecx, dword [ecx + 8]
mov dword [esp + 0x60], ecx
mov ecx, dword [ebx]
movsd qword [esp + 0x58], xmm0
mov ecx, dword [ecx + 4]
mov dword [esp + 0x38], ecx
push 3
pop ebx
lea ecx, [ebx - 2]
lea esi, [ebx - 1]
mov dl, 6
cmp ecx, 5
mov ecx, 0
cmovae esi, ecx
mov cl, 2
mov edi, dword [esi*4 + 0x10033cf4]
movzx esi, word [esp + 0x78]
add edi, dword [esp + 0x24]
mov word [esp + 0x2e], si
movzx esi, word [esp + 0x7a]
mov word [esp + 0x1e], si
mov esi, ebx
jmp edi
lea esi, [esp + 0xa8]
mov ecx, esi
call sym.core::ptr::drop_in_place_LT_core..option..Option_LT_h2..hpack..header..BytesStr_GT__GT_::h8363081ada4de860
mov eax, dword [esp + 0x154]
movsd xmm0, qword [eax]
movsd xmm1, qword [eax + 8]
and dword [eax], 0
movsd qword [esp + 0xa8], xmm0
movsd qword [esp + 0xb0], xmm1
mov eax, dword [esp + 0xa8]
test eax, eax
je 0x10032fab
mov ecx, eax
lea edx, [esp + 0xac]
shr ecx, 0x10
movsd xmm0, qword [edx]
mov dword [esp + 0x30], ecx
mov ecx, dword [edx + 8]
movsd qword [esp + 0x58], xmm0
mov dword [esp + 0x60], ecx
mov ecx, dword [ebx]
mov ecx, dword [ecx + 4]
mov dword [esp + 0x38], ecx
push 2
pop ebx
lea ecx, [ebx - 2]
lea esi, [ebx - 1]
mov dh, byte [esp + 0x18]
mov dl, 6
cmp ecx, 5
mov ecx, 0
cmovae esi, ecx
mov cl, 2
mov edi, dword [esi*4 + 0x10033cf4]
mov esi, ebx
add edi, dword [esp + 0x24]
jmp edi
mov ecx, esi
call sym.core::ptr::drop_in_place_LT_core..option..Option_LT_h2..hpack..header..BytesStr_GT__GT_::h8363081ada4de860
mov eax, dword [esp + 0x14c]
movsd xmm0, qword [eax]
movsd xmm1, qword [eax + 8]
and dword [eax], 0
movsd qword [esp + 0xa8], xmm0
movsd qword [esp + 0xb0], xmm1
mov eax, dword [esp + 0xa8]
test eax, eax
je 0x10033037
mov ecx, eax
lea edx, [esp + 0xac]
shr ecx, 0x10
movsd xmm0, qword [edx]
mov dword [esp + 0x30], ecx
mov ecx, dword [edx + 8]
movsd qword [esp + 0x58], xmm0
mov dword [esp + 0x60], ecx
mov ecx, dword [ebx]
mov ecx, dword [ecx + 4]
mov dword [esp + 0x38], ecx
push 5
pop ebx
lea ecx, [ebx - 2]
lea esi, [ebx - 1]
mov dh, byte [esp + 0x18]
mov dl, 6
cmp ecx, 5
mov ecx, 0
cmovae esi, ecx
mov cl, 2
mov edi, dword [esi*4 + 0x10033cf4]
mov esi, ebx
add edi, dword [esp + 0x24]
jmp edi
mov ecx, esi
call sym.core::ptr::drop_in_place_LT_core..option..Option_LT_h2..hpack..header..BytesStr_GT__GT_::h8363081ada4de860
mov ecx, dword [ebp + 0xc]
mov dh, byte [esp + 0x18]
movzx eax, word [ecx + 0x68]
and word [ecx + 0x68], 0
test ax, ax
je 0x10032b74
mov ecx, dword [ebx]
mov ecx, dword [ecx + 4]
mov dword [esp + 0x38], ecx
push 6
pop ebx
lea ecx, [ebx - 2]
lea esi, [ebx - 1]
mov dl, 6
cmp ecx, 5
mov ecx, 0
cmovae esi, ecx
mov cl, 2
mov edi, dword [esi*4 + 0x10033cf4]
mov esi, ebx
add edi, dword [esp + 0x24]
jmp edi
lea ecx, [esp + 0x1b8]
call sym.core::ptr::drop_in_place_LT_core..option..Option_LT_h2..hpack..table..Index_GT__GT_::he8f8baacb455ad75
lea esi, [esp + 0x170]
mov ecx, esi
call sym.core::ptr::drop_in_place_LT_tracing..span..Entered_GT_::h4ff1c8d0357b79b9
mov ecx, esi
call sym.core::ptr::drop_in_place_LT_tracing..span..Span_GT_::h2def6da7ce82a54f
test bl, bl
je 0x10033c47
cmp dword [esp + 0x150], 5
je 0x10033c47
mov esi, dword [ebp + 8]
mov ecx, esi
call sym.core::ptr::drop_in_place_LT_h2..hpack..table..Index_GT_::h09a2c7dded761787
add esi, 0x2c
mov ecx, esi
call sym.core::ptr::drop_in_place_LT_core..option..Option_LT_http..header..value..HeaderValue_GT__GT_::h51da8b74c8cffb9f
jmp 0x10033c47
mov eax, dword [esp + 0x54]
lea ecx, [esp + 0x1b8]
mov dword [eax], 5
call sym.core::ptr::drop_in_place_LT_core..option..Option_LT_h2..hpack..table..Index_GT__GT_::he8f8baacb455ad75
lea esi, [esp + 0x170]
mov ecx, esi
call sym.core::ptr::drop_in_place_LT_tracing..span..Entered_GT_::h4ff1c8d0357b79b9
mov ecx, esi
call sym.core::ptr::drop_in_place_LT_tracing..span..Span_GT_::h2def6da7ce82a54f
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, dword [ebx]
mov ecx, dword [esp + 0x18]
cmp dword [eax + 4], ecx
jb 0x10033cd7
mov ecx, dword [esp + 0x18]
mov dword [eax + 4], ecx
call sym.core::panicking::unreachable_display::h48571e7f86f9004e
mov edx, esi
push 0x1019f1fc
call dbg.slice_start_index_len_fail
mov ecx, 0x10195e24
call dbg.unwrap_failed
nop
cld
add eax, dword [eax]
add byte [edx], dh
pop es
add byte [eax], al
or eax, 0x2c000007
pop es
add byte [eax], al
xor byte [edi], al
add byte [eax], al
insd dword es:[edi], dx
pop es
add byte [eax], al
xor dword [eax], ecx
add byte [eax], al
jne 0x10033d1d
add byte [eax], al
mov edi, 0xf1000008
or byte [eax], al
add byte [eax + 8], dl
add byte [eax], al
push esp
or dword [eax], eax
or byte [eax], al
add byte [ecx + ecx], dl
add byte [ebp + 0xb], dh
add byte [eax], al
in al, dx
or dword [eax], eax
add dh, ch
or al, byte [eax]
add byte [esi], ah
or eax, dword [eax]
add byte [ecx - 0x2afffff6], dh
adc dword [eax], eax
add ch, dl
adc dword [eax], eax
add ch, dl
adc dword [eax], eax
add ch, cl
or al, byte [eax]
add ch, dl
adc dword [eax], eax
add ch, dl
adc dword [eax], eax
add ch, dl
adc dword [eax], eax
add ch, dl
adc dword [eax], eax
add byte [ecx - 0x2bfffff8], bl
or al, byte [eax]
add ch, dl
adc dword [eax], eax
add byte [edx], dh
or eax, dword [eax]
add byte [esi], ch
or eax, dword [eax]
add ch, dl
adc dword [eax], eax
add ch, dl
adc dword [eax], eax
add ch, dl
adc dword [eax], eax
add byte [edx + 0xa], dh
add byte [eax], al
mov eax, 0x9500000a
or al, byte [eax]
add byte [ebp + 0xa], bl
add byte [eax], al
loop 0x10033d94
add byte [eax], al
out 0xa, al
add byte [eax], al
aad 0x11
add byte [eax], al
aad 0x11
add byte [eax], al
or eax, dword ds:[eax]
add byte [esi], dh
or eax, dword [eax]
add ch, dl
adc dword [eax], eax
add byte [edi + 0xa], cl
add byte [eax], al
pushfd
or al, byte [eax]
add byte [esi + 0xb], al
add byte [eax], al
push esi
or al, byte [eax]
add ch, dl
adc dword [eax], eax
add byte [esi + 0x6b00000a], cl
or al, byte [eax]
add byte [edi + 0x6400000a], bh
or al, byte [eax]
add byte [esi + 0xb], cl
add byte [eax], al
dec edx
or eax, dword [eax]
add byte [eax - 0x5cfffff6], al
or al, byte [eax]
add dl, ch
or al, byte [eax]
add byte [edx + 0x6200000a], ch
or eax, dword [eax]
add ch, dl
adc dword [eax], eax
add ch, dl
adc dword [eax], eax
add byte [ecx + 0xa], bh
add byte [eax], al
cmp cl, byte [ebx]
add byte [eax], al
aad 0x11
add byte [eax], al
aad 0x11
add byte [eax], al
pop esi
or eax, dword [eax]
add byte [ecx + 0xa], al
add byte [eax], al
aad 0x11
add byte [eax], al
sub cl, byte [ebx]
add byte [eax], al
cmp cl, byte [edx]
add byte [eax], al
aad 0x11
add byte [eax], al
aad 0x11
add byte [eax], al
aad 0x11
add byte [eax], al
aad 0x11
add byte [eax], al
aad 0x11
add byte [eax], al
xor ecx, dword [edx]
add byte [eax], al
xchg dword [edx], ecx
add byte [eax], al
invalid