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

Disassembly:
push ebp
mov eax, 0x32cc
push edi
push esi
push ebx
call fcn.703e0830
mov ebx, 1
xor edx, edx
sub esp, eax
mov edi, dword [esp + 0x32e4]
mov esi, dword [esp + 0x32e8]
mov ebp, dword [esp + 0x32e0]
mov eax, dword [edi + 0x5c]
mov ecx, dword [esi + 0x5c]
mov dword [edi + 0x1b4], ebx
xor ebx, ebx
mov dword [edi + 0x1ec], edx
mov dword [edi + 0x210], ebx
sub eax, ecx
mov ecx, 1
dec eax
mov dword [esp + 0x90], eax
lea eax, [edi + 0x190]
mov dword [esp + 0x84], eax
xor eax, eax
mov dword [edi + 0x1b0], eax
xor eax, eax
mov dword [edi + 0x1b8], eax
xor eax, eax
mov dword [edi + 0x1bc], eax
mov eax, 1
mov dword [edi + 0x1e4], eax
xor eax, eax
mov dword [edi + 0x1e0], eax
xor eax, eax
mov dword [edi + 0x1e8], eax
xor eax, eax
mov dword [edi + 0x218], eax
xor eax, eax
mov dword [edi + 0x214], ecx
mov dword [edi + 0x21c], eax
mov eax, dword [esi + 0x21a8]
mov edx, dword [esi + 0x21ac]
mov ecx, eax
mov eax, dword [esp + 0x32ec]
mov dword [esp + 0x20], ecx
mov dword [esp + 0x24], edx
test eax, eax
mov eax, ecx
jne 0x6ff87a7e
or eax, edx
sete al
xor edx, edx
movzx eax, al
mov ebx, edx
mov ecx, eax
add ecx, dword [edi + 0x21a8]
adc ebx, dword [edi + 0x21ac]
mov dword [esp + 0x28], ecx
mov dword [esp + 0x2c], ebx
test ebx, ebx
fild qword [esp + 0x28]
js 0x6ff88499
add eax, dword [esp + 0x20]
adc edx, dword [esp + 0x24]
fstp dword [esp + 0x28]
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], edx
test edx, edx
fild qword [esp + 0x20]
js 0x6ff8846d
mov edx, dword [edi + 0xa8]
mov eax, dword [edi + 0xb4]
movss xmm0, dword [esp + 0x28]
fstp dword [esp + 0x20]
divss xmm0, dword [esp + 0x20]
sqrtss xmm0, xmm0
imul eax, edx
movss xmm3, dword [0x7076fb90]
movss dword [esp + 0xbc], xmm0
cvtsi2ss xmm2, eax
movss dword [esp + 0x88], xmm3
mov eax, dword [edi + 0x2198]
movzx edx, ax
shr eax, 0x10
cvtsi2ss xmm0, eax
cvtsi2ss xmm1, edx
mov eax, dword [esp + 0x32e8]
mov eax, dword [eax + 0x2198]
mulss xmm0, xmm3
movzx edx, ax
addss xmm0, xmm1
shr eax, 0x10
cvtsi2ss xmm1, edx
divss xmm0, xmm2
movss dword [esp + 0xc8], xmm0
cvtsi2ss xmm0, eax
mov eax, dword [esp + 0x32e8]
mov edx, dword [eax + 0x21b4]
mov eax, dword [eax + 0x21b0]
mulss xmm0, xmm3
mov dword [esp + 0x24], edx
mov dword [esp + 0x20], eax
or eax, edx
sete al
xor edx, edx
addss xmm0, xmm1
movzx eax, al
mov ecx, eax
mov ebx, edx
add ecx, dword [edi + 0x21b0]
divss xmm0, xmm2
adc ebx, dword [edi + 0x21b4]
mov dword [esp + 0x28], ecx
mov dword [esp + 0x2c], ebx
test ebx, ebx
fild qword [esp + 0x28]
movss dword [esp + 0xd4], xmm0
js 0x6ff88478
add eax, dword [esp + 0x20]
adc edx, dword [esp + 0x24]
fstp dword [esp + 0x28]
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], edx
test edx, edx
fild qword [esp + 0x20]
js 0x6ff88457
mov eax, dword [edi + 0xb8]
mov esi, dword [edi + 0xac]
movss xmm0, dword [esp + 0x28]
fstp dword [esp + 0x20]
divss xmm0, dword [esp + 0x20]
sqrtss xmm0, xmm0
imul eax, esi
movss xmm7, dword [esp + 0x88]
movss dword [esp + 0xc0], xmm0
cvtsi2ss xmm2, eax
mov eax, dword [edi + 0x219c]
movzx edx, ax
shr eax, 0x10
cvtsi2ss xmm0, eax
cvtsi2ss xmm1, edx
mov eax, dword [esp + 0x32e8]
mov eax, dword [eax + 0x219c]
mulss xmm0, xmm7
movzx edx, ax
addss xmm0, xmm1
shr eax, 0x10
cvtsi2ss xmm1, edx
divss xmm0, xmm2
movss dword [esp + 0xcc], xmm0
cvtsi2ss xmm0, eax
mov eax, dword [esp + 0x32e8]
mov edx, dword [eax + 0x21bc]
mov eax, dword [eax + 0x21b8]
mulss xmm0, xmm7
mov dword [esp + 0x24], edx
mov dword [esp + 0x20], eax
or eax, edx
sete al
xor edx, edx
addss xmm0, xmm1
movzx eax, al
mov ecx, eax
mov ebx, edx
add ecx, dword [edi + 0x21b8]
divss xmm0, xmm2
adc ebx, dword [edi + 0x21bc]
mov dword [esp + 0x28], ecx
mov dword [esp + 0x2c], ebx
test ebx, ebx
fild qword [esp + 0x28]
movss dword [esp + 0xd8], xmm0
js 0x6ff88462
add eax, dword [esp + 0x20]
adc edx, dword [esp + 0x24]
fstp dword [esp + 0x28]
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], edx
test edx, edx
fild qword [esp + 0x20]
js 0x6ff8844c
mov eax, dword [edi + 0xb8]
mov ebx, dword [edi + 0xac]
movss xmm5, dword [esp + 0x88]
movss xmm0, dword [esp + 0x28]
fstp dword [esp + 0x20]
imul eax, ebx
divss xmm0, dword [esp + 0x20]
movss xmm6, dword [0x7076fb94]
sqrtss xmm0, xmm0
cvtsi2ss xmm3, eax
movss dword [esp + 0xc4], xmm0
mov eax, dword [edi + 0x21a0]
movzx edx, ax
shr eax, 0x10
cvtsi2ss xmm1, eax
cvtsi2ss xmm2, edx
mov eax, dword [esp + 0x32e8]
mov eax, dword [eax + 0x21a0]
mulss xmm1, xmm5
movzx edx, ax
addss xmm1, xmm2
shr eax, 0x10
cvtsi2ss xmm2, edx
divss xmm1, xmm3
movss dword [esp + 0xd0], xmm1
cvtsi2ss xmm1, eax
mulss xmm1, xmm5
addss xmm1, xmm2
divss xmm1, xmm3
movss dword [esp + 0xdc], xmm1
movss xmm1, dword [esp + 0xc0]
comiss xmm6, xmm1
ja 0x6ff8817d
movss xmm7, dword [0x7076fb98]
comiss xmm7, xmm1
jbe 0x6ff879f0
comiss xmm7, xmm0
ja 0x6ff88544
movss xmm6, dword [0x7076fb9c]
comiss xmm6, xmm1
jbe 0x6ff87a06
comiss xmm6, xmm0
ja 0x6ff88563
movss xmm3, dword [0x7076fba0]
comiss xmm3, xmm1
jbe 0x6ff87a1c
comiss xmm3, xmm0
ja 0x6ff88582
movss xmm2, dword [0x7076fba4]
comiss xmm2, xmm1
jbe 0x6ff87a32
comiss xmm2, xmm0
ja 0x6ff885a1
movss xmm7, dword [0x7076fba8]
comiss xmm7, xmm1
jbe 0x6ff87a48
comiss xmm7, xmm0
ja 0x6ff885c0
movss xmm6, dword [0x7076fbac]
comiss xmm6, xmm1
jbe 0x6ff88430
comiss xmm6, xmm0
ja 0x6ff885df
movss xmm7, dword [0x7076fb44]
xor eax, eax
mov dword [esp + 0x70], eax
movss dword [esp + 0x80], xmm7
jmp 0x6ff87b80
or eax, edx
sete al
xor edx, edx
movzx eax, al
mov ebx, edx
mov ecx, eax
add ecx, dword [edi + 0x21a8]
adc ebx, dword [edi + 0x21ac]
mov dword [esp + 0x28], ecx
mov dword [esp + 0x2c], ebx
test ebx, ebx
fild qword [esp + 0x28]
js 0x6ff8848e
add eax, dword [esp + 0x20]
adc edx, dword [esp + 0x24]
fstp dword [esp + 0x28]
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], edx
test edx, edx
fild qword [esp + 0x20]
js 0x6ff88483
mov edx, dword [edi + 0xa8]
mov ecx, 7
mov eax, dword [edi + 0xb4]
movss xmm0, dword [esp + 0x28]
fstp dword [esp + 0x20]
divss xmm0, dword [esp + 0x20]
sqrtss xmm0, xmm0
imul eax, edx
movss xmm6, dword [0x7076fb90]
movss dword [esp + 0xbc], xmm0
mov dword [esp + 0x70], ecx
cvtsi2ss xmm2, eax
movss dword [esp + 0x88], xmm6
mov eax, dword [edi + 0x2198]
movzx edx, ax
shr eax, 0x10
cvtsi2ss xmm0, eax
cvtsi2ss xmm1, edx
mov eax, dword [esp + 0x32e8]
mov eax, dword [eax + 0x2198]
mulss xmm0, xmm6
movzx edx, ax
addss xmm0, xmm1
shr eax, 0x10
cvtsi2ss xmm1, edx
divss xmm0, xmm2
movss dword [esp + 0xc8], xmm0
cvtsi2ss xmm0, eax
mulss xmm0, xmm6
addss xmm0, xmm1
divss xmm0, xmm2
movss xmm2, dword [0x7076fb6c]
movss dword [esp + 0x80], xmm2
movss dword [esp + 0xd4], xmm0
cvtsi2ss xmm0, dword [esp + 0x32ec]
mov dword [esp + 0x74], edi
mov eax, dword [esp + 0x84]
mov dword [esp + 0x64], eax
xor eax, eax
mov dword [esp + 0x44], eax
xor eax, eax
mulss xmm0, dword [0x7076fb3c]
mov dword [esp + 0x7c], eax
movss dword [esp + 0x8c], xmm0
mov ebx, dword [esp + 0x44]
test ebx, ebx
je 0x6ff88644
mov ecx, dword [esp + 0x32ec]
test ecx, ecx
jne 0x6ff87c7c
mov eax, dword [esp + 0x74]
mov edx, dword [eax + 0x1bc]
test edx, edx
je 0x6ff8853d
mov eax, dword [esp + 0x44]
movss xmm2, dword [0x7076fb3c]
movss xmm3, dword [esp + eax*4 + 0xd4]
movaps xmm0, xmm3
subss xmm0, dword [esp + eax*4 + 0xc8]
movss dword [esp + 0x20], xmm3
andps xmm0, xmmword [0x7076fbc0]
comiss xmm2, xmm0
movss xmm0, dword [esp + eax*4 + 0xbc]
jbe 0x6ff87d21
movss xmm1, dword [0x7076fb44]
movss xmm3, dword [0x7076fbd0]
subss xmm1, xmm0
andps xmm1, xmmword [0x7076fbc0]
comiss xmm3, xmm1
jbe 0x6ff87d21
mov eax, dword [esp + 0x64]
mov dword [eax + 0x24], 1
mov dword [eax + 0x20], 0
mov dword [eax + 0x28], 0
mov dword [eax + 0x2c], 0
inc dword [esp + 0x44]
add dword [esp + 0x64], 0x30
mov eax, dword [esp + 0x44]
cmp eax, 3
jne 0x6ff87bb5
mov edi, dword [esp + 0x74]
mov esi, dword [edi + 0x1ec]
test esi, esi
je 0x6ff884a4
mov esi, dword [edi + 0x21c]
mov eax, dword [edi + 0x1e0]
test esi, esi
sete cl
dec eax
lea edx, [eax + 1]
cmp edx, 7
jne 0x6ff87cdf
nop
lea esi, [esi]
test cl, cl
je 0x6ff87cdf
mov edx, dword [edi + 0x21c]
sar dword [edi + 0x1e4], 1
mov dword [edi + 0x1e0], eax
test edx, edx
je 0x6ff87cd6
sar dword [edi + 0x214], 1
mov dword [edi + 0x210], eax
dec eax
lea edx, [eax + 1]
cmp edx, 7
je 0x6ff87cb0
test edx, edx
jle 0x6ff88070
mov edx, dword [edi + 0x1e4]
test dl, 1
jne 0x6ff88070
mov ebx, dword [edi + 0x21c]
test ebx, ebx
je 0x6ff88630
test byte [edi + 0x214], 1
jne 0x6ff88070
sar edx, 1
mov dword [edi + 0x1e4], edx
mov dword [edi + 0x1e0], eax
jmp 0x6ff87cca
mulss xmm0, dword [esp + 0x80]
mov eax, dword [esp + 0x64]
mov esi, dword [esp + 0x70]
movss dword [esp + 0x20], xmm0
mov edi, eax
fld dword [esp + 0x20]
mov dword [eax + 0x20], esi
fxam
fnstsw ax
fnstcw word [esp + 0x9e]
fabs
movzx edx, word [esp + 0x9e]
fadd dword [0x7076fb3c]
and dx, 0xf3ff
or dx, 0x400
test ah, 2
mov word [esp + 0x96], dx
fldcw word [esp + 0x96]
frndint
fldcw word [esp + 0x9e]
je 0x6ff87d85
fchs
fnstcw word [esp + 0x9e]
movzx eax, word [esp + 0x9e]
or ax, 0xc00
mov word [esp + 0x9c], ax
fldcw word [esp + 0x9c]
fistp dword [esp + 0x98]
fldcw word [esp + 0x9e]
mov eax, dword [esp + 0x98]
test eax, eax
js 0x6ff882d2
cmp eax, 0xff
mov edx, 0xff
cmovle edx, eax
mov eax, dword [esp + 0x64]
cmp edx, 0x7f
mov dword [esp + 0x48], edx
mov dword [eax + 0x24], edx
jg 0x6ff88524
cmp dword [ebp + 0x21b8], 3
je 0x6ff882f0
mov edx, dword [esp + 0x32e4]
mov ebx, dword [ebp + 0x4b50]
mov eax, dword [edx + 0xa0]
mov ecx, dword [edx + 0xb8]
imul eax, ecx
add eax, ebx
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x7c]
test eax, eax
lea esi, [eax + 1]
je 0x6ff8833e
cmp dword [esp + 0x44], 1
mov eax, ebp
cmovne ebx, dword [esp + 0x38]
mov ecx, ebx
mov dword [esp + 0x38], ebx
call fcn.6ff60b00
mov dword [esp + 0x7c], esi
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x78]
test eax, eax
je 0x6ff87c66
mov eax, dword [esp + 0x32ec]
test eax, eax
je 0x6ff8815e
xor eax, eax
xor ebx, ebx
mov dword [esp + 0x54], eax
mov esi, dword [esp + 0x48]
mov ecx, 0x7f
mov eax, esi
sub eax, ebx
cmp eax, 0x7f
cmovg eax, ecx
xor edx, edx
test eax, eax
cmovs eax, edx
add ebx, esi
cmp ebx, 0x7f
cmovle ecx, ebx
test ecx, ecx
cmovns edx, ecx
mov dword [esp + 0x50], eax
cmp edx, dword [esp + 0x50]
mov dword [esp + 0x58], edx
jl 0x6ff8850b
mov eax, dword [esp + 0x44]
xor esi, esi
movzx ecx, byte [esp + 0x3c]
mov dword [esp + 0x4c], esi
movss xmm7, dword [esp + eax*4 + 0xc8]
movss xmm2, dword [esp + eax*4 + 0xd4]
mov eax, 1
shl eax, cl
cvtsi2ss xmm0, eax
movss dword [esp + 0x34], xmm2
mov eax, dword [esp + 0x78]
movss dword [esp + 0x68], xmm7
addss xmm7, dword [esp + 0x8c]
mov dword [esp + 0x28], eax
xor eax, eax
movss dword [esp + 0x5c], xmm7
mov dword [esp + 0x20], eax
divss xmm2, xmm0
divss xmm0, dword [esp + 0x34]
movss dword [esp + 0x6c], xmm0
movss dword [esp + 0x60], xmm2
jmp 0x6ff87f20
mov esi, dword [esp + 0x50]
movss xmm4, dword [esp + 0x5c]
cvtsi2ss xmm0, esi
mulss xmm0, dword [esp + 0x60]
subss xmm4, xmm0
cvttss2si eax, xmm4
lea edx, [eax + 0x80]
cmp edx, 0xff
jbe 0x6ff87f95
cmp eax, 0xffffff80
jl 0x6ff882c0
movss xmm0, dword [0x7076fb88]
mov eax, 0x7f
movss xmm6, dword [esp + 0x68]
mov edx, 0x7f
subss xmm6, xmm0
movss xmm0, dword [esp + 0x6c]
mulss xmm0, xmm6
addss xmm0, dword [0x7076fb3c]
cvttss2si esi, xmm0
cmp esi, 0x7f
cmovg esi, edx
mov edx, 0
test esi, esi
cmovs esi, edx
mov edx, dword [esp + 0x54]
mov ecx, eax
sub ecx, edx
cmp ecx, 0xffffff80
jge 0x6ff88280
mov ecx, dword [esp + 0x54]
add eax, ecx
mov ecx, eax
cmp eax, 0x7f
mov eax, 0x7f
mov ebx, eax
cmovle ebx, ecx
mov dword [esp + 0x40], ebx
mov ebx, 0xffffff80
mov dword [esp + 0x34], ebx
nop
lea esi, [esi]
mov eax, dword [esp + 0x44]
mov ebx, dword [esp + 0x34]
test eax, eax
jne 0x6ff8802e
jmp 0x6ff881a5
mov ecx, dword [esp + 0x38]
mov eax, ebp
mov edx, dword [esp + 0x32e4]
mov dword [esp], edi
call fcn.6ff64b40
cmp eax, dword [esp + 0x28]
jae 0x6ff88011
mov ecx, 1
mov dword [esp + 0x28], eax
mov dword [esp + 0x48], esi
mov dword [esp + 0x20], ebx
mov dword [esp + 0x4c], ecx
mov eax, dword [esp + 0x34]
cmp dword [esp + 0x20], eax
jne 0x6ff88023
cmp ebx, eax
jne 0x6ff88210
inc ebx
cmp ebx, dword [esp + 0x40]
jg 0x6ff88210
mov eax, dword [esp + 0x3c]
mov dword [edi + 0x24], esi
mov dword [edi + 0x28], ebx
mov dword [edi + 0x20], eax
mov dword [esp + 4], edi
mov dword [esp], ebp
call dword [ebp + 0x92b8]
cmp dword [ebp + 0x21b8], 3
jne 0x6ff87fe1
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x32e4]
mov dword [esp], edi
mov dword [esp + 4], eax
mov eax, ebp
call fcn.6ff648a0
jmp 0x6ff87ff6
lea eax, [edi + 0x1c0]
mov dword [esp + 4], eax
mov dword [esp], ebp
call dword [ebp + 0x92b8]
mov eax, dword [edi + 0x21c]
test eax, eax
je 0x6ff880a0
lea eax, [edi + 0x1f0]
mov dword [esp + 4], eax
mov dword [esp], ebp
call dword [ebp + 0x92b8]
mov eax, dword [esp + 0x32ec]
test eax, eax
je 0x6ff88153
mov edi, dword [edi + 0x1bc]
test edi, edi
je 0x6ff88153
mov eax, dword [esp + 0x32e8]
mov edx, dword [eax + 0xc0]
mov eax, dword [esp + 0x84]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x32e8]
mov eax, dword [eax + 0xc8]
add eax, 0x40
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x32e8]
mov eax, dword [eax + 0xc4]
mov dword [esp + 0x10], edx
mov dword [esp + 0x20], eax
add eax, 0x40
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x32e8]
mov eax, dword [eax + 0x178]
mov dword [esp + 8], edx
mov dword [esp + 0xc], eax
mov eax, dword [ebp + 0x4b50]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.6ff25af0
mov eax, dword [esp + 0x32e8]
mov edx, dword [ebp + 0x4b50]
mov eax, dword [eax + 0xc0]
shl eax, 5
lea edx, [edx + eax + 0x20]
mov eax, dword [esp + 0x32e4]
mov dword [eax + 0xa90], edx
add esp, 0x32cc
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, dword [ebp + 0x230]
movzx ebx, byte [eax + eax + 0x7076ea9c]
movzx eax, byte [eax + eax + 0x7076ea9d]
mov dword [esp + 0x54], eax
jmp 0x6ff87e6d
comiss xmm6, xmm0
jbe 0x6ff879da
movss xmm2, dword [0x7076fb6c]
mov eax, 7
mov dword [esp + 0x70], eax
movss dword [esp + 0x80], xmm2
jmp 0x6ff87b80
mov eax, dword [esp + 0x3c]
mov dword [edi + 0x24], esi
mov dword [edi + 0x28], ebx
mov dword [edi + 0x20], eax
mov dword [esp + 4], edi
mov dword [esp], ebp
call dword [ebp + 0x92b8]
mov ecx, dword [esp + 0x38]
mov eax, ebp
mov edx, dword [esp + 0x32e4]
mov dword [esp], edi
call fcn.6ff5be30
cmp dword [esp + 0x28], eax
jbe 0x6ff881ef
mov dword [esp + 0x28], eax
mov eax, 1
mov dword [esp + 0x48], esi
mov dword [esp + 0x20], ebx
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x34]
cmp dword [esp + 0x20], eax
jne 0x6ff881fd
cmp ebx, eax
jne 0x6ff88210
inc ebx
cmp dword [esp + 0x40], ebx
jge 0x6ff881a5
lea esi, [esi]
lea edi, [edi]
inc dword [esp + 0x50]
mov eax, dword [esp + 0x50]
cmp dword [esp + 0x58], eax
jge 0x6ff87f20
emms
mov eax, dword [esp + 0x44]
test eax, eax
je 0x6ff885fe
mov eax, dword [esp + 0x4c]
test eax, eax
je 0x6ff8825a
movzx ecx, byte [esp + 0x3c]
mov eax, 1
shl eax, cl
cmp dword [esp + 0x48], eax
jne 0x6ff88363
mov eax, dword [esp + 0x20]
test eax, eax
jne 0x6ff88363
mov dword [edi + 0x24], 1
mov dword [edi + 0x20], 0
mov dword [edi + 0x28], 0
mov dword [edi + 0x2c], 0
jmp 0x6ff87c66
mov ebx, dword [esp + 0x54]
cmp ecx, 0x7f
mov edx, 0x7f
cmovg ecx, edx
mov dword [esp + 0x34], ecx
add eax, ebx
cmp eax, 0x7f
cmovle edx, eax
cmp ecx, edx
mov dword [esp + 0x40], edx
jle 0x6ff87fd0
inc dword [esp + 0x50]
mov eax, dword [esp + 0x50]
cmp dword [esp + 0x58], eax
jge 0x6ff87f20
jmp 0x6ff88222
movss xmm0, dword [0x7076fb84]
mov eax, 0xffffff80
jmp 0x6ff87f60
mov eax, dword [esp + 0x64]
xor esi, esi
mov dword [esp + 0x48], esi
mov dword [eax + 0x24], 0
cmp dword [ebp + 0x21b8], 3
jne 0x6ff87df2
mov esi, dword [esp + 0x44]
mov ecx, dword [esp + 0x32e8]
mov edx, dword [esp + 0x32e4]
mov dword [esp + 4], esi
mov eax, dword [ebp + 0x4b50]
mov dword [esp], eax
mov eax, ebp
call fcn.6ff5d030
mov edx, dword [esp + 0x32e4]
mov dword [esp], esi
mov dword [esp + 0x38], eax
mov ecx, eax
mov eax, ebp
call fcn.6ff60a30
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 0x3c], eax
jmp 0x6ff87e4a
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x32e8]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov eax, ebp
call fcn.6ff5d1e0
mov edx, dword [esp + 0x32e4]
jmp 0x6ff87e23
mov eax, dword [esp + 0x28]
movss xmm3, dword [esp + 0x88]
movzx edx, ax
shr eax, 0x10
cvtsi2ss xmm0, eax
cvtsi2ss xmm1, edx
mov eax, dword [esp + 0x78]
movzx edx, ax
mulss xmm0, xmm3
shr eax, 0x10
cvtsi2ss xmm2, edx
addss xmm0, xmm1
cvtsi2ss xmm1, eax
mulss xmm1, xmm3
addss xmm1, xmm2
divss xmm0, xmm1
comiss xmm0, dword [0x7076fbb0]
ja 0x6ff8825a
mov eax, dword [esp + 0x48]
movss dword [esp + 0x28], xmm0
mov dword [edi + 0x24], eax
mov eax, dword [esp + 0x3c]
mov dword [edi + 0x20], eax
mov eax, dword [esp + 0x20]
mov dword [edi + 0x28], eax
mov dword [esp + 4], edi
mov dword [esp], ebp
call dword [ebp + 0x92b8]
cmp dword [ebp + 0x210], 0xffffffff
movss xmm0, dword [esp + 0x28]
jne 0x6ff87c66
mov eax, dword [esp + 0x44]
test eax, eax
jne 0x6ff87c66
mov eax, dword [esp + 0x74]
mov edi, dword [eax + 0x1bc]
test edi, edi
je 0x6ff87c66
mov eax, dword [esp + 0x32e4]
mov esi, dword [esp + 0x90]
movss dword [eax + esi*4 + 0x2150], xmm0
jmp 0x6ff87c66
movss xmm3, dword [0x7076fb44]
xor eax, eax
mov dword [esp + 0x70], eax
movss dword [esp + 0x80], xmm3
jmp 0x6ff87b80
fadd dword [0x7076fb8c]
jmp 0x6ff8792e
fadd dword [0x7076fb8c]
jmp 0x6ff87833
fadd dword [0x7076fb8c]
jmp 0x6ff8790e
fadd dword [0x7076fb8c]
jmp 0x6ff87730
fadd dword [0x7076fb8c]
jmp 0x6ff87813
fadd dword [0x7076fb8c]
jmp 0x6ff87acc
fadd dword [0x7076fb8c]
jmp 0x6ff87aac
fadd dword [0x7076fb8c]
jmp 0x6ff87710
mov eax, dword [edi + 0x21c]
test eax, eax
je 0x6ff88083
mov eax, dword [edi + 0x210]
dec eax
lea edx, [eax + 1]
cmp edx, 7
je 0x6ff884f9
test edx, edx
jle 0x6ff88083
mov ecx, dword [edi + 0x21c]
test ecx, ecx
je 0x6ff884f0
mov edx, dword [edi + 0x214]
test dl, 1
jne 0x6ff88083
sar edx, 1
mov dword [edi + 0x214], edx
mov dword [edi + 0x210], eax
dec eax
lea edx, [eax + 1]
cmp edx, 7
jne 0x6ff884c1
mov edx, dword [edi + 0x21c]
test edx, edx
je 0x6ff884f0
mov edx, dword [edi + 0x214]
jmp 0x6ff884e2
mov eax, dword [esp + 0x78]
xor edx, edx
mov dword [esp + 0x20], edx
mov dword [esp + 0x28], eax
xor eax, eax
mov dword [esp + 0x4c], eax
jmp 0x6ff88222
mov edi, dword [esp + 0x74]
xor esi, esi
xor eax, eax
mov dword [edi + 0x21c], esi
mov dword [edi + 0x1ec], eax
jmp 0x6ff88083
mov edi, eax
jmp 0x6ff87c80
movss xmm3, dword [0x7076fb70]
mov esi, 6
mov dword [esp + 0x70], esi
movss dword [esp + 0x80], xmm3
jmp 0x6ff87b80
movss xmm6, dword [0x7076fb74]
mov ebx, 5
mov dword [esp + 0x70], ebx
movss dword [esp + 0x80], xmm6
jmp 0x6ff87b80
movss xmm7, dword [0x7076fb78]
mov ecx, 4
mov dword [esp + 0x70], ecx
movss dword [esp + 0x80], xmm7
jmp 0x6ff87b80
movss xmm2, dword [0x7076fb7c]
mov edx, 3
mov dword [esp + 0x70], edx
movss dword [esp + 0x80], xmm2
jmp 0x6ff87b80
movss xmm3, dword [0x7076fb80]
mov eax, 2
mov dword [esp + 0x70], eax
movss dword [esp + 0x80], xmm3
jmp 0x6ff87b80
movss xmm6, dword [0x7076fb68]
mov eax, 1
mov dword [esp + 0x70], eax
movss dword [esp + 0x80], xmm6
jmp 0x6ff87b80
mov eax, dword [esp + 0x3c]
test eax, eax
je 0x6ff88230
mov eax, dword [esp + 0x48]
test al, 1
jne 0x6ff88230
sar eax, 1
dec dword [esp + 0x3c]
je 0x6ff88622
test al, 1
je 0x6ff88616
mov dword [esp + 0x48], eax
jmp 0x6ff88230
sar edx, 1
mov dword [edi + 0x1e0], eax
dec eax
mov dword [edi + 0x1e4], edx
jmp 0x6ff87cd7
movss xmm0, dword [esp + 0xd4]
movss xmm5, dword [0x7076fb3c]
subss xmm0, dword [esp + 0xc8]
andps xmm0, xmmword [0x7076fbc0]
comiss xmm5, xmm0
jbe 0x6ff88693
movss xmm0, dword [0x7076fb44]
movss xmm6, dword [0x7076fbd0]
subss xmm0, dword [esp + 0xbc]
andps xmm0, xmmword [0x7076fbc0]
comiss xmm6, xmm0
ja 0x6ff87c46
movss xmm5, dword [0x7076fb6c]
fnstcw word [esp + 0x9e]
mulss xmm5, dword [esp + 0xbc]
movss dword [esp + 0x20], xmm5
movzx edx, word [esp + 0x9e]
fld dword [esp + 0x20]
fxam
fnstsw ax
and dx, 0xf3ff
or dx, 0x400
mov word [esp + 0x96], dx
fabs
test ah, 2
fadd dword [0x7076fb3c]
fldcw word [esp + 0x96]
frndint
fldcw word [esp + 0x9e]
je 0x6ff886f2
fchs
fnstcw word [esp + 0x9e]
mov esi, dword [esp + 0x74]
xor ecx, ecx
mov ebx, 7
movzx eax, word [esp + 0x9e]
or ax, 0xc00
mov word [esp + 0x9c], ax
fldcw word [esp + 0x9c]
fistp dword [esp + 0x98]
fldcw word [esp + 0x9e]
mov eax, dword [esp + 0x98]
mov dword [esi + 0x1b8], ecx
mov dword [esi + 0x1b0], ebx
cmp eax, 0x7f
mov dword [esi + 0x1b4], eax
jle 0x6ff88941
sar eax, 1
cmp eax, 0x7f
jle 0x6ff8893a
sar eax, 1
cmp eax, 0x7f
jle 0x6ff88933
sar eax, 1
cmp eax, 0x7f
jle 0x6ff8892c
sar eax, 1
cmp eax, 0x7f
jle 0x6ff88925
sar eax, 1
cmp eax, 0x7f
jle 0x6ff8891e
sar eax, 1
cmp eax, 0x7f
jle 0x6ff888f1
xor edi, edi
xor edx, edx
sar eax, 1
mov dword [esi + 0x1b0], edi
mov dword [esp + 0x3c], edx
cmp eax, 0x7f
mov edx, 0x7f
cmovle edx, eax
mov eax, dword [esp + 0x74]
mov dword [esp + 0x48], edx
mov dword [eax + 0x1b4], edx
mov edx, dword [esp + 0x32e4]
mov ecx, dword [edx + 0x213c]
test ecx, ecx
je 0x6ff88811
mov ecx, dword [ebp + 0x4b50]
lea eax, [ebp + 0x9200]
mov dword [esp], ecx
mov ecx, dword [esp + 0x32e8]
call fcn.7043601f
mov edx, dword [esp + 0x32e4]
mov dword [esp], 0
mov dword [esp + 0x38], eax
mov ecx, eax
mov eax, ebp
call fcn.6ff5be30
mov edi, dword [esp + 0x84]
mov dword [esp + 0x78], eax
jmp 0x6ff87e4a
mov eax, 0xc
mov edx, 2
mov dword [esp + 0xe8], eax
mov eax, 1
mov dword [esp + 0xe0], eax
mov eax, dword [ebp + 0x748]
mov dword [esp + 0xec], eax
mov eax, dword [ebp + 0xce8]
dec eax
cmp eax, 2
cmovg eax, edx
xor ebx, ebx
test eax, eax
cmovs eax, ebx
mov ecx, eax
shl ecx, 6
lea eax, [ecx + eax*2 + 0x70ea1b28]
mov dword [esp + 0xf0], eax
mov eax, dword [ebp + 0xcec]
dec eax
cmp eax, 2
cmovg eax, edx
test eax, eax
cmovs eax, ebx
mov edx, eax
shl edx, 6
cmp dword [ebp + 0x230], 1
lea eax, [edx + eax*2 + 0x70ea1b28]
mov dword [esp + 0xf4], eax
jle 0x6ff88909
mov eax, dword [ebp + 0x220]
test eax, eax
mov eax, 1
cmovle eax, dword [ebp + 0x220]
mov dword [ebp + 0x48c4], eax
mov eax, 4
mov dword [ebp + 0x48c8], eax
xor ebx, ebx
xor esi, esi
xor edi, edi
mov eax, ebp
mov dword [ebp + 0x48cc], ebx
lea edx, [esp + 0xe0]
mov dword [esp + 8], esi
lea ecx, [esp + 0x32e4]
mov dword [esp + 4], edi
mov dword [esp], 0
call fcn.6ff89540
mov edx, dword [esp + 0x32e4]
jmp 0x6ff887cb
mov edx, 1
mov esi, dword [esp + 0x74]
mov dword [esp + 0x3c], edx
mov dword [esi + 0x1b0], edx
jmp 0x6ff887a1
xor eax, eax
mov dword [ebp + 0x48c4], eax
mov eax, 2
mov dword [ebp + 0x48c8], eax
jmp 0x6ff888b5
mov edx, 2
jmp 0x6ff888f6
mov edx, 3
jmp 0x6ff888f6
mov edx, 4
jmp 0x6ff888f6
mov edx, 5
jmp 0x6ff888f6
mov edx, 6
jmp 0x6ff888f6
mov ebx, 7
mov dword [esp + 0x3c], ebx
jmp 0x6ff887a1