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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x1021e15b
push eax
mov dword fs:[0], esp
sub esp, 0x60
cmp dword [ebp + 0x14], 1
push ebx
push esi
push edi
mov edi, ecx
je 0x100dcc5b
cmp dword [ebp + 0x10], 1
je 0x100dcc5b
xor al, al
jmp 0x100dcfaf
and dword [edi + 0x14], 0
movdqa xmm0, xmmword [0x102711a0]
mov eax, dword [edi + 0x10]
movdqu xmmword [esp + 0x58], xmm0
test eax, eax
je 0x100dcc79
mov eax, dword [eax - 4]
jmp 0x100dcc7b
xor eax, eax
mov ebx, dword [ebp + 8]
dec eax
mov dword [esp + 0x1c], eax
js 0x100dcf19
mov ecx, eax
shl ecx, 5
mov dword [esp + 0x20], ecx
mov esi, dword [edi + 0x10]
lea edx, [esp + 0x38]
add esi, ecx
push edx
mov ecx, dword [esi + 8]
mov eax, dword [ecx]
call dword [eax + 0x234]
mov eax, dword [esp + 0x38]
sub esp, 0x10
mov ecx, esp
mov dword [ecx], eax
mov eax, dword [esp + 0x4c]
mov dword [ecx + 4], eax
mov eax, dword [esp + 0x50]
mov dword [ecx + 8], eax
mov eax, dword [esp + 0x54]
mov dword [ecx + 0xc], eax
lea ecx, [esp + 0x68]
call fcn.1001d3fb
movsd xmm0, qword [esi + 0x10]
ucomisd xmm0, qword [esi + 0x18]
lahf
test ah, 0x44
jnp 0x100dcefd
inc dword [edi + 0x14]
movsd xmm1, qword [esi + 0x10]
movsd xmm2, qword [esi + 0x18]
comisd xmm1, xmm2
jbe 0x100dcdc6
subsd xmm1, qword [edi + 0x38]
comisd xmm2, xmm1
movsd qword [esi + 0x10], xmm1
jbe 0x100dcd10
movsd qword [esi + 0x10], xmm2
movsd xmm0, qword [esi + 0x10]
ucomisd xmm0, qword [0x10270d68]
lahf
test ah, 0x44
jp 0x100dcd43
mov ecx, str.magnified
call fcn.100431ee
mov ecx, dword [esi + 8]
mov dword [esp + 0x24], eax
lea eax, [esp + 0x24]
push eax
call fcn.1007fb4f
jmp 0x100dce6f
mulsd xmm0, qword [0x10270e28]
push ecx
push ecx
addsd xmm0, qword [0x10270c58]
movsd qword [esp + 0x18], xmm0
fld qword [esp + 0x18]
fstp qword [esp]
call fcn.10211600
fstp qword [esp + 0x18]
movsd xmm0, qword [esp + 0x18]
mov ecx, str.magnified
mulsd xmm0, qword [0x10270c98]
movsd qword [esp + 0x18], xmm0
call fcn.100431ee
movsd xmm0, qword [esp + 0x18]
movsd qword [esp], xmm0
mov dword [esp + 0x30], eax
lea eax, [esp + 0x34]
push str._.2f
push eax
call fcn.10131f03
add esp, 0x10
and dword [esp + 0x74], 0
mov ecx, dword [esi + 8]
push eax
lea eax, [esp + 0x2c]
push eax
call fcn.1007fad6
lea ecx, [esp + 0x2c]
jmp 0x100dce65
movsd xmm0, qword [edi + 0x38]
addsd xmm0, xmm1
comisd xmm0, xmm2
movsd qword [esi + 0x10], xmm0
jbe 0x100dcddf
movsd qword [esi + 0x10], xmm2
movsd xmm0, qword [esi + 0x10]
mulsd xmm0, qword [0x10270e28]
push ecx
push ecx
addsd xmm0, qword [0x10270c58]
movsd qword [esp + 0x18], xmm0
fld qword [esp + 0x18]
fstp qword [esp]
call fcn.10211600
fstp qword [esp + 0x18]
movsd xmm0, qword [esp + 0x18]
mov ecx, str.magnified
mulsd xmm0, qword [0x10270c98]
movsd qword [esp + 0x18], xmm0
call fcn.100431ee
movsd xmm0, qword [esp + 0x18]
movsd qword [esp], xmm0
mov dword [esp + 0x38], eax
lea eax, [esp + 0x3c]
push str._.2f
push eax
call fcn.10131f03
add esp, 0x10
push eax
lea eax, [esp + 0x34]
mov dword [esp + 0x78], 1
mov ecx, dword [esi + 8]
push eax
call fcn.1007fad6
lea ecx, [esp + 0x34]
or dword [esp + 0x74], 0xffffffff
call fcn.100026e7
mov ecx, dword [esi + 8]
push 0
push 0
push ebx
mov eax, dword [ecx]
call dword [eax + 0x300]
mov ecx, dword [esi + 8]
push 0
push 0
push ebx
mov edx, dword [ecx]
mov dword [esp + 0x1c], eax
call dword [edx + 0x304]
movd xmm0, dword [esi]
mov edx, eax
mov eax, dword [esp + 0x10]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [esi + 0x10]
cvttsd2si ecx, xmm0
test eax, eax
je 0x100dceb3
cmp ecx, eax
cmovg ecx, eax
movd xmm0, dword [esi + 4]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [esi + 0x10]
cvttsd2si eax, xmm0
mov dword [esp + 0x10], eax
test edx, edx
je 0x100dced6
cmp eax, edx
cmovg eax, edx
mov dword [esp + 0x10], eax
mov eax, dword [esi + 8]
push ecx
mov ecx, dword [eax + 0x38]
add ecx, 0x428
call fcn.1002b327
mov eax, dword [esi + 8]
push dword [esp + 0x10]
mov ecx, dword [eax + 0x38]
add ecx, 0x438
call fcn.1002b327
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
dec eax
sub ecx, 0x20
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], ecx
test eax, eax
jns 0x100dcc92
mov eax, dword [ebp + 0xc]
push 1
mov ecx, dword [eax + 0x20]
test ecx, ecx
je 0x100dcf28
push ecx
jmp 0x100dcf29
push eax
mov ecx, ebx
call fcn.1001770c
mov eax, dword [edi + 0x10]
test eax, eax
je 0x100dcf3c
mov esi, dword [eax - 4]
jmp 0x100dcf3e
xor esi, esi
dec esi
js 0x100dcf8c
mov ebx, esi
shl ebx, 5
mov eax, dword [edi + 0x10]
lea edx, [esp + 0x48]
push edx
mov ecx, dword [ebx + eax + 8]
mov eax, dword [ecx]
call dword [eax + 0x234]
mov eax, dword [esp + 0x48]
sub esp, 0x10
mov ecx, esp
mov dword [ecx], eax
mov eax, dword [esp + 0x5c]
mov dword [ecx + 4], eax
mov eax, dword [esp + 0x60]
mov dword [ecx + 8], eax
mov eax, dword [esp + 0x64]
mov dword [ecx + 0xc], eax
lea ecx, [esp + 0x68]
call fcn.1001d3fb
dec esi
lea ebx, [ebx - 0x20]
jns 0x100dcf46
mov ebx, dword [ebp + 8]
mov eax, dword [ebx]
lea ecx, [esp + 0x58]
push ecx
mov ecx, ebx
call dword [eax + 0x174]
mov eax, dword [ebx]
mov ecx, ebx
push 0
call dword [eax + 0x244]
xor eax, eax
cmp dword [edi + 0x14], eax
setne al
mov ecx, dword [esp + 0x6c]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret 0x10