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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0xc4
mov eax, dword [0x1070dd84]
xor eax, esp
mov dword [esp + 0xc0], eax
mov eax, dword [ebp + 0x14]
xorps xmm0, xmm0
mov edx, dword [ebp + 0x10]
push ebx
mov ebx, dword [ebp + 0xc]
mov dword [esp + 0x28], eax
mov eax, dword [ebp + 0x20]
push esi
mov dword [esp + 0x50], eax
mov eax, dword [ebp + 0x24]
push edi
mov edi, dword [ebp + 0x18]
mov dword [esp + 0x48], eax
mov eax, dword [ebp + 0x28]
mov dword [esp + 0x4c], edx
mov dword [esp + 0x24], ebx
mov dword [esp + 0x10], edi
mov dword [esp + 0x58], eax
mov dword [esp + 0x44], 0
mov dword [esp + 0x50], ebx
movups xmmword [esp + 0x70], xmm0
test edi, edi
jle 0x100dc242
mov ecx, edi
xor eax, eax
mov edi, edx
rep stosd dword es:[edi], eax
mov edi, dword [esp + 0x10]
mov eax, dword [ebp + 0x1c]
lea eax, [eax + eax*4]
cmp ebx, eax
jl 0x100dc754
test ebx, ebx
je 0x100dc754
mov esi, ebx
shl esi, 4
push esi
call sym.aom.dll_aom_malloc
push esi
mov dword [esp + 0x1c], eax
call sym.aom.dll_aom_malloc
push esi
mov dword [esp + 0x24], eax
call sym.aom.dll_aom_malloc
push esi
mov dword [esp + 0x2c], eax
call sym.aom.dll_aom_malloc
push esi
mov dword [esp + 0x34], eax
call sym.aom.dll_aom_malloc
push 0x18
push edi
mov dword [esp + 0x50], eax
call fcn.10169be0
mov esi, eax
lea eax, [ebx*4]
push eax
mov dword [esp + 0x4c], esi
mov dword [esp + 0x5c], eax
call sym.aom.dll_aom_malloc
mov ecx, eax
add esp, 0x20
mov eax, dword [esp + 0x14]
mov dword [esp + 0x28], ecx
test eax, eax
je 0x100dc746
cmp dword [esp + 0x18], 0
je 0x100dc746
cmp dword [esp + 0x1c], 0
je 0x100dc746
cmp dword [esp + 0x20], 0
je 0x100dc746
cmp dword [esp + 0x34], 0
je 0x100dc746
test esi, esi
je 0x100dc746
test ecx, ecx
je 0x100dc746
xor edi, edi
cmp dword [esp + 0x10], edi
jle 0x100dc359
shl ebx, 2
add esi, 0x10
nop dword [eax]
push ebx
call sym.aom.dll_aom_malloc
add esp, 4
mov dword [esi], eax
test eax, eax
je 0x100dc4dd
movsd xmm0, qword [0x103c6048]
push ebx
push 0
push eax
mov dword [esi - 0x10], 0
movsd qword [esi - 8], xmm0
call fcn.1039a3e0
inc edi
add esp, 0xc
add esi, 0x18
cmp edi, dword [esp + 0x10]
jl 0x100dc310
mov ebx, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
mov esi, dword [esp + 0x2c]
lea eax, [ebx*4]
push eax
push 0
push ecx
call fcn.1039a3e0
mov ecx, dword [esp + 0x28]
add esp, 0xc
mov edx, dword [esp + 0x20]
mov edi, esi
mov dword [esp + 0x40], edi
test ebx, ebx
jle 0x100dc3c0
mov eax, dword [ebp + 8]
mov esi, ebx
movsd xmm0, qword [eax]
lea ecx, [ecx + 0x10]
movsd qword [ecx - 0x10], xmm0
lea eax, [eax + 0x20]
movsd xmm0, qword [eax - 0x18]
lea edx, [edx + 0x10]
movsd qword [ecx - 8], xmm0
movsd xmm0, qword [eax - 0x10]
movsd qword [edx - 0x10], xmm0
movsd xmm0, qword [eax - 8]
movsd qword [edx - 8], xmm0
sub esi, 1
jne 0x100dc383
nop dword [eax + eax]
push dword [esp + 0x3c]
xor ebx, ebx
xorps xmm0, xmm0
push ebx
push dword [esp + 0x30]
movsd qword [esp + 0x6c], xmm0
movsd qword [esp + 0x74], xmm0
mov dword [esp + 0x44], ebx
call fcn.1039a3e0
add esp, 0xc
xor esi, esi
lea eax, [esp + 0x50]
inc esi
push eax
lea eax, [esp + 0x74]
push eax
push dword [ebp + 0x1c]
push dword [esp + 0x30]
call fcn.100db590
add esp, 0x10
test eax, eax
je 0x100dc4dd
push dword [ebp + 0x1c]
lea eax, [esp + 0x74]
push eax
push dword [esp + 0x24]
push dword [esp + 0x20]
call fcn.100dadd0
push dword [ebp + 0x1c]
lea eax, [esp + 0x84]
push eax
push dword [esp + 0x38]
push dword [esp + 0x34]
call fcn.100dadd0
push dword [esp + 0x34]
call dword [esp + 0x78]
add esp, 0x24
cmp esi, 0xa
jg 0x100dc4dd
test eax, eax
jne 0x100dc3e8
lea eax, [esp + 0x80]
push eax
push dword [esp + 0x1c]
push dword [esp + 0x1c]
push dword [ebp + 0x1c]
call dword [esp + 0x58]
add esp, 0x10
test eax, eax
jne 0x100dc619
push 2
push 2
push dword [esp + 0x2c]
lea eax, [esp + 0x8c]
push dword [esp + 0x40]
push dword [esp + 0x2c]
push eax
call dword [esp + 0x70]
add esp, 0x18
xor esi, esi
cmp dword [esp + 0x24], ebx
jle 0x100dc54a
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x34]
mov edi, eax
sub eax, ecx
mov dword [esp + 0x5c], eax
lea ebx, [ecx + 8]
nop
movsd xmm1, qword [edi]
movsd xmm0, qword [eax + ebx]
subsd xmm1, qword [ebx - 8]
subsd xmm0, qword [ebx]
mulsd xmm1, xmm1
mulsd xmm0, xmm0
addsd xmm0, xmm1
xorps xmm1, xmm1
ucomisd xmm1, xmm0
ja 0x100dc4eb
sqrtsd xmm0, xmm0
jmp 0x100dc4f0
mov ebx, dword [esp + 0x10]
mov edi, 1
jmp 0x100dc6c0
call fcn.103a58d0
movsd xmm1, qword [0x103bfbf8]
comisd xmm1, xmm0
jbe 0x100dc52d
mov eax, dword [esp + 0x38]
movaps xmm1, xmm0
mov ecx, dword [esp + 0x28]
addsd xmm1, qword [esp + 0x60]
mulsd xmm0, xmm0
mov dword [ecx + eax*4], esi
inc eax
mov dword [esp + 0x38], eax
movsd qword [esp + 0x60], xmm1
addsd xmm0, qword [esp + 0x68]
movsd qword [esp + 0x68], xmm0
mov eax, dword [esp + 0x5c]
inc esi
add edi, 0x10
add ebx, 0x10
cmp esi, dword [esp + 0x24]
jl 0x100dc4b0
mov edi, dword [esp + 0x40]
mov ebx, dword [esp + 0x38]
mov eax, dword [edi]
cmp ebx, eax
jl 0x100dc619
cmp ebx, 1
jle 0x100dc619
movsd xmm2, qword [esp + 0x60]
movd xmm1, ebx
movsd xmm3, qword [esp + 0x68]
cvtdq2pd xmm1, xmm1
movaps xmm0, xmm1
divsd xmm2, xmm1
subsd xmm0, qword [0x103bfbf0]
mulsd xmm2, xmm2
divsd xmm3, xmm0
mulsd xmm2, xmm1
divsd xmm2, xmm0
subsd xmm3, xmm2
cmp ebx, eax
jg 0x100dc5a3
movsd xmm0, qword [edi + 8]
comisd xmm0, xmm3
jbe 0x100dc619
push dword [esp + 0x3c]
mov dword [edi], ebx
push dword [esp + 0x2c]
movsd qword [edi + 8], xmm3
push dword [edi + 0x10]
call fcn.10399e60
mov ebx, dword [esp + 0x1c]
add esp, 0xc
test ebx, ebx
jle 0x100dc61d
mov edx, dword [esp + 0x2c]
mov esi, ebx
nop dword [eax + eax]
mov eax, dword [edx]
cmp dword [edi], eax
jle 0x100dc5db
or ecx, 0xffffffff
jmp 0x100dc602
jge 0x100dc5e4
mov ecx, 1
jmp 0x100dc602
movsd xmm1, qword [edi + 8]
movsd xmm0, qword [edx + 8]
comisd xmm0, xmm1
jbe 0x100dc5f9
or ecx, 0xffffffff
jmp 0x100dc602
xor ecx, ecx
comisd xmm1, xmm0
seta cl
test ecx, ecx
mov eax, edx
cmovns eax, edi
add edx, 0x18
mov edi, eax
sub esi, 1
jne 0x100dc5d0
mov dword [esp + 0x40], edi
jmp 0x100dc61d
mov ebx, dword [esp + 0x10]
mov eax, dword [esp + 0x44]
inc eax
mov dword [esp + 0x44], eax
cmp eax, 0x14
jl 0x100dc3c0
mov esi, dword [esp + 0x2c]
push 0x100dad90
push 0x18
push ebx
push esi
call fcn.103a43f0
add esp, 0x10
xor edi, edi
test ebx, ebx
jle 0x100dc6be
mov ebx, dword [ebp + 0x1c]
mov ecx, dword [esp + 0x4c]
mov eax, dword [esi]
cmp eax, ebx
jl 0x100dc6a8
push eax
push dword [esi + 0x10]
push dword [esp + 0x24]
push dword [esp + 0x20]
call fcn.100dadd0
push dword [esi]
push dword [esi + 0x10]
push dword [esp + 0x38]
push dword [esp + 0x34]
call fcn.100dadd0
push dword [esp + 0x50]
push dword [esp + 0x3c]
push dword [esp + 0x3c]
push dword [esi]
call dword [esp + 0x78]
push dword [esp + 0x6c]
mov eax, dword [esp + 0x64]
push dword [esi + 0x10]
push dword [eax + 0x40]
call fcn.10399e60
mov eax, dword [esi]
add esp, 0x3c
mov ecx, dword [esp + 0x4c]
add dword [esp + 0x30], 0x48
add esi, 0x18
mov dword [ecx + edi*4], eax
inc edi
cmp edi, dword [esp + 0x10]
jl 0x100dc651
mov ebx, dword [esp + 0x10]
xor edi, edi
mov eax, dword [esp + 0x14]
push eax
call sym.aom.dll_aom_free
push dword [esp + 0x1c]
call sym.aom.dll_aom_free
push dword [esp + 0x24]
call sym.aom.dll_aom_free
push dword [esp + 0x2c]
call sym.aom.dll_aom_free
push dword [esp + 0x44]
call sym.aom.dll_aom_free
push dword [esp + 0x3c]
call sym.aom.dll_aom_free
mov eax, dword [esp + 0x44]
add esp, 0x18
test eax, eax
je 0x100dc72f
test ebx, ebx
jle 0x100dc726
lea esi, [eax + 0x10]
nop dword [eax]
push dword [esi]
call sym.aom.dll_aom_free
add esp, 4
lea esi, [esi + 0x18]
sub ebx, 1
jne 0x100dc710
mov eax, dword [esp + 0x2c]
push eax
call sym.aom.dll_aom_free
add esp, 4
mov eax, edi
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0xc0]
xor ecx, esp
call fcn.10398bef
mov esp, ebp
pop ebp
ret
mov ebx, dword [esp + 0x10]
mov edi, 1
jmp 0x100dc6c4
mov ecx, dword [esp + 0xcc]
mov eax, 1
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.10398bef
mov esp, ebp
pop ebp
ret