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

Disassembly:
push ebp
push ebx
mov edx, 0x25
sub esp, 4
mov dword [esp], 0
dec edx
jne 0x42f0dd
call fcn.005423e0
fld qword [esp + 0xa0]
fsub qword [esp + 0xb0]
fadd qword [0x64230c]
fabs
fcomp qword [str.333333]
fnstsw ax
test ah, 0x41
je 0x42f137
fld qword [esp + 0xa8]
fsub qword [esp + 0xb8]
fadd qword [0x64230c]
fabs
fcomp qword [str.333333]
fnstsw ax
test ah, 0x41
je 0x42f137
jmp 0x42f13e
mov eax, 1
jmp 0x42f140
xor eax, eax
and eax, eax
je 0x42fab6
lea ebp, [0x72b27c]
mov ebx, dword [ebp + 0x3c]
and ebx, 0x100
push ebx
pop eax
mov word [esp + 0x1c], ax
lea ebp, [0x72b27c]
mov ebx, dword [ebp + 0x3c]
and ebx, 0x200
push ebx
pop eax
mov word [esp + 0x20], ax
fld qword [esp + 0xa8]
fld qword [esp + 0xb8]
fcompp
fnstsw ax
test ah, 0x40
je 0x42f19f
fld qword [esp + 0xa8]
fadd qword [0x642744]
fstp qword [esp + 0xa8]
lea edx, [esp + 0xb0]
push dword [edx + 4]
push dword [edx]
call fcn.00520cd0
fstp qword [esp + 0x24]
lea edx, [esp + 0xb8]
push dword [edx + 4]
push dword [edx]
call fcn.00520cd0
fstp qword [esp + 0x2c]
lea edx, [esp + 0xa0]
push dword [edx + 4]
push dword [edx]
call fcn.00520cd0
fstp qword [esp + 0x34]
lea edx, [esp + 0xa8]
push dword [edx + 4]
push dword [edx]
call fcn.00520cd0
fstp qword [esp + 0x3c]
fld qword [esp + 0xa8]
fsub qword [esp + 0xb8]
fadd qword [0x64230c]
sub esp, 8
fstp qword [esp]
call fcn.00520cd0
fstp qword [esp + 0x44]
fld qword [esp + 0x34]
fptan
fstp dword [esp - 4]
fld qword [esp + 0x2c]
fcos
fmulp st(1)
fld qword [esp + 0x24]
fptan
fstp dword [esp - 4]
fld qword [esp + 0x3c]
fcos
fmulp st(1)
fsubp st(1)
fadd qword [0x64230c]
fld qword [esp + 0x44]
fsin
fdivp st(1)
fstp qword [esp + 0x4c]
fld qword [esp + 0x24]
fptan
fstp dword [esp - 4]
fld qword [esp + 0x3c]
fsin
fmulp st(1)
fld qword [esp + 0x34]
fptan
fstp dword [esp - 4]
fld qword [esp + 0x2c]
fsin
fmulp st(1)
fsubp st(1)
fadd qword [0x64230c]
fld qword [esp + 0x44]
fsin
fdivp st(1)
fstp qword [esp + 0x54]
push 0x4000ff
push 2
push 0
call sub.GDI32.dll_CreatePen
mov dword [esp + 0x5c], eax
push 0xffb400
push 2
push 0
call sub.GDI32.dll_CreatePen
mov dword [esp + 0x60], eax
fld qword [esp + 0xa8]
fsub qword [esp + 0xb8]
fadd qword [0x64230c]
fabs
fstp qword [esp + 0x64]
fld qword [esp + 0x64]
fchs
fadd qword [0x64274c]
fstp qword [esp + 0x6c]
fld qword [esp + 0xa8]
fld qword [esp + 0xb8]
fcompp
fnstsw ax
test ah, 1
je 0x42f32f
fld qword [esp + 0xb8]
fld qword [esp + 0xa8]
fstp qword [esp + 0xb8]
fstp qword [esp + 0xa8]
fld qword [esp + 0xb0]
fld qword [esp + 0xa0]
fstp qword [esp + 0xb0]
fstp qword [esp + 0xa0]
fld qword [esp + 0xc0]
fld qword [esp + 0xa8]
fmul qword [0x6424bc]
fadd qword [0x64274c]
fmulp st(1)
fistp dword [esp + 0x74]
fld qword [esp + 0xc0]
fld qword [esp + 0xa0]
fmul qword [0x6424bc]
fchs
fadd qword [0x6425fc]
fmulp st(1)
fistp dword [esp + 0x78]
fld qword [esp + 0xc0]
fld qword [esp + 0xb8]
fmul qword [0x6424bc]
fadd qword [0x64274c]
fmulp st(1)
fistp dword [esp + 0x7c]
fld qword [esp + 0xc0]
fld qword [esp + 0xb0]
fmul qword [0x6424bc]
fchs
fadd qword [0x6425fc]
fmulp st(1)
fistp dword [esp + 0x80]
fld qword [esp + 0x64]
fld qword [esp + 0x6c]
fcompp
fnstsw ax
test ah, 0x41
jne 0x42f3d9
push dword [esp + 0x60]
push dword [esp + 0xcc]
call sub.GDI32.dll_SelectObject
jmp 0x42f3e9
push dword [esp + 0x5c]
push dword [esp + 0xcc]
call sub.GDI32.dll_SelectObject
fld qword [esp + 0xa8]
fmul qword [0x64270c]
fadd qword [0x6425b4]
fistp dword [esp + 0x84]
fld qword [esp + 0xa8]
fmul qword [0x64270c]
fadd qword [0x642754]
fistp dword [esp + 0x88]
fld qword [esp + 0xb8]
fmul qword [0x64270c]
fadd qword [0x6425b4]
fistp dword [esp + 0x8c]
fld qword [esp + 0xb8]
fmul qword [0x64270c]
fadd qword [0x642754]
fistp dword [esp + 0x90]
mov dword [esp + 8], 0xfffff574
jmp 0x42f45b
mov eax, dword [esp + 0x88]
cmp eax, dword [esp + 8]
jl 0x42f5a4
fild dword [esp + 8]
fdiv qword [0x64270c]
fstp qword [esp + 0x14]
lea edx, [esp + 0x14]
push dword [edx + 4]
push dword [edx]
call fcn.00520cd0
fstp qword [esp + 0xc]
push 2
fld qword [esp + 0xc4]
fld qword [esp + 0x18]
fmul dword [0x6422c4]
fadd dword [0x6422c8]
fmulp st(1)
sub esp, 4
fstp dword [esp]
call fcn.00520ce0
fistp dword [esp]
push 2
fld qword [esp + 0xc4]
sub esp, 8
fstp qword [esp]
fld qword [esp + 0x58]
fld qword [esp + 0x18]
fsin
fmulp st(1)
fld qword [esp + 0x60]
fld qword [esp + 0x18]
fcos
fmulp st(1)
faddp st(1)
fadd dword [0x6422bc]
sub esp, 4
fstp dword [esp]
call fcn.00520d70
sub esp, 4
fstp dword [esp]
call fcn.00520d90
fld qword [esp]
fxch st(1)
add esp, 8
fmul dword [0x6422c4]
fchs
fadd dword [0x6422cc]
fmulp st(1)
sub esp, 4
fstp dword [esp]
call fcn.00520ce0
fistp dword [esp + 4]
mov ebx, dword [esp + 8]
cmp ebx, 0xfffff574
jne 0x42f54f
push 0
push dword [esp + 8]
push 0
push dword [esp + 0xd4]
call sub.GDI32.dll_MoveToEx
jmp 0x42f59a
fld qword [esp + 0x64]
fld qword [esp + 0x6c]
fcompp
fnstsw ax
test ah, 0x41
jne 0x42f57e
cmp word [esp + 0x20], 0
je 0x42f57c
push dword [esp + 4]
push dword [esp + 4]
push dword [esp + 0xd0]
call sub.GDI32.dll_LineTo
jmp 0x42f59a
cmp word [esp + 0x1c], 0
je 0x42f59a
push dword [esp + 4]
push dword [esp + 4]
push dword [esp + 0xd0]
call sub.GDI32.dll_LineTo
inc dword [esp + 8]
jno 0x42f45b
fld qword [esp + 0x64]
fld qword [esp + 0x6c]
fcompp
fnstsw ax
test ah, 0x41
jne 0x42f5c4
cmp word [esp + 0x20], 0
je 0x42f5c4
mov eax, 1
jmp 0x42f5c6
xor eax, eax
and eax, eax
jne 0x42f5f2
fld qword [esp + 0x64]
fld qword [esp + 0x6c]
fcompp
fnstsw ax
test ah, 0x41
je 0x42f5ea
cmp word [esp + 0x1c], 0
je 0x42f5ea
mov eax, 1
jmp 0x42f5ec
xor eax, eax
and eax, eax
jne 0x42f5f2
jmp 0x42f5f9
mov eax, 1
jmp 0x42f5fb
xor eax, eax
and eax, eax
je 0x42f613
push dword [esp + 0x78]
push dword [esp + 0x78]
push dword [esp + 0xd0]
call sub.GDI32.dll_LineTo
fld qword [esp + 0x64]
fld qword [esp + 0x6c]
fcompp
fnstsw ax
test ah, 0x41
jne 0x42f636
push dword [esp + 0x5c]
push dword [esp + 0xcc]
call sub.GDI32.dll_SelectObject
jmp 0x42f646
push dword [esp + 0x60]
push dword [esp + 0xcc]
call sub.GDI32.dll_SelectObject
fld qword [esp + 0xa8]
fsub qword [esp + 0xb8]
fadd qword [0x64230c]
fabs
fcomp qword [0x6425cc]
fnstsw ax
test ah, 1
je 0x42f6de
push 0
push dword [esp + 0x7c]
push dword [esp + 0x7c]
push dword [esp + 0xd4]
call sub.GDI32.dll_MoveToEx
fld qword [esp + 0x64]
fld qword [esp + 0x6c]
fcompp
fnstsw ax
test ah, 0x41
jne 0x42f6b7
cmp word [esp + 0x1c], 0
je 0x42f6b5
push dword [esp + 0x80]
push dword [esp + 0x80]
push dword [esp + 0xd0]
call sub.GDI32.dll_LineTo
jmp 0x42f6d9
cmp word [esp + 0x20], 0
je 0x42f6d9
push dword [esp + 0x80]
push dword [esp + 0x80]
push dword [esp + 0xd0]
call sub.GDI32.dll_LineTo
jmp 0x42f835
push dword [esp + 0x84]
pop eax
mov dword [esp + 8], eax
jmp 0x42f6ec
mov eax, dword [esp + 0x90]
cmp eax, dword [esp + 8]
jl 0x42f835
fild dword [esp + 8]
fdiv qword [0x64270c]
fstp qword [esp + 0x14]
lea edx, [esp + 0x14]
push dword [edx + 4]
push dword [edx]
call fcn.00520cd0
fstp qword [esp + 0xc]
push 2
fld qword [esp + 0xc4]
fld qword [esp + 0x18]
fmul dword [0x6422c4]
fadd dword [0x6422c8]
fmulp st(1)
sub esp, 4
fstp dword [esp]
call fcn.00520ce0
fistp dword [esp]
push 2
fld qword [esp + 0xc4]
sub esp, 8
fstp qword [esp]
fld qword [esp + 0x58]
fld qword [esp + 0x18]
fsin
fmulp st(1)
fld qword [esp + 0x60]
fld qword [esp + 0x18]
fcos
fmulp st(1)
faddp st(1)
fadd dword [0x6422bc]
sub esp, 4
fstp dword [esp]
call fcn.00520d70
sub esp, 4
fstp dword [esp]
call fcn.00520d90
fld qword [esp]
fxch st(1)
add esp, 8
fmul dword [0x6422c4]
fchs
fadd dword [0x6422cc]
fmulp st(1)
sub esp, 4
fstp dword [esp]
call fcn.00520ce0
fistp dword [esp + 4]
mov ebx, dword [esp + 8]
cmp ebx, dword [esp + 0x84]
jne 0x42f7e0
push 0
push dword [esp + 0x7c]
push dword [esp + 0x7c]
push dword [esp + 0xd4]
call sub.GDI32.dll_MoveToEx
jmp 0x42f82b
fld qword [esp + 0x64]
fld qword [esp + 0x6c]
fcompp
fnstsw ax
test ah, 0x41
jne 0x42f80f
cmp word [esp + 0x1c], 0
je 0x42f80d
push dword [esp + 4]
push dword [esp + 4]
push dword [esp + 0xd0]
call sub.GDI32.dll_LineTo
jmp 0x42f82b
cmp word [esp + 0x20], 0
je 0x42f82b
push dword [esp + 4]
push dword [esp + 4]
push dword [esp + 0xd0]
call sub.GDI32.dll_LineTo
inc dword [esp + 8]
jno 0x42f6ec
fld qword [esp + 0x64]
fld qword [esp + 0x6c]
fcompp
fnstsw ax
test ah, 0x41
jne 0x42f855
cmp word [esp + 0x1c], 0
je 0x42f855
mov eax, 1
jmp 0x42f857
xor eax, eax
and eax, eax
jne 0x42f883
fld qword [esp + 0x64]
fld qword [esp + 0x6c]
fcompp
fnstsw ax
test ah, 0x41
je 0x42f87b
cmp word [esp + 0x20], 0
je 0x42f87b
mov eax, 1
jmp 0x42f87d
xor eax, eax
and eax, eax
jne 0x42f883
jmp 0x42f88a
mov eax, 1
jmp 0x42f88c
xor eax, eax
and eax, eax
je 0x42f8aa
push dword [esp + 0x80]
push dword [esp + 0x80]
push dword [esp + 0xd0]
call sub.GDI32.dll_LineTo
fld qword [esp + 0x64]
fld qword [esp + 0x6c]
fcompp
fnstsw ax
test ah, 0x41
jne 0x42f8cd
push dword [esp + 0x60]
push dword [esp + 0xcc]
call sub.GDI32.dll_SelectObject
jmp 0x42f8dd
push dword [esp + 0x5c]
push dword [esp + 0xcc]
call sub.GDI32.dll_SelectObject
mov dword [esp + 8], 0xa8c
jmp 0x42f8e7
mov eax, dword [esp + 0x8c]
cmp eax, dword [esp + 8]
jg 0x42fa2f
fild dword [esp + 8]
fdiv qword [0x64270c]
fstp qword [esp + 0x14]
lea edx, [esp + 0x14]
push dword [edx + 4]
push dword [edx]
call fcn.00520cd0
fstp qword [esp + 0xc]
push 2
fld qword [esp + 0xc4]
fld qword [esp + 0x18]
fmul dword [0x6422c4]
fadd dword [0x6422c8]
fmulp st(1)
sub esp, 4
fstp dword [esp]
call fcn.00520ce0
fistp dword [esp]
push 2
fld qword [esp + 0xc4]
sub esp, 8
fstp qword [esp]
fld qword [esp + 0x58]
fld qword [esp + 0x18]
fsin
fmulp st(1)
fld qword [esp + 0x60]
fld qword [esp + 0x18]
fcos
fmulp st(1)
faddp st(1)
fadd dword [0x6422bc]
sub esp, 4
fstp dword [esp]
call fcn.00520d70
sub esp, 4
fstp dword [esp]
call fcn.00520d90
fld qword [esp]
fxch st(1)
add esp, 8
fmul dword [0x6422c4]
fchs
fadd dword [0x6422cc]
fmulp st(1)
sub esp, 4
fstp dword [esp]
call fcn.00520ce0
fistp dword [esp + 4]
mov ebx, dword [esp + 8]
cmp ebx, 0xa8c
jne 0x42f9da
push 0
push dword [esp + 8]
push dword [esp + 8]
push dword [esp + 0xd4]
call sub.GDI32.dll_MoveToEx
jmp 0x42fa25
fld qword [esp + 0x64]
fld qword [esp + 0x6c]
fcompp
fnstsw ax
test ah, 0x41
jne 0x42fa09
cmp word [esp + 0x20], 0
je 0x42fa07
push dword [esp + 4]
push dword [esp + 4]
push dword [esp + 0xd0]
call sub.GDI32.dll_LineTo
jmp 0x42fa25
cmp word [esp + 0x1c], 0
je 0x42fa25
push dword [esp + 4]
push dword [esp + 4]
push dword [esp + 0xd0]
call sub.GDI32.dll_LineTo
dec dword [esp + 8]
jno 0x42f8e7
fld qword [esp + 0x64]
fld qword [esp + 0x6c]
fcompp
fnstsw ax
test ah, 0x41
jne 0x42fa4f
cmp word [esp + 0x20], 0
je 0x42fa4f
mov eax, 1
jmp 0x42fa51
xor eax, eax
and eax, eax
jne 0x42fa7d
fld qword [esp + 0x64]
fld qword [esp + 0x6c]
fcompp
fnstsw ax
test ah, 0x41
je 0x42fa75
cmp word [esp + 0x1c], 0
je 0x42fa75
mov eax, 1
jmp 0x42fa77
xor eax, eax
and eax, eax
jne 0x42fa7d
jmp 0x42fa84
mov eax, 1
jmp 0x42fa86
xor eax, eax
and eax, eax
je 0x42faa4
push dword [esp + 0x80]
push dword [esp + 0x80]
push dword [esp + 0xd0]
call sub.GDI32.dll_LineTo
push dword [esp + 0x5c]
call sub.GDI32.dll_DeleteObject
push dword [esp + 0x60]
call sub.GDI32.dll_DeleteObject
xor eax, eax
add esp, 0x94
pop ebx
pop ebp
ret 0x2c