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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0xb8
mov eax, dword [0x10200e40]
xor eax, esp
mov dword [esp + 0xb4], eax
push esi
mov esi, dword [0x1020f198]
push edi
mov dword [esp + 0x38], ecx
mov ecx, dword [ebp + 8]
mov eax, dword [esi + 0x3f8c]
mov dword [esp + 0x3c], edx
mov dword [esp + 0x5c], ecx
mov byte [eax + 0xb0], 1
mov edi, dword [esi + 0x3f8c]
cmp byte [edi + 0xb3], 0
je 0x1006adb3
xor al, al
pop edi
pop esi
mov ecx, dword [esp + 0xb4]
xor ecx, esp
call fcn.10109e3a
mov esp, ebp
pop ebp
ret
mov eax, edx
shr eax, 1
and al, 1
mov dword [esp + 0x58], eax
jne 0x1006ade7
test edx, 0x400
jne 0x1006ade7
movss xmm0, dword [esi + 0x38e4]
movss dword [esp + 0x48], xmm0
movss xmm0, dword [edi + 0x130]
minss xmm0, dword [esi + 0x38e8]
jmp 0x1006adfd
movss xmm0, dword [esi + 0x38e4]
movss dword [esp + 0x48], xmm0
movss xmm0, dword [esi + 0x38e8]
movss dword [esp + 0x40], xmm0
mov eax, ecx
mov dword [esp + 0x54], eax
cmp ecx, 0xffffffff
jae 0x1006ae36
mov edx, eax
mov cl, byte [edx]
test cl, cl
je 0x1006ae2a
cmp cl, 0x23
jne 0x1006ae20
cmp byte [edx + 1], cl
je 0x1006ae2a
inc edx
mov dword [esp + 0x54], edx
cmp edx, 0xffffffff
jb 0x1006ae10
mov edx, dword [esp + 0x3c]
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x5c]
movss xmm1, dword [esi + 0x3cf4]
cmp ecx, eax
jne 0x1006ae47
xorps xmm5, xmm5
jmp 0x1006ae94
movss xmm3, dword [0x101f5050]
movaps xmm2, xmm1
push 0
push eax
push ecx
push ecx
mov ecx, dword [esi + 0x3cf0]
lea eax, [esp + 0x80]
mov dword [esp], 0xbf800000
push eax
call fcn.10052570
movss xmm0, dword [esp + 0x70]
addss xmm0, dword [0x101f4f4c]
movss xmm1, dword [esp + 0x74]
mov edx, dword [esp + 0x3c]
cvttss2si eax, xmm0
movd xmm5, eax
cvtdq2ps xmm5, xmm5
movss xmm0, dword [esi + 0x38e8]
movss xmm7, dword [esi + 0x3cf4]
addss xmm0, xmm0
movss xmm4, dword [edi + 0x124]
movss xmm3, dword [esp + 0x40]
movss dword [esp + 0x64], xmm1
movss dword [esp + 0x60], xmm5
addss xmm0, xmm7
minss xmm4, xmm0
movaps xmm0, xmm3
addss xmm0, xmm3
addss xmm0, xmm1
maxss xmm4, xmm0
test edx, 0x2000
je 0x1006af15
cmp dword [esi + 0x4ce0], 0
je 0x1006af15
movss xmm0, dword [edi + 0xfc]
movss xmm2, dword [edi + 0x20c]
movaps xmm6, xmm0
movss xmm1, dword [edi + 0x214]
mov byte [esp + 0x13], 1
movss dword [esp + 0x84], xmm0
jmp 0x1006af50
movss xmm0, dword [edi + 0xfc]
mov byte [esp + 0x13], 0
movaps xmm6, xmm0
movss dword [esp + 0x84], xmm0
test edx, 0x1000
je 0x1006af40
movss xmm2, dword [edi + 0x1fc]
jmp 0x1006af48
movss xmm2, dword [edi + 0xf8]
movss xmm1, dword [edi + 0x204]
cmp byte [esp + 0x58], 0
addss xmm0, xmm4
movss dword [esp + 0x20], xmm2
movss dword [esp + 0x80], xmm2
movss dword [esp + 0x88], xmm1
movss dword [esp + 0x40], xmm1
movss dword [esp + 0x8c], xmm0
je 0x1006afeb
movss xmm1, dword [edi + 0x48]
mulss xmm1, dword [0x101f4f0c]
movaps xmm0, xmm1
subss xmm0, dword [0x101f4f54]
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
cvttss2si eax, xmm1
movss xmm1, dword [esp + 0x48]
subss xmm2, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [esp + 0x20], xmm2
addss xmm0, dword [esp + 0x40]
movss dword [esp + 0x80], xmm2
movss dword [esp + 0x40], xmm0
movss dword [esp + 0x88], xmm0
movaps xmm0, xmm1
mulss xmm0, dword [0x101f4fa4]
jmp 0x1006aff8
movss xmm1, dword [esp + 0x48]
movaps xmm0, xmm1
addss xmm0, xmm1
comiss xmm5, dword [0x101f4e98]
addss xmm0, xmm7
movaps xmm2, xmm3
maxss xmm2, dword [edi + 0x130]
movss dword [esp + 0x50], xmm0
jbe 0x1006b022
addss xmm1, dword [esp + 0x48]
addss xmm1, xmm5
jmp 0x1006b025
xorps xmm1, xmm1
addss xmm0, dword [edi + 0xf8]
addss xmm1, xmm7
movss dword [esp + 0x74], xmm4
addss xmm6, xmm2
lea ecx, [esp + 0x70]
movss dword [esp + 0x68], xmm0
movss dword [esp + 0x18], xmm1
movss dword [esp + 0x70], xmm1
movaps xmm1, xmm3
movss dword [esp + 0x6c], xmm6
call fcn.10042bd0
cmp byte [esp + 0x58], 0
movaps xmm0, xmmword [esp + 0x80]
mov ecx, dword [esp + 0x3c]
movaps xmmword [esp + 0xa0], xmm0
jne 0x1006b0a7
test ecx, 0x3800
jne 0x1006b0a7
movss xmm0, dword [esi + 0x38f4]
movss xmm1, dword [esp + 0x18]
addss xmm0, xmm0
addss xmm1, dword [esp + 0x20]
addss xmm0, xmm1
movss dword [esp + 0xa8], xmm0
cmp byte [esp + 0x13], 0
movss xmm0, dword [edi + 0x21c]
movss dword [esp + 0x98], xmm0
movss xmm0, dword [edi + 0x224]
movss dword [esp + 0x70], xmm0
je 0x1006b0e5
mov eax, dword [edi + 0x20c]
mov dword [edi + 0x21c], eax
mov eax, dword [edi + 0x214]
mov dword [edi + 0x224], eax
test ecx, 0x100
je 0x1006b0f7
mov byte [esp + 0x14], 1
jmp 0x1006b1dc
mov eax, dword [0x1020f198]
mov dword [esp + 0x20], eax
test byte [eax + 0x48e8], 2
mov edx, dword [eax + 0x3f8c]
mov dword [esp + 0x18], edx
mov edx, dword [edx + 0x194]
je 0x1006b186
test byte [eax + 0x4904], 1
je 0x1006b145
mov cl, byte [eax + 0x4900]
xor eax, eax
test cl, cl
mov dword [esp + 0x14], ecx
mov ecx, edx
setne al
push eax
push dword [esp + 0x3c]
call fcn.10034540
mov ecx, dword [esp + 0x14]
jmp 0x1006b1a3
push 0xffffffffffffffff
push dword [esp + 0x3c]
mov ecx, edx
call fcn.10034470
cmp eax, 0xffffffff
jne 0x1006b19a
mov ecx, dword [esp + 0x20]
xor eax, eax
mov cl, byte [ecx + 0x4900]
test cl, cl
mov dword [esp + 0x14], ecx
mov ecx, dword [esp + 0x18]
setne al
push eax
push dword [esp + 0x3c]
mov ecx, dword [ecx + 0x194]
call fcn.10034540
mov ecx, dword [esp + 0x14]
jmp 0x1006b1a3
mov eax, ecx
mov ecx, edx
shr eax, 5
and eax, 1
push eax
push dword [esp + 0x3c]
call fcn.10034470
test eax, eax
setne cl
mov dword [esp + 0x14], ecx
mov edx, dword [esp + 0x20]
cmp byte [edx + 0x5e24], 0
je 0x1006b1dc
test byte [esp + 0x3c], 0x10
jne 0x1006b1dc
mov eax, dword [esp + 0x18]
movzx ecx, cl
mov eax, dword [eax + 0x180]
sub eax, dword [edx + 0x5e4c]
cmp eax, dword [edx + 0x5e50]
mov eax, 1
cmovl ecx, eax
mov dword [esp + 0x14], ecx
mov edx, dword [esp + 0x38]
lea ecx, [esp + 0xa0]
push 0
push 0
call fcn.100428e0
or dword [esi + 0x4910], 2
add esp, 8
cmp byte [esp + 0x13], 0
movaps xmm0, xmmword [esp + 0x80]
mov byte [esp + 0x1f], al
movups xmmword [esi + 0x4934], xmm0
je 0x1006b233
movss xmm0, dword [esp + 0x98]
movss dword [edi + 0x21c], xmm0
movss xmm0, dword [esp + 0x70]
movss dword [edi + 0x224], xmm0
mov ecx, dword [esp + 0x14]
test cl, cl
je 0x1006b38e
cmp byte [esi + 0x4a90], 0
jne 0x1006b38e
mov eax, dword [esp + 0x3c]
and eax, 0x4008
cmp eax, 0x4000
jne 0x1006b38e
cmp dword [esi + 0x4ae0], 0
jne 0x1006b38e
cmp dword [esi + 0x4a38], edi
jne 0x1006b38e
mov edx, dword [0x1020f198]
cmp byte [edx + 0x4ad1], 0
je 0x1006b394
cmp dword [edx + 0x4b1c], 0
jne 0x1006b394
cmp dword [edx + 0x4b8c], 0
jne 0x1006b394
mov ecx, dword [esi + 0x4a20]
mov eax, dword [esi + 0x4a24]
inc ecx
mov dword [esp + 0x20], ecx
cmp ecx, eax
jle 0x1006b348
test eax, eax
je 0x1006b2d0
cdq
sub eax, edx
sar eax, 1
add eax, dword [esi + 0x4a24]
jmp 0x1006b2d5
mov eax, 8
cmp eax, ecx
mov edx, ecx
cmovg edx, eax
mov dword [esp + 0x98], edx
cmp edx, dword [esi + 0x4a24]
jle 0x1006b348
lea eax, [edx + edx*2]
shl eax, 3
push eax
call fcn.1012189d
mov edx, dword [esi + 0x4a28]
add esp, 4
mov dword [esp + 0x70], eax
test edx, edx
je 0x1006b331
mov ecx, dword [esi + 0x4a20]
lea ecx, [ecx + ecx*2]
shl ecx, 3
push ecx
push edx
push eax
call fcn.1010c860
add esp, 0xc
push dword [esi + 0x4a28]
call fcn.1011b2ad
mov eax, dword [esp + 0x74]
add esp, 4
mov ecx, dword [esp + 0x20]
mov dword [esi + 0x4a28], eax
mov eax, dword [esp + 0x98]
mov dword [esi + 0x4a24], eax
mov eax, dword [esp + 0x38]
lea edx, [ecx + ecx*2]
mov dword [esi + 0x4a20], ecx
mov ecx, dword [esi + 0x4a28]
mov dword [ecx + edx*8 - 0x18], eax
mov eax, dword [esi + 0x490c]
mov dword [ecx + edx*8 - 0x14], eax
movups xmm0, xmmword [esi + 0x4924]
movups xmmword [ecx + edx*8 - 0x10], xmm0
mov ecx, dword [edi + 0x184]
mov eax, dword [edi + 0x180]
bts ecx, eax
mov dword [edi + 0x184], ecx
mov ecx, dword [esp + 0x14]
mov edx, dword [0x1020f198]
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x20], eax
shr dword [esp + 0x20], 8
and byte [esp + 0x20], 1
cmp byte [esp + 0x1f], 0
jne 0x1006b439
test cl, cl
je 0x1006b423
test al, 8
jne 0x1006b423
mov ecx, dword [edx + 0x3f8c]
mov eax, ecx
mov byte [eax + 0xb0], 1
mov eax, dword [edx + 0x3f8c]
movss xmm0, dword [edx + 0x3914]
addss xmm0, dword [eax + 0x13c]
movss dword [eax + 0x13c], xmm0
addss xmm0, dword [eax + 0x18]
addss xmm0, dword [eax + 0x140]
movss dword [eax + 0xf8], xmm0
inc dword [ecx + 0x180]
mov eax, dword [esp + 0x38]
mov ecx, dword [edx + 0x3f8c]
mov dword [esp + 0x70], eax
add ecx, 0xec
lea eax, [esp + 0x70]
push eax
call fcn.1004a1e0
mov ecx, dword [esp + 0x14]
mov al, cl
pop edi
pop esi
mov ecx, dword [esp + 0xb4]
xor ecx, esp
call fcn.10109e3a
mov esp, ebp
pop ebp
ret
cmp byte [esp + 0x13], 0
je 0x1006b461
call fcn.10057410
or dword [esi + 0x4910], 0x200
movups xmm0, xmmword [edi + 0x21c]
mov eax, dword [esp + 0x3c]
movups xmmword [esi + 0x4944], xmm0
xor edx, edx
test al, 4
jne 0x1006b473
test dword [esi + 0x490c], 0x200
je 0x1006b478
mov edx, 0x1000
movss xmm1, dword [esp + 0x68]
mov ecx, edx
subss xmm1, dword [esp + 0x50]
movss xmm2, dword [esi + 0x390c]
or ecx, 0x200
cmp byte [esp + 0x20], 0
movss xmm3, dword [esi + 0xe00]
cmovne ecx, edx
movaps xmm0, xmm1
subss xmm0, xmm2
comiss xmm3, xmm0
jb 0x1006b4d3
movss xmm0, dword [esp + 0x48]
addss xmm0, xmm0
addss xmm0, dword [esi + 0x3cf4]
addss xmm0, xmm1
addss xmm0, xmm2
comiss xmm0, xmm3
jbe 0x1006b4d3
mov dl, 1
jmp 0x1006b4d5
xor dl, dl
mov byte [esp + 0x1f], dl
cmp edi, dword [esi + 0x3f90]
jne 0x1006b4e5
test dl, dl
jne 0x1006b4ef
or ecx, 0x10000
test dl, dl
je 0x1006b4f4
or ecx, 0x10
jmp 0x1006b503
test al, 0x40
je 0x1006b500
or ecx, 0x120
jmp 0x1006b503
or ecx, 0x20
mov edx, dword [esp + 0x38]
and al, 1
mov byte [esp + 0x4f], al
lea eax, [esp + 0x7f]
push ecx
push eax
lea eax, [esp + 0x86]
push eax
lea ecx, [esp + 0xac]
call fcn.1005ad90
xor cl, cl
add esp, 0xc
mov dword [esp + 0x18], ecx
cmp byte [esp + 0x20], cl
jne 0x1006b6a5
test al, al
je 0x1006b5b0
mov edx, dword [esp + 0x38]
cmp dword [esi + 0x4cb0], edx
je 0x1006b599
mov eax, dword [esp + 0x3c]
test al, 0xc0
je 0x1006b55a
cmp dword [esi + 0x4a50], edx
jne 0x1006b563
mov ecx, 1
mov dword [esp + 0x18], ecx
test al, al
jns 0x1006b583
cmp byte [esp + 0x1f], 0
je 0x1006b57b
cmp byte [esi + 0x4a93], 0
jne 0x1006b57b
mov dl, 1
jmp 0x1006b57d
xor dl, dl
or cl, dl
mov dword [esp + 0x18], ecx
test al, 0x40
je 0x1006b5b0
cmp word [esi + 0x382a], 2
mov edx, dword [esp + 0x14]
jne 0x1006b5b4
mov al, 1
jmp 0x1006b5b8
mov edx, dword [esp + 0x14]
mov eax, 1
test dl, dl
movzx ecx, cl
cmove ecx, eax
mov dword [esp + 0x18], ecx
jmp 0x1006b5b4
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x38]
cmp dword [esi + 0x4a3c], ecx
jne 0x1006b61e
cmp dword [esi + 0x4ae0], 0
jne 0x1006b61e
mov ecx, dword [0x1020f198]
test dl, dl
je 0x1006b624
mov eax, dword [ecx + 0x4a38]
mov ecx, dword [ecx + 0x4a80]
mov byte [esp + 0x18], 1
mov eax, dword [eax + 0x318]
mov dword [eax + ecx*8 + 0x34c], 0x7f7fffff
mov ecx, dword [0x1020f198]
cmp byte [ecx + 0x4a95], 0
mov word [ecx + 0x4ad0], 0
setne al
mov byte [ecx + 0x4a94], al
mov eax, dword [esp + 0x18]
jmp 0x1006b624
mov ecx, dword [0x1020f198]
mov edx, dword [esp + 0x38]
cmp dword [esi + 0x4a3c], edx
mov edx, dword [esp + 0x14]
jne 0x1006b67e
cmp dword [esi + 0x4ae0], 1
jne 0x1006b67e
test dl, dl
jne 0x1006b67e
mov eax, dword [ecx + 0x4a38]
mov ecx, dword [ecx + 0x4a80]
mov eax, dword [eax + 0x318]
mov dword [eax + ecx*8 + 0x34c], 0x7f7fffff
mov ecx, dword [0x1020f198]
cmp byte [ecx + 0x4a95], dl
mov word [ecx + 0x4ad0], 0
setne al
mov byte [ecx + 0x4a94], al
jmp 0x1006b682
test al, al
je 0x1006b6a5
mov ecx, dword [edi + 0x194]
test dl, dl
sete al
mov dword [esp + 0x14], eax
movzx eax, al
push eax
push dword [esp + 0x3c]
call fcn.10034540
or dword [esi + 0x4910], 0x10
movss xmm7, dword [0x101f4f54]
xor ecx, ecx
movaps xmm1, xmm7
call fcn.10034770
cmp byte [esp + 0x58], 0
mov dword [esp + 0x18], eax
je 0x1006b8ce
cmp byte [esp + 0x7f], 0
mov al, byte [esp + 0x7e]
je 0x1006b6dc
test al, al
je 0x1006b6dc
mov ecx, 0x1a
jmp 0x1006b6e6
xor ecx, ecx
test al, al
setne cl
add ecx, 0x18
movss xmm0, dword [esi + 0x38ec]
sub esp, 8
movaps xmm1, xmm7
movss dword [esp + 4], xmm0
call fcn.10034770
add esp, 4
mov dl, 1
mov ecx, eax
push dword [esp + 0x90]
push dword [esp + 0x90]
push dword [esp + 0x90]
push dword [esp + 0x90]
call fcn.100354b0
mov edx, dword [esp + 0x4c]
lea ecx, [esp + 0x94]
add esp, 0x14
push 2
call fcn.100356e0
mov ecx, dword [esp + 0x40]
add esp, 4
test ecx, 0x200
je 0x1006b7f4
test dword [esp + 0x18], 0xff000000
movss xmm0, dword [esp + 0x50]
mulss xmm0, dword [0x101f4f14]
mov edi, dword [edi + 0x270]
movss xmm1, dword [esp + 0x68]
movss xmm3, dword [0x101f4f0c]
subss xmm1, xmm0
movss xmm0, dword [esi + 0x3cf4]
mov eax, dword [edi + 0x2c]
mulss xmm0, xmm3
movss xmm2, dword [eax + 0xc]
addss xmm0, dword [esp + 0x6c]
mulss xmm2, dword [0x101f4eec]
movss dword [esp + 0x70], xmm1
movss dword [esp + 0x74], xmm0
je 0x1006b877
comiss xmm3, xmm2
ja 0x1006b877
push 7
push ecx
lea eax, [esp + 0x78]
mov dword [esp], 0x40afede0
push eax
xorps xmm3, xmm3
mov ecx, edi
call fcn.1004f6f0
push dword [esp + 0x18]
mov ecx, edi
push dword [edi + 0x54]
push dword [edi + 0x5c]
call fcn.1004ef70
mov ecx, dword [esp + 0x3c]
mov dword [edi + 0x54], 0
jmp 0x1006b877
cmp byte [esp + 0x20], 0
movss xmm0, dword [esp + 0x68]
jne 0x1006b861
cmp byte [esp + 0x14], 0
subss xmm0, dword [esp + 0x50]
addss xmm0, dword [esp + 0x48]
movss dword [esp + 0x70], xmm0
movss xmm0, dword [esp + 0x6c]
movss dword [esp + 0x74], xmm0
je 0x1006b833
shr ecx, 0x15
not ecx
and ecx, 1
or ecx, 2
jmp 0x1006b838
mov ecx, 1
push dword [esp + 0x74]
movss xmm3, dword [0x101f4f54]
push dword [esp + 0x74]
mov edx, dword [esp + 0x20]
push ecx
mov ecx, dword [edi + 0x270]
call fcn.10052d80
mov ecx, dword [esp + 0x48]
add esp, 0xc
jmp 0x1006b877
movss xmm1, dword [esp + 0x50]
subss xmm1, dword [esp + 0x48]
subss xmm0, xmm1
movss dword [esp + 0x68], xmm0
test ecx, 0x100000
je 0x1006b8a2
movss xmm0, dword [esi + 0x3cf4]
addss xmm0, dword [esi + 0x38e4]
movss xmm1, dword [esp + 0x40]
subss xmm1, xmm0
movss dword [esp + 0x88], xmm1
cmp byte [esi + 0x5e24], 0
je 0x1006bacb
mov ecx, dword [0x1020f198]
mov dword [ecx + 0x5e3c], 0x101f4088
mov dword [ecx + 0x5e40], 0x101f4088
jmp 0x1006bad1
mov cl, byte [esp + 0x7e]
test cl, cl
jne 0x1006b8e0
cmp byte [esp + 0x4f], cl
je 0x1006b970
cmp byte [esp + 0x7f], 0
je 0x1006b8f5
test cl, cl
je 0x1006b8f5
mov dword [esp + 0x40], 0x1a
jmp 0x1006b903
xor eax, eax
test cl, cl
setne al
add eax, 0x18
mov dword [esp + 0x40], eax
mov ecx, dword [esp + 0x8c]
movaps xmm1, xmm7
mov edx, dword [esp + 0x84]
mov eax, dword [esp + 0x88]
mov dword [esp + 0x74], ecx
mov ecx, dword [0x1020f198]
push 0
push ecx
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x88]
mov dword [esp + 0xa4], edx
mov edx, dword [ecx + 0x3f8c]
mov ecx, dword [esp + 0x48]
mov dword [esp + 0xa0], eax
mov dword [esp], 0
call fcn.10034770
mov ecx, dword [edx + 0x270]
push eax
lea eax, [esp + 0x7c]
push eax
lea eax, [esp + 0xa8]
push eax
call fcn.1004ff10
mov edx, dword [esp + 0x38]
lea ecx, [esp + 0x80]
push 2
call fcn.100356e0
mov ecx, dword [esp + 0x40]
add esp, 4
test ecx, 0x200
je 0x1006ba2f
test dword [esp + 0x18], 0xff000000
movss xmm0, dword [esp + 0x50]
movss xmm3, dword [0x101f4f0c]
movss xmm1, dword [esp + 0x68]
mov edi, dword [edi + 0x270]
mulss xmm0, xmm3
mov eax, dword [edi + 0x2c]
subss xmm1, xmm0
movss xmm0, dword [esi + 0x3cf4]
mulss xmm0, xmm3
movss xmm2, dword [eax + 0xc]
mulss xmm2, dword [0x101f4eec]
addss xmm0, dword [esp + 0x6c]
movss dword [esp + 0x70], xmm1
movss dword [esp + 0x74], xmm0
je 0x1006baa6
comiss xmm3, xmm2
ja 0x1006baa6
push 7
push ecx
lea eax, [esp + 0x78]
mov dword [esp], 0x40afede0
push eax
xorps xmm3, xmm3
mov ecx, edi
call fcn.1004f6f0
push dword [esp + 0x18]
mov ecx, edi
push dword [edi + 0x54]
push dword [edi + 0x5c]
call fcn.1004ef70
mov dword [edi + 0x54], 0
jmp 0x1006baa6
cmp byte [esp + 0x20], 0
jne 0x1006baa6
cmp byte [esp + 0x14], 0
movss xmm1, dword [esp + 0x68]
movss xmm0, dword [esi + 0x3cf4]
subss xmm1, dword [esp + 0x50]
mulss xmm0, dword [0x101f4ee4]
addss xmm1, dword [esp + 0x48]
addss xmm0, dword [esp + 0x6c]
movss dword [esp + 0x70], xmm1
movss dword [esp + 0x74], xmm0
je 0x1006ba7e
shr ecx, 0x15
not ecx
and ecx, 1
or ecx, 2
jmp 0x1006ba83
mov ecx, 1
push dword [esp + 0x74]
movss xmm3, dword [0x101f4f20]
push dword [esp + 0x74]
mov edx, dword [esp + 0x20]
push ecx
mov ecx, dword [edi + 0x270]
call fcn.10052d80
add esp, 0xc
cmp byte [esi + 0x5e24], 0
je 0x1006bacb
mov ecx, dword [0x1020f198]
mov dword [ecx + 0x5e3c], 0x101f46e0
mov dword [ecx + 0x5e40], 0
jmp 0x1006bad1
mov ecx, dword [0x1020f198]
cmp byte [esp + 0x13], 0
je 0x1006bb73
mov edi, dword [ecx + 0x3f8c]
mov ecx, dword [ecx + 0x4ce0]
mov eax, dword [edi + 0x270]
imul esi, dword [ecx + 0x48], 0x70
movups xmm0, xmmword [ecx + 0x144]
movss xmm1, dword [ecx + 0x144]
movss xmm2, dword [ecx + 0x148]
add esi, dword [ecx + 0x10]
movss xmm3, dword [ecx + 0x14c]
movss xmm4, dword [ecx + 0x150]
movups xmmword [edi + 0x21c], xmm0
movss dword [eax + 0x60], xmm1
movss dword [eax + 0x64], xmm2
movss dword [eax + 0x68], xmm3
movss dword [eax + 0x6c], xmm4
mov eax, dword [edi + 0x270]
mov edx, dword [eax + 0x3c]
mov eax, dword [eax + 0x44]
add edx, edx
movss dword [eax + edx*8 - 0x10], xmm1
movss dword [eax + edx*8 - 0xc], xmm2
movss dword [eax + edx*8 - 8], xmm3
movss dword [eax + edx*8 - 4], xmm4
movzx eax, word [esi + 0x5c]
mov ecx, dword [ecx + 0x168]
push eax
push dword [edi + 0x270]
call fcn.10050a20
cmp byte [esp + 0x58], 0
push 0
je 0x1006bbb3
lea eax, [esp + 0x74]
mov dword [esp + 0x74], 0
push eax
lea eax, [esp + 0x68]
mov dword [esp + 0x7c], 0
push eax
push dword [esp + 0x60]
lea edx, [esp + 0x98]
push dword [esp + 0x6c]
lea ecx, [esp + 0x7c]
call fcn.10034e90
add esp, 0x14
jmp 0x1006bbcb
push dword [esp + 0x70]
mov edx, dword [esp + 0x5c]
push dword [esp + 0x70]
mov ecx, dword [esp + 0x68]
call fcn.10034a80
add esp, 0xc
mov eax, dword [esp + 0x14]
test al, al
je 0x1006bc4a
test byte [esp + 0x3c], 8
jne 0x1006bc4a
mov edx, dword [0x1020f198]
mov ecx, dword [edx + 0x3f8c]
mov eax, ecx
mov byte [eax + 0xb0], 1
mov eax, dword [edx + 0x3f8c]
movss xmm0, dword [edx + 0x3914]
addss xmm0, dword [eax + 0x13c]
movss dword [eax + 0x13c], xmm0
addss xmm0, dword [eax + 0x18]
addss xmm0, dword [eax + 0x140]
movss dword [eax + 0xf8], xmm0
inc dword [ecx + 0x180]
mov eax, dword [esp + 0x38]
mov ecx, dword [edx + 0x3f8c]
mov dword [esp + 0x70], eax
add ecx, 0xec
lea eax, [esp + 0x70]
push eax
call fcn.1004a1e0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0xbc]
pop edi
pop esi
xor ecx, esp
call fcn.10109e3a
mov esp, ebp
pop ebp
ret