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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0xf8
mov eax, dword [0x10a78b80]
xor eax, esp
mov dword [esp + 0xf4], eax
mov eax, dword [ebp + 0xc]
fld qword [ebp + 0x2c]
push esi
mov esi, dword [ebp + 0x20]
push edi
mov edi, dword [ebp + 0x18]
sub esp, 8
mov dword [esp + 0x48], eax
mov eax, dword [ebp + 0x1c]
mov dword [esp + 0x10], eax
mov eax, dword [ebp + 0x3c]
fstp qword [esp]
mov dword [esp + 0x14], esi
mov dword [esp + 0x4c], eax
call fcn.10521210
fstp qword [esp + 0x28]
fld qword [ebp + 0x24]
fstp qword [esp]
call fcn.10521210
movsd xmm0, qword [ebp + 0x24]
lea eax, [esp + 0x38]
add esp, 8
fstp qword [esp + 0x10]
subsd xmm0, qword [esp + 0x10]
push eax
sub esp, 8
movsd qword [esp], xmm0
call fcn.1018e1e0
movsd xmm0, qword [ebp + 0x2c]
lea eax, [esp + 0x44]
subsd xmm0, qword [esp + 0x2c]
add esp, 0xc
push eax
sub esp, 8
movsd qword [esp], xmm0
call fcn.1018e1e0
cvttsd2si edx, qword [esp + 0x1c]
add esp, 0xc
add edx, dword [esp + 8]
cmp edx, 0xfffffff7
jge 0x1018db75
mov edx, 0xfffffff7
jmp 0x1018db7c
cmp edx, dword [ebp + 0x10]
cmovg edx, dword [ebp + 0x10]
cvttsd2si eax, qword [esp + 0x20]
add esi, eax
cmp esi, 0xfffffff7
jge 0x1018db90
mov esi, 0xfffffff7
jmp 0x1018db97
cmp esi, dword [ebp + 0x14]
cmovg esi, dword [ebp + 0x14]
movzx eax, word [esp + 0x30]
lea ecx, [esp + 0x48]
movaps xmm6, xmmword [0x10834ce0]
dec edx
movd xmm4, eax
movzx eax, word [esp + 0x34]
pinsrw xmm4, word [esp + 0x32], 1
pinsrw xmm4, word [esp + 0x30], 2
pinsrw xmm4, word [esp + 0x32], 3
movd xmm5, eax
lea eax, [esi - 1]
pinsrw xmm5, word [esp + 0x36], 1
pinsrw xmm5, word [esp + 0x34], 2
pinsrw xmm5, word [esp + 0x36], 3
imul eax, edi
punpcklqdq xmm4, xmm4
punpcklqdq xmm5, xmm5
add eax, dword [esp + 0x40]
add eax, edx
mov edx, 0xb
movups xmm0, xmmword [eax]
add eax, edi
lea ecx, [ecx + 0x10]
pmovzxbw xmm1, xmm0
psrldq xmm0, 4
movaps xmm3, xmm1
psrldq xmm3, 4
pmovzxbw xmm2, xmm0
movaps xmm0, xmm1
psrldq xmm0, 6
punpcklwd xmm3, xmm0
movaps xmm0, xmm1
psrldq xmm0, 2
punpcklwd xmm1, xmm0
movaps xmm0, xmm2
pmaddwd xmm1, xmm4
pmaddwd xmm3, xmm5
psrldq xmm0, 6
paddd xmm3, xmm1
movaps xmm1, xmm2
psrldq xmm1, 4
paddd xmm3, xmm6
punpcklwd xmm1, xmm0
movaps xmm0, xmm2
psrldq xmm0, 2
pmaddwd xmm1, xmm5
punpcklwd xmm2, xmm0
pmaddwd xmm2, xmm4
psrad xmm3, 8
paddd xmm1, xmm2
paddd xmm1, xmm6
psrad xmm1, 8
packssdw xmm3, xmm1
movups xmmword [ecx - 0x10], xmm3
sub edx, 1
jne 0x1018dbf8
movzx eax, word [esp + 0x38]
movups xmm6, xmmword [esp + 0x68]
mov esi, dword [ebp + 8]
movups xmm1, xmmword [esp + 0x48]
mov edx, dword [ebp + 0x34]
movups xmm5, xmmword [esp + 0x58]
mov ecx, dword [ebp + 0x38]
movups xmm3, xmmword [esp + 0x78]
movd xmm7, eax
movaps xmm0, xmm1
movzx eax, word [esp + 0x3c]
movaps xmm2, xmm6
pinsrw xmm7, word [esp + 0x3a], 1
pinsrw xmm7, word [esp + 0x38], 2
pinsrw xmm7, word [esp + 0x3a], 3
punpcklwd xmm0, xmm5
movd xmm4, eax
pinsrw xmm4, word [esp + 0x3e], 1
pinsrw xmm4, word [esp + 0x3c], 2
pinsrw xmm4, word [esp + 0x3e], 3
mov eax, dword [esp + 0xc]
punpcklwd xmm2, xmm3
punpcklqdq xmm4, xmm4
pmaddwd xmm2, xmm4
punpcklqdq xmm7, xmm7
pmaddwd xmm0, xmm7
punpckhwd xmm1, xmm5
pmaddwd xmm1, xmm7
imul eax, edi
movaps xmmword [esp + 0x10], xmm7
paddd xmm2, xmm0
movaps xmmword [esp + 0x20], xmm4
paddd xmm2, xmmword [0x10834cf0]
movaps xmm0, xmm6
punpckhwd xmm0, xmm3
add eax, dword [esp + 8]
pmaddwd xmm0, xmm4
movups xmm7, xmmword [esp + 0x88]
psrad xmm2, 0x11
movups xmm4, xmmword [edx]
paddd xmm0, xmm1
paddd xmm0, xmmword [0x10834cf0]
movups xmm1, xmmword [esp + 0x78]
psrad xmm0, 0x11
movups xmm3, xmmword [ecx]
packssdw xmm2, xmm0
pmovzxbw xmm0, qword [eax + esi]
mov eax, dword [esp + 0xc]
psllw xmm0, 3
inc eax
punpcklwd xmm1, xmm7
pmaddwd xmm1, xmmword [esp + 0x20]
psubw xmm2, xmm0
movaps xmm0, xmm5
imul eax, edi
punpcklwd xmm0, xmm6
pmaddwd xmm0, xmmword [esp + 0x10]
punpckhwd xmm5, xmm6
pmaddwd xmm5, xmmword [esp + 0x10]
add eax, dword [esp + 8]
pmaddwd xmm4, xmm2
paddd xmm1, xmm0
pmaddwd xmm3, xmm2
movups xmm0, xmmword [esp + 0x78]
paddd xmm1, xmmword [0x10834cf0]
movups xmm2, xmmword [edx + 0x10]
punpckhwd xmm0, xmm7
pmaddwd xmm0, xmmword [esp + 0x20]
psrad xmm1, 0x11
paddd xmm0, xmm5
paddd xmm0, xmmword [0x10834cf0]
psrad xmm0, 0x11
packssdw xmm1, xmm0
pmovzxbw xmm0, qword [eax + esi]
psllw xmm0, 3
psubw xmm1, xmm0
pmaddwd xmm2, xmm1
paddd xmm2, xmm4
movups xmm4, xmmword [ecx + 0x10]
pmaddwd xmm4, xmm1
paddd xmm4, xmm3
movups xmm5, xmmword [esp + 0x98]
mov eax, dword [esp + 0xc]
movups xmm3, xmmword [esp + 0x78]
add eax, 2
movaps xmm0, xmm6
movaps xmm1, xmm7
imul eax, edi
punpcklwd xmm0, xmm3
pmaddwd xmm0, xmmword [esp + 0x10]
punpcklwd xmm1, xmm5
pmaddwd xmm1, xmmword [esp + 0x20]
add eax, dword [esp + 8]
punpckhwd xmm6, xmm3
pmaddwd xmm6, xmmword [esp + 0x10]
movups xmm3, xmmword [edx + 0x20]
paddd xmm1, xmm0
movaps xmm0, xmm7
paddd xmm1, xmmword [0x10834cf0]
punpckhwd xmm0, xmm5
pmaddwd xmm0, xmmword [esp + 0x20]
psrad xmm1, 0x11
paddd xmm0, xmm6
paddd xmm0, xmmword [0x10834cf0]
psrad xmm0, 0x11
movups xmm6, xmmword [esp + 0xa8]
packssdw xmm1, xmm0
pmovzxbw xmm0, qword [eax + esi]
psllw xmm0, 3
mov eax, dword [esp + 0xc]
psubw xmm1, xmm0
add eax, 3
pmaddwd xmm3, xmm1
imul eax, edi
paddd xmm3, xmm2
movups xmm2, xmmword [ecx + 0x20]
add eax, dword [esp + 8]
pmaddwd xmm2, xmm1
movaps xmm1, xmm5
punpcklwd xmm1, xmm6
pmaddwd xmm1, xmmword [esp + 0x20]
paddd xmm2, xmm4
movups xmm4, xmmword [esp + 0x78]
movaps xmm0, xmm4
punpckhwd xmm4, xmm7
pmaddwd xmm4, xmmword [esp + 0x10]
punpcklwd xmm0, xmm7
pmaddwd xmm0, xmmword [esp + 0x10]
paddd xmm1, xmm0
movaps xmm0, xmm5
paddd xmm1, xmmword [0x10834cf0]
punpckhwd xmm0, xmm6
pmaddwd xmm0, xmmword [esp + 0x20]
psrad xmm1, 0x11
paddd xmm0, xmm4
paddd xmm0, xmmword [0x10834cf0]
movups xmm4, xmmword [edx + 0x30]
psrad xmm0, 0x11
packssdw xmm1, xmm0
pmovzxbw xmm0, qword [eax + esi]
psllw xmm0, 3
psubw xmm1, xmm0
movaps xmm0, xmm7
pmaddwd xmm4, xmm1
punpcklwd xmm0, xmm5
pmaddwd xmm0, xmmword [esp + 0x10]
punpckhwd xmm7, xmm5
pmaddwd xmm7, xmmword [esp + 0x10]
paddd xmm4, xmm3
movups xmm3, xmmword [ecx + 0x30]
pmaddwd xmm3, xmm1
movaps xmm1, xmm6
paddd xmm3, xmm2
movups xmm2, xmmword [esp + 0xb8]
punpcklwd xmm1, xmm2
pmaddwd xmm1, xmmword [esp + 0x20]
paddd xmm1, xmm0
movaps xmm0, xmm6
paddd xmm1, xmmword [0x10834cf0]
punpckhwd xmm0, xmm2
pmaddwd xmm0, xmmword [esp + 0x20]
psrad xmm1, 0x11
mov eax, dword [esp + 0xc]
paddd xmm0, xmm7
paddd xmm0, xmmword [0x10834cf0]
add eax, 4
movups xmm5, xmmword [edx + 0x40]
psrad xmm0, 0x11
imul eax, edi
packssdw xmm1, xmm0
movups xmm7, xmmword [esp + 0xc8]
add eax, dword [esp + 8]
pmovzxbw xmm0, qword [eax + esi]
psllw xmm0, 3
mov eax, dword [esp + 0xc]
psubw xmm1, xmm0
add eax, 5
pmaddwd xmm5, xmm1
imul eax, edi
paddd xmm5, xmm4
movups xmm4, xmmword [ecx + 0x40]
add eax, dword [esp + 8]
pmaddwd xmm4, xmm1
movaps xmm1, xmm2
punpcklwd xmm1, xmm7
pmaddwd xmm1, xmmword [esp + 0x20]
paddd xmm4, xmm3
movups xmm3, xmmword [esp + 0x98]
movaps xmm0, xmm3
punpckhwd xmm3, xmm6
pmaddwd xmm3, xmmword [esp + 0x10]
punpcklwd xmm0, xmm6
pmaddwd xmm0, xmmword [esp + 0x10]
movups xmm6, xmmword [esp + 0xd8]
paddd xmm1, xmm0
movaps xmm0, xmm2
paddd xmm1, xmmword [0x10834cf0]
punpckhwd xmm0, xmm7
pmaddwd xmm0, xmmword [esp + 0x20]
movups xmm2, xmmword [edx + 0x50]
psrad xmm1, 0x11
paddd xmm0, xmm3
paddd xmm0, xmmword [0x10834cf0]
psrad xmm0, 0x11
movups xmm3, xmmword [esp + 0xb8]
packssdw xmm1, xmm0
pmovzxbw xmm0, qword [eax + esi]
psllw xmm0, 3
mov eax, dword [esp + 0xc]
psubw xmm1, xmm0
add eax, 6
pmaddwd xmm2, xmm1
imul eax, edi
paddd xmm2, xmm5
movups xmm5, xmmword [ecx + 0x50]
add eax, dword [esp + 8]
pmaddwd xmm5, xmm1
movaps xmm1, xmm7
punpcklwd xmm1, xmm6
pmaddwd xmm1, xmmword [esp + 0x20]
paddd xmm5, xmm4
movups xmm4, xmmword [esp + 0xa8]
movaps xmm0, xmm4
punpckhwd xmm4, xmm3
pmaddwd xmm4, xmmword [esp + 0x10]
punpcklwd xmm0, xmm3
pmaddwd xmm0, xmmword [esp + 0x10]
movups xmm3, xmmword [edx + 0x60]
paddd xmm1, xmm0
movaps xmm0, xmm7
paddd xmm1, xmmword [0x10834cf0]
punpckhwd xmm0, xmm6
pmaddwd xmm0, xmmword [esp + 0x20]
psrad xmm1, 0x11
paddd xmm0, xmm4
paddd xmm0, xmmword [0x10834cf0]
psrad xmm0, 0x11
packssdw xmm1, xmm0
pmovzxbw xmm0, qword [eax + esi]
psllw xmm0, 3
psubw xmm1, xmm0
pmaddwd xmm3, xmm1
paddd xmm3, xmm2
movups xmm4, xmmword [ecx + 0x60]
mov eax, dword [esp + 0xc]
movaps xmm2, xmm6
add eax, 7
pmaddwd xmm4, xmm1
movups xmm1, xmmword [esp + 0xe8]
imul eax, edi
punpcklwd xmm2, xmm1
pmaddwd xmm2, xmmword [esp + 0x20]
paddd xmm4, xmm5
movups xmm5, xmmword [esp + 0xb8]
pop edi
add eax, dword [esp + 4]
punpckhwd xmm6, xmm1
movaps xmm0, xmm5
pmaddwd xmm6, xmmword [esp + 0x1c]
movups xmm1, xmmword [edx + 0x70]
mov edx, dword [esp + 0x40]
punpcklwd xmm0, xmm7
pmaddwd xmm0, xmmword [esp + 0xc]
punpckhwd xmm5, xmm7
pmaddwd xmm5, xmmword [esp + 0xc]
paddd xmm2, xmm0
pmovzxbw xmm0, qword [eax + esi]
paddd xmm2, xmmword [0x10834cf0]
paddd xmm6, xmm5
paddd xmm6, xmmword [0x10834cf0]
psrad xmm2, 0x11
psllw xmm0, 3
psrad xmm6, 0x11
pop esi
packssdw xmm2, xmm6
psubw xmm2, xmm0
movups xmm0, xmmword [ecx + 0x70]
pmaddwd xmm1, xmm2
pmaddwd xmm0, xmm2
paddd xmm1, xmm3
paddd xmm0, xmm4
phaddd xmm1, xmm0
movd eax, xmm1
pextrd ecx, xmm1, 1
add ecx, eax
mov dword [edx], ecx
pextrd ecx, xmm1, 3
pextrd eax, xmm1, 2
add ecx, eax
mov dword [edx + 4], ecx
mov ecx, dword [esp + 0xf4]
xor ecx, esp
call fcn.105116c0
mov esp, ebp
pop ebp
ret