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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x1fc
push ebx
push esi
push edi
call fcn.0042fb20
mov ecx, dword [eax + 0x60]
test ecx, ecx
je 0x4e88e7
call fcn.0042fb20
mov ecx, dword [eax + 0x5c]
test ecx, ecx
je 0x4e88e7
mov esi, dword [ebp + 8]
mov ecx, esi
call fcn.004ae9a0
mov ecx, eax
call fcn.0042e520
mov ecx, esi
call fcn.004afa60
mov edi, eax
mov ecx, esi
mov dword [esp + 0x1c], edi
call fcn.004afae0
mov ebx, eax
neg ebx
sbb ebx, ebx
and ebx, 2
cmp ebx, edi
jge 0x4e88e7
mov edi, dword [sym.imp.opengl32.dll_glVertex2d]
jmp 0x4e84d0
mov esi, dword [ebp + 8]
push ebx
mov ecx, esi
call fcn.004afa70
mov esi, eax
mov ecx, esi
call fcn.004b1ce0
cmp eax, 0x30
je 0x4e88da
mov ecx, esi
call fcn.004b1ce0
test eax, eax
jle 0x4e8841
mov ecx, esi
call fcn.004b1ce0
cmp eax, 9
jge 0x4e8841
mov ecx, esi
call fcn.004b1ce0
cmp eax, 2
push 1
jne 0x4e87b9
call dword [sym.imp.opengl32.dll_glBegin]
mov ecx, dword [esi + 0xc]
mov eax, dword [esi + 8]
lea edx, [esp + 0xb8]
mov dword [esp + 0x94], ecx
push edx
mov ecx, esi
mov dword [esp + 0x94], eax
call fcn.004b1c90
mov ecx, dword [eax]
mov dword [esp + 0x80], ecx
mov ecx, dword [esi + 4]
mov edx, dword [eax + 4]
mov eax, dword [esi]
mov dword [esp + 0x84], edx
lea edx, [esp + 0xe8]
mov dword [esp + 0x3c], ecx
push edx
mov ecx, esi
mov dword [esp + 0x3c], eax
call fcn.004b1c90
fld qword [eax + 8]
fld qword [esp + 0x80]
fmul qword [0x5e2788]
sub esp, 8
sub esp, 8
fadd qword [esp + 0xa0]
fstp qword [esp + 8]
fmul qword [0x5e2788]
fsubr qword [esp + 0x48]
fstp qword [esp]
call edi
mov ecx, dword [esi + 0xc]
mov eax, dword [esi + 8]
lea edx, [esp + 0x178]
mov dword [esp + 0xb4], ecx
push edx
mov ecx, esi
mov dword [esp + 0xb4], eax
call fcn.004b1c90
mov ecx, dword [eax + 8]
mov dword [esp + 0x48], ecx
mov ecx, esi
mov edx, dword [eax + 0xc]
lea eax, [esp + 0x118]
push eax
mov dword [esp + 0x50], edx
call fcn.004b1c90
mov ecx, dword [eax]
mov dword [esp + 0xa0], ecx
mov ecx, dword [esi + 4]
mov edx, dword [eax + 4]
mov eax, dword [esi]
mov dword [esp + 0xa4], edx
lea edx, [esp + 0x1d8]
mov dword [esp + 0x8c], ecx
push edx
mov ecx, esi
mov dword [esp + 0x8c], eax
call fcn.004b1c90
mov ecx, dword [eax]
mov dword [esp + 0x58], ecx
mov ecx, esi
mov edx, dword [eax + 4]
lea eax, [esp + 0x148]
push eax
mov dword [esp + 0x60], edx
call fcn.004b1c90
fld qword [eax + 8]
fld qword [esp + 0xa0]
fmul qword [0x5e2788]
sub esp, 8
sub esp, 8
fadd qword [esp + 0x58]
fadd qword [esp + 0xc0]
fstp qword [esp + 8]
fld qword [esp + 0x68]
fadd qword [esp + 0x98]
fxch st(1)
fmul qword [0x5e2788]
fsubp st(1)
fstp qword [esp]
call edi
mov ecx, dword [esi + 8]
mov edx, dword [esi + 0xc]
lea eax, [esp + 0x1a8]
mov dword [esp + 0xa8], ecx
push eax
mov ecx, esi
mov dword [esp + 0xb0], edx
call fcn.004b1c90
mov ecx, dword [eax]
mov dword [esp + 0x68], ecx
mov ecx, dword [esi + 4]
mov edx, dword [eax + 4]
mov eax, dword [esi]
mov dword [esp + 0x6c], edx
lea edx, [esp + 0xd0]
mov dword [esp + 0x7c], ecx
push edx
mov ecx, esi
mov dword [esp + 0x7c], eax
call fcn.004b1c90
fld qword [eax + 8]
fld qword [esp + 0x68]
fmul qword [0x5e2788]
sub esp, 8
sub esp, 8
fsubr qword [esp + 0xb8]
fstp qword [esp + 8]
fmul qword [0x5e2788]
fadd qword [esp + 0x88]
fstp qword [esp]
call edi
mov ecx, dword [esi + 0xc]
mov eax, dword [esi + 8]
lea edx, [esp + 0x100]
mov dword [esp + 0x54], ecx
push edx
mov ecx, esi
mov dword [esp + 0x54], eax
call fcn.004b1c90
mov ecx, dword [eax + 8]
mov dword [esp + 0x98], ecx
mov ecx, esi
mov edx, dword [eax + 0xc]
lea eax, [esp + 0x130]
push eax
mov dword [esp + 0xa0], edx
call fcn.004b1c90
mov ecx, dword [eax]
mov dword [esp + 0x60], ecx
mov ecx, dword [esi + 4]
mov edx, dword [eax + 4]
mov eax, dword [esi]
mov dword [esp + 0x64], edx
lea edx, [esp + 0x160]
mov dword [esp + 0x24], ecx
push edx
mov ecx, esi
mov dword [esp + 0x24], eax
call fcn.004b1c90
mov ecx, dword [eax]
mov dword [esp + 0x70], ecx
mov ecx, esi
mov edx, dword [eax + 4]
lea eax, [esp + 0x190]
push eax
mov dword [esp + 0x78], edx
call fcn.004b1c90
fld qword [eax + 8]
fld qword [esp + 0x98]
fadd qword [esp + 0x50]
fld qword [esp + 0x60]
fmul qword [0x5e2788]
sub esp, 8
sub esp, 8
fsubp st(1)
fstp qword [esp + 8]
fmul qword [0x5e2788]
fadd qword [esp + 0x80]
fadd qword [esp + 0x30]
fstp qword [esp]
call edi
call dword [sym.imp.opengl32.dll_glEnd]
jmp 0x4e88da
call dword [sym.imp.opengl32.dll_glBegin]
fld qword [esi + 8]
sub esp, 8
fstp qword [esp]
fld qword [esi]
sub esp, 8
fstp qword [esp]
call edi
mov ecx, dword [esi + 8]
mov edx, dword [esi + 0xc]
lea eax, [esp + 0x1c0]
mov dword [esp + 0x30], ecx
push eax
mov ecx, esi
mov dword [esp + 0x38], edx
call fcn.004b1c90
mov ecx, dword [eax + 8]
mov dword [esp + 0x28], ecx
mov ecx, dword [esi + 4]
mov edx, dword [eax + 0xc]
mov eax, dword [esi]
mov dword [esp + 0x2c], edx
lea edx, [esp + 0x1f0]
mov dword [esp + 0x44], ecx
push edx
mov ecx, esi
mov dword [esp + 0x44], eax
call fcn.004b1c90
fld qword [eax]
fld qword [esp + 0x28]
fadd qword [esp + 0x30]
sub esp, 8
sub esp, 8
fstp qword [esp + 8]
fadd qword [esp + 0x50]
fstp qword [esp]
call edi
call dword [sym.imp.opengl32.dll_glEnd]
jmp 0x4e88da
mov ecx, esi
call fcn.004b1ce0
cmp eax, 9
mov ecx, esi
jne 0x4e88a1
call fcn.004b1d10
fcomp qword [0x5e2790]
fnstsw ax
test ah, 1
je 0x4e8873
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0x3fe00000
jmp 0x4e887e
mov ecx, esi
call fcn.004b1d10
fstp qword [esp + 0x10]
fld qword [esi + 8]
mov eax, dword [esp + 0x14]
sub esp, 8
mov ecx, dword [esp + 0x18]
sub esp, 8
fstp qword [esp + 8]
fld qword [esi]
fstp qword [esp]
push eax
push ecx
call fcn.004e74f0
jmp 0x4e88d7
call fcn.004b1ce0
fld qword [esi + 8]
cmp eax, 0xf
jne 0x4e88c0
sub esp, 8
fstp qword [esp]
fld qword [esi]
sub esp, 8
fstp qword [esp]
push 3
jmp 0x4e88d0
sub esp, 8
fstp qword [esp]
fld qword [esi]
sub esp, 8
fstp qword [esp]
push 4
push 0
call fcn.004e7570
add esp, 0x18
mov eax, dword [esp + 0x1c]
inc ebx
cmp ebx, eax
jl 0x4e84cd
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret