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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x30
push esi
mov esi, ecx
push edi
mov dword [esp + 0x18], esi
mov edi, dword [esi + 0x14]
lea ecx, [edi + 8]
mov byte [esi + 0x1c], 1
mov dword [esi + 0x20], edi
mov eax, dword [ecx]
mov dword [esp + 0x1c], edi
mov eax, dword [eax + 0x28]
call eax
mov ecx, dword [0x101e14f0]
mov dword [esi + 0x18], eax
mov eax, dword fs:[0x2c]
mov dword [esp + 0x10], eax
mov eax, dword [eax + ecx*4]
mov dword [esp + 0xc], eax
mov ecx, eax
mov eax, dword [0x101e2744]
cmp eax, dword [ecx + 4]
jle 0x100867b3
push 0x101e2744
call fcn.100b5535
add esp, 4
cmp dword [0x101e2744], 0xffffffff
jne 0x100867af
mov eax, dword [0x101e2734]
push 0x101e2744
mov dword [0x101e271c], eax
call fcn.100b54eb
add esp, 4
mov ecx, dword [esp + 0xc]
mov eax, dword [0x101e271c]
mov eax, dword [eax + edi]
mov dword [esi + 0x24], eax
mov eax, dword [edi + 0xe4]
mov dword [esi + 0x28], eax
mov eax, dword [0x101e2e84]
cmp eax, dword [ecx + 4]
jle 0x10086805
push 0x101e2e84
call fcn.100b5535
add esp, 4
cmp dword [0x101e2e84], 0xffffffff
jne 0x10086801
mov eax, dword [0x101e28fc]
push 0x101e2e84
mov dword [0x101e2e8c], eax
call fcn.100b54eb
add esp, 4
mov ecx, dword [esp + 0xc]
mov eax, dword [0x101e2e8c]
mov eax, dword [eax + edi]
mov dword [esi + 0x38], eax
mov eax, dword [0x101e29dc]
cmp eax, dword [ecx + 4]
jle 0x1008684e
push 0x101e29dc
call fcn.100b5535
add esp, 4
cmp dword [0x101e29dc], 0xffffffff
jne 0x1008684a
mov eax, dword [0x101e292c]
push 0x101e29dc
mov dword [0x101e29d8], eax
call fcn.100b54eb
add esp, 4
mov ecx, dword [esp + 0xc]
mov eax, dword [0x101e29d8]
mov eax, dword [eax + edi]
mov dword [esi + 0x3c], eax
mov eax, dword [0x101e2e94]
cmp eax, dword [ecx + 4]
jle 0x10086897
push 0x101e2e94
call fcn.100b5535
add esp, 4
cmp dword [0x101e2e94], 0xffffffff
jne 0x10086893
mov eax, dword [0x101e2950]
push 0x101e2e94
mov dword [0x101e2eb0], eax
call fcn.100b54eb
add esp, 4
mov ecx, dword [esp + 0xc]
mov eax, dword [0x101e2eb0]
mov eax, dword [eax + edi]
mov dword [esi + 0x40], eax
mov eax, dword [0x101e2ea4]
cmp eax, dword [ecx + 4]
jle 0x100868e0
push 0x101e2ea4
call fcn.100b5535
add esp, 4
cmp dword [0x101e2ea4], 0xffffffff
jne 0x100868dc
mov eax, dword [0x101e288c]
push 0x101e2ea4
mov dword [0x101e2ea8], eax
call fcn.100b54eb
add esp, 4
mov ecx, dword [esp + 0xc]
mov eax, dword [0x101e2ea8]
mov eax, dword [eax + edi]
mov dword [esi + 0x48], eax
mov eax, dword [0x101e2e80]
cmp eax, dword [ecx + 4]
jle 0x10086928
push 0x101e2e80
call fcn.100b5535
add esp, 4
cmp dword [0x101e2e80], 0xffffffff
jne 0x10086928
mov eax, dword [0x101e288c]
add eax, 4
push 0x101e2e80
mov dword [0x101e2eb4], eax
call fcn.100b54eb
add esp, 4
mov eax, dword [0x101e2eb4]
mov ecx, edi
mov eax, dword [eax + edi]
mov dword [esi + 0x4c], eax
mov eax, dword [edi]
mov eax, dword [eax + 0x28]
call eax
mov ecx, dword [esp + 0xc]
movq xmm0, qword [eax]
movq qword [esi + 0x64], xmm0
mov eax, dword [eax + 8]
mov dword [esi + 0x6c], eax
mov eax, dword [0x101e27a8]
cmp eax, dword [ecx + 4]
jle 0x1008698d
push 0x101e27a8
call fcn.100b5535
add esp, 4
cmp dword [0x101e27a8], 0xffffffff
jne 0x10086989
mov eax, dword [0x101e27a0]
push 0x101e27a8
mov dword [0x101e27a4], eax
call fcn.100b54eb
add esp, 4
mov ecx, dword [esp + 0xc]
mov eax, dword [0x101e27a4]
movq xmm0, qword [eax + edi]
movq qword [esi + 0x70], xmm0
mov eax, dword [eax + edi + 8]
mov dword [esi + 0x78], eax
mov eax, dword [0x101e29e0]
cmp eax, dword [ecx + 4]
jle 0x100869e1
push 0x101e29e0
call fcn.100b5535
add esp, 4
cmp dword [0x101e29e0], 0xffffffff
jne 0x100869dd
mov eax, dword [0x101e2878]
push 0x101e29e0
mov dword [0x101e29d0], eax
call fcn.100b54eb
add esp, 4
mov ecx, dword [esp + 0xc]
mov eax, dword [0x101e29d0]
movq xmm0, qword [eax + edi]
movq qword [esi + 0x7c], xmm0
mov eax, dword [eax + edi + 8]
mov dword [esi + 0x84], eax
mov eax, dword [0x101e2b84]
cmp eax, dword [ecx + 4]
jle 0x10086a38
push 0x101e2b84
call fcn.100b5535
add esp, 4
cmp dword [0x101e2b84], 0xffffffff
jne 0x10086a34
mov eax, dword [0x101e28f0]
push 0x101e2b84
mov dword [0x101e2b50], eax
call fcn.100b54eb
add esp, 4
mov ecx, dword [esp + 0xc]
mov eax, dword [0x101e2b50]
movq xmm0, qword [eax + edi]
movq qword [esi + 0x94], xmm0
mov eax, dword [eax + edi + 8]
mov dword [esi + 0x9c], eax
mov eax, dword [0x101e2b48]
cmp eax, dword [ecx + 4]
jle 0x10086a92
push 0x101e2b48
call fcn.100b5535
add esp, 4
cmp dword [0x101e2b48], 0xffffffff
jne 0x10086a8e
mov eax, dword [0x101e28ec]
push 0x101e2b48
mov dword [0x101e2b3c], eax
call fcn.100b54eb
add esp, 4
mov ecx, dword [esp + 0xc]
mov eax, dword [0x101e2b3c]
movq xmm0, qword [eax + edi]
movq qword [esi + 0xa0], xmm0
mov eax, dword [eax + edi + 8]
mov dword [esi + 0xa8], eax
mov eax, dword [0x101e2eac]
cmp eax, dword [ecx + 4]
jle 0x10086ae8
push 0x101e2eac
call fcn.100b5535
add esp, 4
cmp dword [0x101e2eac], 0xffffffff
jne 0x10086ae8
mov eax, dword [0x101e2918]
push 0x101e2eac
mov dword [0x101e2e9c], eax
call fcn.100b54eb
add esp, 4
mov eax, dword [0x101e2e9c]
mov ecx, edi
movq xmm0, qword [eax + edi]
movq qword [esi + 0xac], xmm0
mov eax, dword [eax + edi + 8]
mov dword [esi + 0xb4], eax
mov eax, dword [edi]
mov eax, dword [eax + 0x2c]
call eax
movss xmm3, dword [esi + 0x48]
movss xmm2, dword [esi + 0x4c]
movaps xmm1, xmm3
mov ecx, dword [0x101e1d20]
subss xmm1, xmm2
movq xmm0, qword [eax]
movq qword [esi + 0xb8], xmm0
mov eax, dword [eax + 8]
mov dword [esi + 0xc0], eax
maxss xmm1, dword [ecx + 0x20]
divss xmm1, dword [ecx + 0x20]
addss xmm1, dword [0x1016d538]
cvttss2si eax, xmm1
cmp eax, 0x11
jle 0x10086b5b
mov eax, 0x11
jmp 0x10086b62
xor edx, edx
test eax, eax
cmovs eax, edx
mov dword [esi + 0x2c], eax
lea edi, [esi + 0x19bc]
mov dword [esi + 0x54], 0
mov byte [esi + 0x60], 0
addss xmm2, dword [ecx + 0x10]
movss xmm1, dword [0x1016d71c]
mov ecx, 0xb6
movss dword [esi + 0x50], xmm2
mov esi, dword [esp + 0x1c]
mov esi, dword [esi + 0x2970]
rep movsd dword es:[edi], dword [esi]
mov edi, dword [esp + 0x18]
mov ecx, dword [0x101e14f0]
mov al, byte [edi + 0x24]
and al, 1
mov byte [edi + 0x5d], al
movd xmm0, dword [0x101e0894]
cvtdq2ps xmm0, xmm0
subss xmm0, xmm3
andps xmm0, xmmword [0x1016dda0]
comiss xmm1, xmm0
setae al
mov byte [edi + 0x3494], al
movss xmm0, dword [edi + 0x80]
movss xmm1, dword [edi + 0x7c]
mulss xmm0, xmm0
mulss xmm1, xmm1
addss xmm0, xmm1
comiss xmm0, dword [0x1016d7cc]
setae al
mov byte [edi + 0x3496], al
movss xmm0, dword [edi + 0x80]
mulss xmm0, xmm0
addss xmm0, xmm1
movss xmm1, dword [0x1016d7a8]
comiss xmm1, xmm0
setae al
mov byte [edi + 0x3495], al
mov eax, dword [0x101e1d1c]
mov esi, dword [edi + 0x14]
mov dword [esp + 0x20], esi
mov eax, dword [eax]
mov eax, dword [eax + 0x10]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + ecx*4]
mov eax, dword [0x101e2838]
mov dword [esp + 0xc], ecx
cmp eax, dword [ecx + 4]
jle 0x10086c74
push 0x101e2838
call fcn.100b5535
add esp, 4
cmp dword [0x101e2838], 0xffffffff
jne 0x10086c74
mov eax, dword [0x101e27ec]
push 0x101e2838
mov dword [0x101e27d8], eax
call fcn.100b54eb
add esp, 4
mov eax, dword [0x101e27d8]
mov ecx, dword [0x101e1d1c]
push dword [eax + esi]
call dword [esp + 0x20]
mov esi, eax
test esi, esi
je 0x10086d5e
mov ecx, dword [0x101e1d1c]
mov ecx, dword [ecx]
mov eax, dword [ecx + 0x10]
mov ecx, dword [0x101e284c]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0xc]
cmp ecx, dword [eax + 4]
jle 0x10086cde
push 0x101e284c
call fcn.100b5535
add esp, 4
cmp dword [0x101e284c], 0xffffffff
jne 0x10086cde
mov eax, dword [0x101e2800]
push 0x101e284c
mov dword [0x101e27c8], eax
call fcn.100b54eb
add esp, 4
mov eax, dword [0x101e27c8]
mov ecx, dword [0x101e1d1c]
push dword [eax + esi]
call dword [esp + 0x20]
mov edx, eax
mov dword [esp + 0x28], edx
test edx, edx
je 0x10086d5e
mov edi, dword [esp + 0x20]
xor eax, eax
mov dword [esp + 0x1c], eax
mov esi, dword [edi + 0x2970]
mov ecx, edi
add esi, eax
mov dword [esi + 0x30], edi
call fcn.100585b0
cmp dword [esi + 0x18], 2
mov dword [esi + 8], eax
jb 0x10086d48
movss xmm0, dword [esi + 0x20]
xorps xmm1, xmm1
comiss xmm0, xmm1
jbe 0x10086d48
mov ecx, edx
call fcn.100585b0
push dword [esi + 0x18]
mov edx, dword [edi]
mov ecx, edi
push eax
push esi
mov eax, dword [edx + 0x3c4]
call eax
mov edx, dword [esp + 0x28]
mov eax, dword [esp + 0x1c]
add eax, 0x38
mov dword [esp + 0x1c], eax
cmp eax, 0x2d8
jl 0x10086d04
mov edi, dword [esp + 0x18]
mov edx, dword [edi + 0x34b0]
test edx, edx
je 0x10086daa
mov ecx, dword [edi + 0x34a8]
mov eax, dword [edi + 0x34a4]
dec ecx
and ecx, dword [edi + 0x34ac]
mov eax, dword [eax + ecx*4]
mov dword [edi + 0x3498], eax
cmp edx, 3
jb 0x10086daa
mov eax, dword [edi + 0x34ac]
mov ecx, dword [edi + 0x34a8]
add eax, 2
dec ecx
and ecx, eax
mov eax, dword [edi + 0x34a4]
mov eax, dword [eax + ecx*4]
mov dword [edi + 0x349c], eax
mov eax, dword [edi + 0x34b0]
lea esi, [edi + 0x34a0]
mov edx, dword [esi + 8]
inc eax
cmp edx, eax
ja 0x10086dc9
push ecx
mov ecx, esi
call fcn.10088460
mov edx, dword [esi + 8]
lea ecx, [edx - 1]
and dword [esi + 0xc], ecx
mov eax, dword [esi + 0xc]
cmove eax, edx
dec eax
and ecx, eax
mov dword [esp + 0x28], eax
mov eax, dword [esi + 4]
mov dword [esp + 0x1c], ecx
cmp dword [eax + ecx*4], 0
jne 0x10086e16
push 0x34a3
call fcn.100b560b
add esp, 4
test eax, eax
je 0x10087a1f
mov edx, dword [esp + 0x1c]
lea ecx, [eax + 0x23]
and ecx, 0xffffffe0
mov dword [ecx - 4], eax
mov eax, dword [esi + 4]
mov dword [eax + edx*4], ecx
mov ecx, edx
mov eax, dword [esi + 4]
mov esi, dword [eax + ecx*4]
push 0x3480
push 0
push esi
call fcn.1010e880
add esp, 0xc
mov ecx, esi
call fcn.10088610
inc dword [edi + 0x34b0]
mov eax, dword [esp + 0x28]
mov dword [edi + 0x34ac], eax
mov ecx, dword [edi + 0x34a8]
dec ecx
and ecx, eax
mov eax, dword [edi + 0x34a4]
mov edi, dword [edi + 0x14]
mov dword [esp + 0x28], edi
mov esi, dword [eax + ecx*4]
lea ecx, [edi + 8]
mov dword [esp + 0x1c], esi
mov byte [esi + 4], 1
mov dword [esi + 8], edi
mov eax, dword [ecx]
mov eax, dword [eax + 0x28]
call eax
mov ecx, dword [esp + 0xc]
mov dword [esi], eax
mov eax, dword [0x101e2744]
cmp eax, dword [ecx + 4]
jle 0x10086eb2
push 0x101e2744
call fcn.100b5535
add esp, 4
cmp dword [0x101e2744], 0xffffffff
jne 0x10086eae
mov eax, dword [0x101e2734]
push 0x101e2744
mov dword [0x101e271c], eax
call fcn.100b54eb
add esp, 4
mov ecx, dword [esp + 0xc]
mov eax, dword [0x101e271c]
mov eax, dword [edi + eax]
mov dword [esi + 0xc], eax
mov eax, dword [edi + 0xe4]
mov dword [esi + 0x10], eax
mov eax, dword [0x101e2e84]
cmp eax, dword [ecx + 4]
jle 0x10086f04
push 0x101e2e84
call fcn.100b5535
add esp, 4
cmp dword [0x101e2e84], 0xffffffff
jne 0x10086f00
mov eax, dword [0x101e28fc]
push 0x101e2e84
mov dword [0x101e2e8c], eax
call fcn.100b54eb
add esp, 4
mov ecx, dword [esp + 0xc]
mov eax, dword [0x101e2e8c]
mov eax, dword [edi + eax]
mov dword [esi + 0x20], eax
mov eax, dword [0x101e29dc]
cmp eax, dword [ecx + 4]
jle 0x10086f4d
push 0x101e29dc
call fcn.100b5535
add esp, 4
cmp dword [0x101e29dc], 0xffffffff
jne 0x10086f49
mov eax, dword [0x101e292c]
push 0x101e29dc
mov dword [0x101e29d8], eax
call fcn.100b54eb
add esp, 4
mov ecx, dword [esp + 0xc]
mov eax, dword [0x101e29d8]
mov eax, dword [edi + eax]
mov dword [esi + 0x24], eax
mov eax, dword [0x101e2e94]
cmp eax, dword [ecx + 4]
jle 0x10086f96
push 0x101e2e94
call fcn.100b5535
add esp, 4
cmp dword [0x101e2e94], 0xffffffff
jne 0x10086f92
mov eax, dword [0x101e2950]
push 0x101e2e94
mov dword [0x101e2eb0], eax
call fcn.100b54eb
add esp, 4
mov ecx, dword [esp + 0xc]
mov eax, dword [0x101e2eb0]
mov eax, dword [edi + eax]
mov dword [esi + 0x28], eax
mov eax, dword [0x101e2ea4]
cmp eax, dword [ecx + 4]
jle 0x10086fdf
push 0x101e2ea4
call fcn.100b5535
add esp, 4
cmp dword [0x101e2ea4], 0xffffffff
jne 0x10086fdb
mov eax, dword [0x101e288c]
push 0x101e2ea4
mov dword [0x101e2ea8], eax
call fcn.100b54eb
add esp, 4
mov ecx, dword [esp + 0xc]
mov eax, dword [0x101e2ea8]
mov eax, dword [edi + eax]
mov dword [esi + 0x30], eax
mov eax, dword [0x101e2e80]
cmp eax, dword [ecx + 4]
jle 0x10087027
push 0x101e2e80
call fcn.100b5535
add esp, 4
cmp dword [0x101e2e80], 0xffffffff
jne 0x10087027
mov eax, dword [0x101e288c]
add eax, 4
push 0x101e2e80
mov dword [0x101e2eb4], eax
call fcn.100b54eb
add esp, 4
mov eax, dword [0x101e2eb4]
mov ecx, edi
mov eax, dword [edi + eax]
mov dword [esi + 0x34], eax
mov eax, dword [edi]
mov eax, dword [eax + 0x28]
call eax
mov ecx, dword [esp + 0xc]
movq xmm0, qword [eax]
movq qword [esi + 0x4c], xmm0
mov eax, dword [eax + 8]
mov dword [esi + 0x54], eax
mov eax, dword [0x101e27a8]
cmp eax, dword [ecx + 4]
jle 0x1008708c
push 0x101e27a8
call fcn.100b5535
add esp, 4
cmp dword [0x101e27a8], 0xffffffff
jne 0x10087088
mov eax, dword [0x101e27a0]
push 0x101e27a8
mov dword [0x101e27a4], eax
call fcn.100b54eb
add esp, 4
mov ecx, dword [esp + 0xc]
mov eax, dword [0x101e27a4]
movq xmm0, qword [edi + eax]
movq qword [esi + 0x58], xmm0
mov eax, dword [edi + eax + 8]
mov dword [esi + 0x60], eax
mov eax, dword [0x101e29e0]
cmp eax, dword [ecx + 4]
jle 0x100870e0
push 0x101e29e0
call fcn.100b5535
add esp, 4
cmp dword [0x101e29e0], 0xffffffff
jne 0x100870dc
mov eax, dword [0x101e2878]
push 0x101e29e0
mov dword [0x101e29d0], eax
call fcn.100b54eb
add esp, 4
mov ecx, dword [esp + 0xc]
mov eax, dword [0x101e29d0]
movq xmm0, qword [edi + eax]
movq qword [esi + 0x64], xmm0
mov eax, dword [edi + eax + 8]
mov dword [esi + 0x6c], eax
mov eax, dword [0x101e2b84]
cmp eax, dword [ecx + 4]
jle 0x10087134
push 0x101e2b84
call fcn.100b5535
add esp, 4
cmp dword [0x101e2b84], 0xffffffff
jne 0x10087130
mov eax, dword [0x101e28f0]
push 0x101e2b84
mov dword [0x101e2b50], eax
call fcn.100b54eb
add esp, 4
mov ecx, dword [esp + 0xc]
mov eax, dword [0x101e2b50]
movq xmm0, qword [edi + eax]
movq qword [esi + 0x7c], xmm0
mov eax, dword [edi + eax + 8]
mov dword [esi + 0x84], eax
mov eax, dword [0x101e2b48]
cmp eax, dword [ecx + 4]
jle 0x1008718b
push 0x101e2b48
call fcn.100b5535
add esp, 4
cmp dword [0x101e2b48], 0xffffffff
jne 0x10087187
mov eax, dword [0x101e28ec]
push 0x101e2b48
mov dword [0x101e2b3c], eax
call fcn.100b54eb
add esp, 4
mov ecx, dword [esp + 0xc]
mov eax, dword [0x101e2b3c]
movq xmm0, qword [edi + eax]
movq qword [esi + 0x88], xmm0
mov eax, dword [edi + eax + 8]
mov dword [esi + 0x90], eax
mov eax, dword [0x101e2eac]
cmp eax, dword [ecx + 4]
jle 0x100871e1
push 0x101e2eac
call fcn.100b5535
add esp, 4
cmp dword [0x101e2eac], 0xffffffff
jne 0x100871e1
mov eax, dword [0x101e2918]
push 0x101e2eac
mov dword [0x101e2e9c], eax
call fcn.100b54eb
add esp, 4
mov eax, dword [0x101e2e9c]
mov ecx, edi
movq xmm0, qword [edi + eax]
movq qword [esi + 0x94], xmm0
mov eax, dword [edi + eax + 8]
mov dword [esi + 0x9c], eax
mov eax, dword [edi]
mov eax, dword [eax + 0x2c]
call eax
movss xmm3, dword [esi + 0x30]
movss xmm2, dword [esi + 0x34]
movaps xmm1, xmm3
mov ecx, dword [0x101e1d20]
subss xmm1, xmm2
movq xmm0, qword [eax]
movq qword [esi + 0xa0], xmm0
mov eax, dword [eax + 8]
mov dword [esi + 0xa8], eax
maxss xmm1, dword [ecx + 0x20]
divss xmm1, dword [ecx + 0x20]
addss xmm1, dword [0x1016d538]
cvttss2si eax, xmm1
cmp eax, 0x11
jle 0x10087254
mov eax, 0x11
jmp 0x1008725b
xor edx, edx
test eax, eax
cmovs eax, edx
mov dword [esi + 0x14], eax
lea edi, [esi + 0x19a4]
mov dword [esi + 0x3c], 0
mov byte [esi + 0x48], 0
addss xmm2, dword [ecx + 0x10]
movss xmm1, dword [0x1016d71c]
mov ecx, 0xb6
movss dword [esi + 0x38], xmm2
mov esi, dword [esp + 0x28]
mov esi, dword [esi + 0x2970]
rep movsd dword es:[edi], dword [esi]
mov edi, dword [esp + 0x1c]
mov esi, dword [esp + 0x18]
mov ecx, dword [0x101e14f0]
mov al, byte [edi + 0xc]
and al, 1
mov byte [edi + 0x45], al
movd xmm0, dword [0x101e0894]
cvtdq2ps xmm0, xmm0
subss xmm0, xmm3
andps xmm0, xmmword [0x1016dda0]
comiss xmm1, xmm0
setae al
mov byte [edi + 0x347c], al
movss xmm0, dword [edi + 0x68]
movss xmm1, dword [edi + 0x64]
mulss xmm0, xmm0
mulss xmm1, xmm1
addss xmm0, xmm1
comiss xmm0, dword [0x1016d7cc]
setae al
mov byte [edi + 0x347e], al
movss xmm0, dword [edi + 0x68]
mulss xmm0, xmm0
addss xmm0, xmm1
movss xmm1, dword [0x1016d7a8]
comiss xmm1, xmm0
setae al
mov byte [edi + 0x347d], al
cmp dword [esi + 4], 1
setle al
mov byte [edi + 5], al
mov eax, dword [esi + 0x3498]
mov dword [esp + 0xc], eax
mov eax, dword [edi + 8]
mov dword [esp + 0x28], eax
mov eax, dword [0x101e1d1c]
mov eax, dword [eax]
mov eax, dword [eax + 0x10]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + ecx*4]
mov eax, dword [0x101e2838]
cmp eax, dword [ecx + 4]
jle 0x1008737b
push 0x101e2838
call fcn.100b5535
add esp, 4
cmp dword [0x101e2838], 0xffffffff
jne 0x1008737b
mov eax, dword [0x101e27ec]
push 0x101e2838
mov dword [0x101e27d8], eax
call fcn.100b54eb
add esp, 4
mov eax, dword [0x101e27d8]
mov ecx, dword [esp + 0x28]
push dword [ecx + eax]
mov ecx, dword [0x101e1d1c]
call dword [esp + 0x24]
mov edx, dword [esp + 0xc]
mov dword [esp + 0x28], eax
test edx, edx
je 0x1008741c
test eax, eax
je 0x1008741c
mov esi, dword [esp + 0x10]
mov edi, dword [0x101e14f0]
mov ecx, dword [0x101e29f0]
mov eax, dword [esi + edi*4]
mov esi, dword [esp + 0x18]
mov edi, dword [esp + 0x1c]
cmp ecx, dword [eax + 4]
jle 0x100873f5
push 0x101e29f0
call fcn.100b5535
add esp, 4
cmp dword [0x101e29f0], 0xffffffff
jne 0x100873f1
mov eax, dword [0x101e2924]
push 0x101e29f0
mov dword [0x101e29e8], eax
call fcn.100b54eb
add esp, 4
mov edx, dword [esp + 0xc]
mov eax, dword [0x101e29e8]
mov ecx, dword [esp + 0x28]
movss xmm0, dword [edi + 0x30]
movss xmm1, dword [ecx + eax]
comiss xmm0, xmm1
jb 0x10087417
comiss xmm1, dword [edx + 0x30]
jbe 0x10087417
mov al, 1
jmp 0x10087419
xor al, al
mov byte [edi + 0x47], al
mov eax, dword [esi + 4]
cmp eax, 3
jge 0x10087428
inc eax
mov dword [esi + 4], eax
cmp dword [esi + 0x3498], 0
je 0x100874b7
mov edi, dword [0x101e14f0]
mov edx, dword [esp + 0x10]
mov eax, dword [esi + 0x14]
mov dword [esp + 0x28], eax
mov eax, dword [0x101e2744]
mov ecx, dword [edx + edi*4]
mov edi, dword [esp + 0x1c]
cmp eax, dword [ecx + 4]
jle 0x10087487
push 0x101e2744
call fcn.100b5535
add esp, 4
cmp dword [0x101e2744], 0xffffffff
jne 0x10087487
mov eax, dword [0x101e2734]
push 0x101e2744
mov dword [0x101e271c], eax
call fcn.100b54eb
add esp, 4
mov eax, dword [0x101e271c]
mov ecx, dword [esp + 0x28]
mov al, byte [ecx + eax]
and al, 1
mov byte [edi + 0x45], 0
mov byte [edi + 0x46], al
je 0x100874b7
mov eax, dword [esi + 0x3498]
mov edx, 1
movzx ecx, byte [edi + 0x45]
cmp byte [eax + 0x46], 0
cmovne ecx, edx
mov byte [edi + 0x45], cl
mov ecx, dword [edi + 0x14]
mov edx, dword [0x101e1d20]
movss xmm6, dword [0x1016d58c]
lea eax, [ecx - 1]
cmp eax, 0xe
ja 0x10087532
mov eax, dword [esi + 0x3498]
test eax, eax
je 0x10087532
cmp byte [eax + 5], 0
jne 0x10087532
xorps xmm0, xmm0
movss xmm3, dword [edi + 0x58]
cvtsi2ss xmm0, ecx
subss xmm3, dword [eax + 0x58]
mulss xmm0, dword [edx + 0x20]
movaps xmm2, xmm6
movss xmm1, dword [edi + 0x5c]
subss xmm1, dword [eax + 0x5c]
divss xmm2, xmm0
movss xmm0, dword [edi + 0x60]
subss xmm0, dword [eax + 0x60]
mulss xmm3, xmm2
mulss xmm1, xmm2
mulss xmm0, xmm2
unpcklps xmm3, xmm1
movq qword [edi + 0x64], xmm3
movss dword [esp + 0x30], xmm0
mov eax, dword [esp + 0x30]
mov dword [edi + 0x6c], eax
test byte [edi + 0xc], 1
movq xmm0, qword [edi + 0x64]
mov eax, dword [edi + 0x6c]
movq qword [edi + 0x70], xmm0
mov dword [edi + 0x78], eax
je 0x1008759b
movss xmm2, dword [edi + 0x68]
movss xmm1, dword [edi + 0x6c]
mulss xmm0, xmm0
mulss xmm2, xmm2
mulss xmm1, xmm1
addss xmm2, xmm0
xorps xmm0, xmm0
addss xmm2, xmm1
movss xmm1, dword [0x1016d4b8]
sqrtss xmm0, xmm2
comiss xmm0, xmm1
jbe 0x1008759b
movss xmm0, dword [edi + 0x1c64]
xorps xmm2, xmm2
ucomiss xmm0, xmm2
lahf
test ah, 0x44
jp 0x1008759b
comiss xmm1, dword [edi + 0x1b14]
jbe 0x1008759b
mov byte [edi + 0x48], 1
cmp byte [edi + 0x48], 0
je 0x100875b8
mov dword [edi + 0x70], 0
mov dword [edi + 0x74], 0
mov dword [edi + 0x78], 0
jmp 0x10087630
mov eax, dword [esi + 0x3498]
test eax, eax
je 0x10087630
movss xmm3, dword [edx + 0x20]
xorps xmm0, xmm0
cvtsi2ss xmm0, ecx
movss xmm4, dword [edi + 0x64]
mulss xmm0, xmm3
subss xmm4, dword [eax + 0x64]
movss xmm1, dword [edi + 0x68]
subss xmm1, dword [eax + 0x68]
divss xmm6, xmm0
movss xmm0, dword [edi + 0x6c]
subss xmm0, dword [eax + 0x6c]
mulss xmm4, xmm6
mulss xmm1, xmm6
mulss xmm0, xmm6
mulss xmm4, xmm3
mulss xmm1, xmm3
addss xmm4, dword [eax + 0x64]
mulss xmm0, xmm3
addss xmm1, dword [eax + 0x68]
addss xmm0, dword [eax + 0x6c]
unpcklps xmm4, xmm1
movq qword [edi + 0x70], xmm4
movss dword [esp + 0x30], xmm0
mov eax, dword [esp + 0x30]
mov dword [edi + 0x78], eax
push edi
mov ecx, esi
call fcn.10085db0
mov ecx, dword [0x101e14f0]
mov eax, dword [esp + 0x10]
mov edi, dword [esi + 0x14]
mov dword [esp + 0x20], edi
mov eax, dword [eax + ecx*4]
mov dword [esp + 0xc], eax
mov ecx, eax
mov eax, dword [0x101e29e0]
cmp eax, dword [ecx + 4]
jle 0x10087690
push 0x101e29e0
call fcn.100b5535
add esp, 4
cmp dword [0x101e29e0], 0xffffffff
jne 0x1008768c
mov eax, dword [0x101e2878]
push 0x101e29e0
mov dword [0x101e29d0], eax
call fcn.100b54eb
add esp, 4
mov ecx, dword [esp + 0xc]
mov eax, dword [esi + 0x24]
mov dword [esp + 0x28], eax
mov eax, dword [0x101e2744]
cmp eax, dword [ecx + 4]
jle 0x100876d5
push 0x101e2744
call fcn.100b5535
add esp, 4
cmp dword [0x101e2744], 0xffffffff
jne 0x100876d1
mov eax, dword [0x101e2734]
push 0x101e2744
mov dword [0x101e271c], eax
call fcn.100b54eb
add esp, 4
mov ecx, dword [esp + 0xc]
mov eax, dword [0x101e271c]
mov edx, dword [esp + 0x28]
mov dword [edi + eax], edx
movss xmm0, dword [esi + 0x38]
mov eax, dword [0x101e2e84]
movss dword [esp + 0x10], xmm0
cmp eax, dword [ecx + 4]
jle 0x10087730
push 0x101e2e84
call fcn.100b5535
add esp, 4
cmp dword [0x101e2e84], 0xffffffff
jne 0x10087726
mov eax, dword [0x101e28fc]
push 0x101e2e84
mov dword [0x101e2e8c], eax
call fcn.100b54eb
add esp, 4
mov ecx, dword [esp + 0xc]
movss xmm0, dword [esp + 0x10]
mov eax, dword [0x101e2e8c]
movss dword [edi + eax], xmm0
mov eax, dword [esi + 0x9c]
movq xmm0, qword [esi + 0x94]
mov dword [esp + 0x28], eax
mov eax, dword [0x101e2b84]
movq qword [esp + 0x10], xmm0
cmp eax, dword [ecx + 4]
jle 0x10087796
push 0x101e2b84
call fcn.100b5535
add esp, 4
cmp dword [0x101e2b84], 0xffffffff
jne 0x1008778c
mov eax, dword [0x101e28f0]
push 0x101e2b84
mov dword [0x101e2b50], eax
call fcn.100b54eb
add esp, 4
mov ecx, dword [esp + 0xc]
movq xmm0, qword [esp + 0x10]
mov eax, dword [0x101e2b50]
mov edx, dword [esp + 0x28]
movq qword [edi + eax], xmm0
mov dword [edi + eax + 8], edx
mov eax, dword [esi + 0xa8]
movq xmm0, qword [esi + 0xa0]
mov dword [esp + 0x28], eax
mov eax, dword [0x101e2b48]
movq qword [esp + 0x10], xmm0
cmp eax, dword [ecx + 4]
jle 0x10087800
push 0x101e2b48
call fcn.100b5535
add esp, 4
cmp dword [0x101e2b48], 0xffffffff
jne 0x100877fa
mov eax, dword [0x101e28ec]
push 0x101e2b48
mov dword [0x101e2b3c], eax
call fcn.100b54eb
add esp, 4
movq xmm0, qword [esp + 0x10]
mov eax, dword [0x101e2b3c]
add esi, 0x19bc
mov edx, dword [esp + 0x28]
mov ecx, 0xb6
movq qword [edi + eax], xmm0
mov dword [edi + eax + 8], edx
mov edi, dword [edi + 0x2970]
rep movsd dword es:[edi], dword [esi]
mov esi, dword [esp + 0x18]
mov edi, dword [esp + 0xc]
mov eax, dword [0x101e29dc]
movss xmm0, dword [esi + 0x3c]
movss dword [esp + 0x18], xmm0
cmp eax, dword [edi + 4]
jle 0x10087878
push 0x101e29dc
call fcn.100b5535
add esp, 4
cmp dword [0x101e29dc], 0xffffffff
jne 0x10087872
mov eax, dword [0x101e292c]
push 0x101e29dc
mov dword [0x101e29d8], eax
call fcn.100b54eb
add esp, 4
movss xmm0, dword [esp + 0x18]
mov eax, dword [0x101e29d8]
mov edi, dword [esp + 0x20]
mov ecx, dword [esp + 0xc]
movss dword [edi + eax], xmm0
movss xmm0, dword [esi + 0x40]
mov eax, dword [0x101e2e94]
movss dword [esp + 0x18], xmm0
cmp eax, dword [ecx + 4]
jle 0x100878d9
push 0x101e2e94
call fcn.100b5535
add esp, 4
cmp dword [0x101e2e94], 0xffffffff
jne 0x100878cf
mov eax, dword [0x101e2950]
push 0x101e2e94
mov dword [0x101e2eb0], eax
call fcn.100b54eb
add esp, 4
mov ecx, dword [esp + 0xc]
movss xmm0, dword [esp + 0x18]
mov eax, dword [0x101e2eb0]
movss dword [edi + eax], xmm0
mov eax, dword [esi + 0x78]
movq xmm0, qword [esi + 0x70]
mov dword [esp + 0x28], eax
mov eax, dword [0x101e27a8]
movq qword [esp + 0x20], xmm0
cmp eax, dword [ecx + 4]
jle 0x10087935
push 0x101e27a8
call fcn.100b5535
add esp, 4
cmp dword [0x101e27a8], 0xffffffff
jne 0x1008792f
mov eax, dword [0x101e27a0]
push 0x101e27a8
mov dword [0x101e27a4], eax
call fcn.100b54eb
add esp, 4
movq xmm0, qword [esp + 0x20]
mov eax, dword [0x101e27a4]
mov ecx, dword [esp + 0x28]
movq qword [edi + eax], xmm0
mov dword [edi + eax + 8], ecx
lea eax, [esi + 0x70]
push eax
mov ecx, edi
call dword [0x101e1e44]
cmp byte [0x101e0869], 0
je 0x100879e3
mov eax, dword [esi + 0x3498]
test eax, eax
je 0x100879e3
mov ecx, dword [esp + 0x1c]
movss xmm0, dword [eax + 0x30]
mov eax, dword [0x101e1d20]
movss xmm1, dword [ecx + 0x30]
comiss xmm0, xmm1
jbe 0x1008799d
subss xmm0, xmm1
andps xmm0, xmmword [0x1016dda0]
addss xmm0, xmm1
addss xmm0, dword [eax + 0x20]
movss dword [esi + 0xc], xmm0
jmp 0x100879df
movss xmm2, dword [esi + 0xc]
movaps xmm0, xmm2
subss xmm0, xmm1
andps xmm0, xmmword [0x1016dda0]
divss xmm0, dword [eax + 0x20]
addss xmm0, dword [0x1016d538]
cvttss2si eax, xmm0
cmp eax, 0x11
jle 0x100879da
movss xmm2, dword [0x1016d830]
mov dword [esi + 0xc], 0xbf800000
movss xmm1, dword [ecx + 0x30]
comiss xmm2, xmm1
jbe 0x100879e3
mov byte [ecx + 4], 0
cmp byte [esi], 0
mov eax, 3
mov edx, dword [0x101e081c]
mov ecx, dword [esi + 0x34b0]
cmovne edx, eax
cmp ecx, edx
jbe 0x10087a19
nop
lea eax, [ecx - 1]
mov dword [esi + 0x34b0], eax
mov ecx, eax
test eax, eax
jne 0x10087a15
mov dword [esi + 0x34ac], eax
cmp ecx, edx
ja 0x10087a00
pop edi
pop esi
mov esp, ebp
pop ebp
ret
call fcn.1011a5fe
int3