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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x4a0
cmp dword [ebp + 8], 0
mov dword [esp + 4], ecx
je 0x1008fcda
mov dword [esp + 0x24], edx
movsd qword [esp + 0x28], xmm0
mov ecx, 0x100000
mov ebx, dword [esp + 0x2c]
mov edx, dword [esp + 0x28]
lea esi, [ecx - 1]
mov eax, ebx
mov edi, ebx
and esi, ebx
mov dword [esp + 8], ebx
shr eax, 0x14
shld edi, edx, 1
lea ebx, [esi + 0x100000]
and eax, 0x7ff
and edi, 0x1fffff
test eax, eax
cmove ebx, edi
mov edi, ebx
lea ebx, [edx + edx]
cmovne ebx, edx
ucomisd xmm0, xmm0
jp 0x1008fceb
mov dword [esp + 0xc], ebx
and ebx, 1
or esi, edx
je 0x1008fa1a
test dword [esp + 8], 0x7ff00000
jne 0x1008fa40
mov edx, dword [esp + 0xc]
add eax, 0xfffffbcd
xor bl, 1
xor ecx, ecx
mov esi, 1
jmp 0x1008fa80
mov dword [esp + 0x20], edi
mov edi, dword [esp + 8]
and edi, 0x7fffffff
mov esi, edi
xor esi, 0x7ff00000
or esi, edx
je 0x1008fa7e
or edx, edi
mov edi, dword [esp + 0x20]
jne 0x1008fa40
mov bl, 4
jmp 0x1008fa80
mov edx, dword [esp + 0xc]
xor ecx, edi
or ecx, edx
jne 0x1008fa64
movzx eax, ax
xor edx, edx
mov esi, 2
mov edi, 0x400000
mov bl, 1
xor ecx, ecx
add eax, 0xfffffbcb
jmp 0x1008fa80
movzx eax, ax
shld edi, edx, 1
add edx, edx
xor bl, 1
xor ecx, ecx
mov esi, 1
add eax, 0xfffffbcc
jmp 0x1008fa80
mov bl, 3
mov dword [esp + 0x78], edx
mov dword [esp + 0x7c], edi
mov dword [esp + 0x84], 0
mov dword [esp + 0x80], 1
mov dword [esp + 0x88], esi
mov dword [esp + 0x8c], ecx
mov word [esp + 0x90], ax
mov byte [esp + 0x92], bl
add bl, 0xfe
je 0x1008fb53
movzx edx, bl
cmp bl, 3
mov ecx, 3
mov edi, 1
mov ebx, 0x1013889f
cmovb ecx, edx
mov edx, dword [esp + 8]
mov esi, edx
shr esi, 0x1f
test edx, edx
mov edx, 0x1013889e
cmovs edi, edx
cmovs ebx, edx
cmp byte [esp + 0x24], 0
mov edx, 1
cmove ebx, edi
cmovne esi, edx
cmp cl, 1
je 0x1008fb7f
movzx edx, byte [ebp + 0xc]
movzx ecx, cl
cmp ecx, 2
jne 0x1008fb9f
mov eax, dword [ebp + 8]
cmp eax, 1
jne 0x1008fc1f
test dl, dl
mov eax, 0x101388aa
mov ecx, 0x101388a7
mov word [esp + 0x30], 2
mov edx, 1
cmovne ecx, eax
lea eax, [esp + 0x30]
mov dword [esp + 0x34], ecx
mov dword [esp + 0x38], 3
jmp 0x1008fcb5
mov ebx, 1
lea eax, [esp + 0x30]
xor esi, esi
mov edx, 1
mov word [esp + 0x30], 2
mov dword [esp + 0x34], 0x101388a0
mov dword [esp + 0x38], 3
jmp 0x1008fcb5
mov word [esp + 0x30], 2
mov dword [esp + 0x34], 0x101388a3
mov dword [esp + 0x38], 3
lea eax, [esp + 0x30]
jmp 0x1008fcb5
test ax, ax
movsx edi, ax
mov eax, dword [ebp + 8]
mov ecx, 0xfffffff4
mov edx, 5
cmovs edx, ecx
imul edi, edx
cmp eax, 0x401
jb 0x1008fbcb
cmp edi, 0x3ec0
jae 0x1008fcf2
shr edi, 4
add edi, 0x15
cmp edi, eax
cmovae edi, eax
cmp edi, 0x401
jae 0x1008fd03
lea ecx, [esp + 0x9c]
lea edx, [esp + 0x78]
lea eax, [esp + 0x30]
push 0x8000
push edi
push ecx
push edx
push eax
call sym.core::num::flt2dec::strategy::grisu::format_exact_opt::h1262efd7c8adf225
add esp, 0x14
cmp dword [esp + 0x30], 0
je 0x1008fc6f
mov eax, dword [esp + 0x38]
movsd xmm0, qword [esp + 0x30]
mov dword [esp + 0x18], eax
movsd qword [esp + 0x10], xmm0
jmp 0x1008fc92
dec eax
mov word [esp + 0x30], 2
mov dword [esp + 0x34], 0x10138841
mov dword [esp + 0x38], 2
mov word [esp + 0x3c], 0
test dl, dl
mov ecx, str.e0E0assertion_failed:_buf.len_____ndigits__buf.len_____maxlen
mov edx, 3
mov dword [esp + 0x40], eax
mov eax, 0x101388de
mov word [esp + 0x48], 2
cmovne ecx, eax
lea eax, [esp + 0x30]
mov dword [esp + 0x4c], ecx
mov dword [esp + 0x50], 2
jmp 0x1008fcb5
lea eax, [esp + 0x10]
push 0x8000
push edi
lea ecx, [esp + 0xa4]
push ecx
lea ecx, [esp + 0x84]
push ecx
push eax
call sym.core::num::flt2dec::strategy::dragon::format_exact::he82a25c89dead39d
add esp, 0x14
movzx eax, byte [ebp + 0xc]
push 6
lea ecx, [esp + 0x34]
push ecx
push eax
push dword [ebp + 8]
push dword [esp + 0x28]
push dword [esp + 0x28]
push dword [esp + 0x28]
call sym.core::num::flt2dec::digits_to_exp_str::h098334f65a9d6840
add esp, 0x1c
mov ecx, dword [esp + 4]
mov dword [esp + 0x10], ebx
mov dword [esp + 0x14], esi
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], edx
lea edx, [esp + 0x10]
call sym.core::fmt::Formatter::pad_formatted_parts::hdf29d1afb525241f
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
push 0x101388cc
push 0x1d
push 0x101388ad
call sym.core::panicking::panic::h2de0902fd6c3d9b1
mov bl, 2
jmp 0x1008fa80
push 0x10138920
push 0x3d
push 0x101388e0
call sym.core::panicking::panic::h2de0902fd6c3d9b1
push 0x10138930
push 0x400
push edi
call sym.core::slice::index::slice_end_index_len_fail::hb7bcdcb5c84f7e98
nop word cs:[eax + eax]
nop dword [eax]