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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x274
lea ebp, [esp + 0x290]
lea edi, [esp + 0x6c]
mov dword [esp + 4], edi
mov dword [esp], ebp
call fcn.004b0570
movss xmm0, dword [esp + 0x28c]
mov esi, eax
mov ebx, edx
movzx ecx, byte [esp + 0x299]
and ebx, 0xffff00ff
movss dword [esp + 0x30], xmm0
fld dword [esp + 0x30]
fxam
wait
fnstsw ax
fstp st(0)
test eax, 0x200
jne 0x4b97cb
shr ecx, 4
and ecx, 7
mov eax, ecx
shl eax, 8
xor edx, edx
cmp cl, 1
cmovne edx, eax
or ebx, edx
jmp 0x4b97d8
or ebx, 0x100
xorps xmm0, xmmword [0x590980]
lea ecx, [esp + 0x288]
movss dword [esp + 0x2c], xmm0
fld dword [esp + 0x2c]
fxam
wait
fnstsw ax
fstp st(0)
test eax, 0x100
jne 0x4b9938
movzx eax, byte [ebp + 9]
and al, 0xf
cmp al, 4
movups xmmword [esp + 0x5c], xmm0
jne 0x4b986c
mov eax, ebx
and eax, 0xff00
je 0x4b986c
mov edi, dword [ecx]
movzx eax, bh
movzx eax, byte [eax + 0x59186c]
mov byte [esp + 0x1b], al
mov ecx, dword [edi + 8]
lea eax, [ecx + 1]
cmp dword [edi + 0xc], eax
jae 0x4b9840
mov edx, dword [edi]
mov dword [esp], eax
mov ecx, edi
call dword [edx]
sub esp, 4
mov ecx, dword [edi + 8]
lea eax, [ecx + 1]
mov edx, dword [edi + 4]
mov dword [edi + 8], eax
movzx eax, byte [esp + 0x1b]
mov byte [edx + ecx], al
lea eax, [esp + 0x288]
mov dword [eax], edi
and ebx, 0xffff00ff
mov eax, dword [ebp]
test eax, eax
je 0x4b9868
dec eax
mov dword [ebp], eax
lea edi, [esp + 0x6c]
lea eax, [esp + 0x74]
mov dword [esp], eax
mov dword [esp + 8], 0x200
mov dword [esp + 4], 0
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov dword [esp + 0x6c], 0x591ac8
lea eax, [esp + 0x7c]
mov dword [esp + 0x70], eax
mov dword [esp + 0x78], 0x1f4
cmp bl, 3
jne 0x4b99c5
mov eax, ebx
shr eax, 8
and eax, 0xff
movups xmm0, xmmword [esp + 0x5c]
je 0x4b98cd
movzx eax, byte [eax + 0x59186c]
mov dword [esp + 0x74], 1
mov byte [esp + 0x7c], al
cvtss2sd xmm0, xmm0
mov eax, dword [ebp + 4]
mov dword [esp + 0x58], ebx
mov dword [esp + 0x54], esi
movsd xmm1, qword [esp + 0x54]
movsd qword [esp + 0xc], xmm1
mov dword [esp + 0x14], edi
mov dword [esp + 8], eax
movsd qword [esp], xmm0
call fcn.004abb10
lea eax, [esp + 0x288]
mov eax, dword [eax]
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x70]
mov ecx, dword [esp + 0x74]
mov dword [esp + 0x4c], eax
mov dword [esp + 0x50], ecx
movsd xmm0, qword [esp + 0x4c]
movsd qword [esp + 4], xmm0
mov eax, dword [esp + 0x38]
mov dword [esp], eax
mov dword [esp + 0xc], ebp
call fcn.004b4a60
jmp 0x4b9ada
mov ecx, dword [ecx]
movss dword [esp + 0x28], xmm0
fld dword [esp + 0x28]
fxam
wait
fnstsw ax
fstp st(0)
and eax, 0x4500
test ebx, 0x10000
mov edx, 0x590bd9
mov esi, 0x590bd5
cmove esi, edx
mov ebp, edi
mov edi, 0x590be1
mov edx, 0x590bdd
cmove edx, edi
cmp eax, 0x500
cmove edx, esi
shr ebx, 8
xor eax, eax
and ebx, 0xff
sete al
mov esi, 4
sub esi, eax
mov dword [esp + 0x6c], ebx
mov dword [esp + 0x70], edx
mov dword [esp + 0x1c], ecx
mov eax, dword [esp + 0x1c]
mov dword [esp], eax
mov dword [esp + 0x10], ebp
mov dword [esp + 0xc], esi
mov dword [esp + 8], esi
lea eax, [esp + 0x290]
mov dword [esp + 4], eax
call fcn.004b2fb0
mov esi, eax
jmp 0x4b9af0
mov ecx, edi
cmp byte [ebp + 8], 0
mov eax, dword [ebp + 4]
mov edi, 6
cmove edi, eax
test eax, eax
cmovns edi, eax
cmp bl, 1
movups xmm0, xmmword [esp + 0x5c]
jne 0x4b99f2
cmp edi, 0x7fffffff
je 0x4b9afd
inc edi
mov ebp, ebx
or ebp, 0xc0000
cvtss2sd xmm0, xmm0
mov dword [esp + 0x44], esi
mov dword [esp + 0x48], ebp
movsd xmm1, qword [esp + 0x44]
movsd qword [esp + 0xc], xmm1
mov dword [esp + 0x14], ecx
mov dword [esp + 8], edi
movsd qword [esp], xmm0
call fcn.004ac1e0
mov esi, eax
mov dl, 0x2e
test ebx, 0x20000
je 0x4b9a7f
lea eax, [esp + 0x2a0]
mov eax, dword [eax]
test eax, eax
je 0x4b9a4e
mov dword [esp], eax
lea ecx, [esp + 0x1c]
call fcn.0043f7e0
sub esp, 4
jmp 0x4b9a57
lea ecx, [esp + 0x1c]
call fcn.0043f710
mov eax, dword [0x591c28]
mov dword [esp], eax
lea ecx, [esp + 0x1c]
call fcn.004401e0
sub esp, 4
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0xc]
mov ebx, eax
lea ecx, [esp + 0x1c]
call fcn.0043f7f0
mov edx, ebx
mov eax, dword [esp + 0x70]
mov ecx, dword [esp + 0x74]
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], ecx
mov dword [esp + 0x24], esi
lea eax, [esp + 0x288]
mov eax, dword [eax]
mov dword [esp + 0x34], eax
mov dword [esp + 0x40], ebp
mov dword [esp + 0x3c], edi
movsd xmm0, qword [esp + 0x3c]
movsd qword [esp + 0xc], xmm0
mov eax, dword [esp + 0x34]
mov dword [esp], eax
movsx eax, dl
mov dword [esp + 0x14], eax
lea eax, [esp + 0x290]
mov dword [esp + 8], eax
lea eax, [esp + 0x1c]
mov dword [esp + 4], eax
call fcn.004b4b60
mov esi, eax
mov eax, dword [esp + 0x70]
lea ecx, [esp + 0x7c]
cmp eax, ecx
je 0x4b9af0
mov dword [esp], eax
call fcn.00420e70
mov eax, esi
add esp, 0x274
pop esi
pop edi
pop ebx
pop ebp
ret
mov dword [esp], 2
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov dword [esp], eax
mov dword [esp + 0x10], 0x590abc
mov dword [esp + 0xc], 0x78a
mov dword [esp + 8], str.external_fmtlib_include_fmt_format.h
call fcn.004a8080
call fcn.0049aa70
int3