Function at 0x1013fa40
Capabilities:
Get common file path
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ecx
mov eax, dword [ebp + 0xc]
push edi
mov edi, dword [ebp + 8]
mov dword [edi + 8], eax
test eax, eax
jne 0x1013fa5b
xor al, al
pop edi
mov esp, ebp
pop ebp
ret 0x30
mov eax, dword [edi + 0x37c]
test eax, eax
je 0x1013fa6e
push eax
call fcn.1001a5c0
add esp, 4
mov eax, dword [edi + 0x440]
mov dword [edi + 0x37c], 0
test eax, eax
je 0x1013fa8b
push eax
call fcn.102d6d32
add esp, 4
push ebx
lea eax, [edi + 0x20]
mov dword [edi + 0x440], 0
push esi
push eax
mov dword [ebp - 4], eax
call fcn.10004060
mov esi, dword [ebp + 0x30]
add esp, 4
mov edx, dword [ebp + 0x10]
mov ebx, dword [ebp + 0x14]
mov dword [edi + 0xb8], 0
mov dword [edi + 0x3c], edx
mov dword [edi + 0x40], ebx
test esi, esi
je 0x1013faf4
mov eax, dword [esi + 8]
test eax, eax
jle 0x1013faf4
mov ecx, dword [esi + 0xc]
test ecx, ecx
jle 0x1013faf4
imul ecx, edx
lea edx, [ebp + 0x14]
imul eax, ebx
mov dword [ebp + 0x14], ecx
lea ecx, [ebp + 0x10]
mov dword [ebp + 0x10], eax
call fcn.1013f9f0
mov eax, dword [ebp + 0x10]
mov dword [edi + 0x58], eax
mov eax, dword [ebp + 0x14]
mov dword [edi + 0x54], eax
mov ebx, dword [ebp + 0x18]
mov eax, dword [ebp + 0x1c]
mov dword [edi + 0x33c], ebx
mov dword [edi + 0x330], ebx
mov dword [edi + 0x338], eax
mov dword [edi + 0x334], eax
test esi, esi
je 0x1013fbcc
mov eax, dword [esi + 4]
test eax, eax
jle 0x1013fb24
mov dword [edi + 0x48], eax
mov eax, dword [esi]
test eax, eax
jle case.0x1013fb39.67
add eax, 0xffffffbe
cmp eax, 0x4e
ja case.0x1013fb39.67
movzx eax, byte [eax + 0x1013ff60]
jmp dword [eax*4 + 0x1013ff44]
mov eax, str.baseline
jmp 0x1013fb68
mov eax, str.high
jmp 0x1013fb68
mov eax, str.high10
jmp 0x1013fb68
mov eax, str.high422
jmp 0x1013fb68
mov eax, str.high444
jmp 0x1013fb68
mov eax, str.main
push eax
lea eax, [edi + 0x20]
push eax
call fcn.10005120
add esp, 8
xor eax, eax
cmp dword [esi + 0x10], eax
setne al
mov dword [edi + 0xc0], eax
xor eax, eax
cmp dword [esi + 0x10], 2
sete al
mov dword [edi + 0x340], eax
mov eax, dword [esi + 0x14]
test eax, eax
jle 0x1013fb9f
mov dword [edi + 0x80], eax
cmp byte [esi + 0x18], 0
je 0x1013fbaf
mov dword [edi + 0xb8], 1
cmp byte [esi + 0x19], 0
je 0x1013fbbf
mov dword [edi + 0xa0], 0
mov eax, dword [esi + 0x1c]
test eax, eax
je 0x1013fbcc
mov dword [edi + 0x36c], eax
mov ecx, dword [ebp + 0x24]
mov dword [edi + 0x44], 1
test ecx, ecx
jle 0x1013fc14
mov eax, 0x64
mov dword [edi + 0x290], 1
sub eax, ecx
imul ecx, eax, 0x32
mov eax, 0x51eb851f
imul ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
inc eax
add eax, edx
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [edi + 0x2a8], xmm0
jmp 0x1013fcf8
mov eax, dword [ebp + 0x20]
mov dword [edi + 0x2a4], eax
mov dword [edi + 0x290], 2
cmp ecx, 0xffffffff
jne 0x1013fcdd
test esi, esi
je 0x1013fc87
mov ecx, dword [esi + 0x20]
test ecx, ecx
je 0x1013fc87
lea ebx, [edi + 0x448]
mov edx, ebx
movzx eax, word [ecx]
lea ecx, [ecx + 2]
mov word [edx], ax
lea edx, [edx + 2]
test ax, ax
jne 0x1013fc43
lea ecx, [ebx - 2]
jmp 0x1013fc60
mov ax, word [ecx + 2]
lea ecx, [ecx + 2]
test ax, ax
jne 0x1013fc60
mov eax, dword [str..tmp]
mov dword [ecx], eax
mov eax, dword [0x103d5610]
mov dword [ecx + 4], eax
mov ax, word [0x103d5614]
mov word [ecx + 8], ax
jmp 0x1013fca8
lea ebx, [edi + 0x448]
push ebx
push 0x104
call dword [sym.imp.KERNEL32.dll_GetTempPathW]
push ebx
push 0
push str.stats
push ebx
call dword [sym.imp.KERNEL32.dll_GetTempFileNameW]
push 0
push 0
push 0x208
lea esi, [edi + 0x654]
push esi
push 0xffffffffffffffff
push ebx
push 0
push 0xfde9
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
mov ebx, dword [ebp + 0x18]
mov dword [edi + 0x2dc], 1
mov dword [edi + 0x2e0], esi
jmp 0x1013fcf8
cmp ecx, 0xfffffffe
jne 0x1013fcf8
lea eax, [edi + 0x654]
mov dword [edi + 0x2e4], 1
mov dword [edi + 0x2e8], eax
cmp byte [ebp + 0x28], 0
mov dword [edi + 0x2ec], 0x3f000000
mov dword [edi + 0x298], 1
mov dword [edi + 0x29c], 0x33
mov dword [edi + 0x250], 1
mov dword [edi + 0x23c], 0
mov dword [edi + 0x2a0], 5
mov dword [edi + 0x78], 1
mov dword [edi + 0x240], 1
mov dword [edi + 0xac], 1
mov dword [edi + 0x238], 3
mov dword [edi + 0x228], 0x113
je 0x1013fdcc
mov eax, ebx
mov dword [edi + 0x240], 2
cdq
idiv dword [ebp + 0x1c]
mov dword [edi + 0x250], 3
mov dword [edi + 0x244], 0x10
mov dword [edi + 0x2d4], 1
mov dword [edi + 0x9c], 2
mov dword [edi + 0x2d8], eax
mov dword [edi + 0xb8], 1
mov dword [edi + 0x78], 3
mov dword [edi + 0x90], 0
mov dword [edi + 0x94], 0
mov bl, byte [ebp + 0x2c]
test bl, bl
je 0x1013fddd
mov dword [edi + 0x31c], 0
mov eax, dword [ebp + 0x34]
test eax, eax
je 0x1013fe52
push eax
call fcn.102d8a4f
add esp, 4
mov dword [ebp + 0x28], eax
test eax, eax
je 0x1013fe52
mov edi, dword [ebp - 4]
mov ebx, eax
lea esp, [esp]
push 0x103d5624
push ebx
call fcn.102d79c0
mov esi, eax
add esp, 8
test esi, esi
je 0x1013fe17
mov byte [esi], 0
push 0x103d5628
push ebx
call fcn.102d79c0
add esp, 8
test eax, eax
je 0x1013fe38
mov byte [eax], 0
inc eax
push eax
push ebx
push edi
call fcn.100053b0
add esp, 0xc
test esi, esi
je 0x1013fe41
lea ebx, [esi + 1]
jmp 0x1013fe00
push dword [ebp + 0x28]
call fcn.102d6d32
mov edi, dword [ebp + 8]
add esp, 4
mov bl, byte [ebp + 0x2c]
lea eax, [edi + 0x20]
push eax
call fcn.1000f5c0
add esp, 4
mov dword [edi + 0x37c], eax
test eax, eax
je 0x1013ff37
test bl, bl
je 0x1013ff2c
lea ecx, [ebp + 0x1c]
push ecx
lea ecx, [ebp + 0x28]
push ecx
push eax
call fcn.100162f0
add eax, 0x40
push eax
call fcn.102d6fbe
mov ecx, eax
mov dword [ebp + 0x18], 0
add esp, 0x10
mov dword [ebp + 0x2c], ecx
cmp dword [ebp + 0x1c], 0
mov ebx, ecx
mov dword [ebp + 8], ebx
jle 0x1013ff16
xor esi, esi
jmp 0x1013feb0
mov ebx, dword [ebp + 0x28]
cmp dword [esi + ebx + 4], 6
jne 0x1013fee6
mov eax, dword [esi + ebx + 0x14]
push eax
mov dword [edi + 0x444], eax
call fcn.102d6fbe
mov dword [edi + 0x440], eax
push dword [esi + ebx + 0x14]
push dword [esi + ebx + 0x18]
push eax
call fcn.102da6f0
mov ecx, dword [ebp + 0x2c]
add esp, 0x10
jmp 0x1013ff04
push dword [esi + ebx + 0x14]
push dword [esi + ebx + 0x18]
push ecx
call fcn.102da6f0
mov eax, dword [ebp + 0x28]
add esp, 0xc
mov ecx, dword [ebp + 0x2c]
add ecx, dword [esi + eax + 0x14]
mov dword [ebp + 0x2c], ecx
mov eax, dword [ebp + 0x18]
add esi, 0x20
inc eax
mov dword [ebp + 0x18], eax
cmp eax, dword [ebp + 0x1c]
jl 0x1013feb0
mov ebx, dword [ebp + 8]
mov edx, dword [ebp + 0xc]
sub ecx, ebx
push ecx
push ebx
push edx
mov eax, dword [edx]
call dword [eax + 4]
push ebx
call fcn.102d6d32
add esp, 4
pop esi
pop ebx
mov al, 1
pop edi
mov esp, ebp
pop ebp
ret 0x30
pop esi
pop ebx
xor al, al
pop edi
mov esp, ebp
pop ebp
ret 0x30