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

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100ba835
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ebx
sub esp, 0x138
mov edx, dword [0x10100d08]
push esi
push edi
mov dword [ebp - 0x50], ecx
mov eax, dword [edx + 0x1a40]
mov byte [eax + 0x85], 1
mov edi, dword [edx + 0x1a40]
mov dword [ebp - 0x40], edi
cmp byte [edi + 0x88], 0
jne 0x10072d6c
cmp dword [ebx + 8], 0
je 0x1007293c
cmp dword [ebx + 0xc], 0
jge 0x10072953
push 0x1030
push 0x100ec5e0
push 0x100ecfa8
call fcn.1009d619
add esp, 0xc
mov ecx, dword [ebx + 0x14]
mov eax, ecx
and eax, 0x100080
cmp eax, 0x100080
jne 0x1007297e
push 0x1031
push 0x100ec5e0
push 0x100ecef0
call fcn.1009d619
mov ecx, dword [ebx + 0x14]
add esp, 0xc
mov eax, ecx
and eax, 0x440
mov dword [ebp - 0x48], eax
cmp eax, 0x440
jne 0x100729a9
push 0x1032
push 0x100ec5e0
push 0x100ecff8
call fcn.1009d619
mov ecx, dword [ebx + 0x14]
add esp, 0xc
mov eax, ecx
mov esi, dword [0x10100d08]
shr eax, 0x14
and eax, 0xffffff01
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x38], eax
mov eax, ecx
shr eax, 0xe
and eax, 0xffffff01
mov dword [ebp - 0x3c], eax
mov eax, ecx
shr eax, 0xf
and eax, 0xffffff01
mov dword [ebp - 0xc0], eax
mov eax, ecx
shr eax, 0x10
not al
and eax, 0xffffff01
mov dword [ebp - 0x70], eax
mov eax, ecx
shr eax, 0x12
and al, 1
mov dword [ebp - 0x8c], eax
je 0x10072a11
push 0x103f
push 0x100ec5e0
push 0x100ecfdc
call fcn.1009d619
add esp, 0xc
cmp byte [ebp - 0x38], 0
je 0x10072a1c
call fcn.1004e220
mov ecx, dword [edi + 0xc4]
test ecx, ecx
jg 0x10072a43
push 0x528
push 0x100e6f38
push 0x100eaf38
call fcn.1009d619
mov ecx, dword [edi + 0xc4]
add esp, 0xc
mov eax, dword [edi + 0xcc]
xor edx, edx
push dword [eax + ecx*4 - 4]
mov ecx, dword [ebp - 0x50]
call fcn.100408d0
mov edx, dword [0x10100d08]
add esp, 4
mov dword [ebp - 0x2c], eax
cmp dword [edx + 0x1a74], eax
jne 0x10072a71
mov dword [edx + 0x1a78], eax
cmp dword [edx + 0x1aa8], eax
jne 0x10072a80
mov byte [edx + 0x1aac], 1
mov ecx, dword [ebp - 0x50]
mov dword [ebp - 0x58], eax
mov eax, ecx
cmp ecx, 0xffffffff
jae 0x10072aa9
nop dword [eax]
mov cl, byte [eax]
test cl, cl
je 0x10072aa6
cmp cl, 0x23
jne 0x10072aa0
cmp byte [eax + 1], cl
je 0x10072aa6
inc eax
cmp eax, 0xffffffff
jb 0x10072a90
mov ecx, dword [ebp - 0x50]
movss xmm0, dword [edx + 0x1904]
movss dword [ebp - 0x6c], xmm0
cmp ecx, eax
je 0x10072b09
movss xmm3, dword [0x100ee2c4]
movaps xmm2, xmm0
push ecx
push eax
push ecx
push ecx
mov ecx, dword [edx + 0x1900]
lea eax, [ebp - 0x60]
mov dword [esp], 0xbf800000
push eax
call fcn.10063920
movss xmm0, dword [ebp - 0x60]
addss xmm0, dword [0x100ee0dc]
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0xc8], xmm0
movss xmm0, dword [ebp - 0x5c]
movss dword [ebp - 0x6c], xmm0
mov eax, dword [ebx + 0x10]
mov edx, dword [ebp - 0x38]
movss xmm2, dword [0x100ee134]
movss dword [ebp - 0xe0], xmm2
movss xmm3, dword [eax]
movss xmm1, dword [eax + 4]
movss dword [ebp - 0x90], xmm3
movss dword [ebp - 0x94], xmm1
test dl, dl
je 0x10072b4e
movss xmm0, dword [esi + 0x1904]
mulss xmm0, dword [0x100ee1a4]
jmp 0x10072b52
mulss xmm0, xmm2
movss xmm5, dword [esi + 0x155c]
mov eax, dword [0x10100d08]
movaps xmm2, xmm5
addss xmm2, xmm5
test byte [eax + 0x1b14], 1
mov ecx, dword [eax + 0x1a40]
addss xmm2, xmm0
je 0x10072b83
movss xmm0, dword [eax + 0x1b18]
jmp 0x10072b8b
movss xmm0, dword [ecx + 0x1b0]
xorps xmm7, xmm7
comiss xmm7, xmm0
jbe 0x10072bd7
mov eax, dword [0x10100d08]
mov eax, dword [eax + 0x1a40]
cmp dword [eax + 0x198], 0
movss xmm1, dword [eax + 0x24c]
je 0x10072bb7
movss xmm1, dword [eax + 0x22c]
subss xmm1, dword [ecx + 0xd0]
addss xmm1, xmm0
movss xmm0, dword [0x100ee0ec]
maxss xmm0, xmm1
movss xmm1, dword [ebp - 0x94]
comiss xmm7, xmm3
cvttss2si eax, xmm0
xorps xmm0, xmm0
xorps xmm4, xmm4
movd xmm6, eax
mov eax, dword [0x10100d08]
cvtdq2ps xmm6, xmm6
mov ecx, dword [eax + 0x1a40]
ja 0x10072bfd
comiss xmm7, xmm1
jbe 0x10072c1e
cmp dword [ecx + 0x198], 0
movss xmm4, dword [ecx + 0x24c]
movss xmm0, dword [ecx + 0x250]
je 0x10072c1e
movss xmm4, dword [ecx + 0x22c]
movss xmm1, dword [0x100ee184]
ucomiss xmm3, xmm7
lahf
test ah, 0x44
jp 0x10072c3c
movaps xmm4, xmm6
movss dword [ebp - 0x90], xmm4
jmp 0x10072c6a
comiss xmm7, xmm3
jbe 0x10072c67
subss xmm4, dword [ecx + 0xd0]
addss xmm4, xmm3
comiss xmm1, xmm4
movss dword [ebp - 0x90], xmm4
jb 0x10072c6a
movaps xmm4, xmm1
movss dword [ebp - 0x90], xmm4
jmp 0x10072c6a
movaps xmm4, xmm3
movss xmm6, dword [ebp - 0x94]
ucomiss xmm6, xmm7
lahf
test ah, 0x44
jp 0x10072c80
movaps xmm6, xmm2
jmp 0x10072ca1
comiss xmm7, xmm6
jbe 0x10072ca9
subss xmm0, dword [ecx + 0xd4]
addss xmm6, xmm0
comiss xmm1, xmm6
movss dword [ebp - 0x94], xmm6
jb 0x10072ca9
movaps xmm6, xmm1
movss dword [ebp - 0x94], xmm6
movss xmm2, dword [edi + 0xd0]
movss xmm3, dword [edi + 0xd4]
movaps xmm1, xmm2
movss dword [ebp - 0x80], xmm2
movaps xmm0, xmm3
movss dword [ebp - 0x7c], xmm3
addss xmm1, xmm4
movss dword [ebp - 0xd0], xmm2
addss xmm0, xmm6
movss dword [ebp - 0xcc], xmm3
mov dword [ebp - 0x68], edi
movss dword [ebp - 0x78], xmm1
movaps xmm1, xmm3
movss dword [ebp - 0x74], xmm0
movaps xmm0, xmm2
addss xmm0, xmm4
addss xmm1, xmm6
movss dword [ebp - 0xc8], xmm0
movss dword [ebp - 0xc4], xmm1
test dl, dl
je 0x10072ecc
mov edx, dword [ebp - 0x2c]
lea eax, [ebp - 0x80]
push eax
lea ecx, [ebp - 0xd0]
call fcn.10043800
add esp, 4
test al, al
jne 0x10072d81
movss xmm0, dword [ebp - 0xc8]
lea ecx, [ebp - 0x60]
subss xmm0, dword [ebp - 0xd0]
movss xmm1, dword [esi + 0x155c]
movss dword [ebp - 0x60], xmm0
movss xmm0, dword [ebp - 0xc4]
subss xmm0, dword [ebp - 0xcc]
movss dword [ebp - 0x5c], xmm0
call fcn.10043680
call fcn.1004e370
xor al, al
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
mov eax, dword [0x10100d08]
mov ecx, dword [eax + 0x1b2c]
lea esi, [eax + 0x1b28]
mov dword [ebp - 0x24], eax
mov dword [ebp - 0xd4], 4
movups xmm0, xmmword [eax + 0x161c]
mov eax, dword [esi]
movups xmmword [ebp - 0xd0], xmm0
cmp eax, ecx
jne 0x10072dd9
lea edi, [eax + 1]
test ecx, ecx
je 0x10072dc5
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x10072dca
mov eax, 8
cmp eax, edi
mov ecx, esi
cmovg edi, eax
push edi
call fcn.1003a600
mov eax, dword [esi]
mov ecx, dword [esi + 8]
lea edx, [eax + eax*4]
movups xmm0, xmmword [ebp - 0xd4]
mov eax, dword [ebp - 0xc4]
movups xmmword [ecx + edx*4], xmm0
mov dword [ecx + edx*4 + 0x10], eax
mov ecx, 6
inc dword [esi]
mov esi, dword [ebp - 0x18]
mov eax, dword [ebp - 0x24]
movups xmm0, xmmword [esi + 0x165c]
movups xmmword [eax + 0x161c], xmm0
movss xmm1, dword [esi + 0x1568]
call fcn.1004d890
movss xmm1, dword [esi + 0x156c]
mov ecx, 7
call fcn.1004d890
lea edx, [esi + 0x1558]
mov ecx, 1
call fcn.1004d990
movss xmm1, dword [ebp - 0x78]
lea eax, [ebp - 0x60]
movss xmm0, dword [ebp - 0x74]
subss xmm1, dword [ebp - 0x80]
subss xmm0, dword [ebp - 0x7c]
mov edx, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x50]
push 0x10004
push 1
push eax
movss dword [ebp - 0x60], xmm1
movss dword [ebp - 0x5c], xmm0
call fcn.10046b20
add esp, 0xc
mov byte [ebp - 0x49], al
mov ecx, 3
call fcn.1004daa0
call fcn.1004d810
cmp byte [ebp - 0x49], 0
jne 0x10072e97
call fcn.100474b0
jmp 0x10072d67
mov edi, dword [esi + 0x1a40]
movss xmm0, dword [ebp - 0x90]
mov dword [ebp - 0x68], edi
subss xmm0, dword [edi + 0x78]
mov ecx, dword [edi + 0x148]
mov eax, dword [edi + 0x13c]
bts ecx, eax
mov dword [edi + 0x148], ecx
movss dword [ebp - 0x90], xmm0
jmp 0x10072f06
subss xmm1, xmm3
subss xmm0, xmm2
lea ecx, [ebp - 0x60]
movss dword [ebp - 0x5c], xmm1
movaps xmm1, xmm5
movss dword [ebp - 0x60], xmm0
call fcn.10043680
mov edx, dword [ebp - 0x2c]
lea eax, [ebp - 0x80]
push eax
lea ecx, [ebp - 0xd0]
call fcn.10043800
add esp, 4
test al, al
je 0x10072d6c
mov edx, dword [ebp - 0x2c]
lea ecx, [ebp - 0x80]
call fcn.100439c0
mov byte [ebp - 0x61], al
test al, al
je 0x10072f22
mov dword [esi + 0x1dc8], 1
mov edx, dword [ebp - 0x2c]
lea edi, [esi + 0x1e98]
xor ecx, ecx
cmp dword [esi + 0x1e98], edx
mov edx, dword [0x10100d08]
cmovne edi, ecx
mov ecx, dword [ebp - 0x40]
mov dword [ebp - 0x9c], edi
mov esi, dword [ecx + 0x1ac]
inc dword [ecx + 0x1a4]
and esi, 5
jne 0x10072f5c
inc dword [ecx + 0x1a8]
mov ecx, dword [edx + 0x1a74]
cmp ecx, dword [ebp - 0x2c]
jne 0x10072fc1
cmp byte [edx + 0x1c8c], 0
je 0x10072fc1
mov eax, dword [0x10100d08]
mov eax, dword [eax + 0x1a90]
and eax, 1
or eax, 0
jne 0x10072fc1
cmp dword [edx + 0x1c78], eax
jne 0x10072fc1
cmp byte [edx + 0x101], 0
mov eax, dword [ebp - 0x40]
mov dword [edx + 0x1c78], eax
je 0x10072fa8
mov ecx, esi
neg ecx
sbb ecx, ecx
neg ecx
dec ecx
jmp 0x10072fad
mov ecx, 1
mov eax, dword [eax + 0x1a8]
add eax, ecx
mov ecx, dword [edx + 0x1a74]
mov dword [edx + 0x1c88], eax
mov eax, dword [ebp - 0x40]
cmp dword [edx + 0x1c74], eax
jne 0x10073028
mov eax, dword [eax + 0x1a4]
cmp eax, dword [edx + 0x1c7c]
je 0x10072ff8
test esi, esi
jne 0x1007301e
mov eax, dword [ebp - 0x40]
mov eax, dword [eax + 0x1a8]
cmp eax, dword [edx + 0x1c80]
jne 0x1007301e
mov eax, dword [ebp - 0x2c]
mov dword [edx + 0x1b80], eax
mov esi, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x40]
cmp dword [esi + 0x1c74], ecx
jne 0x1007307a
mov eax, dword [esi + 0x1c7c]
cmp eax, dword [ecx + 0x1a4]
jne 0x1007307a
mov byte [ebp - 0x19], 1
mov byte [ebp - 0x12], 1
jmp 0x10073033
cmp ecx, dword [ebp - 0x2c]
jne 0x10073028
call fcn.10043600
mov esi, dword [ebp - 0x18]
mov byte [ebp - 0x12], 0
mov byte [ebp - 0x19], 0
mov byte [ebp - 0x27], 0
cmp byte [ebp - 0x61], 0
je 0x1007304a
cmp byte [esi + 0x3d8], 0
mov byte [ebp - 0x11], 1
jne 0x1007304e
mov byte [ebp - 0x11], 0
mov eax, dword [esi + 0x1a74]
mov ecx, dword [ebp - 0x2c]
cmp eax, ecx
je 0x10073088
cmp dword [esi + 0x1b7c], ecx
je 0x10073074
cmp dword [esi + 0x1b70], ecx
jne 0x10073088
cmp dword [esi + 0x1b90], 3
jne 0x10073088
mov byte [ebp - 0x1a], 1
jmp 0x1007308c
mov byte [ebp - 0x19], 0
mov byte [ebp - 0x27], 1
mov byte [ebp - 0x12], 1
jmp 0x10073037
mov byte [ebp - 0x1a], 0
cmp byte [ebp - 0x38], 0
je 0x100730ee
test edi, edi
je 0x100730ee
test eax, eax
jne 0x100730ee
mov eax, dword [ebp - 0x68]
mov ecx, dword [eax + 0xc4]
test ecx, ecx
jg 0x100730c7
push 0x528
push 0x100e6f38
push 0x100eaf38
call fcn.1009d619
mov eax, dword [ebp - 0x68]
add esp, 0xc
mov ecx, dword [eax + 0xc4]
mov eax, dword [eax + 0xcc]
xor edx, edx
push dword [eax + ecx*4 - 4]
mov ecx, 0x100ec6a0
call fcn.100408d0
add esp, 4
cmp dword [esi + 0x1aa8], eax
jne 0x100730ee
mov byte [ebp - 0x1c], 1
jmp 0x10073100
cmp byte [ebp - 0x38], 0
mov byte [ebp - 0x1c], 0
je 0x10073152
mov byte [ebp - 0x1c], 0
test edi, edi
je 0x10073152
mov eax, dword [ebp - 0x68]
mov ecx, dword [eax + 0xc4]
test ecx, ecx
jg 0x1007312d
push 0x528
push 0x100e6f38
push 0x100eaf38
call fcn.1009d619
mov eax, dword [ebp - 0x68]
add esp, 0xc
mov ecx, dword [eax + 0xc4]
mov eax, dword [eax + 0xcc]
xor edx, edx
push dword [eax + ecx*4 - 4]
mov ecx, 0x100ec6a0
call fcn.100408d0
add esp, 4
cmp dword [esi + 0x1a74], eax
jne 0x10073152
mov cl, 1
jmp 0x10073154
xor cl, cl
mov edx, dword [ebp - 0x2c]
mov eax, dword [esi + 0x1a74]
cmp eax, edx
mov dl, byte [ebp - 0x1a]
mov byte [ebp - 0x1d], cl
mov byte [ebp - 0x31], 0
je 0x1007317f
test byte [ebx + 0x14], 0x10
jne 0x10073175
test dl, dl
je 0x1007317f
cmp byte [ebp - 0x38], 0
mov byte [ebp - 0x30], 1
je 0x10073183
mov byte [ebp - 0x30], 0
cmp byte [ebp - 0x12], 0
jne 0x100731a8
cmp byte [ebp - 0x11], 0
jne 0x100731a8
cmp byte [ebp - 0x1c], 0
jne 0x100731a8
test dl, dl
jne 0x100731a8
mov byte [ebp - 0x12], dl
test cl, cl
jne 0x100731ac
mov byte [ebp - 0x26], cl
jmp 0x1007338c
mov byte [ebp - 0x12], 1
mov byte [ebp - 0x26], 1
mov dword [ebp - 0x9c], edi
cmp eax, dword [ebp - 0x2c]
je 0x1007338c
mov ecx, dword [ebx + 8]
lea edi, [esi + 0x1e98]
mov dword [ebp - 0x9c], edi
mov dword [edi + 0xe60], 0xbe99999a
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100731e0
mov eax, dword [edi + 0x28]
sub ecx, edx
lea esi, [ecx + 1]
cmp esi, eax
jle 0x1007321d
test eax, eax
je 0x10073206
cdq
sub eax, edx
lea edx, [edi + 0x24]
mov ecx, eax
sar ecx, 1
add ecx, dword [edx + 4]
jmp 0x1007320e
mov ecx, 8
lea edx, [edi + 0x24]
cmp ecx, esi
mov eax, esi
cmovg eax, ecx
mov ecx, edx
push eax
call fcn.10039220
push esi
push dword [ebx + 8]
mov dword [edi + 0x24], esi
push dword [edi + 0x2c]
call fcn.10091a80
mov edx, dword [ebx + 0xc]
lea eax, [edi + 0xc]
mov esi, dword [eax + 4]
inc edx
add esp, 0xc
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x24], edx
cmp edx, esi
jle 0x10073276
test esi, esi
je 0x1007325b
mov eax, esi
cdq
sub eax, edx
mov edx, dword [ebp - 0x24]
mov ecx, eax
sar ecx, 1
add ecx, esi
jmp 0x10073260
mov ecx, 8
cmp ecx, edx
mov eax, edx
cmovg eax, ecx
lea ecx, [edi + 0xc]
push eax
call fcn.1003a820
mov edx, dword [ebp - 0x24]
lea eax, [edi + 0xc]
mov dword [eax], edx
mov ecx, dword [edi + 0x1c]
test ecx, ecx
jns 0x10073298
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 + 0x18]
call fcn.10039220
mov esi, dword [ebx + 8]
lea eax, [ebp - 0x54]
mov edx, dword [ebx + 0xc]
push eax
push ecx
mov dword [edi + 0x18], 0
mov ecx, dword [edi + 0x14]
push esi
mov byte [edi + 0x30], 0
call fcn.10040df0
mov ecx, dword [ebp - 0x54]
mov edx, eax
mov eax, dword [ebp - 0x2c]
sub ecx, esi
add esp, 0xc
mov dword [edi + 4], edx
mov dword [edi + 8], ecx
cmp dword [edi], eax
jne 0x100732f2
cmp dword [edi + 0x3c], edx
mov ecx, edx
cmovl ecx, dword [edi + 0x3c]
cmp dword [edi + 0x40], edx
mov dword [edi + 0x3c], ecx
mov ecx, edx
cmovl ecx, dword [edi + 0x40]
cmp dword [edi + 0x44], edx
mov dword [edi + 0x40], ecx
cmovl edx, dword [edi + 0x44]
mov dword [edi + 0x44], edx
jmp 0x1007335f
mov edx, dword [ebp - 0x38]
mov dword [edi], eax
mov al, dl
xor al, 1
mov dword [edi + 0x38], 0
mov dword [edi + 0xe52], 0x630000
mov dword [edi + 0xe58], 0
mov dword [edi + 0xe5c], 0x3e7
mov dword [edi + 0x40], 0
mov dword [edi + 0x44], 0
mov dword [edi + 0x3c], 0
mov dword [edi + 0x48], 0x10000
mov dword [edi + 0x50], 0
mov byte [edi + 0x4c], al
test dl, dl
jne 0x10073362
mov edx, dword [ebp - 0x30]
mov eax, 1
cmp byte [ebp - 0x19], 0
movzx edx, dl
cmovne edx, eax
mov dword [ebp - 0x30], edx
mov edx, dword [ebp - 0x38]
test dword [ebx + 0x14], 0x2000
je 0x1007336f
mov byte [edi + 0x48], 1
mov esi, dword [ebp - 0x18]
test dl, dl
jne 0x1007338c
cmp byte [ebp - 0x27], dl
jne 0x10073388
cmp byte [ebp - 0x11], dl
je 0x1007338c
cmp byte [esi + 0x100], dl
je 0x1007338c
mov byte [ebp - 0x30], 1
mov eax, dword [ebp - 0x2c]
cmp dword [esi + 0x1a74], eax
je 0x10073452
cmp byte [ebp - 0x12], 0
je 0x10073452
test edi, edi
je 0x100733ad
cmp dword [edi], eax
je 0x100733c7
push 0x10b2
push 0x100ec5e0
push 0x100ed198
call fcn.1009d619
mov eax, dword [ebp - 0x2c]
add esp, 0xc
mov edx, dword [ebp - 0x40]
mov ecx, eax
call fcn.10043520
mov ecx, dword [ebp - 0x2c]
call fcn.10050390
mov ecx, dword [ebp - 0x40]
call fcn.1004cee0
mov eax, dword [esi + 0x1a88]
mov edx, dword [ebp - 0x38]
or eax, 3
mov dword [esi + 0x1a88], eax
test dl, dl
jne 0x100733fd
test byte [ebx + 0x14], 0x80
je 0x10073406
or eax, 0xc
mov dword [esi + 0x1a88], eax
mov eax, dword [esi + 0x1a90]
or dword [esi + 0x1a8c], 2
or eax, 0x180
mov ecx, dword [esi + 0x1a94]
mov dword [esi + 0x1a90], eax
mov dword [esi + 0x1a94], ecx
test dl, dl
je 0x1007343d
or eax, 0x60
mov dword [esi + 0x1a94], ecx
mov dword [esi + 0x1a90], eax
cmp dword [ebp - 0x48], 0
je 0x10073452
or eax, 1
mov dword [esi + 0x1a94], ecx
mov dword [esi + 0x1a90], eax
mov eax, dword [esi + 0x1a74]
mov ecx, dword [ebp - 0x2c]
cmp eax, ecx
jne 0x10073492
test edi, edi
jne 0x10073475
call fcn.10043600
mov eax, dword [esi + 0x1a74]
mov ecx, dword [ebp - 0x2c]
cmp eax, ecx
jne 0x10073492
cmp byte [esi + 0x3d8], 0
je 0x1007349c
cmp byte [ebp - 0x26], 0
jne 0x1007349c
cmp byte [ebp - 0x12], 0
jne 0x1007349c
mov byte [ebp - 0x31], 1
mov dl, 1
jmp 0x100734a2
test edi, edi
je 0x100734a0
cmp byte [ebp - 0x1d], 0
je 0x100734a0
mov dl, 1
jmp 0x100734a2
xor dl, dl
mov byte [ebp - 0x19], dl
test edi, edi
je 0x100734b9
mov eax, dword [edi + 0x40]
cmp eax, dword [edi + 0x44]
je 0x100734b9
test dl, dl
je 0x100734b9
mov al, 1
jmp 0x100734bb
xor al, al
cmp byte [ebp - 0x3c], 0
mov byte [ebp - 0x1b], al
mov byte [ebp - 0x27], 0
mov byte [ebp - 0x1c], 0
je 0x10073589
test edi, edi
je 0x10073589
test dl, dl
jne 0x100734e4
test al, al
je 0x10073591
mov edx, dword [ebx + 0xc]
lea eax, [edi + 0xc]
mov esi, dword [eax + 4]
inc edx
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x24], edx
cmp edx, esi
jle 0x1007352b
test esi, esi
je 0x10073510
mov eax, esi
cdq
sub eax, edx
mov edx, dword [ebp - 0x24]
mov ecx, eax
sar ecx, 1
add ecx, esi
jmp 0x10073515
mov ecx, 8
cmp ecx, edx
mov eax, edx
cmovg eax, ecx
lea ecx, [edi + 0xc]
push eax
call fcn.1003a820
mov edx, dword [ebp - 0x24]
lea eax, [edi + 0xc]
mov dword [eax], edx
lea eax, [ebp - 0x54]
push eax
push ecx
push dword [ebx + 8]
mov ecx, dword [edi + 0x14]
call fcn.10040df0
mov ecx, dword [ebp - 0x54]
mov esi, eax
sub ecx, dword [ebx + 8]
add esp, 0xc
cmp dword [edi + 0x3c], esi
mov edx, esi
movzx eax, byte [ebp - 0x1b]
cmovl edx, dword [edi + 0x3c]
cmp dword [edi + 0x40], esi
mov dword [edi + 0x3c], edx
mov edx, esi
cmovl edx, dword [edi + 0x40]
cmp dword [edi + 0x44], esi
mov dword [edi + 4], esi
cmovl esi, dword [edi + 0x44]
mov dword [edi + 8], ecx
xor ecx, ecx
cmp edx, esi
mov dword [edi + 0x40], edx
mov dl, byte [ebp - 0x19]
cmovne ecx, eax
mov dword [edi + 0x44], esi
mov esi, dword [ebp - 0x18]
mov al, cl
mov ecx, dword [ebp - 0x2c]
mov byte [ebp - 0x1b], al
test dl, dl
jne 0x10073599
test al, al
jne 0x10073599
cmp dword [esi + 0x1a74], ecx
jne 0x100735ad
cmp byte [ebp - 0x3c], 0
jne 0x100735ad
test edi, edi
je 0x100735ad
cmp byte [edi + 0x30], 0
mov byte [ebp - 0x49], 1
jne 0x100735b1
mov byte [ebp - 0x49], 0
cmp byte [ebp - 0xc0], 0
je 0x1007367d
mov edx, dword [esi + 0x1900]
cmp dword [edx + 0x14], 0x2a
jg 0x100735cf
mov eax, dword [edx + 0x2c]
jmp 0x100735ee
mov eax, dword [edx + 0x1c]
mov ecx, 0xffff
movzx eax, word [eax + 0x54]
cmp ax, cx
jne 0x100735e5
mov eax, dword [edx + 0x2c]
jmp 0x100735ee
lea ecx, [eax + eax*4]
mov eax, dword [edx + 0x28]
lea eax, [eax + ecx*8]
mov dword [ebp - 0x48], eax
add esi, 0x2d0c
mov eax, dword [edx + 0x10]
mov edx, dword [ebp - 0x18]
cmp dword [esi + 0x20], 0
mov dword [esi + 0x10], eax
mov eax, dword [edx + 0x1900]
mov eax, dword [eax + 0x48]
mov dword [esi + 0x48], eax
mov eax, dword [edx + 0x1900]
mov ecx, dword [eax + 0x30]
mov eax, dword [eax + 0x34]
mov dword [esi + 0x34], eax
mov dword [esi + 0x30], ecx
mov eax, dword [edx + 0x1900]
mov eax, dword [eax + 0x4c]
mov dword [esi + 0x4c], eax
mov eax, dword [edx + 0x1900]
mov eax, dword [eax + 0x50]
mov dword [esi + 0x50], eax
mov eax, dword [edx + 0x1900]
mov eax, dword [eax + 0x38]
mov dword [esi + 0x38], eax
mov eax, dword [ebp - 0x48]
mov dword [esi + 0x2c], eax
mov eax, dword [eax + 4]
mov dword [esi + 0xc], eax
jne 0x1007365f
cmp dword [esi], 0
jne 0x1007365f
cmp dword [esi + 0x14], 0
je 0x10073676
push 0x10ef
push 0x100ec5e0
push 0x100ed0c0
call fcn.1009d619
add esp, 0xc
mov ecx, esi
call fcn.1004d4a0
mov esi, dword [ebp - 0x18]
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x98], 0
cmp dword [esi + 0x1a74], eax
jne 0x10073aa1
test edi, edi
jne 0x100736b4
push 0x10f7
push 0x100ec5e0
push 0x100ed220
call fcn.1009d619
add esp, 0xc
mov eax, dword [edi + 8]
mov dword [ebp - 0x98], eax
mov eax, dword [ebx + 0xc]
mov dword [edi + 0x34], eax
mov eax, dword [ebx + 0x14]
mov dword [edi + 0xe68], eax
mov dword [edi + 0xe6c], 0
mov dword [edi + 0xe70], 0
mov cl, byte [esi + 0xf0]
test cl, cl
mov dword [esi + 0x3008], 1
sete al
cmp byte [ebp - 0x38], 0
mov byte [esi + 0x1a81], al
movss xmm7, dword [esi + 0xe8]
subss xmm7, dword [ebp - 0x80]
subss xmm7, dword [esi + 0x1558]
addss xmm7, dword [edi + 0x38]
je 0x10073744
mov eax, dword [ebp - 0x68]
movss xmm2, dword [esi + 0xec]
movss xmm0, dword [esi + 0x155c]
addss xmm0, dword [0x100ee18c]
subss xmm2, dword [eax + 0xd4]
subss xmm2, xmm0
jmp 0x10073754
movss xmm2, dword [esi + 0x1904]
mulss xmm2, dword [0x100ee098]
cmp byte [ebp - 0x30], 0
mov dl, byte [esi + 0xb1]
mov byte [ebp - 0x12], dl
jne 0x100738c6
mov ah, byte [ebp - 0x61]
test ah, ah
je 0x10073780
mov al, byte [esi + 0x3dd]
test dl, dl
jne 0x100737eb
test al, al
jne 0x100738c6
cmp byte [esi + 0x3d8], 0
mov al, byte [edi + 0xe65]
je 0x1007383d
test al, al
jne 0x1007383d
test ah, ah
je 0x100738e1
cmp byte [edi + 0x4c], al
je 0x100737c2
push 0
mov edx, edi
lea ecx, [ebp - 0xd8]
call fcn.10070c40
movss xmm2, dword [ebp - 0xcc]
add esp, 4
movaps xmm1, xmm7
mov ecx, edi
call fcn.10070f90
mov dl, byte [ebp - 0x12]
mov dword [edi + 0x3c], eax
mov dword [edi + 0x40], eax
mov dword [edi + 0x44], eax
mov byte [edi + 0x4b], 0
mov dword [edi + 0xe60], 0xbe99999a
jmp 0x100738e1
test al, al
je 0x10073780
push 0x20000c
lea edx, [edi + 0x3c]
mov ecx, edi
call fcn.10071460
add esp, 4
mov byte [edi + 0xe64], 1
lea edx, [edi + 0x3c]
mov dword [edi + 0xe60], 0xbe99999a
mov ecx, edi
push 0x60000d
call fcn.10071460
mov dl, byte [ebp - 0x12]
add esp, 4
mov byte [edi + 0xe64], 1
mov dword [edi + 0xe60], 0xbe99999a
jmp 0x100738e1
test cl, cl
je 0x100738e1
test al, al
jne 0x100738e1
movss xmm0, dword [esi + 0x378]
xorps xmm1, xmm1
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x10073872
movss xmm0, dword [esi + 0x37c]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jnp 0x100738e1
cmp byte [edi + 0x4c], 0
je 0x10073892
push 0
mov edx, edi
lea ecx, [ebp - 0xd8]
call fcn.10070c40
movss xmm2, dword [ebp - 0xcc]
add esp, 4
mov eax, dword [edi + 0x40]
cmp eax, dword [edi + 0x44]
jne 0x100738a0
mov eax, dword [edi + 0x3c]
mov dword [edi + 0x40], eax
movaps xmm1, xmm7
mov ecx, edi
call fcn.10070f90
mov dl, byte [ebp - 0x12]
mov dword [edi + 0x44], eax
mov dword [edi + 0x3c], eax
mov dword [edi + 0xe60], 0xbe99999a
mov byte [edi + 0xe64], 1
jmp 0x100738e1
mov eax, dword [edi + 4]
mov dword [edi + 0x40], 0
mov dword [edi + 0x44], eax
mov dword [edi + 0x3c], eax
mov byte [edi + 0x4b], 0
mov byte [edi + 0xe65], 1
cmp byte [edi + 0xe65], 0
je 0x100738fa
cmp byte [esi + 0xf0], 0
jne 0x100738fa
mov byte [edi + 0xe65], 0
cmp byte [esi + 0x100], 0
je 0x1007390c
cmp byte [esi + 0x102], 0
je 0x10073919
test dl, dl
je 0x1007391f
cmp byte [esi + 0x103], 0
je 0x1007391f
mov byte [ebp - 0x11], 1
jmp 0x10073923
mov byte [ebp - 0x11], 0
test dword [ebx + 0x14], 0x400
je 0x100739be
mov eax, dword [0x10100d08]
mov ecx, dword [eax + 0x34]
test ecx, ecx
js 0x100739be
call fcn.100468b0
mov cl, byte [ebp - 0x11]
mov edx, dword [ebp - 0x3c]
test al, al
je 0x100739c4
test cl, cl
jne 0x100739c4
cmp byte [esi + 0x101], cl
jne 0x100739c4
test dl, dl
jne 0x100739c4
mov ecx, dword [esi + 0x1508]
mov eax, dword [esi + 0x1500]
lea edx, [ecx + eax*2]
cmp ecx, edx
jae 0x10073981
movzx eax, word [ecx]
add ecx, 2
cmp eax, 9
je 0x100739be
cmp ecx, edx
jb 0x10073972
mov edx, dword [ebx + 0x14]
lea ecx, [ebp - 0x24]
sub esp, 8
mov dword [ebp - 0x24], 9
call fcn.10072740
add esp, 8
test al, al
je 0x100739be
push dword [ebp - 0x24]
lea edx, [edi + 0x3c]
mov ecx, edi
call fcn.10071460
add esp, 4
mov byte [edi + 0xe64], 1
mov dword [edi + 0xe60], 0xbe99999a
mov edx, dword [ebp - 0x3c]
mov cl, byte [ebp - 0x11]
mov eax, dword [esi + 0x1500]
add esi, 0x1500
mov dword [ebp - 0x54], esi
test eax, eax
jle 0x10073a9e
test cl, cl
jne 0x10073a79
test dl, dl
jne 0x10073a79
cmp byte [ebp - 0x1a], dl
jne 0x10073a79
xor esi, esi
cmp esi, eax
jl 0x10073a11
push 0x51e
push 0x100e6f38
push 0x100e8330
call fcn.1009d619
add esp, 0xc
mov eax, dword [ebp - 0x18]
mov eax, dword [eax + 0x1508]
movzx eax, word [eax + esi*2]
mov dword [ebp - 0x24], eax
cmp eax, 9
jne 0x10073a32
mov eax, dword [ebp - 0x18]
cmp byte [eax + 0x101], 0
jne 0x10073a6b
mov edx, dword [ebx + 0x14]
lea ecx, [ebp - 0x24]
sub esp, 8
call fcn.10072740
add esp, 8
test al, al
je 0x10073a68
push dword [ebp - 0x24]
lea edx, [edi + 0x3c]
mov ecx, edi
call fcn.10071460
add esp, 4
mov byte [edi + 0xe64], 1
mov dword [edi + 0xe60], 0xbe99999a
mov eax, dword [ebp - 0x18]
mov eax, dword [eax + 0x1500]
inc esi
cmp esi, eax
jl 0x10073a11
mov esi, dword [ebp - 0x54]
mov ecx, dword [esi + 4]
test ecx, ecx
jns 0x10073a98
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
xor ecx, ecx
test eax, eax
cmovg ecx, eax
push ecx
mov ecx, esi
call fcn.1003a820
mov dword [esi], 0
mov esi, dword [ebp - 0x18]
mov eax, dword [esi + 0x1a74]
mov byte [ebp - 0x82], 0
cmp eax, dword [ebp - 0x2c]
jne 0x1007449c
cmp byte [esi + 0x1a80], 0
jne 0x100744a7
cmp byte [ebp - 0x31], 0
jne 0x100744a7
test edi, edi
jne 0x10073ae9
push 0x1147
push 0x100ec5e0
push 0x100ed220
call fcn.1009d619
add esp, 0xc
mov ch, byte [esi + 0x101]
mov eax, 0x400000
xor esi, esi
test ch, ch
cmovne esi, eax
mov eax, dword [ebp - 0x18]
mov dh, byte [eax + 0xb1]
mov cl, byte [eax + 0x100]
mov byte [ebp - 0x9d], dh
test dh, dh
je 0x10073b37
cmp byte [eax + 0x103], 0
je 0x10073b2a
test cl, cl
jne 0x10073b2a
mov eax, 1
xor dl, dl
jmp 0x10073b2e
xor eax, eax
mov dl, cl
test eax, eax
je 0x10073b59
mov eax, dword [ebp - 0x18]
jmp 0x10073b46
test cl, cl
je 0x10073b57
cmp byte [eax + 0x103], 0
jne 0x10073b57
mov dl, cl
cmp byte [eax + 0x102], 0
jne 0x10073b59
test ch, ch
jne 0x10073b59
mov ah, 1
jmp 0x10073b5b
mov dl, cl
xor ah, ah
mov byte [ebp - 0x11], ah
mov al, dl
test dh, dh
je 0x10073b97
mov edi, dword [ebp - 0x18]
cmp byte [edi + 0x103], 0
mov edi, dword [ebp - 0x9c]
je 0x10073b97
test ch, ch
je 0x10073b97
mov al, cl
test cl, cl
jne 0x10073b97
mov edi, dword [ebp - 0x18]
cmp byte [edi + 0x102], cl
mov edi, dword [ebp - 0x9c]
jne 0x10073b97
mov byte [ebp - 0x1d], 1
jmp 0x10073ba3
mov byte [ebp - 0x1d], 0
test dh, dh
je 0x10073c4e
mov edx, dword [ebp - 0x18]
cmp byte [edx + 0x103], 0
mov cl, byte [edx + 0x102]
mov byte [ebp - 0x12], cl
je 0x10073c58
test al, al
jne 0x10073c58
test cl, cl
jne 0x10073c58
mov byte [ebp - 0x1a], 1
mov byte [ebp - 0x32], 0
test ch, ch
je 0x10073bf0
test al, al
jne 0x10073bf0
cmp byte [edx + 0x102], al
jne 0x10073bf0
mov byte [ebp - 0x25], 1
cmp byte [edx + 0x103], al
je 0x10073bf4
mov byte [ebp - 0x25], 0
test ah, ah
je 0x10073c10
mov eax, dword [0x10100d08]
mov ecx, dword [eax + 0x80]
test ecx, ecx
js 0x10073c10
call fcn.100468b0
test al, al
jne 0x10073c2b
cmp byte [ebp - 0x25], 0
je 0x10073c8d
mov eax, dword [0x10100d08]
mov ecx, dword [eax + 0x5c]
test ecx, ecx
js 0x10073c8d
call fcn.100468b0
test al, al
je 0x10073c8d
cmp byte [ebp - 0x3c], 0
jne 0x10073c8d
cmp byte [ebp - 0xc0], 0
jne 0x10073c8d
cmp byte [ebp - 0x38], 0
je 0x10073c48
mov eax, dword [edi + 0x40]
cmp eax, dword [edi + 0x44]
je 0x10073c8d
mov byte [ebp - 0x26], 1
jmp 0x10073c91
mov edx, dword [ebp - 0x18]
mov byte [ebp - 0x12], al
mov byte [ebp - 0x1d], 0
mov byte [ebp - 0x1a], 0
test al, al
je 0x10073bd0
test ch, ch
jne 0x10073bd0
cmp byte [edx + 0x102], ch
jne 0x10073bd0
cmp byte [edx + 0x103], ch
jne 0x10073bd0
mov byte [ebp - 0x32], 1
jmp 0x10073bf0
mov byte [ebp - 0x26], 0
cmp byte [ebp - 0x11], 0
je 0x10073cac
mov eax, dword [0x10100d08]
mov ecx, dword [eax + 0x78]
test ecx, ecx
js 0x10073cac
call fcn.100468b0
test al, al
jne 0x10073cc7
cmp byte [ebp - 0x32], 0
je 0x10073ce7
mov eax, dword [0x10100d08]
mov ecx, dword [eax + 0x58]
test ecx, ecx
js 0x10073ce7
call fcn.100468b0
test al, al
je 0x10073ce7
cmp byte [ebp - 0xc0], 0
jne 0x10073ce7
cmp byte [ebp - 0x38], 0
je 0x10073cde
mov eax, dword [edi + 0x40]
cmp eax, dword [edi + 0x44]
je 0x10073ce7
mov byte [ebp - 0x81], 1
jmp 0x10073cee
mov byte [ebp - 0x81], 0
cmp byte [ebp - 0x11], 0
je 0x10073d09
mov eax, dword [0x10100d08]
mov ecx, dword [eax + 0x7c]
test ecx, ecx
js 0x10073d09
call fcn.100468b0
test al, al
jne 0x10073d24
cmp byte [ebp - 0x25], 0
je 0x10073d2e
mov eax, dword [0x10100d08]
mov ecx, dword [eax + 0x58]
test ecx, ecx
js 0x10073d2e
call fcn.100468b0
test al, al
je 0x10073d2e
cmp byte [ebp - 0x3c], 0
mov byte [ebp - 0x25], 1
je 0x10073d32
mov byte [ebp - 0x25], 0
mov dl, byte [ebp - 0x11]
test dl, dl
je 0x10073d66
mov eax, dword [0x10100d08]
mov ecx, dword [eax + 0x88]
test ecx, ecx
js 0x10073d66
call fcn.100468b0
test al, al
je 0x10073d63
cmp byte [ebp - 0x3c], 0
jne 0x10073d63
cmp byte [ebp - 0x70], 0
je 0x10073d63
mov byte [ebp - 0x32], 1
jmp 0x10073d6e
mov dl, byte [ebp - 0x11]
mov byte [ebp - 0x32], 0
test dl, dl
je 0x10073d86
mov eax, dword [0x10100d08]
mov ecx, dword [eax + 0x84]
test ecx, ecx
js 0x10073d86
call fcn.100468b0
test al, al
jne 0x10073da4
cmp byte [ebp - 0x1d], 0
je 0x10073db4
mov eax, dword [0x10100d08]
mov ecx, dword [eax + 0x88]
test ecx, ecx
js 0x10073db4
call fcn.100468b0
test al, al
je 0x10073db4
cmp byte [ebp - 0x3c], 0
jne 0x10073db4
cmp byte [ebp - 0x70], 0
mov byte [ebp - 0x1d], 1
jne 0x10073db8
mov byte [ebp - 0x1d], 0
mov eax, dword [0x10100d08]
mov ecx, dword [eax + 0x38]
test ecx, ecx
js 0x10073e0d
call fcn.100468b0
test al, al
je 0x10073e0d
cmp byte [ebp - 0x1a], 0
je 0x10073dea
mov eax, 0x200004
lea edx, [edi + 0x3c]
or esi, eax
mov ecx, edi
push esi
call fcn.10071460
jmp 0x10074468
cmp byte [ebp - 0x12], 0
lea edx, [edi + 0x3c]
mov ecx, 0x20000c
mov eax, 0x200000
cmovne eax, ecx
mov ecx, edi
or esi, eax
push esi
call fcn.10071460
jmp 0x10074468
mov eax, dword [0x10100d08]
mov ecx, dword [eax + 0x3c]
test ecx, ecx
js 0x10073e62
call fcn.100468b0
test al, al
je 0x10073e62
cmp byte [ebp - 0x1a], 0
je 0x10073e3f
mov eax, 0x200005
lea edx, [edi + 0x3c]
or esi, eax
mov ecx, edi
push esi
call fcn.10071460
jmp 0x10074468
cmp byte [ebp - 0x12], 0
lea edx, [edi + 0x3c]
mov ecx, 0x20000d
mov eax, 0x200001
cmovne eax, ecx
mov ecx, edi
or esi, eax
push esi
call fcn.10071460
jmp 0x10074468
mov eax, dword [0x10100d08]
mov ecx, dword [eax + 0x40]
test ecx, ecx
js 0x10073ed0
call fcn.100468b0
test al, al
je 0x10073ed0
cmp byte [ebp - 0x38], 0
je 0x10073ed0
mov eax, dword [ebp - 0x18]
cmp byte [eax + 0x100], 0
je 0x10073eb3
mov ecx, dword [ebp - 0x68]
mov esi, eax
xorps xmm1, xmm1
movss xmm0, dword [ecx + 0x54]
subss xmm0, dword [esi + 0x1904]
mov dword [ecx + 0x74], 0
maxss xmm0, xmm1
movss dword [ecx + 0x6c], xmm0
jmp 0x1007447f
movzx eax, byte [ebp - 0x1a]
lea edx, [edi + 0x3c]
mov ecx, edi
lea eax, [eax*4 + 0x200002]
or eax, esi
push eax
call fcn.10071460
jmp 0x10074468
mov eax, dword [0x10100d08]
mov ecx, dword [eax + 0x44]
test ecx, ecx
js 0x10073f48
call fcn.100468b0
test al, al
je 0x10073f48
cmp byte [ebp - 0x38], 0
je 0x10073f48
mov eax, dword [ebp - 0x18]
cmp byte [eax + 0x100], 0
je 0x10073f2b
mov esi, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x68]
mov eax, dword [0x10100d08]
movss xmm0, dword [esi + 0x1904]
addss xmm0, dword [ecx + 0x54]
mov eax, dword [eax + 0x1a40]
minss xmm0, dword [eax + 0x64]
mov dword [ecx + 0x74], 0
movss dword [ecx + 0x6c], xmm0
jmp 0x1007447f
movzx eax, byte [ebp - 0x1a]
lea edx, [edi + 0x3c]
mov ecx, edi
lea eax, [eax*4 + 0x200003]
or eax, esi
push eax
call fcn.10071460
jmp 0x10074468
mov eax, dword [0x10100d08]
mov ecx, dword [eax + 0x50]
test ecx, ecx
js 0x10073f87
call fcn.100468b0
test al, al
je 0x10073f87
mov ecx, dword [ebp - 0x18]
lea edx, [edi + 0x3c]
mov eax, esi
or esi, 0x200004
or eax, 0x200006
cmp byte [ecx + 0x100], 0
mov ecx, edi
cmovne esi, eax
push esi
call fcn.10071460
jmp 0x10074468
mov eax, dword [0x10100d08]
mov ecx, dword [eax + 0x54]
test ecx, ecx
js 0x10073fc6
call fcn.100468b0
test al, al
je 0x10073fc6
mov ecx, dword [ebp - 0x18]
lea edx, [edi + 0x3c]
mov eax, esi
or esi, 0x200005
or eax, 0x200007
cmp byte [ecx + 0x100], 0
mov ecx, edi
cmovne esi, eax
push esi
call fcn.10071460
jmp 0x10074468
mov eax, dword [0x10100d08]
mov ecx, dword [eax + 0x5c]
test ecx, ecx
js 0x10073ff7
call fcn.100468b0
test al, al
je 0x10073ff7
cmp byte [ebp - 0x3c], 0
jne 0x10073ff7
or esi, 0x200008
lea edx, [edi + 0x3c]
push esi
mov ecx, edi
call fcn.10071460
jmp 0x10074468
mov eax, dword [0x10100d08]
mov ecx, dword [eax + 0x60]
test ecx, ecx
js 0x1007408f
call fcn.100468b0
test al, al
je 0x1007408f
cmp byte [ebp - 0x3c], 0
jne 0x1007408f
mov eax, dword [edi + 0x40]
cmp eax, dword [edi + 0x44]
jne 0x10074079
cmp byte [ebp - 0x12], 0
je 0x1007402f
push 0x60000c
jmp 0x1007405b
cmp byte [ebp - 0x9d], 0
je 0x10074079
mov eax, dword [ebp - 0x18]
cmp byte [eax + 0x103], 0
je 0x10074079
cmp byte [eax + 0x102], 0
jne 0x10074079
cmp byte [eax + 0x100], 0
jne 0x10074079
push 0x600004
lea edx, [edi + 0x3c]
mov ecx, edi
call fcn.10071460
mov dword [edi + 0xe60], 0xbe99999a
add esp, 4
mov byte [edi + 0xe64], 1
or esi, 0x200009
lea edx, [edi + 0x3c]
push esi
mov ecx, edi
call fcn.10071460
jmp 0x10074468
mov eax, dword [0x10100d08]
mov ecx, dword [eax + 0x68]
test ecx, ecx
js 0x100740a4
call fcn.100468b0
test al, al
jne 0x100740bd
mov eax, dword [0x10100d08]
mov ecx, dword [eax + 0x70]
test ecx, ecx
js 0x1007413c
call fcn.100468b0
test al, al
je 0x1007413c
mov edx, dword [ebx + 0x14]
mov eax, edx
mov esi, dword [ebp - 0x18]
shr eax, 0xb
and al, 1
cmp byte [ebp - 0x38], 0
je 0x100740de
mov cl, byte [esi + 0x100]
test al, al
je 0x100740eb
test cl, cl
jne 0x100740ef
mov byte [ebp - 0x31], 1
mov byte [ebp - 0x1c], 1
jmp 0x1007447f
test cl, cl
jne 0x100740de
cmp byte [ebp - 0x3c], 0
jne 0x1007447f
sub esp, 8
mov dword [ebp - 0x24], 0xa
lea ecx, [ebp - 0x24]
call fcn.10072740
add esp, 8
test al, al
je 0x1007447f
push dword [ebp - 0x24]
lea edx, [edi + 0x3c]
mov ecx, edi
call fcn.10071460
add esp, 4
mov byte [edi + 0xe64], 1
mov dword [edi + 0xe60], 0xbe99999a
jmp 0x1007447f
mov eax, dword [0x10100d08]
mov ecx, dword [eax + 0x6c]
test ecx, ecx
js 0x10074161
call fcn.100468b0
test al, al
je 0x10074161
mov byte [ebp - 0x82], 1
mov byte [ebp - 0x31], 1
jmp 0x1007447c
mov al, byte [ebp - 0x32]
test al, al
jne 0x10074449
cmp byte [ebp - 0x1d], al
jne 0x10074449
cmp byte [ebp - 0x11], al
je 0x100741a8
mov eax, dword [0x10100d08]
mov ecx, dword [eax + 0x74]
test ecx, ecx
js 0x100741a8
call fcn.100468b0
test al, al
je 0x100741a8
mov eax, dword [edi + 4]
mov dword [edi + 0x40], 0
mov dword [edi + 0x44], eax
mov dword [edi + 0x3c], eax
mov byte [edi + 0x4b], 0
jmp 0x10074475
mov al, byte [ebp - 0x26]
test al, al
jne 0x10074342
cmp byte [ebp - 0x81], al
jne 0x10074342
cmp byte [ebp - 0x25], al
je 0x1007447c
mov eax, dword [0x10100d08]
mov ecx, dword [eax + 0xd0]
test ecx, ecx
je 0x100741ed
push dword [eax + 0xd8]
call ecx
mov esi, eax
add esp, 4
test esi, esi
jne 0x100741f2
jmp 0x1007447c
mov esi, 0x100c87bb
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100741f7
mov eax, dword [0x10100d08]
sub ecx, edx
test eax, eax
je 0x1007420f
inc dword [eax + 0x374]
push dword [0x10100d00]
lea eax, [ecx*2 + 2]
push eax
call fcn.10040070
mov ecx, eax
add esp, 8
xor eax, eax
mov dword [ebp - 0x44], ecx
mov dword [ebp - 0x30], eax
cmp byte [esi], al
je 0x10074281
xor edi, edi
push 0
mov edx, esi
lea ecx, [ebp - 0x48]
call fcn.10040c50
add esp, 4
add esi, eax
cmp dword [ebp - 0x48], 0
je 0x10074272
mov edx, dword [ebx + 0x14]
lea ecx, [ebp - 0x48]
sub esp, 8
call fcn.10072740
add esp, 8
test al, al
je 0x1007426d
mov ecx, dword [ebp - 0x44]
mov ax, word [ebp - 0x48]
mov word [ecx + edi*2], ax
inc edi
cmp byte [esi], 0
jne 0x10074235
mov ecx, dword [ebp - 0x44]
mov dword [ebp - 0x30], edi
mov edi, dword [ebp - 0x9c]
mov eax, dword [ebp - 0x30]
xor edx, edx
mov word [ecx + eax*2], dx
test eax, eax
jle 0x1007431b
mov edx, dword [edi + 0x44]
mov ecx, dword [edi + 0x40]
mov eax, dword [edi + 4]
cmp ecx, edx
je 0x100742b5
cmp ecx, eax
jle 0x100742a5
mov dword [edi + 0x40], eax
mov ecx, eax
cmp edx, eax
jle 0x100742ae
mov dword [edi + 0x44], eax
mov edx, eax
cmp ecx, edx
jne 0x100742b5
mov dword [edi + 0x3c], ecx
cmp dword [edi + 0x3c], eax
jle 0x100742bd
mov dword [edi + 0x3c], eax
lea edx, [edi + 0x3c]
mov ecx, edi
call fcn.100713d0
push dword [ebp - 0x30]
mov edx, dword [edi + 0x3c]
mov ecx, edi
push dword [ebp - 0x44]
call fcn.10070e10
add esp, 8
test al, al
je 0x100742fd
push dword [ebp - 0x30]
mov edx, dword [edi + 0x3c]
lea ecx, [edi + 0x54]
push 0
call fcn.10072360
mov eax, dword [ebp - 0x30]
add esp, 8
add dword [edi + 0x3c], eax
mov byte [edi + 0x4b], 0
jmp 0x10074311
movzx eax, word [edi + 0xe52]
test ax, ax
je 0x10074311
dec eax
mov word [edi + 0xe52], ax
mov ecx, dword [ebp - 0x44]
mov byte [edi + 0xe64], 1
test ecx, ecx
je 0x1007432e
mov eax, dword [0x10100d08]
test eax, eax
je 0x1007432e
dec dword [eax + 0x374]
push dword [0x10100d00]
push ecx
call fcn.10040080
add esp, 8
jmp 0x1007447c
mov esi, dword [ebp - 0x18]
cmp dword [esi + 0xd4], 0
je 0x10074406
mov ecx, dword [edi + 0x44]
mov eax, dword [edi + 0x40]
cmp eax, ecx
je 0x10074366
mov edx, ecx
cmovl ecx, eax
cmovge edx, eax
jmp 0x1007436b
mov edx, dword [edi + 4]
xor ecx, ecx
mov eax, dword [edi + 0x14]
mov dword [ebp - 0x54], ecx
mov dword [ebp - 0x24], edx
lea edx, [eax + edx*2]
lea ecx, [eax + ecx*2]
call fcn.10040fe0
lea ecx, [eax + 1]
mov eax, dword [0x10100d08]
mov dword [ebp - 0x48], ecx
test eax, eax
je 0x10074394
inc dword [eax + 0x374]
push dword [0x10100d00]
push ecx
call fcn.10040070
mov esi, dword [edi + 0x14]
mov ecx, dword [ebp - 0x24]
mov edx, dword [ebp - 0x48]
mov dword [ebp - 0x70], eax
lea ecx, [esi + ecx*2]
push ecx
mov ecx, dword [ebp - 0x54]
lea ecx, [esi + ecx*2]
mov esi, eax
push ecx
mov ecx, esi
call fcn.10040eb0
mov eax, dword [0x10100d08]
add esp, 0x10
mov ecx, dword [eax + 0xd4]
test ecx, ecx
je 0x100743e3
push esi
push dword [eax + 0xd8]
call ecx
mov eax, dword [0x10100d08]
add esp, 8
test esi, esi
je 0x100743f1
test eax, eax
je 0x100743f1
dec dword [eax + 0x374]
push dword [0x10100d00]
push esi
call fcn.10040080
mov al, byte [ebp - 0x26]
add esp, 8
mov esi, dword [ebp - 0x18]
test al, al
je 0x1007447f
mov eax, dword [edi + 0x40]
cmp eax, dword [edi + 0x44]
jne 0x1007442a
mov eax, dword [edi + 4]
mov dword [edi + 0x40], 0
mov dword [edi + 0x44], eax
mov dword [edi + 0x3c], eax
mov byte [edi + 0x4b], 0
mov byte [edi + 0xe64], 1
mov eax, dword [edi + 0x40]
cmp eax, dword [edi + 0x44]
je 0x1007447c
lea edx, [edi + 0x3c]
mov ecx, edi
call fcn.100713d0
mov byte [edi + 0x4b], 0
jmp 0x1007447c
movzx eax, al
lea edx, [edi + 0x3c]
xor eax, 1
mov ecx, edi
add eax, 0x20000a
push eax
call fcn.10071460
mov eax, dword [edi + 0x3c]
mov dword [edi + 0x44], eax
mov dword [edi + 0x40], eax
mov dword [edi + 0xe60], 0xbe99999a
add esp, 4
mov byte [edi + 0xe64], 1
mov esi, dword [ebp - 0x18]
mov eax, dword [edi + 0x40]
cmp eax, dword [edi + 0x44]
je 0x10074491
cmp byte [ebp - 0x19], 0
je 0x10074491
mov al, 1
jmp 0x10074493
xor al, al
or byte [ebp - 0x1b], al
mov eax, dword [esi + 0x1a74]
mov esi, dword [ebp - 0x2c]
cmp eax, esi
jne 0x100749fc
test edi, edi
jne 0x100744c2
push 0x11bd
push 0x100ec5e0
push 0x100ed220
call fcn.1009d619
add esp, 0xc
xor eax, eax
mov dword [ebp - 0x44], 0
mov dword [ebp - 0x30], eax
cmp byte [ebp - 0x82], al
je 0x1007452a
cmp byte [ebp - 0x3c], al
jne 0x10074516
mov esi, dword [edi + 0x2c]
mov ecx, esi
mov eax, dword [ebx + 8]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x10074503
test dl, dl
je 0x100744ff
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x10074503
add eax, 2
add ecx, 2
test dl, dl
jne 0x100744e3
xor eax, eax
jmp 0x10074508
sbb eax, eax
or eax, 1
test eax, eax
je 0x10074516
mov eax, dword [edi + 0x24]
dec eax
mov dword [ebp - 0x44], esi
mov dword [ebp - 0x30], eax
cmp byte [ebp - 0x1c], 0
je 0x100748c1
test byte [ebx + 0x14], 0x20
je 0x100748c1
cmp byte [ebp - 0x3c], 0
jne 0x10074589
mov eax, dword [edi + 0xc]
lea ecx, [edi + 0x18]
mov byte [edi + 0x30], 1
lea esi, [eax*4 + 1]
mov eax, dword [ecx + 4]
cmp esi, eax
jle 0x10074575
test eax, eax
je 0x1007455b
cdq
sub eax, edx
lea edx, [edi + 0x18]
mov ecx, eax
sar ecx, 1
add ecx, dword [edx + 4]
jmp 0x10074563
mov ecx, 8
lea edx, [edi + 0x18]
cmp ecx, esi
mov eax, esi
cmovg eax, ecx
mov ecx, edx
push eax
call fcn.10039220
lea ecx, [edi + 0x18]
mov dword [ecx], esi
mov edx, esi
mov ecx, dword [edi + 0x20]
push 0
push dword [edi + 0x14]
call fcn.10040eb0
add esp, 8
test dword [ebx + 0x14], 0x1c0
je 0x10074880
push 0x11dd
push 0x100ec5e0
push 0x100ecfdc
call fcn.1009d619
mov edx, dword [ebx + 0x14]
add esp, 0xc
mov esi, 0x16
test dl, 0x40
je 0x100745d9
mov eax, dword [0x10100d08]
mov ecx, dword [eax + 0x34]
test ecx, ecx
js 0x100745d9
call fcn.100468b0
test al, al
je 0x100745d6
lea eax, [esi + 0x2a]
xor esi, esi
jmp 0x1007462d
mov edx, dword [ebx + 0x14]
test dl, dl
jns 0x1007461b
mov eax, dword [0x10100d08]
mov ecx, dword [eax + 0x40]
test ecx, ecx
js 0x100745fc
call fcn.100468b0
test al, al
je 0x100745fc
mov eax, 0x80
lea esi, [eax - 0x7d]
jmp 0x1007462d
mov eax, dword [0x10100d08]
mov ecx, dword [eax + 0x44]
test ecx, ecx
js 0x1007461b
call fcn.100468b0
test al, al
je 0x1007461b
mov eax, 0x80
lea esi, [eax - 0x7c]
jmp 0x1007462d
test dword [ebx + 0x14], 0x100
je 0x10074880
mov eax, 0x100
mov dword [ebp - 0x114], eax
xor ecx, ecx
mov eax, dword [ebx + 0x14]
mov dword [ebp - 0x110], eax
mov eax, dword [edi + 0x20]
mov dword [ebp - 0x100], eax
mov eax, dword [edi + 8]
mov dword [ebp - 0xfc], eax
mov eax, dword [edi + 0x34]
mov dword [ebp - 0x104], esi
mov esi, dword [edi + 0x14]
mov dword [ebp - 0xf8], eax
mov eax, dword [edi + 0x3c]
mov word [ebp - 0xf3], cx
mov byte [ebp - 0xf1], cl
mov dword [ebp - 0x10c], ecx
mov byte [ebp - 0xf4], cl
lea edx, [esi + eax*2]
mov ecx, esi
mov dword [ebp - 0x108], 0
call fcn.10040fe0
mov ecx, dword [edi + 0x40]
mov dword [ebp - 0x24], eax
mov dword [ebp - 0xf0], eax
lea edx, [esi + ecx*2]
mov ecx, esi
call fcn.10040fe0
mov edx, dword [edi + 0x44]
mov ecx, esi
mov dword [ebp - 0x54], eax
mov dword [ebp - 0xec], eax
lea edx, [esi + edx*2]
call fcn.10040fe0
mov esi, eax
lea eax, [ebp - 0x114]
push eax
xor eax, eax
mov dword [ebp - 0xe8], esi
call eax
mov edx, dword [ebp - 0x100]
add esp, 4
cmp edx, dword [edi + 0x20]
je 0x100746fc
push 0x120c
push 0x100ec5e0
push 0x100ed1d0
call fcn.1009d619
mov edx, dword [ebp - 0x100]
add esp, 0xc
mov eax, dword [ebp - 0xf8]
cmp eax, dword [edi + 0x34]
je 0x10074724
push 0x120d
push 0x100ec5e0
push 0x100ed278
call fcn.1009d619
mov edx, dword [ebp - 0x100]
add esp, 0xc
mov eax, dword [ebx + 0x14]
cmp dword [ebp - 0x110], eax
je 0x1007474c
push 0x120e
push 0x100ec5e0
push 0x100ed238
call fcn.1009d619
mov edx, dword [ebp - 0x100]
add esp, 0xc
mov ecx, dword [ebp - 0xf0]
cmp ecx, dword [ebp - 0x24]
je 0x10074777
mov eax, dword [ebp - 0x100]
lea edx, [ecx + eax]
mov ecx, eax
call fcn.10040e60
mov edx, dword [ebp - 0x100]
mov dword [edi + 0x3c], eax
mov byte [edi + 0xe64], 1
mov ecx, dword [ebp - 0xec]
cmp ecx, dword [ebp - 0x54]
je 0x1007479b
mov eax, dword [ebp - 0x100]
lea edx, [ecx + eax]
mov ecx, eax
call fcn.10040e60
mov edx, dword [ebp - 0x100]
mov dword [edi + 0x40], eax
mov ecx, dword [ebp - 0xe8]
cmp ecx, esi
je 0x100747be
mov eax, dword [ebp - 0x100]
lea edx, [ecx + eax]
mov ecx, eax
call fcn.10040e60
mov edx, dword [ebp - 0x100]
mov dword [edi + 0x44], eax
cmp byte [ebp - 0xf4], 0
je 0x10074880
mov ecx, edx
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100747d0
sub ecx, esi
mov esi, dword [ebp - 0xfc]
cmp esi, ecx
je 0x10074806
push 0x1214
push 0x100ec5e0
push 0x100ed310
call fcn.1009d619
mov esi, dword [ebp - 0xfc]
add esp, 0xc
mov edx, dword [ebp - 0x100]
mov ecx, dword [ebp - 0x98]
cmp esi, ecx
jle 0x10074858
cmp byte [ebp - 0x8c], 0
je 0x10074858
mov eax, dword [edi + 0x10]
sub esi, ecx
add esi, dword [edi + 0xc]
cmp esi, eax
jle 0x10074855
test eax, eax
je 0x10074838
cdq
sub eax, edx
lea edx, [edi + 0xc]
mov ecx, eax
sar ecx, 1
add ecx, dword [edx + 4]
jmp 0x10074840
mov ecx, 8
lea edx, [edi + 0xc]
cmp ecx, esi
mov eax, esi
cmovg eax, ecx
mov ecx, edx
push eax
call fcn.1003a820
mov edx, dword [ebp - 0x100]
mov dword [edi + 0xc], esi
push 0
push ecx
mov ecx, dword [edi + 0x14]
push edx
mov edx, dword [edi + 0xc]
call fcn.10040df0
mov dword [edi + 4], eax
add esp, 0xc
mov eax, dword [ebp - 0xfc]
mov dword [edi + 8], eax
mov dword [edi + 0xe60], 0xbe99999a
cmp byte [ebp - 0x3c], 0
jne 0x100748c1
mov esi, dword [edi + 0x20]
mov eax, esi
mov ecx, dword [ebx + 8]
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x100748b0
test dl, dl
je 0x100748ac
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x100748b0
add eax, 2
add ecx, 2
test dl, dl
jne 0x10074890
xor eax, eax
jmp 0x100748b5
sbb eax, eax
or eax, 1
test eax, eax
je 0x100748c1
mov dword [ebp - 0x44], esi
mov esi, dword [edi + 8]
jmp 0x100748c4
mov esi, dword [ebp - 0x30]
cmp dword [ebp - 0x44], 0
je 0x100749db
test esi, esi
jns 0x100748e9
push 0x1229
push 0x100ec5e0
push 0x100ed2d4
call fcn.1009d619
add esp, 0xc
cmp dword [ebp - 0x98], esi
je 0x100749a4
cmp byte [ebp - 0x8c], 0
je 0x100749a4
mov eax, dword [ebx + 0x14]
xorps xmm0, xmm0
mov dword [ebp - 0x140], eax
mov eax, dword [ebx + 8]
mov dword [ebp - 0x130], eax
lea eax, [esi + 1]
cmp dword [ebx + 0xc], eax
movlpd qword [ebp - 0x138], xmm0
cmovge eax, dword [ebx + 0xc]
mov dword [ebp - 0x128], eax
lea eax, [ebp - 0x144]
push eax
xor eax, eax
movlpd qword [ebp - 0x124], xmm0
movlpd qword [ebp - 0x11c], xmm0
mov dword [ebp - 0x144], 0x40000
mov dword [ebp - 0x12c], esi
mov dword [ebp - 0x13c], 0
call eax
mov ecx, dword [ebp - 0x128]
add esp, 4
mov edx, dword [ebp - 0x130]
mov dword [ebx + 8], edx
mov dword [ebx + 0xc], ecx
lea esi, [ecx - 1]
cmp dword [ebp - 0x12c], esi
cmovl esi, dword [ebp - 0x12c]
cmp esi, ecx
jle 0x100749aa
push 0x1237
push 0x100ec5e0
push 0x100ed390
call fcn.1009d619
add esp, 0xc
mov ecx, dword [ebx + 0xc]
mov edx, dword [ebx + 8]
lea eax, [esi + 1]
cmp eax, ecx
cmovl ecx, eax
mov dword [ebx + 0xc], ecx
cmp ecx, 1
jb 0x100749d7
jbe 0x100749cf
lea eax, [ecx - 1]
push eax
push dword [ebp - 0x44]
push edx
call fcn.1009e500
mov ecx, dword [ebx + 0xc]
add esp, 0xc
mov eax, dword [ebx + 8]
mov byte [ecx + eax - 1], 0
mov byte [ebp - 0x27], 1
mov esi, dword [ebp - 0x2c]
mov dword [edi + 0xe68], 0
mov dword [edi + 0xe6c], 0
mov dword [edi + 0xe70], 0
cmp byte [ebp - 0x31], 0
je 0x10074a12
mov eax, dword [ebp - 0x18]
cmp dword [eax + 0x1a74], esi
jne 0x10074a12
call fcn.10043600
mov edx, dword [ebp - 0x38]
movss xmm3, dword [0x100ee26c]
test dl, dl
jne 0x100750ce
push 1
mov edx, esi
lea ecx, [ebp - 0x80]
call fcn.100424f0
mov eax, dword fs:[0x2c]
add esp, 4
mov ecx, dword [0x100ffac0]
mov ecx, dword [eax + ecx*4]
mov eax, dword [0x101029a0]
cmp eax, dword [ecx + 4]
jle 0x10074b15
push 0x101029a0
call fcn.1008f4b8
add esp, 4
cmp dword [0x101029a0], 0xffffffff
jne 0x10074b15
mov dword [ebp - 4], 0
push 0x10
mov dword [0x10102868], 0
mov dword [0x1010286c], 0
mov dword [0x10102870], 0
call fcn.1008f58e
add esp, 4
mov dword [eax], eax
mov dword [eax + 4], eax
mov dword [0x1010286c], eax
mov dword [0x10102874], 0
mov dword [0x10102878], 0
mov dword [0x1010287c], 0
mov byte [ebp - 4], 2
mov ecx, 0x10102874
push eax
push 0x10
mov dword [0x10102880], 7
mov dword [0x10102884], 8
mov dword [0x10102868], 0x3f800000
call fcn.1000d710
push 0x100bafa0
call fcn.1008f9d8
add esp, 4
mov dword [ebp - 4], 0xffffffff
push 0x101029a0
call fcn.1008f46e
add esp, 4
lea eax, [ebp - 0x58]
mov ecx, 0x10102868
push eax
lea eax, [ebp - 0x24]
push eax
call fcn.1007d610
mov eax, dword [ebp - 0x24]
cmp eax, dword [0x1010286c]
jne 0x10074b68
lea eax, [ebp - 0x60]
mov dword [ebp - 0x60], esi
push eax
lea eax, [ebp - 0xc8]
mov dword [ebp - 0x5c], 0
push eax
mov ecx, 0x10102868
call fcn.10081940
lea eax, [ebp - 0x58]
mov ecx, 0x10102868
push eax
lea eax, [ebp - 0xdc]
push eax
call fcn.1007d610
mov eax, dword [eax]
cmp byte [ebp - 0x61], 0
mov edx, dword [ebp - 0x18]
movss xmm0, dword [edx + 0x18]
jne 0x10074b7d
xorps xmm0, xmmword [0x100ee8b0]
mulss xmm0, dword [0x100ee18c]
xorps xmm7, xmm7
addss xmm0, dword [eax + 0xc]
comiss xmm7, xmm0
movss dword [eax + 0xc], xmm0
jbe 0x10074b9c
xorps xmm1, xmm1
jmp 0x10074ba8
movss xmm1, dword [0x100ee0ec]
minss xmm1, xmm0
movss dword [eax + 0xc], xmm1
movups xmm3, xmmword [edx + 0x165c]
mov eax, dword [0x10100d08]
movups xmm2, xmmword [edx + 0x166c]
movaps xmm0, xmm3
movaps xmm4, xmm2
shufps xmm0, xmm3, 0x55
shufps xmm4, xmm2, 0x55
movaps xmm5, xmm2
movss xmm6, dword [eax + 0x1510]
subss xmm4, xmm0
subss xmm5, xmm3
shufps xmm2, xmm2, 0xaa
mulss xmm4, xmm1
mulss xmm5, xmm1
addss xmm4, xmm0
movaps xmm0, xmm3
shufps xmm0, xmm3, 0xaa
subss xmm2, xmm0
addss xmm5, xmm3
shufps xmm3, xmm3, 0xff
mulss xmm3, xmm6
mulss xmm2, xmm1
comiss xmm7, xmm5
addss xmm2, xmm0
jbe 0x10074c1a
xorps xmm0, xmm0
jmp 0x10074c26
movss xmm0, dword [0x100ee0ec]
minss xmm0, xmm5
comiss xmm7, xmm4
movss xmm5, dword [0x100ee26c]
mulss xmm0, xmm5
addss xmm0, dword [0x100ee098]
cvttss2si ecx, xmm0
jbe 0x10074c48
xorps xmm0, xmm0
jmp 0x10074c54
movss xmm0, dword [0x100ee0ec]
minss xmm0, xmm4
movss xmm4, dword [0x100ee098]
mulss xmm0, xmm5
addss xmm0, xmm4
cvttss2si eax, xmm0
shl eax, 8
or ecx, eax
comiss xmm7, xmm2
jbe 0x10074c77
xorps xmm0, xmm0
jmp 0x10074c83
movss xmm0, dword [0x100ee0ec]
minss xmm0, xmm2
mulss xmm0, xmm5
addss xmm0, xmm4
cvttss2si eax, xmm0
shl eax, 0x10
or ecx, eax
comiss xmm7, xmm3
jbe 0x10074c9e
xorps xmm0, xmm0
jmp 0x10074caa
movss xmm0, dword [0x100ee0ec]
minss xmm0, xmm3
movups xmm2, xmmword [edx + 0x164c]
mulss xmm0, xmm5
movaps xmm3, xmm2
movaps xmm5, xmm2
shufps xmm3, xmm2, 0x55
addss xmm0, xmm4
shufps xmm2, xmm2, 0xaa
movups xmm4, xmmword [edx + 0x163c]
subss xmm5, xmm4
cvttss2si esi, xmm0
movaps xmm0, xmm4
mulss xmm5, xmm1
shl esi, 0x18
shufps xmm0, xmm4, 0x55
or esi, ecx
subss xmm3, xmm0
mov dword [ebp - 0x98], esi
addss xmm5, xmm4
mulss xmm3, xmm1
comiss xmm7, xmm5
addss xmm3, xmm0
movaps xmm0, xmm4
shufps xmm0, xmm4, 0xaa
subss xmm2, xmm0
shufps xmm4, xmm4, 0xff
mulss xmm4, xmm6
movss xmm6, dword [0x100ee0ec]
mulss xmm2, xmm1
addss xmm2, xmm0
jbe 0x10074d29
xorps xmm0, xmm0
jmp 0x10074d30
movaps xmm0, xmm6
minss xmm0, xmm5
comiss xmm7, xmm3
movss xmm1, dword [0x100ee26c]
movss xmm5, dword [0x100ee098]
mulss xmm0, xmm1
addss xmm0, xmm5
cvttss2si ecx, xmm0
jbe 0x10074d56
xorps xmm0, xmm0
jmp 0x10074d5d
movaps xmm0, xmm6
minss xmm0, xmm3
mulss xmm0, xmm1
addss xmm0, xmm5
cvttss2si eax, xmm0
shl eax, 8
or ecx, eax
comiss xmm7, xmm2
jbe 0x10074d78
xorps xmm0, xmm0
jmp 0x10074d7f
movaps xmm0, xmm6
minss xmm0, xmm2
mulss xmm0, xmm1
addss xmm0, xmm5
cvttss2si eax, xmm0
shl eax, 0x10
or ecx, eax
comiss xmm7, xmm4
jbe 0x10074d9a
xorps xmm0, xmm0
jmp 0x10074da1
movaps xmm0, xmm6
minss xmm0, xmm4
mulss xmm0, xmm1
addss xmm0, xmm5
cvttss2si eax, xmm0
shl eax, 0x18
or eax, ecx
mov ecx, dword [0x10100cc8]
mov dword [ebp - 0x24], eax
call fcn.1004d4a0
mov ecx, dword [ebp - 0x50]
mov eax, ecx
cmp ecx, 0xffffffff
jae 0x10074de9
nop word [eax + eax]
mov cl, byte [eax]
test cl, cl
je 0x10074de6
cmp cl, 0x23
jne 0x10074de0
cmp byte [eax + 1], cl
je 0x10074de6
inc eax
cmp eax, 0xffffffff
jb 0x10074dd0
mov ecx, dword [ebp - 0x50]
mov dl, byte [ebp - 0x1c]
mov byte [ebp - 0x1c], dl
mov dl, byte [ebp - 0x1b]
mov byte [ebp - 0x1b], dl
mov edx, dword [0x10100d08]
movss xmm0, dword [edx + 0x1904]
movss dword [ebp - 0x48], xmm0
cmp ecx, eax
jne 0x10074e16
xorps xmm0, xmm0
movss dword [ebp - 0x54], xmm0
jmp 0x10074e62
movss xmm3, dword [0x100ee2c4]
movaps xmm2, xmm0
push ecx
push eax
push ecx
push ecx
mov ecx, dword [edx + 0x1900]
lea eax, [ebp - 0x60]
mov dword [esp], 0xbf800000
push eax
call fcn.10063920
movss xmm0, dword [ebp - 0x60]
addss xmm0, dword [0x100ee0dc]
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x54], xmm0
movss xmm0, dword [ebp - 0x5c]
movss dword [ebp - 0x48], xmm0
mov eax, dword [ebp - 0x18]
push 0xf
push ecx
movss xmm0, dword [eax + 0x1568]
lea eax, [ebp - 0x78]
movss dword [esp], xmm0
push esi
push eax
lea eax, [ebp - 0x80]
push eax
mov eax, dword [ebp - 0x40]
mov ecx, dword [eax + 0x280]
call fcn.1005d660
test dword [ebp - 0x24], 0xff000000
mov ecx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x18]
movss xmm4, dword [ebp - 0x7c]
movss xmm2, dword [ebp - 0x74]
mov esi, dword [ecx + 0x280]
movss xmm3, dword [eax + 0x1568]
movss dword [ebp - 0x88], xmm4
je 0x10074f83
test byte [esi + 0x24], 1
lea eax, [ebp - 0x60]
movss xmm0, dword [ebp - 0x78]
mov ecx, esi
push 0xf
push eax
lea eax, [ebp - 0xac]
push eax
je 0x10074f10
movss xmm1, dword [0x100ee098]
subss xmm0, xmm1
movss dword [ebp - 0x60], xmm0
movaps xmm0, xmm2
subss xmm0, xmm1
movss dword [ebp - 0x5c], xmm0
movss xmm0, dword [ebp - 0x80]
addss xmm0, xmm1
movss dword [ebp - 0xac], xmm0
movaps xmm0, xmm4
addss xmm0, xmm1
jmp 0x10074f4d
subss xmm0, dword [0x100ee094]
movss dword [ebp - 0x60], xmm0
movaps xmm0, xmm2
subss xmm0, dword [0x100ee094]
movss dword [ebp - 0x5c], xmm0
movss xmm0, dword [ebp - 0x80]
addss xmm0, dword [0x100ee098]
movss dword [ebp - 0xac], xmm0
movaps xmm0, xmm4
addss xmm0, dword [0x100ee098]
movss dword [ebp - 0xa8], xmm0
call fcn.1005d160
push ecx
mov dword [esp], 0x3f800000
mov ecx, esi
push 1
push dword [ebp - 0x24]
push dword [esi + 0x58]
push dword [esi + 0x60]
call fcn.1005c040
movss xmm4, dword [ebp - 0x7c]
mov ecx, dword [ebp - 0x40]
mov dword [esi + 0x58], 0
movss xmm1, dword [ebp - 0x54]
comiss xmm1, dword [0x100ee02c]
jbe 0x10075030
movss xmm0, dword [ebp - 0x48]
lea eax, [ebp - 0x60]
addss xmm0, dword [ebp - 0x80]
push ecx
mov ecx, dword [ecx + 0x280]
mov dword [esp], 0x3f800000
push dword [ebp - 0x98]
addss xmm1, xmm0
movss dword [ebp - 0x24], xmm0
subss xmm0, dword [0x100ee134]
push eax
lea eax, [ebp - 0xac]
movss dword [ebp - 0x5c], xmm4
push eax
addss xmm1, dword [0x100ee134]
movss dword [ebp - 0xac], xmm0
movss dword [ebp - 0xa8], xmm4
movss dword [ebp - 0x60], xmm1
call fcn.1005d470
movss xmm1, dword [ebp - 0x48]
xor edx, edx
mulss xmm1, dword [0x100ee098]
mov ecx, dword [ebp - 0x50]
movss xmm2, dword [ebp - 0x7c]
movss xmm0, dword [ebp - 0x24]
subss xmm2, xmm1
movss dword [ebp - 0x60], xmm0
push 1
movss dword [ebp - 0x5c], xmm2
push dword [ebp - 0x5c]
push dword [ebp - 0x60]
call fcn.10041530
add esp, 0xc
call fcn.1004d540
movss xmm3, dword [ebp - 0x80]
movss xmm6, dword [ebp - 0x90]
movss xmm1, dword [ebp - 0x7c]
movaps xmm2, xmm6
movss xmm5, dword [0x100ee098]
addss xmm2, xmm3
movaps xmm0, xmm1
mov edx, dword [ebp - 0x38]
addss xmm0, dword [ebp - 0x94]
movss dword [ebp - 0xbc], xmm3
movss dword [ebp - 0xb8], xmm1
movss dword [ebp - 0x30], xmm2
movss dword [ebp - 0xb4], xmm2
movss xmm2, dword [ebp - 0x6c]
movss dword [ebp - 0xa4], xmm0
movss dword [ebp - 0xb0], xmm0
mulss xmm2, xmm5
movaps xmm0, xmm2
addss xmm0, xmm3
movss xmm3, dword [0x100ee26c]
movss dword [ebp - 0xc8], xmm0
movaps xmm0, xmm1
addss xmm0, dword [ebp - 0x74]
mulss xmm0, xmm5
subss xmm0, xmm2
movss dword [ebp - 0xc4], xmm0
jmp 0x1007514a
movss xmm0, dword [ebp - 0x80]
movss xmm1, dword [ebp - 0x7c]
movaps xmm2, xmm0
movss xmm6, dword [ebp - 0x90]
mov ecx, dword [ebp - 0x68]
addss xmm2, xmm6
movss xmm5, dword [0x100ee098]
movss dword [ebp - 0xbc], xmm0
movaps xmm0, xmm1
addss xmm0, dword [ebp - 0x94]
movss dword [ebp - 0xb8], xmm1
movss dword [ebp - 0xb4], xmm2
movss dword [ebp - 0x88], xmm1
movss dword [ebp - 0x30], xmm2
movss dword [ebp - 0xb0], xmm0
mov eax, dword [ecx + 0xd0]
mov ecx, dword [ecx + 0xd4]
movss dword [ebp - 0xa4], xmm0
mov dword [ebp - 0xc8], eax
mov dword [ebp - 0xc4], ecx
cmp byte [ebp - 0x49], 0
lea eax, [ebp - 0xc8]
movss xmm0, dword [eax]
xorps xmm4, xmm4
movss dword [ebp - 0x60], xmm0
xorps xmm7, xmm7
movss xmm0, dword [eax + 4]
movss dword [ebp - 0x98], xmm0
movss dword [ebp - 0x5c], xmm0
xorps xmm0, xmm0
mov dword [ebp - 0x40], eax
movss dword [ebp - 0x54], xmm4
movss dword [ebp - 0xac], xmm4
movss dword [ebp - 0x24], xmm0
movss dword [ebp - 0xa8], xmm0
je 0x1007519f
mov esi, dword [edi + 0x20]
mov dword [ebx + 8], esi
jmp 0x100751a2
mov esi, dword [ebx + 8]
cmp byte [ebp - 0x19], 0
jne 0x1007534e
cmp byte [ebp - 0x1b], 0
jne 0x1007534e
test dl, dl
je 0x10075216
mov dl, byte [esi]
xor ecx, ecx
inc esi
test dl, dl
je 0x100751d5
cmp dl, 0xa
lea eax, [ecx + 1]
mov dl, byte [esi]
cmovne eax, ecx
inc esi
mov ecx, eax
test dl, dl
jne 0x100751c3
mov al, byte [esi - 1]
dec esi
cmp al, 0xa
je 0x100751e2
cmp al, 0xd
je 0x100751e2
inc ecx
mov edi, dword [ebp - 0x18]
movaps xmm1, xmm6
mov edx, dword [ebx + 8]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x54], xmm1
mulss xmm0, dword [edi + 0x1904]
movss dword [ebp - 0xac], xmm1
movss dword [ebp - 0x24], xmm0
movss dword [ebp - 0xa8], xmm0
jmp 0x10075253
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x2c]
cmp dword [eax + 0x1a74], ecx
jne 0x1007522e
mov esi, dword [edi + 8]
mov edx, dword [ebx + 8]
add esi, edx
jmp 0x10075241
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10075233
sub ecx, edx
mov edx, dword [ebx + 8]
add esi, ecx
mov edi, dword [ebp - 0x18]
mov eax, esi
sub eax, edx
cmp eax, 0x200000
jge 0x10075e48
mov eax, dword [0x10100d08]
movss xmm4, dword [0x100ee0ec]
movups xmm2, xmmword [eax + 0x15dc]
comiss xmm7, xmm2
movaps xmm1, xmm2
shufps xmm1, xmm2, 0xff
mulss xmm1, dword [eax + 0x1510]
movups xmmword [ebp - 0x80], xmm2
jbe 0x10075284
movaps xmm0, xmm7
jmp 0x1007528b
movaps xmm0, xmm4
minss xmm0, xmm2
movss xmm2, dword [ebp - 0x7c]
comiss xmm7, xmm2
mulss xmm0, xmm3
addss xmm0, xmm5
cvttss2si ecx, xmm0
jbe 0x100752a6
movaps xmm0, xmm7
jmp 0x100752ad
movaps xmm0, xmm4
minss xmm0, xmm2
movss xmm2, dword [ebp - 0x78]
mulss xmm0, xmm3
addss xmm0, xmm5
cvttss2si eax, xmm0
shl eax, 8
or ecx, eax
comiss xmm7, xmm2
jbe 0x100752cd
movaps xmm0, xmm7
jmp 0x100752d4
movaps xmm0, xmm4
minss xmm0, xmm2
mulss xmm0, xmm3
addss xmm0, xmm5
cvttss2si eax, xmm0
shl eax, 0x10
or ecx, eax
comiss xmm7, xmm1
ja 0x100752f1
minss xmm4, xmm1
movaps xmm7, xmm4
cmp byte [ebp - 0x38], 0
lea eax, [ebp - 0xbc]
mulss xmm7, xmm3
mov dword [ebp - 0xe0], 0
cmovne eax, dword [ebp - 0xe0]
push eax
movss xmm2, dword [edi + 0x1904]
addss xmm7, xmm5
push ecx
mov dword [esp], 0
push esi
push edx
cvttss2si eax, xmm7
shl eax, 0x18
or eax, ecx
push eax
lea eax, [ebp - 0x60]
push eax
mov eax, dword [ebp - 0x68]
push dword [edi + 0x1900]
mov ecx, dword [eax + 0x280]
call fcn.1005e1d0
jmp 0x10075e48
test edi, edi
jne 0x10075399
push 0x1290
push 0x100ec5e0
push 0x100ed220
call fcn.1009d619
movss xmm0, dword [ebp - 0xb0]
add esp, 0xc
movss dword [ebp - 0xa4], xmm0
xorps xmm7, xmm7
movss xmm0, dword [ebp - 0xb4]
movss dword [ebp - 0x30], xmm0
movss xmm0, dword [ebp - 0xb8]
movss dword [ebp - 0x88], xmm0
mov eax, dword [edi + 8]
xor edx, edx
mov ecx, dword [edi + 0x14]
xorps xmm5, xmm5
mov dword [ebp - 0xdc], eax
xorps xmm4, xmm4
add eax, esi
mov dword [ebp - 0x50], ecx
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x8c], 0
mov dword [ebp - 0x44], 0
mov dword [ebp - 0x58], 0xfffffc18
mov dword [ebp - 0x6c], 0xfffffc18
cmp byte [ebp - 0x19], dl
je 0x100753ee
mov eax, dword [edi + 0x3c]
or esi, 0xffffffff
mov dword [ebp - 0x58], esi
lea eax, [ecx + eax*2]
mov dword [ebp - 0x8c], eax
lea edx, [esi + 2]
cmp byte [ebp - 0x1b], 0
je 0x10075412
mov ecx, dword [edi + 0x44]
cmp dword [edi + 0x40], ecx
mov eax, dword [ebp - 0x50]
cmovl ecx, dword [edi + 0x40]
inc edx
mov dword [ebp - 0x6c], 0xffffffff
lea eax, [eax + ecx*2]
mov ecx, dword [ebp - 0x50]
mov dword [ebp - 0x44], eax
mov esi, dword [ebp - 0x50]
mov eax, dword [ebp - 0x38]
movzx eax, al
add edx, eax
xor eax, eax
movzx esi, word [esi]
test si, si
mov dword [ebp - 0x70], eax
mov esi, dword [ebp - 0x58]
je 0x10075484
mov edi, dword [ebp - 0x50]
movzx esi, word [edi]
mov edi, dword [ebp - 0x58]
cmp si, 0xa
jne 0x10075467
inc eax
mov dword [ebp - 0x70], eax
cmp edi, 0xffffffff
jne 0x10075454
cmp ecx, dword [ebp - 0x8c]
jb 0x10075454
dec edx
mov edi, eax
test edx, edx
jle 0x10075478
cmp dword [ebp - 0x6c], 0xffffffff
jne 0x10075467
cmp ecx, dword [ebp - 0x44]
jb 0x10075467
dec edx
mov dword [ebp - 0x6c], eax
test edx, edx
jle 0x10075478
movzx eax, word [ecx + 2]
add ecx, 2
mov esi, eax
test ax, ax
mov eax, dword [ebp - 0x70]
jne 0x10075436
mov dword [ebp - 0x58], edi
mov edi, dword [ebp - 0x9c]
mov esi, dword [ebp - 0x58]
mov edx, dword [ebp - 0x50]
inc eax
cmp esi, 0xffffffff
mov dword [ebp - 0x70], eax
mov ecx, eax
cmovne ecx, esi
mov esi, dword [ebp - 0x8c]
mov dword [ebp - 0x58], ecx
mov ecx, dword [ebp - 0x6c]
cmp ecx, 0xffffffff
cmove ecx, eax
mov dword [ebp - 0x6c], ecx
mov ecx, esi
cmp esi, edx
jbe 0x100754be
nop
cmp word [ecx - 2], 0xa
je 0x100754be
add ecx, 0xfffffffe
cmp ecx, edx
ja 0x100754b0
mov eax, dword [0x10100d08]
movaps xmm1, xmm7
movaps xmm6, xmm7
mov edx, dword [eax + 0x1900]
movss xmm2, dword [eax + 0x1904]
divss xmm2, dword [edx + 0x10]
cmp ecx, esi
jae 0x10075528
mov edi, dword [ebp - 0x8c]
movzx eax, word [ecx]
add ecx, 2
mov esi, eax
cmp eax, 0xa
jne 0x100754fc
maxss xmm1, xmm6
movaps xmm6, xmm7
jmp 0x1007551e
cmp esi, 0xd
je 0x1007551e
mov esi, eax
cmp esi, dword [edx]
jge 0x10075511
mov eax, dword [edx + 8]
movss xmm0, dword [eax + esi*4]
jmp 0x10075516
movss xmm0, dword [edx + 0xc]
mulss xmm0, xmm2
addss xmm6, xmm0
cmp ecx, edi
jb 0x100754e6
mov edi, dword [ebp - 0x9c]
cmp dword [ebp - 0x6c], 0
maxss xmm6, xmm1
movd xmm0, dword [ebp - 0x58]
mov ecx, dword [ebp - 0x18]
cvtdq2ps xmm0, xmm0
movss xmm3, dword [ecx + 0x1904]
mulss xmm0, xmm3
movss dword [ebp - 0x8c], xmm6
movss dword [ebp - 0x58], xmm0
jl 0x100755d9
mov eax, dword [ebp - 0x44]
mov ecx, eax
mov esi, dword [ebp - 0x50]
cmp eax, esi
jbe 0x10075577
cmp word [ecx - 2], 0xa
je 0x10075574
add ecx, 0xfffffffe
cmp ecx, esi
ja 0x10075566
mov eax, dword [ebp - 0x44]
movaps xmm1, xmm7
movaps xmm4, xmm7
cmp ecx, eax
jae 0x100755c6
mov edi, dword [ebp - 0x44]
movzx eax, word [ecx]
add ecx, 2
mov esi, eax
cmp eax, 0xa
jne 0x1007559a
maxss xmm1, xmm4
movaps xmm4, xmm7
jmp 0x100755bc
cmp esi, 0xd
je 0x100755bc
mov esi, eax
cmp esi, dword [edx]
jge 0x100755af
mov eax, dword [edx + 8]
movss xmm0, dword [eax + esi*4]
jmp 0x100755b4
movss xmm0, dword [edx + 0xc]
mulss xmm0, xmm2
addss xmm4, xmm0
cmp ecx, edi
jb 0x10075584
mov edi, dword [ebp - 0x9c]
movd xmm5, dword [ebp - 0x6c]
maxss xmm4, xmm1
mov ecx, dword [ebp - 0x18]
cvtdq2ps xmm5, xmm5
mulss xmm5, xmm3
mov edx, dword [ebp - 0x38]
movss xmm2, dword [ebp - 0x90]
test dl, dl
je 0x10075611
movd xmm0, dword [ebp - 0x70]
movaps xmm1, xmm2
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x54], xmm1
mulss xmm0, xmm3
movss dword [ebp - 0xac], xmm1
movss dword [ebp - 0x24], xmm0
movss dword [ebp - 0xa8], xmm0
cmp byte [ebp - 0x19], 0
je 0x1007570a
cmp byte [edi + 0xe64], 0
je 0x1007570a
test dword [ebx + 0x14], 0x1000
jne 0x10075679
movss xmm1, dword [edi + 0x38]
comiss xmm1, xmm6
mulss xmm2, dword [0x100ee084]
jbe 0x10075653
movaps xmm1, xmm6
movaps xmm0, xmm7
subss xmm1, xmm2
maxss xmm0, xmm1
jmp 0x10075667
movaps xmm0, xmm6
subss xmm0, dword [ebp - 0x90]
comiss xmm0, xmm1
jb 0x10075680
addss xmm0, xmm2
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [edi + 0x38], xmm0
jmp 0x10075680
mov dword [edi + 0x38], 0
test dl, dl
je 0x100756d4
movss xmm0, dword [ebp - 0x58]
mov edx, dword [ebp - 0x68]
movaps xmm2, xmm0
subss xmm2, dword [ecx + 0x1904]
movss xmm1, dword [edx + 0x54]
comiss xmm1, xmm2
jbe 0x100756aa
movaps xmm0, xmm7
maxss xmm0, xmm2
jmp 0x100756b6
subss xmm0, dword [ebp - 0x94]
maxss xmm0, xmm1
mov eax, dword [ebp - 0x40]
subss xmm1, xmm0
movss dword [edx + 0x54], xmm0
addss xmm1, dword [eax + 4]
movss dword [ebp - 0x98], xmm1
movss dword [ebp - 0x5c], xmm1
mov byte [edi + 0xe64], 0
movss xmm0, dword [ebp - 0xb4]
movss xmm3, dword [ebp - 0xb0]
movss dword [ebp - 0x30], xmm0
movss xmm0, dword [ebp - 0xb8]
movss dword [ebp - 0xa4], xmm3
movss dword [ebp - 0x88], xmm0
jmp 0x10075712
movss xmm3, dword [ebp - 0xa4]
cmp byte [ebp - 0x1b], 0
movss xmm6, dword [edi + 0x38]
movss dword [ebp - 0x44], xmm6
je 0x10075aa7
mov ecx, dword [edi + 0x40]
mov edx, dword [edi + 0x44]
mov eax, edx
mov esi, dword [ebp - 0x50]
cmp ecx, edx
cmovl eax, ecx
cmovge edx, ecx
cmp byte [ebp - 0x19], 0
lea esi, [esi + eax*2]
mov eax, dword [ebp - 0x50]
lea ecx, [eax + edx*2]
mov dword [ebp - 0x70], ecx
je 0x10075755
movss xmm1, dword [0x100ee0ec]
jmp 0x1007575d
movss xmm1, dword [0x100ee0a4]
mov eax, dword [0x10100d08]
movups xmm2, xmmword [eax + 0x188c]
mulss xmm1, dword [eax + 0x1510]
comiss xmm7, xmm2
movaps xmm0, xmm2
shufps xmm0, xmm2, 0xff
movups xmmword [ebp - 0x80], xmm2
mulss xmm1, xmm0
jbe 0x1007578a
movaps xmm0, xmm7
jmp 0x10075796
movss xmm0, dword [0x100ee0ec]
minss xmm0, xmm2
movss xmm6, dword [0x100ee26c]
movss xmm2, dword [ebp - 0x7c]
comiss xmm7, xmm2
mulss xmm0, xmm6
addss xmm0, dword [0x100ee098]
cvttss2si edx, xmm0
jbe 0x100757bd
movaps xmm0, xmm7
jmp 0x100757c9
movss xmm0, dword [0x100ee0ec]
minss xmm0, xmm2
movss xmm2, dword [ebp - 0x78]
mulss xmm0, xmm6
addss xmm0, dword [0x100ee098]
cvttss2si eax, xmm0
shl eax, 8
or edx, eax
comiss xmm7, xmm2
jbe 0x100757ed
movaps xmm0, xmm7
jmp 0x100757f9
movss xmm0, dword [0x100ee0ec]
minss xmm0, xmm2
movss xmm2, dword [0x100ee098]
mulss xmm0, xmm6
addss xmm0, xmm2
cvttss2si eax, xmm0
shl eax, 0x10
or edx, eax
comiss xmm7, xmm1
jbe 0x1007581c
movaps xmm0, xmm7
jmp 0x10075828
movss xmm0, dword [0x100ee0ec]
minss xmm0, xmm1
mulss xmm0, xmm6
addss xmm0, xmm2
cvttss2si eax, xmm0
shl eax, 0x18
or eax, edx
cmp byte [ebp - 0x38], 0
mov dword [ebp - 0x94], eax
je 0x10075857
movaps xmm6, xmm7
movss dword [ebp - 0x50], xmm7
movss dword [ebp - 0xe0], xmm7
jmp 0x10075864
movss xmm6, dword [0x100ee2ec]
movss dword [ebp - 0x50], xmm6
mov edx, dword [ebp - 0x40]
addss xmm5, dword [ebp - 0x98]
addss xmm4, dword [edx]
subss xmm5, xmm7
subss xmm4, dword [ebp - 0x44]
movss dword [ebp - 0x6c], xmm5
cmp esi, ecx
jae 0x10075aa2
mov edi, dword [ebp - 0x18]
movss xmm2, dword [ebp - 0x88]
movss xmm1, dword [edi + 0x1904]
nop dword [eax]
addss xmm1, xmm3
comiss xmm5, xmm1
ja 0x10075a9c
comiss xmm2, xmm5
jbe 0x100758d8
cmp esi, ecx
jae 0x10075a6f
nop word [eax + eax]
movzx eax, word [esi]
add esi, 2
cmp eax, 0xa
je 0x10075a6f
cmp esi, ecx
jb 0x100758c0
jmp 0x10075a6f
mov eax, dword [0x10100d08]
movaps xmm3, xmm7
movaps xmm1, xmm7
mov edx, dword [eax + 0x1900]
movss xmm2, dword [eax + 0x1904]
divss xmm2, dword [edx + 0x10]
cmp esi, ecx
jae 0x10075943
nop word [eax + eax]
movzx eax, word [esi]
add esi, 2
mov ecx, eax
cmp eax, 0xa
je 0x10075936
cmp ecx, 0xd
je 0x1007592d
cmp ecx, dword [edx]
jge 0x10075920
mov eax, dword [edx + 8]
movss xmm0, dword [eax + ecx*4]
jmp 0x10075925
movss xmm0, dword [edx + 0xc]
mulss xmm0, xmm2
addss xmm1, xmm0
mov ecx, dword [ebp - 0x70]
cmp esi, ecx
jb 0x10075900
jmp 0x10075943
mov ecx, dword [ebp - 0x70]
movaps xmm3, xmm7
maxss xmm3, xmm1
movaps xmm1, xmm7
maxss xmm1, xmm3
comiss xmm7, xmm1
jb 0x1007597c
mov eax, dword [edi + 0x1900]
cmp dword [eax], 0x20
jle 0x10075964
mov eax, dword [eax + 8]
movss xmm0, dword [eax + 0x80]
jmp 0x10075969
movss xmm0, dword [eax + 0xc]
mulss xmm0, dword [0x100ee098]
cvttss2si eax, xmm0
movd xmm1, eax
cvtdq2ps xmm1, xmm1
movss xmm3, dword [ebp - 0xa4]
addss xmm1, xmm4
movaps xmm2, xmm6
addss xmm4, xmm7
subss xmm2, dword [edi + 0x1904]
movaps xmm0, xmm5
addss xmm0, dword [ebp - 0xe0]
minss xmm1, dword [ebp - 0x30]
maxss xmm4, dword [ebp - 0xbc]
addss xmm2, xmm5
minss xmm0, xmm3
movss dword [ebp - 0x78], xmm1
movss dword [ebp - 0x80], xmm4
maxss xmm2, dword [ebp - 0x88]
comiss xmm0, dword [ebp - 0x88]
movss dword [ebp - 0x7c], xmm2
movss dword [ebp - 0x74], xmm0
jbe 0x10075a64
comiss xmm3, xmm2
jbe 0x10075a64
comiss xmm1, dword [ebp - 0xbc]
jbe 0x10075a64
movss xmm0, dword [ebp - 0x30]
comiss xmm0, xmm4
jbe 0x10075a64
movss xmm0, dword [edi + 0x1568]
lea eax, [ebp - 0x78]
push 0xf
push ecx
movss dword [esp], xmm0
push dword [ebp - 0x94]
push eax
lea eax, [ebp - 0x80]
push eax
mov eax, dword [ebp - 0x68]
mov ecx, dword [eax + 0x280]
call fcn.1005d660
movss xmm0, dword [ebp - 0xb4]
xorps xmm7, xmm7
movss xmm3, dword [ebp - 0xb0]
movss xmm5, dword [ebp - 0x6c]
mov ecx, dword [ebp - 0x70]
movss dword [ebp - 0x30], xmm0
movss xmm0, dword [ebp - 0xb8]
movss dword [ebp - 0xa4], xmm3
movss dword [ebp - 0x88], xmm0
movss xmm2, dword [ebp - 0x88]
mov edx, dword [ebp - 0x40]
movss xmm1, dword [edi + 0x1904]
movss xmm4, dword [edx]
movaps xmm0, xmm1
movss xmm6, dword [ebp - 0x50]
addss xmm0, xmm5
subss xmm4, dword [ebp - 0x44]
movss dword [ebp - 0x6c], xmm0
movaps xmm5, xmm0
cmp esi, ecx
jb 0x100758a0
mov edi, dword [ebp - 0x9c]
movss xmm6, dword [ebp - 0x44]
mov edx, dword [ebp - 0x38]
test dl, dl
jne 0x10075abe
cmp dword [ebp - 0xdc], 0x200000
jge 0x10075bfa
mov eax, dword [0x10100d08]
movss xmm5, dword [0x100ee0ec]
movups xmm1, xmmword [eax + 0x15dc]
comiss xmm7, xmm1
movaps xmm2, xmm1
shufps xmm2, xmm1, 0xff
mulss xmm2, dword [eax + 0x1510]
movups xmmword [ebp - 0x80], xmm1
jbe 0x10075aef
movaps xmm0, xmm7
jmp 0x10075af6
movaps xmm0, xmm5
minss xmm0, xmm1
movss xmm3, dword [0x100ee26c]
movss xmm4, dword [0x100ee098]
movss xmm1, dword [ebp - 0x7c]
comiss xmm7, xmm1
mulss xmm0, xmm3
addss xmm0, xmm4
cvttss2si ecx, xmm0
jbe 0x10075b21
movaps xmm0, xmm7
jmp 0x10075b28
movaps xmm0, xmm5
minss xmm0, xmm1
movss xmm1, dword [ebp - 0x78]
mulss xmm0, xmm3
addss xmm0, xmm4
cvttss2si eax, xmm0
shl eax, 8
or ecx, eax
comiss xmm7, xmm1
jbe 0x10075b48
movaps xmm0, xmm7
jmp 0x10075b4f
movaps xmm0, xmm5
minss xmm0, xmm1
mulss xmm0, xmm3
addss xmm0, xmm4
cvttss2si eax, xmm0
shl eax, 0x10
or ecx, eax
comiss xmm7, xmm2
jbe 0x10075b6a
movaps xmm1, xmm7
jmp 0x10075b71
movaps xmm1, xmm5
minss xmm1, xmm2
mov esi, dword [ebp - 0x40]
lea eax, [ebp - 0xbc]
mulss xmm1, xmm3
test dl, dl
mov dword [ebp - 0xdc], 0
cmovne eax, dword [ebp - 0xdc]
movss xmm0, dword [esi]
push eax
addss xmm1, xmm4
push ecx
mov dword [esp], 0
subss xmm0, xmm6
push dword [ebp - 0x48]
push dword [ebx + 8]
cvttss2si eax, xmm1
movss dword [ebp - 0xe4], xmm0
movss xmm0, dword [ebp - 0x98]
shl eax, 0x18
subss xmm0, xmm7
or eax, ecx
push eax
lea eax, [ebp - 0xe4]
push eax
mov eax, dword [ebp - 0x18]
movss dword [ebp - 0xe0], xmm0
push dword [eax + 0x1900]
movss xmm2, dword [eax + 0x1904]
mov eax, dword [ebp - 0x68]
mov ecx, dword [eax + 0x280]
call fcn.1005e1d0
jmp 0x10075bfd
mov esi, dword [ebp - 0x40]
cmp byte [ebp - 0x19], 0
je 0x10075e42
mov eax, dword [ebp - 0x18]
movss xmm0, dword [eax + 0x18]
addss xmm0, dword [edi + 0xe60]
movss dword [edi + 0xe60], xmm0
mov edi, eax
cmp byte [edi + 0xb2], 0
je 0x10075c50
xorps xmm1, xmm1
comiss xmm1, xmm0
jae 0x10075c50
movss xmm1, dword [0x100ee100]
call fcn.1003ee90
movss xmm1, dword [0x100ee0d0]
comiss xmm1, xmm0
jae 0x10075c50
xor al, al
jmp 0x10075c52
mov al, 1
movss xmm0, dword [ebp - 0x58]
xorps xmm5, xmm5
movss xmm4, dword [ebp - 0x8c]
movss xmm7, dword [0x100ee098]
movss xmm6, dword [0x100ee0ec]
addss xmm0, dword [ebp - 0x98]
addss xmm4, dword [esi]
subss xmm0, xmm5
subss xmm4, dword [ebp - 0x44]
movss dword [ebp - 0x58], xmm0
movaps xmm1, xmm0
movss dword [ebp - 0x8c], xmm4
movaps xmm2, xmm4
movss dword [ebp - 0x80], xmm4
movaps xmm3, xmm0
addss xmm2, xmm6
subss xmm1, dword [edi + 0x1904]
subss xmm3, dword [0x100ee110]
movss dword [ebp - 0x78], xmm2
addss xmm1, xmm7
movss dword [ebp - 0x74], xmm3
movss dword [ebp - 0x7c], xmm1
test al, al
je 0x10075e1b
comiss xmm3, dword [ebp - 0xb8]
jbe 0x10075e1b
movss xmm0, dword [ebp - 0xb0]
comiss xmm0, xmm1
jbe 0x10075e16
comiss xmm2, dword [ebp - 0xbc]
jbe 0x10075e16
movss xmm0, dword [ebp - 0xb4]
comiss xmm0, xmm4
jbe 0x10075e16
mov eax, dword [0x10100d08]
movups xmm2, xmmword [eax + 0x15dc]
comiss xmm5, xmm2
movaps xmm1, xmm2
shufps xmm1, xmm2, 0xff
mulss xmm1, dword [eax + 0x1510]
movups xmmword [ebp - 0xd0], xmm2
jbe 0x10075d39
xorps xmm0, xmm0
jmp 0x10075d40
movaps xmm0, xmm6
minss xmm0, xmm2
movss xmm6, dword [0x100ee26c]
movss xmm2, dword [ebp - 0xcc]
comiss xmm5, xmm2
mulss xmm0, xmm6
addss xmm0, xmm7
cvttss2si ecx, xmm0
jbe 0x10075d66
xorps xmm0, xmm0
jmp 0x10075d72
movss xmm0, dword [0x100ee0ec]
minss xmm0, xmm2
movss xmm2, dword [ebp - 0xc8]
mulss xmm0, xmm6
addss xmm0, xmm7
cvttss2si eax, xmm0
shl eax, 8
or ecx, eax
comiss xmm5, xmm2
jbe 0x10075d95
xorps xmm0, xmm0
jmp 0x10075da1
movss xmm0, dword [0x100ee0ec]
minss xmm0, xmm2
mulss xmm0, xmm6
addss xmm0, xmm7
cvttss2si eax, xmm0
shl eax, 0x10
or ecx, eax
comiss xmm5, xmm1
ja 0x10075dc3
movss xmm5, dword [0x100ee0ec]
minss xmm5, xmm1
mulss xmm5, xmm6
push ecx
mov dword [esp], 0x3f800000
movss dword [ebp - 0xc8], xmm4
addss xmm5, xmm7
movss dword [ebp - 0xc4], xmm3
cvttss2si eax, xmm5
shl eax, 0x18
or eax, ecx
push eax
lea eax, [ebp - 0xc8]
push eax
lea eax, [ebp - 0x80]
push eax
mov eax, dword [ebp - 0x68]
mov ecx, dword [eax + 0x280]
call fcn.1005d470
movss xmm4, dword [ebp - 0x8c]
movss xmm6, dword [0x100ee0ec]
movss xmm0, dword [ebp - 0x58]
cmp byte [ebp - 0x3c], 0
mov esi, dword [ebp - 0x48]
jne 0x10075e48
subss xmm0, dword [edi + 0x1904]
subss xmm4, xmm6
movss dword [edi + 0x2dac], xmm0
movss dword [edi + 0x2da8], xmm4
jmp 0x10075e48
mov edi, dword [ebp - 0x18]
mov esi, dword [ebp - 0x48]
cmp byte [ebp - 0xc0], 0
je 0x10075e56
call fcn.1004d540
cmp byte [ebp - 0x38], 0
je 0x10075ee4
mov ecx, dword [0x10100d08]
mov eax, dword [ecx + 0x1a40]
mov byte [eax + 0x85], 1
mov eax, dword [ecx + 0x1a40]
cmp byte [eax + 0x88], 0
jne 0x10075eda
movss xmm2, dword [eax + 0xd0]
lea ecx, [ebp - 0xac]
movss xmm1, dword [ebp - 0x54]
movss xmm0, dword [eax + 0xd4]
addss xmm1, xmm2
movss xmm3, dword [ebp - 0x24]
addss xmm3, xmm0
movss dword [ebp - 0x80], xmm2
movss dword [ebp - 0x7c], xmm0
movss dword [ebp - 0x78], xmm1
movss xmm1, dword [0x100ee2ec]
movss dword [ebp - 0x74], xmm3
call fcn.10043680
push 0
xor edx, edx
lea ecx, [ebp - 0x80]
call fcn.10043800
add esp, 4
call fcn.100474b0
call fcn.1004e370
cmp byte [edi + 0x2de4], 0
je 0x10075f05
cmp byte [ebp - 0xc0], 0
jne 0x10075f05
mov edx, dword [ebx + 8]
lea ecx, [ebp - 0x60]
push esi
call fcn.10053be0
add esp, 4
mov cl, byte [ebp - 0x27]
test cl, cl
je 0x10075f63
test dword [ebx + 0x14], 0x200000
jne 0x10075f63
mov esi, dword [0x10100d08]
mov eax, dword [esi + 0x1a74]
cmp eax, dword [ebp - 0x2c]
je 0x10075f4d
test eax, eax
je 0x10075f4d
cmp byte [esi + 0x1dcc], 0
jne 0x10075f4d
push 0xafc
push 0x100e84a0
push 0x100e8510
call fcn.1009d619
mov cl, byte [ebp - 0x27]
add esp, 0xc
mov eax, dword [esi + 0x1a40]
mov word [esi + 0x1a83], 0x101
or dword [eax + 0x118], 4
test byte [ebx + 0x14], 0x20
movzx eax, cl
movzx ecx, byte [ebp - 0x1c]
cmovne eax, ecx
mov ecx, dword [ebp - 0xc]
pop edi
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret