Function at 0x102d61d0
Capabilities:
Terminate process

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
sub esp, 0x1a0
mov eax, dword [0x104e6584]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
push edi
mov ecx, 0x104f68b0
call fcn.1015f0d9
mov eax, dword [0x104e7304]
mov dword [ebp - 8], eax
mov eax, dword [ebx + 8]
mov byte [eax + 0x54], 0
mov dword [ebp - 0xc], 0
mov dword [ebp - 0x10], 0
jmp 0x102d622a
mov eax, dword [ebp - 0x10]
add eax, 1
mov dword [ebp - 0x10], eax
mov eax, dword [ebx + 8]
mov ecx, dword [ebp - 0x10]
cmp ecx, dword [eax]
jge 0x102d6335
mov eax, dword [ebx + 8]
mov dword [ebp - 0x144], eax
mov ecx, dword [ebp - 0x144]
mov edx, dword [ebp - 0x10]
cmp edx, dword [ecx]
jl 0x102d6256
push 0
call dword [sym.imp.ucrtbased.dll_exit]
mov eax, dword [ebp - 0x10]
shl eax, 5
mov ecx, dword [ebp - 0x144]
add eax, dword [ecx + 8]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebx + 8]
mov edx, dword [eax + 8]
cmp edx, dword [ecx + 0x20]
jge 0x102d628f
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebx + 8]
mov edx, dword [eax]
cmp edx, dword [ecx + 0x10]
jne 0x102d628d
mov eax, dword [ebx + 8]
mov dword [eax + 0x10], 0
jmp 0x102d6221
mov eax, dword [ebp - 0xc]
cmp eax, dword [ebp - 0x10]
je 0x102d6327
mov eax, dword [ebx + 8]
mov dword [ebp - 0x14c], eax
mov ecx, dword [ebp - 0x14c]
mov edx, dword [ebp - 0x10]
cmp edx, dword [ecx]
jl 0x102d62b9
push 0
call dword [sym.imp.ucrtbased.dll_exit]
mov eax, dword [ebp - 0x10]
shl eax, 5
mov ecx, dword [ebp - 0x14c]
add eax, dword [ecx + 8]
mov dword [ebp - 0x160], eax
mov ecx, 8
mov esi, dword [ebp - 0x160]
lea edi, [ebp - 0x138]
rep movsd dword es:[edi], dword [esi]
mov edx, dword [ebx + 8]
mov dword [ebp - 0x148], edx
mov eax, dword [ebp - 0x148]
mov ecx, dword [ebp - 0xc]
cmp ecx, dword [eax]
jl 0x102d62ff
push 0
call dword [sym.imp.ucrtbased.dll_exit]
mov edx, dword [ebp - 0xc]
shl edx, 5
mov eax, dword [ebp - 0x148]
add edx, dword [eax + 8]
mov dword [ebp - 0x168], edx
mov ecx, 8
lea esi, [ebp - 0x138]
mov edi, dword [ebp - 0x168]
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0xc]
add eax, 1
mov dword [ebp - 0xc], eax
jmp 0x102d6221
mov eax, dword [ebx + 8]
mov ecx, dword [eax]
cmp ecx, dword [ebp - 0xc]
je 0x102d6357
mov eax, dword [ebx + 8]
mov dword [ebp - 0x19c], eax
mov ecx, dword [ebp - 0xc]
push ecx
mov ecx, dword [ebp - 0x19c]
call fcn.1016037b
mov dword [ebp - 0x18], 0
mov eax, dword [ebx + 8]
cmp dword [eax + 0x14], 0
je 0x102d6386
mov eax, dword [ebx + 8]
mov ecx, dword [ebx + 8]
mov edx, dword [ecx + 0x14]
mov dword [eax + 0x10], edx
mov eax, dword [ebx + 8]
mov dword [eax + 0x14], 0
mov eax, dword [ebx + 8]
mov ecx, dword [eax + 0x10]
mov dword [ebp - 0x18], ecx
mov eax, dword [ebx + 8]
cmp dword [eax + 0x4c], 0
je 0x102d646e
mov eax, dword [ebx + 8]
mov ecx, dword [eax + 0x4c]
push ecx
mov edx, dword [ebx + 8]
push edx
call fcn.1015da0e
add esp, 8
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0
je 0x102d6464
mov eax, dword [ebp - 0x1c]
push eax
mov ecx, dword [ebx + 8]
call fcn.10160718
mov ecx, dword [ebx + 8]
add eax, dword [ecx + 0x50]
mov dword [ebp - 0x20], eax
js 0x102d6451
mov eax, dword [ebx + 8]
mov ecx, dword [ebp - 0x20]
cmp ecx, dword [eax]
jge 0x102d6451
mov eax, dword [ebx + 8]
mov dword [ebp - 0x150], eax
mov ecx, dword [ebp - 0x150]
mov edx, dword [ebp - 0x20]
cmp edx, dword [ecx]
jl 0x102d63f6
push 0
call dword [sym.imp.ucrtbased.dll_exit]
mov eax, dword [ebp - 0x20]
shl eax, 5
mov ecx, dword [ebp - 0x150]
add eax, dword [ecx + 8]
mov dword [ebp - 0x24], eax
mov ecx, 8
mov esi, dword [ebp - 0x1c]
lea edi, [ebp - 0x44]
rep movsd dword es:[edi], dword [esi]
mov ecx, 8
mov esi, dword [ebp - 0x24]
mov edi, dword [ebp - 0x1c]
rep movsd dword es:[edi], dword [esi]
mov ecx, 8
lea esi, [ebp - 0x44]
mov edi, dword [ebp - 0x24]
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebx + 8]
mov edx, dword [eax]
cmp edx, dword [ecx + 0x10]
jne 0x102d6444
mov eax, dword [ebp - 0x24]
mov ecx, dword [eax]
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0x24], 0
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebx + 8]
mov ecx, dword [eax + 0x48]
and ecx, 0x400000
je 0x102d6464
call fcn.10160196
mov eax, dword [ebx + 8]
mov dword [eax + 0x4c], 0
mov eax, dword [ebx + 8]
mov ecx, dword [eax + 0x48]
and ecx, 4
je 0x102d6482
mov byte [ebp - 0x199], 1
jmp 0x102d6489
mov byte [ebp - 0x199], 0
mov dl, byte [ebp - 0x199]
mov byte [ebp - 0x45], dl
movzx eax, byte [ebp - 0x45]
test eax, eax
je 0x102d64c3
mov eax, dword [ebx + 8]
push eax
call fcn.102d7d90
add esp, 4
mov dword [ebp - 0x4c], eax
cmp dword [ebp - 0x4c], 0
je 0x102d64c3
mov eax, dword [ebx + 8]
mov ecx, dword [ebp - 0x4c]
mov edx, dword [ecx]
mov dword [eax + 0x10], edx
mov eax, dword [ebx + 8]
mov ecx, dword [eax + 0x10]
mov dword [ebp - 0x18], ecx
mov eax, dword [ebp - 8]
add eax, 0x1d14
mov dword [ebp - 0x50], eax
mov eax, dword [ebx + 8]
mov ecx, dword [eax]
push ecx
mov ecx, dword [ebp - 0x50]
call fcn.1015ed87
xorps xmm0, xmm0
movss dword [ebp - 0x54], xmm0
mov dword [ebp - 0x58], 0
mov byte [ebp - 0x59], 0
mov dword [ebp - 0x60], 0
jmp 0x102d6501
mov eax, dword [ebp - 0x60]
add eax, 1
mov dword [ebp - 0x60], eax
mov eax, dword [ebx + 8]
mov ecx, dword [ebp - 0x60]
cmp ecx, dword [eax]
jge 0x102d66aa
mov eax, dword [ebx + 8]
mov dword [ebp - 0x154], eax
mov ecx, dword [ebp - 0x154]
mov edx, dword [ebp - 0x60]
cmp edx, dword [ecx]
jl 0x102d652d
push 0
call dword [sym.imp.ucrtbased.dll_exit]
mov eax, dword [ebp - 0x60]
shl eax, 5
mov ecx, dword [ebp - 0x154]
add eax, dword [ecx + 8]
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 0x64]
mov ecx, dword [ebx + 8]
mov edx, dword [eax + 8]
cmp edx, dword [ecx + 0x20]
jge 0x102d6555
push 0
call dword [sym.imp.ucrtbased.dll_exit]
cmp dword [ebp - 0x58], 0
je 0x102d6569
mov eax, dword [ebp - 0x58]
mov ecx, dword [ebp - 0x64]
mov edx, dword [eax + 0xc]
cmp edx, dword [ecx + 0xc]
jge 0x102d656f
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x58], eax
mov eax, dword [ebp - 0x64]
mov ecx, dword [ebx + 8]
mov edx, dword [eax]
cmp edx, dword [ecx + 0x10]
jne 0x102d6580
mov byte [ebp - 0x59], 1
mov eax, dword [ebp - 0x64]
cmp dword [eax + 0x10], 0xffffffff
je 0x102d6597
mov ecx, dword [ebp - 0x64]
mov edx, dword [ebx + 8]
mov eax, dword [ecx + 0x10]
cmp eax, dword [edx + 0x60]
jl 0x102d659f
push 0
call dword [sym.imp.ucrtbased.dll_exit]
mov ecx, dword [ebx + 8]
mov edx, dword [ecx + 0x68]
mov eax, dword [ebp - 0x64]
add edx, dword [eax + 0x10]
mov dword [ebp - 0x68], edx
mov eax, dword [ebp - 0x64]
mov ecx, dword [eax + 4]
and ecx, 0x100000
je 0x102d65c5
mov byte [ebp - 0x199], 0
jmp 0x102d65cc
mov byte [ebp - 0x199], 1
movzx edx, byte [ebp - 0x199]
push edx
mov eax, dword [ebp - 0x68]
push eax
lea ecx, [ebp - 0x140]
push ecx
call fcn.1015d559
add esp, 0xc
mov edx, dword [ebp - 0x64]
mov eax, dword [eax]
mov dword [edx + 0x1c], eax
cmp dword [ebp - 0x60], 0
jle 0x102d660a
mov eax, dword [ebp - 8]
movss xmm0, dword [eax + 0x154c]
movss dword [ebp - 0x19c], xmm0
jmp 0x102d6615
xorps xmm0, xmm0
movss dword [ebp - 0x19c], xmm0
mov ecx, dword [ebp - 0x64]
movss xmm0, dword [ebp - 0x19c]
addss xmm0, dword [ecx + 0x1c]
addss xmm0, dword [ebp - 0x54]
movss dword [ebp - 0x54], xmm0
mov eax, dword [ebp - 0x50]
mov ecx, dword [ebp - 0x60]
cmp ecx, dword [eax]
jl 0x102d6641
push 0
call dword [sym.imp.ucrtbased.dll_exit]
mov edx, dword [ebp - 0x50]
mov eax, dword [edx + 8]
mov ecx, dword [ebp - 0x60]
lea edx, [eax + ecx*8]
mov dword [ebp - 0x178], edx
mov eax, dword [ebp - 0x178]
mov ecx, dword [ebp - 0x60]
mov dword [eax], ecx
mov eax, dword [ebp - 0x64]
movss xmm0, dword [eax + 0x1c]
movss dword [ebp - 0x19c], xmm0
mov ecx, dword [ebp - 0x50]
mov edx, dword [ebp - 0x60]
cmp edx, dword [ecx]
jl 0x102d6680
push 0
call dword [sym.imp.ucrtbased.dll_exit]
mov eax, dword [ebp - 0x50]
mov ecx, dword [eax + 8]
mov edx, dword [ebp - 0x60]
lea eax, [ecx + edx*8]
mov dword [ebp - 0x170], eax
mov ecx, dword [ebp - 0x170]
movss xmm0, dword [ebp - 0x19c]
movss dword [ecx + 4], xmm0
jmp 0x102d64f8
mov eax, dword [ebx + 8]
add eax, 0x24
mov dword [ebp - 0xb0], eax
mov ecx, dword [ebp - 0xb0]
mov edx, dword [ebp - 0xb0]
movss xmm0, dword [ecx + 8]
subss xmm0, dword [edx]
movss dword [ebp - 0x6c], xmm0
movss xmm0, dword [ebp - 0x54]
comiss xmm0, dword [ebp - 0x6c]
jbe 0x102d66ef
movss xmm0, dword [ebp - 0x54]
subss xmm0, dword [ebp - 0x6c]
movss dword [ebp - 0x19c], xmm0
jmp 0x102d66fa
xorps xmm0, xmm0
movss dword [ebp - 0x19c], xmm0
movss xmm0, dword [ebp - 0x19c]
movss dword [ebp - 0x70], xmm0
movss xmm0, dword [ebp - 0x70]
comiss xmm0, dword [0x1042d1cc]
jbe 0x102d6a71
mov eax, dword [ebx + 8]
mov ecx, dword [eax + 0x48]
and ecx, 0x40
je 0x102d6a71
mov eax, dword [ebx + 8]
cmp dword [eax], 1
jle 0x102d674d
push 0x102d7d20
push 8
mov eax, dword [ebp - 0x50]
mov ecx, dword [eax]
push ecx
mov edx, dword [ebp - 0x50]
mov eax, dword [edx + 8]
push eax
call dword [sym.imp.ucrtbased.dll_qsort]
add esp, 0x10
mov dword [ebp - 0x74], 1
movss xmm0, dword [ebp - 0x70]
comiss xmm0, dword [0x1042d1cc]
jbe 0x102d6976
mov eax, dword [ebx + 8]
mov ecx, dword [ebp - 0x74]
cmp ecx, dword [eax]
jge 0x102d6976
mov eax, dword [ebx + 8]
mov ecx, dword [ebp - 0x74]
cmp ecx, dword [eax]
jge 0x102d67e9
mov eax, dword [ebp - 0x50]
cmp dword [eax], 0
jg 0x102d678e
push 0
call dword [sym.imp.ucrtbased.dll_exit]
xor ecx, ecx
shl ecx, 3
mov edx, dword [ebp - 0x50]
add ecx, dword [edx + 8]
mov dword [ebp - 0x16c], ecx
mov eax, dword [ebp - 0x50]
mov ecx, dword [ebp - 0x74]
cmp ecx, dword [eax]
jl 0x102d67b1
push 0
call dword [sym.imp.ucrtbased.dll_exit]
mov edx, dword [ebp - 0x50]
mov eax, dword [edx + 8]
mov ecx, dword [ebp - 0x74]
lea edx, [eax + ecx*8]
mov dword [ebp - 0x198], edx
mov eax, dword [ebp - 0x16c]
mov ecx, dword [ebp - 0x198]
movss xmm0, dword [eax + 4]
ucomiss xmm0, dword [ecx + 4]
lahf
test ah, 0x44
jp 0x102d67e9
mov eax, dword [ebp - 0x74]
add eax, 1
mov dword [ebp - 0x74], eax
jmp 0x102d6774
mov eax, dword [ebx + 8]
mov ecx, dword [ebp - 0x74]
cmp ecx, dword [eax]
jge 0x102d6858
mov edx, dword [ebp - 0x50]
cmp dword [edx], 0
jg 0x102d6803
push 0
call dword [sym.imp.ucrtbased.dll_exit]
xor eax, eax
shl eax, 3
mov ecx, dword [ebp - 0x50]
add eax, dword [ecx + 8]
mov dword [ebp - 0x174], eax
mov edx, dword [ebp - 0x50]
mov eax, dword [ebp - 0x74]
cmp eax, dword [edx]
jl 0x102d6826
push 0
call dword [sym.imp.ucrtbased.dll_exit]
mov ecx, dword [ebp - 0x50]
mov edx, dword [ecx + 8]
mov eax, dword [ebp - 0x74]
lea ecx, [edx + eax*8]
mov dword [ebp - 0x17c], ecx
mov edx, dword [ebp - 0x174]
mov eax, dword [ebp - 0x17c]
movss xmm0, dword [edx + 4]
subss xmm0, dword [eax + 4]
movss dword [ebp - 0x19c], xmm0
jmp 0x102d6894
mov ecx, dword [ebp - 0x50]
cmp dword [ecx], 0
jg 0x102d6868
push 0
call dword [sym.imp.ucrtbased.dll_exit]
xor edx, edx
shl edx, 3
mov eax, dword [ebp - 0x50]
add edx, dword [eax + 8]
mov dword [ebp - 0x180], edx
mov ecx, dword [ebp - 0x180]
movss xmm0, dword [ecx + 4]
subss xmm0, dword [0x1042d1f8]
movss dword [ebp - 0x19c], xmm0
movss xmm0, dword [ebp - 0x19c]
movss dword [ebp - 0x78], xmm0
cvtsi2ss xmm0, dword [ebp - 0x74]
movss xmm1, dword [ebp - 0x70]
divss xmm1, xmm0
movss dword [ebp - 0xb4], xmm1
movss xmm0, dword [ebp - 0x78]
comiss xmm0, dword [ebp - 0xb4]
jbe 0x102d68d7
movss xmm0, dword [ebp - 0xb4]
movss dword [ebp - 0x19c], xmm0
jmp 0x102d68e4
movss xmm0, dword [ebp - 0x78]
movss dword [ebp - 0x19c], xmm0
movss xmm0, dword [ebp - 0x19c]
movss dword [ebp - 0x7c], xmm0
mov dword [ebp - 0x80], 0
jmp 0x102d6903
mov eax, dword [ebp - 0x80]
add eax, 1
mov dword [ebp - 0x80], eax
mov eax, dword [ebp - 0x80]
cmp eax, dword [ebp - 0x74]
jge 0x102d6959
mov eax, dword [ebp - 0x50]
mov ecx, dword [ebp - 0x80]
cmp ecx, dword [eax]
jl 0x102d691d
push 0
call dword [sym.imp.ucrtbased.dll_exit]
mov edx, dword [ebp - 0x50]
mov eax, dword [edx + 8]
mov ecx, dword [ebp - 0x80]
lea edx, [eax + ecx*8]
mov dword [ebp - 0x184], edx
mov eax, dword [ebp - 0x184]
add eax, 4
mov dword [ebp - 0x19c], eax
mov ecx, dword [ebp - 0x19c]
movss xmm0, dword [ecx]
subss xmm0, dword [ebp - 0x7c]
mov edx, dword [ebp - 0x19c]
movss dword [edx], xmm0
jmp 0x102d68fa
cvtsi2ss xmm0, dword [ebp - 0x74]
mulss xmm0, dword [ebp - 0x7c]
movss xmm1, dword [ebp - 0x70]
subss xmm1, xmm0
movss dword [ebp - 0x70], xmm1
jmp 0x102d6754
mov dword [ebp - 0x84], 0
jmp 0x102d6991
mov eax, dword [ebp - 0x84]
add eax, 1
mov dword [ebp - 0x84], eax
mov eax, dword [ebx + 8]
mov ecx, dword [ebp - 0x84]
cmp ecx, dword [eax]
jge 0x102d6a6c
mov eax, dword [ebp - 0x50]
mov ecx, dword [ebp - 0x84]
cmp ecx, dword [eax]
jl 0x102d69b7
push 0
call dword [sym.imp.ucrtbased.dll_exit]
mov edx, dword [ebp - 0x50]
mov eax, dword [edx + 8]
mov ecx, dword [ebp - 0x84]
lea edx, [eax + ecx*8]
mov dword [ebp - 0x188], edx
mov eax, dword [ebp - 0x188]
cvttss2si ecx, dword [eax + 4]
cvtsi2ss xmm0, ecx
movss dword [ebp - 0x19c], xmm0
mov edx, dword [ebx + 8]
mov dword [ebp - 0x158], edx
mov eax, dword [ebp - 0x50]
mov ecx, dword [ebp - 0x84]
cmp ecx, dword [eax]
jl 0x102d6a01
push 0
call dword [sym.imp.ucrtbased.dll_exit]
mov edx, dword [ebp - 0x50]
mov eax, dword [edx + 8]
mov ecx, dword [ebp - 0x84]
lea edx, [eax + ecx*8]
mov dword [ebp - 0x18c], edx
mov eax, dword [ebp - 0x18c]
mov ecx, dword [eax]
mov dword [ebp - 0xb8], ecx
mov edx, dword [ebp - 0x158]
mov eax, dword [ebp - 0xb8]
cmp eax, dword [edx]
jl 0x102d6a3c
push 0
call dword [sym.imp.ucrtbased.dll_exit]
mov ecx, dword [ebp - 0xb8]
shl ecx, 5
mov edx, dword [ebp - 0x158]
add ecx, dword [edx + 8]
mov dword [ebp - 0x164], ecx
mov eax, dword [ebp - 0x164]
movss xmm0, dword [ebp - 0x19c]
movss dword [eax + 0x18], xmm0
jmp 0x102d6982
jmp 0x102d6b3f
call fcn.102d5f80
fstp dword [ebp - 0x88]
mov dword [ebp - 0x8c], 0
jmp 0x102d6a97
mov eax, dword [ebp - 0x8c]
add eax, 1
mov dword [ebp - 0x8c], eax
mov eax, dword [ebx + 8]
mov ecx, dword [ebp - 0x8c]
cmp ecx, dword [eax]
jge 0x102d6b3f
mov eax, dword [ebx + 8]
mov dword [ebp - 0x15c], eax
mov ecx, dword [ebp - 0x15c]
mov edx, dword [ebp - 0x8c]
cmp edx, dword [ecx]
jl 0x102d6ac9
push 0
call dword [sym.imp.ucrtbased.dll_exit]
mov eax, dword [ebp - 0x8c]
shl eax, 5
mov ecx, dword [ebp - 0x15c]
add eax, dword [ecx + 8]
mov dword [ebp - 0x90], eax
mov eax, dword [ebp - 0x90]
movss xmm0, dword [eax + 0x1c]
movss dword [ebp - 0xbc], xmm0
movss xmm0, dword [ebp - 0x88]
comiss xmm0, dword [ebp - 0xbc]
jbe 0x102d6b17
movss xmm0, dword [ebp - 0xbc]
movss dword [ebp - 0x19c], xmm0
jmp 0x102d6b27
movss xmm0, dword [ebp - 0x88]
movss dword [ebp - 0x19c], xmm0
mov ecx, dword [ebp - 0x90]
movss xmm0, dword [ebp - 0x19c]
movss dword [ecx + 0x18], xmm0
jmp 0x102d6a88
xorps xmm0, xmm0
movss dword [ebp - 0x94], xmm0
mov dword [ebp - 0x98], 0
jmp 0x102d6b65
mov eax, dword [ebp - 0x98]
add eax, 1
mov dword [ebp - 0x98], eax
mov eax, dword [ebx + 8]
mov ecx, dword [ebp - 0x98]
cmp ecx, dword [eax]
jge 0x102d6c11
mov eax, dword [ebx + 8]
mov dword [ebp - 0x194], eax
mov ecx, dword [ebp - 0x194]
mov edx, dword [ebp - 0x98]
cmp edx, dword [ecx]
jl 0x102d6b97
push 0
call dword [sym.imp.ucrtbased.dll_exit]
mov eax, dword [ebp - 0x98]
shl eax, 5
mov ecx, dword [ebp - 0x194]
add eax, dword [ecx + 8]
mov dword [ebp - 0x9c], eax
mov eax, dword [ebp - 0x9c]
movss xmm0, dword [ebp - 0x94]
movss dword [eax + 0x14], xmm0
cmp dword [ebp - 0x18], 0
jne 0x102d6be6
mov eax, dword [ebp - 8]
mov ecx, dword [ebp - 0x9c]
mov edx, dword [eax + 0x1ab8]
cmp edx, dword [ecx]
jne 0x102d6be6
mov eax, dword [ebp - 0x9c]
mov ecx, dword [eax]
mov dword [ebp - 0x18], ecx
mov eax, dword [ebp - 0x9c]
mov ecx, dword [ebp - 8]
movss xmm0, dword [eax + 0x18]
addss xmm0, dword [ecx + 0x154c]
addss xmm0, dword [ebp - 0x94]
movss dword [ebp - 0x94], xmm0
jmp 0x102d6b56
mov eax, dword [ebp - 8]
movss xmm0, dword [ebp - 0x94]
subss xmm0, dword [eax + 0x154c]
movss dword [ebp - 0xc0], xmm0
movss xmm0, dword [ebp - 0xc0]
comiss xmm0, dword [0x1042d1cc]
jb 0x102d6c4f
movss xmm0, dword [ebp - 0xc0]
movss dword [ebp - 0x19c], xmm0
jmp 0x102d6c5a
xorps xmm0, xmm0
movss dword [ebp - 0x19c], xmm0
mov ecx, dword [ebx + 8]
movss xmm0, dword [ebp - 0x19c]
movss dword [ecx + 0x38], xmm0
mov eax, dword [ebx + 8]
xorps xmm0, xmm0
movss dword [eax + 0x3c], xmm0
mov eax, dword [ebx + 8]
add eax, 0x24
mov dword [ebp - 0xc4], eax
mov ecx, dword [ebp - 0xc4]
mov edx, dword [ebp - 0xc4]
movss xmm0, dword [ecx + 8]
subss xmm0, dword [edx]
mov eax, dword [ebx + 8]
movss xmm1, dword [eax + 0x38]
comiss xmm1, xmm0
jbe 0x102d6ccd
mov ecx, dword [ebx + 8]
cmp dword [ecx], 1
jle 0x102d6ccd
mov edx, dword [ebx + 8]
mov eax, dword [edx + 0x48]
and eax, 0x10
jne 0x102d6ccd
mov ecx, dword [ebx + 8]
mov edx, dword [ecx + 0x48]
and edx, 0x80
je 0x102d6ccd
mov byte [ebp - 0x199], 1
jmp 0x102d6cd4
mov byte [ebp - 0x199], 0
mov al, byte [ebp - 0x199]
mov byte [ebp - 0x9d], al
movzx eax, byte [ebp - 0x9d]
test eax, eax
je 0x102d6d1d
mov eax, dword [ebx + 8]
push eax
call fcn.102d7690
add esp, 4
mov dword [ebp - 0xa4], eax
cmp dword [ebp - 0xa4], 0
je 0x102d6d1d
mov eax, dword [ebx + 8]
mov ecx, dword [ebp - 0xa4]
mov edx, dword [ecx]
mov dword [eax + 0x10], edx
mov eax, dword [ebx + 8]
mov ecx, dword [eax + 0x10]
mov dword [ebp - 0x18], ecx
movzx eax, byte [ebp - 0x59]
test eax, eax
jne 0x102d6d2f
mov eax, dword [ebx + 8]
mov dword [eax + 0x10], 0
mov eax, dword [ebx + 8]
cmp dword [eax + 0x10], 0
jne 0x102d6d5b
mov eax, dword [ebx + 8]
cmp dword [eax + 0x14], 0
jne 0x102d6d5b
cmp dword [ebp - 0x58], 0
je 0x102d6d5b
mov eax, dword [ebx + 8]
mov ecx, dword [ebp - 0x58]
mov edx, dword [ecx]
mov dword [eax + 0x10], edx
mov eax, dword [ebx + 8]
mov ecx, dword [eax + 0x10]
mov dword [ebp - 0x18], ecx
mov eax, dword [ebx + 8]
mov ecx, dword [ebx + 8]
mov edx, dword [ecx + 0x10]
mov dword [eax + 0x18], edx
mov eax, dword [ebx + 8]
mov byte [eax + 0x55], 0
cmp dword [ebp - 0x18], 0
je 0x102d6da6
mov eax, dword [ebp - 0x18]
push eax
mov ecx, dword [ebx + 8]
push ecx
call fcn.1015da0e
add esp, 8
mov dword [ebp - 0xa8], eax
cmp dword [ebp - 0xa8], 0
je 0x102d6da6
mov eax, dword [ebp - 0xa8]
push eax
mov ecx, dword [ebx + 8]
push ecx
call fcn.102d7510
add esp, 8
mov eax, dword [ebx + 8]
push ecx
movss xmm0, dword [eax + 0x40]
movss dword [esp], xmm0
mov ecx, dword [ebx + 8]
push ecx
call fcn.102d7450
add esp, 8
mov edx, dword [ebx + 8]
fstp dword [edx + 0x40]
mov eax, dword [ebx + 8]
push ecx
movss xmm0, dword [eax + 0x44]
movss dword [esp], xmm0
mov ecx, dword [ebx + 8]
push ecx
call fcn.102d7450
add esp, 8
mov edx, dword [ebx + 8]
fstp dword [edx + 0x44]
mov eax, dword [ebx + 8]
mov ecx, dword [eax + 0x20]
add ecx, 1
mov edx, dword [ebp - 8]
cmp ecx, dword [edx + 0x1940]
jge 0x102d6e0c
movss xmm0, dword [0x1042d214]
movss dword [ebp - 0x19c], xmm0
jmp 0x102d6e2f
mov eax, dword [ebp - 8]
mov ecx, dword [ebp - 8]
movss xmm0, dword [eax + 0x18]
mulss xmm0, dword [ecx + 0x18ac]
mulss xmm0, dword [0x10446120]
movss dword [ebp - 0x19c], xmm0
movss xmm0, dword [ebp - 0x19c]
movss dword [ebp - 0xac], xmm0
mov eax, dword [ebx + 8]
mov ecx, dword [ebx + 8]
movss xmm0, dword [eax + 0x40]
ucomiss xmm0, dword [ecx + 0x44]
lahf
test ah, 0x44
jnp 0x102d6f74
mov eax, dword [ebx + 8]
movss xmm0, dword [eax + 0x40]
movss dword [ebp - 0xc8], xmm0
mov ecx, dword [ebx + 8]
movss xmm0, dword [ecx + 0x44]
movss dword [ebp - 0xcc], xmm0
movss xmm0, dword [ebp - 0xcc]
comiss xmm0, dword [ebp - 0xc8]
jbe 0x102d6ee6
movss xmm0, dword [ebp - 0xc8]
addss xmm0, dword [ebp - 0xac]
movss dword [ebp - 0xd0], xmm0
movss xmm0, dword [ebp - 0xcc]
comiss xmm0, dword [ebp - 0xd0]
jbe 0x102d6ec4
movss xmm0, dword [ebp - 0xd0]
movss dword [ebp - 0x19c], xmm0
jmp 0x102d6ed4
movss xmm0, dword [ebp - 0xcc]
movss dword [ebp - 0x19c], xmm0
movss xmm0, dword [ebp - 0x19c]
movss dword [ebp - 0x190], xmm0
jmp 0x102d6f64
movss xmm0, dword [ebp - 0xc8]
comiss xmm0, dword [ebp - 0xcc]
jbe 0x102d6f54
movss xmm0, dword [ebp - 0xc8]
subss xmm0, dword [ebp - 0xac]
movss dword [ebp - 0xd4], xmm0
movss xmm0, dword [ebp - 0xd4]
comiss xmm0, dword [ebp - 0xcc]
jb 0x102d6f32
movss xmm0, dword [ebp - 0xd4]
movss dword [ebp - 0x1a0], xmm0
jmp 0x102d6f42
movss xmm0, dword [ebp - 0xcc]
movss dword [ebp - 0x1a0], xmm0
movss xmm0, dword [ebp - 0x1a0]
movss dword [ebp - 0x190], xmm0
jmp 0x102d6f64
movss xmm0, dword [ebp - 0xc8]
movss dword [ebp - 0x190], xmm0
mov edx, dword [ebx + 8]
movss xmm0, dword [ebp - 0x190]
movss dword [edx + 0x40], xmm0
mov eax, dword [ebx + 8]
mov ecx, dword [eax + 0x48]
and ecx, 0x100000
jne 0x102d6f9b
mov eax, dword [ebx + 8]
add eax, 0x60
mov dword [ebp - 0x19c], eax
push 0
mov ecx, dword [ebp - 0x19c]
call fcn.1015e08a
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1015ebf2
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret