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

Disassembly:
mov ecx, dword [0x101f565c]
sub esp, 0x84
push ebx
push ebp
push esi
push edi
mov edi, ecx
test edi, edi
je 0x10019a97
mov eax, dword [0x101f5658]
test eax, eax
jne 0x10019517
mov edx, 0xe80c2f78
mov ecx, 0x1014a9e5
call fcn.10003700
mov edx, 0xc10bf213
mov ecx, 0x1014a90d
mov esi, eax
call fcn.10003700
mov edx, esi
mov ecx, eax
call fcn.100aa660
mov ecx, dword [0x101f565c]
mov dword [0x101f5658], eax
cmp dword [eax + edi], 0
jle 0x10019a97
test ecx, ecx
je 0x10019a97
mov ecx, dword [0x101bf77c]
mov eax, dword [ecx]
mov eax, dword [eax + 0x68]
call eax
test al, al
je 0x10019a97
mov ecx, dword [0x101bf77c]
mov eax, dword [ecx]
mov eax, dword [eax + 0x6c]
call eax
test al, al
je 0x10019a97
cmp byte [0x101f58c5], 0
je 0x10019a97
cmp dword [0x101f5988], 0
je 0x10019a97
mov esi, dword [0x101f0f00]
mov eax, 0x2aaaaaab
mov edi, dword [0x101f0efc]
mov ecx, esi
sub ecx, edi
xor ebx, ebx
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
dec eax
add eax, edx
je 0x100196de
xor ebp, ebp
nop dword [eax + eax]
sub esi, edi
mov dword [esp + 0x28], 0
mov eax, 0x2aaaaaab
mov dword [esp + 0x24], 0
imul esi
mov dword [esp + 0x20], 0
sar edx, 1
mov eax, edx
mov dword [esp + 0x1c], 0
shr eax, 0x1f
add eax, edx
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
cmp eax, ebx
jbe 0x10019aa2
mov ecx, dword [0x101f5890]
lea esi, [esp + 0x20]
lea edx, [edi + ebp]
push esi
push edx
mov eax, dword [ecx]
mov eax, dword [eax + 0x34]
call eax
cmp eax, 1
je 0x100196b1
mov ecx, dword [0x101f0f00]
mov eax, 0x2aaaaaab
mov esi, dword [0x101f0efc]
sub ecx, esi
imul ecx
lea eax, [ebx + 1]
sar edx, 1
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
cmp ecx, eax
jbe 0x10019aa2
mov ecx, dword [0x101f5890]
lea edx, [esi + 0xc]
lea esi, [esp + 0x14]
add edx, ebp
push esi
push edx
mov eax, dword [ecx]
mov eax, dword [eax + 0x34]
call eax
cmp eax, 1
je 0x100196b1
movss xmm0, dword [0x101bc2b0]
lea eax, [esp + 0x50]
movss xmm3, dword [esp + 0x14]
movss xmm2, dword [esp + 0x24]
movss xmm1, dword [esp + 0x20]
movss dword [esp + 0x50], xmm0
movss xmm0, dword [0x101bc2b4]
push ecx
movss dword [esp + 0x58], xmm0
movss xmm0, dword [0x101bc2b8]
mov dword [esp], 0x3f800000
push eax
movss dword [esp + 0x60], xmm0
movss xmm0, dword [esp + 0x20]
push ecx
mov dword [esp + 0x68], 0x3f800000
movss dword [esp], xmm0
call fcn.100ae600
mov esi, dword [0x101f0f00]
mov eax, 0x2aaaaaab
mov edi, dword [0x101f0efc]
mov ecx, esi
sub ecx, edi
inc ebx
imul ecx
add ebp, 0xc
sar edx, 1
mov eax, edx
shr eax, 0x1f
dec eax
add eax, edx
cmp ebx, eax
jb 0x100195a0
mov ecx, 4
lea eax, [esp + 0x64]
nop word [eax + eax]
mov dword [eax + 4], 0
lea eax, [eax + 0xc]
mov dword [eax - 0xc], 0
mov dword [eax - 0x10], 0
sub ecx, 1
jne 0x100196f0
sub esi, edi
mov eax, 0x2aaaaaab
imul esi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
lea ecx, [eax - 1]
cmp eax, ecx
jbe 0x10019aa2
lea eax, [ecx + ecx*2]
mov ecx, dword [0x101f5890]
movss xmm2, dword [edi + eax*4]
lea edx, [esp + 0x60]
movss xmm1, dword [edi + eax*4 + 4]
movss xmm0, dword [edi + eax*4 + 8]
subss xmm2, dword [0x101b64d8]
subss xmm1, dword [0x101b64d8]
mov eax, dword [ecx]
push edx
lea edx, [esp + 0x30]
movss dword [esp + 0x38], xmm0
movss dword [esp + 0x30], xmm2
movss dword [esp + 0x34], xmm1
mov eax, dword [eax + 0x34]
push edx
call eax
cmp eax, 1
je 0x10019a97
mov ecx, dword [0x101f0f00]
mov eax, 0x2aaaaaab
mov esi, dword [0x101f0efc]
sub ecx, esi
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
lea ecx, [eax - 1]
cmp eax, ecx
jbe 0x10019aa2
lea eax, [ecx + ecx*2]
mov ecx, dword [0x101f5890]
movss xmm2, dword [esi + eax*4]
lea edx, [esp + 0x6c]
movss xmm1, dword [esi + eax*4 + 4]
subss xmm2, dword [0x101b64d8]
addss xmm1, dword [0x101b64d8]
movss xmm0, dword [esi + eax*4 + 8]
movss dword [esp + 0x40], xmm0
push edx
movss dword [esp + 0x3c], xmm2
lea edx, [esp + 0x3c]
movss dword [esp + 0x40], xmm1
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 0x34]
call eax
cmp eax, 1
je 0x10019a97
mov ecx, dword [0x101f0f00]
mov eax, 0x2aaaaaab
mov esi, dword [0x101f0efc]
sub ecx, esi
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
lea ecx, [eax - 1]
cmp eax, ecx
jbe 0x10019aa2
lea eax, [ecx + ecx*2]
mov ecx, dword [0x101f5890]
movss xmm2, dword [esi + eax*4]
movss xmm1, dword [esi + eax*4 + 4]
movss xmm0, dword [esi + eax*4 + 8]
addss xmm2, dword [0x101b64d8]
subss xmm1, dword [0x101b64d8]
movss dword [esp + 0x4c], xmm0
movss dword [esp + 0x44], xmm2
movss dword [esp + 0x48], xmm1
mov eax, dword [ecx]
mov edx, dword [eax + 0x34]
lea eax, [esp + 0x78]
push eax
lea eax, [esp + 0x48]
push eax
call edx
cmp eax, 1
je 0x10019a97
mov ecx, dword [0x101f0f00]
mov eax, 0x2aaaaaab
mov esi, dword [0x101f0efc]
sub ecx, esi
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
lea ecx, [eax - 1]
cmp eax, ecx
jbe 0x10019aa2
lea eax, [ecx + ecx*2]
mov ecx, dword [0x101f5890]
movss xmm2, dword [esi + eax*4]
lea edx, [esp + 0x84]
movss xmm1, dword [esi + eax*4 + 4]
addss xmm2, dword [0x101b64d8]
addss xmm1, dword [0x101b64d8]
movss xmm0, dword [esi + eax*4 + 8]
movss dword [esp + 0x58], xmm0
push edx
movss dword [esp + 0x54], xmm2
lea edx, [esp + 0x54]
movss dword [esp + 0x58], xmm1
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 0x34]
call eax
cmp eax, 1
je 0x10019a97
movss xmm0, dword [0x101bc2b0]
lea eax, [esp + 0x50]
movss xmm3, dword [esp + 0x6c]
movss xmm2, dword [esp + 0x64]
movss xmm1, dword [esp + 0x60]
movss dword [esp + 0x50], xmm0
movss xmm0, dword [0x101bc2b4]
push ecx
movss dword [esp + 0x58], xmm0
movss xmm0, dword [0x101bc2b8]
mov dword [esp], 0x3f800000
push eax
movss dword [esp + 0x60], xmm0
movss xmm0, dword [esp + 0x78]
push ecx
mov dword [esp + 0x68], 0x3f800000
movss dword [esp], xmm0
call fcn.100ae600
movss xmm0, dword [0x101bc2b0]
lea eax, [esp + 0x50]
movss xmm3, dword [esp + 0x84]
movss xmm2, dword [esp + 0x70]
movss xmm1, dword [esp + 0x6c]
movss dword [esp + 0x50], xmm0
movss xmm0, dword [0x101bc2b4]
push ecx
movss dword [esp + 0x58], xmm0
movss xmm0, dword [0x101bc2b8]
mov dword [esp], 0x3f800000
push eax
movss dword [esp + 0x60], xmm0
movss xmm0, dword [esp + 0x90]
push ecx
mov dword [esp + 0x68], 0x3f800000
movss dword [esp], xmm0
call fcn.100ae600
movss xmm0, dword [0x101bc2b0]
lea eax, [esp + 0x50]
movss xmm3, dword [esp + 0x78]
movss xmm2, dword [esp + 0x88]
movss xmm1, dword [esp + 0x84]
movss dword [esp + 0x50], xmm0
movss xmm0, dword [0x101bc2b4]
push ecx
movss dword [esp + 0x58], xmm0
movss xmm0, dword [0x101bc2b8]
mov dword [esp], 0x3f800000
push eax
movss dword [esp + 0x60], xmm0
movss xmm0, dword [esp + 0x84]
push ecx
mov dword [esp + 0x68], 0x3f800000
movss dword [esp], xmm0
call fcn.100ae600
movss xmm0, dword [0x101bc2b0]
lea eax, [esp + 0x50]
movss xmm3, dword [esp + 0x60]
movss xmm2, dword [esp + 0x7c]
movss xmm1, dword [esp + 0x78]
movss dword [esp + 0x50], xmm0
movss xmm0, dword [0x101bc2b4]
push ecx
movss dword [esp + 0x58], xmm0
movss xmm0, dword [0x101bc2b8]
mov dword [esp], 0x3f800000
push eax
movss dword [esp + 0x60], xmm0
movss xmm0, dword [esp + 0x6c]
push ecx
mov dword [esp + 0x68], 0x3f800000
movss dword [esp], xmm0
call fcn.100ae600
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x84
ret
call fcn.10019b20
int3