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

Disassembly:
sub esp, 0x78
push esi
mov esi, ecx
xorps xmm0, xmm0
push edi
mov edi, dword [esp + 0x88]
movsd qword [esp + 0x78], xmm0
mov eax, dword [esi + 0xe48]
movsd qword [esp + 0x70], xmm0
dec eax
je 0x10196b9c
dec eax
jne 0x10196bb7
push edi
push dword [esp + 0x88]
call fcn.101966cc
mulsd xmm0, qword [0x10270f90]
jmp 0x10196bb1
push edi
push dword [esp + 0x88]
call fcn.101966cc
xorpd xmm0, xmmword [0x10271170]
movsd qword [esp + 0x78], xmm0
movsd xmm0, qword [esi + 0xe58]
lea ecx, [esi + 0x1fc0]
push 0x48
movsd qword [esp + 0x6c], xmm0
call fcn.1011a040
test eax, eax
je 0x10196be6
mov ecx, dword [eax + 0x1c]
sub ecx, dword [eax + 0x14]
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
jmp 0x10196bec
movsd xmm0, qword [esp + 0x68]
cmp dword [esi + 0xe70], 0
jne 0x10196c00
movapd xmm1, xmm0
mov ecx, esi
call fcn.10193b31
mov eax, dword [esi + 0xe4c]
movsd xmm4, qword [0x10271170]
dec eax
je 0x10196c22
dec eax
jne 0x10196c2c
movapd xmm3, xmm0
mulsd xmm3, qword [0x10270f90]
jmp 0x10196c32
movapd xmm3, xmm0
xorpd xmm3, xmm4
jmp 0x10196c32
movsd xmm3, qword [esp + 0x70]
cmp byte [esi + 0x1601], 0
je 0x10196c3f
xorpd xmm3, xmm4
movaps xmm0, xmmword [0x10270fe0]
lea eax, [esp + 0x38]
movupd xmmword [esp + 8], xmm0
lea ecx, [esp + 8]
movaps xmm0, xmmword [0x10271090]
addsd xmm3, qword [esp + 0x98]
movupd xmmword [esp + 0x18], xmm0
push eax
xorps xmm0, xmm0
movupd xmmword [esp + 0x2c], xmm0
movsd xmm0, qword [esp + 0x7c]
addsd xmm0, qword [esp + 0x94]
addsd xmm3, qword [esp + 0xac]
addsd xmm0, qword [esp + 0xa4]
movsd qword [esp + 0x74], xmm3
movsd qword [esp + 0xac], xmm3
movsd qword [esp + 0x7c], xmm0
movsd qword [esp + 0xa4], xmm0
movaps xmm0, xmmword [0x10270fe0]
movupd xmmword [esp + 0x3c], xmm0
movaps xmm0, xmmword [0x10271090]
movupd xmmword [esp + 0x4c], xmm0
movsd xmm0, qword [esp + 0x94]
xorpd xmm0, xmm4
movsd qword [esp + 0x5c], xmm0
movsd xmm0, qword [esp + 0x9c]
xorpd xmm0, xmm4
movsd qword [esp + 0x64], xmm0
call fcn.101a09c4
movsd xmm0, qword [esi + 0xe40]
call fcn.10210de0
movsd qword [esp + 0x38], xmm0
movsd xmm0, qword [esi + 0xe40]
call fcn.10210fa0
movsd qword [esp + 0x40], xmm0
lea eax, [esp + 0x38]
xorpd xmm0, xmmword [0x10271170]
lea ecx, [esp + 8]
movsd qword [esp + 0x48], xmm0
movsd xmm0, qword [esp + 0x38]
movsd qword [esp + 0x50], xmm0
xorps xmm0, xmm0
push eax
movupd xmmword [esp + 0x5c], xmm0
call fcn.101a09c4
movaps xmm0, xmmword [0x10270fe0]
lea eax, [esp + 0x38]
movupd xmmword [esp + 0x38], xmm0
push eax
movaps xmm0, xmmword [0x10271090]
movupd xmmword [esp + 0x4c], xmm0
movsd xmm0, qword [esp + 0x94]
movsd qword [esp + 0x5c], xmm0
movsd xmm0, qword [esp + 0x9c]
movsd qword [esp + 0x64], xmm0
call fcn.101a09c4
cmp dword [esi + 0xe70], 0
lea eax, [esi + 0x1ff0]
mov dword [esp + 0x68], eax
mov eax, ecx
mov dword [esp + 0x6c], eax
jne 0x10196ddf
lea eax, [esp + 0xa8]
mov ecx, esi
push eax
lea eax, [esp + 0xa4]
push eax
call fcn.101939cc
movsd xmm1, qword [esp + 0xa0]
movsd xmm0, qword [esp + 0xa8]
movsd qword [esp + 0x78], xmm1
movsd qword [esp + 0x70], xmm0
xor eax, eax
mov dword [esp + 0xa4], eax
test edi, edi
je 0x10196ee6
mov ecx, dword [esp + 0x84]
movzx eax, word [ecx + eax*2]
test ax, ax
je 0x10196ee6
push eax
lea ecx, [esi + 0x1fc0]
call fcn.1011a040
mov edi, eax
test edi, edi
je 0x10196eca
cmp dword [esp + 0xa4], 0
je 0x10196e3f
lea eax, [esp + 0x98]
push eax
lea eax, [esp + 0x94]
push eax
lea ecx, [esi + 0x1fc0]
call fcn.1011a1e0
movsd xmm0, qword [0x10270d68]
movsd xmm3, qword [esp + 0x70]
movsd xmm2, qword [esp + 0x78]
push ecx
push ecx
movsd qword [esp], xmm0
lea ecx, [esi + 0x1fc0]
push edi
call fcn.1011a110
cmp dword [edi + 0xc], 3
jne 0x10196e8d
lea ecx, [esi + 0xf18]
and dword [ecx], 0
lea eax, [esp + 0x68]
and dword [ecx + 0x14], 0
push ecx
push eax
call fcn.1011c940
push 2
mov ecx, esi
call fcn.101975d3
cmp dword [edi + 0xc], 2
jne 0x10196ea8
lea eax, [esi + 0x2044]
mov ecx, esi
push eax
lea eax, [esi + 0x2020]
push eax
call fcn.101976d7
movsd xmm0, qword [edi + 0x20]
addsd xmm0, qword [esp + 0x78]
movsd qword [esp + 0x78], xmm0
movsd xmm0, qword [edi + 0x28]
addsd xmm0, qword [esp + 0x70]
movsd qword [esp + 0x70], xmm0
mov eax, dword [esp + 0xa4]
inc eax
mov dword [esp + 0xa4], eax
cmp eax, dword [esp + 0x88]
jb 0x10196df0
pop edi
pop esi
add esp, 0x78
ret 0x2c