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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10155464
mov eax, dword fs:[0]
push eax
sub esp, 0x288
mov eax, dword [0x10194820]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x11c], ecx
mov eax, dword [ebp - 0x11c]
cmp dword [eax + 0x48], 0
jne 0x10089df5
xor al, al
jmp 0x1008b90c
mov ecx, dword [ebp - 0x11c]
movzx edx, byte [ecx + 0x6c]
test edx, edx
jne 0x10089eab
push 0xc8
push 0xdc
push 0x50
mov eax, dword [ebp - 0x11c]
mov ecx, dword [ebp - 0x11c]
movss xmm0, dword [eax + 0x1c]
addss xmm0, dword [ecx + 0x2c]
addss xmm0, dword [0x10183258]
cvttss2si edx, xmm0
push edx
mov ecx, 0x1019bdc8
call fcn.10114700
movzx eax, al
test eax, eax
je 0x10089eab
mov ecx, dword [ebp - 0x11c]
movss xmm0, dword [ecx + 0x58]
comiss xmm0, dword [0x1018363c]
jb 0x10089e6e
mov edx, dword [ebp - 0x11c]
movss xmm0, dword [0x10182880]
movss dword [edx + 0x58], xmm0
mov eax, dword [ebp - 0x11c]
movss xmm0, dword [eax + 0x58]
addss xmm0, dword [0x101831a0]
mov ecx, dword [ebp - 0x11c]
movss dword [ecx + 0x58], xmm0
mov edx, dword [ebp - 0x11c]
push ecx
movss xmm0, dword [edx + 0x58]
movss dword [esp], xmm0
mov eax, dword [ebp - 0x11c]
mov ecx, dword [eax + 0x48]
call fcn.100949a0
push ecx
movss xmm0, dword [0x10182c40]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10182c40]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10182c40]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10182c40]
movss dword [esp], xmm0
call dword [sym.imp.OPENGL32.dll_glColor4f]
push ecx
movss xmm0, dword [0x10182880]
movss dword [esp], xmm0
push 1
push 1
push ecx
movss xmm0, dword [0x10182a74]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10182bf8]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10182880]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10182880]
movss dword [esp], xmm0
mov ecx, dword [ebp - 0x11c]
push ecx
movss xmm0, dword [ecx + 0x28]
movss dword [esp], xmm0
mov edx, dword [ebp - 0x11c]
push ecx
movss xmm0, dword [edx + 0x24]
movss dword [esp], xmm0
mov eax, dword [ebp - 0x11c]
push ecx
movss xmm0, dword [eax + 0x20]
movss dword [esp], xmm0
mov ecx, dword [ebp - 0x11c]
push ecx
movss xmm0, dword [ecx + 0x1c]
movss dword [esp], xmm0
push 0x130ab
mov edx, 0x637c60
call edx
add esp, 0x30
mov eax, dword [ebp - 0x11c]
movss xmm0, dword [eax + 0x20]
addss xmm0, dword [0x101831a0]
push ecx
movss dword [esp], xmm0
mov ecx, dword [ebp - 0x11c]
mov edx, dword [ebp - 0x11c]
movss xmm0, dword [ecx + 0x1c]
addss xmm0, dword [edx + 0x24]
subss xmm0, dword [0x1018326c]
push ecx
movss dword [esp], xmm0
mov eax, dword [ebp - 0x11c]
mov ecx, dword [eax + 0x3c]
call fcn.10080440
mov ecx, dword [ebp - 0x11c]
mov ecx, dword [ecx + 0x3c]
call fcn.100804a0
push ecx
movss xmm0, dword [0x10182c40]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10182c40]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10182c40]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10182c40]
movss dword [esp], xmm0
call dword [sym.imp.OPENGL32.dll_glColor4f]
mov ecx, dword [0x104c4518]
call fcn.100a4200
push ecx
movss xmm0, dword [0x10182880]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10182880]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10182880]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10182880]
movss dword [esp], xmm0
mov ecx, dword [0x104c4518]
call fcn.100a4050
push 1
mov ecx, dword [0x104c4518]
call fcn.100a4230
push 0x28a
mov ecx, 0x104c9018
call fcn.100c3ba0
push eax
push ecx
movss xmm0, dword [0x10182ee0]
movss dword [esp], xmm0
mov edx, dword [ebp - 0x11c]
push ecx
movss xmm0, dword [edx + 0x24]
movss dword [esp], xmm0
mov eax, dword [ebp - 0x11c]
movss xmm0, dword [eax + 0x20]
addss xmm0, dword [0x10183224]
push ecx
movss dword [esp], xmm0
mov ecx, dword [ebp - 0x11c]
push ecx
movss xmm0, dword [ecx + 0x1c]
movss dword [esp], xmm0
mov edx, dword [0x104c4518]
push edx
call fcn.100a3fb0
add esp, 0x18
push 0x28b
mov ecx, 0x104c9018
call fcn.100c3ba0
push eax
push ecx
movss xmm0, dword [0x10182ee0]
movss dword [esp], xmm0
mov eax, dword [ebp - 0x11c]
push ecx
movss xmm0, dword [eax + 0x2c]
movss dword [esp], xmm0
mov ecx, dword [ebp - 0x11c]
movss xmm0, dword [ecx + 0x20]
addss xmm0, dword [0x101832b4]
push ecx
movss dword [esp], xmm0
mov edx, dword [ebp - 0x11c]
movss xmm0, dword [edx + 0x1c]
addss xmm0, dword [0x1018322c]
push ecx
movss dword [esp], xmm0
mov eax, dword [0x104c4518]
push eax
call fcn.100a3fb0
add esp, 0x18
mov ecx, dword [0x104c4518]
call fcn.100a4200
push 1
mov ecx, dword [0x104c4518]
call fcn.100a4230
push 0x28c
mov ecx, 0x104c9018
call fcn.100c3ba0
push eax
push ecx
movss xmm0, dword [0x10182ee0]
movss dword [esp], xmm0
mov ecx, dword [ebp - 0x11c]
push ecx
movss xmm0, dword [ecx + 0x2c]
movss dword [esp], xmm0
mov edx, dword [ebp - 0x11c]
movss xmm0, dword [edx + 0x20]
addss xmm0, dword [0x10183468]
push ecx
movss dword [esp], xmm0
mov eax, dword [ebp - 0x11c]
movss xmm0, dword [eax + 0x1c]
addss xmm0, dword [0x1018322c]
push ecx
movss dword [esp], xmm0
mov ecx, dword [0x104c4518]
push ecx
call fcn.100a3fb0
add esp, 0x18
mov ecx, dword [0x104c4518]
call fcn.100a4870
push ecx
movss xmm0, dword [0x10182c40]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10182c40]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10182c40]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10182c40]
movss dword [esp], xmm0
call dword [sym.imp.OPENGL32.dll_glColor4f]
mov dword [ebp - 0x12c], 0
mov ecx, dword [ebp - 0x11c]
add ecx, 0x70
call fcn.1001b990
sub eax, 4
mov dword [ebp - 0x168], eax
cvtsi2sd xmm0, dword [ebp - 0x168]
mov edx, dword [ebp - 0x168]
shr edx, 0x1f
addsd xmm0, qword [edx*8 + 0x10183860]
mov eax, 4
imul eax, eax, 0
mov ecx, dword [ebp - 0x11c]
mov ecx, dword [ecx + eax + 0x40]
movsd qword [ebp - 0x200], xmm0
call fcn.1009eb60
fstp qword [ebp - 0x20c]
movsd xmm0, qword [ebp - 0x200]
mulsd xmm0, qword [ebp - 0x20c]
cvttsd2si edx, xmm0
mov dword [ebp - 0x148], edx
mov eax, dword [ebp - 0x148]
push eax
lea ecx, [ebp - 0x140]
push ecx
lea edx, [ebp - 0x264]
push edx
mov ecx, dword [ebp - 0x11c]
add ecx, 0x70
call fcn.10009b90
mov ecx, eax
call fcn.1001bd80
jmp 0x1008a2da
push 0
lea eax, [ebp - 0x244]
push eax
lea ecx, [ebp - 0x140]
call fcn.1001bd50
lea ecx, [ebp - 0x24c]
push ecx
mov ecx, dword [ebp - 0x11c]
add ecx, 0x70
call fcn.10009bc0
push eax
lea ecx, [ebp - 0x140]
call fcn.100024e0
movzx edx, al
test edx, edx
je 0x1008a4ee
cmp dword [ebp - 0x12c], 3
jle 0x1008a314
jmp 0x1008a4ee
mov eax, dword [ebp - 0x11c]
movss xmm0, dword [eax + 0x20]
addss xmm0, dword [0x10183304]
mov ecx, dword [ebp - 0x12c]
imul ecx, ecx, 0x14
cvtsi2ss xmm1, ecx
addss xmm0, xmm1
movss dword [ebp - 0x158], xmm0
lea ecx, [ebp - 0x140]
call fcn.1000a150
movzx edx, byte [eax]
mov eax, dword [ebp - 0x11c]
cmp dword [eax + 0x68], edx
jne 0x1008a36d
mov ecx, dword [ebp - 0x11c]
add ecx, 0xa8
mov dword [ebp - 0x170], ecx
jmp 0x1008a3b8
mov edx, 4
imul edx, edx, 0
mov eax, dword [ebp - 0x11c]
mov ecx, dword [eax + edx + 0x60]
cmp ecx, dword [ebp - 0x12c]
jne 0x1008a39b
mov edx, dword [ebp - 0x11c]
add edx, 0x98
mov dword [ebp - 0x174], edx
jmp 0x1008a3ac
mov eax, dword [ebp - 0x11c]
add eax, 0x88
mov dword [ebp - 0x174], eax
mov ecx, dword [ebp - 0x174]
mov dword [ebp - 0x170], ecx
push ecx
movss xmm0, dword [0x1018324c]
movss dword [esp], xmm0
mov edx, dword [ebp - 0x11c]
push ecx
movss xmm0, dword [edx + 0x2c]
movss dword [esp], xmm0
mov eax, dword [ebp - 0x170]
push eax
push ecx
movss xmm0, dword [ebp - 0x158]
movss dword [esp], xmm0
mov ecx, dword [ebp - 0x11c]
movss xmm0, dword [ecx + 0x1c]
addss xmm0, dword [0x1018322c]
push ecx
movss dword [esp], xmm0
mov ecx, dword [0x104c4518]
call fcn.100a3de0
push ecx
movss xmm0, dword [0x10182c40]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10182c40]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10182c40]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10182c40]
movss dword [esp], xmm0
call dword [sym.imp.OPENGL32.dll_glColor4f]
push 0x12
mov ecx, dword [0x104c4518]
call fcn.100a4230
mov ecx, dword [0x104c4518]
call fcn.100a4200
lea ecx, [ebp - 0x140]
call fcn.1000a150
add eax, 0x41
push eax
push ecx
movss xmm0, dword [0x10182c40]
movss dword [esp], xmm0
mov edx, dword [ebp - 0x11c]
movss xmm0, dword [edx + 0x2c]
subss xmm0, dword [0x1018322c]
push ecx
movss dword [esp], xmm0
movss xmm0, dword [ebp - 0x158]
addss xmm0, dword [0x101831e0]
push ecx
movss dword [esp], xmm0
mov eax, dword [ebp - 0x11c]
movss xmm0, dword [eax + 0x1c]
addss xmm0, dword [0x10183240]
push ecx
movss dword [esp], xmm0
mov ecx, dword [0x104c4518]
push ecx
call fcn.100a3fb0
add esp, 0x18
mov edx, dword [ebp - 0x12c]
add edx, 1
mov dword [ebp - 0x12c], edx
jmp 0x1008a2c6
mov dword [ebp - 0x12c], 0
mov ecx, dword [ebp - 0x11c]
add ecx, 0x7c
call fcn.1001b990
sub eax, 4
mov dword [ebp - 0x14c], eax
cvtsi2sd xmm0, dword [ebp - 0x14c]
mov eax, dword [ebp - 0x14c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x10183860]
mov ecx, 4
shl ecx, 0
mov edx, dword [ebp - 0x11c]
mov ecx, dword [edx + ecx + 0x40]
movsd qword [ebp - 0x218], xmm0
call fcn.1009eb60
fstp qword [ebp - 0x224]
movsd xmm0, qword [ebp - 0x218]
mulsd xmm0, qword [ebp - 0x224]
cvttsd2si eax, xmm0
mov dword [ebp - 0x148], eax
mov ecx, dword [ebp - 0x148]
push ecx
lea edx, [ebp - 0x134]
push edx
lea eax, [ebp - 0x254]
push eax
mov ecx, dword [ebp - 0x11c]
add ecx, 0x7c
call fcn.10009b90
mov ecx, eax
call fcn.1001bd80
jmp 0x1008a5a8
push 0
lea ecx, [ebp - 0x25c]
push ecx
lea ecx, [ebp - 0x134]
call fcn.1001bd50
lea edx, [ebp - 0x1cc]
push edx
mov ecx, dword [ebp - 0x11c]
add ecx, 0x7c
call fcn.10009bc0
push eax
lea ecx, [ebp - 0x134]
call fcn.100024e0
movzx eax, al
test eax, eax
je 0x1008a9b7
cmp dword [ebp - 0x12c], 3
jle 0x1008a5e2
jmp 0x1008a9b7
mov ecx, dword [ebp - 0x11c]
movss xmm0, dword [ecx + 0x20]
addss xmm0, dword [0x101834a4]
mov edx, dword [ebp - 0x12c]
imul edx, edx, 0x14
cvtsi2ss xmm1, edx
addss xmm0, xmm1
movss dword [ebp - 0x13c], xmm0
lea ecx, [ebp - 0x134]
call fcn.1000a150
movzx eax, byte [eax]
cmp eax, 0xff
jne 0x1008a753
push ecx
movss xmm0, dword [0x1018324c]
movss dword [esp], xmm0
mov ecx, dword [ebp - 0x11c]
push ecx
movss xmm0, dword [ecx + 0x2c]
movss dword [esp], xmm0
mov edx, dword [ebp - 0x11c]
add edx, 0xb8
push edx
push ecx
movss xmm0, dword [ebp - 0x13c]
movss dword [esp], xmm0
mov eax, dword [ebp - 0x11c]
movss xmm0, dword [eax + 0x1c]
addss xmm0, dword [0x1018322c]
push ecx
movss dword [esp], xmm0
mov ecx, dword [0x104c4518]
call fcn.100a3de0
push ecx
movss xmm0, dword [0x10182c40]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10182c40]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10182c40]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10182c40]
movss dword [esp], xmm0
call dword [sym.imp.OPENGL32.dll_glColor4f]
push 0
mov ecx, dword [0x104c4518]
call fcn.100a4230
mov ecx, dword [0x104c4518]
call fcn.100a4200
lea ecx, [ebp - 0x134]
call fcn.1000a150
add eax, 0x41
push eax
push ecx
movss xmm0, dword [0x10182ee0]
movss dword [esp], xmm0
mov ecx, dword [ebp - 0x11c]
movss xmm0, dword [ecx + 0x2c]
subss xmm0, dword [0x1018322c]
push ecx
movss dword [esp], xmm0
movss xmm0, dword [ebp - 0x13c]
addss xmm0, dword [0x101831e0]
push ecx
movss dword [esp], xmm0
mov edx, dword [ebp - 0x11c]
movss xmm0, dword [edx + 0x1c]
addss xmm0, dword [0x10183240]
push ecx
movss dword [esp], xmm0
mov eax, dword [0x104c4518]
push eax
call fcn.100a3fb0
add esp, 0x18
jmp 0x1008a9a3
lea ecx, [ebp - 0x134]
call fcn.1000a150
movzx ecx, byte [eax]
mov edx, dword [ebp - 0x11c]
cmp dword [edx + 0x68], ecx
jne 0x1008a77f
mov eax, dword [ebp - 0x11c]
add eax, 0xa8
mov dword [ebp - 0x150], eax
jmp 0x1008a7cb
mov ecx, 4
shl ecx, 0
mov edx, dword [ebp - 0x11c]
mov eax, dword [edx + ecx + 0x60]
cmp eax, dword [ebp - 0x12c]
jne 0x1008a7ad
mov ecx, dword [ebp - 0x11c]
add ecx, 0x98
mov dword [ebp - 0x160], ecx
jmp 0x1008a7bf
mov edx, dword [ebp - 0x11c]
add edx, 0x88
mov dword [ebp - 0x160], edx
mov eax, dword [ebp - 0x160]
mov dword [ebp - 0x150], eax
push ecx
movss xmm0, dword [0x1018324c]
movss dword [esp], xmm0
mov ecx, dword [ebp - 0x11c]
push ecx
movss xmm0, dword [ecx + 0x2c]
movss dword [esp], xmm0
mov edx, dword [ebp - 0x150]
push edx
push ecx
movss xmm0, dword [ebp - 0x13c]
movss dword [esp], xmm0
mov eax, dword [ebp - 0x11c]
movss xmm0, dword [eax + 0x1c]
addss xmm0, dword [0x1018322c]
push ecx
movss dword [esp], xmm0
mov ecx, dword [0x104c4518]
call fcn.100a3de0
push ecx
movss xmm0, dword [0x10182c40]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10182c40]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10182c40]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10182c40]
movss dword [esp], xmm0
call dword [sym.imp.OPENGL32.dll_glColor4f]
push 0x12
mov ecx, dword [0x104c4518]
call fcn.100a4230
mov ecx, dword [0x104c4518]
call fcn.100a4200
lea ecx, [ebp - 0x134]
call fcn.1000a150
add eax, 0x41
push eax
push ecx
movss xmm0, dword [0x10182c40]
movss dword [esp], xmm0
mov ecx, dword [ebp - 0x11c]
movss xmm0, dword [ecx + 0x2c]
subss xmm0, dword [0x1018322c]
push ecx
movss dword [esp], xmm0
movss xmm0, dword [ebp - 0x13c]
addss xmm0, dword [0x101831e0]
push ecx
movss dword [esp], xmm0
mov edx, dword [ebp - 0x11c]
movss xmm0, dword [edx + 0x1c]
addss xmm0, dword [0x10183240]
push ecx
movss dword [esp], xmm0
mov eax, dword [0x104c4518]
push eax
call fcn.100a3fb0
add esp, 0x18
mov ecx, dword [0x1052fba4]
push ecx
mov ecx, 0x104c4548
call fcn.100a75d0
movzx esi, al
lea ecx, [ebp - 0x134]
call fcn.1000a150
movzx edx, byte [eax]
cmp esi, edx
jne 0x1008a9a3
mov ecx, dword [0x104c4518]
call fcn.100a4870
push 7
mov ecx, dword [0x104c4518]
call fcn.100a4230
push 0x28d
mov ecx, 0x104c9018
call fcn.100c3ba0
push eax
push ecx
movss xmm0, dword [0x10182c40]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x101832b4]
movss dword [esp], xmm0
movss xmm0, dword [ebp - 0x13c]
addss xmm0, dword [0x101831e0]
push ecx
movss dword [esp], xmm0
mov eax, dword [ebp - 0x11c]
mov ecx, dword [ebp - 0x11c]
movss xmm0, dword [eax + 0x1c]
addss xmm0, dword [ecx + 0x2c]
subss xmm0, dword [0x101832b4]
push ecx
movss dword [esp], xmm0
mov edx, dword [0x104c4518]
push edx
call fcn.100a3fb0
add esp, 0x18
mov eax, dword [ebp - 0x12c]
add eax, 1
mov dword [ebp - 0x12c], eax
jmp 0x1008a594
mov ecx, dword [0x104c4518]
call fcn.100a4870
mov ecx, dword [ebp - 0x11c]
mov ecx, dword [ecx + 0x4c]
call fcn.100804a0
push 0x28e
mov ecx, 0x104c9018
call fcn.100c3ba0
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x26c], esp
push eax
call fcn.100097a0
mov dword [ebp - 0x274], eax
push 4
push 0
push 3
push 0x28
push 7
mov edx, dword [ebp - 0x11c]
mov ecx, dword [edx + 0x4c]
call fcn.100807b0
mov ecx, dword [ebp - 0x11c]
add ecx, 0x70
call fcn.1001b990
cmp eax, 4
jbe 0x1008aa38
mov eax, 4
imul eax, eax, 0
mov ecx, dword [ebp - 0x11c]
mov ecx, dword [ecx + eax + 0x40]
call fcn.1009eb80
mov ecx, dword [ebp - 0x11c]
add ecx, 0x7c
call fcn.1001b990
cmp eax, 4
jbe 0x1008aa62
mov edx, 4
shl edx, 0
mov eax, dword [ebp - 0x11c]
mov ecx, dword [eax + edx + 0x40]
call fcn.1009eb80
mov ecx, 0x635f50
call ecx
push 1
mov edx, 0x635fd0
call edx
movss xmm0, dword [0x10182c40]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10182c40]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10182c40]
movss dword [esp], xmm0
call dword [sym.imp.OPENGL32.dll_glColor3f]
push ecx
movss xmm0, dword [0x10182880]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10182880]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10182880]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10182880]
movss dword [esp], xmm0
mov ecx, dword [0x104c4518]
call fcn.100a4050
mov eax, dword [ebp - 0x11c]
movzx ecx, byte [eax + 0x6c]
test ecx, ecx
je 0x1008b8ff
mov edx, dword [0x10195b98]
sub edx, 0xe2
shr edx, 1
mov dword [ebp - 0x154], edx
cvtsi2sd xmm0, dword [ebp - 0x154]
mov eax, dword [ebp - 0x154]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x10183860]
movsd qword [ebp - 0x230], xmm0
cvtsd2ss xmm0, qword [ebp - 0x230]
movss dword [ebp - 0x128], xmm0
push ecx
movss xmm0, dword [0x101836b8]
movss dword [esp], xmm0
mov ecx, dword [0x10195b98]
mov dword [ebp - 0x15c], ecx
cvtsi2sd xmm0, dword [ebp - 0x15c]
mov edx, dword [ebp - 0x15c]
shr edx, 0x1f
addsd xmm0, qword [edx*8 + 0x10183860]
movsd qword [ebp - 0x23c], xmm0
cvtsd2ss xmm0, qword [ebp - 0x23c]
push ecx
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10182ac0]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10182880]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10182880]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10182880]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10182880]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10182880]
movss dword [esp], xmm0
mov ecx, dword [0x104c4518]
call fcn.100a4160
push ecx
movss xmm0, dword [0x10182c40]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10182c40]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10182c40]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10182c40]
movss dword [esp], xmm0
call dword [sym.imp.OPENGL32.dll_glColor4f]
mov eax, 0x635f50
call eax
push 1
mov ecx, 0x635fd0
call ecx
movss xmm0, dword [0x10182c40]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10182c40]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10182c40]
movss dword [esp], xmm0
call dword [sym.imp.OPENGL32.dll_glColor3f]
push 9
push ecx
movss xmm0, dword [0x1018336c]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [ebp - 0x128]
movss dword [esp], xmm0
mov ecx, 0x1019bdc8
call fcn.101141f0
fstp st(0)
push ecx
movss xmm0, dword [0x10182880]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10182880]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10182880]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10182880]
movss dword [esp], xmm0
mov ecx, dword [0x104c4518]
call fcn.100a4050
mov ecx, dword [0x104c4518]
call fcn.100a4200
push 1
mov ecx, dword [0x104c4518]
call fcn.100a4230
push 0x28f
mov ecx, 0x104c9018
call fcn.100c3ba0
push eax
push ecx
movss xmm0, dword [0x10182ee0]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x101834f4]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10183398]
movss dword [esp], xmm0
movss xmm0, dword [ebp - 0x128]
addss xmm0, dword [0x1018322c]
push ecx
movss dword [esp], xmm0
mov edx, dword [0x104c4518]
push edx
call fcn.100a3fb0
add esp, 0x18
push 0x12
mov ecx, dword [0x104c4518]
call fcn.100a4230
push 0x290
mov ecx, 0x104c9018
call fcn.100c3ba0
push eax
push ecx
movss xmm0, dword [0x10182ee0]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x101834f4]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x10183408]
movss dword [esp], xmm0
movss xmm0, dword [ebp - 0x128]
addss xmm0, dword [0x1018322c]
push ecx
movss dword [esp], xmm0
mov eax, dword [0x104c4518]
push eax
call fcn.100a3fb0
add esp, 0x18
mov ecx, dword [0x104c4518]
call fcn.100a4870
push 0
mov ecx, dword [0x104c4518]
call fcn.100a4230
mov dword [ebp - 0x120], 0x82
mov ecx, dword [ebp - 0x11c]
mov dl, byte [ecx + 0x68]
mov byte [ebp - 0x12d], dl
movzx eax, byte [ebp - 0x12d]
mov dword [ebp - 0x190], eax
lea ecx, [ebp - 0x190]
push ecx
lea edx, [ebp - 0x124]
push edx
mov ecx, dword [ebp - 0x11c]
add ecx, 0xcc
call fcn.100100c0
lea eax, [ebp - 0x27c]
push eax
mov ecx, dword [ebp - 0x11c]
add ecx, 0xcc
call fcn.1000a7f0
push eax
lea ecx, [ebp - 0x124]
call fcn.1000a0e0
movzx ecx, al
test ecx, ecx
je 0x1008ae40
xor al, al
jmp 0x1008b90c
mov edx, dword [ebp - 0x120]
add edx, 0xf
mov dword [ebp - 0x120], edx
lea ecx, [ebp - 0x124]
call fcn.10010160
movzx eax, byte [eax + 0x64]
cmp eax, 0xff
je 0x1008af62
lea ecx, [ebp - 0x124]
call fcn.10010160
movzx ecx, byte [eax + 0x64]
test ecx, ecx
jle 0x1008af62
lea ecx, [ebp - 0x124]
call fcn.10010160
movzx edx, byte [eax + 0x64]
sub edx, 1
push edx
lea eax, [ebp - 0x70]
push eax
mov ecx, 0x10559a10
call fcn.1001b8c0
mov dword [ebp - 0x17c], eax
mov ecx, dword [ebp - 0x17c]
mov dword [ebp - 0x180], ecx
mov dword [ebp - 4], 0
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x284], esp
mov edx, dword [ebp - 0x180]
push edx
push 0x291
mov ecx, 0x104c9018
call fcn.100c3ba0
push ecx
mov ecx, esp
mov dword [ebp - 0x28c], esp
push eax
call fcn.10001240
push esi
call fcn.1001df70
add esp, 0xc
mov dword [ebp - 0x294], eax
push ecx
movss xmm0, dword [0x10182ee0]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x101834f4]
movss dword [esp], xmm0
cvtsi2ss xmm0, dword [ebp - 0x120]
push ecx
movss dword [esp], xmm0
movss xmm0, dword [ebp - 0x128]
addss xmm0, dword [0x1018322c]
push ecx
movss dword [esp], xmm0
mov ecx, dword [0x104c4518]
call fcn.100a40d0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x70]
call fcn.10008e50
mov eax, dword [ebp - 0x120]
add eax, 0xa
mov dword [ebp - 0x120], eax
lea ecx, [ebp - 0x124]
call fcn.10010160
movzx ecx, word [eax + 0x5e]
cmp ecx, 0xffff
je 0x1008b035
lea ecx, [ebp - 0x124]
call fcn.10010160
movzx edx, word [eax + 0x5e]
test edx, edx
jle 0x1008b035
lea ecx, [ebp - 0x124]
call fcn.10010160
add eax, 0x5e
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x240], esp
push eax
push 0x292
mov ecx, 0x104c9018
call fcn.100c3ba0
push ecx
mov ecx, esp
mov dword [ebp - 0x1d8], esp
push eax
call fcn.10001240
push esi
call fcn.1000c4e0
add esp, 0xc
mov dword [ebp - 0x280], eax
push ecx
movss xmm0, dword [0x10182ee0]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x101834f4]
movss dword [esp], xmm0
cvtsi2ss xmm0, dword [ebp - 0x120]
push ecx
movss dword [esp], xmm0
movss xmm0, dword [ebp - 0x128]
addss xmm0, dword [0x1018322c]
push ecx
movss dword [esp], xmm0
mov ecx, dword [0x104c4518]
call fcn.100a40d0
mov eax, dword [ebp - 0x120]
add eax, 0xa
mov dword [ebp - 0x120], eax
lea ecx, [ebp - 0x124]
call fcn.10010160
cmp dword [eax + 0x60], 0
jle 0x1008b0eb
lea ecx, [ebp - 0x124]
call fcn.10010160
add eax, 0x60
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x1e0], esp
push eax
push 0x293
mov ecx, 0x104c9018
call fcn.100c3ba0
push ecx
mov ecx, esp
mov dword [ebp - 0x248], esp
push eax
call fcn.10001240
push esi
call fcn.100011b0
add esp, 0xc
mov dword [ebp - 0x1e8], eax
push ecx
movss xmm0, dword [0x10182ee0]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x101834f4]
movss dword [esp], xmm0
cvtsi2ss xmm0, dword [ebp - 0x120]
push ecx
movss dword [esp], xmm0
movss xmm0, dword [ebp - 0x128]
addss xmm0, dword [0x1018322c]
push ecx
movss dword [esp], xmm0
mov ecx, dword [0x104c4518]
call fcn.100a40d0
mov ecx, dword [ebp - 0x120]
add ecx, 0xa
mov dword [ebp - 0x120], ecx
lea ecx, [ebp - 0x124]
call fcn.10010160
cmp dword [eax + 0x68], 0
jle 0x1008b1e4
lea ecx, [ebp - 0x124]
call fcn.10010160
mov edx, dword [eax + 0x68]
push edx
lea eax, [ebp - 0xa0]
push eax
mov ecx, 0x1019bdc8
call fcn.10113070
mov dword [ebp - 0x188], eax
mov ecx, dword [ebp - 0x188]
mov dword [ebp - 0x178], ecx
mov dword [ebp - 4], 1
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x270], esp
mov edx, dword [ebp - 0x178]
push edx
push 0x294
mov ecx, 0x104c9018
call fcn.100c3ba0
push ecx
mov ecx, esp
mov dword [ebp - 0x1f0], esp
push eax
call fcn.10001240
push esi
call fcn.1001df70
add esp, 0xc
mov dword [ebp - 0x250], eax
push ecx
movss xmm0, dword [0x10182ee0]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x101834f4]
movss dword [esp], xmm0
cvtsi2ss xmm0, dword [ebp - 0x120]
push ecx
movss dword [esp], xmm0
movss xmm0, dword [ebp - 0x128]
addss xmm0, dword [0x1018322c]
push ecx
movss dword [esp], xmm0
mov ecx, dword [0x104c4518]
call fcn.100a40d0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xa0]
call fcn.10008e50
mov eax, dword [ebp - 0x120]
add eax, 0xa
mov dword [ebp - 0x120], eax
lea ecx, [ebp - 0x124]
call fcn.10010160
cmp dword [eax + 0x6c], 0
jle 0x1008b2dd
lea ecx, [ebp - 0x124]
call fcn.10010160
mov ecx, dword [eax + 0x6c]
push ecx
lea edx, [ebp - 0xd0]
push edx
mov ecx, 0x1019bdc8
call fcn.10113070
mov dword [ebp - 0x198], eax
mov eax, dword [ebp - 0x198]
mov dword [ebp - 0x1a0], eax
mov dword [ebp - 4], 2
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x1f8], esp
mov ecx, dword [ebp - 0x1a0]
push ecx
push 0x295
mov ecx, 0x104c9018
call fcn.100c3ba0
push ecx
mov ecx, esp
mov dword [ebp - 0x290], esp
push eax
call fcn.10001240
push esi
call fcn.1001df70
add esp, 0xc
mov dword [ebp - 0x204], eax
push ecx
movss xmm0, dword [0x10182ee0]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x101834f4]
movss dword [esp], xmm0
cvtsi2ss xmm0, dword [ebp - 0x120]
push ecx
movss dword [esp], xmm0
movss xmm0, dword [ebp - 0x128]
addss xmm0, dword [0x1018322c]
push ecx
movss dword [esp], xmm0
mov ecx, dword [0x104c4518]
call fcn.100a40d0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xd0]
call fcn.10008e50
mov edx, dword [ebp - 0x120]
add edx, 0xa
mov dword [ebp - 0x120], edx
lea ecx, [ebp - 0x124]
call fcn.10010160
cmp dword [eax + 0x70], 0
jle 0x1008b3d6
lea ecx, [ebp - 0x124]
call fcn.10010160
mov eax, dword [eax + 0x70]
push eax
lea ecx, [ebp - 0x100]
push ecx
mov ecx, 0x1019bdc8
call fcn.10113070
mov dword [ebp - 0x1a8], eax
mov edx, dword [ebp - 0x1a8]
mov dword [ebp - 0x1b0], edx
mov dword [ebp - 4], 3
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x258], esp
mov eax, dword [ebp - 0x1b0]
push eax
push 0x296
mov ecx, 0x104c9018
call fcn.100c3ba0
push ecx
mov ecx, esp
mov dword [ebp - 0x210], esp
push eax
call fcn.10001240
push esi
call fcn.1001df70
add esp, 0xc
mov dword [ebp - 0x278], eax
push ecx
movss xmm0, dword [0x10182ee0]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x101834f4]
movss dword [esp], xmm0
cvtsi2ss xmm0, dword [ebp - 0x120]
push ecx
movss dword [esp], xmm0
movss xmm0, dword [ebp - 0x128]
addss xmm0, dword [0x1018322c]
push ecx
movss dword [esp], xmm0
mov ecx, dword [0x104c4518]
call fcn.100a40d0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x100]
call fcn.10008e50
mov ecx, dword [ebp - 0x120]
add ecx, 0xa
mov dword [ebp - 0x120], ecx
lea ecx, [ebp - 0x124]
call fcn.10010160
cmp dword [eax + 0x74], 0
jle 0x1008b4cf
lea ecx, [ebp - 0x124]
call fcn.10010160
mov edx, dword [eax + 0x74]
push edx
lea eax, [ebp - 0x118]
push eax
mov ecx, 0x1019bdc8
call fcn.10113070
mov dword [ebp - 0x1b8], eax
mov ecx, dword [ebp - 0x1b8]
mov dword [ebp - 0x1c0], ecx
mov dword [ebp - 4], 4
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x21c], esp
mov edx, dword [ebp - 0x1c0]
push edx
push 0x297
mov ecx, 0x104c9018
call fcn.100c3ba0
push ecx
mov ecx, esp
mov dword [ebp - 0x260], esp
push eax
call fcn.10001240
push esi
call fcn.1001df70
add esp, 0xc
mov dword [ebp - 0x228], eax
push ecx
movss xmm0, dword [0x10182ee0]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x101834f4]
movss dword [esp], xmm0
cvtsi2ss xmm0, dword [ebp - 0x120]
push ecx
movss dword [esp], xmm0
movss xmm0, dword [ebp - 0x128]
addss xmm0, dword [0x1018322c]
push ecx
movss dword [esp], xmm0
mov ecx, dword [0x104c4518]
call fcn.100a40d0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x118]
call fcn.10008e50
mov eax, dword [ebp - 0x120]
add eax, 0xa
mov dword [ebp - 0x120], eax
lea ecx, [ebp - 0x124]
call fcn.10010160
cmp dword [eax + 0x78], 0
jle 0x1008b5c8
lea ecx, [ebp - 0x124]
call fcn.10010160
mov ecx, dword [eax + 0x78]
push ecx
lea edx, [ebp - 0x88]
push edx
mov ecx, 0x1019bdc8
call fcn.10113070
mov dword [ebp - 0x1c8], eax
mov eax, dword [ebp - 0x1c8]
mov dword [ebp - 0x1a4], eax
mov dword [ebp - 4], 5
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x288], esp
mov ecx, dword [ebp - 0x1a4]
push ecx
push 0x298
mov ecx, 0x104c9018
call fcn.100c3ba0
push ecx
mov ecx, esp
mov dword [ebp - 0x234], esp
push eax
call fcn.10001240
push esi
call fcn.1001df70
add esp, 0xc
mov dword [ebp - 0x268], eax
push ecx
movss xmm0, dword [0x10182ee0]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x101834f4]
movss dword [esp], xmm0
cvtsi2ss xmm0, dword [ebp - 0x120]
push ecx
movss dword [esp], xmm0
movss xmm0, dword [ebp - 0x128]
addss xmm0, dword [0x1018322c]
push ecx
movss dword [esp], xmm0
mov ecx, dword [0x104c4518]
call fcn.100a40d0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x88]
call fcn.10008e50
mov edx, dword [ebp - 0x120]
add edx, 0xa
mov dword [ebp - 0x120], edx
lea ecx, [ebp - 0x124]
call fcn.10010160
cmp dword [eax + 0x7c], 0
jle 0x1008b8d4
push 8
mov ecx, dword [0x104c4518]
call fcn.100a4230
mov eax, dword [ebp - 0x120]
add eax, 5
mov dword [ebp - 0x120], eax
lea ecx, [ebp - 0x124]
call fcn.10010160
mov eax, dword [eax + 0x7c]
cdq
mov ecx, 0xe10
idiv ecx
mov dword [ebp - 0x138], eax
lea ecx, [ebp - 0x124]
call fcn.10010160
mov eax, dword [eax + 0x7c]
cdq
mov ecx, 0x3c
idiv ecx
cdq
mov ecx, 0x3c
idiv ecx
mov dword [ebp - 0x164], edx
lea ecx, [ebp - 0x124]
call fcn.10010160
mov eax, dword [eax + 0x7c]
cdq
mov ecx, 0x3c
idiv ecx
mov dword [ebp - 0x16c], edx
mov eax, dword [ebp - 0x138]
cdq
mov ecx, 0x18
idiv ecx
mov dword [ebp - 0x144], eax
push 0x299
mov ecx, 0x104c9018
call fcn.100c3ba0
push eax
lea ecx, [ebp - 0x28]
call fcn.100097a0
mov dword [ebp - 4], 6
cmp dword [ebp - 0x138], 0x17
jle 0x1008b6a8
mov edx, dword [ebp - 0x144]
imul edx, edx, 0x18
mov eax, dword [ebp - 0x138]
sub eax, edx
mov dword [ebp - 0x138], eax
cmp dword [ebp - 0x144], 1
jl 0x1008b719
lea ecx, [ebp - 0x144]
push ecx
push 0x29b
mov ecx, 0x104c9018
call fcn.100c3ba0
push ecx
mov ecx, esp
mov dword [ebp - 0x1d0], esp
push eax
call fcn.10001240
lea edx, [ebp - 0xe8]
push edx
call fcn.100011b0
add esp, 0xc
mov dword [ebp - 0x184], eax
mov eax, dword [ebp - 0x184]
mov dword [ebp - 0x1c4], eax
mov byte [ebp - 4], 7
mov ecx, dword [ebp - 0x1c4]
push ecx
lea ecx, [ebp - 0x28]
call fcn.10009b50
mov byte [ebp - 4], 6
lea ecx, [ebp - 0xe8]
call fcn.10008e50
cmp dword [ebp - 0x138], 0
jle 0x1008b784
lea edx, [ebp - 0x138]
push edx
push 0x29c
mov ecx, 0x104c9018
call fcn.100c3ba0
push ecx
mov ecx, esp
mov dword [ebp - 0x1d4], esp
push eax
call fcn.10001240
lea eax, [ebp - 0x40]
push eax
call fcn.100011b0
add esp, 0xc
mov dword [ebp - 0x18c], eax
mov ecx, dword [ebp - 0x18c]
mov dword [ebp - 0x1ac], ecx
mov byte [ebp - 4], 8
mov edx, dword [ebp - 0x1ac]
push edx
lea ecx, [ebp - 0x28]
call fcn.10009b50
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x40]
call fcn.10008e50
cmp dword [ebp - 0x164], 0
jle 0x1008b7ef
lea eax, [ebp - 0x164]
push eax
push 0x29d
mov ecx, 0x104c9018
call fcn.100c3ba0
push ecx
mov ecx, esp
mov dword [ebp - 0x1dc], esp
push eax
call fcn.10001240
lea ecx, [ebp - 0x58]
push ecx
call fcn.100011b0
add esp, 0xc
mov dword [ebp - 0x194], eax
mov edx, dword [ebp - 0x194]
mov dword [ebp - 0x1bc], edx
mov byte [ebp - 4], 9
mov eax, dword [ebp - 0x1bc]
push eax
lea ecx, [ebp - 0x28]
call fcn.10009b50
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x58]
call fcn.10008e50
cmp dword [ebp - 0x16c], 0
jle 0x1008b860
lea ecx, [ebp - 0x16c]
push ecx
push 0x29e
mov ecx, 0x104c9018
call fcn.100c3ba0
push ecx
mov ecx, esp
mov dword [ebp - 0x1e4], esp
push eax
call fcn.10001240
lea edx, [ebp - 0xb8]
push edx
call fcn.100011b0
add esp, 0xc
mov dword [ebp - 0x19c], eax
mov eax, dword [ebp - 0x19c]
mov dword [ebp - 0x1b4], eax
mov byte [ebp - 4], 0xa
mov ecx, dword [ebp - 0x1b4]
push ecx
lea ecx, [ebp - 0x28]
call fcn.10009b50
mov byte [ebp - 4], 6
lea ecx, [ebp - 0xb8]
call fcn.10008e50
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x1ec], esp
lea edx, [ebp - 0x28]
push edx
call fcn.100010b0
mov dword [ebp - 0x1f4], eax
push ecx
movss xmm0, dword [0x10182ee0]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x101834f4]
movss dword [esp], xmm0
cvtsi2ss xmm0, dword [ebp - 0x120]
push ecx
movss dword [esp], xmm0
movss xmm0, dword [ebp - 0x128]
addss xmm0, dword [0x1018322c]
push ecx
movss dword [esp], xmm0
mov ecx, dword [0x104c4518]
call fcn.100a40d0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x28]
call fcn.10008e50
push 0
mov ecx, dword [0x104c4518]
call fcn.100a4230
mov eax, dword [ebp - 0x11c]
mov ecx, dword [eax + 0x50]
call fcn.100804a0
mov ecx, dword [ebp - 0x11c]
mov ecx, dword [ecx + 0x54]
call fcn.100804a0
jmp 0x1008b90a
mov ecx, dword [ebp - 0x11c]
call fcn.100882c0
mov al, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.10055090
mov esp, ebp
pop ebp
ret