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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0xf8
mov eax, dword [0x1010b040]
xor eax, esp
mov dword [esp + 0xf4], eax
mov eax, dword [ebp + 8]
mov dword [esp + 0x20], eax
mov eax, dword [ebp + 0xc]
push esi
sar eax, 3
push edi
mov edi, ecx
movss dword [esp + 0x18], xmm3
and eax, 0xf
mov dword [esp + 8], edx
xor ecx, ecx
mov dword [esp + 0x14], edi
test dword [ebp + 0x1c], 0x400
push edx
cmove ecx, eax
mov eax, 0x4cda10
mov dword [esp + 0x20], ecx
call eax
mov edx, 0x969c50
mov ecx, eax
call edx
mov esi, eax
mov dword [esp + 0x20], esi
test esi, esi
je case.0x10089f4b.4800
cmp byte [edi + 8], 1
jne 0x10085e9f
cmp dword [0xe61e18], 7
jne 0x10085d90
push 1
mov eax, 0x635fd0
call eax
mov dword [esp], 0x3e4ccccd
sub esp, 0xc
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], 0
call dword [sym.imp.OPENGL32.dll_glColor4f]
jmp 0x10085db7
mov eax, 0x635f50
call eax
sub esp, 0xc
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], 0
call dword [sym.imp.OPENGL32.dll_glColor3f]
mov ecx, dword [0xe61e18]
cmp ecx, 0x18
jge 0x10085df2
mov dword [esp + 0x14], 1
cmp ecx, 0xa
jne 0x10085e0d
push 0x12
lea ecx, [edi + 0x1e4]
mov eax, 0x4c8640
call eax
pop edi
pop esi
mov ecx, dword [esp + 0xf4]
xor ecx, esp
call fcn.100d22e0
mov esp, ebp
pop ebp
ret
cmp ecx, 0x1d
jle 0x10085e05
xor eax, eax
cmp ecx, 0x24
setne al
mov dword [esp + 0x14], eax
jmp 0x10085e0d
mov dword [esp + 0x14], 0
cmp byte [edi + 0x21], 3
je 0x10085dcf
mov eax, 0x4db250
call eax
mov edx, 0x4e44a0
lea ecx, [eax + 0x84]
call edx
test al, al
jne 0x10085dcf
push 0x12
lea ecx, [edi + 0x1e4]
mov eax, 0x4c8640
call eax
mov ecx, dword [esp + 0x14]
xor edx, edx
test al, al
movzx ecx, cl
cmove edx, ecx
test dl, dl
je case.0x10089f4b.4800
cmp byte [edi + 7], 0
je case.0x10089f4b.4800
mov ecx, dword [edi + 0x30]
mov eax, dword [edi + 0x3c]
cmp ecx, 0x2f8
jne 0x10085e6f
mov eax, 2
jmp 0x10085e7a
xor edx, edx
cmp ecx, 0x328
cmove eax, edx
push 0xffffffffffffffff
push 0xffffffffffffffff
push eax
push dword [edi + 0x44]
mov eax, 0x54a270
mov ecx, esi
call eax
pop edi
pop esi
mov ecx, dword [esp + 0xf4]
xor ecx, esp
call fcn.100d22e0
mov esp, ebp
pop ebp
ret
mov eax, dword [esp + 8]
mov ecx, 0x1027f830
add eax, 0xfffffb6d
push eax
call fcn.10064190
test eax, eax
je 0x10085ebe
xor eax, eax
jmp 0x1008604c
mov ecx, dword [esp + 8]
cmp ecx, 0x1e96
jle 0x10085fcb
cmp ecx, 0x209f
jle 0x10085f94
cmp ecx, 0x2526
jle 0x10085f36
lea edx, [ecx - 0x2529]
mov ecx, dword [esp + 0x1c]
mov eax, ecx
mov dword [esp + 0xc], eax
cmp edx, 0xc
ja case.0x10085fff.7323
mov dword [esp + 0xc], eax
jmp dword [edx*4 + 0x1008a34c]
xor eax, eax
cmp ecx, 0xd
sete al
lea eax, [eax*4 + 9]
jmp 0x1008604c
lea eax, [ecx*2 - 0xf]
jmp 0x1008604c
lea eax, [ecx - 1]
jmp 0x1008604c
lea eax, [ecx + 7]
jmp 0x1008604c
cmp ecx, 0x2525
jl 0x10085f48
mov eax, 8
jmp 0x1008604c
lea edx, [ecx - 0x20a0]
mov ecx, dword [esp + 0x1c]
mov eax, ecx
mov dword [esp + 0xc], eax
cmp edx, 0x33
ja case.0x10085fff.7323
mov dword [esp + 0xc], eax
movzx eax, byte [edx + 0x1008a398]
jmp dword [eax*4 + 0x1008a380]
mov eax, 0xd
jmp 0x1008604c
cmp ecx, 6
jbe 0x10085f8c
mov eax, 0xd
jmp 0x1008604c
lea eax, [ecx + ecx]
jmp 0x1008604c
jne 0x10085fa0
mov eax, 8
jmp 0x1008604c
mov edx, dword [esp + 0x1c]
add ecx, 0xffffe163
mov eax, edx
mov dword [esp + 0xc], eax
cmp ecx, 0x7c
ja case.0x10085fff.7323
mov dword [esp + 0xc], eax
movzx eax, byte [ecx + 0x1008a3dc]
jmp dword [eax*4 + 0x1008a3cc]
jne 0x10085fd4
mov eax, 8
jmp 0x1008604c
cmp ecx, 0x1c99
jle 0x1008600d
mov edx, dword [esp + 0x1c]
add ecx, 0xffffe366
mov eax, edx
mov dword [esp + 0xc], eax
cmp ecx, 0x88
ja case.0x10085fff.7323
mov dword [esp + 0xc], eax
movzx eax, byte [ecx + 0x1008a46c]
jmp dword [eax*4 + 0x1008a45c]
mov eax, 9
jmp 0x1008604c
cmp ecx, 0x1c93
jge case.0x10085fff.7326
mov edx, dword [esp + 0x1c]
cmp ecx, 0xc9a
jne 0x1008602e
cmp edx, 1
jae 0x10086045
xor eax, eax
jmp 0x1008604c
mov eax, edx
mov dword [esp + 0xc], eax
cmp ecx, 0xca2
jne case.0x10085fff.7323
cmp edx, 1
jb case.0x10085fff.7326
lea eax, [edx*2 + 1]
mov dword [esp + 0xc], eax
mov eax, 0x861110
call eax
mov edx, 0x861620
mov ecx, eax
call edx
mov ecx, dword [esp + 0xc]
mov eax, dword [eax + 0xcc]
mov dword [esp + 0x3c], eax
cmp eax, 4
jg 0x10086083
lea eax, [eax*2 + 5]
cmp ecx, eax
cmovge ecx, eax
mov dword [esp + 0xc], ecx
mov eax, dword [edi + 0x30]
mov edx, 0x5494c0
movss xmm1, dword [0x101025c8]
movss xmm2, dword [0x101025a0]
mov dword [esp + 0x24], 0x5468a0
mov dword [esp + 0x30], 0x6d9070
cmp eax, 0xa9c
jne 0x1008611c
mov dword [esi + 0x48], 0x3f000000
mov dword [esi + 0x4c], 0x3f000000
mov dword [esi + 0x50], 0x3fc00000
mov byte [esi + 0x88], 0
movss xmm0, dword [edi + 0x6c]
push 0x7d2a
push dword [edi + 0x3c]
sub esp, 0xc
movss dword [esp + 8], xmm0
movss xmm0, dword [edi + 0x68]
movss dword [esp + 4], xmm0
movss xmm0, dword [edi + 0x64]
movss dword [esp], xmm0
push dword [edi + 0x44]
movss xmm0, dword [edi + 0x98]
push ecx
movss dword [esp], xmm0
mov ecx, esi
push 2
call edx
mov byte [esi + 0x88], 0xff
jmp 0x100888f0
cmp eax, 0x20ae
jne 0x10086365
push 0xffffffffffffffff
sub esp, 0xc
mov dword [esi + 0x48], 0x3f800000
mov dword [esi + 0x4c], 0x3f800000
mov dword [esi + 0x50], 0x3f800000
mov byte [esi + 0x88], 0
movss xmm0, dword [edi + 0x6c]
movss dword [esp + 8], xmm0
movss xmm0, dword [edi + 0x68]
movss dword [esp + 4], xmm0
movss xmm0, dword [edi + 0x64]
movss dword [esp], xmm0
movss xmm0, dword [edi + 0x98]
push 0xffffffffffffffff
push ecx
movss dword [esp], xmm0
mov ecx, esi
push 2
push 0
call dword [esp + 0x44]
mov eax, dword [esp + 0xc]
cmp eax, 1
je 0x10086359
cmp eax, 2
jne 0x10086239
movss xmm0, dword [edi + 0x6c]
push 0xffffffffffffffff
sub esp, 0xc
movss dword [esp + 8], xmm0
movss xmm0, dword [edi + 0x68]
movss dword [esp + 4], xmm0
movss xmm0, dword [edi + 0x64]
movss dword [esp], xmm0
movss xmm0, dword [edi + 0x98]
push 0xffffffffffffffff
push ecx
movss dword [esp], xmm0
mov ecx, esi
push eax
push 1
call dword [esp + 0x44]
push 0x7d2a
sub esp, 0xc
mov dword [esi + 0x48], 0x3f400000
mov dword [esi + 0x4c], 0x3f266666
mov dword [esi + 0x50], 0x3f000000
movss xmm0, dword [edi + 0x6c]
movss dword [esp + 8], xmm0
movss xmm0, dword [edi + 0x68]
movss dword [esp + 4], xmm0
movss xmm0, dword [edi + 0x64]
movss dword [esp], xmm0
movss xmm0, dword [edi + 0x98]
push 0xffffffffffffffff
push ecx
movss dword [esp], xmm0
mov ecx, esi
push 0x44
push 1
call dword [esp + 0x44]
mov byte [esi + 0x88], 0xff
jmp 0x100888f0
cmp eax, 3
jne 0x10086359
movss xmm0, dword [edi + 0x6c]
push 0xffffffffffffffff
sub esp, 0xc
movss dword [esp + 8], xmm0
movss xmm0, dword [edi + 0x68]
movss dword [esp + 4], xmm0
movss xmm0, dword [edi + 0x64]
movss dword [esp], xmm0
movss xmm0, dword [edi + 0x98]
push 0xffffffffffffffff
push ecx
movss dword [esp], xmm0
mov ecx, esi
push 2
push 1
call dword [esp + 0x44]
movss xmm0, dword [edi + 0x6c]
push 0xffffffffffffffff
sub esp, 0xc
movss dword [esp + 8], xmm0
movss xmm0, dword [edi + 0x68]
movss dword [esp + 4], xmm0
movss xmm0, dword [edi + 0x64]
movss dword [esp], xmm0
movss xmm0, dword [edi + 0x98]
push 0xffffffffffffffff
push ecx
movss dword [esp], xmm0
mov ecx, esi
push 2
push 2
call dword [esp + 0x44]
push 0x7d2a
sub esp, 0xc
mov dword [esi + 0x48], 0x3f400000
mov dword [esi + 0x4c], 0x3f266666
mov dword [esi + 0x50], 0x3f000000
movss xmm0, dword [edi + 0x6c]
movss dword [esp + 8], xmm0
movss xmm0, dword [edi + 0x68]
movss dword [esp + 4], xmm0
movss xmm0, dword [edi + 0x64]
movss dword [esp], xmm0
movss xmm0, dword [edi + 0x98]
push 0xffffffffffffffff
push ecx
movss dword [esp], xmm0
mov ecx, esi
push 0x44
push 1
call dword [esp + 0x44]
movss xmm0, dword [edi + 0x6c]
push 0x7d2a
sub esp, 0xc
movss dword [esp + 8], xmm0
movss xmm0, dword [edi + 0x68]
movss dword [esp + 4], xmm0
movss xmm0, dword [edi + 0x64]
movss dword [esp], xmm0
movss xmm0, dword [edi + 0x98]
push 0xffffffffffffffff
push ecx
movss dword [esp], xmm0
mov ecx, esi
push 0x44
push 2
call dword [esp + 0x44]
mov byte [esi + 0x88], 0xff
jmp 0x100888f0
cmp eax, 0x20d2
jne 0x1008648c
push 0xffffffffffffffff
sub esp, 0xc
mov byte [esi + 0x88], 0
mov dword [edi + 0x64], 0x3f800000
mov eax, 0x5468a0
mov dword [esi + 0x48], 0x3f800000
mov dword [esi + 0x4c], 0x3f800000
mov dword [esi + 0x50], 0x3f800000
movss xmm0, dword [edi + 0x6c]
movss dword [esp + 8], xmm0
movss xmm0, dword [edi + 0x68]
movss dword [esp + 4], xmm0
movss xmm0, dword [edi + 0x64]
movss dword [esp], xmm0
push dword [edi + 0x44]
movss xmm0, dword [edi + 0x98]
push ecx
movss dword [esp], xmm0
mov ecx, esi
push 2
push 0
mov dword [esp + 0x44], eax
call eax
push 0xffffffffffffffff
sub esp, 0xc
mov dword [esi + 0x48], 0x3f800000
mov dword [esi + 0x4c], 0
mov dword [esi + 0x50], 0
mov byte [esi + 0x44], 1
movss xmm0, dword [edi + 0x6c]
movss dword [esp + 8], xmm0
movss xmm0, dword [edi + 0x68]
movss dword [esp + 4], xmm0
movss xmm0, dword [edi + 0x64]
movss dword [esp], xmm0
movss xmm0, dword [edi + 0x98]
push 0xffffffffffffffff
push ecx
movss dword [esp], xmm0
mov ecx, esi
push 2
push 1
call dword [esp + 0x44]
movss xmm0, dword [edi + 0x6c]
push 0xffffffffffffffff
sub esp, 0xc
movss dword [esp + 8], xmm0
movss xmm0, dword [edi + 0x68]
movss dword [esp + 4], xmm0
movss xmm0, dword [edi + 0x64]
movss dword [esp], xmm0
movss xmm0, dword [edi + 0x98]
push 0xffffffffffffffff
push ecx
movss dword [esp], xmm0
mov ecx, esi
push 0x44
push 1
call dword [esp + 0x44]
mov byte [esi + 0x88], 0xff
pop edi
pop esi
mov ecx, dword [esp + 0xf4]
xor ecx, esp
call fcn.100d22e0
mov esp, ebp
pop ebp
ret
cmp eax, 0x20c7
jne 0x1008655e
push 0xffffffffffffffff
push 0xffffffffffffffff
sub esp, 0xc
mov dword [esi + 0x48], 0x3f800000
mov dword [esi + 0x4c], 0x3f800000
mov eax, edx
mov dword [esi + 0x50], 0x3f800000
movss xmm0, dword [edi + 0x6c]
movss dword [esp + 8], xmm0
movss xmm0, dword [edi + 0x68]
movss dword [esp + 4], xmm0
movss xmm0, dword [edi + 0x64]
movss dword [esp], xmm0
movss xmm0, dword [edi + 0x98]
push 0xffffffffffffffff
push ecx
movss dword [esp], xmm0
mov ecx, esi
push 2
call eax
push 0xffffffffffffffff
sub esp, 0xc
mov byte [esi + 0x44], 1
mov dword [esi + 0x48], 0x3dcccccd
mov eax, 0x5468a0
mov dword [esi + 0x4c], 0x3f19999a
mov dword [esi + 0x50], 0x3ecccccd
movss xmm0, dword [edi + 0x6c]
movss dword [esp + 8], xmm0
movss xmm0, dword [edi + 0x68]
movss dword [esp + 4], xmm0
movss xmm0, dword [edi + 0x64]
movss dword [esp], xmm0
push 0xffffffffffffffff
push ecx
mov dword [esp], 0x3f000000
mov ecx, esi
push 0x44
push 0
mov dword [edi + 0x98], 0x3f000000
call eax
pop edi
pop esi
mov ecx, dword [esp + 0xf4]
xor ecx, esp
call fcn.100d22e0
mov esp, ebp
pop ebp
ret
cmp eax, 0x2530
jne 0x100866bd
mov eax, edx
push 0xffffffffffffffff
cmp ecx, 1
jne 0x10086631
push 0xffffffffffffffff
sub esp, 0xc
mov dword [esi + 0x48], 0x3e99999a
mov dword [esi + 0x4c], 0x3f4ccccd
mov dword [esi + 0x50], 0x3f800000
movss xmm0, dword [edi + 0x6c]
movss dword [esp + 8], xmm0
movss xmm0, dword [edi + 0x68]
movss dword [esp + 4], xmm0
movss xmm0, dword [edi + 0x64]
movss dword [esp], xmm0
movss xmm0, dword [edi + 0x98]
push 0xffffffffffffffff
push ecx
movss dword [esp], xmm0
mov ecx, esi
push 2
call eax
push 0xffffffffffffffff
push 0xffffffffffffffff
sub esp, 0xc
mov dword [esi + 0x48], 0x3f800000
mov dword [esi + 0x4c], 0x3f4ccccd
mov dword [esi + 0x50], 0x3e99999a
movss xmm0, dword [edi + 0x6c]
movss dword [esp + 8], xmm0
movss xmm0, dword [edi + 0x68]
movss dword [esp + 4], xmm0
movss xmm0, dword [edi + 0x64]
movss dword [esp], xmm0
push 0xffffffffffffffff
movss xmm0, dword [edi + 0x98]
push ecx
movss dword [esp], xmm0
push 0x44
mov eax, 0x5494c0
mov ecx, esi
call eax
pop edi
pop esi
mov ecx, dword [esp + 0xf4]
xor ecx, esp
call fcn.100d22e0
mov esp, ebp
pop ebp
ret
mov dword [esi + 0x48], 0x3f666666
mov dword [esi + 0x4c], 0x3f666666
mov dword [esi + 0x50], 0x3f666666
push dword [edi + 0x3c]
movss xmm0, dword [edi + 0x6c]
sub esp, 0xc
movss dword [esp + 8], xmm0
movss xmm0, dword [edi + 0x68]
movss dword [esp + 4], xmm0
movss xmm0, dword [edi + 0x64]
movss dword [esp], xmm0
push dword [edi + 0x44]
movss xmm0, dword [edi + 0x98]
push ecx
movss dword [esp], xmm0
mov ecx, esi
push 2
call eax
movss xmm0, dword [edi + 0x6c]
push 0x7d2b
push 0xffffffffffffffff
sub esp, 0xc
movss dword [esp + 8], xmm0
movss xmm0, dword [edi + 0x68]
movss dword [esp + 4], xmm0
movss xmm0, dword [edi + 0x64]
movss dword [esp], xmm0
push dword [edi + 0x44]
push ecx
mov dword [esp], 0x3f000000
jmp 0x10086612
cmp eax, 0x2533
jne 0x100866d6
cmp ecx, 9
jne 0x100868fc
push 0xffffffffffffffff
mov eax, edx
jmp 0x10086576
cmp eax, 0x1ca8
jb 0x100866e8
cmp eax, 0x1cab
jbe 0x1008a1f7
cmp eax, 0x1cb6
je 0x1008a1f7
cmp eax, 0x1cc3
je 0x1008a1f7
cmp eax, 0x1eb2
jne 0x100867c4
movss xmm0, dword [edi + 0x6c]
mov eax, edx
push 0xffffffffffffffff
push dword [edi + 0x3c]
sub esp, 0xc
movss dword [esp + 8], xmm0
movss xmm0, dword [edi + 0x68]
movss dword [esp + 4], xmm0
movss xmm0, dword [edi + 0x64]
movss dword [esp], xmm0
push dword [edi + 0x44]
movss xmm0, dword [esp + 0x30]
push ecx
movss dword [esp], xmm0
mov ecx, esi
push 2
call eax
mov eax, dword [esp + 0xc]
sub eax, 0
je 0x1008676f
sub eax, 1
jne case.0x10089f4b.4800
mov dword [esi + 0x48], 0x3e99999a
mov dword [esi + 0x4c], 0x3f4ccccd
mov dword [esi + 0x50], 0x3f800000
push dword [edi + 0x3c]
movss xmm0, dword [edi + 0x6c]
mov eax, 0x5468a0
sub esp, 0xc
movss dword [esp + 8], xmm0
movss xmm0, dword [edi + 0x68]
movss dword [esp + 4], xmm0
movss xmm0, dword [edi + 0x64]
movss dword [esp], xmm0
movss xmm0, dword [esp + 0x28]
push 0
push ecx
movss dword [esp], xmm0
mov ecx, esi
push 0x42
push 0
call eax
pop edi
pop esi
mov ecx, dword [esp + 0xf4]
xor ecx, esp
call fcn.100d22e0
mov esp, ebp
pop ebp
ret
add eax, 0xffffdf6d
cmp eax, 6
ja 0x100867e4
test ecx, ecx
jle 0x100888f0
mov eax, 7
mov dword [esp + 0xc], eax
jmp 0x100888f0
mov eax, dword [edi + 0x30]
cmp eax, 0x1ccf
jb 0x100867f5
cmp eax, 0x1cd4
jbe 0x1008680d
cmp eax, 0x1cd9
jb 0x10086803
cmp eax, 0x1cdd
jbe 0x1008680d
add eax, 0xffffe309
cmp eax, 0x1d
ja 0x10086818
xor eax, eax
mov dword [esp + 0xc], eax
jmp 0x100888f0
mov eax, dword [edi + 0x30]
cmp eax, 0x1ea2
jne 0x100868fc
cmp ecx, 3
ja case.default.0x1008682b
jmp dword [ecx*4 + 0x1008a4f8]
mov dword [esi + 0x48], 0
mov dword [esi + 0x4c], 0x3f000000
mov dword [esi + 0x50], 0x3f800000
jmp case.default.0x1008682b
mov dword [esi + 0x48], 0x3f800000
mov dword [esi + 0x4c], 0x3e4ccccd
mov dword [esi + 0x50], 0
jmp case.default.0x1008682b
mov dword [esi + 0x48], 0x3f800000
mov dword [esi + 0x50], 0
jmp 0x1008687e
mov dword [esi + 0x48], 0x3f19999a
mov dword [esi + 0x50], 0x3ecccccd
mov dword [esi + 0x4c], 0x3f4ccccd
movss xmm0, dword [edi + 0x6c]
mov eax, edx
push 0x7d2b
push dword [edi + 0x3c]
sub esp, 0xc
movss dword [esp + 8], xmm0
movss xmm0, dword [edi + 0x68]
movss dword [esp + 4], xmm0
movss xmm0, dword [edi + 0x64]
movss dword [esp], xmm0
push dword [edi + 0x44]
movss xmm0, dword [edi + 0x98]
push ecx
movss dword [esp], xmm0
mov ecx, esi
push 8
call eax
movss xmm0, dword [edi + 0x6c]
push 0x7d2b
push dword [edi + 0x3c]
sub esp, 0xc
movss dword [esp + 8], xmm0
movss xmm0, dword [edi + 0x68]
movss dword [esp + 4], xmm0
movss xmm0, dword [edi + 0x64]
movss dword [esp], xmm0
push dword [edi + 0x44]
jmp 0x10086604
mov edx, dword [esp + 8]
cmp edx, 0x252a
jne 0x10086a7c
and dword [ebp + 0xc], 0x78
cmp dword [ebp + 0xc], 0x70
jne 0x10086a0a
mov dword [esi + 0x48], 0x3e4ccccd
mov eax, 0x5494c0
mov dword [esi + 0x4c], 0x3e99999a
mov dword [esi + 0x50], 0x3f000000
movss xmm0, dword [edi + 0x6c]
push 0xffffffffffffffff
push dword [edi + 0x3c]
sub esp, 0xc
movss dword [esp + 8], xmm0
movss xmm0, dword [edi + 0x68]
movss dword [esp + 4], xmm0
movss xmm0, dword [edi + 0x64]
movss dword [esp], xmm0
push dword [edi + 0x44]
movss xmm0, dword [edi + 0x98]
push ecx
movss dword [esp], xmm0
mov ecx, esi
push 2
call eax
mov dword [esi + 0x48], 0x3dcccccd
mov dword [esi + 0x50], 0x3f800000
push 0xffffffffffffffff
push 0xffffffffffffffff
sub esp, 0xc
mov dword [esi + 0x4c], 0x3e99999a
movss xmm0, dword [edi + 0x6c]
mov eax, 0x5494c0
movss dword [esp + 8], xmm0
movss xmm0, dword [edi + 0x68]
movss dword [esp + 4], xmm0
movss xmm0, dword [edi + 0x64]
movss dword [esp], xmm0
push dword [edi + 0x44]
movss xmm0, dword [edi + 0x98]
push ecx
movss dword [esp], xmm0
mov ecx, esi
push 0x44
call eax
movss xmm0, dword [edi + 0x6c]
push 0xffffffffffffffff
push 0xffffffffffffffff
sub esp, 0xc
movss dword [esp + 8], xmm0
movss xmm0, dword [edi + 0x68]
movss dword [esp + 4], xmm0
movss xmm0, dword [edi + 0x64]
movss dword [esp], xmm0
push dword [edi + 0x44]
movss xmm0, dword [edi + 0x98]
push ecx
movss dword [esp], xmm0
push 0x48
jmp 0x10086614
cmp dword [ebp + 0xc], 0x78
jne 0x10086a7c
mov dword [esi + 0x48], 0x3f000000
mov eax, 0x5494c0
mov dword [esi + 0x4c], 0x3e99999a
mov dword [esi + 0x50], 0x3e4ccccd
movss xmm0, dword [edi + 0x6c]
push 0xffffffffffffffff
push dword [edi + 0x3c]
sub esp, 0xc
movss dword [esp + 8], xmm0
movss xmm0, dword [edi + 0x68]
movss dword [esp + 4], xmm0
movss xmm0, dword [edi + 0x64]
movss dword [esp], xmm0
push dword [edi + 0x44]
movss xmm0, dword [edi + 0x98]
push ecx
movss dword [esp], xmm0
mov ecx, esi
push 2
call eax
mov dword [esi + 0x48], 0x3f800000
mov dword [esi + 0x50], 0x3dcccccd
jmp 0x10086981
cmp eax, 0x1ea4
jne 0x10086b86
mov dword [esi + 0x48], 0x3f666666
mov dword [esi + 0x4c], 0x3dcccccd
mov dword [esi + 0x50], 0x3dcccccd
movd xmm0, dword [0xe61e18]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x10102580]
cvtps2pd xmm0, xmm0
call fcn.100f38d0
cvtsd2ss xmm0, xmm0
push 0x7d2a
mov eax, 0x5494c0
movss dword [edi + 0x68], xmm0
movss xmm0, dword [0x5ef5a1c]
xorps xmm0, xmmword [0x10103780]
mulss xmm0, dword [0x1010258c]
movss dword [edi + 0x6c], xmm0
mov byte [esi + 0x88], 0
push dword [edi + 0x3c]
movss xmm0, dword [edi + 0x6c]
sub esp, 0xc
movss dword [esp + 8], xmm0
movss xmm0, dword [edi + 0x68]
movss dword [esp + 4], xmm0
movss xmm0, dword [edi + 0x64]
movss dword [esp], xmm0
push dword [edi + 0x44]
movss xmm0, dword [edi + 0x98]
push ecx
movss dword [esp], xmm0
mov ecx, esi
push 2
call eax
mov byte [esi + 0x88], 0xff
mov dword [esi + 0x48], 0x3f666666
mov dword [esi + 0x4c], 0x3f666666
mov dword [esi + 0x50], 0x3f666666
movss xmm0, dword [edi + 0x6c]
push 0xffffffffffffffff
push dword [edi + 0x3c]
sub esp, 0xc
movss dword [esp + 8], xmm0
movss xmm0, dword [edi + 0x68]
movss dword [esp + 4], xmm0
movss xmm0, dword [edi + 0x64]
movss dword [esp], xmm0
push dword [edi + 0x44]
movss xmm0, dword [edi + 0x98]
push ecx
movss dword [esp], xmm0
push 2
jmp 0x10086614
cmp eax, 0x1ea5
jne 0x10086c02
mov dword [esi + 0x48], 0x3f4ccccd
mov dword [esi + 0x4c], 0x3f4ccccd
mov dword [esi + 0x50], 0x3f4ccccd
movss xmm0, dword [edi + 0x6c]
push 0xffffffffffffffff
push dword [edi + 0x3c]
sub esp, 8
movss dword [esp + 4], xmm0
movss xmm0, dword [edi + 0x68]
movss dword [esp], xmm0
movss xmm0, dword [0x5ef5a1c]
mulss xmm0, dword [0x101025c8]
cvtps2pd xmm0, xmm0
call fcn.100f38d0
cvtsd2ss xmm0, xmm0
push ecx
mulss xmm0, dword [0x10102658]
addss xmm0, dword [0x10102684]
movss dword [esp], xmm0
push 0
push ecx
mov dword [esp], 0x3f800000
push 0x42
jmp 0x10086614
cmp eax, 0x2531
jne 0x10086d39
movss xmm0, dword [0x5ef5a1c]
mulss xmm0, xmm1
cvtps2pd xmm0, xmm0
call fcn.100f38d0
xorps xmm1, xmm1
mov dword [esp + 0x40], 0
cvtsd2ss xmm1, xmm0
push 0
lea eax, [esp + 0xe8]
mov dword [esp + 0x48], 0
push eax
lea eax, [esp + 0x48]
mov dword [esp + 0x50], 0x41700000
push eax
mulss xmm1, dword [0x10102664]
mov eax, 0x545030
push 0x7bc08a0
mov ecx, esi
addss xmm1, dword [0x10102680]
movaps xmm0, xmm1
movss dword [esp + 0x20], xmm1
mulss xmm0, dword [0x10102660]
movss dword [esp + 0x100], xmm0
movss dword [esp + 0x104], xmm0
movaps xmm0, xmm1
addss xmm0, xmm1
movss dword [esp + 0x108], xmm0
call eax
movss xmm0, dword [esp + 0xe4]
addss xmm0, dword [edi + 0xfc]
movss dword [esp + 0xe4], xmm0
movss xmm0, dword [esp + 0xe8]
addss xmm0, dword [edi + 0x100]
movss dword [esp + 0xe8], xmm0
movss xmm0, dword [esp + 0xec]
addss xmm0, dword [edi + 0x104]
movss dword [esp + 0xec], xmm0
movss xmm0, dword [esp + 0x10]
mulss xmm0, dword [0x10102694]
addss xmm0, dword [0x10102918]
push 0
push ecx
mov dword [esp], 0
lea eax, [esp + 0xf8]
push edi
push eax
lea eax, [esp + 0xf4]
push ecx
movss dword [esp], xmm0
push eax
push 0x7d31
mov eax, 0x771310
call eax
add esp, 0x1c
jmp 0x100888f0
cmp eax, 0x252b
jne 0x10086dd0
cmp ecx, 0xd
jne 0x10087370
push 0xffffffffffffffff
mov dword [esi + 0x48], 0x3ecccccd
mov eax, 0x5494c0
mov dword [esi + 0x4c], 0x3f19999a
mov dword [esi + 0x50], 0x3f800000
push dword [edi + 0x3c]
movss xmm0, dword [edi + 0x6c]
sub esp, 0xc
movss dword [esp + 8], xmm0
movss xmm0, dword [edi + 0x68]
movss dword [esp + 4], xmm0
mov dword [esp], 0x3f800000
push 0
push ecx
mov dword [esp], 0x3f800000
mov ecx, esi
push 1
call eax
movss xmm0, dword [edi + 0x6c]
push 0xffffffffffffffff
push dword [edi + 0x3c]
sub esp, 0xc
movss dword [esp + 8], xmm0
movss xmm0, dword [edi + 0x68]
movss dword [esp + 4], xmm0
mov dword [esp], 0x3f800000
push 0
push ecx
mov dword [esp], 0x3f800000
jmp 0x10086612
cmp eax, 0x2532
jne 0x10086f0d
movss xmm0, dword [0x5ef5a1c]
mulss xmm0, xmm1
cvtps2pd xmm0, xmm0
call fcn.100f38d0
xorps xmm1, xmm1
mov byte [esi + 0x88], 0
cvtsd2ss xmm1, xmm0
mov dword [esp + 0x40], 0
mov ecx, 0xfa0
mov dword [esp + 0x44], 0xc0a00000
mov dword [esp + 0x48], 0xc1700000
push 0
mulss xmm1, dword [0x10102664]
addss xmm1, dword [0x10102680]
movaps xmm0, xmm1
movss dword [esp + 0x14], xmm1
addss xmm0, xmm1
movss dword [esp + 0xf4], xmm0
movaps xmm0, xmm1
mulss xmm0, dword [0x10102660]
movss dword [esp + 0xf8], xmm0
movss dword [esp + 0xfc], xmm0
movss xmm0, dword [0x5ef5a1c]
xorps xmm0, xmmword [0x10103780]
cvttss2si eax, xmm0
cdq
idiv ecx
lea eax, [esp + 0xe8]
mov ecx, esi
push eax
lea eax, [esp + 0x48]
push eax
movd xmm0, edx
mov eax, 0x545030
cvtdq2ps xmm0, xmm0
push 0x7bc08a0
mulss xmm0, dword [0x10102584]
movss dword [edi + 0x6c], xmm0
call eax
movss xmm0, dword [esp + 0xe4]
addss xmm0, dword [edi + 0xfc]
movss dword [esp + 0xe4], xmm0
movss xmm0, dword [esp + 0xe8]
addss xmm0, dword [edi + 0x100]
movss dword [esp + 0xe8], xmm0
movss xmm0, dword [esp + 0xec]
addss xmm0, dword [edi + 0x104]
movss dword [esp + 0xec], xmm0
movss xmm0, dword [esp + 0x10]
mulss xmm0, dword [0x10102694]
addss xmm0, dword [0x10102998]
jmp 0x10086d04
cmp eax, 0x20a4
jne 0x10086fa2
movss xmm0, dword [0x5ef5a1c]
mulss xmm0, xmm1
cvtps2pd xmm0, xmm0
call fcn.100f38d0
xorps xmm1, xmm1
mov dword [edi + 0x44], 1
cvtsd2ss xmm1, xmm0
mov ecx, 0x7d0
mulss xmm1, dword [0x10102eb4]
addss xmm1, dword [0x10102edc]
movss dword [edi + 0x64], xmm1
cvttss2si eax, dword [0x5ef5a1c]
mov dword [edi + 0x98], 0x40000000
divss xmm1, dword [0x10102e98]
cdq
idiv ecx
movd xmm0, edx
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x1010258c]
movss dword [edi + 0x6c], xmm0
movss dword [edi + 0x9c], xmm1
movss dword [edi + 0xa0], xmm1
movss dword [edi + 0xa4], xmm1
jmp 0x100888f0
cmp eax, 0x20a5
jne 0x10087164
movss xmm0, dword [0x5ef5a1c]
mulss xmm0, xmm1
call fcn.1001e0c0
movaps xmm1, xmm0
mov dword [esp + 0xf0], 0
mulss xmm1, dword [0x10102664]
lea eax, [esp + 0xd8]
push 0
push eax
lea eax, [esp + 0xf8]
mov dword [esp + 0xfc], 0
addss xmm1, dword [0x10102680]
push eax
push 0x7bc08d0
mov eax, 0x545030
mov dword [esp + 0x108], 0
mov ecx, esi
movaps xmm0, xmm1
mulss xmm0, dword [0x10102694]
movss dword [esp + 0x24], xmm0
movaps xmm0, xmm1
addss xmm0, xmm1
mulss xmm1, dword [0x10102660]
movss dword [esp + 0xf8], xmm1
movss dword [esp + 0xf4], xmm0
movss dword [esp + 0xfc], xmm1
call eax
movss xmm0, dword [esp + 0xd8]
lea eax, [esp + 0xe4]
addss xmm0, dword [edi + 0xfc]
push 0
push ecx
mov dword [esp], 0
push edi
movss dword [esp + 0xe4], xmm0
movss xmm0, dword [esp + 0xe8]
addss xmm0, dword [edi + 0x100]
push eax
push ecx
lea eax, [esp + 0xec]
movss dword [esp + 0xf0], xmm0
movss xmm0, dword [esp + 0xf4]
addss xmm0, dword [edi + 0x104]
movss dword [esp + 0xf4], xmm0
movss xmm0, dword [esp + 0x28]
movss dword [esp], xmm0
push eax
push 0x7d31
mov eax, 0x771310
call eax
add esp, 0x1c
lea eax, [esp + 0xd8]
push 0
push eax
lea eax, [esp + 0xf8]
push eax
push 0x7bc0900
mov ecx, esi
mov eax, 0x545030
call eax
movss xmm0, dword [esp + 0xd8]
lea eax, [esp + 0xe4]
addss xmm0, dword [edi + 0xfc]
push 0
push ecx
mov dword [esp], 0
push edi
movss dword [esp + 0xe4], xmm0
movss xmm0, dword [esp + 0xe8]
addss xmm0, dword [edi + 0x100]
push eax
lea eax, [esp + 0xe8]
movss dword [esp + 0xec], xmm0
movss xmm0, dword [esp + 0xf0]
addss xmm0, dword [edi + 0x104]
movss dword [esp + 0xf0], xmm0
movss xmm0, dword [esp + 0x24]
jmp 0x10086d1e
cmp eax, 0x20a6
jne 0x100872af
movss xmm0, dword [0x5ef5a1c]
mulss xmm0, xmm1
call fcn.1001e0c0
movaps xmm1, xmm0
mov dword [esp + 0xf0], 0
mulss xmm1, dword [0x10102664]
lea eax, [esp + 0xd8]
push 0
push eax
lea eax, [esp + 0xf8]
mov dword [esp + 0xfc], 0
addss xmm1, dword [0x10102680]
push eax
push 0x7bc0a50
mov eax, 0x545030
mov dword [esp + 0x108], 0
mov ecx, esi
movaps xmm0, xmm1
mulss xmm0, dword [0x10102694]
movss dword [esp + 0x24], xmm0
movaps xmm0, xmm1
addss xmm0, xmm1
mulss xmm1, dword [0x10102660]
movss dword [esp + 0xf8], xmm1
movss dword [esp + 0xf4], xmm0
movss dword [esp + 0xfc], xmm1
call eax
movss xmm0, dword [esp + 0xd8]
lea eax, [esp + 0xe4]
addss xmm0, dword [edi + 0xfc]
push 0
push ecx
mov dword [esp], 0
push edi
movss dword [esp + 0xe4], xmm0
movss xmm0, dword [esp + 0xe8]
addss xmm0, dword [edi + 0x100]
push eax
push ecx
lea eax, [esp + 0xec]
movss dword [esp + 0xf0], xmm0
movss xmm0, dword [esp + 0xf4]
addss xmm0, dword [edi + 0x104]
movss dword [esp + 0xf4], xmm0
movss xmm0, dword [esp + 0x28]
movss dword [esp], xmm0
push eax
push 0x7d31
mov eax, 0x771310
call eax
add esp, 0x1c
lea eax, [esp + 0xd8]
push 0
push eax
lea eax, [esp + 0xf8]
push eax
push 0x7bc0a80
jmp 0x100870e8
cmp eax, 0x20a8
jne 0x1008731e
movss xmm0, dword [0x5ef5a1c]
mulss xmm0, xmm1
call fcn.1001e0c0
mulss xmm0, dword [0x10102650]
lea eax, [esp + 0x40]
push 0
push ecx
mov dword [esp], 0
xorps xmm2, xmm2
addss xmm0, dword [0x10102690]
push edi
push eax
push ecx
mov dword [esp], 0x40200000
lea eax, [edi + 0xfc]
movaps xmm1, xmm0
movss dword [esp + 0x54], xmm0
mulss xmm1, dword [0x10102674]
mulss xmm0, xmm2
movss dword [esp + 0x58], xmm1
movss dword [esp + 0x5c], xmm0
jmp 0x10086d24
cmp eax, 0x1c98
jne 0x1008734b
movss xmm0, dword [0x5ef5a1c]
mulss xmm0, xmm2
call fcn.1001e0c0
addss xmm0, dword [0x101026dc]
mulss xmm0, dword [0x10102650]
jmp 0x100888eb
cmp eax, 0x1c97
jne 0x10087370
movss xmm0, dword [0x5ef5a1c]
mulss xmm0, xmm2
call fcn.1001e0c0
addss xmm0, dword [0x10102718]
jmp 0x100888eb
cmp edx, 0x16ab
je 0x100888ca
cmp edx, 0x12ab
je 0x100888ca
cmp eax, 0xe9e
jne 0x100873b9
movss xmm0, dword [0x5ef5a1c]
mulss xmm0, dword [0x1010260c]
call fcn.1001e0c0
mulss xmm0, dword [0x10102658]
addss xmm0, dword [0x10102684]
jmp 0x100888eb
cmp edx, 0x12a6
je 0x100888c1
cmp edx, 0x18a6
je 0x100888c1
cmp edx, 0x1aa6
je 0x100888c1
cmp edx, 0x209a
jne 0x100873fb
sub ecx, 0
je 0x1008740b
sub ecx, 1
jne 0x100888f4
mov dword [edi + 0x3c], ecx
jmp 0x100888f4
cmp edx, 0x1e9a
je 0x100873e5
cmp edx, 0x1e9e
jne 0x10087417
mov dword [edi + 0x3c], 1
jmp 0x100888f4
cmp edx, 0x2537
jne 0x1008742b
mov dword [edi + 0x44], 1
jmp 0x100888f4
cmp eax, 0x1c99
jne 0x10087724
movss xmm0, dword [0x5ef5a1c]
mulss xmm0, dword [0x1010260c]
call fcn.1001e0c0
mulss xmm0, dword [0x10102658]
mov eax, 0x7bc0e40
mov dword [esp + 0x40], 0x3f19999a
mov dword [esp + 0x44], 0x3e99999a
mov dword [esp + 0x48], 0x3f4ccccd
addss xmm0, dword [0x10102658]
mov dword [esp + 0xf0], 0
mov dword [esp + 0xf4], 0
mov dword [esp + 0xf8], 0
mov dword [esp + 0x14], eax
mulss xmm0, dword [0x10102eb4]
addss xmm0, dword [0x10102ef0]
movaps xmm1, xmm0
movss dword [esp + 0x1c], xmm0
divss xmm0, dword [0x10102f14]
addss xmm1, dword [0x10102e98]
movss dword [esp + 0x38], xmm0
movss dword [esp + 0x10], xmm1
push 1
lea ecx, [esp + 0xe8]
add eax, 0xfffffe80
push ecx
lea ecx, [esp + 0xf8]
mov edx, 0x545030
push ecx
push eax
mov ecx, esi
call edx
push 1
lea eax, [esp + 0xdc]
mov ecx, esi
push eax
lea eax, [esp + 0xf8]
push eax
push dword [esp + 0x20]
mov eax, 0x545030
call eax
movss xmm0, dword [esp + 0x1c]
lea eax, [edi + 0x108]
push 0xffffffffffffffff
push 0
push 0xffffffffffffffff
push 0
push 0
push 0xffffffffffffffff
push ecx
movss dword [esp], xmm0
push edi
push 0xe
push eax
lea eax, [esp + 0x10c]
push eax
lea eax, [esp + 0x104]
push eax
push 0x7d86
mov eax, 0x72d1b0
call eax
movss xmm0, dword [esp + 0x44]
lea eax, [edi + 0x108]
add esp, 0x34
push 0xffffffffffffffff
push 0
push 0xffffffffffffffff
push 0
push 0
push 0xffffffffffffffff
push ecx
movss dword [esp], xmm0
push edi
push 4
push eax
lea eax, [esp + 0x100]
push eax
lea eax, [esp + 0x110]
push eax
push 0x7ddc
mov eax, 0x72d1b0
call eax
movss xmm0, dword [esp + 0x6c]
lea eax, [esp + 0x74]
add esp, 0x34
push 0
push ecx
mov dword [esp], 0
push edi
push eax
push ecx
movss dword [esp], xmm0
lea eax, [esp + 0xf8]
push eax
push 0x7de5
mov eax, 0x771310
call eax
mov eax, dword [esp + 0x30]
add esp, 0x1c
dec eax
mov dword [esp + 0x14], eax
cmp eax, 0x7bc0e3b
jg 0x100874d2
movss xmm0, dword [esp + 0x1c]
mov eax, 0x7bc09f0
movaps xmm1, xmm0
mov dword [esp + 0x14], 0
divss xmm0, dword [0x10102f14]
mov dword [esp + 0x10], eax
addss xmm1, dword [0x10102e98]
movss dword [esp + 0x2c], xmm0
movss dword [esp + 0x38], xmm1
push 1
lea ecx, [esp + 0xe8]
push ecx
lea ecx, [esp + 0xf8]
push ecx
push eax
mov ecx, esi
mov eax, 0x545030
call eax
push 1
lea eax, [esp + 0xdc]
mov ecx, esi
push eax
lea eax, [esp + 0xf8]
push eax
mov eax, dword [esp + 0x20]
add eax, 0x7bc0ab0
push eax
mov eax, 0x545030
call eax
movss xmm0, dword [esp + 0x1c]
lea eax, [edi + 0x108]
push 0xffffffffffffffff
push 0
push 0xffffffffffffffff
push 0
push 0
push 0xffffffffffffffff
push ecx
movss dword [esp], xmm0
push edi
push 0xe
push eax
lea eax, [esp + 0x10c]
push eax
lea eax, [esp + 0x104]
push eax
push 0x7d86
mov eax, 0x72d1b0
call eax
movss xmm0, dword [esp + 0x6c]
lea eax, [edi + 0x108]
add esp, 0x34
push 0xffffffffffffffff
push 0
push 0xffffffffffffffff
push 0
push 0
push 0xffffffffffffffff
push ecx
movss dword [esp], xmm0
push edi
push 4
push eax
lea eax, [esp + 0x100]
push eax
lea eax, [esp + 0x110]
push eax
push 0x7ddc
mov eax, 0x72d1b0
call eax
movss xmm0, dword [esp + 0x60]
lea eax, [esp + 0x74]
add esp, 0x34
push 0
push ecx
mov dword [esp], 0
push edi
push eax
push ecx
movss dword [esp], xmm0
lea eax, [esp + 0xf8]
push eax
push 0x7de5
mov eax, 0x771310
call eax
mov eax, dword [esp + 0x2c]
add esp, 0x1c
inc dword [esp + 0x14]
dec eax
mov dword [esp + 0x10], eax
cmp eax, 0x7bc09eb
jg 0x10087611
jmp 0x100888f0
cmp edx, 0x1cb7
jne 0x10087ae1
mov dword [esp + 0xf0], 0
mov dword [esp + 0xf4], 0
mov dword [esp + 0xf8], 0
mov dword [esp + 0xe4], 0
mov dword [esp + 0xe8], 0
mov dword [esp + 0xec], 0
movss xmm0, dword [0x5ef5a1c]
mulss xmm0, dword [0x10102588]
call fcn.1001e0c0
call fcn.100d07a0
mulss xmm0, dword [0x10102668]
xor eax, eax
mov dword [esp + 0xa0], 0x66
mov edx, 0x545030
mov dword [esp + 0x10], eax
addss xmm0, dword [0x10102674]
movss dword [esp + 0xd8], xmm0
movss dword [esp + 0xdc], xmm0
movss dword [esp + 0xe0], xmm0
movaps xmm0, xmmword [0x10103460]
movups xmmword [esp + 0x40], xmm0
movaps xmm0, xmmword [0x10103550]
movups xmmword [esp + 0x50], xmm0
movaps xmm0, xmmword [0x101035c0]
movups xmmword [esp + 0x60], xmm0
movaps xmm0, xmmword [0x10103630]
movups xmmword [esp + 0x70], xmm0
movaps xmm0, xmmword [0x10103650]
movups xmmword [esp + 0x80], xmm0
movaps xmm0, xmmword [0x10103680]
movups xmmword [esp + 0x90], xmm0
nop dword [eax + eax]
mov eax, dword [esp + eax*4 + 0x40]
lea ecx, [esp + 0xe4]
add eax, 0x29402e
push 1
push ecx
lea ecx, [esp + 0xf8]
lea eax, [eax + eax*2]
push ecx
shl eax, 4
mov ecx, esi
push eax
call edx
mov eax, 0x5ef5a1c
push 1
push ecx
movss xmm0, dword [eax]
lea eax, [esp + 0xe0]
mulss xmm0, dword [0x10102630]
movss dword [esp], xmm0
push edi
push eax
push ecx
lea eax, [esp + 0xf8]
mov dword [esp], 0x3f000000
push eax
push 0x7e04
mov eax, 0x771310
call eax
mov eax, dword [esp + 0x2c]
add esp, 0x1c
inc eax
mov edx, 0x545030
mov dword [esp + 0x10], eax
cmp eax, 0x19
jl 0x10087820
movaps xmm0, xmmword [0x10103620]
movups xmmword [esp + 0x40], xmm0
mov dword [esp + 0x50], 0x51
mov dword [esp + 0x54], 0x59
call fcn.100db6ca
test al, 1
jne 0x10087970
xor eax, eax
mov dword [esp + 0x10], eax
nop dword [eax]
mov eax, dword [esp + eax*4 + 0x40]
lea ecx, [esp + 0xe4]
add eax, 0x29402e
push 1
push ecx
lea ecx, [esp + 0xf8]
lea eax, [eax + eax*2]
push ecx
shl eax, 4
mov ecx, esi
push eax
mov eax, 0x545030
call eax
call fcn.100db6ca
cdq
mov ecx, 0x14
idiv ecx
test edx, edx
jne 0x1008795e
push 0xffffffffffffffff
push ecx
mov dword [esp], edx
lea eax, [esp + 0xe0]
push edx
push edx
push edx
push 0xffffffffffffffff
push edi
push 1
push eax
lea eax, [edi + 0x108]
mov dword [esp + 0xfc], 0x3f19999a
push eax
lea eax, [esp + 0x10c]
mov dword [esp + 0x104], 0x3f19999a
push eax
push 0x184
mov dword [esp + 0x110], 0x3f666666
call dword [esp + 0x60]
add esp, 0x30
mov eax, dword [esp + 0x10]
inc eax
mov dword [esp + 0x10], eax
cmp eax, 6
jl 0x100878d0
movaps xmm0, xmmword [0x10103640]
movups xmmword [esp + 0x40], xmm0
mov dword [esp + 0x90], 0x31
movaps xmm0, xmmword [0x10103660]
movups xmmword [esp + 0x50], xmm0
mov dword [esp + 0x94], 0x2d
movaps xmm0, xmmword [0x10103470]
movups xmmword [esp + 0x60], xmm0
movaps xmm0, xmmword [0x10103540]
movups xmmword [esp + 0x70], xmm0
movaps xmm0, xmmword [0x101035b0]
movups xmmword [esp + 0x80], xmm0
movss xmm0, dword [0x5ef5a1c]
mulss xmm0, dword [0x101025e8]
call fcn.1001e0c0
call fcn.100d07a0
mulss xmm0, dword [0x1010264c]
xor eax, eax
mov dword [esp + 0x14], eax
movss dword [esp + 0x10], xmm0
mov eax, dword [esp + eax*4 + 0x40]
lea ecx, [esp + 0xe4]
push 1
push ecx
lea ecx, [esp + 0xf8]
lea eax, [eax + eax*2]
add eax, 0x7bc08a
push ecx
shl eax, 4
mov ecx, esi
push eax
mov eax, 0x545030
call eax
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + ecx*4 + 0x40]
cmp eax, 0xc
je 0x10087a6b
cmp eax, 0x40
je 0x10087a6b
cmp eax, 0x62
je 0x10087a6b
cmp eax, 0x34
je 0x10087a6b
movss xmm0, dword [esp + 0x10]
addss xmm0, dword [0x10102658]
mov dword [esp + 0xd8], 0x3f4ccccd
mov dword [esp + 0xdc], 0x3f000000
mov dword [esp + 0xe0], 0x3e4ccccd
jmp 0x10087a9a
movss xmm0, dword [esp + 0x10]
addss xmm0, dword [0x101027d0]
mov dword [esp + 0xd8], 0x3f666666
mov dword [esp + 0xdc], 0
mov dword [esp + 0xe0], 0
push 0
push ecx
mov dword [esp], 0
lea eax, [esp + 0xe0]
push edi
push eax
push ecx
movss dword [esp], xmm0
lea eax, [esp + 0xf8]
push eax
push 0x7d02
mov eax, 0x771310
call eax
mov eax, dword [esp + 0x30]
add esp, 0x1c
inc eax
mov dword [esp + 0x14], eax
cmp eax, 0x16
jl 0x100879f3
jmp 0x100888f0
cmp eax, 0x1cb8
jne 0x10087dc4
mov dword [esp + 0xf0], 0
mov dword [esp + 0xf4], 0
mov dword [esp + 0xf8], 0
movss xmm0, dword [0x5ef5a1c]
mulss xmm0, dword [0x101025e8]
call fcn.1001e0c0
call fcn.100d07a0
mulss xmm0, dword [0x1010264c]
movss dword [esp + 0x1c], xmm0
movss xmm0, dword [0x5ef5a1c]
mulss xmm0, dword [0x101025e8]
call fcn.1001e0c0
call fcn.100d07a0
mulss xmm0, dword [0x10102658]
xor eax, eax
mov dword [esp + 0x50], 0x35
mov edx, 0x545030
mov dword [esp + 0x54], 0x23
mov dword [esp + 0x10], eax
movaps xmm1, xmm0
addss xmm0, dword [0x1010267c]
addss xmm1, dword [0x10102674]
movss dword [esp + 0xec], xmm0
movaps xmm0, xmmword [0x10103430]
movups xmmword [esp + 0x40], xmm0
movss xmm0, dword [esp + 0x1c]
addss xmm0, dword [0x10102790]
movss dword [esp + 0xe4], xmm1
movss dword [esp + 0xe8], xmm1
movss dword [esp + 0x2c], xmm0
mov eax, dword [esp + eax*4 + 0x40]
lea ecx, [esp + 0xd8]
add eax, 0x29402e
push 1
push ecx
lea ecx, [esp + 0xf8]
lea eax, [eax + eax*2]
push ecx
shl eax, 4
mov ecx, esi
push eax
call edx
movss xmm0, dword [esp + 0x2c]
lea eax, [esp + 0xe4]
push 0
push ecx
mov dword [esp], 0
push edi
push eax
push ecx
movss dword [esp], xmm0
lea eax, [esp + 0xec]
push eax
push 0x7d02
mov eax, 0x771310
call eax
mov eax, dword [esp + 0x2c]
add esp, 0x1c
inc eax
mov edx, 0x545030
mov dword [esp + 0x10], eax
cmp eax, 6
jl 0x10087bc0
movaps xmm0, xmmword [0x10103520]
xor eax, eax
movups xmmword [esp + 0x40], xmm0
mov dword [esp + 0xe4], 0x3dcccccd
movaps xmm0, xmmword [0x10103480]
movups xmmword [esp + 0x50], xmm0
mov dword [esp + 0xe8], 0x3dcccccd
movaps xmm0, xmmword [0x10103440]
movups xmmword [esp + 0x60], xmm0
mov dword [esp + 0xec], 0x3f666666
movaps xmm0, xmmword [0x101035f0]
movups xmmword [esp + 0x70], xmm0
mov dword [esp + 0x80], 0x28
movss xmm0, dword [esp + 0x1c]
addss xmm0, dword [0x10102828]
mov dword [esp + 0x84], 0x27
mov dword [esp + 0x10], eax
movss dword [esp + 0x2c], xmm0
mov eax, dword [esp + eax*4 + 0x40]
lea ecx, [esp + 0xd8]
add eax, 0x29402e
push 1
push ecx
lea ecx, [esp + 0xf8]
lea eax, [eax + eax*2]
push ecx
shl eax, 4
mov ecx, esi
push eax
mov eax, 0x545030
call eax
movss xmm0, dword [esp + 0x2c]
lea eax, [esp + 0xe4]
push 0
push ecx
mov dword [esp], 0
push edi
push eax
push ecx
movss dword [esp], xmm0
lea eax, [esp + 0xec]
push eax
push 0x7d02
mov eax, 0x771310
call eax
mov eax, dword [esp + 0x2c]
add esp, 0x1c
inc eax
mov dword [esp + 0x10], eax
cmp eax, 0x12
jl 0x10087cb0
movaps xmm0, xmmword [0x101035a0]
xor eax, eax
movups xmmword [esp + 0x40], xmm0
mov dword [esp + 0x10], eax
movss xmm0, dword [esp + 0x1c]
addss xmm0, dword [0x10102674]
movss dword [esp + 0x1c], xmm0
nop word [eax + eax]
mov eax, dword [esp + eax*4 + 0x40]
lea ecx, [esp + 0xd8]
add eax, 0x29402e
push 1
push ecx
lea ecx, [esp + 0xf8]
lea eax, [eax + eax*2]
push ecx
shl eax, 4
mov ecx, esi
push eax
mov eax, 0x545030
call eax
movss xmm0, dword [esp + 0x1c]
lea eax, [esp + 0xe4]
push 0
push ecx
mov dword [esp], 0
push edi
push eax
push ecx
movss dword [esp], xmm0
lea eax, [esp + 0xec]
push eax
push 0x7d02
mov eax, 0x771310
call eax
mov eax, dword [esp + 0x2c]
add esp, 0x1c
inc eax
mov dword [esp + 0x10], eax
cmp eax, 4
jl 0x10087d50
jmp 0x100888f0
cmp eax, 0x1cb9
jne 0x10088150
mov dword [esp + 0xf0], 0
mov dword [esp + 0xf4], 0
mov dword [esp + 0xf8], 0
movss xmm0, dword [0x5ef5a1c]
mulss xmm0, xmm1
call fcn.1001e0c0
call fcn.100d07a0
mulss xmm0, dword [0x1010264c]
movss dword [esp + 0x14], xmm0
movss xmm0, dword [0x5ef5a1c]
mulss xmm0, dword [0x101025c8]
call fcn.1001e0c0
call fcn.100d07a0
mulss xmm0, dword [0x10102668]
xorps xmm2, xmm2
xor eax, eax
mov edx, 0x545030
mov dword [esp + 0x10], eax
movaps xmm1, xmm0
movss dword [esp + 0x2c], xmm0
addss xmm1, dword [0x10102674]
movss dword [esp + 0xd8], xmm1
movaps xmm1, xmm0
movaps xmm0, xmmword [0x10103420]
addss xmm1, xmm2
movups xmmword [esp + 0x40], xmm0
movaps xmm0, xmmword [0x101034f0]
movups xmmword [esp + 0x50], xmm0
movaps xmm0, xmmword [0x10103560]
movups xmmword [esp + 0x60], xmm0
movss xmm0, dword [esp + 0x14]
addss xmm0, dword [0x1010267c]
movss dword [esp + 0xdc], xmm1
movss dword [esp + 0xe0], xmm1
movss dword [esp + 0x14], xmm0
nop
mov eax, dword [esp + eax*4 + 0x40]
lea ecx, [esp + 0xe4]
add eax, 0x29402e
push 1
push ecx
lea ecx, [esp + 0xf8]
lea eax, [eax + eax*2]
push ecx
shl eax, 4
mov ecx, esi
push eax
call edx
movss xmm0, dword [esp + 0x14]
lea eax, [esp + 0xd8]
push 0
push ecx
mov dword [esp], 0
push edi
push eax
push ecx
movss dword [esp], xmm0
lea eax, [esp + 0xf8]
push eax
push 0x7d83
mov eax, 0x771310
call eax
mov eax, dword [esp + 0x2c]
add esp, 0x1c
inc eax
mov edx, 0x545030
mov dword [esp + 0x10], eax
cmp eax, 0xc
jl 0x10087eb0
movss xmm1, dword [esp + 0x2c]
xorps xmm2, xmm2
movaps xmm0, xmm1
xor eax, eax
addss xmm0, xmm2
mov dword [esp + 0x10], eax
movss dword [esp + 0xd8], xmm0
movaps xmm0, xmm1
addss xmm0, dword [0x10102674]
addss xmm1, xmm2
movss dword [esp + 0xdc], xmm0
movaps xmm0, xmmword [0x10103490]
movups xmmword [esp + 0x40], xmm0
movaps xmm0, xmmword [0x10103530]
movss dword [esp + 0xe0], xmm1
movups xmmword [esp + 0x50], xmm0
nop word [eax + eax]
mov eax, dword [esp + eax*4 + 0x40]
lea ecx, [esp + 0xe4]
add eax, 0x29402e
push 1
push ecx
lea ecx, [esp + 0xf8]
lea eax, [eax + eax*2]
push ecx
shl eax, 4
mov ecx, esi
push eax
mov eax, 0x545030
call eax
push 0
push ecx
mov dword [esp], 0
lea eax, [esp + 0xe0]
push edi
push eax
push ecx
lea eax, [esp + 0xf8]
mov dword [esp], 0x3fa66666
push eax
push 0x7d02
mov eax, 0x771310
call eax
mov eax, dword [esp + 0x2c]
add esp, 0x1c
inc eax
mov dword [esp + 0x10], eax
cmp eax, 8
jl 0x10087f80
mov dword [esp + 0xd8], 0x3f800000
mov dword [esp + 0xdc], 0x3f800000
mov dword [esp + 0xe0], 0x3f800000
movss xmm0, dword [0x5ef5a1c]
mulss xmm0, dword [0x1010260c]
call fcn.1001e0c0
addss xmm0, dword [0x101026dc]
push 0
push ecx
mov dword [esp], 0x3f000000
lea eax, [esp + 0xe0]
push edi
mulss xmm0, dword [0x10102640]
push eax
push ecx
lea eax, [esp + 0xf8]
mov dword [esp], 0x3ecccccd
movaps xmm1, xmm0
addss xmm1, dword [0x10102694]
addss xmm0, dword [0x10102658]
push eax
push 0x7d02
mov eax, 0x771310
movss dword [esp + 0xf4], xmm1
movss dword [esp + 0xf8], xmm1
movss dword [esp + 0xfc], xmm0
call eax
add esp, 0x1c
call fcn.100db6ca
cdq
mov ecx, 0xf
idiv ecx
cmp edx, 8
jl 0x100888f0
push 1
lea eax, [esp + 0xe8]
mov ecx, esi
push eax
lea eax, [esp + 0xf8]
push eax
push 0x7bc0b10
mov eax, 0x545030
call eax
push 0
push ecx
mov dword [esp], 0x3f000000
lea eax, [esp + 0xe0]
push 5
push eax
lea esi, [edi + 0x108]
push esi
lea eax, [esp + 0xf8]
push eax
push 0x7d71
mov eax, 0x74cd30
call eax
mov ecx, dword [esp + 0x3c]
lea eax, [esp + 0x100]
add esp, 0x1c
push 1
push eax
lea eax, [esp + 0xf8]
push eax
push 0x7bc0e70
mov eax, 0x545030
call eax
push 0
push ecx
mov dword [esp], 0x3f000000
lea eax, [esp + 0xe0]
push 5
push eax
push esi
lea eax, [esp + 0xf8]
push eax
push 0x7d71
mov eax, 0x74cd30
call eax
mov esi, dword [esp + 0x3c]
add esp, 0x1c
jmp 0x100888f0
cmp eax, 0x1cba
jne 0x10088568
mov dword [esp + 0xf0], 0
mov dword [esp + 0xf4], 0
mov dword [esp + 0xf8], 0
movss xmm0, dword [0x5ef5a1c]
mulss xmm0, dword [0x101025e8]
call fcn.1001e0c0
call fcn.100d07a0
mulss xmm0, dword [0x1010264c]
movss dword [esp + 0x1c], xmm0
movss xmm0, dword [0x5ef5a1c]
mulss xmm0, dword [0x101025e8]
call fcn.1001e0c0
call fcn.100d07a0
mulss xmm0, dword [0x10102658]
xor eax, eax
mov dword [esp + 0x50], 0x2f
mov edx, 0x545030
mov dword [esp + 0x54], 0x26
mov dword [esp + 0x10], eax
movaps xmm1, xmm0
addss xmm1, dword [0x10102684]
movss dword [esp + 0xe4], xmm1
movaps xmm1, xmm0
addss xmm0, dword [0x10102694]
addss xmm1, dword [0x10102674]
movss dword [esp + 0xec], xmm0
movaps xmm0, xmmword [0x101035d0]
movups xmmword [esp + 0x40], xmm0
movss xmm0, dword [esp + 0x1c]
addss xmm0, dword [0x10102828]
movss dword [esp + 0xe8], xmm1
movss dword [esp + 0x1c], xmm0
nop word [eax + eax]
mov eax, dword [esp + eax*4 + 0x40]
lea ecx, [esp + 0xd8]
add eax, 0x29402e
push 1
push ecx
lea ecx, [esp + 0xf8]
lea eax, [eax + eax*2]
push ecx
shl eax, 4
mov ecx, esi
push eax
call edx
movss xmm0, dword [esp + 0x1c]
lea eax, [esp + 0xe4]
push 0
push ecx
mov dword [esp], 0
push edi
push eax
push ecx
movss dword [esp], xmm0
lea eax, [esp + 0xec]
push eax
push 0x7d02
mov eax, 0x771310
call eax
mov eax, dword [esp + 0x2c]
add esp, 0x1c
inc eax
mov edx, 0x545030
mov dword [esp + 0x10], eax
cmp eax, 6
jl 0x10088240
movaps xmm0, xmmword [0x101035e0]
lea ecx, [edi + 0x108]
movups xmmword [esp + 0x40], xmm0
xor eax, eax
mov dword [esp + 0xe4], 0x3f19999a
movaps xmm0, xmmword [0x101034d0]
mov edi, edx
movups xmmword [esp + 0x50], xmm0
mov dword [esp + 0xe8], 0x3ecccccd
movaps xmm0, xmmword [0x10103570]
movups xmmword [esp + 0x60], xmm0
mov dword [esp + 0xec], 0x3f333333
movaps xmm0, xmmword [0x10103610]
movups xmmword [esp + 0x70], xmm0
mov dword [esp + 0xd0], 0x3a
movaps xmm0, xmmword [0x101034c0]
movups xmmword [esp + 0x80], xmm0
mov dword [esp + 0xd4], 0x31
movaps xmm0, xmmword [0x10103580]
movups xmmword [esp + 0x90], xmm0
mov dword [esp + 0x10], eax
movaps xmm0, xmmword [0x10103600]
movups xmmword [esp + 0xa0], xmm0
mov dword [esp + 0x2c], ecx
movaps xmm0, xmmword [0x10103510]
movups xmmword [esp + 0xb0], xmm0
movaps xmm0, xmmword [0x10103500]
movups xmmword [esp + 0xc0], xmm0
nop dword [eax]
nop word [eax + eax]
mov eax, dword [esp + eax*4 + 0x40]
lea ecx, [esp + 0xd8]
add eax, 0x29402e
push 1
push ecx
lea ecx, [esp + 0xf8]
lea eax, [eax + eax*2]
push ecx
shl eax, 4
mov ecx, esi
push eax
call edi
push 0
push ecx
mov dword [esp], 0x3dcccccd
lea eax, [esp + 0xec]
push 0
push eax
push dword [esp + 0x3c]
lea eax, [esp + 0xec]
push eax
push 0x7e0f
mov eax, 0x74cd30
call eax
mov eax, dword [esp + 0x2c]
add esp, 0x1c
inc eax
mov dword [esp + 0x10], eax
cmp eax, 6
jl 0x10088380
mov ecx, dword [esp + 0x14]
mov eax, 6
add ecx, 0x108
mov dword [esp + 0x10], eax
mov dword [esp + 0x2c], ecx
nop word [eax + eax]
mov eax, dword [esp + eax*4 + 0x40]
lea ecx, [esp + 0xd8]
add eax, 0x29402e
push 1
push ecx
lea ecx, [esp + 0xf8]
lea eax, [eax + eax*2]
push ecx
shl eax, 4
mov ecx, esi
push eax
call edi
push 0
push ecx
mov dword [esp], 0x3e99999a
lea eax, [esp + 0xec]
push 0
push eax
push dword [esp + 0x3c]
lea eax, [esp + 0xec]
push eax
push 0x7e0f
mov eax, 0x74cd30
call eax
mov eax, dword [esp + 0x2c]
add esp, 0x1c
inc eax
mov dword [esp + 0x10], eax
cmp eax, 0x12
jl 0x10088400
mov ecx, dword [esp + 0x14]
mov eax, 0x12
add ecx, 0x108
mov dword [esp + 0x10], eax
mov dword [esp + 0x2c], ecx
nop word [eax + eax]
mov eax, dword [esp + eax*4 + 0x40]
lea ecx, [esp + 0xd8]
add eax, 0x29402e
push 1
push ecx
lea ecx, [esp + 0xf8]
lea eax, [eax + eax*2]
push ecx
shl eax, 4
mov ecx, esi
push eax
call edi
push 0
push ecx
mov dword [esp], 0x3f000000
lea eax, [esp + 0xec]
push 0
push eax
push dword [esp + 0x3c]
lea eax, [esp + 0xec]
push eax
push 0x7e0f
mov eax, 0x74cd30
call eax
mov eax, dword [esp + 0x2c]
add esp, 0x1c
inc eax
mov dword [esp + 0x10], eax
cmp eax, 0x1e
jl 0x10088480
mov ecx, dword [esp + 0x14]
mov eax, 0x1e
add ecx, 0x108
mov dword [esp + 0x10], eax
mov dword [esp + 0x2c], ecx
nop word [eax + eax]
mov eax, dword [esp + eax*4 + 0x40]
lea ecx, [esp + 0xd8]
add eax, 0x29402e
push 1
push ecx
lea ecx, [esp + 0xf8]
lea eax, [eax + eax*2]
push ecx
shl eax, 4
mov ecx, esi
push eax
call edi
push 0
push ecx
mov dword [esp], 0x3f333333
lea eax, [esp + 0xe0]
push 0
push dword [esp + 0x34]
push dword [esp + 0x3c]
push eax
push 0x7e0f
mov eax, 0x74cd30
call eax
mov eax, dword [esp + 0x2c]
add esp, 0x1c
inc eax
mov dword [esp + 0x10], eax
cmp eax, 0x26
jl 0x10088500
mov edi, dword [esp + 0x14]
jmp 0x100888f0
cmp eax, 0x1cbe
jne 0x100888f4
mov dword [esp + 0xf0], 0
mov dword [esp + 0xf4], 0
mov dword [esp + 0xf8], 0
movss xmm0, dword [0x5ef5a1c]
mulss xmm0, xmm1
call fcn.1001e0c0
call fcn.100d07a0
mulss xmm0, dword [0x1010264c]
movss dword [esp + 0x1c], xmm0
movss xmm0, dword [0x5ef5a1c]
mulss xmm0, dword [0x101025c8]
call fcn.1001e0c0
call fcn.100d07a0
mulss xmm0, dword [0x10102668]
xor eax, eax
mov edx, 0x545030
mov dword [esp + 0x50], 8
movss xmm2, dword [0x10102674]
mov dword [esp + 0x54], 0x14
movaps xmm1, xmm0
movss dword [esp + 0x10], xmm0
addss xmm1, dword [0x101026dc]
mov dword [esp + 0x14], eax
mulss xmm1, xmm2
movss dword [esp + 0xd8], xmm1
movaps xmm1, xmm0
addss xmm0, dword [0x1010264c]
addss xmm1, dword [0x10102684]
mulss xmm0, xmm2
mulss xmm1, xmm2
movss dword [esp + 0xe0], xmm0
movaps xmm0, xmmword [0x10103590]
movups xmmword [esp + 0x40], xmm0
movss xmm0, dword [esp + 0x1c]
addss xmm0, dword [0x10102918]
movss dword [esp + 0xdc], xmm1
movss dword [esp + 0x2c], xmm0
nop dword [eax + eax]
mov eax, dword [esp + eax*4 + 0x40]
lea ecx, [esp + 0xe4]
add eax, 0x29402e
push 1
push ecx
lea ecx, [esp + 0xf8]
lea eax, [eax + eax*2]
push ecx
shl eax, 4
mov ecx, esi
push eax
call edx
movss xmm0, dword [esp + 0x2c]
lea eax, [esp + 0xd8]
push 0
push ecx
mov dword [esp], 0
push edi
push eax
push ecx
movss dword [esp], xmm0
lea eax, [esp + 0xf8]
push eax
push 0x7d83
mov eax, 0x771310
call eax
mov eax, dword [esp + 0x30]
add esp, 0x1c
inc eax
mov edx, 0x545030
mov dword [esp + 0x14], eax
cmp eax, 2
jl 0x10088670
movss xmm2, dword [esp + 0x10]
movss xmm1, dword [0x10102650]
movaps xmm0, xmm2
addss xmm0, dword [0x101026dc]
mulss xmm0, xmm1
movss dword [esp + 0xd8], xmm0
movaps xmm0, xmm2
addss xmm0, dword [0x10102684]
mulss xmm0, xmm1
movss dword [esp + 0xdc], xmm0
movaps xmm0, xmm2
addss xmm0, dword [0x1010264c]
mulss xmm0, xmm1
movss dword [esp + 0xe0], xmm0
movss xmm0, dword [esp + 0x1c]
addss xmm0, dword [0x10102674]
movss dword [esp + 0x2c], xmm0
nop dword [eax]
mov eax, dword [esp + eax*4 + 0x40]
lea ecx, [esp + 0xe4]
add eax, 0x29402e
push 1
push ecx
lea ecx, [esp + 0xf8]
lea eax, [eax + eax*2]
push ecx
shl eax, 4
mov ecx, esi
push eax
mov eax, 0x545030
call eax
movss xmm0, dword [esp + 0x2c]
lea eax, [esp + 0xd8]
push 0
push ecx
mov dword [esp], 0
push edi
push eax
push ecx
movss dword [esp], xmm0
lea eax, [esp + 0xf8]
push eax
push 0x7d83
mov eax, 0x771310
call eax
mov eax, dword [esp + 0x30]
add esp, 0x1c
inc eax
mov dword [esp + 0x14], eax
cmp eax, 6
jl 0x10088750
movss xmm1, dword [esp + 0x10]
xor eax, eax
movss xmm2, dword [0x10102674]
movaps xmm0, xmm1
addss xmm0, xmm2
mov dword [esp + 0x50], 0xf
mov dword [esp + 0x54], 6
mov dword [esp + 0x10], eax
mulss xmm0, xmm2
movss dword [esp + 0xd8], xmm0
movaps xmm0, xmm1
addss xmm0, dword [0x10102644]
addss xmm1, dword [0x10102668]
mulss xmm0, xmm2
mulss xmm1, xmm2
movss dword [esp + 0xdc], xmm0
movaps xmm0, xmmword [0x101034b0]
movups xmmword [esp + 0x40], xmm0
movss xmm0, dword [esp + 0x1c]
addss xmm0, dword [0x10102918]
movss dword [esp + 0xe0], xmm1
movss dword [esp + 0x1c], xmm0
nop dword [eax]
nop dword [eax + eax]
mov eax, dword [esp + eax*4 + 0x40]
lea ecx, [esp + 0xe4]
add eax, 0x29402e
push 1
push ecx
lea ecx, [esp + 0xf8]
lea eax, [eax + eax*2]
push ecx
shl eax, 4
mov ecx, esi
push eax
mov eax, 0x545030
call eax
movss xmm0, dword [esp + 0x1c]
lea eax, [esp + 0xd8]
push 0
push ecx
mov dword [esp], 0
push edi
push eax
push ecx
movss dword [esp], xmm0
lea eax, [esp + 0xf8]
push eax
push 0x7d83
mov eax, 0x771310
call eax
mov eax, dword [esp + 0x2c]
add esp, 0x1c
inc eax
mov dword [esp + 0x10], eax
cmp eax, 6
jl 0x10088850
jmp 0x100888f0
mov dword [edi + 0x64], 0x3f800000
jmp 0x100888f4
movss xmm0, dword [0x5ef5a1c]
mulss xmm0, xmm2
call fcn.1001e0c0
mulss xmm0, dword [0x10102668]
addss xmm0, dword [0x1010267c]
movss dword [edi + 0x64], xmm0
mov edx, dword [esp + 8]
cmp byte [edi + 8], 0
je 0x10088a15
cmp dword [0xe61e18], 7
jne 0x10088939
push 1
mov eax, 0x635fd0
call eax
mov dword [esp], 0x3e4ccccd
sub esp, 0xc
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], 0
call dword [sym.imp.OPENGL32.dll_glColor4f]
jmp 0x10088960
mov eax, 0x635f50
call eax
sub esp, 0xc
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], 0
call dword [sym.imp.OPENGL32.dll_glColor3f]
mov ecx, dword [0xe61e18]
cmp ecx, 0x18
jge 0x1008897e
mov dword [esp + 0x14], 1
cmp ecx, 0xa
je 0x10085dcf
jmp 0x10088999
cmp ecx, 0x1d
jle 0x10088991
xor eax, eax
cmp ecx, 0x24
setne al
mov dword [esp + 0x14], eax
jmp 0x10088999
mov dword [esp + 0x14], 0
cmp byte [edi + 0x21], 3
je 0x10085dcf
mov eax, 0x4db250
call eax
mov edx, 0x4e44a0
lea ecx, [eax + 0x84]
call edx
test al, al
jne 0x10085dcf
push 0x12
lea ecx, [edi + 0x1e4]
mov eax, 0x4c8640
call eax
mov ecx, dword [esp + 0x14]
xor edx, edx
test al, al
movzx ecx, cl
cmove edx, ecx
test dl, dl
je case.0x10089f4b.4800
cmp byte [edi + 7], 0
je case.0x10089f4b.4800
push 0xffffffffffffffff
push 0xffffffffffffffff
push dword [edi + 0x3c]
mov eax, 0x54a270
mov ecx, esi
push dword [edi + 0x44]
call eax
pop edi
pop esi
mov ecx, dword [esp + 0xf4]
xor ecx, esp
call fcn.100d22e0
mov esp, ebp
pop ebp
ret
cmp dword [ebp + 0x14], 0x278b
mov dword [esp + 0x1c], 0x4c8640
jg 0x10089ae7
lea ecx, [edi + 0x1e4]
push 0x12
call dword [esp + 0x20]
test al, al
je 0x10088a9e
push 0x7dd8
mov dword [esi + 0x48], 0x3f800000
mov dword [esi + 0x4c], 0x3f800000
mov dword [esi + 0x50], 0x3f800000
movss xmm0, dword [edi + 0x6c]
push 0xffffffffffffffff
sub esp, 0xc
addss xmm0, xmm0
movss dword [esp + 8], xmm0
movss xmm0, dword [edi + 0x68]
mulss xmm0, dword [0x10102ea8]
movss dword [esp + 4], xmm0
movss xmm0, dword [edi + 0x64]
movss dword [esp], xmm0
push dword [edi + 0x44]
push ecx
mov dword [esp], 0x3f000000
push 0x4040
jmp 0x10089b87
push 0x37
lea ecx, [edi + 0x1e4]
call dword [esp + 0x20]
test al, al
je 0x10088ad8
push 0x38
lea ecx, [edi + 0x1e4]
call dword [esp + 0x20]
test al, al
je 0x10088ad8
mov dword [esi + 0x4c], 0x3f800000
mov dword [esi + 0x48], 0x3e99999a
mov dword [esi + 0x50], 0x3f800000
jmp 0x10088c95
push 0x56
lea ecx, [edi + 0x1e4]
call dword [esp + 0x20]
test al, al
je 0x10088b02
mov dword [esi + 0x4c], 0x3f800000
mov dword [esi + 0x48], 0x3e99999a
mov dword [esi + 0x50], 0x3f800000
jmp 0x10088c95
push 0x37
lea ecx, [edi + 0x1e4]
call dword [esp + 0x20]
test al, al
je 0x10088b2c
mov dword [esi + 0x48], 0x3e99999a
mov dword [esi + 0x4c], 0x3f800000
mov dword [esi + 0x50], 0x3f000000
jmp 0x10088c95
push 0x3d
lea ecx, [edi + 0x1e4]
call dword [esp + 0x20]
test al, al
je 0x10088b9f
push 5
push edi
push 0x7de2
mov eax, 0x6d8980
call eax
add esp, 0xc
lea eax, [edi + 0x108]
push 0xffffffffffffffff
push ecx
mov dword [esp], 0
push 0
push 0
push 0
push 0xffffffffffffffff
push edi
push 5
push dword [esp + 0x48]
push eax
lea eax, [edi + 0xfc]
push eax
push 0x7de2
call dword [esp + 0x60]
add esp, 0x30
mov dword [esi + 0x48], 0
mov dword [esi + 0x4c], 0
mov dword [esi + 0x50], 0x3f800000
jmp 0x10088c95
push 0x38
lea ecx, [edi + 0x1e4]
call dword [esp + 0x20]
test al, al
jne 0x10088bcf
push 0x56
lea ecx, [edi + 0x1e4]
call dword [esp + 0x20]
test al, al
jne 0x10088bcf
push 0x39
lea ecx, [edi + 0x1e4]
call dword [esp + 0x20]
test al, al
je 0x10088be9
mov dword [esi + 0x4c], 0x3f000000
mov dword [esi + 0x48], 0x3e99999a
mov dword [esi + 0x50], 0x3f800000
jmp 0x10088c95
mov eax, dword [esp + 0xc]
cmp eax, 3
jl 0x100898d1
cmp dword [edi + 0x30], 0x20a2
je 0x100898d1
cmp eax, 5
jge 0x10088c3e
movss xmm0, dword [0xe8c808]
movss dword [esp + 0x40], xmm0
movss xmm0, dword [0xe8c808]
mulss xmm0, dword [0x1010267c]
movss dword [esp + 0x44], xmm0
movss xmm0, dword [0xe8c808]
mulss xmm0, dword [0x1010267c]
jmp 0x10088c7b
cmp eax, 7
jge 0x10088cba
movss xmm0, dword [0xe8c808]
mulss xmm0, dword [0x10102674]
movss dword [esp + 0x40], xmm0
movss xmm0, dword [0xe8c808]
mulss xmm0, dword [0x10102684]
movss dword [esp + 0x44], xmm0
movss xmm0, dword [0xe8c808]
mov edx, dword [esp + 0x28]
lea eax, [esi + 0x48]
push eax
lea ecx, [esp + 0x44]
movss dword [esp + 0x4c], xmm0
call fcn.100d0700
add esp, 4
push dword [ebp + 0x1c]
movss xmm0, dword [esp + 0x1c]
mov eax, dword [esp + 0xc]
push ecx
movss dword [esp], xmm0
push eax
push edi
push esi
mov eax, 0x5fa710
call eax
add esp, 0x14
jmp 0x10089b90
mov ecx, dword [esp + 0x3c]
test ecx, ecx
je 0x100899c7
cmp eax, 9
jge 0x10088f48
cmp ecx, 1
jl 0x10088f51
mov eax, dword [ebp + 0x20]
test eax, eax
js 0x10088ecb
cmp dword [0x1147234c], 0
jne 0x10088e80
mov ecx, dword [ebp + 0x24]
test ecx, ecx
js 0x10088d0a
lea edx, [esp + 0x40]
push edx
push eax
push ecx
mov ecx, 0x102bb620
call fcn.10069610
jmp 0x10088d1a
lea ecx, [esp + 0x40]
push ecx
push eax
mov ecx, 0x102bb620
call fcn.100693b0
test al, al
je 0x10088e80
movd xmm0, dword [esp + 0x44]
lea eax, [esi + 0x48]
movsd xmm1, qword [0x10102800]
lea ecx, [esi + 0x4c]
cvtdq2pd xmm0, xmm0
lea edx, [esi + 0x50]
mov dword [esp + 0x30], eax
mov dword [esp + 0x14], edx
mov dword [esp + 0x10], ecx
push dword [ebp + 0x1c]
mulsd xmm0, xmm1
push ecx
cvtpd2ps xmm0, xmm0
movss dword [eax], xmm0
movd xmm0, dword [esp + 0x50]
cvtdq2ps xmm0, xmm0
mov eax, dword [esp + 0x10]
cvtps2pd xmm0, xmm0
mulsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [ecx], xmm0
movd xmm0, dword [esp + 0x54]
cvtdq2ps xmm0, xmm0
cvtps2pd xmm0, xmm0
mulsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [edx], xmm0
movd xmm0, dword [esp + 0x58]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [esp], xmm0
push eax
push edi
push esi
mov eax, 0x5fa710
call eax
movd xmm0, dword [esp + 0x78]
add esp, 0x14
movsd xmm2, qword [0x10102800]
cvtdq2ps xmm0, xmm0
mov eax, dword [esp + 0x30]
push 0xffffffffffffffff
push 0xffffffffffffffff
cvtps2pd xmm0, xmm0
mulsd xmm0, xmm2
cvtpd2ps xmm0, xmm0
cvtps2pd xmm1, xmm0
movd xmm0, dword [esp + 0x5c]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm2
mulsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [eax], xmm0
movd xmm0, dword [esp + 0x60]
cvtdq2pd xmm0, xmm0
mov eax, dword [esp + 0x18]
mulsd xmm0, xmm2
mulsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [eax], xmm0
movd xmm0, dword [esp + 0x64]
mov eax, dword [esp + 0x1c]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm2
mulsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [eax], xmm0
mov eax, dword [ebp + 0x1c]
movss xmm0, dword [edi + 0x6c]
and eax, 0x100
or eax, 0x44
sub esp, 0xc
mov dword [ebp + 0x1c], eax
movss dword [esp + 8], xmm0
movss xmm0, dword [edi + 0x68]
movss dword [esp + 4], xmm0
movss xmm0, dword [edi + 0x64]
movss dword [esp], xmm0
push dword [edi + 0x44]
movd xmm0, dword [esp + 0x78]
cvtdq2pd xmm0, xmm0
push ecx
mulsd xmm0, xmm2
cvtpd2ps xmm0, xmm0
movss dword [esp], xmm0
push eax
jmp 0x10089b87
mov eax, dword [esp + 0x28]
movss xmm1, dword [0x10102694]
push dword [ebp + 0x1c]
movss xmm0, dword [eax]
mulss xmm0, xmm1
push ecx
movss dword [esi + 0x48], xmm0
movss xmm0, dword [eax + 4]
mulss xmm0, xmm1
movss dword [esi + 0x4c], xmm0
movss xmm0, dword [eax + 8]
mov eax, dword [esp + 0x10]
mulss xmm0, xmm1
movss dword [esi + 0x50], xmm0
movss xmm0, dword [esp + 0x20]
movss dword [esp], xmm0
push eax
jmp 0x10088f13
mov eax, dword [esp + 0x28]
movss xmm1, dword [0x10102694]
push dword [ebp + 0x1c]
movss xmm0, dword [eax]
mulss xmm0, xmm1
push ecx
movss dword [esi + 0x48], xmm0
movss xmm0, dword [eax + 4]
mulss xmm0, xmm1
movss dword [esi + 0x4c], xmm0
movss xmm0, dword [eax + 8]
mulss xmm0, xmm1
movss dword [esi + 0x50], xmm0
movss xmm0, dword [esp + 0x20]
movss dword [esp], xmm0
push dword [esp + 0x10]
push edi
push esi
mov eax, 0x5fa710
call eax
add esp, 0x14
push 0xffffffffffffffff
push 0xffffffffffffffff
push ecx
mov dword [esp], 0x3f800000
push 0x44
push dword [esp + 0x18]
movss xmm3, dword [esp + 0x2c]
mov edx, edi
mov ecx, esi
call fcn.1008a8d0
add esp, 0x14
jmp 0x10089b90
cmp eax, 0xb
jge 0x100892b0
cmp ecx, 2
jl 0x100892b9
mov eax, dword [ebp + 0x20]
test eax, eax
js 0x100891fa
cmp dword [0x1147234c], 0
jne 0x1008915a
mov ecx, dword [ebp + 0x24]
test ecx, ecx
js 0x10088f8c
lea edx, [esp + 0x40]
push edx
push eax
push ecx
mov ecx, 0x102bb620
call fcn.10069610
jmp 0x10088f9c
lea ecx, [esp + 0x40]
push ecx
push eax
mov ecx, 0x102bb620
call fcn.100693b0
test al, al
je 0x1008915a
movd xmm0, dword [esp + 0x44]
lea eax, [esi + 0x48]
movsd xmm1, qword [0x10102800]
lea ecx, [esi + 0x4c]
cvtdq2pd xmm0, xmm0
lea edx, [esi + 0x50]
mov dword [esp + 0x30], eax
mov dword [esp + 0x14], edx
mov dword [esp + 0x10], ecx
push dword [ebp + 0x1c]
mulsd xmm0, xmm1
push ecx
cvtpd2ps xmm0, xmm0
movss dword [eax], xmm0
mov eax, 0x5fa710
movd xmm0, dword [esp + 0x50]
cvtdq2ps xmm0, xmm0
cvtps2pd xmm0, xmm0
mulsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [ecx], xmm0
movd xmm0, dword [esp + 0x54]
cvtdq2ps xmm0, xmm0
cvtps2pd xmm0, xmm0
mulsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [edx], xmm0
movd xmm0, dword [esp + 0x58]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [esp], xmm0
push dword [esp + 0x10]
push edi
push esi
call eax
movd xmm0, dword [esp + 0x78]
add esp, 0x14
movsd xmm2, qword [0x10102800]
cvtdq2ps xmm0, xmm0
mov eax, dword [esp + 0x30]
cvtps2pd xmm0, xmm0
mulsd xmm0, xmm2
cvtpd2ps xmm0, xmm0
cvtps2pd xmm1, xmm0
movd xmm0, dword [esp + 0x54]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm2
mulsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [eax], xmm0
movd xmm0, dword [esp + 0x58]
mov eax, dword [esp + 0x10]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm2
mulsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [eax], xmm0
movd xmm0, dword [esp + 0x5c]
mov eax, dword [esp + 0x14]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm2
mulsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [eax], xmm0
mov eax, dword [ebp + 0x1c]
and eax, 0x100
mov dword [ebp + 0x1c], eax
movss xmm0, dword [edi + 0x6c]
or eax, 0x48
push 0xffffffffffffffff
push 0xffffffffffffffff
sub esp, 0xc
movss dword [esp + 8], xmm0
movss xmm0, dword [edi + 0x68]
movss dword [esp + 4], xmm0
movss xmm0, dword [edi + 0x64]
movss dword [esp], xmm0
movd xmm0, dword [esp + 0x74]
push dword [edi + 0x44]
cvtdq2pd xmm0, xmm0
push ecx
mov ecx, esi
mulsd xmm0, xmm2
cvtpd2ps xmm0, xmm0
movss dword [esp], xmm0
push eax
mov eax, 0x5494c0
call eax
mov eax, dword [ebp + 0x1c]
movss xmm0, dword [edi + 0x6c]
or eax, 0x44
push 0xffffffffffffffff
push 0xffffffffffffffff
sub esp, 0xc
mov dword [ebp + 0x1c], eax
movss dword [esp + 8], xmm0
movss xmm0, dword [edi + 0x68]
movss dword [esp + 4], xmm0
movss xmm0, dword [edi + 0x64]
movss dword [esp], xmm0
movd xmm0, dword [esp + 0x74]
push dword [edi + 0x44]
cvtdq2pd xmm0, xmm0
push ecx
mulsd xmm0, qword [0x10102800]
cvtpd2ps xmm0, xmm0
movss dword [esp], xmm0
push eax
jmp 0x10089b87
mov eax, dword [esp + 0x28]
movss xmm1, dword [0x101026a8]
push dword [ebp + 0x1c]
movss xmm0, dword [eax]
mulss xmm0, xmm1
push ecx
movss dword [esi + 0x48], xmm0
movss xmm0, dword [eax + 4]
mulss xmm0, xmm1
movss dword [esi + 0x4c], xmm0
movss xmm0, dword [eax + 8]
mov eax, 0x5fa710
mulss xmm0, xmm1
movss dword [esi + 0x50], xmm0
movss xmm0, dword [esp + 0x20]
movss dword [esp], xmm0
push dword [esp + 0x10]
push edi
push esi
call eax
mov esi, dword [ebp + 0x1c]
add esp, 0x14
movss xmm3, dword [esp + 0x18]
and esi, 0x100
mov eax, esi
mov edx, edi
or eax, 0x44
push 0xffffffffffffffff
push 0xffffffffffffffff
push ecx
mov ecx, dword [esp + 0x2c]
mov dword [esp], 0x3f800000
push eax
push dword [esp + 0x18]
call fcn.1008a8d0
add esp, 0x14
or esi, 0x48
push 0xffffffffffffffff
push 0xffffffffffffffff
push ecx
mov dword [esp], 0x3f800000
push esi
mov esi, dword [esp + 0x30]
jmp 0x10088f2d
mov eax, dword [esp + 0x28]
movss xmm1, dword [0x101026a8]
push dword [ebp + 0x1c]
movss xmm0, dword [eax]
mulss xmm0, xmm1
push ecx
movss dword [esi + 0x48], xmm0
movss xmm0, dword [eax + 4]
mulss xmm0, xmm1
movss dword [esi + 0x4c], xmm0
movss xmm0, dword [eax + 8]
mov eax, 0x5fa710
mulss xmm0, xmm1
movss dword [esi + 0x50], xmm0
movss xmm0, dword [esp + 0x20]
movss dword [esp], xmm0
push dword [esp + 0x10]
push edi
push esi
call eax
mov esi, dword [ebp + 0x1c]
add esp, 0x14
movss xmm3, dword [esp + 0x18]
and esi, 0x100
mov eax, esi
mov edx, edi
or eax, 0x44
push 0xffffffffffffffff
push 0xffffffffffffffff
push ecx
mov ecx, dword [esp + 0x2c]
mov dword [esp], 0x3f800000
push eax
push dword [esp + 0x18]
call fcn.1008a8d0
add esp, 0x14
or esi, 0x48
movss xmm3, dword [esp + 0x18]
mov edx, edi
push 0xffffffffffffffff
push 0xffffffffffffffff
push ecx
mov dword [esp], 0x3f800000
push esi
push dword [esp + 0x18]
mov esi, dword [esp + 0x34]
mov ecx, esi
call fcn.1008a8d0
add esp, 0x14
jmp 0x10089b90
cmp eax, 0xd
jge 0x1008962c
cmp ecx, 3
jl 0x10089635
mov eax, dword [ebp + 0x20]
test eax, eax
js 0x10089570
cmp dword [0x1147234c], 0
jne 0x100894a3
mov ecx, dword [ebp + 0x24]
test ecx, ecx
js 0x100892f4
lea edx, [esp + 0x40]
push edx
push eax
push ecx
mov ecx, 0x102bb620
call fcn.10069610
jmp 0x10089304
lea ecx, [esp + 0x40]
push ecx
push eax
mov ecx, 0x102bb620
call fcn.100693b0
test al, al
je 0x100894a3
movd xmm0, dword [esp + 0x44]
lea eax, [esi + 0x48]
movsd xmm1, qword [0x10102800]
lea ecx, [esi + 0x4c]
cvtdq2pd xmm0, xmm0
lea edx, [esi + 0x50]
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], edx
mov dword [esp + 0x20], ecx
push dword [ebp + 0x1c]
mulsd xmm0, xmm1
push ecx
cvtpd2ps xmm0, xmm0
movss dword [eax], xmm0
mov eax, 0x5fa710
movd xmm0, dword [esp + 0x50]
cvtdq2ps xmm0, xmm0
cvtps2pd xmm0, xmm0
mulsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [ecx], xmm0
movd xmm0, dword [esp + 0x54]
cvtdq2ps xmm0, xmm0
cvtps2pd xmm0, xmm0
mulsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [edx], xmm0
movd xmm0, dword [esp + 0x58]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [esp], xmm0
push dword [esp + 0x10]
push edi
push esi
call eax
mov eax, dword [esp + 0x3c]
add esp, 0x14
movss xmm1, dword [0x101026a8]
mov ecx, dword [esp + 0x14]
movss xmm0, dword [eax]
mulss xmm0, xmm1
push 0xffffffffffffffff
movss dword [ecx], xmm0
movss xmm0, dword [eax + 4]
mov ecx, dword [esp + 0x24]
mulss xmm0, xmm1
push ecx
mov dword [esp], 0x3f800000
movss dword [ecx], xmm0
movss xmm0, dword [eax + 8]
mov eax, dword [esp + 0x20]
mulss xmm0, xmm1
movss dword [eax], xmm0
movd xmm0, dword [esp + 0x68]
mov eax, dword [ebp + 0x1c]
cvtdq2pd xmm0, xmm0
and eax, 0x100
mov dword [ebp + 0x1c], eax
or eax, 0x240
push eax
push ecx
mov eax, 0x608fb0
mulsd xmm0, qword [0x10102800]
cvtpd2ps xmm0, xmm0
movss dword [esp], xmm0
push dword [esp + 0x18]
push edi
push esi
call eax
movd xmm0, dword [esp + 0x80]
movsd xmm2, qword [0x10102800]
cvtdq2ps xmm0, xmm0
cvtps2pd xmm0, xmm0
mulsd xmm0, xmm2
cvtpd2ps xmm0, xmm0
cvtps2pd xmm1, xmm0
movd xmm0, dword [esp + 0x70]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm2
mulsd xmm0, xmm1
mov eax, dword [esp + 0x30]
cvtpd2ps xmm0, xmm0
movss dword [eax], xmm0
movd xmm0, dword [esp + 0x74]
mov eax, dword [esp + 0x3c]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm2
mulsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [eax], xmm0
mov eax, dword [esp + 0x34]
movd xmm0, dword [esp + 0x78]
add esp, 0x1c
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm2
mulsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [eax], xmm0
mov eax, dword [ebp + 0x1c]
jmp 0x100890b6
mov eax, dword [esp + 0x28]
movss xmm1, dword [0x101026a8]
push dword [ebp + 0x1c]
movss xmm0, dword [eax]
mulss xmm0, xmm1
push ecx
movss dword [esi + 0x48], xmm0
movss xmm0, dword [eax + 4]
mulss xmm0, xmm1
movss dword [esi + 0x4c], xmm0
movss xmm0, dword [eax + 8]
mov eax, 0x5fa710
mulss xmm0, xmm1
movss dword [esi + 0x50], xmm0
movss xmm0, dword [esp + 0x20]
movss dword [esp], xmm0
push dword [esp + 0x10]
push edi
push esi
call eax
mov esi, dword [ebp + 0x1c]
add esp, 0x14
and esi, 0x100
mov eax, esi
or eax, 0x240
push 0xffffffffffffffff
push ecx
mov dword [esp], 0x3f800000
push eax
push ecx
mov dword [esp], 0x3f800000
mov eax, 0x608fb0
push dword [esp + 0x18]
push edi
push dword [esp + 0x38]
call eax
movss xmm3, dword [esp + 0x34]
add esp, 0x1c
mov eax, esi
mov edx, edi
or eax, 0x48
push 0xffffffffffffffff
push 0xffffffffffffffff
push ecx
mov ecx, dword [esp + 0x2c]
mov dword [esp], 0x3f800000
push eax
push dword [esp + 0x18]
call fcn.1008a8d0
add esp, 0x14
or esi, 0x44
push 0xffffffffffffffff
push 0xffffffffffffffff
push ecx
mov dword [esp], 0x3f800000
push esi
mov esi, dword [esp + 0x30]
jmp 0x10088f2d
mov eax, dword [esp + 0x28]
movss xmm1, dword [0x101026a8]
push dword [ebp + 0x1c]
movss xmm0, dword [eax]
mulss xmm0, xmm1
push ecx
movss dword [esi + 0x48], xmm0
movss xmm0, dword [eax + 4]
mulss xmm0, xmm1
movss dword [esi + 0x4c], xmm0
movss xmm0, dword [eax + 8]
mov eax, 0x5fa710
mulss xmm0, xmm1
movss dword [esi + 0x50], xmm0
movss xmm0, dword [esp + 0x20]
movss dword [esp], xmm0
push dword [esp + 0x10]
push edi
push esi
call eax
mov esi, dword [ebp + 0x1c]
add esp, 0x14
and esi, 0x100
mov eax, esi
or eax, 0x240
push 0xffffffffffffffff
push ecx
mov dword [esp], 0x3f800000
push eax
push ecx
mov dword [esp], 0x3f800000
mov eax, 0x608fb0
push dword [esp + 0x18]
push edi
push dword [esp + 0x38]
call eax
movss xmm3, dword [esp + 0x34]
add esp, 0x1c
mov eax, esi
mov edx, edi
or eax, 0x48
push 0xffffffffffffffff
push 0xffffffffffffffff
push ecx
mov ecx, dword [esp + 0x2c]
mov dword [esp], 0x3f800000
push eax
push dword [esp + 0x18]
call fcn.1008a8d0
add esp, 0x14
or esi, 0x44
jmp 0x10089284
cmp eax, 0x10
jge 0x100899c7
cmp ecx, 4
jl 0x100899c7
mov eax, dword [ebp + 0x20]
test eax, eax
js 0x10089868
cmp dword [0x1147234c], 0
jne 0x100897ff
mov ecx, dword [ebp + 0x24]
test ecx, ecx
js 0x10089670
lea edx, [esp + 0x40]
push edx
push eax
push ecx
mov ecx, 0x102bb620
call fcn.10069610
jmp 0x10089680
lea ecx, [esp + 0x40]
push ecx
push eax
mov ecx, 0x102bb620
call fcn.100693b0
test al, al
je 0x100897ff
movd xmm0, dword [esp + 0x44]
lea eax, [esi + 0x48]
movsd xmm1, qword [0x10102800]
lea ecx, [esi + 0x4c]
cvtdq2pd xmm0, xmm0
lea edx, [esi + 0x50]
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], edx
mov dword [esp + 0x20], ecx
push dword [ebp + 0x1c]
mulsd xmm0, xmm1
push ecx
cvtpd2ps xmm0, xmm0
movss dword [eax], xmm0
mov eax, 0x5fa710
movd xmm0, dword [esp + 0x50]
cvtdq2ps xmm0, xmm0
cvtps2pd xmm0, xmm0
mulsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [ecx], xmm0
movd xmm0, dword [esp + 0x54]
cvtdq2ps xmm0, xmm0
cvtps2pd xmm0, xmm0
mulsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [edx], xmm0
movd xmm0, dword [esp + 0x58]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [esp], xmm0
push dword [esp + 0x10]
push edi
push esi
call eax
mov eax, dword [esp + 0x3c]
add esp, 0x14
movss xmm1, dword [0x101026a8]
mov ecx, dword [esp + 0x14]
movss xmm0, dword [eax]
mulss xmm0, xmm1
push 0xffffffffffffffff
movss dword [ecx], xmm0
movss xmm0, dword [eax + 4]
mov ecx, dword [esp + 0x24]
mulss xmm0, xmm1
push ecx
mov dword [esp], 0x3f800000
movss dword [ecx], xmm0
movss xmm0, dword [eax + 8]
mov eax, dword [esp + 0x20]
mulss xmm0, xmm1
movss dword [eax], xmm0
movd xmm0, dword [esp + 0x68]
mov eax, dword [ebp + 0x1c]
cvtdq2pd xmm0, xmm0
and eax, 0x100
mov dword [ebp + 0x1c], eax
or eax, 0x1040
push eax
push ecx
mov eax, 0x608fb0
mulsd xmm0, qword [0x10102800]
cvtpd2ps xmm0, xmm0
movss dword [esp], xmm0
push dword [esp + 0x18]
push edi
push esi
call eax
movd xmm0, dword [esp + 0x80]
movsd xmm2, qword [0x10102800]
cvtdq2ps xmm0, xmm0
cvtps2pd xmm0, xmm0
mulsd xmm0, xmm2
cvtpd2ps xmm0, xmm0
cvtps2pd xmm1, xmm0
movd xmm0, dword [esp + 0x70]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm2
mulsd xmm0, xmm1
mov eax, dword [esp + 0x30]
cvtpd2ps xmm0, xmm0
movss dword [eax], xmm0
movd xmm0, dword [esp + 0x74]
mov eax, dword [esp + 0x3c]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm2
mulsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [eax], xmm0
mov eax, dword [esp + 0x34]
jmp 0x1008947e
mov eax, dword [esp + 0x28]
movss xmm1, dword [0x101026a8]
push dword [ebp + 0x1c]
movss xmm0, dword [eax]
mulss xmm0, xmm1
push ecx
movss dword [esi + 0x48], xmm0
movss xmm0, dword [eax + 4]
mulss xmm0, xmm1
movss dword [esi + 0x4c], xmm0
movss xmm0, dword [eax + 8]
mov eax, 0x5fa710
mulss xmm0, xmm1
movss dword [esi + 0x50], xmm0
movss xmm0, dword [esp + 0x20]
movss dword [esp], xmm0
push dword [esp + 0x10]
push edi
push esi
call eax
mov esi, dword [ebp + 0x1c]
add esp, 0x14
and esi, 0x100
mov eax, esi
or eax, 0x1040
jmp 0x10089507
mov eax, dword [esp + 0x28]
movss xmm1, dword [0x101026a8]
push dword [ebp + 0x1c]
movss xmm0, dword [eax]
mulss xmm0, xmm1
push ecx
movss dword [esi + 0x48], xmm0
movss xmm0, dword [eax + 4]
mulss xmm0, xmm1
movss dword [esi + 0x4c], xmm0
movss xmm0, dword [eax + 8]
mov eax, 0x5fa710
mulss xmm0, xmm1
movss dword [esi + 0x50], xmm0
movss xmm0, dword [esp + 0x20]
movss dword [esp], xmm0
push dword [esp + 0x10]
push edi
push esi
call eax
mov esi, dword [ebp + 0x1c]
add esp, 0x14
and esi, 0x100
mov eax, esi
or eax, 0x1040
jmp 0x100895d4
mov eax, dword [edi + 0x30]
cmp eax, 0x20d3
jne 0x10089964
push dword [ebp + 0x1c]
movss xmm0, dword [esp + 0x1c]
mov eax, 0x5fa710
push ecx
movss dword [esp], xmm0
push dword [esp + 0x10]
push edi
push esi
call eax
mov esi, dword [ebp + 0x1c]
add esp, 0x14
and esi, 0x100
mov eax, esi
or eax, 0x42
push 0xffffffffffffffff
push ecx
mov dword [esp], 0x3f000000
push eax
push ecx
mov dword [esp], 0x3f000000
mov eax, 0x608fb0
push dword [esp + 0x18]
push edi
push dword [esp + 0x38]
call eax
add esp, 0x1c
or esi, 0x1040
mov eax, 0x608fb0
push 0xffffffffffffffff
push ecx
mov dword [esp], 0x3f800000
push esi
mov esi, dword [esp + 0x2c]
push ecx
mov dword [esp], 0x3f800000
push dword [esp + 0x18]
push edi
push esi
call eax
add esp, 0x1c
jmp 0x10089b90
cmp eax, 0x1ec5
je 0x10089a00
cmp eax, 0x20bd
je 0x10089a00
cmp eax, 0x1eb9
je 0x10089a00
cmp eax, 0x1ebe
je 0x10089a2b
cmp eax, 0x1ef0
je 0x10089a2b
cmp eax, 0x1ebf
je 0x10089a2b
cmp eax, 0x1ef1
je 0x10089a2b
cmp eax, 0x1f07
je 0x10089a2b
cmp eax, 0x1ec0
je 0x10089a2b
mov ecx, dword [esp + 0x28]
push dword [ebp + 0x1c]
movss xmm0, dword [esp + 0x1c]
push ecx
mov eax, dword [ecx]
movss dword [esp], xmm0
push dword [esp + 0x10]
mov dword [esi + 0x48], eax
mov eax, dword [ecx + 4]
mov dword [esi + 0x4c], eax
mov eax, dword [ecx + 8]
mov dword [esi + 0x50], eax
mov eax, 0x5fa710
push edi
push esi
call eax
add esp, 0x14
jmp 0x10089b90
cmp eax, 0x1ef1
je 0x10089a2b
cmp eax, 0x1f07
je 0x10089a2b
cmp eax, 0x1ec0
je 0x10089a2b
mov ecx, dword [esp + 0x28]
mov eax, dword [ecx]
mov dword [esi + 0x48], eax
mov eax, dword [ecx + 4]
mov dword [esi + 0x4c], eax
movss xmm0, dword [ecx + 8]
jmp 0x10089a5b
mov eax, dword [esp + 0x28]
movss xmm1, dword [0x101026a8]
movss xmm0, dword [eax]
mulss xmm0, xmm1
movss dword [esi + 0x48], xmm0
movss xmm0, dword [eax + 4]
mulss xmm0, xmm1
movss dword [esi + 0x4c], xmm0
movss xmm0, dword [eax + 8]
mulss xmm0, xmm1
push dword [ebp + 0x1c]
movss dword [esi + 0x50], xmm0
mov eax, 0x5fa710
movss xmm0, dword [esp + 0x1c]
push ecx
movss dword [esp], xmm0
push dword [esp + 0x10]
push edi
push esi
call eax
mov esi, dword [ebp + 0x1c]
add esp, 0x14
and esi, 0x100
mov eax, esi
or eax, 0x240
push 0xffffffffffffffff
push ecx
mov dword [esp], 0x3fc00000
push eax
push ecx
mov dword [esp], 0x3fc00000
mov eax, 0x608fb0
push dword [esp + 0x18]
push edi
push dword [esp + 0x38]
call eax
add esp, 0x1c
or esi, 0x1040
mov eax, 0x608fb0
push 0xffffffffffffffff
push ecx
mov dword [esp], 0x3f800000
push esi
mov esi, dword [esp + 0x2c]
push ecx
mov dword [esp], 0x3f800000
push dword [esp + 0x18]
push edi
push esi
call eax
add esp, 0x1c
jmp 0x10089b90
mov ecx, dword [esp + 0x28]
push dword [ebp + 0x1c]
movss xmm0, dword [esp + 0x1c]
push ecx
mov eax, dword [ecx]
mov dword [esi + 0x48], eax
mov eax, dword [ecx + 4]
movss dword [esp], xmm0
push edx
mov dword [esi + 0x4c], eax
mov eax, dword [ecx + 8]
mov dword [esi + 0x50], eax
mov eax, 0x5fa710
push edi
push esi
call eax
mov dword [esi + 0x48], 0x3f800000
mov ecx, 0x2710
mov dword [esi + 0x4c], 0x3f800000
add esp, 0x14
mov dword [esi + 0x50], 0x3f800000
cvttss2si eax, dword [0x5ef5a1c]
push 0x7e12
push dword [edi + 0x3c]
cdq
idiv ecx
sub esp, 0xc
movd xmm0, edx
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [0x10102688]
cvtpd2ps xmm0, xmm0
movss dword [esp + 8], xmm0
movss xmm0, dword [edi + 0x68]
movss dword [esp + 4], xmm0
movss xmm0, dword [edi + 0x64]
movss dword [esp], xmm0
push dword [edi + 0x44]
push ecx
mov dword [esp], 0x3f800000
push 0x80040
mov ecx, esi
mov eax, 0x5494c0
call eax
mov eax, dword [esp + 8]
add eax, 0xfffffb6d
push eax
mov eax, 0x7e7870
call eax
test al, al
je 0x10089e06
mov eax, dword [ebp + 0x20]
test eax, eax
js 0x10089e06
cmp dword [0x1147234c], 0
jne 0x10089e06
mov ecx, dword [ebp + 0x24]
test ecx, ecx
js 0x10089bdb
lea edx, [esp + 0x40]
push edx
push eax
push ecx
mov ecx, 0x102bb620
call fcn.10069610
jmp 0x10089beb
lea ecx, [esp + 0x40]
push ecx
push eax
mov ecx, 0x102bb620
call fcn.100693b0
test al, al
je 0x10089e06
movd xmm0, dword [esp + 0x44]
mov eax, 0x5fa710
movsd xmm1, qword [0x10102800]
cvtdq2pd xmm0, xmm0
push dword [ebp + 0x1c]
mulsd xmm0, xmm1
push ecx
cvtpd2ps xmm0, xmm0
movss dword [esi + 0x48], xmm0
movd xmm0, dword [esp + 0x50]
cvtdq2ps xmm0, xmm0
cvtps2pd xmm0, xmm0
mulsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [esi + 0x4c], xmm0
movd xmm0, dword [esp + 0x54]
cvtdq2ps xmm0, xmm0
cvtps2pd xmm0, xmm0
mulsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [esi + 0x50], xmm0
movd xmm0, dword [esp + 0x58]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [esp], xmm0
push dword [esp + 0x10]
push edi
push esi
call eax
mov eax, dword [esp + 0x3c]
add esp, 0x14
movss xmm1, dword [0x101026a8]
movss xmm0, dword [eax]
mulss xmm0, xmm1
push 0xffffffffffffffff
push ecx
mov dword [esp], 0x3f800000
movss dword [esi + 0x48], xmm0
movss xmm0, dword [eax + 4]
mulss xmm0, xmm1
movss dword [esi + 0x4c], xmm0
movss xmm0, dword [eax + 8]
mov eax, dword [ebp + 0x1c]
mulss xmm0, xmm1
and eax, 0x100
mov dword [ebp + 0x1c], eax
or eax, 0x1040
push eax
push ecx
movss dword [esi + 0x50], xmm0
mov eax, 0x608fb0
movd xmm0, dword [esp + 0x70]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [0x10102800]
cvtpd2ps xmm0, xmm0
movss dword [esp], xmm0
push dword [esp + 0x18]
push edi
push esi
call eax
movd xmm0, dword [esp + 0x80]
add esp, 0x1c
movsd xmm2, qword [0x10102800]
cvtdq2ps xmm0, xmm0
cvtps2pd xmm0, xmm0
mulsd xmm0, xmm2
cvtpd2ps xmm0, xmm0
cvtps2pd xmm1, xmm0
movd xmm0, dword [esp + 0x54]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm2
mulsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [esi + 0x48], xmm0
movd xmm0, dword [esp + 0x58]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm2
mulsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [esi + 0x4c], xmm0
movd xmm0, dword [esp + 0x5c]
cvtdq2pd xmm0, xmm0
push 0xffffffffffffffff
push 0xffffffffffffffff
sub esp, 0xc
mov eax, dword [ebp + 0x1c]
or eax, 0x48
mulsd xmm0, xmm2
mulsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [esi + 0x50], xmm0
movss xmm0, dword [edi + 0x6c]
movss dword [esp + 8], xmm0
movss xmm0, dword [edi + 0x68]
movss dword [esp + 4], xmm0
movss xmm0, dword [edi + 0x64]
movss dword [esp], xmm0
movd xmm0, dword [esp + 0x74]
push dword [edi + 0x44]
cvtdq2pd xmm0, xmm0
push ecx
mov ecx, esi
mulsd xmm0, xmm2
cvtpd2ps xmm0, xmm0
movss dword [esp], xmm0
push eax
mov eax, 0x5494c0
call eax
movss xmm0, dword [edi + 0x6c]
push 0xffffffffffffffff
push 0xffffffffffffffff
sub esp, 0xc
mov eax, dword [ebp + 0x1c]
or eax, 0x44
movss dword [esp + 8], xmm0
movss xmm0, dword [edi + 0x68]
movss dword [esp + 4], xmm0
movss xmm0, dword [edi + 0x64]
movss dword [esp], xmm0
movd xmm0, dword [esp + 0x74]
push dword [edi + 0x44]
cvtdq2pd xmm0, xmm0
push ecx
mov ecx, esi
mulsd xmm0, qword [0x10102800]
cvtpd2ps xmm0, xmm0
movss dword [esp], xmm0
push eax
mov eax, 0x5494c0
call eax
cmp dword [esp + 0x3c], 0
je case.0x10089f4b.4800
lea ecx, [edi + 0x1e4]
push 0x39
call dword [esp + 0x20]
test al, al
jne case.0x10089f4b.4800
push 0x12
lea ecx, [edi + 0x1e4]
call dword [esp + 0x20]
test al, al
jne case.0x10089f4b.4800
push 0x41
lea ecx, [edi + 0x1e4]
call dword [esp + 0x20]
test al, al
jne case.0x10089f4b.4800
test byte [ebp + 0x10], 0x3f
jbe 0x1008a13b
mov eax, dword [edi + 0x30]
cmp eax, 0x1c93
jb 0x10089e6c
cmp eax, 0x1c99
jbe 0x1008a13b
cmp eax, 0x1eb1
je 0x1008a13b
cmp eax, 0x1cb7
jb 0x10089e89
cmp eax, 0x1cbe
jbe 0x1008a13b
cmp eax, 0x1d15
jb 0x10089e97
cmp eax, 0x1d19
jmp 0x10089ea3
cmp eax, 0x1cc4
jb 0x10089eb4
cmp eax, 0x1cc5
jbe 0x1008a13b
cmp eax, 0x1d1a
je 0x1008a13b
movss xmm0, dword [0x5ef5a1c]
mulss xmm0, dword [0x101025c8]
cvtps2pd xmm0, xmm0
call fcn.100f38d0
cmp byte [esi + 0x99], 0
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm0
mulss xmm1, dword [0x10102674]
addss xmm1, dword [0x10102674]
movaps xmm0, xmm1
movss dword [esi + 0x48], xmm1
mulss xmm0, dword [0x10102658]
movss dword [esi + 0x4c], xmm0
movss xmm0, dword [0x101026dc]
subss xmm0, xmm1
movss dword [esi + 0x50], xmm0
je 0x10089fee
mov eax, dword [edi + 0x30]
cmp eax, 0x12ba
jb 0x10089f27
cmp eax, 0x12bf
jbe 0x10089f32
cmp eax, 0x12e5
jne 0x10089fee
mov eax, dword [esp + 8]
add eax, 0xffffed46
cmp eax, 0x2b
ja case.0x10089f4b.4800
movzx eax, byte [eax + 0x1008a518]
jmp dword [eax*4 + 0x1008a508]
movss xmm0, dword [edi + 0x6c]
push 0xffffffffffffffff
sub esp, 0xc
movss dword [esp + 8], xmm0
movss xmm0, dword [edi + 0x68]
movss dword [esp + 4], xmm0
movss xmm0, dword [edi + 0x64]
movss dword [esp], xmm0
push dword [edi + 0x44]
push ecx
mov dword [esp], 0x3f800000
mov ecx, esi
push 0x42
push 2
call dword [esp + 0x44]
pop edi
pop esi
mov ecx, dword [esp + 0xf4]
xor ecx, esp
call fcn.100d22e0
mov esp, ebp
pop ebp
ret
movss xmm0, dword [edi + 0x6c]
push 0xffffffffffffffff
sub esp, 0xc
movss dword [esp + 8], xmm0
movss xmm0, dword [edi + 0x68]
movss dword [esp + 4], xmm0
movss xmm0, dword [edi + 0x64]
movss dword [esp], xmm0
push dword [edi + 0x44]
push ecx
mov dword [esp], 0x3f800000
mov ecx, esi
push 0x42
push 0
call dword [esp + 0x44]
pop edi
pop esi
mov ecx, dword [esp + 0xf4]
xor ecx, esp
call fcn.100d22e0
mov esp, ebp
pop ebp
ret
mov eax, dword [esp + 8]
cmp eax, 0x12ce
je case.0x10089f4b.4795
cmp eax, 0x12cf
je case.0x10089f4b.4795
cmp eax, 0x12e6
je case.0x10089f4b.4795
cmp eax, 0x12d0
je case.0x10089f4b.4796
cmp eax, 0x14ce
je case.0x10089f4b.4795
cmp eax, 0x14e6
je case.0x10089f4b.4795
cmp eax, 0x14d0
jg 0x1008a09c
je case.0x10089f4b.4796
cmp eax, 0x282
je 0x1008a0e7
cmp eax, 0x12dc
je case.0x10089f4b.4796
cmp eax, 0x14cf
jne 0x1008a0ae
movss xmm0, dword [edi + 0x6c]
push 0xffffffffffffffff
sub esp, 0xc
movss dword [esp + 8], xmm0
movss xmm0, dword [edi + 0x68]
movss dword [esp + 4], xmm0
movss xmm0, dword [edi + 0x64]
movss dword [esp], xmm0
push dword [edi + 0x44]
push ecx
mov dword [esp], 0x3f800000
mov ecx, esi
push 0x42
push 1
call dword [esp + 0x44]
pop edi
pop esi
mov ecx, dword [esp + 0xf4]
xor ecx, esp
call fcn.100d22e0
mov esp, ebp
pop ebp
ret
cmp eax, 0x14dc
je case.0x10089f4b.4794
cmp eax, 0x1adc
je 0x1008a0e7
movss xmm0, dword [edi + 0x6c]
push 0xffffffffffffffff
push 0xffffffffffffffff
sub esp, 0xc
movss dword [esp + 8], xmm0
movss xmm0, dword [edi + 0x68]
movss dword [esp + 4], xmm0
movss xmm0, dword [edi + 0x64]
movss dword [esp], xmm0
push dword [edi + 0x44]
push ecx
mov dword [esp], 0x3f800000
push 0x42
jmp 0x10086614
movss xmm0, dword [edi + 0x6c]
push 0xffffffffffffffff
sub esp, 0xc
movss dword [esp + 8], xmm0
movss xmm0, dword [edi + 0x68]
movss dword [esp + 4], xmm0
movss xmm0, dword [edi + 0x64]
movss dword [esp], xmm0
push dword [edi + 0x44]
movss xmm0, dword [edi + 0x98]
push ecx
movss dword [esp], xmm0
mov ecx, esi
push 0x42
push 0
call dword [esp + 0x44]
pop edi
pop esi
mov ecx, dword [esp + 0xf4]
xor ecx, esp
call fcn.100d22e0
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp + 0x14]
mov eax, ecx
and eax, reloc.WS2_32.dll_closesocket
jns 0x1008a14c
dec eax
or eax, 0xfffffffc
inc eax
cmp eax, 1
je 0x1008a15a
cmp eax, 2
jne case.0x10089f4b.4800
cmp ecx, 0x278b
jg case.0x10089f4b.4800
movss xmm0, dword [0x5ef5a1c]
mulss xmm0, dword [0x101025a0]
cvtps2pd xmm0, xmm0
call fcn.100f38d0
movss xmm1, dword [0x10102630]
cvtsd2ss xmm0, xmm0
mulss xmm0, dword [0x10102674]
addss xmm0, dword [0x10102668]
comiss xmm1, xmm0
movss dword [esp + 0x2c], xmm0
jb 0x1008a1be
call fcn.100db6ca
cdq
mov ecx, 0x64
idiv ecx
movss xmm0, dword [esp + 0x2c]
mov dword [esi + 0xc0], edx
push 0xffffffffffffffff
push ecx
mov dword [esp], 0x3f800000
mov eax, 0x608fb0
push 0x840
push ecx
movss dword [esp], xmm0
push dword [esp + 0x18]
push edi
push esi
call eax
add esp, 0x1c
pop edi
pop esi
mov ecx, dword [esp + 0xf4]
xor ecx, esp
call fcn.100d22e0
mov esp, ebp
pop ebp
ret
movss xmm0, dword [edi + 0x98]
mov eax, 0x546860
push ecx
movss dword [esp], xmm0
call eax
sub esp, 0xc
mov dword [esp + 8], 0x3f800000
mov dword [esp + 4], 0x3f800000
mov dword [esp], 0x3f800000
call dword [sym.imp.OPENGL32.dll_glColor3f]
push dword [edi + 0x3c]
movss xmm0, dword [edi + 0x6c]
mov eax, 0x5468a0
sub esp, 0xc
mov dword [edi + 0x64], 0x3f800000
mov dword [esp + 0x34], eax
movss dword [esp + 8], xmm0
movss xmm0, dword [edi + 0x68]
movss dword [esp + 4], xmm0
movss xmm0, dword [esp + 0x28]
mov dword [esp], 0x3f800000
push 0xffffffffffffffff
push ecx
movss dword [esp], xmm0
mov ecx, esi
push 2
push 0
call eax
movss xmm0, dword [0x5ef5a1c]
mulss xmm0, dword [0x101025a0]
cvtps2pd xmm0, xmm0
call fcn.100f38d0
push dword [edi + 0x3c]
cvtsd2ss xmm0, xmm0
sub esp, 0xc
xorps xmm1, xmm1
cvtss2sd xmm1, xmm0
movss xmm0, dword [edi + 0x6c]
mulsd xmm1, qword [0x101028b0]
movss dword [esp + 8], xmm0
movss xmm0, dword [edi + 0x68]
movss dword [esp + 4], xmm0
addsd xmm1, qword [0x101028b0]
movss xmm0, dword [esp + 0x28]
cvtpd2ps xmm1, xmm1
movss dword [esp], xmm1
push 1
push ecx
movss dword [esp], xmm0
mov ecx, esi
push 0x42
push 1
movss dword [edi + 0x64], xmm1
call dword [esp + 0x44]
push dword [edi + 0x3c]
movss xmm0, dword [edi + 0x6c]
sub esp, 0xc
movss dword [esp + 8], xmm0
movss xmm0, dword [edi + 0x68]
movss dword [esp + 4], xmm0
movss xmm0, dword [0x101026dc]
subss xmm0, dword [edi + 0x64]
movss dword [esp], xmm0
movss xmm0, dword [esp + 0x28]
push 2
push ecx
movss dword [esp], xmm0
mov ecx, esi
push 0x42
push 2
call dword [esp + 0x44]
mov eax, 0x546880
call eax
mov ecx, dword [esp + 0xfc]
pop edi
pop esi
xor ecx, esp
call fcn.100d22e0
mov esp, ebp
pop ebp
ret