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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x128
mov eax, dword [0x1003c00c]
xor eax, esp
mov dword [esp + 0x124], eax
mov eax, dword [ebp + 8]
mov dword [esp + 0x18], eax
mov eax, dword [0x100604b8]
push esi
mov esi, eax
mov dword [esp + 0x98], edx
push edi
mov dword [esp + 0x6c], ecx
mov dword [esp + 0xc], eax
mov dword [esp + 0x3c], esi
call fcn.10008290
mov dword [esp + 0x70], eax
mov edi, eax
mov dword [esp + 0x7c], edi
test eax, eax
jne 0x10009dda
cmp dword [esi + 0x1a44], eax
je 0x10009d7e
mov eax, dword [esi + 0x1a6c]
mov ecx, dword [esi + 0x1a70]
mov dword [esp + 0x34], eax
mov dword [esp + 0x38], ecx
jmp 0x10009d8e
mov dword [esp + 0x34], 0
mov dword [esp + 0x38], 0
mov edx, dword [esp + 0x20]
lea eax, [esp + 0x34]
movss xmm0, dword [eax]
mov ecx, dword [esp + 0x6c]
movss dword [esp + 0xa8], xmm0
movss xmm0, dword [eax + 4]
movss dword [esp + 0xac], xmm0
push dword [esp + 0xac]
push dword [esp + 0xac]
call fcn.10008340
mov edi, eax
add esp, 8
mov eax, dword [0x100604b8]
mov dword [esp + 0x7c], edi
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x20]
mov ecx, eax
and ecx, 0xc0200
mov edx, eax
or edx, 6
cmp ecx, 0xc0200
mov ecx, dword [edi + 0x220]
cmovne edx, eax
mov dword [esp + 0x2c], ecx
mov eax, dword [esi + 0x1950]
mov dword [esp + 0x18], edx
mov dword [esp + 0x28], eax
cmp ecx, eax
je 0x10009e15
mov dword [edi + 8], edx
jmp 0x10009e1c
mov eax, dword [edi + 8]
mov dword [esp + 0x18], eax
mov edx, dword [esi + 0x1980]
lea ecx, [esi + 0x1980]
mov dword [esp + 0x14], ecx
test edx, edx
jne 0x10009e34
xor eax, eax
jmp 0x10009e3e
mov eax, dword [esi + 0x1988]
mov eax, dword [eax + edx*4 - 4]
mov edx, dword [esp + 0x28]
cmp dword [esp + 0x2c], edx
je 0x10009e64
mov ecx, dword [esp + 0x18]
and ecx, 0x5000000
neg ecx
sbb ecx, ecx
and ecx, eax
mov dword [esp + 0x60], ecx
lea ecx, [esi + 0x1980]
jmp 0x10009e6e
mov eax, dword [edi + 0x2e4]
mov dword [esp + 0x60], eax
cmp dword [esp + 0x9c], 0
setne al
mov byte [edi + 0x82], al
lea eax, [edx - 1]
cmp dword [esp + 0x2c], eax
mov eax, dword [esp + 0x18]
mov edx, dword [edi + 0xa8]
setl byte [esp + 0x13]
and eax, 0x4000000
mov dword [esp + 0x1c], edx
mov dword [esp + 0x24], eax
je 0x10009ee4
mov eax, dword [esi + 0x1a34]
lea esi, [eax + eax*8]
mov eax, dword [esp + 0x3c]
mov edx, dword [eax + 0x1a30]
mov eax, dword [edi + 0x8c]
cmp edi, dword [edx + esi*4 + 4]
setne cl
cmp eax, dword [edx + esi*4]
mov esi, dword [esp + 0x3c]
mov edx, dword [esp + 0x1c]
setne al
or cl, al
mov al, byte [esp + 0x13]
or al, cl
mov ecx, dword [esp + 0x14]
mov byte [esp + 0x13], al
jmp 0x10009ee8
mov al, byte [esp + 0x13]
test al, al
jne 0x10009ef8
test edx, edx
jg 0x10009ef8
mov byte [edi + 0x80], al
jmp 0x10009f14
or dword [edi + 0xac], 8
or dword [edi + 0xb0], 8
or dword [edi + 0xb4], 8
mov byte [edi + 0x80], 1
mov edx, dword [ecx]
mov eax, dword [ecx + 4]
mov dword [esp + 0x20], edx
cmp edx, eax
jne 0x10009f64
inc edx
mov dword [esp + 0x14], edx
test eax, eax
je 0x10009f38
cdq
sub eax, edx
mov edx, dword [esp + 0x14]
sar eax, 1
add eax, dword [ecx + 4]
jmp 0x10009f3d
mov eax, 8
cmp eax, edx
cmovg edx, eax
push edx
call fcn.10012ed0
mov eax, dword [esi + 0x1980]
lea ecx, [esi + 0x1980]
mov edx, dword [0x100604b8]
mov dword [esp + 0x20], eax
mov dword [esp + 0xc], edx
jmp 0x10009f68
mov edx, dword [esp + 0xc]
mov eax, dword [ecx + 8]
mov esi, dword [esp + 0x20]
mov dword [eax + esi*4], edi
inc dword [ecx]
lea ecx, [edi + 0x1a8]
cmp dword [esp + 0x24], 0
movss xmm0, dword [edx + 0x18c0]
mov dword [edx + 0x199c], edi
mulss xmm0, dword [edi + 0x264]
mov esi, dword [esp + 0x3c]
movss dword [edx + 0x18d0], xmm0
movss dword [edx + 0x18bc], xmm0
movzx eax, word [edi + 0x1c4]
mov word [ecx], ax
movzx eax, word [edi + 0x19c]
mov word [ecx + 2], ax
movzx eax, word [edx + 0x1a34]
mov word [ecx + 4], ax
movzx eax, word [edx + 0x1a04]
mov word [ecx + 6], ax
movzx eax, word [edx + 0x1a10]
mov word [ecx + 8], ax
movzx eax, word [edx + 0x1a1c]
mov word [ecx + 0xa], ax
je 0x1000a01f
mov eax, dword [esi + 0x1a34]
lea ecx, [esi + 0x1a34]
lea edx, [eax + eax*8]
mov eax, dword [esi + 0x1a30]
mov dword [eax + edx*4 + 4], edi
lea esi, [eax + edx*4]
push esi
call fcn.10012be0
mov eax, dword [esi]
mov dword [edi + 0x8c], eax
mov eax, dword [0x100604b8]
mov dword [esp + 0xc], eax
cmp dword [esp + 0x1c], 0
jle 0x1000a03a
test dword [esp + 0x18], 0x1000000
jne 0x1000a03a
mov dword [edi + 0x2f8], 0
mov esi, dword [esp + 0x3c]
mov byte [esp + 0x12], 0
mov byte [esp + 0xb], 0
mov byte [esp + 0x11], 0
mov ecx, dword [esi + 0x1a40]
test ecx, ecx
je 0x1000a0df
mov edx, dword [edi + 0xac]
mov eax, edx
and eax, ecx
setne byte [esp + 0x12]
test ecx, eax
je 0x1000a0ce
movss xmm1, dword [esi + 0x1a68]
movss xmm0, dword [esi + 0x1a64]
mulss xmm0, xmm0
mulss xmm1, xmm1
addss xmm0, xmm1
comiss xmm0, dword [0x10038b5c]
jbe 0x1000a0ce
mov eax, dword [esi + 0x1a5c]
and edx, 0xfffffff1
mov ecx, dword [esi + 0x1a60]
mov dword [edi + 0xb8], eax
mov dword [edi + 0xbc], ecx
mov eax, dword [esi + 0x1a64]
mov ecx, dword [esi + 0x1a68]
mov dword [edi + 0xc0], eax
mov dword [edi + 0xc4], ecx
mov dword [edi + 0xac], edx
jmp 0x1000a0df
push ecx
lea edx, [esi + 0x1a5c]
mov ecx, edi
call fcn.1000d720
add esp, 4
mov ecx, dword [esi + 0x1a44]
test ecx, ecx
je 0x1000a137
mov eax, dword [edi + 0xb0]
lea edx, [esi + 0x1a6c]
xorps xmm1, xmm1
and eax, ecx
je 0x1000a10c
movss xmm0, dword [edx]
comiss xmm0, xmm1
jbe 0x1000a10c
mov byte [esp + 0xb], 1
jmp 0x1000a115
mov byte [esp + 0xb], 0
test eax, eax
je 0x1000a127
movss xmm0, dword [esi + 0x1a70]
comiss xmm0, xmm1
mov byte [esp + 0x11], 1
ja 0x1000a12c
mov byte [esp + 0x11], 0
push ecx
mov ecx, edi
call fcn.1000d7e0
add esp, 4
cmp dword [esi + 0x1a48], 0
je 0x1000a1ed
mov eax, dword [esi + 0x1a74]
xorps xmm0, xmm0
mov ecx, dword [esi + 0x1a78]
mov dword [edi + 0x38], ecx
movss xmm3, dword [edi + 0x38]
ucomiss xmm3, xmm0
mov dword [edi + 0x34], eax
lahf
test ah, 0x44
jnp 0x1000a205
mov ecx, dword [edi + 8]
mov eax, dword [esp + 0xc]
test cl, 1
je 0x1000a17c
xorps xmm2, xmm2
jmp 0x1000a19c
movss xmm0, dword [eax + 0x1548]
movss xmm2, dword [eax + 0x18c0]
addss xmm0, xmm0
mulss xmm2, dword [edi + 0x264]
addss xmm2, xmm0
test ecx, 0x400
je 0x1000a1db
movss xmm1, dword [eax + 0x18c0]
mulss xmm1, dword [edi + 0x264]
movss xmm0, dword [eax + 0x1548]
addss xmm0, xmm0
addss xmm1, dword [edi + 0x148]
addss xmm1, xmm0
addss xmm1, xmm2
addss xmm1, xmm3
movss dword [edi + 0x38], xmm1
jmp 0x1000a205
xorps xmm1, xmm1
addss xmm1, xmm2
addss xmm1, xmm3
movss dword [edi + 0x38], xmm1
jmp 0x1000a205
mov eax, dword [esp + 0x2c]
cmp eax, dword [esp + 0x28]
je 0x1000a205
mov dword [edi + 0x34], 0
mov dword [edi + 0x38], 0
mov ecx, dword [esi + 0x1a4c]
test ecx, ecx
je 0x1000a22b
mov eax, dword [edi + 0xb4]
mov dl, byte [esi + 0x1a7c]
test eax, ecx
je 0x1000a22b
and eax, 0xfffffff1
mov byte [edi + 0x7d], dl
mov dword [edi + 0xb4], eax
cmp dword [esi + 0x1a54], 0
je 0x1000a23b
mov ecx, edi
call fcn.1000d290
cmp byte [edi + 0x80], 0
je 0x1000a259
and dword [edi + 0xac], 0xfffffff7
and dword [edi + 0xb0], 0xfffffff7
and dword [edi + 0xb4], 0xfffffff7
mov edx, dword [esp + 0x28]
cmp dword [esp + 0x2c], edx
je 0x1000d016
mov ecx, dword [esp + 0x18]
mov eax, ecx
mov esi, dword [esp + 0x60]
and eax, 0x3000000
mov dword [edi + 0x2e4], esi
test esi, esi
mov esi, dword [esp + 0x3c]
mov dword [esp + 0x2c], eax
mov dword [edi + 0x2f0], edi
mov dword [edi + 0x2ec], edi
mov dword [edi + 0x2e8], edi
je 0x1000a2d1
cmp eax, 0x1000000
jne 0x1000a2b1
mov eax, dword [esp + 0x60]
mov eax, dword [eax + 0x2e8]
mov dword [edi + 0x2e8], eax
test ecx, 0x8000000
jne 0x1000a2d1
test ecx, 0x5000000
je 0x1000a2d1
mov eax, dword [esp + 0x60]
mov eax, dword [eax + 0x2ec]
mov dword [edi + 0x2ec], eax
test dword [edi + 8], 0x800000
je 0x1000a2f7
mov ecx, edi
nop dword [eax]
mov eax, dword [ecx + 0x2e4]
mov ecx, eax
mov dword [edi + 0x2f0], ecx
test dword [eax + 8], 0x800000
jne 0x1000a2e0
mov byte [edi + 0x7a], 1
xor eax, eax
mov word [edi + 0x86], ax
mov ax, word [esi + 0x1998]
mov word [edi + 0x88], ax
xor eax, eax
inc dword [esi + 0x1998]
mov word [edi + 0x84], ax
mov dword [edi + 0x1d0], 0xff7fffff
mov dword [edi + 0x1d4], 0xff7fffff
mov dword [edi + 0x1d8], 0x7f7fffff
mov dword [edi + 0x1dc], 0x7f7fffff
mov dword [edi + 0x220], edx
mov ecx, dword [edi + 0x1c8]
cmp ecx, 1
jge 0x1000a411
test ecx, ecx
je 0x1000a387
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
mov ecx, 1
cmp eax, ecx
cmovg ecx, eax
mov dword [esp + 0x20], ecx
cmp ecx, dword [edi + 0x1c8]
jle 0x1000a411
jmp 0x1000a390
mov ecx, 8
mov dword [esp + 0x20], ecx
mov eax, dword [esp + 0xc]
test eax, eax
je 0x1000a39e
inc dword [eax + 0x370]
lea eax, [ecx*4]
push eax
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov edx, eax
add esp, 4
mov eax, dword [edi + 0x1cc]
mov dword [esp + 0x64], edx
mov dword [esp + 0x14], eax
test eax, eax
je 0x1000a3f7
mov ecx, dword [edi + 0x1c4]
shl ecx, 2
push ecx
push eax
push edx
call sub.VCRUNTIME140.dll_memcpy
mov eax, dword [0x100604b8]
add esp, 0xc
test eax, eax
je 0x1000a3e6
dec dword [eax + 0x370]
push dword [esp + 0x14]
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov edx, dword [esp + 0x68]
add esp, 4
mov eax, dword [esp + 0x20]
mov ecx, dword [0x100604b8]
mov dword [edi + 0x1cc], edx
mov dword [edi + 0x1c8], eax
mov dword [esp + 0xc], ecx
mov dword [edi + 0x1c4], 1
cmp dword [esi + 0x1af4], 0
je 0x1000a523
test dword [edi + 8], 0x80000
jne 0x1000a523
cmp dword [esp + 0x70], 0
je 0x1000a523
mov eax, dword [edi]
mov edx, eax
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x6c]
nop dword [eax]
mov cl, byte [eax]
cmp cl, byte [edx]
mov byte [esp + 0x33], cl
mov ecx, dword [esp + 0xc]
jne 0x1000a486
cmp byte [esp + 0x33], 0
je 0x1000a482
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
mov byte [esp + 0x33], cl
mov ecx, dword [esp + 0xc]
jne 0x1000a486
add eax, 2
add edx, 2
cmp byte [esp + 0x33], 0
jne 0x1000a450
xor eax, eax
jmp 0x1000a48b
sbb eax, eax
or eax, 1
test eax, eax
je 0x1000a523
mov edx, dword [esp + 0x6c]
mov eax, dword [edi + 0x4c]
mov dword [esp + 0x5c], eax
lea eax, [edx + 1]
mov dword [esp + 0x14], eax
mov al, byte [edx]
inc edx
test al, al
jne 0x1000a4a5
sub edx, dword [esp + 0x14]
lea eax, [edx + 1]
mov edx, dword [esp + 0x20]
mov dword [esp + 0x28], eax
cmp dword [esp + 0x5c], eax
jae 0x1000a50c
test edx, edx
je 0x1000a4cf
test ecx, ecx
je 0x1000a4cf
dec dword [ecx + 0x370]
push edx
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov eax, dword [0x100604b8]
add esp, 4
test eax, eax
je 0x1000a4e8
inc dword [eax + 0x370]
push dword [esp + 0x28]
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov edx, eax
add esp, 4
mov eax, dword [esp + 0x28]
mov dword [esp + 0x5c], eax
mov eax, dword [0x100604b8]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x28]
push eax
push dword [esp + 0x70]
push edx
call sub.VCRUNTIME140.dll_memcpy
mov dword [edi], eax
add esp, 0xc
mov eax, dword [esp + 0x5c]
mov dword [edi + 0x4c], eax
mov edx, edi
lea ecx, [esp + 0x40]
call fcn.10008880
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [edi + 0x30], eax
mov eax, dword [edi + 0xa4]
mov dword [edi + 0x2c], ecx
test eax, eax
jle 0x1000a54a
dec eax
mov dword [edi + 0xa4], eax
mov eax, dword [edi + 0xa8]
test eax, eax
jle 0x1000a55b
dec eax
mov dword [edi + 0xa8], eax
cmp dword [esp + 0x70], 0
mov al, byte [esp + 0xb]
mov cl, byte [esp + 0x11]
jne 0x1000a57c
test al, al
je 0x1000a572
test cl, cl
jne 0x1000a57c
mov dword [edi + 0xa8], 1
cmp byte [esp + 0x13], 0
je 0x1000a5d0
test dword [esp + 0x18], 0x6000000
je 0x1000a5d0
test byte [esp + 0x18], 0x40
mov dword [edi + 0xa8], 1
je 0x1000a5d0
test al, al
jne 0x1000a5b0
mov dword [edi + 0x1c], 0
mov dword [edi + 0x14], 0
test cl, cl
jne 0x1000a5c2
mov dword [edi + 0x20], 0
mov dword [edi + 0x18], 0
mov dword [edi + 0x2c], 0
mov dword [edi + 0x30], 0
mov edx, dword [esp + 0xc]
mov eax, dword [esp + 0x18]
mov ecx, eax
and ecx, 0x1000000
mov dword [esp + 0xc], ecx
mov dword [edx + 0x199c], edi
movss xmm0, dword [edi + 0x264]
mulss xmm0, dword [edx + 0x18c0]
movss dword [edx + 0x18d0], xmm0
movss dword [edx + 0x18bc], xmm0
je 0x1000a616
movss xmm0, dword [esi + 0x1538]
jmp 0x1000a636
test eax, 0x6000000
je 0x1000a62e
test eax, 0x8000000
jne 0x1000a62e
movss xmm0, dword [esi + 0x1540]
jmp 0x1000a636
movss xmm0, dword [esi + 0x1520]
movss dword [edi + 0x48], xmm0
xorps xmm2, xmm2
mov eax, dword [esi + 0x1514]
mov ecx, dword [esi + 0x1518]
mov dword [edi + 0x3c], eax
mov dword [edi + 0x40], ecx
mov ecx, dword [esp + 0x18]
mov eax, ecx
and eax, 0x5010000
cmp eax, 0x1000000
jne 0x1000a68c
ucomiss xmm0, xmm2
lahf
test ah, 0x44
jp 0x1000a68c
test ecx, 0x400
je 0x1000a67d
movss xmm0, dword [esi + 0x1518]
jmp 0x1000a680
xorps xmm0, xmm0
mov dword [edi + 0x3c], 0
movss dword [edi + 0x40], xmm0
movss xmm0, dword [edi + 0x3c]
maxss xmm0, dword [esi + 0x1554]
maxss xmm0, dword [esi + 0x1a9c]
movss dword [edi + 0x144], xmm0
mov eax, dword [esi + 0x1aa0]
mov dword [edi + 0x148], eax
test cl, 0x21
jne 0x1000a7d8
mov ecx, dword [edi + 8]
test cl, 1
je 0x1000a6cb
xorps xmm3, xmm3
jmp 0x1000a6eb
movss xmm3, dword [edx + 0x1548]
movss xmm0, dword [edi + 0x264]
addss xmm3, xmm3
mulss xmm0, dword [edx + 0x18c0]
addss xmm3, xmm0
movss xmm4, dword [edi + 0xc]
movaps xmm0, xmm4
movss xmm5, dword [edi + 0x10]
addss xmm0, dword [edi + 0x1c]
addss xmm3, dword [edi + 0x10]
cmp dword [esi + 0x19a0], edi
jne 0x1000a7a5
cmp dword [esi + 0x19a8], 0
jne 0x1000a7a5
cmp dword [esi + 0x19b0], 0
jne 0x1000a7a5
mov eax, dword [edx + 0x199c]
movss xmm1, dword [edx + 0x1564]
movaps xmm6, xmm1
maxss xmm4, dword [eax + 0x1d0]
minss xmm0, dword [eax + 0x1d8]
maxss xmm5, dword [eax + 0x1d4]
minss xmm3, dword [eax + 0x1dc]
subss xmm4, xmm1
movss xmm1, dword [edx + 0xe0]
addss xmm6, xmm0
movss xmm0, dword [edx + 0x1568]
movaps xmm7, xmm0
subss xmm5, xmm0
addss xmm7, xmm3
comiss xmm1, xmm4
jb 0x1000a7a5
movss xmm0, dword [edx + 0xe4]
comiss xmm0, xmm5
jb 0x1000a7a5
comiss xmm6, xmm1
jbe 0x1000a7a5
comiss xmm7, xmm0
jbe 0x1000a7a5
cmp byte [esi + 0x3dd], 0
je 0x1000a7a5
mov byte [edi + 0x7e], 1
cmp byte [edi + 0x7e], 0
je 0x1000a7dc
cmp byte [edi + 0x7d], 0
sete al
mov byte [edi + 0x7d], al
test ecx, 0x100
jne 0x1000a7cf
comiss xmm2, dword [edx + 0x2ce4]
jb 0x1000a7cf
mov eax, dword [edx + 0x1c]
mov dword [edx + 0x2ce4], eax
mov ecx, edi
call fcn.1000d290
jmp 0x1000a7dc
mov byte [edi + 0x7d], 0
lea eax, [edi + 0x2c]
mov byte [edi + 0x7e], 0
push eax
mov edx, edi
lea ecx, [esp + 0xa4]
call fcn.10008940
movss xmm0, dword [0x10038c6c]
add esp, 4
test byte [esp + 0x18], 0x40
movss dword [esp + 0x78], xmm0
movss dword [esp + 0x5c], xmm0
je 0x1000a855
cmp byte [edi + 0x7d], 0
jne 0x1000a855
cmp byte [esp + 0xb], 0
jne 0x1000a831
movss xmm0, dword [esp + 0xa0]
movss dword [esp + 0x78], xmm0
movss dword [edi + 0x1c], xmm0
cmp byte [esp + 0x11], 0
jne 0x1000a90b
movss xmm0, dword [esp + 0xa4]
movss dword [esp + 0x5c], xmm0
movss dword [edi + 0x20], xmm0
jmp 0x1000a90b
mov eax, dword [edi + 0x90]
test eax, eax
jg 0x1000a86c
cmp dword [edi + 0x94], 0
jle 0x1000a90b
cmp byte [esp + 0xb], 0
jne 0x1000a8a4
test eax, eax
jle 0x1000a8a4
cmp byte [edi + 0x98], 0
je 0x1000a890
movss xmm0, dword [edi + 0x1c]
maxss xmm0, dword [esp + 0xa0]
jmp 0x1000a899
movss xmm0, dword [esp + 0xa0]
movss dword [esp + 0x78], xmm0
movss dword [edi + 0x1c], xmm0
cmp byte [esp + 0x11], 0
jne 0x1000a8e1
cmp dword [edi + 0x94], 0
jle 0x1000a8e1
cmp byte [edi + 0x98], 0
je 0x1000a8cd
movss xmm0, dword [edi + 0x20]
maxss xmm0, dword [esp + 0xa4]
jmp 0x1000a8d6
movss xmm0, dword [esp + 0xa4]
movss dword [esp + 0x5c], xmm0
movss dword [edi + 0x20], xmm0
cmp byte [edi + 0x7d], 0
jne 0x1000a90b
test dword [edi + 8], 0x100
mov ecx, dword [0x100604b8]
jne 0x1000a90b
xorps xmm0, xmm0
comiss xmm0, dword [ecx + 0x2ce4]
jb 0x1000a90b
mov eax, dword [ecx + 0x1c]
mov dword [ecx + 0x2ce4], eax
push dword [edi + 0x20]
mov edx, edi
lea ecx, [esp + 0x44]
push dword [edi + 0x1c]
call fcn.100086b0
add esp, 8
mov dword [esp + 0x14], eax
mov edx, dword [eax + 4]
mov ecx, dword [eax]
mov dword [edi + 0x20], edx
mov dl, byte [edi + 0x7d]
mov dword [edi + 0x1c], ecx
test dl, dl
je 0x1000a993
cmp dword [esp + 0xc], 0
jne 0x1000a993
test byte [edi + 8], 1
je 0x1000a947
xorps xmm2, xmm2
jmp 0x1000a96c
mov eax, dword [0x100604b8]
movss xmm0, dword [eax + 0x1548]
movss xmm2, dword [eax + 0x18c0]
addss xmm0, xmm0
mulss xmm2, dword [edi + 0x264]
addss xmm2, xmm0
movss xmm0, dword [edi + 0xc]
addss xmm0, dword [edi + 0x1c]
addss xmm2, dword [edi + 0x10]
subss xmm0, dword [edi + 0xc]
subss xmm2, dword [edi + 0x10]
movss dword [esp + 0x34], xmm0
movss dword [esp + 0x38], xmm2
jmp 0x1000a9a4
mov ecx, dword [esp + 0x14]
mov eax, dword [eax]
mov dword [esp + 0x34], eax
mov ecx, dword [ecx + 4]
mov dword [esp + 0x38], ecx
lea ecx, [esp + 0x34]
mov eax, dword [ecx]
mov ecx, dword [ecx + 4]
mov dword [edi + 0x14], eax
mov dword [edi + 0x18], ecx
test dl, dl
jne 0x1000aaa7
movss xmm0, dword [esp + 0x78]
movss xmm1, dword [0x10038c6c]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jnp 0x1000a9d9
movss xmm3, dword [edi + 0x1c]
jmp 0x1000a9de
movss xmm3, dword [edi + 0x24]
movss xmm0, dword [esp + 0x5c]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jnp 0x1000a9f4
movss xmm2, dword [edi + 0x20]
jmp 0x1000a9f9
movss xmm2, dword [edi + 0x28]
mov edx, dword [esp + 0x18]
test edx, 0x4000
jne 0x1000aa18
movss xmm0, dword [edi + 0x30]
comiss xmm0, xmm2
jbe 0x1000aa14
test dl, 8
je 0x1000aa18
xor cl, cl
jmp 0x1000aa1a
mov cl, 1
mov byte [edi + 0x79], cl
test edx, 0x8000
jne 0x1000aa5e
xorps xmm1, xmm1
test cl, cl
je 0x1000aa36
movss xmm0, dword [esi + 0x1574]
jmp 0x1000aa39
xorps xmm0, xmm0
subss xmm3, xmm0
movss xmm0, dword [edi + 0x2c]
comiss xmm0, xmm3
jbe 0x1000aa55
mov eax, edx
and eax, 0x808
cmp eax, 0x800
je 0x1000aa5e
mov byte [edi + 0x78], 0
xorps xmm0, xmm0
jmp 0x1000aa91
mov byte [edi + 0x78], 1
test cl, cl
jne 0x1000aa86
subss xmm2, dword [esi + 0x1574]
movss xmm0, dword [edi + 0x30]
comiss xmm0, xmm2
jbe 0x1000aa81
test dl, 8
jne 0x1000aa81
mov cl, 1
jmp 0x1000aa83
xor cl, cl
mov byte [edi + 0x79], cl
movss xmm0, dword [esi + 0x1574]
xorps xmm1, xmm1
test cl, cl
je 0x1000aa9d
movss xmm1, dword [esi + 0x1574]
movss dword [edi + 0x70], xmm1
movss dword [edi + 0x74], xmm0
cmp byte [esp + 0x13], 0
je 0x1000aae3
cmp dword [esp + 0x24], 0
mov dword [edi + 0xa0], 0xffffffff
je 0x1000aae3
cmp byte [esp + 0x12], 0
jne 0x1000aae3
mov eax, dword [esi + 0x1a34]
mov ecx, dword [esi + 0x1a3c]
lea edx, [eax + eax*8]
mov eax, dword [ecx + edx*4 - 0x10]
mov ecx, dword [ecx + edx*4 - 0xc]
mov dword [edi + 0xc], eax
mov dword [edi + 0x10], ecx
cmp dword [esp + 0xc], 0
je 0x1000ab77
mov ecx, dword [esp + 0x60]
add ecx, 0x14c
mov ax, word [ecx]
mov word [edi + 0x86], ax
mov eax, dword [ecx + 4]
mov edx, dword [ecx]
cmp edx, eax
jne 0x1000ab3e
inc edx
mov dword [esp + 0x14], edx
test eax, eax
je 0x1000ab22
cdq
sub eax, edx
mov edx, dword [esp + 0x14]
sar eax, 1
add eax, dword [ecx + 4]
jmp 0x1000ab27
mov eax, 8
cmp eax, edx
cmovg edx, eax
push edx
call fcn.10012ed0
mov ecx, dword [esp + 0x60]
add ecx, 0x14c
mov edx, dword [ecx]
mov eax, dword [ecx + 8]
mov dword [eax + edx*4], edi
inc dword [ecx]
cmp dword [esp + 0x24], 0
mov al, byte [esp + 0x12]
mov ecx, dword [esp + 0x2c]
jne 0x1000ab7f
test al, al
jne 0x1000ab7f
cmp ecx, 0x3000000
je 0x1000ab7f
mov ecx, dword [esp + 0x60]
mov eax, dword [ecx + 0xc8]
mov ecx, dword [ecx + 0xcc]
mov dword [edi + 0xc], eax
mov dword [edi + 0x10], ecx
mov ecx, dword [esp + 0x2c]
mov al, byte [esp + 0x12]
movss xmm0, dword [edi + 0xb8]
ucomiss xmm0, dword [0x10038c6c]
movss dword [esp + 0x14], xmm0
lahf
test ah, 0x44
jnp 0x1000ad65
cmp dword [edi + 0xa8], 0
jne 0x1000ad65
movss xmm5, dword [edi + 0x20]
movss xmm0, dword [esi + 0x15a4]
movss xmm2, dword [edi + 0x1c]
movss xmm6, dword [edi + 0xc4]
movss xmm4, dword [esi + 0x15a8]
movss xmm3, dword [edi + 0xbc]
and dword [edi + 0xac], 0xfffffff1
movss xmm1, dword [esp + 0x14]
mov dword [edi + 0xb8], 0x7f7fffff
mov dword [edi + 0xbc], 0x7f7fffff
mulss xmm2, dword [edi + 0xc0]
movss dword [esp + 0x64], xmm5
mulss xmm6, dword [esp + 0x64]
subss xmm1, xmm2
movss xmm5, dword [edi + 0x10]
movss xmm7, dword [edi + 0xc]
subss xmm3, xmm6
movss dword [esp + 0x68], xmm5
maxss xmm0, xmm1
maxss xmm4, xmm3
cvttss2si eax, xmm0
movd xmm1, eax
cvttss2si eax, xmm4
cvtdq2ps xmm1, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [edi + 0xc], xmm1
subss xmm1, xmm7
movss dword [edi + 0x10], xmm0
subss xmm0, xmm5
addss xmm1, dword [edi + 0xc8]
addss xmm0, dword [edi + 0xcc]
movss dword [edi + 0xc8], xmm1
movss dword [edi + 0xcc], xmm0
movss xmm1, dword [edi + 0x10]
movss xmm0, dword [edi + 0xc]
subss xmm1, xmm5
subss xmm0, xmm7
addss xmm1, dword [edi + 0xe4]
addss xmm0, dword [edi + 0xe0]
movss dword [edi + 0xe4], xmm1
movss dword [edi + 0xe0], xmm0
cmp byte [esp + 0x12], 0
jne 0x1000ae41
cmp dword [esp + 0xc], 0
jne 0x1000ae41
cmp dword [edi + 0x90], 0
jg 0x1000ae41
cmp dword [edi + 0x94], 0
xorps xmm2, xmm2
jg 0x1000ae44
movss xmm0, dword [esi + 0x10]
comiss xmm0, xmm2
jbe 0x1000ae44
movss xmm0, dword [esi + 0x14]
comiss xmm0, xmm2
jbe 0x1000ae44
cmp byte [esi + 0xb0], 0
movss xmm4, dword [esi + 0x15a0]
movss xmm5, dword [esi + 0x159c]
maxss xmm4, dword [esi + 0x15a8]
maxss xmm5, dword [esi + 0x15a4]
je 0x1000addd
test byte [edi + 8], 1
jne 0x1000addd
mov eax, dword [0x100604b8]
movss xmm0, dword [eax + 0x1548]
movss xmm1, dword [eax + 0x18c0]
addss xmm0, xmm0
mulss xmm1, dword [edi + 0x264]
addss xmm1, xmm0
movss xmm0, dword [edi + 0x14]
movss dword [esp + 0x34], xmm0
movss dword [esp + 0x38], xmm1
jmp 0x1000adeb
mov edx, dword [esp + 0x18]
test edx, 0x10000000
je 0x1000ad8f
mov edx, edi
lea ecx, [esp + 0xb0]
call fcn.1000e820
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [edi + 0xc], ecx
mov dword [edi + 0x10], eax
jmp 0x1000aca4
cmp dword [esp + 0x24], 0
je 0x1000adbf
test al, al
jne 0x1000adbf
cmp dword [esp + 0x1c], 0
jle 0x1000adbf
mov edx, edi
lea ecx, [esp + 0xb0]
call fcn.1000e820
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [edi + 0xc], ecx
mov dword [edi + 0x10], eax
jmp 0x1000acaf
test edx, 0x2000000
je 0x1000aca4
test al, al
jne 0x1000ae41
cmp ecx, 0x3000000
je 0x1000acaf
jmp 0x1000ada1
mov eax, dword [edi + 0x14]
mov ecx, dword [edi + 0x18]
mov dword [esp + 0x34], eax
mov dword [esp + 0x38], ecx
lea eax, [esp + 0x34]
movss xmm3, dword [eax]
addss xmm3, dword [edi + 0xc]
movss xmm2, dword [eax + 4]
addss xmm2, dword [edi + 0x10]
maxss xmm3, xmm5
maxss xmm2, xmm4
subss xmm3, dword [eax]
subss xmm2, dword [eax + 4]
movss dword [edi + 0xc], xmm3
movss dword [edi + 0x10], xmm2
movss xmm0, dword [esi + 0x10]
subss xmm0, xmm5
minss xmm3, xmm0
movss xmm0, dword [esi + 0x14]
subss xmm0, xmm4
movss dword [edi + 0xc], xmm3
minss xmm2, xmm0
movss dword [edi + 0x10], xmm2
xorps xmm2, xmm2
cmp dword [esp + 0xc], 0
cvttss2si eax, dword [edi + 0xc]
mov edx, dword [esp + 0x18]
movd xmm1, eax
cvttss2si eax, dword [edi + 0x10]
cvtdq2ps xmm1, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [edi + 0xc], xmm1
movss dword [edi + 0x10], xmm0
je 0x1000ae7b
movss xmm5, dword [esi + 0x1534]
jmp 0x1000ae9b
mov eax, edx
and eax, 0xc000000
cmp eax, 0x4000000
jne 0x1000ae93
movss xmm5, dword [esi + 0x153c]
jmp 0x1000ae9b
movss xmm5, dword [esi + 0x151c]
movss xmm1, dword [edi + 0x60]
movss xmm6, dword [0x10038c6c]
comiss xmm6, xmm1
movss xmm4, dword [edi + 0x58]
movss xmm3, dword [edi + 0x5c]
movss dword [edi + 0x44], xmm5
jbe 0x1000aed2
movss xmm0, dword [edi + 0x1c]
movaps xmm4, xmm1
subss xmm0, dword [edi + 0x70]
mulss xmm0, dword [edi + 0x68]
subss xmm4, xmm0
movss xmm0, dword [edi + 0x64]
comiss xmm6, xmm0
movss xmm6, dword [0x10038bc4]
jbe 0x1000afb8
movss xmm7, dword [edi + 0x6c]
movaps xmm3, xmm0
comiss xmm2, xmm7
jb 0x1000af02
movss xmm0, dword [edi + 0x40]
comiss xmm0, xmm3
jb 0x1000af02
xorps xmm3, xmm3
comiss xmm7, xmm6
mov eax, dword [0x100604b8]
jb 0x1000af29
movss xmm1, dword [edi + 0x30]
movaps xmm0, xmm1
subss xmm0, dword [edi + 0x40]
addss xmm0, dword [eax + 0x1558]
comiss xmm3, xmm0
jb 0x1000af29
movaps xmm3, xmm1
mov ecx, dword [edi + 8]
test cl, 1
je 0x1000af36
xorps xmm6, xmm6
jmp 0x1000af56
movss xmm0, dword [eax + 0x1548]
movss xmm6, dword [eax + 0x18c0]
addss xmm0, xmm0
mulss xmm6, dword [edi + 0x264]
addss xmm6, xmm0
test ecx, 0x400
je 0x1000af88
movss xmm1, dword [eax + 0x18c0]
mulss xmm1, dword [edi + 0x264]
movss xmm0, dword [eax + 0x1548]
addss xmm0, xmm0
addss xmm1, dword [edi + 0x148]
addss xmm1, xmm0
jmp 0x1000af8b
xorps xmm1, xmm1
addss xmm1, xmm6
movss xmm6, dword [0x10038bc4]
movaps xmm0, xmm6
subss xmm0, xmm7
mulss xmm1, xmm0
movss xmm0, dword [edi + 0x20]
subss xmm0, dword [edi + 0x74]
subss xmm3, xmm1
mulss xmm0, xmm7
subss xmm3, xmm0
mov cl, byte [edi + 0x7d]
maxss xmm4, xmm2
maxss xmm3, xmm2
test cl, cl
jne 0x1000b012
cmp byte [edi + 0x7f], cl
jne 0x1000b012
movss xmm0, dword [edi + 0x1c]
lea eax, [edi + 0x2c]
subss xmm0, dword [edi + 0x70]
movss xmm1, dword [eax]
subss xmm1, xmm0
xorps xmm0, xmm0
maxss xmm0, xmm1
comiss xmm0, xmm4
ja 0x1000aff0
movaps xmm4, xmm0
movss xmm0, dword [edi + 0x20]
subss xmm0, dword [edi + 0x74]
movss xmm1, dword [edi + 0x30]
subss xmm1, xmm0
xorps xmm0, xmm0
maxss xmm0, xmm1
comiss xmm0, xmm3
ja 0x1000b012
movaps xmm3, xmm0
xor al, al
movss dword [edi + 0x58], xmm4
movss dword [edi + 0x5c], xmm3
mov dword [edi + 0x60], 0x7f7fffff
mov dword [edi + 0x64], 0x7f7fffff
mov dword [esp + 0x28], eax
cmp byte [esp + 0x13], al
je 0x1000b060
test edx, 0x1000
jne 0x1000b060
cmp dword [esp + 0x24], 0
je 0x1000b04c
mov byte [esp + 0x28], 1
jmp 0x1000b060
cmp dword [esp + 0x2c], 0
mov edx, 1
movzx eax, al
cmove eax, edx
mov dword [esp + 0x28], eax
movss xmm1, dword [esi + 0x18bc]
addss xmm5, xmm6
xorps xmm0, xmm0
xor edx, edx
movaps xmmword [esp + 0x110], xmm0
or eax, 0xffffffff
cmp byte [esi + 0xaf], dl
movaps xmm0, xmm1
mulss xmm1, dword [0x10038b80]
setne dl
mov dword [esp + 0x20], eax
mulss xmm0, dword [0x10038bc8]
inc edx
mov dword [esp + 0x74], edx
addss xmm5, xmm1
maxss xmm0, xmm5
cvttss2si esi, xmm0
test cl, cl
jne 0x1000b0d7
lea eax, [esp + 0x110]
mov ecx, edi
push eax
push edx
lea eax, [esp + 0x28]
push eax
lea edx, [esp + 0xac]
call fcn.10008a90
mov eax, dword [esp + 0x2c]
add esp, 0xc
xorps xmm2, xmm2
movss xmm0, dword [edi + 0x14]
comiss xmm0, xmm2
mov byte [edi + 0x83], al
jbe 0x1000b0fb
test dword [esp + 0x18], 0x2000040
jne 0x1000b0fb
mulss xmm0, dword [0x10038ba0]
jmp 0x1000b10f
mov eax, dword [esp + 0x3c]
movss xmm0, dword [eax + 0x18bc]
mulss xmm0, dword [0x10038c10]
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [edi + 0x224], xmm0
mov ecx, dword [edi + 0x26c]
call fcn.1001a6e0
mov edx, dword [esp + 0x3c]
xor ecx, ecx
mov eax, 2
cmp byte [edx + 0x15b1], cl
cmovne ecx, eax
xor eax, eax
cmp byte [edx + 0x15b0], al
setne al
or ecx, eax
mov eax, dword [edi + 0x26c]
mov dword [eax + 0x24], ecx
mov eax, dword [edx + 0x18b8]
mov eax, dword [eax + 0x38]
mov eax, dword [eax + 8]
mov dword [esp + 0x64], eax
mov eax, dword [edi + 0x26c]
mov edx, dword [eax + 0x48]
lea ecx, [eax + 0x48]
mov dword [esp + 0x20], eax
mov eax, dword [ecx + 4]
cmp edx, eax
jne 0x1000b1ae
inc edx
mov dword [esp + 0x14], edx
test eax, eax
je 0x1000b195
cdq
sub eax, edx
mov edx, dword [esp + 0x14]
sar eax, 1
add eax, dword [ecx + 4]
jmp 0x1000b19a
mov eax, 8
cmp eax, edx
cmovg edx, eax
push edx
call fcn.10012ed0
mov ecx, dword [esp + 0x20]
add ecx, 0x48
mov edx, dword [ecx]
mov eax, dword [ecx + 8]
mov edi, dword [esp + 0x64]
mov dword [eax + edx*4], edi
inc dword [ecx]
mov ecx, dword [esp + 0x20]
call fcn.1001a980
mov eax, dword [0x100604b8]
mov edi, dword [esp + 0x7c]
mov dword [esp + 0x80], 0
mov dword [esp + 0x84], 0
movss xmm0, dword [eax + 0x10]
movss dword [esp + 0x64], xmm0
movss dword [esp + 0x88], xmm0
movss xmm0, dword [eax + 0x14]
mov eax, dword [esp + 0x18]
and eax, 0x5000000
movss dword [esp + 0x14], xmm0
movss dword [esp + 0x8c], xmm0
cmp eax, 0x1000000
jne 0x1000b236
cmp dword [esp + 0x2c], 0x3000000
je 0x1000b236
mov eax, dword [esp + 0x60]
lea edx, [eax + 0x1d8]
lea ecx, [eax + 0x1d0]
jmp 0x1000b244
lea edx, [esp + 0x88]
lea ecx, [esp + 0x80]
push 1
call fcn.10007570
add esp, 4
test dword [esp + 0x18], 0x8000000
je 0x1000b26e
call fcn.1000e090
cmp edi, eax
jne 0x1000b26e
cmp dword [edi + 0xa8], 0
jg 0x1000b26e
mov al, 1
jmp 0x1000b270
xor al, al
mov edx, dword [esp + 0x3c]
mov ecx, dword [edx + 0x1af0]
test ecx, ecx
je 0x1000b28a
cmp edi, dword [ecx + 0x2e8]
jne 0x1000b28a
mov cl, 1
jmp 0x1000b28c
xor cl, cl
movss xmm4, dword [0x10038c40]
movss xmm6, dword [0x10038b98]
mov byte [esp + 0xb], cl
test al, al
jne 0x1000b2ac
test cl, cl
je 0x1000b599
mov ecx, dword [0x100604b8]
movss xmm2, dword [edx + 0x1c18]
movss xmm5, dword [0x10038bc4]
movzx eax, al
mulss xmm2, dword [ecx + 0x1510]
add eax, eax
movups xmm3, xmmword [ecx + eax*8 + 0x1898]
movaps xmm0, xmm3
movaps xmmword [esp + 0x40], xmm3
shufps xmm0, xmm3, 0xff
mulss xmm2, xmm0
xorps xmm0, xmm0
comiss xmm0, xmm3
jbe 0x1000b2f4
xorps xmm1, xmm1
jmp 0x1000b2fb
movaps xmm1, xmm5
minss xmm1, xmm3
movss xmm3, dword [esp + 0x44]
comiss xmm0, xmm3
mulss xmm1, xmm4
addss xmm1, xmm6
cvttss2si ecx, xmm1
jbe 0x1000b317
xorps xmm1, xmm1
jmp 0x1000b31e
movaps xmm1, xmm5
minss xmm1, xmm3
movss xmm3, dword [esp + 0x48]
mulss xmm1, xmm4
addss xmm1, xmm6
cvttss2si eax, xmm1
shl eax, 8
or ecx, eax
comiss xmm0, xmm3
jbe 0x1000b33f
xorps xmm1, xmm1
jmp 0x1000b346
movaps xmm1, xmm5
minss xmm1, xmm3
mulss xmm1, xmm4
addss xmm1, xmm6
cvttss2si eax, xmm1
shl eax, 0x10
or ecx, eax
comiss xmm0, xmm2
ja 0x1000b363
movaps xmm0, xmm5
minss xmm0, xmm2
mulss xmm0, xmm4
push 0xf
push ecx
mov dword [esp], 0
addss xmm0, xmm6
cvttss2si eax, xmm0
shl eax, 0x18
or eax, ecx
mov ecx, dword [edi + 0x26c]
push eax
lea eax, [esp + 0x94]
push eax
lea eax, [esp + 0x90]
push eax
call fcn.1001c4b0
cmp byte [esp + 0xb], 0
mov edx, dword [esp + 0x3c]
je 0x1000b589
xorps xmm2, xmm2
cmp edi, dword [edx + 0x1af0]
jne 0x1000b533
movss xmm3, dword [edi + 0xc]
movss xmm4, dword [edi + 0x10]
movaps xmm1, xmm3
movss xmm0, dword [edx + 0x18bc]
movaps xmm5, xmm4
addss xmm3, dword [edi + 0x14]
addss xmm4, dword [edi + 0x18]
subss xmm1, xmm0
subss xmm5, xmm0
addss xmm3, xmm0
addss xmm4, xmm0
comiss xmm2, xmm1
movss dword [esp + 0x80], xmm1
movss dword [esp + 0x84], xmm5
movss dword [esp + 0x88], xmm3
movss dword [esp + 0x8c], xmm4
jb 0x1000b42a
comiss xmm2, xmm5
jb 0x1000b42a
comiss xmm3, dword [esp + 0x64]
jb 0x1000b42a
comiss xmm4, dword [esp + 0x14]
jae 0x1000b533
mov eax, dword [0x100604b8]
movss xmm1, dword [edx + 0x1afc]
mulss xmm1, dword [0x10038b84]
movups xmm3, xmmword [eax + 0x1888]
mulss xmm1, dword [eax + 0x1510]
comiss xmm2, xmm3
movss xmm4, dword [0x10038bc4]
movaps xmm0, xmm3
shufps xmm0, xmm3, 0xff
movaps xmmword [esp + 0x40], xmm3
mulss xmm1, xmm0
jbe 0x1000b470
xorps xmm0, xmm0
jmp 0x1000b477
movaps xmm0, xmm4
minss xmm0, xmm3
movss xmm6, dword [0x10038c40]
movss xmm5, dword [0x10038b98]
movss xmm3, dword [esp + 0x44]
comiss xmm2, xmm3
mulss xmm0, xmm6
addss xmm0, xmm5
cvttss2si ecx, xmm0
jbe 0x1000b4a3
xorps xmm0, xmm0
jmp 0x1000b4aa
movaps xmm0, xmm4
minss xmm0, xmm3
movss xmm3, dword [esp + 0x48]
mulss xmm0, xmm6
addss xmm0, xmm5
cvttss2si eax, xmm0
shl eax, 8
or ecx, eax
comiss xmm2, xmm3
jbe 0x1000b4cb
xorps xmm0, xmm0
jmp 0x1000b4d2
movaps xmm0, xmm4
minss xmm0, xmm3
mulss xmm0, xmm6
addss xmm0, xmm5
cvttss2si eax, xmm0
shl eax, 0x10
or ecx, eax
comiss xmm2, xmm1
ja 0x1000b4ef
movaps xmm2, xmm4
minss xmm2, xmm1
movss xmm0, dword [edx + 0x151c]
mulss xmm2, xmm6
push 0xf
push ecx
movss dword [esp], xmm0
addss xmm2, xmm5
cvttss2si eax, xmm2
shl eax, 0x18
or eax, ecx
mov ecx, dword [edi + 0x26c]
push eax
lea eax, [esp + 0x94]
push eax
lea eax, [esp + 0x90]
push eax
call fcn.1001c4b0
mov edx, dword [esp + 0x3c]
xorps xmm2, xmm2
movss xmm4, dword [0x10038c40]
movss xmm6, dword [0x10038b98]
movss xmm7, dword [edi + 0x44]
movss xmm1, dword [edi + 0x48]
mov ecx, dword [edx + 0x1aec]
movss dword [esp + 0x5c], xmm7
movss dword [esp + 0x70], xmm1
test ecx, ecx
jne 0x1000b569
mov ecx, dword [edx + 0x1aac]
cmp byte [esp + 0x28], 0
jne 0x1000b59e
test ecx, ecx
je 0x1000b582
mov eax, dword [edi + 0x2ec]
cmp eax, dword [ecx + 0x2ec]
je 0x1000b59e
mov byte [esp + 0xb], 0
jmp 0x1000b5a3
movss xmm4, dword [0x10038c40]
movss xmm6, dword [0x10038b98]
xorps xmm2, xmm2
jmp 0x1000b543
mov byte [esp + 0xb], 1
mov eax, dword [edi + 8]
mov ecx, dword [0x100604b8]
and eax, 1
mov dword [esp + 0x98], eax
je 0x1000b5bd
xorps xmm3, xmm3
jmp 0x1000b5dd
movss xmm0, dword [ecx + 0x1548]
movss xmm3, dword [ecx + 0x18c0]
addss xmm0, xmm0
mulss xmm3, dword [edi + 0x264]
addss xmm3, xmm0
cmp byte [edi + 0x7d], 0
movss xmm0, dword [edi + 0xc]
addss xmm3, dword [edi + 0x10]
movaps xmm5, xmm0
movss dword [esp + 0x20], xmm0
addss xmm5, dword [edi + 0x1c]
movss dword [esp + 0x80], xmm0
movss xmm0, dword [edi + 0x10]
movss dword [esp + 0xac], xmm3
movss dword [esp + 0x84], xmm0
movss dword [esp + 0xa8], xmm5
movss dword [esp + 0x88], xmm5
movss dword [esp + 0x8c], xmm3
je 0x1000b758
cmp byte [esp + 0xb], 0
mov esi, dword [esp + 0x3c]
movss xmm0, dword [esi + 0x1550]
movss dword [esp + 0x68], xmm0
movss dword [esi + 0x1550], xmm1
je 0x1000b669
cmp byte [esi + 0x1b0e], 0
mov eax, 0x158
je 0x1000b66e
mov eax, 0x168
movups xmm3, xmmword [ecx + eax + 0x1510]
movss xmm5, dword [0x10038bc4]
comiss xmm2, xmm3
movaps xmm1, xmm3
movaps xmmword [esp + 0x40], xmm3
shufps xmm1, xmm3, 0xff
mulss xmm1, dword [ecx + 0x1510]
jbe 0x1000b69c
xorps xmm0, xmm0
jmp 0x1000b6a3
movaps xmm0, xmm5
minss xmm0, xmm3
movss xmm3, dword [esp + 0x44]
comiss xmm2, xmm3
mulss xmm0, xmm4
addss xmm0, xmm6
cvttss2si edx, xmm0
jbe 0x1000b6bf
xorps xmm0, xmm0
jmp 0x1000b6c6
movaps xmm0, xmm5
minss xmm0, xmm3
movss xmm3, dword [esp + 0x48]
mulss xmm0, xmm4
addss xmm0, xmm6
cvttss2si eax, xmm0
shl eax, 8
or edx, eax
comiss xmm2, xmm3
jbe 0x1000b6e7
xorps xmm0, xmm0
jmp 0x1000b6ee
movaps xmm0, xmm5
minss xmm0, xmm3
mulss xmm0, xmm4
addss xmm0, xmm6
cvttss2si eax, xmm0
shl eax, 0x10
or edx, eax
comiss xmm2, xmm1
ja 0x1000b70b
movaps xmm2, xmm5
minss xmm2, xmm1
push dword [esp + 0xac]
mulss xmm2, xmm4
push dword [esp + 0xac]
push dword [esp + 0x8c]
addss xmm2, xmm6
push dword [esp + 0x8c]
cvttss2si ecx, xmm2
movaps xmm2, xmm7
shl ecx, 0x18
or ecx, edx
mov dl, 1
call fcn.10003780
movss xmm0, dword [esp + 0x78]
add esp, 0x10
movss dword [esi + 0x1550], xmm0
jmp 0x1000c0c4
mov eax, dword [esp + 0x18]
test al, al
js 0x1000b953
test eax, 0x6000000
je 0x1000b772
mov eax, 0xe8
jmp 0x1000b789
cmp dword [esp + 0xc], 0
mov eax, 0xc8
mov dword [esp + 0x68], 0xd8
cmovne eax, dword [esp + 0x68]
movups xmm1, xmmword [ecx + eax + 0x1510]
movss xmm5, dword [0x10038bc4]
comiss xmm2, xmm1
movaps xmm3, xmm1
movaps xmmword [esp + 0x40], xmm1
shufps xmm3, xmm1, 0xff
mulss xmm3, dword [ecx + 0x1510]
jbe 0x1000b7b7
xorps xmm0, xmm0
jmp 0x1000b7be
movaps xmm0, xmm5
minss xmm0, xmm1
movss xmm1, dword [esp + 0x44]
comiss xmm2, xmm1
mulss xmm0, xmm4
addss xmm0, xmm6
cvttss2si eax, xmm0
mov dword [esp + 0x24], eax
jbe 0x1000b7de
xorps xmm0, xmm0
jmp 0x1000b7e5
movaps xmm0, xmm5
minss xmm0, xmm1
movss xmm1, dword [esp + 0x48]
mulss xmm0, xmm4
addss xmm0, xmm6
cvttss2si eax, xmm0
shl eax, 8
or dword [esp + 0x24], eax
comiss xmm2, xmm1
jbe 0x1000b808
xorps xmm0, xmm0
jmp 0x1000b80f
movaps xmm0, xmm5
minss xmm0, xmm1
mulss xmm0, xmm4
addss xmm0, xmm6
cvttss2si eax, xmm0
shl eax, 0x10
or dword [esp + 0x24], eax
comiss xmm2, xmm3
jbe 0x1000b82c
xorps xmm0, xmm0
jmp 0x1000b833
movaps xmm0, xmm5
minss xmm0, xmm3
mulss xmm0, xmm4
addss xmm0, xmm6
cvttss2si eax, xmm0
shl eax, 0x18
or eax, dword [esp + 0x24]
cmp dword [edx + 0x1a58], 0
mov dword [esp + 0x1c], eax
je 0x1000b892
movss xmm1, dword [edx + 0x1a98]
ucomiss xmm1, xmm5
lahf
test ah, 0x44
jnp 0x1000b892
comiss xmm2, xmm1
jbe 0x1000b86e
xorps xmm0, xmm0
jmp 0x1000b875
movaps xmm0, xmm5
minss xmm0, xmm1
mov edx, dword [esp + 0x1c]
mulss xmm0, xmm4
and edx, 0xffffff
addss xmm0, xmm6
cvttss2si eax, xmm0
shl eax, 0x18
or edx, eax
jmp 0x1000b896
mov edx, dword [esp + 0x1c]
cmp dword [esp + 0x98], 0
movss xmm3, dword [edi + 0xc]
movss xmm4, dword [edi + 0x10]
movaps xmm0, xmm3
addss xmm0, dword [edi + 0x14]
movss dword [esp + 0x34], xmm0
movaps xmm0, xmm4
addss xmm0, dword [edi + 0x18]
movss dword [esp + 0x38], xmm0
je 0x1000b8cb
xorps xmm1, xmm1
jmp 0x1000b8eb
movss xmm0, dword [ecx + 0x1548]
movss xmm1, dword [ecx + 0x18c0]
addss xmm0, xmm0
mulss xmm1, dword [edi + 0x264]
addss xmm1, xmm0
mov eax, dword [esp + 0x18]
addss xmm3, xmm2
and eax, 1
addss xmm1, xmm4
mov dword [esp + 0x1c], eax
mov ecx, 0xf
mov eax, 0xc
cmovne eax, ecx
push eax
push ecx
mov ecx, dword [edi + 0x26c]
lea eax, [esp + 0x3c]
movss dword [esp], xmm7
push edx
push eax
lea eax, [esp + 0xd8]
movss dword [esp + 0xd8], xmm3
push eax
movss dword [esp + 0xe0], xmm1
call fcn.1001c4b0
mov ecx, dword [0x100604b8]
movss xmm7, dword [esp + 0x5c]
mov edx, dword [esp + 0x3c]
mov eax, dword [esp + 0x1c]
jmp 0x1000b95a
and eax, 1
mov dword [esp + 0x1c], eax
mov dword [edx + 0x1a58], 0
test eax, eax
jne 0x1000ba62
movzx eax, byte [esp + 0xb]
xorps xmm0, xmm0
movss xmm5, dword [0x10038bc4]
add eax, eax
movups xmm2, xmmword [ecx + eax*8 + 0x1658]
comiss xmm0, xmm2
movaps xmm3, xmm2
movaps xmmword [esp + 0x40], xmm2
shufps xmm3, xmm2, 0xff
mulss xmm3, dword [ecx + 0x1510]
jbe 0x1000b9a4
xorps xmm1, xmm1
jmp 0x1000b9ab
movaps xmm1, xmm5
minss xmm1, xmm2
movss xmm2, dword [0x10038c40]
movss xmm6, dword [0x10038b98]
movss xmm4, dword [esp + 0x44]
comiss xmm0, xmm4
mulss xmm1, xmm2
addss xmm1, xmm6
cvttss2si ecx, xmm1
jbe 0x1000b9d7
xorps xmm1, xmm1
jmp 0x1000b9de
movaps xmm1, xmm5
minss xmm1, xmm4
movss xmm4, dword [esp + 0x48]
mulss xmm1, xmm2
addss xmm1, xmm6
cvttss2si eax, xmm1
shl eax, 8
or ecx, eax
comiss xmm0, xmm4
jbe 0x1000b9ff
xorps xmm1, xmm1
jmp 0x1000ba06
movaps xmm1, xmm5
minss xmm1, xmm4
mulss xmm1, xmm2
addss xmm1, xmm6
cvttss2si eax, xmm1
shl eax, 0x10
or ecx, eax
comiss xmm0, xmm3
ja 0x1000ba23
movaps xmm0, xmm5
minss xmm0, xmm3
mulss xmm0, xmm2
push 3
push ecx
movss dword [esp], xmm7
addss xmm0, xmm6
cvttss2si eax, xmm0
shl eax, 0x18
or eax, ecx
mov ecx, dword [edi + 0x26c]
push eax
lea eax, [esp + 0x94]
push eax
lea eax, [esp + 0x90]
push eax
call fcn.1001c4b0
mov ecx, dword [0x100604b8]
mov eax, dword [esp + 0x1c]
test dword [esp + 0x18], 0x400
je 0x1000bd7a
mov edx, dword [edi + 8]
xorps xmm2, xmm2
test dl, 1
je 0x1000ba80
xorps xmm1, xmm1
jmp 0x1000baa0
movss xmm0, dword [ecx + 0x1548]
movss xmm1, dword [ecx + 0x18c0]
addss xmm0, xmm0
mulss xmm1, dword [edi + 0x264]
addss xmm1, xmm0
movss xmm4, dword [edi + 0x10]
movaps xmm5, xmm4
addss xmm5, xmm1
test edx, 0x400
je 0x1000bade
movss xmm3, dword [ecx + 0x18c0]
mulss xmm3, dword [edi + 0x264]
movss xmm0, dword [ecx + 0x1548]
addss xmm0, xmm0
addss xmm3, dword [edi + 0x148]
addss xmm3, xmm0
jmp 0x1000bae1
xorps xmm3, xmm3
movss xmm1, dword [edi + 0xc]
movaps xmm0, xmm5
maxss xmm0, xmm4
movaps xmm6, xmm1
maxss xmm6, xmm1
addss xmm5, xmm3
addss xmm4, dword [edi + 0x18]
movss dword [esp + 0x44], xmm0
movaps xmm0, xmm1
movss dword [esp + 0x98], xmm6
movss dword [esp + 0x40], xmm6
minss xmm5, xmm4
addss xmm0, dword [edi + 0x1c]
addss xmm1, dword [edi + 0x14]
movss dword [esp + 0x68], xmm5
movss dword [esp + 0x4c], xmm5
minss xmm0, xmm1
movss dword [esp + 0x48], xmm0
test eax, eax
je 0x1000bb45
movss xmm5, dword [esp + 0x5c]
jmp 0x1000bb48
xorps xmm5, xmm5
movups xmm1, xmmword [ecx + 0x1688]
movss xmm6, dword [0x10038bc4]
comiss xmm2, xmm1
movaps xmm3, xmm1
movaps xmmword [esp + 0xb0], xmm1
shufps xmm3, xmm1, 0xff
mulss xmm3, dword [ecx + 0x1510]
jbe 0x1000bb78
xorps xmm0, xmm0
jmp 0x1000bb7f
movaps xmm0, xmm6
minss xmm0, xmm1
movss xmm1, dword [0x10038c40]
movss xmm7, dword [0x10038b98]
movss xmm4, dword [esp + 0xb4]
comiss xmm2, xmm4
mulss xmm0, xmm1
addss xmm0, xmm7
cvttss2si ecx, xmm0
jbe 0x1000bbae
xorps xmm0, xmm0
jmp 0x1000bbb5
movaps xmm0, xmm6
minss xmm0, xmm4
movss xmm4, dword [esp + 0xb8]
mulss xmm0, xmm1
addss xmm0, xmm7
cvttss2si eax, xmm0
shl eax, 8
or ecx, eax
comiss xmm2, xmm4
jbe 0x1000bbd9
xorps xmm0, xmm0
jmp 0x1000bbe0
movaps xmm0, xmm6
minss xmm0, xmm4
mulss xmm0, xmm1
addss xmm0, xmm7
cvttss2si eax, xmm0
shl eax, 0x10
or ecx, eax
comiss xmm2, xmm3
ja 0x1000bbfd
movaps xmm2, xmm6
minss xmm2, xmm3
mulss xmm2, xmm1
push 3
push ecx
movss dword [esp], xmm5
addss xmm2, xmm7
cvttss2si eax, xmm2
shl eax, 0x18
or eax, ecx
mov ecx, dword [edi + 0x26c]
push eax
lea eax, [esp + 0x54]
push eax
lea eax, [esp + 0x50]
push eax
call fcn.1001c4b0
mov eax, dword [esp + 0x3c]
xorps xmm1, xmm1
movss xmm7, dword [eax + 0x1550]
comiss xmm7, xmm1
jbe 0x1000bd7a
movss xmm0, dword [edi + 0x10]
addss xmm0, dword [edi + 0x18]
movss xmm4, dword [esp + 0x68]
comiss xmm0, xmm4
jbe 0x1000bd7a
mov eax, dword [0x100604b8]
movss xmm6, dword [0x10038bc4]
movups xmm2, xmmword [eax + 0x1608]
comiss xmm1, xmm2
movaps xmm3, xmm2
movaps xmmword [esp + 0xb0], xmm2
shufps xmm3, xmm2, 0xff
mulss xmm3, dword [eax + 0x1510]
jbe 0x1000bc92
xorps xmm0, xmm0
jmp 0x1000bc99
movaps xmm0, xmm6
minss xmm0, xmm2
movss xmm2, dword [0x10038c40]
movss xmm5, dword [esp + 0xb4]
comiss xmm1, xmm5
mulss xmm0, xmm2
addss xmm0, dword [0x10038b98]
cvttss2si edx, xmm0
jbe 0x1000bcc4
xorps xmm0, xmm0
jmp 0x1000bccb
movaps xmm0, xmm6
minss xmm0, xmm5
movss xmm5, dword [esp + 0xb8]
mulss xmm0, xmm2
addss xmm0, dword [0x10038b98]
cvttss2si eax, xmm0
shl eax, 8
or edx, eax
comiss xmm1, xmm5
jbe 0x1000bcf3
xorps xmm0, xmm0
jmp 0x1000bcfa
movaps xmm0, xmm6
minss xmm0, xmm5
movss xmm5, dword [0x10038b98]
mulss xmm0, xmm2
addss xmm0, xmm5
cvttss2si eax, xmm0
shl eax, 0x10
or edx, eax
comiss xmm1, xmm3
ja 0x1000bd1f
movaps xmm1, xmm6
minss xmm1, xmm3
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x4c]
movss xmm0, dword [esp + 0x98]
mulss xmm1, xmm2
mov dword [esp + 0x34], eax
push ecx
movss dword [esp], xmm7
addss xmm1, xmm5
mov dword [esp + 0x3c], ecx
mov ecx, dword [edi + 0x26c]
movss dword [esp + 0xcc], xmm0
movss dword [esp + 0xd0], xmm4
cvttss2si eax, xmm1
shl eax, 0x18
or eax, edx
push eax
lea eax, [esp + 0x3c]
push eax
lea eax, [esp + 0xd4]
push eax
call fcn.1001c390
cmp byte [edi + 0x78], 0
je 0x1000bd87
xor ecx, ecx
call fcn.10022cb0
cmp byte [edi + 0x79], 0
je 0x1000bd97
mov ecx, 1
call fcn.10022cb0
test byte [esp + 0x18], 2
jne 0x1000c0b9
movss xmm4, dword [esp + 0x70]
xor eax, eax
movaps xmm0, xmm4
mov dword [esp + 0x2c], eax
addss xmm0, dword [esp + 0x5c]
mov ecx, 0x1005fdac
mov dword [esp + 0x78], ecx
movss dword [esp + 0xa0], xmm0
nop dword [eax]
movss xmm0, dword [edi + 0xc]
mov edx, eax
movss xmm1, dword [edi + 0x10]
movaps xmm2, xmm0
addss xmm2, dword [edi + 0x14]
movaps xmm3, xmm1
and edx, 1
addss xmm3, dword [edi + 0x18]
mov dword [esp + 0xec], edx
subss xmm2, xmm0
subss xmm3, xmm1
mulss xmm2, dword [ecx - 0xc]
mulss xmm3, dword [ecx - 8]
addss xmm2, xmm0
movd xmm0, esi
cvtdq2ps xmm0, xmm0
addss xmm3, xmm1
movss dword [esp + 0x98], xmm2
movss dword [esp + 0x68], xmm3
je 0x1000be3f
movss dword [esp + 0xf4], xmm0
movaps xmm0, xmm4
movss dword [esp + 0xf0], xmm4
jmp 0x1000be51
movss dword [esp + 0x108], xmm0
movss dword [esp + 0x10c], xmm4
mulss xmm0, dword [ecx - 4]
lea eax, [esp + 0x10c]
mov edi, dword [esp + 0x7c]
test edx, edx
lea edx, [esp + 0xf4]
cmovne eax, edx
addss xmm0, xmm2
movss dword [esp + 0xc8], xmm0
movss xmm0, dword [eax]
mulss xmm0, dword [ecx]
mov ecx, dword [edi + 0x26c]
add ecx, 0x54
mov dword [esp + 0x24], ecx
addss xmm0, xmm3
mov eax, dword [ecx]
mov edx, dword [ecx + 4]
mov dword [esp + 0x1c], eax
movss dword [esp + 0xcc], xmm0
cmp eax, edx
jne 0x1000bef3
inc eax
mov dword [esp + 0x1c], eax
test edx, edx
je 0x1000bebe
mov eax, edx
cdq
sub eax, edx
sar eax, 1
add eax, dword [ecx + 4]
jmp 0x1000bec3
mov eax, 8
mov edx, dword [esp + 0x1c]
cmp eax, edx
cmovg edx, eax
push edx
call fcn.10013230
mov eax, dword [esp + 0x24]
movss xmm2, dword [esp + 0x98]
movss xmm3, dword [esp + 0x68]
movss xmm4, dword [esp + 0x70]
mov ecx, dword [eax]
mov dword [esp + 0x1c], ecx
jmp 0x1000bef7
mov eax, dword [esp + 0x24]
mov eax, dword [eax + 8]
mov edi, dword [esp + 0x1c]
mov ecx, dword [esp + 0xc8]
mov edx, dword [esp + 0xcc]
movd xmm0, esi
mov dword [eax + edi*8], ecx
mov ecx, edi
cvtdq2ps xmm0, xmm0
mov dword [eax + ecx*8 + 4], edx
mov eax, dword [esp + 0x24]
mov edx, dword [esp + 0xec]
inc dword [eax]
test edx, edx
je 0x1000bf41
movss dword [esp + 0xb0], xmm0
movss dword [esp + 0xb4], xmm4
jmp 0x1000bf56
movss dword [esp + 0xd4], xmm0
movaps xmm0, xmm4
movss dword [esp + 0xd0], xmm4
mov ecx, dword [esp + 0x78]
lea edi, [esp + 0xb4]
test edx, edx
lea eax, [esp + 0xd4]
cmovne eax, edi
mov edi, dword [esp + 0x7c]
mulss xmm0, dword [ecx - 4]
addss xmm0, xmm2
movss dword [esp + 0x34], xmm0
movss xmm0, dword [eax]
mulss xmm0, dword [ecx]
mov ecx, dword [edi + 0x26c]
add ecx, 0x54
mov dword [esp + 0x24], ecx
addss xmm0, xmm3
mov eax, dword [ecx]
mov dword [esp + 0x1c], eax
movss dword [esp + 0x38], xmm0
cmp eax, dword [ecx + 4]
jne 0x1000bff7
lea edx, [eax + 1]
mov eax, dword [ecx + 4]
mov dword [esp + 0xec], edx
test eax, eax
je 0x1000bfcc
cdq
sub eax, edx
mov edx, dword [esp + 0xec]
sar eax, 1
add eax, dword [ecx + 4]
jmp 0x1000bfd1
mov eax, 8
cmp eax, edx
cmovg edx, eax
push edx
call fcn.10013230
mov eax, dword [esp + 0x24]
movss xmm2, dword [esp + 0x98]
movss xmm3, dword [esp + 0x68]
mov ecx, dword [eax]
mov dword [esp + 0x1c], ecx
jmp 0x1000bffb
mov eax, dword [esp + 0x24]
mov eax, dword [eax + 8]
mov edi, dword [esp + 0x1c]
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x38]
movss xmm0, dword [esp + 0xa0]
mov dword [eax + edi*8], ecx
mov ecx, edi
mov edi, dword [esp + 0x7c]
mov dword [eax + ecx*8 + 4], edx
mov eax, dword [esp + 0x24]
inc dword [eax]
mov eax, dword [esp + 0x78]
mov ecx, dword [edi + 0x26c]
mulss xmm0, dword [eax - 4]
push dword [eax + 8]
push dword [eax + 4]
addss xmm0, xmm2
movss xmm2, dword [esp + 0x64]
movss dword [esp + 0x48], xmm0
movss xmm0, dword [esp + 0xa8]
mulss xmm0, dword [eax]
lea eax, [esp + 0x48]
push eax
addss xmm0, xmm3
movss dword [esp + 0x50], xmm0
call fcn.1001bdd0
mov eax, dword [esp + 0x2c]
mov edi, dword [edi + 0x26c]
mov ecx, edi
push dword [esp + eax*4 + 0x110]
push dword [edi + 0x54]
push dword [edi + 0x5c]
call fcn.1001b9c0
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x78]
inc eax
movss xmm4, dword [esp + 0x70]
add ecx, 0x18
mov dword [edi + 0x54], 0
mov edi, dword [esp + 0x7c]
mov dword [esp + 0x2c], eax
mov dword [esp + 0x78], ecx
cmp eax, dword [esp + 0x74]
jl 0x1000bdd0
mov ecx, edi
call fcn.10009680
mov esi, dword [esp + 0x3c]
xorps xmm2, xmm2
cmp dword [esi + 0x1af0], edi
jne 0x1000c2e9
movss xmm6, dword [edi + 0x44]
movss xmm3, dword [edi + 0xc]
movaps xmm0, xmm6
maxss xmm0, dword [esi + 0x151c]
movss xmm1, dword [edi + 0x10]
movaps xmm5, xmm3
addss xmm3, dword [edi + 0x14]
movaps xmm4, xmm1
addss xmm1, dword [edi + 0x18]
movss dword [esp + 0x70], xmm0
movss xmm0, dword [esi + 0x18bc]
subss xmm5, xmm0
subss xmm4, xmm0
addss xmm3, xmm0
addss xmm1, xmm0
comiss xmm2, xmm5
jb 0x1000c158
comiss xmm2, xmm4
jb 0x1000c158
comiss xmm3, dword [esp + 0x64]
jb 0x1000c158
comiss xmm1, dword [esp + 0x14]
jb 0x1000c158
xorps xmm0, xmmword [0x10039040]
subss xmm0, dword [0x10038bc4]
movss dword [esp + 0x70], xmm6
subss xmm5, xmm0
subss xmm4, xmm0
addss xmm3, xmm0
addss xmm1, xmm0
mov edx, dword [0x100604b8]
movss xmm7, dword [esi + 0x1afc]
movups xmm6, xmmword [edx + 0x1888]
mulss xmm7, dword [edx + 0x1510]
comiss xmm2, xmm6
movaps xmm0, xmm6
movaps xmmword [esp + 0x40], xmm6
shufps xmm0, xmm6, 0xff
mulss xmm7, xmm0
jbe 0x1000c18f
xorps xmm0, xmm0
jmp 0x1000c19b
movss xmm0, dword [0x10038bc4]
minss xmm0, xmm6
comiss xmm2, dword [esp + 0x44]
movss xmm6, dword [0x10038c40]
mulss xmm0, xmm6
addss xmm0, dword [0x10038b98]
cvttss2si ecx, xmm0
jbe 0x1000c1bf
xorps xmm0, xmm0
jmp 0x1000c1cd
movss xmm0, dword [0x10038bc4]
minss xmm0, dword [esp + 0x44]
mulss xmm0, xmm6
addss xmm0, dword [0x10038b98]
cvttss2si eax, xmm0
shl eax, 8
or ecx, eax
comiss xmm2, dword [esp + 0x48]
jbe 0x1000c1ee
xorps xmm0, xmm0
jmp 0x1000c1fc
movss xmm0, dword [0x10038bc4]
minss xmm0, dword [esp + 0x48]
mulss xmm0, xmm6
addss xmm0, dword [0x10038b98]
cvttss2si eax, xmm0
shl eax, 0x10
or ecx, eax
comiss xmm2, xmm7
jbe 0x1000c21b
xorps xmm0, xmm0
jmp 0x1000c227
movss xmm0, dword [0x10038bc4]
minss xmm0, xmm7
mulss xmm0, xmm6
movss xmm6, dword [0x10038b98]
addss xmm0, xmm6
cvttss2si eax, xmm0
shl eax, 0x18
or ecx, eax
mov eax, dword [edi + 0x26c]
mov dword [esp + 0x74], ecx
mov dword [esp + 0x14], eax
test ecx, 0xff000000
je 0x1000c2ef
test byte [eax + 0x24], 1
lea ecx, [esp + 0x40]
push 0xffffffffffffffff
addss xmm5, xmm6
addss xmm4, xmm6
push ecx
lea ecx, [esp + 0xb8]
push ecx
movss dword [esp + 0xbc], xmm5
mov ecx, eax
movss dword [esp + 0xc0], xmm4
je 0x1000c295
subss xmm3, xmm6
subss xmm1, xmm6
jmp 0x1000c2a5
subss xmm3, dword [0x10038b94]
subss xmm1, dword [0x10038b94]
movss dword [esp + 0x4c], xmm3
movss xmm3, dword [esp + 0x7c]
movss dword [esp + 0x50], xmm1
call fcn.1001c080
mov eax, dword [esp + 0x14]
push ecx
mov dword [esp], 0x40400000
mov ecx, eax
push 1
push dword [esp + 0x7c]
push dword [eax + 0x54]
push dword [eax + 0x5c]
call fcn.1001ae30
mov eax, dword [esp + 0x14]
xorps xmm2, xmm2
mov dword [eax + 0x54], 0
mov edx, dword [0x100604b8]
movss xmm4, dword [edi + 0xc]
subss xmm4, dword [edi + 0x58]
movss xmm3, dword [edi + 0x3c]
mov ecx, dword [edi + 0x20]
movaps xmm0, xmm3
mov eax, dword [edi + 0x1c]
mov dword [edi + 0x24], eax
mov dword [edi + 0x28], ecx
addss xmm0, xmm4
mov ecx, dword [edi + 8]
mov eax, ecx
and eax, 1
mov dword [esp + 0x74], eax
movss dword [edi + 0x210], xmm0
je 0x1000c32c
xorps xmm6, xmm6
jmp 0x1000c34c
movss xmm0, dword [edx + 0x1548]
movss xmm6, dword [edx + 0x18c0]
addss xmm0, xmm0
mulss xmm6, dword [edi + 0x264]
addss xmm6, xmm0
and ecx, 0x400
je 0x1000c37e
movss xmm1, dword [edx + 0x18c0]
mulss xmm1, dword [edi + 0x264]
movss xmm0, dword [edx + 0x1548]
addss xmm0, xmm0
addss xmm1, dword [edi + 0x148]
addss xmm1, xmm0
jmp 0x1000c381
xorps xmm1, xmm1
movss xmm5, dword [edi + 0x10]
subss xmm5, dword [edi + 0x5c]
movss xmm7, dword [edi + 0x40]
movaps xmm0, xmm7
addss xmm0, xmm5
addss xmm0, xmm6
addss xmm0, xmm1
movss dword [edi + 0x214], xmm0
movss xmm0, dword [edi + 0x34]
ucomiss xmm0, xmm2
lahf
test ah, 0x44
jp 0x1000c3bf
movss xmm0, dword [edi + 0x14]
subss xmm0, dword [edi + 0x70]
subss xmm4, xmm3
addss xmm4, xmm0
movss xmm0, dword [edi + 0x38]
ucomiss xmm0, xmm2
movss dword [edi + 0x218], xmm4
lahf
test ah, 0x44
jp 0x1000c3e7
movss xmm0, dword [edi + 0x18]
subss xmm0, dword [edi + 0x74]
cmp dword [esp + 0x74], 0
subss xmm5, xmm7
addss xmm3, xmm2
mov dword [edi + 0x1b8], 0
mov dword [edi + 0x1bc], 0
addss xmm5, xmm0
subss xmm3, dword [edi + 0x58]
movss dword [edi + 0x21c], xmm5
movss dword [edi + 0x1b4], xmm3
je 0x1000c428
xorps xmm4, xmm4
jmp 0x1000c448
movss xmm0, dword [edx + 0x1548]
movss xmm4, dword [edx + 0x18c0]
addss xmm0, xmm0
mulss xmm4, dword [edi + 0x264]
addss xmm4, xmm0
test ecx, ecx
je 0x1000c476
movss xmm1, dword [edx + 0x18c0]
mulss xmm1, dword [edi + 0x264]
movss xmm0, dword [edx + 0x1548]
addss xmm0, xmm0
addss xmm1, dword [edi + 0x148]
addss xmm1, xmm0
jmp 0x1000c479
xorps xmm1, xmm1
movss xmm0, dword [edi + 0x20]
addss xmm1, xmm4
subss xmm0, dword [edi + 0x74]
addss xmm3, xmm2
mov dword [edi + 0xf4], 0
mov dword [edi + 0xf8], 0
mov dword [edi + 0xfc], 0
addss xmm1, xmm7
mov dword [edi + 0xf0], 0
mov byte [edi + 0x140], 0
addss xmm3, dword [edi + 0xc]
mov byte [edi + 0x142], 0
subss xmm1, dword [edi + 0x5c]
movss dword [edi + 0xd8], xmm3
mov eax, dword [edi + 0xd8]
mov dword [edi + 0xc8], eax
addss xmm1, dword [edi + 0x10]
mov dword [edi + 0xd0], eax
mov dword [edi + 0xe0], eax
mov eax, dword [edi + 0xf4]
mov dword [edi + 0xe8], eax
movss dword [edi + 0xdc], xmm1
movss xmm1, dword [edi + 0x30]
mov ecx, dword [edi + 0xdc]
subss xmm1, xmm0
xorps xmm0, xmm0
mov dword [edi + 0xcc], ecx
mov dword [edi + 0xd4], ecx
mov dword [edi + 0xe4], ecx
mov ecx, dword [edi + 0xf8]
maxss xmm0, xmm1
mov dword [edi + 0xec], ecx
comiss xmm0, xmm2
seta al
mov byte [edi + 0x141], al
mov eax, dword [edi + 0x13c]
mov dword [edi + 0x138], eax
lea eax, [edi + 0x14c]
mov dword [edi + 0x13c], 0
mov ecx, dword [eax + 4]
test ecx, ecx
jns 0x1000c58d
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
xor ecx, ecx
test eax, eax
cmovg ecx, eax
push ecx
lea ecx, [edi + 0x14c]
call fcn.10012ed0
lea eax, [edi + 0x14c]
mov ecx, dword [esp + 0x60]
mov dword [eax], 0
mov dword [edi + 0x15c], 1
test ecx, ecx
je 0x1000c5cd
mov eax, dword [ecx + 0x15c]
mov dword [edi + 0x160], eax
mov dword [edi + 0x168], 0xffffffff
mov dword [edi + 0x164], 0xffffffff
mov ecx, dword [ecx + 0x16c]
jmp 0x1000c5ed
mov dword [edi + 0x160], 1
xor ecx, ecx
mov dword [edi + 0x168], 0xffffffff
mov dword [edi + 0x164], 0xffffffff
mov dword [edi + 0x16c], ecx
lea ecx, [edi + 0x178]
mov eax, dword [edi + 0x224]
mov dword [edi + 0x170], eax
push 0
mov dword [edi + 0x174], 0xbf800000
call fcn.10012f50
push ecx
lea ecx, [edi + 0x184]
call fcn.10013020
push ecx
lea ecx, [edi + 0x190]
call fcn.10013020
mov dword [edi + 0x1c0], 0
lea eax, [edi + 0x24c]
mov dword [edi + 0x100], 0
lea ecx, [edi + 0x19c]
mov dword [edi + 0x104], 0
push 0
mov dword [edi + 0x158], eax
call fcn.10012b30
cmp byte [esp + 0x13], 0
lea ecx, [edi + 0x240]
movss xmm0, dword [esi + 0x1554]
mov dword [edi + 0x230], 0
mov dword [edi + 0x22c], 0
movss dword [edi + 0x228], xmm0
je 0x1000c6a4
xorps xmm0, xmm0
movq qword [ecx], xmm0
mov dword [ecx + 8], 0
xor edx, edx
xorps xmm1, xmm1
nop dword [eax]
test edx, edx
je 0x1000c6d5
movss xmm0, dword [ecx]
comiss xmm0, xmm1
jbe 0x1000c6d5
movss xmm0, dword [edi + 0x22c]
addss xmm0, dword [edi + 0x228]
movss dword [edi + 0x22c], xmm0
cvttss2si eax, dword [edi + 0x22c]
inc edx
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ecx - 0xc], xmm0
movss xmm0, dword [edi + 0x22c]
addss xmm0, dword [ecx]
movss dword [edi + 0x22c], xmm0
mov dword [ecx], 0
add ecx, 4
cmp edx, 3
jl 0x1000c6b0
cmp dword [esp + 0xc], 0
je 0x1000c735
mov eax, dword [esp + 0x60]
mov edx, dword [eax + 0x16c]
lea eax, [edi + 0x16c]
cmp dword [eax], edx
je 0x1000c735
push eax
lea ecx, [edi + 0x178]
mov dword [eax], edx
call fcn.10012a80
mov eax, dword [edi + 0x90]
test eax, eax
jle 0x1000c746
dec eax
mov dword [edi + 0x90], eax
mov eax, dword [edi + 0x94]
test eax, eax
jle 0x1000c757
dec eax
mov dword [edi + 0x94], eax
cmp byte [esp + 0x28], 0
mov eax, dword [0x100604b8]
mov dword [esp + 0xc], eax
je 0x1000c7f0
mov ecx, edi
call fcn.1000d290
mov eax, dword [edi + 8]
test eax, 0x40000
jne 0x1000c7e0
and eax, 0x5000000
cmp eax, 0x1000000
jne 0x1000c791
cmp dword [edi + 0x2f8], 0
jne 0x1000c7e0
mov edx, dword [esp + 0xc]
movaps xmm0, xmmword [0x10039080]
mov ecx, dword [edx + 0x1b04]
mov eax, dword [edx + 0x1aac]
mov dword [edx + 0x1ab0], 0
mov dword [eax + ecx*4 + 0x2f8], 0
mov word [edx + 0x1b11], 1
mov dword [edx + 0x1b14], 0
movups xmmword [edx + 0x1b18], xmm0
mov byte [edx + 0x1b10], 1
jmp 0x1000c7f0
mov ecx, dword [esp + 0xc]
mov eax, dword [edi + 0x2f8]
mov dword [ecx + 0x1ab0], eax
mov ecx, dword [esp + 0x18]
movaps xmm7, xmmword [esp + 0x80]
test cl, 1
jne 0x1000cda1
mov eax, dword [edi + 0x16c]
mov dword [esp + 0x74], eax
or eax, 0x10
mov dword [edi + 0x16c], eax
mov eax, ecx
and eax, 0x20
mov dword [edi + 0x130], 1
mov dword [edi + 0x134], 2
mov dword [esp + 0xa0], eax
jne 0x1000c895
mov ecx, dword [edi + 0x1c4]
xor edx, edx
mov eax, dword [edi + 0x1cc]
push dword [eax + ecx*4 - 4]
mov ecx, str.COLLAPSE
call fcn.100025e0
mov ecx, eax
add esp, 4
mov eax, dword [esp + 0xc]
cmp dword [eax + 0x19bc], ecx
jne 0x1000c86d
mov dword [eax + 0x19c4], ecx
cmp dword [eax + 0x19c0], ecx
jne 0x1000c87c
mov byte [eax + 0x19d0], 1
lea edx, [edi + 0xc]
call fcn.10022990
test al, al
mov eax, dword [0x100604b8]
mov dword [esp + 0xc], eax
je 0x1000c895
mov byte [edi + 0x7e], 1
cmp dword [esp + 0x9c], 0
je 0x1000c95e
movss xmm3, dword [esi + 0x18bc]
xor edx, edx
movss xmm2, dword [esi + 0x1548]
mulss xmm3, dword [0x10038b98]
movaps xmm0, xmm2
mov ecx, dword [edi + 0x1c4]
xorps xmm0, xmmword [0x10039040]
movss xmm1, dword [edi + 0x14]
addss xmm1, dword [edi + 0xc]
mov eax, dword [edi + 0x1cc]
subss xmm0, xmm3
push dword [eax + ecx*4 - 4]
addss xmm1, xmm0
mov ecx, str.CLOSE
movaps xmm0, xmm3
addss xmm0, xmm2
movss dword [esp + 0x44], xmm1
addss xmm0, dword [edi + 0x10]
movss dword [esp + 0x48], xmm0
call fcn.100025e0
mov ecx, eax
add esp, 4
mov eax, dword [esp + 0xc]
cmp dword [eax + 0x19bc], ecx
jne 0x1000c922
mov dword [eax + 0x19c4], ecx
cmp dword [eax + 0x19c0], ecx
jne 0x1000c931
mov byte [eax + 0x19d0], 1
addss xmm3, dword [0x10038bc4]
lea edx, [esp + 0x40]
movaps xmm2, xmm3
call fcn.100225f0
test al, al
je 0x1000c953
mov eax, dword [esp + 0x9c]
mov byte [eax], 0
mov eax, dword [0x100604b8]
mov dword [esp + 0xc], eax
jmp 0x1000c962
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x74]
mov dword [edi + 0x130], 0
mov dword [edi + 0x134], 1
mov dword [edi + 0x16c], ecx
mov ecx, dword [esp + 0x18]
and ecx, 0x100000
mov dword [esp + 0x74], ecx
je 0x1000c9e4
movss xmm3, dword [0x10038c6c]
movss xmm2, dword [eax + 0x18bc]
push ecx
push 0
push 0x10034594
push ecx
lea ecx, [esp + 0x50]
mov dword [esp], 0xbf800000
push ecx
mov ecx, dword [eax + 0x18b8]
call fcn.1001eca0
movss xmm0, dword [esp + 0x40]
xorps xmm2, xmm2
addss xmm0, dword [0x10038bc0]
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [esp + 0x28], xmm0
jmp 0x1000c9ed
xorps xmm2, xmm2
movss dword [esp + 0x28], xmm2
mov edx, dword [esp + 0x6c]
mov eax, edx
cmp edx, 0xffffffff
jae 0x1000ca0e
mov cl, byte [eax]
test cl, cl
je 0x1000ca0e
cmp cl, 0x23
jne 0x1000ca08
cmp byte [eax + 1], cl
je 0x1000ca0e
inc eax
cmp eax, 0xffffffff
jb 0x1000c9f8
mov ecx, dword [esp + 0xc]
movss xmm0, dword [ecx + 0x18bc]
cmp edx, eax
jne 0x1000ca23
movaps xmm1, xmm2
jmp 0x1000ca73
movss xmm3, dword [0x10038c6c]
movaps xmm2, xmm0
push ecx
push eax
push edx
push ecx
mov ecx, dword [ecx + 0x18b8]
lea eax, [esp + 0x50]
mov dword [esp], 0xbf800000
push eax
call fcn.1001eca0
movss xmm0, dword [esp + 0x40]
xorps xmm2, xmm2
addss xmm0, dword [0x10038bc0]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x6c]
cvttss2si eax, xmm0
movss xmm0, dword [esp + 0x44]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
cmp dword [esp + 0xa0], 0
addss xmm0, xmm2
movss xmm7, dword [esp + 0x28]
movaps xmm6, xmm7
addss xmm6, xmm1
movss dword [esp + 0x44], xmm0
movaps xmm0, xmmword [esp + 0x80]
movaps xmmword [esp + 0xd0], xmm0
movss dword [esp + 0x64], xmm6
movss dword [esp + 0x40], xmm6
je 0x1000cabd
movss xmm4, dword [esi + 0x1544]
movaps xmm1, xmm4
jmp 0x1000cad8
movss xmm1, dword [esi + 0x1544]
movaps xmm4, xmm1
addss xmm4, dword [esi + 0x18bc]
addss xmm4, dword [esi + 0x155c]
cmp dword [esp + 0x9c], 0
movaps xmm5, xmm1
je 0x1000caf5
addss xmm5, dword [esi + 0x18bc]
addss xmm5, dword [esi + 0x155c]
movss xmm3, dword [esi + 0x152c]
comiss xmm3, xmm2
jbe 0x1000cb11
movaps xmm0, xmm4
subss xmm0, xmm5
mulss xmm0, xmm3
addss xmm5, xmm0
cmp dword [esp + 0x9c], 0
movss xmm3, dword [esp + 0x20]
addss xmm3, xmm4
movss xmm4, dword [esp + 0xd8]
subss xmm4, xmm5
movss dword [esp + 0xd0], xmm3
movss dword [esp + 0xd8], xmm4
movaps xmm0, xmmword [esp + 0xd0]
movaps xmmword [esp + 0xf0], xmm0
je 0x1000cb6e
movss xmm1, dword [esp + 0xac]
subss xmm1, dword [esp + 0x84]
subss xmm1, dword [0x10038be4]
cmp dword [esp + 0x6c], 0xffffffff
movss xmm0, dword [edi + 0x14]
addss xmm0, dword [edi + 0xc]
mov dword [esp + 0x14], edx
subss xmm0, xmm1
movss dword [esp + 0xf8], xmm0
jae 0x1000cba9
mov al, byte [edx]
test al, al
je 0x1000cba5
cmp al, 0x23
jne 0x1000cb9f
cmp byte [edx + 1], al
je 0x1000cba5
inc edx
cmp edx, 0xffffffff
jb 0x1000cb90
mov dword [esp + 0x14], edx
mov eax, edx
sub eax, dword [esp + 0x6c]
je 0x1000cc42
mov ecx, dword [ecx + 0x199c]
lea eax, [esp + 0xf0]
push eax
lea eax, [esi + 0x152c]
push eax
mov ecx, dword [ecx + 0x26c]
lea eax, [esp + 0x48]
push eax
push edx
push dword [esp + 0x7c]
lea eax, [esp + 0xec]
push eax
lea edx, [esp + 0xe8]
call fcn.10003390
mov ecx, dword [esp + 0x24]
add esp, 0x18
cmp byte [ecx + 0x2d0c], 0
je 0x1000cc15
push dword [esp + 0x14]
mov edx, dword [esp + 0x70]
lea ecx, [esp + 0xd4]
call fcn.10011da0
add esp, 4
mov ecx, dword [0x100604b8]
xorps xmm2, xmm2
movss xmm4, dword [esp + 0xd8]
movss xmm3, dword [esp + 0xd0]
movss xmm6, dword [esp + 0x64]
movss xmm7, dword [esp + 0x28]
mov dword [esp + 0xc], ecx
jmp 0x1000cc46
mov ecx, dword [esp + 0xc]
cmp dword [esp + 0x74], 0
je 0x1000cd99
movss xmm0, dword [esi + 0x18bc]
mov edx, 0x10034594
xorps xmm0, xmmword [0x10039040]
mulss xmm0, dword [0x10038b84]
mov dword [esp + 0x40], 0
mov dword [esp + 0x14], edx
cvttss2si eax, xmm0
movss xmm0, dword [esi + 0x1530]
movss dword [esp + 0x44], xmm0
movaps xmm0, xmm4
subss xmm4, xmm3
addss xmm0, xmm2
movd xmm1, eax
mov eax, edx
cvtdq2ps xmm1, xmm1
subss xmm4, xmm6
movss dword [esp + 0xb0], xmm0
movss xmm0, dword [esp + 0xdc]
addss xmm0, xmm1
mulss xmm4, dword [esi + 0x152c]
movss dword [esp + 0xb4], xmm0
movss xmm0, dword [0x10038bdc]
addss xmm4, xmm3
subss xmm0, xmm7
maxss xmm3, xmm4
addss xmm3, xmm6
addss xmm3, xmm0
movss xmm0, dword [esp + 0xd4]
addss xmm0, xmm2
addss xmm3, xmm2
addss xmm0, xmm1
movss dword [esp + 0x34], xmm3
movss dword [esp + 0x38], xmm0
cmp eax, 0xffffffff
jae 0x1000cd29
nop dword [eax]
mov al, byte [edx]
test al, al
je 0x1000cd25
cmp al, 0x23
jne 0x1000cd1f
cmp byte [edx + 1], al
je 0x1000cd25
inc edx
cmp edx, 0xffffffff
jb 0x1000cd10
mov dword [esp + 0x14], edx
mov eax, edx
sub eax, 0x10034594
je 0x1000cd99
mov ecx, dword [ecx + 0x199c]
lea eax, [esp + 0xf0]
push eax
lea eax, [esp + 0x44]
push eax
mov ecx, dword [ecx + 0x26c]
lea eax, [esp + 0xb8]
push 0
push edx
push 0x10034594
push eax
lea edx, [esp + 0x4c]
call fcn.10003390
mov ecx, dword [esp + 0x24]
add esp, 0x18
cmp byte [ecx + 0x2d0c], 0
je 0x1000cd89
push dword [esp + 0x14]
mov edx, 0x10034594
lea ecx, [esp + 0x38]
call fcn.10011da0
add esp, 4
mov ecx, dword [0x100604b8]
movaps xmm7, xmmword [esp + 0x80]
jmp 0x1000cda5
movaps xmm7, xmmword [esp + 0x80]
mov ecx, dword [esp + 0xc]
movss xmm0, dword [edi + 0xc]
movss xmm1, dword [edi + 0x10]
movss dword [esp + 0x44], xmm1
addss xmm1, dword [edi + 0x18]
movss dword [esp + 0x40], xmm0
addss xmm0, dword [edi + 0x14]
movss xmm5, dword [esp + 0x20]
mov eax, dword [esp + 0x18]
movss dword [esp + 0x4c], xmm1
and eax, 0x401
movss dword [esp + 0x48], xmm0
movups xmm0, xmmword [esp + 0x40]
movups xmmword [edi + 0x1e0], xmm0
movss xmm1, dword [edi + 0x1e0]
movss xmm0, dword [edi + 0x1e4]
maxss xmm1, dword [edi + 0x1d0]
maxss xmm0, dword [edi + 0x1d4]
movss dword [edi + 0x1e0], xmm1
movss dword [edi + 0x1e4], xmm0
movss xmm1, dword [edi + 0x1e8]
movss xmm0, dword [edi + 0x1ec]
minss xmm1, dword [edi + 0x1d8]
minss xmm0, dword [edi + 0x1dc]
movss dword [edi + 0x1e8], xmm1
movss dword [edi + 0x1ec], xmm0
movss xmm1, dword [edi + 0x48]
addss xmm5, xmm1
movss dword [edi + 0x1f0], xmm5
cmp eax, 1
jne 0x1000ce67
movaps xmm2, xmm1
jmp 0x1000ce6f
movss xmm2, dword [esi + 0x1550]
test dword [edi + 8], 0x400
je 0x1000cea2
movss xmm4, dword [ecx + 0x18c0]
mulss xmm4, dword [edi + 0x264]
movss xmm0, dword [ecx + 0x1548]
addss xmm0, xmm0
addss xmm4, dword [edi + 0x148]
addss xmm4, xmm0
jmp 0x1000cea5
xorps xmm4, xmm4
addss xmm4, dword [esp + 0xac]
movss xmm6, dword [0x10038b98]
addss xmm5, xmm6
addss xmm4, xmm2
movss dword [edi + 0x1f4], xmm4
addss xmm4, xmm6
movss xmm3, dword [edi + 0xc]
addss xmm3, dword [edi + 0x14]
subss xmm3, dword [edi + 0x70]
subss xmm3, xmm1
movss dword [edi + 0x1f8], xmm3
addss xmm3, xmm6
movss xmm2, dword [edi + 0x10]
addss xmm2, dword [edi + 0x18]
subss xmm2, dword [edi + 0x74]
subss xmm2, xmm1
movss dword [edi + 0x1fc], xmm2
addss xmm2, xmm6
movss xmm0, dword [edi + 0x3c]
mulss xmm0, xmm6
subss xmm0, xmm1
xorps xmm1, xmm1
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
maxss xmm1, xmm0
addss xmm5, xmm1
subss xmm3, xmm1
cvttss2si eax, xmm5
movss xmm5, dword [esp + 0x84]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
cvttss2si eax, xmm4
movss dword [edi + 0x200], xmm0
movss xmm4, dword [esp + 0x20]
movd xmm0, eax
cvttss2si eax, xmm3
cvtdq2ps xmm0, xmm0
movss dword [edi + 0x204], xmm0
movd xmm0, eax
cvttss2si eax, xmm2
cvtdq2ps xmm0, xmm0
movss dword [edi + 0x208], xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [edi + 0x20c], xmm0
mov eax, dword [edi + 0x50]
mov dword [edi + 0x108], eax
movss xmm1, dword [ecx + 0x1564]
movss xmm0, dword [ecx + 0x1568]
subss xmm4, xmm1
movaps xmm3, xmm1
subss xmm5, xmm0
movss xmm1, dword [ecx + 0xe0]
movaps xmm2, xmm0
addss xmm3, dword [esp + 0xa8]
addss xmm2, dword [esp + 0xac]
comiss xmm1, xmm4
jb 0x1000cfee
movss xmm0, dword [ecx + 0xe4]
comiss xmm0, xmm5
jb 0x1000cfee
comiss xmm3, xmm1
jbe 0x1000cfee
comiss xmm2, xmm0
jbe 0x1000cfee
mov eax, 1
jmp 0x1000cff0
xor eax, eax
mov dword [edi + 0x10c], eax
lea edx, [edi + 0x208]
push 1
lea ecx, [edi + 0x200]
movups xmmword [edi + 0x110], xmm7
call fcn.10007570
mov byte [edi + 0x7c], 0
jmp 0x1000d029
push 1
lea edx, [edi + 0x208]
lea ecx, [edi + 0x200]
call fcn.10007570
inc word [edi + 0x84]
add esp, 4
mov eax, dword [esp + 0x18]
mov dword [esi + 0x1a58], 0
mov dword [esi + 0x1a54], 0
mov dword [esi + 0x1a50], 0
mov dword [esi + 0x1a4c], 0
mov dword [esi + 0x1a48], 0
mov dword [esi + 0x1a44], 0
mov dword [esi + 0x1a40], 0
test eax, 0x1000000
je 0x1000d0e7
test al, 0x40
jne 0x1000d0c6
cmp dword [edi + 0x90], 0
jg 0x1000d0c6
cmp dword [edi + 0x94], 0
jg 0x1000d0c6
movss xmm0, dword [edi + 0x1e0]
comiss xmm0, dword [edi + 0x1e8]
jae 0x1000d0bc
movss xmm0, dword [edi + 0x1e4]
comiss xmm0, dword [edi + 0x1ec]
jb 0x1000d0c6
mov dword [edi + 0xa4], 1
mov eax, dword [esp + 0x60]
test eax, eax
je 0x1000d0e7
cmp byte [eax + 0x7d], 0
jne 0x1000d0dd
cmp byte [eax + 0x81], 0
je 0x1000d0e7
mov dword [edi + 0xa4], 1
xorps xmm0, xmm0
comiss xmm0, dword [esi + 0x1510]
jb 0x1000d134
mov dword [edi + 0xa4], 1
mov al, 1
mov byte [edi + 0x81], al
cmp byte [edi + 0x7d], 0
jne 0x1000d115
cmp byte [edi + 0x7a], 0
je 0x1000d115
test al, al
je 0x1000d14a
cmp dword [edi + 0x90], 0
jg 0x1000d14a
cmp dword [edi + 0x94], 0
jg 0x1000d14a
cmp dword [edi + 0xa8], 0
jg 0x1000d14a
mov al, 1
jmp 0x1000d14c
cmp dword [edi + 0xa4], 0
jg 0x1000d0fd
cmp dword [edi + 0xa8], 0
jg 0x1000d0fd
xor al, al
jmp 0x1000d0ff
xor al, al
mov ecx, dword [esp + 0x12c]
mov byte [edi + 0x7f], al
xor al, 1
pop edi
pop esi
xor ecx, esp
call fcn.1002f367
mov esp, ebp
pop ebp
ret