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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xffffffc0
push edi
push esi
push ebx
sub esp, 0x1b4
movsd xmm0, qword [0x101e80b0]
movsd xmm1, qword [0x101e80b8]
movsd qword [esp + 0x118], xmm0
movsd qword [esp + 0x120], xmm1
mov ebx, edx
lea esi, [ebx*8]
mov dword [esp + 0xf8], ecx
inc dword [0x102192d8]
mov dword [esp + 0x17c], eax
push esi
call fcn.101bcde0
mov dword [esp + 0x194], eax
push esi
call fcn.101bcde0
mov dword [esp + 0x19c], eax
push esi
call fcn.101bcde0
mov dword [esp + 0x1a4], eax
push esi
call fcn.101bcde0
mov dword [esp + 0x1ac], eax
mov eax, ebx
shl eax, 4
push eax
call fcn.101bcde0
add esp, 0x14
mov dword [esp + 0x178], eax
test ebx, ebx
jle 0x100f6d9c
mov esi, eax
mov edi, dword [esp + 0x17c]
xor edx, edx
xor eax, eax
mov ecx, edx
shl ecx, 5
movsd xmm0, qword [edi + ecx + 0x18]
subsd xmm0, qword [edi + ecx + 8]
movsd xmm1, qword [edi + ecx + 0x10]
subsd xmm1, qword [edi + ecx]
movsd qword [eax + esi + 8], xmm0
movsd qword [eax + esi], xmm1
add eax, 0x10
inc edx
cmp edx, ebx
jb 0x100f5718
mov edx, dword [esp + 0x194]
and edx, 0xf
je 0x100f5761
test dl, 7
jne 0x100f6946
mov edx, 1
lea eax, [edx + 2]
cmp ebx, eax
jl 0x100f6946
mov ecx, ebx
sub ecx, edx
and ecx, 1
neg ecx
add ecx, ebx
pxor xmm0, xmm0
movsd qword [esp + 0x100], xmm0
test edx, edx
jbe 0x100f5875
movsd xmm0, qword [esp + 0x100]
mov esi, dword [esp + 0x17c]
mov dword [esp + 0x30], ecx
mov dword [esp + 0x34], edx
mov edx, dword [esp + 0x178]
mov dword [esp + 0x184], ebx
xor eax, eax
mov ecx, eax
shl ecx, 4
movsd xmm1, qword [edx + ecx + 8]
mov ebx, eax
shl ebx, 5
comisd xmm1, xmm0
jb 0x100f57f0
mov edi, dword [esp + 0x198]
movsd xmm1, qword [esi + ebx + 8]
movsd xmm2, qword [esi + ebx + 0x18]
movsd qword [edi + eax*8], xmm1
mov edi, dword [esp + 0x19c]
movsd qword [edi + eax*8], xmm2
jmp 0x100f5814
mov edi, dword [esp + 0x198]
movsd xmm1, qword [esi + ebx + 0x18]
movsd xmm2, qword [esi + ebx + 8]
movsd qword [edi + eax*8], xmm1
mov edi, dword [esp + 0x19c]
movsd qword [edi + eax*8], xmm2
movsd xmm1, qword [edx + ecx]
comisd xmm1, xmm0
jb 0x100f5838
mov ecx, dword [esp + 0x190]
movsd xmm1, qword [esi + ebx]
movsd qword [ecx + eax*8], xmm1
movsd xmm1, qword [esi + ebx + 0x10]
jmp 0x100f584f
mov ecx, dword [esp + 0x190]
movsd xmm1, qword [esi + ebx + 0x10]
movsd qword [ecx + eax*8], xmm1
movsd xmm1, qword [esi + ebx]
mov ecx, dword [esp + 0x194]
movsd qword [ecx + eax*8], xmm1
inc eax
cmp eax, dword [esp + 0x34]
jb 0x100f57b4
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x34]
mov ebx, dword [esp + 0x184]
mov eax, dword [esp + 0x190]
lea esi, [eax + edx*8]
test esi, 0xf
je 0x100f5a15
mov dword [esp + 0x30], ecx
mov ecx, dword [esp + 0x194]
mov dword [esp + 0x184], ebx
mov ebx, dword [esp + 0x198]
mov esi, dword [esp + 0x19c]
movsd xmm4, qword [ebx + edx*8]
movhpd xmm4, qword [ebx + edx*8 + 8]
movsd xmm6, qword [esi + edx*8]
movhpd xmm6, qword [esi + edx*8 + 8]
mov edi, edx
shl edi, 4
add edi, dword [esp + 0x178]
movsd xmm3, qword [edi + 8]
movhpd xmm3, qword [edi + 0x18]
mov eax, edx
shl eax, 5
pxor xmm2, xmm2
add eax, dword [esp + 0x17c]
movsd xmm1, qword [eax + 8]
movhpd xmm1, qword [eax + 0x28]
cmplepd xmm2, xmm3
movaps xmm5, xmm2
movaps xmm7, xmm2
andps xmm1, xmm2
andnps xmm5, xmm4
orps xmm1, xmm5
movsd qword [ebx + edx*8], xmm1
movhpd qword [ebx + edx*8 + 8], xmm1
movsd xmm3, qword [eax + 0x18]
movhpd xmm3, qword [eax + 0x38]
andnps xmm7, xmm6
movaps xmm6, xmm2
andps xmm3, xmm2
orps xmm3, xmm7
movsd qword [esi + edx*8], xmm3
movhpd qword [esi + edx*8 + 8], xmm3
movsd xmm0, qword [eax + 0x18]
movhpd xmm0, qword [eax + 0x38]
andps xmm1, xmm2
andps xmm3, xmm2
andnps xmm6, xmm0
orps xmm1, xmm6
movsd qword [ebx + edx*8], xmm1
movhpd qword [ebx + edx*8 + 8], xmm1
mov ebx, dword [esp + 0x190]
movsd xmm4, qword [ebx + edx*8]
movhpd xmm4, qword [ebx + edx*8 + 8]
movsd xmm1, qword [eax + 8]
movhpd xmm1, qword [eax + 0x28]
andnps xmm2, xmm1
orps xmm3, xmm2
movsd qword [esi + edx*8], xmm3
movhpd qword [esi + edx*8 + 8], xmm3
movsd xmm2, qword [edi]
movhpd xmm2, qword [edi + 0x10]
movsd xmm3, qword [eax]
movhpd xmm3, qword [eax + 0x20]
pxor xmm0, xmm0
cmplepd xmm0, xmm2
movaps xmm5, xmm0
movaps xmm2, xmm0
andps xmm3, xmm0
andnps xmm5, xmm4
movaps xmm4, xmm0
orps xmm3, xmm5
andnps xmm4, xmmword [ecx + edx*8]
movsd qword [ebx + edx*8], xmm3
movhpd qword [ebx + edx*8 + 8], xmm3
movsd xmm7, qword [eax + 0x10]
movhpd xmm7, qword [eax + 0x30]
andps xmm3, xmm0
andps xmm7, xmm0
orps xmm7, xmm4
movaps xmmword [ecx + edx*8], xmm7
movsd xmm1, qword [eax + 0x10]
andps xmm7, xmm0
movhpd xmm1, qword [eax + 0x30]
andnps xmm2, xmm1
orps xmm3, xmm2
movsd qword [ebx + edx*8], xmm3
movhpd qword [ebx + edx*8 + 8], xmm3
movsd xmm6, qword [eax]
movhpd xmm6, qword [eax + 0x20]
andnps xmm0, xmm6
orps xmm7, xmm0
movaps xmmword [ecx + edx*8], xmm7
add edx, 2
cmp edx, dword [esp + 0x30]
jb 0x100f589d
jmp 0x100f5b82
mov dword [esp + 0x30], ecx
mov ecx, dword [esp + 0x194]
mov dword [esp + 0x184], ebx
mov ebx, dword [esp + 0x198]
mov esi, dword [esp + 0x19c]
movsd xmm4, qword [ebx + edx*8]
movhpd xmm4, qword [ebx + edx*8 + 8]
movsd xmm6, qword [esi + edx*8]
movhpd xmm6, qword [esi + edx*8 + 8]
mov edi, edx
shl edi, 4
add edi, dword [esp + 0x178]
movsd xmm3, qword [edi + 8]
movhpd xmm3, qword [edi + 0x18]
mov eax, edx
shl eax, 5
pxor xmm2, xmm2
add eax, dword [esp + 0x17c]
movsd xmm1, qword [eax + 8]
movhpd xmm1, qword [eax + 0x28]
cmplepd xmm2, xmm3
movaps xmm5, xmm2
movaps xmm7, xmm2
andps xmm1, xmm2
andnps xmm5, xmm4
orps xmm1, xmm5
movsd qword [ebx + edx*8], xmm1
movhpd qword [ebx + edx*8 + 8], xmm1
movsd xmm3, qword [eax + 0x18]
movhpd xmm3, qword [eax + 0x38]
andnps xmm7, xmm6
movaps xmm6, xmm2
andps xmm3, xmm2
orps xmm3, xmm7
movsd qword [esi + edx*8], xmm3
movhpd qword [esi + edx*8 + 8], xmm3
movsd xmm0, qword [eax + 0x18]
movhpd xmm0, qword [eax + 0x38]
andps xmm1, xmm2
andps xmm3, xmm2
andnps xmm6, xmm0
orps xmm1, xmm6
movsd qword [ebx + edx*8], xmm1
movhpd qword [ebx + edx*8 + 8], xmm1
mov ebx, dword [esp + 0x190]
movsd xmm1, qword [eax + 8]
movhpd xmm1, qword [eax + 0x28]
andnps xmm2, xmm1
orps xmm3, xmm2
movsd qword [esi + edx*8], xmm3
movhpd qword [esi + edx*8 + 8], xmm3
movsd xmm2, qword [edi]
movhpd xmm2, qword [edi + 0x10]
pxor xmm0, xmm0
cmplepd xmm0, xmm2
movaps xmm4, xmm0
movaps xmm5, xmm0
movaps xmm1, xmm0
andnps xmm4, xmmword [ebx + edx*8]
movsd xmm2, qword [eax]
movhpd xmm2, qword [eax + 0x20]
andnps xmm5, xmmword [ecx + edx*8]
andps xmm2, xmm0
orps xmm2, xmm4
movaps xmmword [ebx + edx*8], xmm2
movsd xmm6, qword [eax + 0x10]
andps xmm2, xmm0
movhpd xmm6, qword [eax + 0x30]
andps xmm6, xmm0
orps xmm6, xmm5
movaps xmmword [ecx + edx*8], xmm6
andps xmm6, xmm0
movsd xmm4, qword [eax + 0x10]
movhpd xmm4, qword [eax + 0x30]
andnps xmm1, xmm4
orps xmm2, xmm1
movaps xmmword [ebx + edx*8], xmm2
movsd xmm3, qword [eax]
movhpd xmm3, qword [eax + 0x20]
andnps xmm0, xmm3
orps xmm6, xmm0
movaps xmmword [ecx + edx*8], xmm6
add edx, 2
cmp edx, dword [esp + 0x30]
jb 0x100f5a27
mov ecx, dword [esp + 0x30]
mov ebx, dword [esp + 0x184]
cmp ecx, ebx
jb 0x100f5b98
test ebx, ebx
jmp 0x100f5c74
movsd xmm0, qword [esp + 0x100]
mov eax, dword [esp + 0x178]
mov edx, dword [esp + 0x17c]
mov dword [esp + 0x184], ebx
mov ebx, ecx
shl ebx, 4
movsd xmm1, qword [eax + ebx + 8]
mov esi, ecx
shl esi, 5
comisd xmm1, xmm0
jb 0x100f5bf2
mov edi, dword [esp + 0x198]
movsd xmm1, qword [edx + esi + 8]
movsd xmm2, qword [edx + esi + 0x18]
movsd qword [edi + ecx*8], xmm1
mov edi, dword [esp + 0x19c]
movsd qword [edi + ecx*8], xmm2
jmp 0x100f5c16
mov edi, dword [esp + 0x198]
movsd xmm1, qword [edx + esi + 0x18]
movsd xmm2, qword [edx + esi + 8]
movsd qword [edi + ecx*8], xmm1
mov edi, dword [esp + 0x19c]
movsd qword [edi + ecx*8], xmm2
movsd xmm1, qword [eax + ebx]
comisd xmm1, xmm0
jb 0x100f5c3a
mov ebx, dword [esp + 0x190]
movsd xmm1, qword [edx + esi]
movsd qword [ebx + ecx*8], xmm1
movsd xmm1, qword [edx + esi + 0x10]
jmp 0x100f5c51
mov ebx, dword [esp + 0x190]
movsd xmm1, qword [edx + esi + 0x10]
movsd qword [ebx + ecx*8], xmm1
movsd xmm1, qword [edx + esi]
mov ebx, dword [esp + 0x194]
movsd qword [ebx + ecx*8], xmm1
inc ecx
cmp ecx, dword [esp + 0x184]
jb 0x100f5bb6
mov ebx, dword [esp + 0x184]
test ebx, ebx
mov eax, dword [esp + 0x17c]
movsd xmm1, qword [eax]
movsd xmm2, qword [eax + 8]
jle 0x100f5cc9
mov ecx, dword [esp + 0x190]
mov esi, eax
xor eax, eax
comisd xmm1, xmmword [ecx + eax*8]
jb 0x100f5cc2
mov edx, eax
shl edx, 5
movsd xmm3, qword [esi + edx]
movsd xmm0, qword [esi + edx + 8]
comisd xmm1, xmm3
jbe 0x100f5cb6
movaps xmm1, xmm3
movaps xmm2, xmm0
jmp 0x100f5cc2
ucomisd xmm3, xmm1
jp 0x100f5cc2
je 0x100f690b
inc eax
cmp eax, ebx
jl 0x100f5c91
test ebx, ebx
jle 0x100f6d74
movsd xmm0, qword [esp + 0x100]
movsd xmm3, qword [0x101e8150]
movsd qword [esp + 0x68], xmm0
movsd xmm0, qword [0x101e8120]
movsd qword [esp + 0x60], xmm3
movsd xmm3, qword [0x101e8118]
mov eax, 0xffffffff
mov dword [esp + 0x18c], eax
mov dword [esp + 0x188], eax
xor edi, edi
mov eax, dword [esp + 0x190]
movsd xmm4, qword [eax + edi*8]
ucomisd xmm4, xmm1
jp 0x100f5d29
je 0x100f6b9e
inc edi
cmp edi, ebx
jl 0x100f5d18
ucomisd xmm0, xmm3
jp 0x100f5d3a
je 0x100f6b20
mov esi, dword [esp + 0x18c]
mov edx, dword [esp + 0x17c]
push 0x10
shl esi, 5
lea edi, [edx + esi]
push 1
movsd xmm5, qword [edi]
movsd xmm6, qword [edi + 8]
movsd qword [esp + 0x60], xmm6
movsd qword [esp + 0xf8], xmm5
call fcn.101beb7a
movsd xmm5, qword [esp + 0xf8]
movsd xmm6, qword [esp + 0x60]
add esp, 8
mov dword [esp + 0xc4], eax
mov ecx, eax
movsd xmm2, qword [esp + 0x100]
movsd xmm1, qword [0x101e8128]
movsd xmm0, qword [0x101e8130]
movsd qword [ecx], xmm5
movsd qword [esp + 0x108], xmm2
movsd qword [ecx + 8], xmm6
imul ecx, ebx, 0x64
mov eax, 1
xor edx, edx
mov dword [esp + 0x110], ecx
mov ecx, eax
mov dword [esp + 0x184], ebx
mov eax, esi
mov esi, ecx
mov ecx, edx
mov edx, edi
mov edi, ecx
mov ecx, dword [esp + 0x17c]
movsd xmm3, qword [edx + 0x18]
movsd xmm4, qword [edx + 0x10]
movsd qword [esp + 0x148], xmm1
movsd qword [esp + 0xd0], xmm5
movsd qword [esp + 0xd8], xmm6
movsd qword [esp + 0xe0], xmm4
movsd qword [esp + 0xe8], xmm3
movaps xmm2, xmm3
movaps xmm7, xmm4
subsd xmm2, qword [edx + 8]
mulsd xmm2, xmm2
subsd xmm7, qword [eax + ecx]
mulsd xmm7, xmm7
inc edi
comisd xmm4, xmm5
addsd xmm7, xmm2
movsd qword [esp + 0x50], xmm7
jbe 0x100f5e4d
movaps xmm2, xmm5
addsd xmm4, xmm0
subsd xmm2, xmm0
jmp 0x100f5e5b
movaps xmm2, xmm4
movaps xmm4, xmm0
subsd xmm2, xmm0
addsd xmm4, xmm5
comisd xmm3, xmm6
jbe 0x100f5e77
movaps xmm7, xmm6
addsd xmm3, xmm0
subsd xmm7, xmm0
movsd qword [esp + 0x170], xmm7
jmp 0x100f5e8b
subsd xmm3, xmm0
movsd qword [esp + 0x170], xmm3
movaps xmm3, xmm0
addsd xmm3, xmm6
cmp dword [esp + 0x184], 0
jle 0x100f6881
movsd xmm7, qword [0x101e8150]
movsd qword [esp + 0x138], xmm7
movsd qword [esp + 0x168], xmm3
movsd qword [esp + 0x158], xmm4
movsd qword [esp + 0x160], xmm2
movsd qword [esp + 0x58], xmm6
movsd qword [esp + 0xf0], xmm5
mov dword [esp + 0x128], esi
mov dword [esp + 0x114], edi
mov ebx, 0xffffffff
mov dword [esp + 0x12c], edx
mov dword [esp + 0x130], eax
xor ecx, ecx
mov esi, ecx
mov dword [esp + 0x134], ecx
mov eax, dword [esp + 0x19c]
movsd xmm0, qword [eax + esi*8]
comisd xmm0, xmmword [esp + 0x170]
jb 0x100f6103
mov eax, dword [esp + 0x198]
movsd xmm0, qword [esp + 0x168]
comisd xmm0, xmmword [eax + esi*8]
jb 0x100f6103
mov eax, dword [esp + 0x194]
movsd xmm0, qword [eax + esi*8]
comisd xmm0, xmmword [esp + 0x160]
jb 0x100f6103
mov eax, dword [esp + 0x190]
movsd xmm0, qword [esp + 0x158]
comisd xmm0, xmmword [eax + esi*8]
jb 0x100f6103
cmp esi, dword [esp + 0x18c]
je 0x100f6103
cmp esi, dword [esp + 0x188]
je 0x100f6103
lea edi, [esp + 0x180]
mov dword [esp + 0xc], edi
lea eax, [esp + 0x148]
mov edx, esi
shl edx, 5
add edx, dword [esp + 0x17c]
mov dword [esp + 0x10], eax
lea edi, [esp + 0x150]
mov dword [esp + 0x14], edi
lea eax, [esp + 0xd0]
lea ecx, [esp + 0x118]
call fcn.100f71dc
test eax, eax
je 0x100f6103
movsd xmm0, qword [esp + 0x148]
mov edi, dword [esp + 0x180]
mov eax, dword [esp + 0x18c]
movsd xmm1, qword [esp + 0x138]
movsd xmm2, qword [esp + 0x150]
mov edx, dword [esp + 0x178]
movsd qword [esp + 0x140], xmm0
movsd qword [esp + 0x18], xmm0
movsd qword [esp + 0x20], xmm1
movsd qword [esp + 0x28], xmm2
mov ecx, edi
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x188]
mov dword [esp + 0x10], esi
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x17c]
call fcn.100f6db0
test eax, eax
je 0x100f6103
cmp edi, 3
je 0x100f695a
cmp ebx, 0xffffffff
je 0x100f60c0
movsd xmm0, qword [esp + 0x138]
comisd xmm0, xmmword [esp + 0x140]
ja 0x100f60c0
movsd xmm0, qword [esp + 0x140]
ucomisd xmm0, qword [esp + 0x138]
jne 0x100f6126
jp 0x100f6126
mov eax, dword [esp + 0x17c]
mov edi, esi
shl edi, 5
movsd xmm0, qword [edi + eax + 0x10]
mov edx, esp
movsd qword [edx], xmm0
movsd xmm1, qword [edi + eax + 0x18]
movsd qword [edx + 8], xmm1
mov edx, dword [esp + 0x178]
mov ecx, dword [esp + 0x18c]
mov dword [esp + 0x1c], ebx
call fcn.100f6fd0
test eax, eax
je 0x100f6116
movsd xmm0, qword [esp + 0x140]
movsd xmm1, qword [esp + 0x118]
movsd xmm2, qword [esp + 0x120]
movsd qword [esp + 0x138], xmm0
movsd qword [esp + 0x108], xmm1
movsd qword [esp + 0x100], xmm2
mov dword [esp + 0x134], 0
mov ebx, esi
inc esi
cmp esi, dword [esp + 0x184]
jl 0x100f5f00
jmp 0x100f691a
inc esi
cmp esi, dword [esp + 0x184]
jl 0x100f5f00
jmp 0x100f6134
inc esi
cmp esi, dword [esp + 0x184]
jl 0x100f5f00
movsd xmm0, qword [0x101e8130]
movsd xmm1, qword [0x101e8128]
mov esi, dword [esp + 0x128]
mov edi, dword [esp + 0x114]
cmp esi, dword [esp + 0x110]
jg 0x100f6881
cmp edi, dword [esp + 0x110]
jg 0x100f6881
cmp esi, 1
jle 0x100f649e
mov ecx, dword [esp + 0xc4]
movsd xmm3, qword [0x101e8140]
movsd xmm5, qword [ecx]
movaps xmm6, xmm5
subsd xmm6, qword [esp + 0x108]
mulsd xmm6, xmm6
movsd xmm4, qword [ecx + 8]
movaps xmm2, xmm4
subsd xmm2, qword [esp + 0x100]
mulsd xmm2, xmm2
addsd xmm6, xmm2
comisd xmm3, xmm6
ja 0x100f687a
mov eax, dword [esp + 0x17c]
movsd xmm2, qword [ecx + 0x10]
mov ecx, ebx
shl ecx, 5
movsd xmm3, qword [ecx + eax + 0x10]
mov dword [esp + 0x3c], ecx
comisd xmm5, xmm2
jbe 0x100f6254
comisd xmm3, xmmword [esp + 0x108]
jbe 0x100f6221
movsd xmm7, qword [0x101e8148]
movsd xmm6, qword [esp + 0x108]
addsd xmm7, xmm5
comisd xmm6, xmm7
ja 0x100f649e
movsd xmm6, qword [0x101e8148]
addsd xmm6, xmm3
comisd xmm2, xmm6
ja 0x100f649e
jmp 0x100f62c3
movsd xmm6, qword [0x101e8148]
addsd xmm6, xmm5
comisd xmm3, xmm6
ja 0x100f649e
movsd xmm6, qword [0x101e8148]
addsd xmm6, qword [esp + 0x108]
comisd xmm2, xmm6
ja 0x100f649e
jmp 0x100f62c3
comisd xmm3, xmmword [esp + 0x108]
jbe 0x100f6292
addsd xmm2, qword [0x101e8148]
movsd xmm6, qword [esp + 0x108]
comisd xmm6, xmm2
ja 0x100f649e
movsd xmm2, qword [0x101e8148]
addsd xmm2, xmm3
comisd xmm5, xmm2
ja 0x100f649e
jmp 0x100f62c3
movsd xmm6, qword [0x101e8148]
addsd xmm2, xmm6
comisd xmm3, xmm2
ja 0x100f649e
movsd xmm2, qword [0x101e8148]
addsd xmm2, qword [esp + 0x108]
comisd xmm5, xmm2
ja 0x100f649e
mov ecx, dword [esp + 0xc4]
movsd xmm6, qword [ecx + 0x18]
mov ecx, dword [esp + 0x3c]
movsd xmm2, qword [ecx + eax + 0x18]
movsd qword [esp + 0x30], xmm6
comisd xmm4, xmm6
jbe 0x100f6369
comisd xmm2, xmmword [esp + 0x100]
jbe 0x100f6330
addsd xmm4, qword [0x101e8148]
movsd xmm6, qword [esp + 0x100]
comisd xmm6, xmm4
ja 0x100f649e
movsd xmm6, qword [0x101e8148]
movsd xmm4, qword [esp + 0x30]
addsd xmm6, xmm2
comisd xmm4, xmm6
ja 0x100f649e
jmp 0x100f63e0
movsd xmm6, qword [0x101e8148]
addsd xmm4, xmm6
comisd xmm2, xmm4
ja 0x100f649e
movsd xmm6, qword [0x101e8148]
addsd xmm6, qword [esp + 0x100]
movsd xmm4, qword [esp + 0x30]
comisd xmm4, xmm6
ja 0x100f649e
jmp 0x100f63e0
comisd xmm2, xmmword [esp + 0x100]
jbe 0x100f63ad
movsd xmm7, qword [esp + 0x30]
addsd xmm7, qword [0x101e8148]
movsd xmm6, qword [esp + 0x100]
comisd xmm6, xmm7
ja 0x100f649e
movsd xmm6, qword [0x101e8148]
addsd xmm6, xmm2
comisd xmm4, xmm6
ja 0x100f649e
jmp 0x100f63e0
movsd xmm6, qword [esp + 0x30]
addsd xmm6, qword [0x101e8148]
comisd xmm2, xmm6
ja 0x100f649e
movsd xmm6, qword [0x101e8148]
addsd xmm6, qword [esp + 0x100]
comisd xmm4, xmm6
ja 0x100f649e
mov ecx, dword [esp + 0xc4]
movsd xmm7, qword [esp + 0x108]
movsd qword [esp + 0x60], xmm5
movsd xmm4, qword [ecx + 8]
movsd qword [esp + 0x68], xmm4
movsd xmm4, qword [esp + 0x100]
movsd xmm5, qword [ecx + 0x10]
movsd qword [esp + 0x70], xmm5
lea eax, [esp + 0x60]
movsd xmm6, qword [ecx + 0x18]
movsd qword [esp + 0x78], xmm6
movsd qword [esp + 0x80], xmm7
movsd qword [esp + 0x88], xmm4
movsd qword [esp + 0x90], xmm3
movsd qword [esp + 0x98], xmm2
lea ecx, [esp + 0xc0]
mov dword [esp + 0xc], ecx
lea ecx, [esp + 0xb0]
mov dword [esp + 0x10], ecx
lea ecx, [esp + 0xb8]
mov dword [esp + 0x14], ecx
lea edx, [esp + 0x80]
lea ecx, [esp + 0xa0]
call fcn.100f71dc
movsd xmm1, qword [0x101e8128]
movsd xmm0, qword [0x101e8130]
test eax, eax
je 0x100f649e
cmp dword [esp + 0xc0], 3
je 0x100f665f
movsd xmm4, qword [0x1020c120]
mov ecx, dword [esp + 0xc4]
mov edx, esi
shl edx, 4
movsd xmm2, qword [edx + ecx - 0x10]
subsd xmm2, qword [esp + 0x108]
comisd xmm4, xmm2
jbe 0x100f6510
pxor xmm3, xmm3
subsd xmm3, xmm4
comisd xmm2, xmm3
jbe 0x100f6510
movsd xmm2, qword [edx + ecx - 8]
subsd xmm2, qword [esp + 0x100]
comisd xmm4, xmm2
jbe 0x100f6510
comisd xmm2, xmm3
jbe 0x100f6510
movsd xmm2, qword [esp + 0x108]
movsd xmm3, qword [esp + 0x100]
movsd qword [edx + ecx - 0x10], xmm2
movsd qword [edx + ecx - 8], xmm3
jmp 0x100f656a
lea ecx, [esi + 1]
mov dword [esp + 0x48], ecx
push 0x10
push ecx
push esi
push dword [esp + 0xd0]
mov dword [esp + 0x5c], edx
call fcn.100db0e0
movsd xmm1, qword [0x101e8128]
movsd xmm0, qword [0x101e8130]
mov edx, dword [esp + 0x5c]
add esp, 0x10
mov dword [esp + 0xc4], eax
movsd xmm2, qword [esp + 0x108]
movsd xmm3, qword [esp + 0x100]
mov esi, dword [esp + 0x48]
movsd qword [eax + edx], xmm2
movsd qword [eax + edx + 8], xmm3
cmp esi, 3
jl 0x100f6614
mov ecx, dword [esp + 0xc4]
mov eax, esi
shl eax, 4
mov dword [esp + 0x38], eax
lea ecx, [ecx + eax - 0x30]
push 8
push 1
push ecx
call fcn.100ad140
movsd xmm1, qword [0x101e8128]
movsd xmm0, qword [0x101e8130]
fstp qword [esp + 0xd4]
movsd xmm4, qword [esp + 0xd4]
add esp, 0xc
movsd xmm3, qword [0x1020c120]
comisd xmm3, xmm4
jbe 0x100f65d0
pxor xmm2, xmm2
subsd xmm2, xmm3
comisd xmm4, xmm2
ja 0x100f65f0
movsd xmm2, qword [0x101e8138]
subsd xmm4, xmm2
comisd xmm3, xmm4
jbe 0x100f6614
pxor xmm2, xmm2
subsd xmm2, xmm3
comisd xmm4, xmm2
jbe 0x100f6614
mov eax, dword [esp + 0xc4]
mov ecx, dword [esp + 0x38]
movsd xmm2, qword [ecx + eax - 0x10]
movsd xmm3, qword [ecx + eax - 8]
movsd qword [ecx + eax - 0x20], xmm2
movsd qword [ecx + eax - 0x18], xmm3
dec esi
cmp dword [esp + 0x134], 0
mov ecx, dword [esp + 0x188]
cmove ecx, dword [esp + 0x18c]
movsd xmm5, qword [esp + 0x108]
movsd xmm6, qword [esp + 0x100]
mov dword [esp + 0x188], ecx
mov eax, ebx
mov dword [esp + 0x18c], ebx
shl eax, 5
mov ebx, dword [esp + 0x17c]
lea edx, [ebx + eax]
jmp 0x100f5dd9
mov eax, dword [esp + 0x17c]
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0xc4]
movsd xmm2, qword [ecx + eax + 0x18]
subsd xmm2, qword [edx + 8]
mulsd xmm2, xmm2
movsd xmm3, qword [ecx + eax + 0x10]
subsd xmm3, qword [edx]
mulsd xmm3, xmm3
addsd xmm3, xmm2
comisd xmm3, xmmword [0x101e8140]
jbe 0x100f649e
movsd xmm2, qword [esp + 0x108]
movsd xmm0, qword [esp + 0x100]
movsd qword [edx], xmm2
movsd qword [edx + 8], xmm0
mov eax, esi
push dword [esp + 0x190]
mov dword [esp + 0x12c], eax
call fcn.101bceaa
push dword [esp + 0x198]
call fcn.101bceaa
push dword [esp + 0x1a0]
call fcn.101bceaa
push dword [esp + 0x1a8]
call fcn.101bceaa
push dword [esp + 0x188]
call fcn.101bceaa
mov eax, dword [esp + 0x13c]
add esp, 0x14
movsd xmm2, qword [0x1020c120]
mov edx, dword [esp + 0xc4]
mov ecx, eax
shl ecx, 4
movsd xmm0, qword [ecx + edx - 0x10]
subsd xmm0, qword [edx]
comisd xmm2, xmm0
jbe 0x100f6772
pxor xmm1, xmm1
subsd xmm1, xmm2
comisd xmm0, xmm1
jbe 0x100f6772
movsd xmm0, qword [ecx + edx - 8]
subsd xmm0, qword [edx + 8]
comisd xmm2, xmm0
jbe 0x100f6772
comisd xmm0, xmm1
jbe 0x100f6772
push 0x10
lea ebx, [eax - 1]
push ebx
push eax
push dword [esp + 0xd0]
call fcn.100db0e0
add esp, 0x10
mov dword [esp + 0xc4], eax
mov eax, ebx
cmp eax, 3
jl 0x100f6856
mov ecx, dword [esp + 0xc4]
lea ebx, [esp + 0x30]
mov edx, eax
shl edx, 4
movsd xmm0, qword [edx + ecx - 0x20]
movsd qword [esp + 0x30], xmm0
movsd xmm1, qword [edx + ecx - 0x18]
movsd qword [esp + 0x38], xmm1
movsd xmm2, qword [edx + ecx - 0x10]
movsd qword [esp + 0x40], xmm2
movsd xmm3, qword [edx + ecx - 8]
movsd qword [esp + 0x48], xmm3
movsd xmm4, qword [ecx]
movsd qword [esp + 0x50], xmm4
movsd xmm5, qword [ecx + 8]
movsd qword [esp + 0x58], xmm5
push 8
push 1
push ebx
mov dword [esp + 0x134], eax
call fcn.100ad140
mov eax, dword [esp + 0x134]
fstp qword [esp + 0xd4]
movsd xmm2, qword [esp + 0xd4]
add esp, 0xc
movsd xmm1, qword [0x1020c120]
comisd xmm1, xmm2
jbe 0x100f6817
pxor xmm0, xmm0
subsd xmm0, xmm1
comisd xmm2, xmm0
ja 0x100f6837
movsd xmm0, qword [0x101e8138]
subsd xmm2, xmm0
comisd xmm1, xmm2
jbe 0x100f6856
pxor xmm0, xmm0
subsd xmm0, xmm1
comisd xmm2, xmm0
jbe 0x100f6856
push 0x10
lea ebx, [eax - 1]
push ebx
push eax
push dword [esp + 0xd0]
call fcn.100db0e0
add esp, 0x10
mov dword [esp + 0xc4], eax
mov eax, ebx
mov ecx, dword [esp + 0xf8]
mov edx, dword [esp + 0xc4]
mov ebx, dword [ebp + 0x14]
mov dword [ecx], edx
mov dword [ebx], eax
xor eax, eax
add esp, 0x1b4
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
mov eax, esi
jmp 0x100f66bd
push 1
push str.Interner_Fehler
push dword [0x102192d8]
push dword [0x10219180]
push str.ermittle_aussenumriss_aus_kanten
call fcn.100e45a0
push dword [esp + 0x1a4]
call fcn.101bceaa
push dword [esp + 0x1ac]
call fcn.101bceaa
push dword [esp + 0x1b4]
call fcn.101bceaa
push dword [esp + 0x1bc]
call fcn.101bceaa
push dword [esp + 0x19c]
call fcn.101bceaa
push dword [esp + 0xec]
call fcn.101bceaa
add esp, 0x2c
mov edx, dword [esp + 0xf8]
mov eax, dword [ebp + 0x14]
xor ecx, ecx
mov dword [edx], ecx
mov dword [eax], ecx
mov eax, 0x63
add esp, 0x1b4
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
comisd xmm2, xmm0
ja 0x100f5cae
jmp 0x100f5cc2
movsd xmm0, qword [0x101e8130]
movsd xmm1, qword [0x101e8128]
mov esi, dword [esp + 0x128]
mov edi, dword [esp + 0x114]
cmp ebx, 0xffffffff
je 0x100f6881
jmp 0x100f6152
xor ecx, ecx
pxor xmm0, xmm0
movsd qword [esp + 0x100], xmm0
jmp 0x100f5b8d
mov edx, dword [esp + 0x17c]
mov eax, dword [esp + 0x130]
mov edi, esi
shl edi, 5
movsd xmm1, qword [edx + edi + 0x10]
subsd xmm1, qword [eax + edx]
mov eax, dword [esp + 0x12c]
movsd xmm0, qword [edx + edi + 0x18]
subsd xmm0, qword [eax + 8]
mulsd xmm1, xmm1
mulsd xmm0, xmm0
mov dword [esp + 0xfc], edi
mov edi, esi
addsd xmm1, xmm0
movsd qword [esp + 0x40], xmm1
shl edi, 4
cmp ebx, 0xffffffff
je 0x100f6a48
mov eax, dword [esp + 0x178]
mov edx, ebx
shl edx, 4
movsd xmm0, qword [edx + eax]
mov ecx, esp
movsd qword [ecx], xmm0
movsd xmm1, qword [edx + eax + 8]
movsd qword [ecx + 8], xmm1
lea edx, [esp + 0x10]
movsd xmm2, qword [eax + edi]
movsd qword [edx], xmm2
movsd xmm3, qword [eax + edi + 8]
movsd qword [edx + 8], xmm3
call fcn.100f6f60
movsd xmm0, qword [esp + 0x138]
ucomisd xmm0, qword [0x101e8150]
jne 0x100f6a35
jp 0x100f6a35
cmp eax, 1
je 0x100f6a48
cmp eax, 3
jne 0x100f6a22
movsd xmm0, qword [esp + 0x40]
comisd xmm0, xmmword [esp + 0x50]
ja 0x100f6a48
jmp 0x100f6aef
inc esi
cmp esi, dword [esp + 0x184]
jl 0x100f5f00
jmp 0x100f6afd
inc esi
cmp esi, dword [esp + 0x184]
jl 0x100f5f00
jmp 0x100f6134
mov edx, dword [esp + 0xfc]
mov eax, dword [esp + 0x17c]
mov ebx, dword [esp + 0x178]
movsd xmm4, qword [esp + 0xf0]
movsd xmm5, qword [eax + edx]
movsd xmm7, qword [eax + edx + 8]
movsd xmm6, qword [esp + 0x58]
movsd xmm3, qword [ebx + edi]
movsd xmm1, qword [edi + ebx + 8]
movaps xmm2, xmm5
movaps xmm0, xmm1
mulsd xmm1, xmm6
mulsd xmm2, xmm3
mulsd xmm0, xmm7
mulsd xmm3, xmm4
mov ebx, esi
addsd xmm2, xmm0
movsd xmm0, qword [esp + 0x40]
movsd qword [esp + 0x50], xmm0
addsd xmm3, xmm1
movsd xmm1, qword [0x101e8150]
movsd qword [esp + 0x138], xmm1
mov dword [esp + 0x134], 1
comisd xmm2, xmm3
jae 0x100f6ad3
movaps xmm5, xmm4
movsd qword [esp + 0x108], xmm5
jae 0x100f6ae1
movaps xmm7, xmm6
movsd qword [esp + 0x100], xmm7
jmp 0x100f6103
inc esi
cmp esi, dword [esp + 0x184]
jl 0x100f5f00
movsd xmm0, qword [0x101e8130]
movsd xmm1, qword [0x101e8128]
mov esi, dword [esp + 0x128]
mov edi, dword [esp + 0x114]
jmp 0x100f6152
push dword [esp + 0x190]
call fcn.101bceaa
push dword [esp + 0x198]
call fcn.101bceaa
push dword [esp + 0x1a0]
call fcn.101bceaa
push dword [esp + 0x1a8]
call fcn.101bceaa
push dword [esp + 0x188]
call fcn.101bceaa
mov eax, dword [esp + 0x10c]
mov ecx, dword [ebp + 0x14]
push 1
xor edx, edx
mov dword [eax], edx
push str.Interner_Fehler
push dword [0x102192d8]
mov dword [ecx], edx
push dword [0x10219180]
push str.ermittle_aussenumriss_aus_kanten
call fcn.100e45a0
add esp, 0x28
mov eax, 0x63
add esp, 0x1b4
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
mov dword [esp + 0x184], ebx
xor edx, edx
mov esi, edi
shl esi, 5
mov ecx, edi
add esi, dword [esp + 0x17c]
shl ecx, 4
mov ebx, edx
mov dword [esp + 0x70], ecx
mov eax, ebx
shl eax, 4
movsd xmm4, qword [esi + eax]
ucomisd xmm4, xmm1
jp 0x100f6bd0
je 0x100f6be9
inc ebx
cmp ebx, 2
jl 0x100f6bbe
mov eax, dword [esp + 0x190]
mov ebx, dword [esp + 0x184]
jmp 0x100f5d29
movsd xmm4, qword [esi + eax + 8]
ucomisd xmm4, xmm2
jne 0x100f6bd0
jp 0x100f6bd0
test ebx, ebx
jne 0x100f6ca5
movsd xmm4, qword [esp + 0x60]
mov eax, esp
movsd qword [eax], xmm4
lea edx, [esp + 0x10]
movsd xmm5, qword [esp + 0x68]
movsd qword [eax + 8], xmm5
mov eax, dword [esp + 0x178]
mov ecx, dword [esp + 0x70]
movsd xmm6, qword [ecx + eax]
movsd qword [edx], xmm6
movsd xmm7, qword [ecx + eax + 8]
movsd qword [edx + 8], xmm7
movsd qword [esp + 0x40], xmm0
movsd qword [esp + 0x48], xmm3
movsd qword [esp + 0x50], xmm2
movsd qword [esp + 0x58], xmm1
call fcn.100ac890
movsd xmm1, qword [esp + 0x58]
movsd xmm2, qword [esp + 0x50]
movsd xmm3, qword [esp + 0x48]
movsd xmm0, qword [esp + 0x40]
fstp qword [esp + 0xc8]
movsd xmm6, qword [esp + 0xc8]
movaps xmm5, xmm3
movaps xmm4, xmm3
movaps xmm3, xmm6
mov eax, dword [esp + 0x18c]
comisd xmm6, xmm5
cmova eax, edi
mov dword [esp + 0x18c], eax
maxsd xmm3, xmm4
jmp 0x100f6bd0
mov ecx, dword [esp + 0x178]
mov eax, dword [esp + 0x70]
pxor xmm4, xmm4
subsd xmm4, qword [eax + ecx]
movsd qword [esp + 0x30], xmm4
pxor xmm5, xmm5
subsd xmm5, qword [eax + ecx + 8]
movsd qword [esp + 0x38], xmm5
movsd xmm6, qword [esp + 0x60]
mov eax, esp
movsd qword [eax], xmm6
movsd xmm7, qword [esp + 0x68]
movsd qword [eax + 8], xmm7
lea eax, [esp + 0x10]
movsd xmm4, qword [esp + 0x30]
movsd qword [eax], xmm4
movsd xmm5, qword [esp + 0x38]
movsd qword [eax + 8], xmm5
movsd qword [esp + 0x40], xmm0
movsd qword [esp + 0x48], xmm3
movsd qword [esp + 0x50], xmm2
movsd qword [esp + 0x58], xmm1
call fcn.100ac890
movsd xmm1, qword [esp + 0x58]
movsd xmm2, qword [esp + 0x50]
movsd xmm3, qword [esp + 0x48]
movsd xmm0, qword [esp + 0x40]
fstp qword [esp + 0xc8]
movsd xmm6, qword [esp + 0xc8]
cmp ebx, 1
jne 0x100f6bd0
movaps xmm5, xmm0
movaps xmm4, xmm0
movaps xmm0, xmm6
mov eax, dword [esp + 0x188]
comisd xmm5, xmm6
cmova eax, edi
mov dword [esp + 0x188], eax
minsd xmm0, xmm4
jmp 0x100f6bd0
movsd xmm3, qword [0x101e8118]
movsd xmm0, qword [0x101e8120]
mov eax, 0xffffffff
mov dword [esp + 0x18c], eax
mov dword [esp + 0x188], eax
jmp 0x100f5d2e
pxor xmm0, xmm0
movsd qword [esp + 0x100], xmm0
jmp 0x100f5c74