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

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x15c
fld dword [esp + 0x170]
mov dword [esp + 4], ecx
mov dword [esp + 8], 0
mov dword [esp + 0x20], eax
mov dword [esp + 0x2c], edx
mov dword [esp + 0x38], ecx
mov ecx, edx
mov edx, eax
lea eax, [esp + 0x84]
fstp dword [esp]
call method.std::optional_std::to_chars_result__std.__handle_special_value_float__char__char__float__std::chars_format__int_
movzx eax, byte [esp + 0x8c]
mov byte [esp + 0x18], al
test al, al
je 0x4f9978
mov eax, dword [esp + 0x84]
mov edx, dword [esp + 0x88]
add esp, 0x15c
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, dword [esp + 0x170]
mov esi, eax
mov dword [esp + 0x50], eax
shr esi, 0x1f
mov dword [esp + 0x58], esi
mov esi, eax
shr eax, 0x17
and esi, 0x7fffff
movzx eax, al
mov dword [esp + 0x3c], esi
cmp eax, 0xff
je method.std::to_chars_result_std.__floating_to_chars_shortest_float__char__char__float__std::chars_format___clone_.part.0___clone_.cold_
or esi, eax
je method.std::to_chars_result_std.__floating_to_chars_shortest_float__char__char__float__std::chars_format___clone_.part.0___clone_.cold_
mov edi, dword [esp + 0x50]
mov esi, dword [esp + 0x3c]
test edi, 0x7f000000
sete cl
test esi, esi
setne dl
mov ebx, ecx
and edi, 1
or ebx, edx
mov dword [esp + 0x5c], edi
mov byte [esp + 0x1c], bl
movzx edx, bl
test eax, eax
je 0x4f9d40
or esi, 0x800000
lea edi, [esi*4]
mov dword [esp + 0x3c], esi
lea ecx, [edi - 1]
lea ebx, [edi + 2]
mov dword [esp + 0x28], edi
sub ecx, edx
mov edx, eax
mov dword [esp + 0x54], ebx
mov dword [esp + 0x48], ecx
sub edx, 0x98
js 0x4fb090
imul eax, edx, 0x13441
shr eax, 0x12
mov esi, eax
mov edi, eax
mov dword [esp + 0x1c], eax
mov dword [esp + 0x24], eax
imul eax, eax, 0x12934f
sub edi, edx
mov dword [esp + 0x7c], edi
shr eax, 0x13
lea ebp, [edi + eax + 0x3d]
mov eax, esi
shl eax, 4
mov edx, dword [eax + 0x53d50c]
mov eax, dword [eax + 0x53d508]
add eax, 1
adc edx, 0
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], edx
cmp ebp, 0x20
jle 0x4fb08b
mov esi, dword [esp + 0x28]
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x6c], 0
mov ebx, dword [esp + 0x10]
mov eax, esi
mov dword [esp + 0x68], esi
mul ecx
mov dword [esp + 0x30], eax
mov eax, esi
mov edi, edx
mov dword [esp + 0x34], edx
mul ebx
mov eax, edx
mov edx, dword [esp + 0x30]
add eax, edx
adc edi, 0
mov dword [esp + 0x70], eax
mov dword [esp + 0x30], edi
mov edi, dword [esp + 0x48]
mov eax, edi
mul ecx
mov dword [esp + 0x40], eax
mov eax, edi
mov esi, dword [esp + 0x40]
mov dword [esp + 0x44], edx
mul dword [esp + 0x10]
mov eax, edx
mov edx, dword [esp + 0x44]
add eax, esi
mov dword [esp + 0x78], eax
mov eax, ecx
mov ecx, dword [esp + 0x54]
adc edx, 0
mov dword [esp + 0x60], edx
mul ecx
mov esi, eax
mov eax, dword [esp + 0x10]
mov edi, edx
mul ecx
mov eax, edx
mov edx, edi
add eax, esi
adc edx, 0
cmp ebp, 0x3f
jle 0x4fa070
mov eax, edx
mov edx, dword [esp + 0x60]
lea ecx, [ebp - 0x40]
mov ebx, dword [esp + 0x30]
shr eax, cl
shr edx, cl
mov dword [esp + 0x40], eax
shr ebx, cl
mov dword [esp + 0x30], edx
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x4fa0c0
mov eax, dword [esp + 0x30]
mov ecx, 0xcccccccd
mov byte [esp + 0x10], 0
mul ecx
mov eax, dword [esp + 0x40]
shr edx, 3
mov ebp, edx
lea edx, [eax - 1]
mov eax, edx
mul ecx
shr edx, 3
cmp ebp, edx
jae 0x4fa618
cmp dword [esp + 0x1c], 9
ja 0x4f9bef
mov eax, dword [esp + 0x28]
mov edi, 0xcccccccd
mul edi
mov esi, edx
shr esi, 2
mov ecx, esi
lea eax, [esi + esi*4]
mov esi, dword [esp + 0x28]
sub esi, eax
je 0x4f9e92
mov ebp, dword [esp + 0x5c]
test ebp, ebp
jne 0x4fa1f0
mov eax, dword [esp + 0x48]
mul edi
mov eax, dword [esp + 0x48]
mov edi, edx
mov ebp, edx
shr ebp, 2
and edi, 0xfffffffc
lea edx, [edi + ebp]
sub eax, edx
mov ecx, eax
jne 0x4faf85
mov esi, 0xcccccccd
jmp 0x4f9baa
mov ebp, eax
add ecx, 1
test ebp, ebp
je 0x4fb013
mov eax, ebp
mul esi
mov eax, edx
and edx, 0xfffffffc
shr eax, 2
add edx, eax
cmp ebp, edx
je 0x4f9ba8
mov eax, dword [esp + 0x1c]
mov edx, 0xcccccccd
cmp ecx, eax
mov eax, dword [esp + 0x30]
setae byte [esp + 0x1c]
movzx ecx, byte [esp + 0x1c]
mul edx
shr edx, 3
mov ebp, edx
test cl, cl
jne 0x4f9f4c
mov eax, dword [esp + 0x40]
mov edx, 0xcccccccd
mov ecx, 0xcccccccd
mov dword [esp + 0x18], 0
mul edx
mov edi, edx
shr edi, 3
cmp ebp, edi
jae 0x4fa7c0
lea esi, [esi]
mov eax, ebx
mov esi, ebx
mov dword [esp + 0x10], ebp
mul ecx
mov eax, edi
add dword [esp + 0x18], 1
mov ebx, edx
mul ecx
mov eax, ebp
shr ebx, 3
mov edi, edx
mul ecx
shr edi, 3
shr edx, 3
mov ebp, edx
cmp edx, edi
jb 0x4f9c18
lea eax, [ebx + ebx*4]
mov edi, dword [esp + 0x18]
add dword [esp + 0x24], edi
add eax, eax
sub esi, eax
mov edx, esi
mov esi, dword [esp + 0x10]
cmp dl, 4
seta al
cmp ebx, esi
sete dl
or eax, edx
movzx eax, al
add ebx, eax
movzx esi, byte [esp + 0x58]
mov eax, dword [esp + 0x24]
cmp ebx, 0x5f5e0ff
ja 0x4fa0f0
cmp ebx, 0x98967f
ja 0x4fa1c8
cmp ebx, 0xf423f
ja 0x4fa548
cmp ebx, 0x1869f
ja 0x4fa5f0
cmp ebx, 0x270f
ja 0x4fa710
cmp ebx, 0x3e7
ja 0x4fa788
cmp ebx, 0x63
ja 0x4fa7e0
lea edx, [eax + 1]
cmp ebx, 9
ja 0x4fa36a
mov eax, dword [esp + 0x38]
cmp eax, 3
je 0x4fa890
test eax, eax
je 0x4fa570
cmp dword [esp + 0x38], 1
jne 0x4fa588
mov edx, dword [esp + 0x24]
lea eax, [esi + 1]
mov ecx, edx
neg ecx
cmovns edx, ecx
mov ecx, 6
cmp edx, 0x3e7
jle 0x4fa399
mov esi, dword [esp + 0x20]
add ecx, eax
mov eax, dword [esp + 0x2c]
sub eax, esi
cmp ecx, eax
jle 0x4fa458
mov eax, dword [esp + 0x2c]
add esp, 0x15c
mov edx, 0x84
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x68], 0x2e
mov ecx, 0x1c06a5ec
mov ebp, 0x3b
mov dword [esp + 0x24], 0xffffffd2
shl eax, 2
mov dword [esp + 0x18], 0x69
lea ebx, [eax + 2]
mov dword [esp + 0x28], eax
sub eax, 1
sub eax, edx
mov dword [esp + 0x70], 0x69
mov dword [esp + 0x48], eax
mov dword [esp + 0x78], 0x3567832
mov dword [esp + 0x54], ebx
mov ebx, 0x5433c60d
mov esi, dword [esp + 0x28]
mov dword [esp + 0x64], 0
mov eax, esi
mov dword [esp + 0x60], esi
mul ecx
mov dword [esp + 0x10], eax
mov eax, esi
mov edi, edx
mov esi, dword [esp + 0x10]
mov dword [esp + 0x14], edx
mul ebx
mov eax, edx
add eax, esi
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x48]
adc edi, 0
mov dword [esp + 0x10], edi
mul ecx
mov esi, eax
mov eax, dword [esp + 0x48]
mov edi, edx
mul ebx
mov eax, edx
mov edx, edi
add eax, esi
mov dword [esp + 0x48], eax
mov eax, ecx
mov ecx, dword [esp + 0x54]
adc edx, 0
mov dword [esp + 0x30], edx
mul ecx
mov esi, eax
mov eax, ecx
mov edi, edx
mul ebx
mov eax, edx
mov edx, edi
add eax, esi
adc edx, 0
cmp ebp, 0x3f
jle 0x4f9ed8
mov eax, edx
mov edx, dword [esp + 0x30]
lea ecx, [ebp - 0x40]
mov ebx, dword [esp + 0x10]
shr eax, cl
shr edx, cl
mov dword [esp + 0x40], eax
shr ebx, cl
mov dword [esp + 0x30], edx
mov eax, dword [esp + 0x30]
mov ecx, 0xcccccccd
mov byte [esp + 0x10], 0
mul ecx
mov eax, dword [esp + 0x40]
shr edx, 3
mov ebp, edx
lea edx, [eax - 1]
mov eax, edx
mul ecx
shr edx, 3
cmp ebp, edx
jae 0x4fa2c0
cmp dword [esp + 0x18], 1
je 0x4f9f3b
mov eax, dword [esp + 0x18]
cmp eax, 0x1e
ja 0x4f9bef
mov ecx, eax
mov eax, 0xffffffff
mov byte [esp + 0x1c], 0
sub ecx, 1
shl eax, cl
not eax
test dword [esp + 0x28], eax
sete cl
mov byte [esp + 0x18], cl
jmp 0x4f9be7
mov ecx, eax
add esi, 1
test ecx, ecx
je 0x4fb013
mov eax, ecx
mul edi
mov eax, edx
and edx, 0xfffffffc
shr eax, 2
add edx, eax
cmp ecx, edx
je 0x4f9e90
mov eax, dword [esp + 0x1c]
mov byte [esp + 0x1c], 0
cmp esi, eax
mov eax, dword [esp + 0x30]
setae cl
mul edi
mov byte [esp + 0x18], cl
shr edx, 3
mov ebp, edx
jmp 0x4f9be7
sub ebp, 0x20
mov ebx, 0x20
mov edi, dword [esp + 0x10]
sub ebx, ebp
mov esi, ebx
mov ecx, ebx
mov ebx, dword [esp + 0x40]
shl edi, cl
mov ecx, ebp
shr ebx, cl
mov ecx, ebx
mov ebx, edi
mov edi, dword [esp + 0x18]
or ebx, ecx
mov ecx, esi
shl edx, cl
mov ecx, ebp
shr eax, cl
mov ecx, esi
or edx, eax
mov eax, dword [esp + 0x30]
mov dword [esp + 0x40], edx
mov edx, dword [esp + 0x48]
shl eax, cl
mov ecx, ebp
shr edx, cl
or eax, edx
mov edx, 0xcccccccd
mov dword [esp + 0x30], eax
mul edx
shr edx, 3
mov ebp, edx
test edi, edi
jne 0x4f9e25
mov byte [esp + 0x10], 0
mov esi, dword [esp + 0x5c]
test esi, esi
jne 0x4fa260
mov byte [esp + 0x18], 1
mov eax, dword [esp + 0x40]
mov edx, 0xcccccccd
xor ecx, ecx
mul edx
mov edi, edx
shr edi, 3
cmp ebp, edi
jae 0x4f9fca
mov dword [esp + 0x28], ecx
mov ecx, dword [esp + 0x30]
mov esi, 0xcccccccd
nop
imul ecx, ecx, 0xcccccccd
ror ecx, 1
cmp ecx, 0x19999999
mov ecx, ebp
setbe al
and byte [esp + 0x1c], al
cmp byte [esp + 0x10], 0
sete al
and byte [esp + 0x18], al
mov eax, ebx
mul esi
add dword [esp + 0x28], 1
shr edx, 3
lea eax, [edx + edx*4]
add eax, eax
sub ebx, eax
mov eax, edi
mov byte [esp + 0x10], bl
mov ebx, edx
mul esi
mov eax, ebp
mov edi, edx
mul esi
shr edi, 3
shr edx, 3
mov ebp, edx
cmp edx, edi
jb 0x4f9f70
mov dword [esp + 0x30], ecx
mov ecx, dword [esp + 0x28]
cmp byte [esp + 0x1c], 0
je 0x4fa030
mov edi, dword [esp + 0x30]
imul eax, edi, 0xcccccccd
ror eax, 1
cmp eax, 0x19999999
ja 0x4fa030
mov ebp, ecx
movzx ecx, byte [esp + 0x10]
mov esi, 0xcccccccd
test cl, cl
mov ecx, ebx
sete al
and byte [esp + 0x18], al
mov eax, ebx
add ebp, 1
mul esi
shr edx, 3
lea eax, [edx + edx*4]
mov ebx, edx
add eax, eax
sub ecx, eax
mov eax, edi
mul esi
mov edi, edx
shr edi, 3
imul eax, edi, 0xcccccccd
ror eax, 1
cmp eax, 0x19999999
jbe 0x4f9ff0
mov dword [esp + 0x30], edi
mov byte [esp + 0x10], cl
mov ecx, ebp
cmp byte [esp + 0x10], 5
jne 0x4fa0d0
cmp byte [esp + 0x18], 0
je 0x4fa0d0
test bl, 1
je 0x4fa270
add ebx, 1
add dword [esp + 0x24], ecx
cmp ebx, 0x3b9ac9ff
jbe 0x4f9c69
call sym._anonymous_namespace_::ryu::decimalLength9_unsigned_int___clone_.part.0_
lea esi, [esi]
nop
sub ebp, 0x20
mov ebx, 0x20
mov esi, dword [esp + 0x30]
sub ebx, ebp
mov edi, ebx
mov ecx, ebx
mov ebx, dword [esp + 0x70]
shl esi, cl
mov ecx, ebp
shr ebx, cl
mov ecx, ebx
mov ebx, esi
or ebx, ecx
mov ecx, edi
shl edx, cl
mov ecx, ebp
shr eax, cl
mov ecx, edi
or edx, eax
mov eax, dword [esp + 0x60]
mov dword [esp + 0x40], edx
mov edx, dword [esp + 0x78]
shl eax, cl
mov ecx, ebp
shr edx, cl
or eax, edx
mov dword [esp + 0x30], eax
jmp 0x4f9b0d
mov byte [esp + 0x10], 0
jmp 0x4f9b4f
mov eax, dword [esp + 0x30]
cmp ebx, eax
je 0x4fa6f0
xor eax, eax
cmp byte [esp + 0x10], 4
seta al
add ebx, eax
jmp 0x4fa052
lea ecx, [eax + 9]
lea edx, [eax + 8]
mov eax, dword [esp + 0x38]
cmp eax, 3
je 0x4fa2a0
test eax, eax
je 0x4fa738
mov eax, 9
cmp dword [esp + 0x38], 1
je 0x4fa2b1
mov edx, dword [esp + 0x24]
test edx, edx
jns 0x4fa3b0
test ecx, ecx
mov edi, dword [esp + 0x24]
mov edx, 1
cmovg edx, ecx
sub esi, edi
lea ecx, [esi + edx + 1]
mov edx, dword [esp + 0x2c]
mov esi, dword [esp + 0x20]
sub edx, esi
cmp ecx, edx
jg 0x4f9d22
neg edi
mov ebp, edi
cmp edi, eax
jl 0x4fa828
mov ecx, dword [esp + 0x50]
test ecx, ecx
jns 0x4fa16b
mov byte [esi], 0x2d
add esi, 1
mov dword [esp + 0x20], esi
mov edi, dword [esp + 0x20]
mov edx, 0x2e30
mov word [edi], dx
mov edx, ebp
lea esi, [edi + 2]
sub edx, eax
cmp edx, 4
jae 0x4fab4c
test edx, edx
je 0x4fa197
mov byte [esi], 0x30
test dl, 2
jne 0x4fb05e
lea eax, [esi + edx]
mov dword [esp + 0x10], eax
cmp dword [esp + 0x2c], eax
je 0x4fafcf
test ebx, ebx
jne 0x4fac9d
mov byte [eax], 0x30
add eax, 1
xor edx, edx
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x10]
jmp 0x4f996a
lea ecx, [eax + 8]
lea edx, [eax + 7]
mov eax, dword [esp + 0x38]
cmp eax, 3
je 0x4fa360
test eax, eax
je 0x4fa7b0
mov eax, 8
jmp 0x4fa110
mov eax, dword [esp + 0x54]
mul edi
mov eax, dword [esp + 0x54]
mov edi, edx
mov ebp, edx
shr ebp, 2
and edi, 0xfffffffc
lea edx, [edi + ebp]
sub eax, edx
mov ecx, eax
jne 0x4faf8c
mov esi, 0xcccccccd
jmp 0x4fa222
mov ebp, eax
add ecx, 1
test ebp, ebp
je 0x4fb013
mov eax, ebp
mul esi
mov eax, edx
and edx, 0xfffffffc
shr eax, 2
add edx, eax
cmp ebp, edx
je 0x4fa220
mov eax, dword [esp + 0x1c]
mov edx, 0xcccccccd
cmp ecx, eax
mov eax, dword [esp + 0x30]
adc dword [esp + 0x40], 0xffffffff
mul edx
shr edx, 3
mov ebp, edx
jmp 0x4f9bef
sub dword [esp + 0x40], 1
mov byte [esp + 0x1c], 0
jmp 0x4f9f47
mov eax, dword [esp + 0x30]
cmp ebx, eax
jne 0x4fa052
movzx eax, byte [esp + 0x1c]
movzx edx, byte [esp + 0x3c]
xor eax, 1
and edx, 1
or eax, edx
movzx eax, al
add ebx, eax
jmp 0x4fa052
mov eax, 9
lea edi, [ecx + 3]
cmp edi, 9
jbe 0x4fa11b
add eax, esi
add eax, 1
jmp 0x4f9cf6
mov eax, dword [esp + 0x78]
mov edx, dword [esp + 0x70]
add eax, 0x12934f
shr eax, 0x13
sub edx, eax
mov eax, dword [esp + 0x68]
lea ecx, [edx + 0x3b]
shl eax, 4
mov dword [esp + 0x10], ecx
mov esi, dword [eax + 0x53c0b8]
mov edi, dword [eax + 0x53c0bc]
cmp ecx, 0x20
jle 0x4fb08b
mov eax, dword [esp + 0x64]
imul eax, edi
mov ecx, eax
mov eax, edi
mul dword [esp + 0x60]
mov dword [esp + 0x4c], edx
add edx, ecx
mov ecx, dword [esp + 0x64]
mov dword [esp + 0x48], eax
mov eax, esi
imul ecx, esi
mov dword [esp + 0x54], edx
mov esi, dword [esp + 0x48]
mul dword [esp + 0x60]
mov eax, dword [esp + 0x54]
add ecx, edx
add esi, ecx
mov ecx, dword [esp + 0x10]
adc eax, 0
cmp ecx, 0x3f
jle 0x4faaf7
sub ecx, 0x40
shr eax, cl
mov ecx, eax
mov eax, 0xcccccccd
mul ecx
shr edx, 3
lea eax, [edx + edx*4]
add eax, eax
sub ecx, eax
mov byte [esp + 0x10], cl
jmp 0x4f9e50
mov eax, 8
jmp 0x4fa2a5
lea ecx, [eax + 2]
mov eax, dword [esp + 0x38]
cmp eax, 3
je 0x4fae4a
test eax, eax
je 0x4fae54
mov eax, 2
jmp 0x4fa110
mov edx, dword [esp + 0x24]
lea eax, [esi + 1]
neg edx
xor ecx, ecx
cmp edx, 0x63
setg cl
add ecx, 4
jmp 0x4f9d0e
add eax, esi
mov esi, dword [esp + 0x24]
add eax, esi
mov edx, dword [esp + 0x2c]
mov esi, dword [esp + 0x20]
sub edx, esi
cmp edx, eax
jl 0x4f9d22
mov ecx, 0xffffffff
test ebx, ebx
je 0x4fa3d6
bsr ecx, ebx
mov eax, dword [esp + 0x24]
lea eax, [eax + eax*4]
lea edx, [eax + eax + 2]
mov eax, 0xaaaaaaab
mul edx
shr edx, 1
add edx, ecx
cmp edx, 0x14
jg 0x4fa8a8
mov esi, dword [esp + 0x50]
test esi, esi
jns 0x4fa40b
mov eax, dword [esp + 0x20]
mov byte [eax], 0x2d
add eax, 1
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x20]
cmp dword [esp + 0x2c], eax
je 0x4faf58
test ebx, ebx
jne 0x4fa8e3
mov byte [eax], 0x30
add eax, 1
mov dword [esp + 0x20], eax
mov esi, dword [esp + 0x24]
mov edi, dword [esp + 0x20]
mov dword [esp + 4], 0x30
mov dword [esp + 8], esi
mov dword [esp], edi
call sym._memset
mov eax, edi
mov edx, ebx
add eax, esi
jmp 0x4f996a
mov ecx, dword [esp + 0x50]
mov eax, dword [esp + 0x20]
test ecx, ecx
jns 0x4fa6d8
mov dword [esp + 0x10], 1
add eax, 1
mov byte [eax - 1], 0x2d
mov dword [esp + 0x1c], eax
mov eax, 1
cmp ebx, 0x5f5e0ff
ja 0x4fa9d9
cmp ebx, 0x98967f
ja 0x4fab14
cmp ebx, 0xf423f
ja 0x4fab7a
cmp ebx, 0x1869f
ja 0x4fadfa
cmp ebx, 0x270f
ja 0x4fae28
cmp ebx, 0x3e7
ja 0x4fae63
cmp ebx, 0x63
ja 0x4faf62
cmp ebx, 9
ja 0x4faf93
mov esi, dword [esp + 0x1c]
add ebx, 0x30
mov dword [esp + 0x28], 1
add eax, 1
mov ecx, eax
mov byte [esi], bl
mov ebx, dword [esp + 0x28]
mov edx, dword [esp + 0x24]
lea edi, [eax + 2]
mov esi, dword [esp + 0x20]
add edx, ebx
mov ebx, edx
add ecx, esi
lea ebp, [esi + eax + 1]
mov esi, 0x2b
sub ebx, 1
jns 0x4fa51f
mov ebx, 1
mov esi, 0x2d
sub ebx, edx
mov byte [ecx], 0x65
mov ecx, esi
mov esi, dword [esp + 0x20]
mov byte [ebp], cl
movzx edx, word [ebx + ebx + str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899]
lea eax, [esi + eax + 4]
mov word [esi + edi], dx
xor edx, edx
jmp 0x4f996a
lea ecx, [eax + 7]
lea edx, [eax + 6]
mov eax, dword [esp + 0x38]
cmp eax, 3
je 0x4fa8ca
test eax, eax
je 0x4fa8d4
mov eax, 7
jmp 0x4fa110
cmp dword [esp + 0x24], 0xfffffffd
jl 0x4fa390
mov edi, dword [esp + 0x24]
cmp edi, 4
jg 0x4fab29
mov ecx, dword [esp + 0x24]
test ecx, ecx
js 0x4fb0ee
lea eax, [ecx + esi + 1]
cmp ebx, 1
jne 0x4fa3b8
mov esi, dword [esp + 0x20]
mov ebp, dword [esp + 0x2c]
mov edi, 0x80000000
xor edx, edx
sub ebp, esi
xor esi, esi
shrd esi, edi, cl
shr edi, cl
test cl, 0x20
cmovne esi, edi
cmovne edi, edx
and esi, 0x6e000000
and edi, 0x1d7359
mov edx, esi
or edx, edi
je 0x4fae3d
sub eax, 1
cmp eax, ebp
jg 0x4f9d22
jmp 0x4fa3d3
lea ecx, [eax + 6]
lea edx, [eax + 5]
mov eax, dword [esp + 0x38]
cmp eax, 3
je 0x4faade
test eax, eax
je 0x4faae8
mov eax, 6
jmp 0x4fa110
mov eax, dword [esp + 0x1c]
mov edi, dword [esp + 0x7c]
sub eax, 1
imul edx, eax, 0x12934f
shl eax, 4
shr edx, 0x13
lea esi, [edi + edx + 0x3c]
mov edx, dword [eax + 0x53d50c]
mov eax, dword [eax + 0x53d508]
mov dword [esp + 0x60], esi
add eax, 1
adc edx, 0
cmp esi, 0x20
jle 0x4fb08b
mov edi, dword [esp + 0x6c]
mov esi, dword [esp + 0x68]
mov dword [esp + 0x10], eax
mov eax, edx
mov dword [esp + 0x14], edx
mov ecx, edi
mov dword [esp + 0x68], esi
imul ecx, edx
mov dword [esp + 0x6c], edi
mov esi, dword [esp + 0x6c]
mul dword [esp + 0x68]
mov edi, edx
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0x10]
add edi, ecx
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x74], edx
mul dword [esp + 0x68]
mov eax, edi
mov edi, dword [esp + 0x60]
imul ecx, esi
mov esi, dword [esp + 0x70]
add ecx, edx
add esi, ecx
adc eax, 0
cmp edi, 0x3f
jle 0x4fa808
sub edi, 0x40
mov ecx, edi
shr eax, cl
mov ecx, eax
mov eax, 0xcccccccd
mul ecx
shr edx, 3
lea eax, [edx + edx*4]
add eax, eax
sub ecx, eax
mov byte [esp + 0x10], cl
jmp 0x4f9b44
mov dword [esp + 0x1c], eax
xor eax, eax
mov dword [esp + 0x10], 0
jmp 0x4fa480
cmp byte [esp + 0x1c], 0
je 0x4fa04f
test byte [esp + 0x3c], 1
je 0x4fa0dc
jmp 0x4fa04f
lea ecx, [eax + 5]
lea edx, [eax + 4]
mov eax, dword [esp + 0x38]
cmp eax, 3
je 0x4fab33
test eax, eax
je 0x4fab3d
mov eax, 5
jmp 0x4fa110
mov edi, 0xfffffff4
mov eax, 9
mov ebp, dword [esp + 0x24]
cmp edi, ebp
jg 0x4fa2b1
cmp dword [esp + 0x24], 5
jg 0x4fa2b1
mov edi, dword [esp + 0x24]
test edi, edi
js 0x4fa127
add eax, esi
mov edx, dword [esp + 0x2c]
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x24]
sub edx, edi
add eax, esi
cmp edx, eax
jl 0x4f9d22
jmp 0x4fa3d3
lea ecx, [eax + 4]
lea edx, [eax + 3]
mov eax, dword [esp + 0x38]
cmp eax, 3
je 0x4fab8f
test eax, eax
je 0x4fad91
mov eax, 4
jmp 0x4fa110
mov edi, 0xfffffff5
mov eax, 8
jmp 0x4fa742
mov eax, dword [esp + 0x30]
cmp ebx, eax
sete al
cmp byte [esp + 0x10], 4
seta dl
or eax, edx
movzx eax, al
add ebx, eax
jmp 0x4fa056
lea ecx, [eax + 3]
lea edx, [eax + 2]
mov eax, dword [esp + 0x38]
cmp eax, 3
je 0x4fae0f
test eax, eax
je 0x4fae19
mov eax, 3
jmp 0x4fa110
mov edx, dword [esp + 0x60]
mov ecx, 0x20
sub edx, 0x20
sub ecx, edx
shl eax, cl
mov ecx, edx
shr esi, cl
or eax, esi
mov ecx, eax
jmp 0x4fa6b7
mov eax, dword [esp + 0x50]
test eax, eax
jns 0x4fa83e
mov eax, dword [esp + 0x20]
mov byte [eax], 0x2d
add eax, 1
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x20]
cmp dword [esp + 0x2c], eax
je 0x4fafd9
test ebx, ebx
jne 0x4fab99
mov byte [eax], 0x30
add eax, 1
mov dword [esp + 0x20], eax
mov edi, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
mov dword [esp + 8], ebp
lea esi, [edi + eax]
lea eax, [edi + eax + 1]
mov dword [esp + 4], esi
mov dword [esp], eax
call sym._memmove
mov byte [esi], 0x2e
lea eax, [edi + 1]
mov edx, ebx
jmp 0x4f996a
mov eax, dword [esp + 0x24]
add eax, 4
cmp eax, 9
ja 0x4f9cef
jmp 0x4fa588
fld dword [esp + 0x170]
mov ebx, dword [esp + 0x20]
xor eax, eax
mov edx, ebx
fstp qword [esp]
call sym._anonymous_namespace_::ryu::d2fixed_buffered_n_double__unsigned_int__char_
xor edx, edx
add ebx, eax
mov eax, ebx
jmp 0x4f996a
mov eax, 7
jmp 0x4fa2a5
mov edi, 0xfffffff6
mov eax, 7
jmp 0x4fa742
cmp ebx, 9
jbe 0x4fb054
cmp ebx, 0x63
jbe 0x4fada0
cmp ebx, 0x3e7
jbe 0x4fae86
cmp ebx, 0x270f
jbe 0x4fae93
cmp ebx, 0x1869f
jbe 0x4fb06a
mov eax, 5
cmp ebx, 0xf423f
jbe 0x4fada5
mov eax, 5
cmp ebx, 0x98967f
jbe 0x4fae8b
mov ebp, 9
mov eax, 5
cmp ebx, 0x5f5e0ff
jbe 0x4fae98
mov eax, dword [esp + 0x2c]
mov esi, dword [esp + 0x20]
sub eax, esi
cmp eax, ebp
jb 0x4fb001
mov esi, 0x51c730
mov ecx, 0x32
lea edi, [esp + 0x84]
rep movsd dword es:[edi], dword [esi]
movzx eax, byte [esi]
mov byte [edi], al
mov eax, dword [esp + 0x20]
mov esi, 0x51eb851f
lea ecx, [eax + ebp - 2]
lea esi, [esi]
nop
mov eax, ebx
mov edi, ebx
sub ecx, 2
mul esi
shr edx, 5
imul eax, edx, 0x64
sub edi, eax
mov eax, ebx
mov ebx, edx
movzx edx, word [esp + edi*2 + 0x84]
mov word [ecx + 2], dx
cmp eax, 0x270f
ja 0x4fa990
cmp eax, 0x3e7
ja 0x4faddb
add ebx, 0x30
mov eax, dword [esp + 0x20]
mov byte [eax], bl
add eax, ebp
xor ebx, ebx
mov dword [esp + 0x20], eax
jmp 0x4fa42b
mov dword [esp + 0x28], 9
mov dword [esp + 0x18], 9
mov eax, dword [esp + 0x18]
mov esi, dword [esp + 0x10]
mov ebp, 0xd1b71759
lea ecx, [eax + esi]
mov eax, dword [esp + 0x20]
mov dword [esp + 0x2c], ecx
lea edi, [eax + ecx - 3]
lea esi, [esi]
mov eax, ebx
mov esi, ebx
mul ebp
mov ecx, edx
shr ecx, 0xd
imul eax, ecx, 0x2710
mov ecx, ebx
mov ebx, edx
shr ebx, 0xd
sub ecx, eax
mov eax, 0x51eb851f
mul ecx
shr edx, 5
imul eax, edx, 0x64
sub ecx, eax
mov eax, edi
sub edi, 4
movzx ecx, word [ecx + ecx + str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899]
mov word [edi + 6], cx
movzx edx, word [edx + edx + str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899]
mov word [edi + 4], dx
cmp esi, 0x5f5e0ff
ja 0x4faa08
mov ecx, dword [esp + 0x2c]
mov edi, dword [esp + 0x20]
lea edx, [edi + ecx + 1]
sub edx, eax
mov ebp, edx
cmp esi, 0xf423f
jbe 0x4faa9b
mov edi, edx
add ebp, 2
mov eax, 0x51eb851f
mul ebx
mov eax, ebx
shr edx, 5
imul esi, edx, 0x64
mov ebx, edx
sub eax, esi
mov esi, dword [esp + 0x20]
movzx edx, word [eax + eax + str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899]
lea eax, [ecx - 1]
sub eax, edi
mov word [esi + eax], dx
lea eax, [ebx + 0x30]
cmp ebx, 9
jbe 0x4faabc
movzx eax, byte [ebx + ebx + 0x5225c1]
mov esi, dword [esp + 0x20]
sub ecx, ebp
mov byte [esi + ecx], al
movzx eax, byte [ebx + ebx + str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899]
mov ebx, dword [esp + 0x1c]
mov byte [ebx], al
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x20]
mov byte [ebx + eax + 1], 0x2e
mov ebx, dword [esp + 0x18]
lea ecx, [ebx + eax + 1]
mov eax, ecx
jmp 0x4fa4f0
mov eax, 6
jmp 0x4fa2a5
mov edi, 0xfffffff7
mov eax, 6
jmp 0x4fa742
mov edx, dword [esp + 0x10]
mov ecx, 0x20
sub edx, 0x20
sub ecx, edx
shl eax, cl
mov ecx, edx
shr esi, cl
or eax, esi
mov ecx, eax
jmp 0x4fa342
mov dword [esp + 0x28], 8
mov dword [esp + 0x18], 8
jmp 0x4fa9e9
lea eax, [esi + 1]
mov edx, edi
jmp 0x4f9cf6
mov eax, 5
jmp 0x4fa2a5
mov edi, 0xfffffff8
mov eax, 5
jmp 0x4fa742
mov eax, dword [esp + 0x20]
mov ecx, esi
lea edi, [eax + 6]
mov dword [eax + 2], 0x30303030
mov eax, 0x30303030
and edi, 0xfffffffc
mov dword [esi + edx - 4], 0x30303030
sub ecx, edi
add ecx, edx
shr ecx, 2
rep stosd dword es:[edi], eax
jmp 0x4fa197
mov dword [esp + 0x28], 7
mov dword [esp + 0x18], 7
jmp 0x4fa9e9
mov eax, 4
jmp 0x4fa2a5
cmp ebx, 9
jbe 0x4fb074
cmp ebx, 0x63
jbe 0x4faefa
cmp ebx, 0x3e7
jbe 0x4fafbe
cmp ebx, 0x270f
jbe 0x4faff0
cmp ebx, 0x1869f
jbe 0x4fb104
mov eax, 5
cmp ebx, 0xf423f
jbe 0x4faeff
mov eax, 5
cmp ebx, 0x98967f
jbe 0x4fafc3
mov dword [esp + 0x10], 9
mov eax, 5
cmp ebx, 0x5f5e0ff
jbe 0x4faff5
mov esi, dword [esp + 0x20]
mov eax, dword [esp + 0x2c]
sub eax, esi
mov esi, dword [esp + 0x10]
cmp eax, esi
jb 0x4fb042
mov esi, 0x51c730
mov ecx, 0x32
lea edi, [esp + 0x84]
rep movsd dword es:[edi], dword [esi]
movzx eax, byte [esi]
mov byte [edi], al
mov esi, dword [esp + 0x10]
mov eax, dword [esp + 0x20]
lea ecx, [eax + esi - 2]
mov esi, 0x51eb851f
lea esi, [esi]
mov eax, ebx
mov edi, ebx
sub ecx, 2
mul esi
shr edx, 5
imul eax, edx, 0x64
sub edi, eax
mov eax, ebx
mov ebx, edx
movzx edx, word [esp + edi*2 + 0x84]
mov word [ecx + 2], dx
cmp eax, 0x270f
ja 0x4fac50
cmp eax, 0x3e7
ja 0x4faf39
add ebx, 0x30
mov eax, dword [esp + 0x20]
mov byte [eax], bl
mov ebx, dword [esp + 0x10]
add eax, ebx
xor ebx, ebx
mov dword [esp + 0x20], eax
jmp 0x4fa85e
cmp ebx, 9
jbe 0x4fb081
cmp ebx, 0x63
jbe 0x4faea0
cmp ebx, 0x3e7
jbe 0x4fafb1
cmp ebx, 0x270f
jbe 0x4fafe3
cmp ebx, 0x1869f
jbe 0x4fb0fa
mov eax, 5
cmp ebx, 0xf423f
jbe 0x4faea5
mov eax, 5
cmp ebx, 0x98967f
jbe 0x4fafb6
mov ebp, 9
mov eax, 5
cmp ebx, 0x5f5e0ff
jbe 0x4fafe8
mov eax, dword [esp + 0x2c]
mov esi, dword [esp + 0x10]
sub eax, esi
cmp eax, ebp
jb 0x4fb030
mov esi, 0x51c730
mov ecx, 0x32
lea edi, [esp + 0x84]
rep movsd dword es:[edi], dword [esi]
movzx eax, byte [esi]
mov byte [edi], al
mov eax, dword [esp + 0x10]
mov edi, 0x51eb851f
lea ecx, [eax + ebp - 2]
lea esi, [esi]
mov eax, ebx
mov esi, ebx
sub ecx, 2
mul edi
shr edx, 5
imul eax, edx, 0x64
sub esi, eax
mov eax, ebx
mov ebx, edx
movzx edx, word [esp + esi*2 + 0x84]
mov word [ecx + 2], dx
cmp eax, 0x270f
ja 0x4fad48
cmp eax, 0x3e7
ja 0x4faedb
add ebx, 0x30
mov eax, dword [esp + 0x10]
xor edx, edx
mov byte [eax], bl
add eax, ebp
mov dword [esp + 0x10], eax
jmp 0x4fa1bc
mov edi, 0xfffffff9
mov eax, 4
jmp 0x4fa742
mov eax, 1
mov esi, dword [esp + 0x20]
lea ebp, [eax + 1]
mov eax, dword [esp + 0x2c]
sub eax, esi
cmp eax, ebp
jb 0x4fb001
mov esi, 0x51c730
mov ecx, 0x32
lea edi, [esp + 0x84]
rep movsd dword es:[edi], dword [esi]
movzx eax, byte [esi]
mov byte [edi], al
cmp ebx, 0x63
ja 0x4fa97b
lea eax, [ebx + ebx]
mov ebx, dword [esp + 0x20]
movzx edx, byte [esp + eax + 0x85]
mov byte [ebx + 1], dl
movzx ebx, byte [esp + eax + 0x84]
jmp 0x4fa9c6
mov dword [esp + 0x28], 6
mov dword [esp + 0x18], 6
jmp 0x4fa9e9
mov eax, 3
jmp 0x4fa2a5
mov edi, 0xfffffffa
mov eax, 3
jmp 0x4fa742
mov dword [esp + 0x28], 5
mov dword [esp + 0x18], 5
jmp 0x4fa9e9
cmp eax, ebp
jg 0x4f9d22
jmp 0x4fa3d3
mov eax, 2
jmp 0x4fa2a5
mov edi, 0xfffffffb
mov eax, 2
jmp 0x4fa742
mov eax, dword [esp + 0x10]
mov dword [esp + 0x28], 4
mov ebp, 2
xor edi, edi
mov dword [esp + 0x18], 4
lea ecx, [eax + 4]
jmp 0x4faa73
mov eax, 1
lea ebp, [eax + 2]
jmp 0x4fa951
mov eax, 1
lea ebp, [eax + 3]
jmp 0x4fa951
mov eax, 1
mov esi, dword [esp + 0x10]
lea ebp, [eax + 1]
mov eax, dword [esp + 0x2c]
sub eax, esi
cmp eax, ebp
jb 0x4fb030
mov esi, 0x51c730
mov ecx, 0x32
lea edi, [esp + 0x84]
rep movsd dword es:[edi], dword [esi]
movzx eax, byte [esi]
mov byte [edi], al
cmp ebx, 0x63
ja 0x4fad35
lea eax, [ebx + ebx]
mov ebx, dword [esp + 0x10]
movzx edx, byte [esp + eax + 0x85]
mov byte [ebx + 1], dl
movzx ebx, byte [esp + eax + 0x84]
jmp 0x4fad7e
mov eax, 1
lea esi, [eax + 1]
mov edi, dword [esp + 0x20]
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x10], esi
sub eax, edi
cmp eax, esi
jb 0x4fb042
mov esi, 0x51c730
mov ecx, 0x32
lea edi, [esp + 0x84]
rep movsd dword es:[edi], dword [esi]
movzx eax, byte [esi]
mov byte [edi], al
cmp ebx, 0x63
ja 0x4fac38
lea edx, [ebx + ebx]
mov ebx, dword [esp + 0x20]
movzx eax, byte [esp + edx + 0x85]
mov byte [ebx + 1], al
movzx ebx, byte [esp + edx + 0x84]
jmp 0x4fac86
mov ebx, 0x84
jmp 0x4fa42b
mov eax, dword [esp + 0x10]
mov dword [esp + 0x28], 3
mov ebp, 2
xor edi, edi
mov dword [esp + 0x18], 3
lea ecx, [eax + 3]
jmp 0x4faa73
xor ecx, ecx
jmp 0x4f9bc7
xor ecx, ecx
jmp 0x4fa23f
mov eax, dword [esp + 0x10]
mov dword [esp + 0x28], 2
xor ebp, ebp
mov dword [esp + 0x18], 2
lea ecx, [eax + 2]
jmp 0x4faaa3
mov eax, 1
lea ebp, [eax + 2]
jmp 0x4fad0b
mov eax, 1
add eax, 2
mov dword [esp + 0x10], eax
jmp 0x4fac0a
mov edx, 0x84
jmp 0x4fa1bc
mov ebx, 0x84
jmp 0x4fa85e
mov eax, 1
lea ebp, [eax + 3]
jmp 0x4fad0b
mov eax, 1
add eax, 3
mov dword [esp + 0x10], eax
jmp 0x4fac0a
mov eax, dword [esp + 0x2c]
mov ebx, 0x84
mov dword [esp + 0x20], eax
jmp 0x4fa42b
mov dword [esp + 8], 0x26
mov dword [esp + 4], str.C:_buildroot_src_gcc_13.2.0_libstdc_v3_src_c17_ryu_f2s_intrinsics.h
mov dword [esp], str.value___0
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__assert]
mov eax, dword [esp + 0x2c]
mov edx, 0x84
mov dword [esp + 0x10], eax
jmp 0x4fa1bc
mov eax, dword [esp + 0x2c]
mov ebx, 0x84
mov dword [esp + 0x20], eax
jmp 0x4fa85e
mov ebp, 1
jmp 0x4fa9c3
mov word [esi + edx - 2], 0x3030
jmp 0x4fa197
mov ebp, 5
jmp 0x4fa951
mov dword [esp + 0x10], 1
jmp 0x4fac83
mov ebp, 1
jmp 0x4fad7b
call sym._anonymous_namespace_::ryu::mulShift32_unsigned_int__unsigned_long_long__int___clone_.part.0_
imul ecx, edx, 0xfff4d105
mov ebx, ecx
shr ebx, 0x14
lea esi, [ebx + edx]
mov edx, 0x98
mov dword [esp + 0x18], ebx
sub edx, eax
mov dword [esp + 0x70], ebx
sub edx, ebx
mov dword [esp + 0x24], esi
mov dword [esp + 0x68], edx
js 0x4fb111
imul eax, dword [esp + 0x68], 0x12934f
mov ebp, dword [esp + 0x18]
mov dword [esp + 0x78], eax
shr eax, 0x13
sub eax, 0x3c
sub ebp, eax
cmp ebp, 0x20
jle 0x4fb08b
mov eax, dword [esp + 0x68]
shl eax, 4
mov ebx, dword [eax + 0x53c0a8]
mov ecx, dword [eax + 0x53c0ac]
jmp 0x4f9d92
mov ecx, edx
mov eax, 1
jmp 0x4fa127
mov ebp, 5
jmp 0x4fad0b
mov dword [esp + 0x10], 5
jmp 0x4fac0a
mov dword [esp + 8], 0x39
mov dword [esp + 4], str.C:_buildroot_src_gcc_13.2.0_libstdc_v3_src_c17_ryu_common.h
mov dword [esp], str.e___0
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__assert]
nop
nop