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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0xb4
mov eax, dword [0x100cb040]
xor eax, esp
mov dword [esp + 0xb0], eax
cmp dword [0x100ccb1c], 0
push ebx
mov ebx, dword [ebp + 8]
push esi
push edi
vmovss dword [esp + 0x1c], xmm2
mov dword [esp + 0x20], ebx
je 0x100a41dc
mov ecx, dword [ebx]
vxorps xmm0, xmm0, xmm0
add ecx, 4
vmovss dword [esp + 0x64], xmm0
vmovss dword [esp + 0x68], xmm0
vmovss dword [esp + 0x6c], xmm0
vmovss dword [esp + 0x58], xmm0
vmovss dword [esp + 0x5c], xmm0
vmovss dword [esp + 0x60], xmm0
mov eax, dword [ecx]
mov eax, dword [eax + 0x20]
call eax
test eax, eax
je 0x100a41dc
mov ecx, dword [0x10428fdc]
push eax
mov edx, dword [ecx]
mov edx, dword [edx + 0x78]
call edx
test eax, eax
je 0x100a41dc
mov edx, dword [0x1042cf68]
mov ecx, dword [ebx]
add edx, 0xffffffc6
xor edx, 0x8987fdc6
imul esi, dword [edx + ecx], 0xc
add esi, dword [eax + 0xb0]
add esi, eax
je 0x100a41dc
cmp dword [0x100ccb1c], 2
mov al, byte [0x100cccb0]
mov byte [esp + 0x17], al
jne 0x100a3f27
imul edi, dword [0x102b0418], 0x44
add edi, dword [esi + 8]
add edi, esi
je 0x100a41dc
mov eax, dword [0x100ccbac]
lea ecx, [edi + 0x24]
vxorps xmm0, xmm0, xmm0
vcomiss xmm0, dword [edi + 0x30]
mov dword [esp + 0x18], eax
mov dword [esp + 0x10], eax
jb 0x100a3d87
lea edx, [esp + 0x8c]
call dword [0x10429158]
imul ecx, dword [edi], 0x30
lea eax, [esp + 0x28]
push eax
lea edx, [esp + 0x90]
add ecx, 0x28
add ecx, ebx
call fcn.10093a5c
vxorps xmm0, xmm0, xmm0
pop ecx
lea edx, [esp + 0x70]
lea ecx, [esp + 0x28]
vmovss dword [esp + 0x70], xmm0
vmovss dword [esp + 0x74], xmm0
vmovss dword [esp + 0x78], xmm0
call fcn.10093835
vmovss xmm0, dword [esp + 0x34]
mov ecx, dword [0x10428fe4]
movzx eax, byte [esp + 0x12]
vmovss dword [esp + 0x7c], xmm0
vmovss xmm0, dword [esp + 0x44]
push ecx
vmovss dword [esp + 0x84], xmm0
vmovss xmm0, dword [esp + 0x58]
vmovss dword [esp + 0x88], xmm0
vmovss xmm0, dword [esp + 0x20]
mov edx, dword [ecx]
vmovss dword [esp], xmm0
push 0
push eax
movzx eax, byte [esp + 0x1d]
push eax
mov eax, dword [esp + 0x28]
movzx eax, al
push eax
lea eax, [esp + 0x84]
push eax
lea eax, [edi + 0x14]
push eax
lea eax, [edi + 8]
push eax
lea eax, [esp + 0x9c]
push eax
call dword [edx + 4]
jmp 0x100a41dc
lea edx, [esp + 0x28]
call dword [0x10429158]
imul ecx, dword [edi], 0x30
lea eax, [esp + 0x28]
push eax
mov edx, eax
add ecx, 0x28
add ecx, ebx
call fcn.10093a5c
vmovss xmm0, dword [esp + 0x2c]
vmulss xmm1, xmm0, dword [edi + 8]
vmovss xmm0, dword [esp + 0x30]
vmulss xmm0, xmm0, dword [edi + 0xc]
vaddss xmm1, xmm1, xmm0
vmovss xmm0, dword [esp + 0x34]
vmulss xmm0, xmm0, dword [edi + 0x10]
vaddss xmm0, xmm1, xmm0
vaddss xmm3, xmm0, dword [esp + 0x38]
vmovss xmm0, dword [esp + 0x3c]
vmulss xmm1, xmm0, dword [edi + 8]
vmovss xmm0, dword [esp + 0x40]
vmulss xmm0, xmm0, dword [edi + 0xc]
vmovss xmm7, dword [esp + 0x44]
vaddss xmm1, xmm1, xmm0
vmulss xmm0, xmm7, dword [edi + 0x10]
vmovss xmm6, dword [esp + 0x4c]
vmovss xmm5, dword [esp + 0x50]
vaddss xmm0, xmm1, xmm0
vaddss xmm2, xmm0, dword [esp + 0x48]
vmulss xmm1, xmm6, dword [edi + 8]
vmulss xmm0, xmm5, dword [edi + 0xc]
vmovss xmm4, dword [esp + 0x54]
vaddss xmm1, xmm1, xmm0
vmulss xmm0, xmm4, dword [edi + 0x10]
vaddss xmm0, xmm1, xmm0
vaddss xmm0, xmm0, dword [esp + 0x58]
vmovss dword [esp + 0x70], xmm0
vmovss xmm0, dword [esp + 0x2c]
vmovss dword [esp + 0x68], xmm3
vmovss dword [esp + 0x6c], xmm2
vmulss xmm1, xmm0, dword [edi + 0x14]
vmovss xmm0, dword [esp + 0x30]
vmulss xmm0, xmm0, dword [edi + 0x18]
vaddss xmm1, xmm1, xmm0
vmovss xmm0, dword [esp + 0x34]
vmulss xmm0, xmm0, dword [edi + 0x1c]
vaddss xmm0, xmm1, xmm0
vaddss xmm3, xmm0, dword [esp + 0x38]
vmovss xmm0, dword [esp + 0x3c]
vmulss xmm1, xmm0, dword [edi + 0x14]
vmovss xmm0, dword [esp + 0x40]
vmulss xmm0, xmm0, dword [edi + 0x18]
movzx eax, byte [esp + 0x1b]
vaddss xmm1, xmm1, xmm0
vmulss xmm0, xmm7, dword [edi + 0x1c]
vaddss xmm0, xmm1, xmm0
vaddss xmm2, xmm0, dword [esp + 0x48]
vmulss xmm0, xmm5, dword [edi + 0x18]
vmulss xmm1, xmm6, dword [edi + 0x14]
vaddss xmm1, xmm1, xmm0
vmulss xmm0, xmm4, dword [edi + 0x1c]
pop ecx
mov ecx, dword [0x10428fe4]
vaddss xmm0, xmm1, xmm0
vaddss xmm0, xmm0, dword [esp + 0x54]
push eax
movzx eax, byte [esp + 0x17]
vmovss dword [esp + 0x64], xmm0
vmovss dword [esp + 0x5c], xmm3
vmovss dword [esp + 0x60], xmm2
vmovss xmm0, dword [edi + 0x30]
push 0
vmovss dword [esp + 0x2c], xmm0
vmovss xmm0, dword [esp + 0x24]
mov edx, dword [ecx]
push ecx
vmovss dword [esp], xmm0
push eax
movzx eax, byte [esp + 0x22]
push eax
movzx eax, byte [esp + 0x25]
push eax
mov eax, dword [esp + 0x30]
movzx eax, al
push eax
lea eax, [esp + 0x40]
push eax
lea eax, [esp + 0x78]
push eax
lea eax, [esp + 0x88]
push eax
call dword [edx + 0x5c]
jmp 0x100a41dc
xor ebx, ebx
cmp dword [esi + 4], ebx
jle 0x100a41dc
xor edi, edi
mov dword [esp + 0x24], edi
add edi, esi
add edi, dword [esi + 8]
je 0x100a41c7
cmp ebx, dword [0x102b0418]
jne 0x100a3f59
cmp dword [0x100ccb1c], 3
mov eax, dword [0x100ccbac]
je 0x100a3f5e
mov eax, dword [0x100ccc3c]
vxorps xmm0, xmm0, xmm0
vcomiss xmm0, dword [edi + 0x30]
mov dword [esp + 0x10], eax
lea ecx, [edi + 0x24]
mov dword [esp + 0x18], eax
jb 0x100a403a
lea edx, [esp + 0x8c]
call dword [0x10429158]
mov ecx, dword [esp + 0x20]
lea eax, [esp + 0x28]
push eax
imul eax, dword [edi], 0x30
lea edx, [esp + 0x90]
add ecx, 0x28
add ecx, eax
call fcn.10093a5c
vxorps xmm0, xmm0, xmm0
pop ecx
lea edx, [esp + 0x70]
lea ecx, [esp + 0x28]
vmovss dword [esp + 0x70], xmm0
vmovss dword [esp + 0x74], xmm0
vmovss dword [esp + 0x78], xmm0
call fcn.10093835
vmovss xmm0, dword [esp + 0x34]
mov ecx, dword [0x10428fe4]
movzx eax, byte [esp + 0x12]
vmovss dword [esp + 0x7c], xmm0
vmovss xmm0, dword [esp + 0x44]
push ecx
vmovss dword [esp + 0x84], xmm0
vmovss xmm0, dword [esp + 0x58]
vmovss dword [esp + 0x88], xmm0
vmovss xmm0, dword [esp + 0x20]
mov edx, dword [ecx]
vmovss dword [esp], xmm0
push 0
push eax
movzx eax, byte [esp + 0x1d]
push eax
mov eax, dword [esp + 0x28]
movzx eax, al
push eax
lea eax, [esp + 0x84]
push eax
lea eax, [edi + 0x14]
push eax
lea eax, [edi + 8]
push eax
lea eax, [esp + 0x9c]
push eax
call dword [edx + 4]
jmp 0x100a41c7
lea edx, [esp + 0x28]
call dword [0x10429158]
mov ecx, dword [esp + 0x20]
lea eax, [esp + 0x28]
push eax
imul eax, dword [edi], 0x30
lea edx, [esp + 0x2c]
add ecx, 0x28
add ecx, eax
call fcn.10093a5c
vmovss xmm4, dword [edi + 8]
vmovss xmm5, dword [edi + 0x10]
vmovss xmm0, dword [esp + 0x30]
vmulss xmm0, xmm0, dword [edi + 0xc]
vmulss xmm1, xmm4, dword [esp + 0x2c]
vaddss xmm1, xmm1, xmm0
vmulss xmm0, xmm5, dword [esp + 0x34]
vaddss xmm0, xmm1, xmm0
vaddss xmm3, xmm0, dword [esp + 0x38]
vmovss xmm0, dword [esp + 0x40]
vmulss xmm0, xmm0, dword [edi + 0xc]
vmulss xmm1, xmm4, dword [esp + 0x3c]
vaddss xmm1, xmm1, xmm0
vmulss xmm0, xmm5, dword [esp + 0x44]
vaddss xmm0, xmm1, xmm0
vaddss xmm2, xmm0, dword [esp + 0x48]
vmovss xmm0, dword [esp + 0x50]
vmulss xmm0, xmm0, dword [edi + 0xc]
vmulss xmm1, xmm4, dword [esp + 0x4c]
vaddss xmm1, xmm1, xmm0
vmulss xmm0, xmm5, dword [esp + 0x54]
vaddss xmm0, xmm1, xmm0
vaddss xmm0, xmm0, dword [esp + 0x58]
vmovss dword [esp + 0x70], xmm0
movzx eax, byte [esp + 0x1b]
vmovss dword [esp + 0x68], xmm3
vmovss dword [esp + 0x6c], xmm2
vmovss xmm6, dword [edi + 0x18]
vmovss xmm4, dword [edi + 0x14]
vmovss xmm5, dword [edi + 0x1c]
vmulss xmm1, xmm4, dword [esp + 0x2c]
vmulss xmm0, xmm6, dword [esp + 0x30]
vaddss xmm1, xmm1, xmm0
vmulss xmm0, xmm5, dword [esp + 0x34]
vaddss xmm0, xmm1, xmm0
vaddss xmm3, xmm0, dword [esp + 0x38]
vmulss xmm1, xmm4, dword [esp + 0x3c]
vmulss xmm0, xmm6, dword [esp + 0x40]
vaddss xmm1, xmm1, xmm0
vmulss xmm0, xmm5, dword [esp + 0x44]
vaddss xmm0, xmm1, xmm0
vaddss xmm2, xmm0, dword [esp + 0x48]
vmulss xmm0, xmm6, dword [esp + 0x50]
vmulss xmm1, xmm4, dword [esp + 0x4c]
vaddss xmm1, xmm1, xmm0
vmulss xmm0, xmm5, dword [esp + 0x54]
pop ecx
mov ecx, dword [0x10428fe4]
push eax
movzx eax, byte [esp + 0x17]
vaddss xmm0, xmm1, xmm0
vaddss xmm0, xmm0, dword [esp + 0x58]
vmovss dword [esp + 0x64], xmm0
push 0
vmovss dword [esp + 0x60], xmm3
vmovss dword [esp + 0x64], xmm2
vmovss xmm0, dword [edi + 0x30]
push ecx
vmovss dword [esp + 0x94], xmm0
vmovss xmm0, dword [esp + 0x28]
mov edx, dword [ecx]
vmovss dword [esp], xmm0
push eax
movzx eax, byte [esp + 0x22]
push eax
movzx eax, byte [esp + 0x25]
push eax
mov eax, dword [esp + 0x30]
movzx eax, al
push eax
lea eax, [esp + 0xa4]
push eax
lea eax, [esp + 0x78]
push eax
lea eax, [esp + 0x88]
push eax
call dword [edx + 0x5c]
mov edi, dword [esp + 0x24]
inc ebx
add edi, 0x44
mov dword [esp + 0x24], edi
cmp ebx, dword [esi + 4]
jl 0x100a3f38
mov ecx, dword [esp + 0xbc]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.100a7229
mov esp, ebp
pop ebp
ret 4