Function at 0x10058b10
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 0x10058b7d
cmp byte [eax + 0x100], 0xbf
mov ebx, 0x100
jg 0x10058b68
cmp byte [eax + 0xff], 0xbf
mov ebx, 0xff
jg 0x10058b68
cmp byte [eax + 0xfe], 0xbf
mov ebx, 0xfe
jg 0x10058b68
mov ebx, 0xfd
cmp ebx, edx
jae 0x10058b9c
cmp byte [eax + ebx], 0xbf
jg 0x10058b9e
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 0x10058bd0
jmp 0x10058c52
jne 0x10058b72
mov dword [esp], eax
xor eax, eax
cmp ebx, edx
mov dword [esp + 4], ebx
mov ebp, str._..._begin___end_______when_slicing___Y__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 0x10058c52
cmp esi, edx
ja 0x10058c52
cmp edi, esi
mov ebp, ecx
jbe 0x10058cbc
lea eax, [esp + 0x7c]
lea edx, [esp + 0x80]
mov ecx, esp
mov dword [esp + 0xc], 0x10085d7c
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], 0x10064670
mov dword [esp + 0x3c], edx
mov dword [esp + 0x14], ecx
mov dword [esp + 0x40], 0x10064670
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], 0x10085e1c
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], 0x10064670
mov dword [esp + 0x54], esi
mov dword [esp + 0x34], eax
lea eax, [esp + 0x24]
mov dword [esp + 0x38], 0x10064670
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 0x10058cca
cmp edi, edx
jae 0x10058cca
cmp byte [eax + edi], 0xc0
jl 0x10058ccc
mov edi, esi
cmp edi, edx
mov esi, edx
mov dword [esp + 0x5c], edi
jae 0x10058d0f
mov ebx, edi
mov ecx, eax
xor eax, eax
lea esi, [edi + 1]
sub ebx, 3
cmovb ebx, eax
cmp ebx, esi
jbe 0x10058cf5
push 0x10085e50
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 0x10058d0d
dec esi
cmp byte [edi], 0xc0
lea edi, [edi - 1]
jl 0x10058d00
add esi, ebx
test esi, esi
jne 0x10058d17
mov edi, edx
jmp 0x10058d2f
mov edi, edx
sub edi, esi
jbe 0x10058d2d
cmp byte [eax + esi], 0xbf
jg 0x10058d2f
push ebp
push edx
push esi
push edx
push eax
call sym.kso.dll_core::str::slice_error_fail::h02ba8aa33d35e572
jne 0x10058d23
test edi, edi
jne 0x10058d39
push ebp
call sym.kso.dll_core::option::unwrap_failed::hdcacef950c458f65
movzx ebx, byte [eax + esi]
movzx edx, bl
test bl, bl
js 0x10058d52
mov dword [esp + 8], edx
mov edx, 1
jmp 0x10058dd9
mov ecx, eax
mov eax, ebp
and edx, 0x1f
movzx ebp, byte [ecx + esi + 1]
and ebp, 0x3f
cmp bl, 0xdf
jbe 0x10058d99
movzx edi, byte [ecx + esi + 2]
shl ebp, 6
and edi, 0x3f
or edi, ebp
cmp bl, 0xf0
jb 0x10058da4
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 0x10058d33
jmp 0x10058dad
shl edx, 6
or edx, ebp
mov ebp, eax
mov ecx, edx
jmp 0x10058dad
shl edx, 0xc
mov ebp, eax
or edi, edx
mov ecx, edi
mov edx, 1
cmp ecx, 0x80
mov dword [esp + 8], ecx
jb 0x10058dd9
mov edx, 2
cmp ecx, 0x800
jb 0x10058dd9
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], 0x10085ddc
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], 0x1004e6d0
mov dword [esp + 0x3c], ecx
lea ecx, [esp + 0x24]
lea edx, [esp + 0x4c]
mov dword [esp + 0x40], 0x10064670
mov dword [esp + 0x44], edx
mov dword [esp + 0x14], ecx
mov dword [esp + 0x48], 0x10064670
mov dword [esp + 0x18], 5
lea eax, [esp + 0xc]
push ebp
push eax
call sym.kso.dll_core::panicking::panic_fmt::h502dc0a95427940e
int3