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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x60
mov edx, dword [esp + 0x78]
mov ecx, dword [esp + 0x84]
mov esi, dword [esp + 0x80]
mov edi, dword [esp + 0x7c]
mov eax, dword [esp + 0x74]
cmp edx, 0x101
jb 0x10058acd
cmp byte [eax + 0x100], 0xbf
mov ebx, pe_nt_image_headers32
jg 0x10058ab8
cmp byte [eax + 0xff], 0xbf
mov ebx, 0xff
jg 0x10058ab8
cmp byte [eax + 0xfe], 0xbf
mov ebx, 0xfe
jg 0x10058ab8
mov ebx, 0xfd
cmp ebx, edx
jae 0x10058aec
cmp byte [eax + ebx], 0xbf
jg 0x10058aee
push ecx
push ebx
push 0
push edx
push eax
call sym.kso.dll_core::str::slice_error_fail::h02ba8aa33d35e572
xor ebp, ebp
mov ebx, str.librarycore_src_num_f32.rs
mov dword [esp], eax
mov dword [esp + 4], edx
cmp edi, edx
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x50], ebp
jbe 0x10058b20
jmp 0x10058ba2
jne 0x10058ac2
mov dword [esp], eax
xor eax, eax
cmp ebx, edx
mov dword [esp + 4], ebx
mov ebp, str._..._begin___end_______when_slicing___Ym_b
mov ebx, str.librarycore_src_num_f32.rs
setb al
cmovb ebx, ebp
lea ebp, [eax + eax*4]
mov eax, dword [esp + 0x74]
cmp edi, edx
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x50], ebp
ja 0x10058ba2
cmp esi, edx
ja 0x10058ba2
cmp edi, esi
mov ebp, ecx
jbe 0x10058c0c
lea eax, [esp + 0x7c]
lea edx, [esp + 0x80]
mov ecx, esp
mov dword [esp + 0xc], 0x10086d7c
mov dword [esp + 0x10], 4
mov dword [esp + 0x1c], 0
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], sym.kso.dll_core::fmt::num::imp::__impl_core::fmt::Display_for_u32_::fmt::hcb31be901129fabf
mov dword [esp + 0x2c], edx
mov dword [esp + 0x30], sym.kso.dll_core::fmt::num::imp::__impl_core::fmt::Display_for_u32_::fmt::hcb31be901129fabf
mov dword [esp + 0x34], ecx
lea ecx, [esp + 0x24]
lea edx, [esp + 0x4c]
mov dword [esp + 0x38], 0x100645c0
mov dword [esp + 0x3c], edx
mov dword [esp + 0x14], ecx
mov dword [esp + 0x40], 0x100645c0
mov dword [esp + 0x18], 4
lea eax, [esp + 0xc]
push ebp
push eax
call sym.kso.dll_core::panicking::panic_fmt::h502dc0a95427940e
lea eax, [esp + 0x54]
cmp edi, edx
mov dword [esp + 0xc], 0x10086e1c
mov dword [esp + 0x10], 3
mov dword [esp + 0x1c], 0
mov dword [esp + 0x24], eax
mov eax, esp
mov dword [esp + 0x28], sym.kso.dll_core::fmt::num::imp::__impl_core::fmt::Display_for_u32_::fmt::hcb31be901129fabf
cmova esi, edi
mov dword [esp + 0x2c], eax
lea eax, [esp + 0x4c]
mov dword [esp + 0x30], 0x100645c0
mov dword [esp + 0x54], esi
mov dword [esp + 0x34], eax
lea eax, [esp + 0x24]
mov dword [esp + 0x38], 0x100645c0
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], 3
lea eax, [esp + 0xc]
push ecx
push eax
call sym.kso.dll_core::panicking::panic_fmt::h502dc0a95427940e
test edi, edi
je 0x10058c1a
cmp edi, edx
jae 0x10058c1a
cmp byte [eax + edi], 0xc0
jl 0x10058c1c
mov edi, esi
cmp edi, edx
mov esi, edx
mov dword [esp + 0x5c], edi
jae 0x10058c5f
mov ebx, edi
mov ecx, eax
xor eax, eax
lea esi, [edi + 1]
sub ebx, 3
cmovb ebx, eax
cmp ebx, esi
jbe 0x10058c45
push 0x10086e50
push esi
push ebx
call sym.kso.dll_core::slice::index::slice_index_order_fail::hcccd9689ed1eb632
add esi, ecx
add edi, ecx
sub esi, ecx
sub esi, ebx
mov eax, ecx
nop
test esi, esi
je 0x10058c5d
dec esi
cmp byte [edi], 0xc0
lea edi, [edi - 1]
jl 0x10058c50
add esi, ebx
test esi, esi
jne 0x10058c67
mov edi, edx
jmp 0x10058c7f
mov edi, edx
sub edi, esi
jbe 0x10058c7d
cmp byte [eax + esi], 0xbf
jg 0x10058c7f
push ebp
push edx
push esi
push edx
push eax
call sym.kso.dll_core::str::slice_error_fail::h02ba8aa33d35e572
jne 0x10058c73
test edi, edi
jne 0x10058c89
push ebp
call sym.kso.dll_core::option::unwrap_failed::hdcacef950c458f65
movzx ebx, byte [eax + esi]
movzx edx, bl
test bl, bl
js 0x10058ca2
mov dword [esp + 8], edx
mov edx, 1
jmp 0x10058d29
mov ecx, eax
mov eax, ebp
and edx, 0x1f
movzx ebp, byte [ecx + esi + 1]
and ebp, 0x3f
cmp bl, 0xdf
jbe 0x10058ce9
movzx edi, byte [ecx + esi + 2]
shl ebp, 6
and edi, 0x3f
or edi, ebp
cmp bl, 0xf0
jb 0x10058cf4
movzx ecx, byte [ecx + esi + 3]
and edx, 7
shl edi, 6
mov ebp, eax
shl edx, 0x12
and ecx, 0x3f
or ecx, edi
or ecx, edx
cmp ecx, 0x110000
je 0x10058c83
jmp 0x10058cfd
shl edx, 6
or edx, ebp
mov ebp, eax
mov ecx, edx
jmp 0x10058cfd
shl edx, 0xc
mov ebp, eax
or edi, edx
mov ecx, edi
mov edx, 1
cmp ecx, 0x80
mov dword [esp + 8], ecx
jb 0x10058d29
mov edx, 2
cmp ecx, 0x800
jb 0x10058d29
cmp ecx, 0x10000
mov edx, 4
sbb edx, 0
lea eax, [esp + 0x5c]
add edx, esi
lea ecx, [esp + 8]
mov dword [esp + 0x54], esi
mov dword [esp + 0xc], 0x10086ddc
mov dword [esp + 0x10], 5
mov dword [esp + 0x1c], 0
mov dword [esp + 0x58], edx
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], sym.kso.dll_core::fmt::num::imp::__impl_core::fmt::Display_for_u32_::fmt::hcb31be901129fabf
mov dword [esp + 0x2c], ecx
lea edx, [esp + 0x54]
mov ecx, esp
mov dword [esp + 0x30], sym.kso.dll___char_as_core::fmt::Debug_::fmt::h196ede642aa708cb
mov dword [esp + 0x34], edx
mov dword [esp + 0x38], 0x1004e610
mov dword [esp + 0x3c], ecx
lea ecx, [esp + 0x24]
lea edx, [esp + 0x4c]
mov dword [esp + 0x40], 0x100645c0
mov dword [esp + 0x44], edx
mov dword [esp + 0x14], ecx
mov dword [esp + 0x48], 0x100645c0
mov dword [esp + 0x18], 5
lea eax, [esp + 0xc]
push ebp
push eax
call sym.kso.dll_core::panicking::panic_fmt::h502dc0a95427940e
int3