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

Disassembly:
fldz
sub esp, 0xdc
fld dword [esp + 0xf4]
push ebx
mov ebx, dword [esp + 0xe4]
fcom st(1)
push ebp
push esi
push edi
fnstsw ax
fld dword [0x723914]
test ah, 5
jp 0x50427b
fadd st(1), st(0)
fxch st(1)
fcom st(2)
fnstsw ax
test ah, 0x41
jne 0x5042bc
fstp st(2)
fcom st(1)
fnstsw ax
test ah, 0x41
je 0x504297
fstp st(1)
fld st(0)
fxch st(1)
fld dword [0x723b10]
fld dword [esp + 0x10c]
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x5042c0
fcom st(2)
fnstsw ax
test ah, 5
jnp 0x5042c4
fstp st(0)
fld st(1)
jmp 0x5042c4
fstp st(0)
jmp 0x504297
fstp st(0)
fld st(0)
fld dword [esp + 0x108]
fcom st(2)
fnstsw ax
test ah, 0x41
jne 0x5042e9
fstp st(2)
fxch st(1)
fcom st(2)
fnstsw ax
test ah, 5
jnp 0x50436d
fstp st(0)
jmp 0x5042ef
fstp st(0)
fstp st(2)
fxch st(1)
fxch st(2)
fstp qword [esp + 0x40]
fst qword [esp + 0x48]
fld dword [esp + 0xfc]
fld dword [0x6bf9f0]
fmul st(1), st(0)
fxch st(1)
fabs
fst qword [esp + 0x68]
fld dword [esp + 0x100]
fmulp st(2)
fxch st(1)
fabs
fst qword [esp + 0x80]
fld dword [esp + 0xf4]
faddp st(2)
fxch st(1)
fstp qword [esp + 0x60]
fadd dword [esp + 0xf8]
fstp qword [esp + 0x78]
fxch st(1)
fmul qword [0x723770]
fld st(0)
fsin
fstp qword [esp + 0xc8]
fcos
fstp qword [esp + 0xa8]
fldz
fcomp st(1)
fnstsw ax
test ah, 0x41
jne 0x504374
fld qword [0x723b08]
jmp 0x50437a
fstp st(2)
jmp 0x5042ef
fld qword [0x723b00]
fst qword [esp + 0x58]
sub esp, 8
fdivp st(1)
fstp qword [esp]
call fcn.0069c430
fnstcw word [esp + 0x1e]
add esp, 8
movzx eax, word [esp + 0x16]
or eax, 0xc00
mov dword [esp + 0x30], eax
xor esi, esi
fldcw word [esp + 0x30]
fistp qword [esp + 0x38]
mov ebp, dword [esp + 0x38]
test ebp, ebp
fldcw word [esp + 0x16]
fldz
jbe 0x5046a2
fld qword [esp + 0x48]
fabs
fstp qword [esp + 0xd8]
fld qword [esp + 0x40]
fld qword [0x723770]
fmul st(1), st(0)
fxch st(1)
fst qword [esp + 0x98]
fld1
fld qword [esp + 0x80]
fdivr st(1)
fst qword [esp + 0xb8]
fxch st(1)
fdiv qword [esp + 0x68]
fst qword [esp + 0x88]
jmp 0x50441f
fld qword [esp + 0x70]
fld qword [0x723770]
fld qword [esp + 0x98]
fld qword [esp + 0xb8]
fld qword [esp + 0x88]
fld st(4)
fmul st(4)
fadd st(3)
fxch st(5)
fadd qword [esp + 0x58]
fst qword [esp + 0x70]
fld st(0)
fabs
fcomp qword [esp + 0xd8]
fnstsw ax
test ah, 0x41
jne 0x50444b
fstp st(0)
fld qword [esp + 0x48]
fst qword [esp + 0x70]
fmulp st(4)
fxch st(3)
faddp st(2)
fld st(3)
fsin
fmul st(1)
fxch st(4)
fcos
fmul st(3)
fxch st(1)
fxch st(4)
fxch st(1)
fpatan
fst qword [esp + 0x18]
fld st(1)
fsin
fmulp st(4)
fxch st(1)
fcos
fmulp st(2)
fxch st(2)
fxch st(1)
fpatan
fst qword [esp + 0x28]
fsubrp st(1)
fst qword [esp + 0x20]
fmul qword [0x723578]
fptan
fstp st(0)
fld qword [0x7236d8]
call fcn.006b2780
fmul qword [0x7237a8]
fadd qword [0x723af8]
fsqrt
fsub qword [0x723600]
fmul qword [0x723af0]
fld qword [esp + 0x20]
fsin
fmulp st(1)
fld qword [esp + 0x18]
fld st(0)
fsin
fxch st(1)
fcos
fst qword [esp + 0x20]
fld qword [esp + 0xa8]
fmul st(1), st(0)
fxch st(1)
fst qword [esp + 0xc0]
fld st(2)
fld qword [esp + 0xc8]
fmul st(1), st(0)
fxch st(1)
fst qword [esp + 0xb0]
fld qword [esp + 0x68]
fmul st(3), st(0)
fxch st(3)
fadd qword [esp + 0x60]
fld qword [esp + 0x80]
fmul st(2), st(0)
fxch st(1)
fsubrp st(2)
fxch st(5)
fmul st(4)
fst qword [esp + 0x90]
fld qword [esp + 0x20]
fmul st(3)
fst qword [esp + 0xa0]
fmul st(4)
fxch st(1)
fmul st(6)
faddp st(1)
fadd qword [esp + 0x78]
fstp qword [esp + 0x20]
fld qword [esp + 0x28]
fld st(0)
fsin
fstp qword [esp + 0x18]
fcos
fst qword [esp + 0x28]
fmul st(4)
test esi, esi
fst qword [esp + 0xe0]
fld qword [esp + 0x18]
fmul st(3)
fst qword [esp + 0xd0]
fxch st(1)
fmul st(4)
fadd qword [esp + 0x60]
fxch st(1)
fmul st(6)
fsubp st(1)
fld qword [esp + 0x18]
fmulp st(5)
fld qword [esp + 0x28]
fmulp st(3)
fxch st(2)
fst qword [esp + 0x28]
fmul st(3)
fld st(4)
fmul st(6)
faddp st(1)
fadd qword [esp + 0x78]
fstp qword [esp + 0x18]
fst dword [esp + 0x30]
fld qword [esp + 0x20]
fstp dword [esp + 0x34]
fld qword [esp + 0x90]
fmul st(3)
fchs
fld qword [esp + 0xa0]
fmul st(6)
fsubp st(1)
fmul st(6)
faddp st(1)
fst dword [esp + 0x40]
fld qword [esp + 0xb0]
fmul st(3)
fchs
fld qword [esp + 0xc0]
fmul st(6)
faddp st(1)
fmul st(6)
fadd qword [esp + 0x20]
fst dword [esp + 0x44]
fxch st(4)
fmul st(3)
fchs
fld qword [esp + 0x28]
fmul st(6)
fsubp st(1)
fmul st(6)
fsubr st(2)
fst dword [esp + 0x50]
fld qword [esp + 0xd0]
fmulp st(4)
fxch st(3)
fchs
fld qword [esp + 0xe0]
fmulp st(6)
faddp st(5)
fxch st(4)
fmulp st(5)
fld qword [esp + 0x18]
fld st(0)
fsubrp st(6)
fxch st(5)
fst dword [esp + 0x54]
fxch st(1)
fst dword [esp + 0x38]
fxch st(5)
fst dword [esp + 0x3c]
jne 0x504669
mov eax, dword [ebx + 4]
sub esp, 0x20
fstp dword [esp + 0x1c]
fxch st(4)
fstp dword [esp + 0x18]
fxch st(3)
fstp dword [esp + 0x14]
fxch st(2)
fstp dword [esp + 0x10]
fxch st(1)
fstp dword [esp + 0xc]
fstp dword [esp + 8]
fld dword [esp + 0x54]
fstp dword [esp + 4]
fld dword [esp + 0x50]
fstp dword [esp]
push eax
call sub.gdiplus.dll_GdipAddPathBezier
test eax, eax
je 0x50468a
mov dword [ebx + 8], eax
jmp 0x50468a
fstp st(5)
lea ecx, [esp + 0x50]
fstp st(4)
push ecx
fstp st(3)
lea edx, [esp + 0x44]
fstp st(1)
push edx
fstp st(1)
lea edi, [esp + 0x40]
mov eax, ebx
fstp st(0)
call fcn.0049cc30
add esi, 1
cmp esi, ebp
jb 0x504400
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xdc
ret 0x20
pop edi
fstp st(0)
pop esi
pop ebp
pop ebx
add esp, 0xdc
ret 0x20