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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x60
mov dword [esp + 0x24], ecx
mov ebp, dword [esp + 0x74]
mov esi, dword [esp + 0x78]
mov edi, dword [esp + 0x7c]
lea ebx, [esi + edi]
mov eax, esi
mov edx, esi
test edi, edi
mov dword [esp + 0x40], ebx
je 0x48ef9e
lea ecx, [edi - 1]
mov ebx, esi
mov edx, esi
nop dword [eax]
movzx eax, byte [edx]
cmp eax, 0x30
jne 0x48ef73
inc edx
add ecx, 0xffffffff
jb 0x48ef60
jmp 0x48f179
cmp eax, 0x2e
jne 0x48ef92
cmp edi, 1
jne 0x48f0a0
mov esi, dword [esp + 0x24]
mov dword [esp + 0x44], str.Significand_has_no_digits
jmp 0x48f40b
mov eax, edx
mov ecx, dword [esp + 0x40]
mov edx, ecx
mov esi, ebx
mov ebx, ecx
mov dword [esp + 0x38], esi
xor esi, esi
cmp eax, ebx
je 0x48f0d3
mov ebp, eax
jmp 0x48efc8
mov edi, ebp
movsx ebp, cl
add ebp, 0xffffffc6
cmp ebp, 0xfffffff6
jb 0x48eff4
inc edi
mov ebp, edi
cmp edi, ebx
je 0x48f0d3
movzx ecx, byte [ebp]
cmp cl, 0x2e
jne 0x48efb0
cmp edx, ebx
jne 0x48f141
lea edi, [ebp + 1]
cmp edi, ebx
je 0x48f152
movzx ecx, byte [edi]
mov edx, ebp
movsx ebp, cl
add ebp, 0xffffffc6
cmp ebp, 0xfffffff6
jae 0x48efbd
cmp edi, ebx
je 0x48f0d3
movzx ecx, cl
or ecx, 0x20
cmp ecx, 0x65
jne 0x48f3ff
mov ecx, edi
sub ecx, dword [esp + 0x38]
je 0x48ef81
cmp edx, ebx
je 0x48f024
cmp ecx, 1
je 0x48ef81
lea ebp, [edi + 1]
mov dword [esp + 0x28], 0
cmp ebp, ebx
je 0x48f50d
movzx ecx, byte [ebp]
cmp ecx, 0x2d
mov dword [esp + 0x34], ecx
je 0x48f049
cmp ecx, 0x2b
jne 0x48f058
lea ecx, [edi + 2]
cmp ecx, ebx
mov ecx, dword [esp + 0x34]
je 0x48f50d
cmp ecx, 0x2d
je 0x48f071
mov ecx, dword [esp + 0x34]
mov byte [esp + 0x28], cl
cmp dword [esp + 0x34], 0x2b
movzx ecx, byte [esp + 0x28]
jne 0x48f080
lea ebp, [edi + 2]
cmp ebp, ebx
je 0x48f521
movzx ecx, byte [ebp]
movsx ecx, cl
add ecx, 0xffffffd0
cmp ecx, 9
jbe 0x48f4c3
mov esi, dword [esp + 0x24]
mov dword [esp + 0x44], str.Invalid_character_in_exponent
jmp 0x48f40b
mov eax, edx
nop word cs:[eax + eax]
test ecx, ecx
je 0x48f179
inc eax
dec ecx
cmp byte [eax], 0x30
je 0x48f0b0
mov esi, ebx
mov ebx, dword [esp + 0x40]
mov dword [esp + 0x38], esi
xor esi, esi
cmp eax, ebx
jne 0x48efac
mov dword [esp + 0x28], 0
mov edi, ebx
mov ebp, edx
cmp edi, eax
je 0x48f164
mov edx, dword [esp + 0x38]
cmp edi, edx
je 0x48f105
dec edi
cmp edi, edx
je 0x48f105
movzx ecx, byte [edi]
dec edi
cmp ecx, 0x30
je 0x48f0f0
inc edi
cmp ecx, 0x2e
je 0x48f0ef
jmp 0x48f107
mov edi, edx
mov esi, dword [esp + 0x28]
add esi, ebp
sub esi, edi
xor ecx, ecx
cmp ebp, edi
seta cl
setb byte [esp + 0x28]
sub esi, ecx
mov edx, edi
sub edx, eax
cmp ebp, eax
seta cl
and cl, byte [esp + 0x28]
movzx ecx, cl
sub edx, ecx
mov dword [esp + 0x28], esi
add edx, esi
mov esi, edx
cmp eax, ebx
mov ebp, dword [esp + 0x74]
jne 0x48f16e
jmp 0x48f179
mov esi, dword [esp + 0x24]
mov dword [esp + 0x44], str.String_contains_multiple_dots
jmp 0x48f40b
mov dword [esp + 0x28], 0
mov edi, ebx
cmp edi, eax
jne 0x48f0e7
mov edi, eax
cmp eax, ebx
mov ebp, dword [esp + 0x74]
je 0x48f179
movsx ecx, byte [eax]
add ecx, 0xffffffc6
cmp ecx, 0xfffffff5
ja 0x48f19f
mov edx, dword [ebp]
mov ecx, dword [ebp + 0x14]
and ecx, 0xfffffff8
or ecx, 3
mov dword [ebp + 0x14], ecx
xor eax, eax
cmp dword [edx + 0x14], 2
jne 0x48f3f3
and ecx, 0xfffffff3
mov dword [ebp + 0x14], ecx
jmp 0x48f3f3
movzx ebx, byte [esp + 0x80]
cmp esi, 0xc78d
jl 0x48f1c4
movsx eax, bl
mov dword [esp], eax
mov ecx, ebp
call fcn.0048c030
sub esp, 4
jmp 0x48f3f3
mov edx, dword [ebp]
cmp esi, 0xffff3876
jl 0x48f39a
imul ecx, esi, 0x7042
add ecx, 0x7042
mov ebp, dword [edx + 4]
sub ebp, dword [edx + 8]
imul ebp, ebp, 0x21cb
cmp ecx, ebp
mov ebp, dword [esp + 0x74]
jle 0x48f39a
imul ecx, esi, 0xa437
add ecx, 0xffff5bc9
imul edx, dword [edx], 0x316f
cmp ecx, edx
jge 0x48f1af
mov ecx, edi
sub ecx, eax
imul eax, ecx, 0xc4
add eax, 0xc4
mov ecx, 0x22b63cbf
mul ecx
shr edx, 3
add edx, 0x40
shr edx, 6
lea eax, [edx*8 + 8]
mov dword [esp], eax
xor ebp, ebp
call sub.libc.dll_operator_new___unsigned_int_
mov dword [esp + 0x58], eax
mov esi, dword [esp + 0x38]
mov ebx, dword [esp + 0x40]
mov dword [esp + 0x5c], ebp
mov dword [esp + 0x38], 1
mov dword [esp + 0x3c], 0
xor ecx, ecx
xor ebp, ebp
nop word cs:[eax + eax]
movzx eax, byte [esi]
cmp al, 0x2e
jne 0x48f285
inc esi
cmp esi, ebx
je 0x48f2eb
mov ebx, ebp
mov ebp, esi
movzx eax, byte [esi]
jmp 0x48f289
mov ebx, ebp
mov ebp, esi
movsx esi, al
add esi, 0xffffffd0
cmp esi, 9
mov eax, dword [esp + 0x38]
ja 0x48f460
inc ebp
mov edx, 0xa
mul edx
lea ebx, [ebx + ebx*4]
lea edx, [edx + ebx*2]
mov dword [esp + 0x34], edx
mov ebx, eax
mov eax, dword [esp + 0x3c]
mov edx, 0xa
mul edx
add ecx, ecx
add eax, esi
mov dword [esp + 0x3c], eax
mov esi, ebp
lea ecx, [ecx + ecx*4]
adc ecx, edx
cmp ebp, edi
mov dword [esp + 0x38], ebx
ja 0x48f2ef
cmp ebx, 0x99999999
mov ebp, dword [esp + 0x34]
mov eax, ebp
sbb eax, 0x19999999
mov ebx, dword [esp + 0x40]
jb 0x48f270
jmp 0x48f2f7
mov esi, ebx
jmp 0x48f2f7
mov ebx, dword [esp + 0x40]
mov ebp, dword [esp + 0x34]
mov edx, dword [esp + 0x5c]
lea eax, [edx + 1]
mov dword [esp + 0x34], eax
mov dword [esp + 0x1c], eax
mov dword [esp + 0x18], edx
mov dword [esp + 0x14], ecx
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], ebp
mov eax, dword [esp + 0x38]
mov dword [esp + 8], eax
mov ebp, dword [esp + 0x58]
mov dword [esp + 4], ebp
mov dword [esp], ebp
mov dword [esp + 0x20], 0
call fcn.00470120
mov ecx, dword [esp + 0x5c]
mov eax, dword [ebp + ecx*8]
or eax, dword [ebp + ecx*8 + 4]
mov ebp, dword [esp + 0x34]
cmove ebp, ecx
cmp esi, edi
jbe 0x48f249
mov ecx, dword [esp + 0x74]
mov eax, dword [ecx + 0x14]
and eax, 0xfffffff8
or eax, 2
mov dword [ecx + 0x14], eax
movsx eax, byte [esp + 0x80]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x28]
mov dword [esp + 8], eax
mov dword [esp + 4], ebp
mov esi, dword [esp + 0x58]
mov dword [esp], esi
call fcn.0048e7e0
sub esp, 0x10
mov edi, eax
mov dword [esp], esi
call sub.libc.dll_operator_delete___void_
mov eax, edi
jmp 0x48f3f3
mov eax, dword [ebp + 0x14]
and eax, 0xfffffff8
or eax, 2
mov dword [ebp + 0x14], eax
mov eax, dword [edx + 8]
lea ecx, [eax - 0x40]
cmp ecx, 0xffffff80
jae 0x48f3b6
mov ecx, dword [ebp + 8]
jmp 0x48f3b9
lea ecx, [ebp + 8]
add eax, 0x40
shr eax, 6
mov dword [esp + 0xc], eax
mov dword [esp], ecx
mov dword [esp + 8], 0
mov dword [esp + 4], 0
call fcn.004825f0
movsx eax, bl
mov dword [esp], eax
mov dword [esp + 4], 1
mov ecx, ebp
call fcn.0048a540
sub esp, 8
mov esi, dword [esp + 0x24]
and byte [esi + 4], 0xfe
mov dword [esi], eax
jmp 0x48f454
mov esi, dword [esp + 0x24]
mov dword [esp + 0x44], str.Invalid_character_in_significand
mov word [esp + 0x54], 0x103
call fcn.0049ce90
mov ebx, eax
mov ebp, edx
mov dword [esp], 0x1c
call sub.libc.dll_operator_new_unsigned_int_
mov edi, eax
mov dword [esp + 0x30], ebp
mov dword [esp + 0x2c], ebx
movsd xmm0, qword [esp + 0x2c]
movsd qword [esp + 4], xmm0
lea eax, [esp + 0x44]
mov dword [esp], eax
mov ecx, edi
call fcn.0049d190
sub esp, 0xc
or byte [esi + 4], 1
mov dword [esi], edi
mov eax, esi
add esp, 0x60
pop esi
pop edi
pop ebx
pop ebp
ret 0x10
mov eax, dword [esp + 0x58]
mov dword [esp], eax
call sub.libc.dll_operator_delete___void_
mov dword [esp + 0x44], str.Invalid_character_in_significand
mov word [esp + 0x54], 0x103
call fcn.0049ce90
mov edi, eax
mov ebx, edx
mov dword [esp], 0x1c
call sub.libc.dll_operator_new_unsigned_int_
mov ebp, eax
mov dword [esp + 0x30], ebx
mov dword [esp + 0x2c], edi
movsd xmm0, qword [esp + 0x2c]
movsd qword [esp + 4], xmm0
lea eax, [esp + 0x44]
mov dword [esp], eax
mov ecx, ebp
call fcn.0049d190
sub esp, 0xc
mov esi, dword [esp + 0x24]
or byte [esi + 4], 1
mov dword [esi], ebp
jmp 0x48f454
inc ebp
cmp ebp, ebx
je 0x48f4fd
mov dword [esp + 0x28], ecx
movsx ecx, byte [ebp]
add ecx, 0xffffffd0
cmp ecx, 0xa
jae 0x48f08f
mov dword [esp + 0x3c], ebp
mov ebp, dword [esp + 0x28]
lea ebp, [ebp + ebp*4]
lea ecx, [ecx + ebp*2]
mov ebp, dword [esp + 0x3c]
inc ebp
cmp ecx, 0x5dc0
jb 0x48f4c4
mov ecx, 0x5dc0
mov ebp, ecx
neg ecx
cmp byte [esp + 0x34], 0x2d
cmovne ecx, ebp
mov dword [esp + 0x28], ecx
cmp edx, ebx
cmove edx, edi
mov ebp, edx
cmp edi, eax
jne 0x48f0e7
jmp 0x48f164
mov esi, dword [esp + 0x24]
mov dword [esp + 0x44], str.Exponent_has_no_digits
jmp 0x48f40b