Function at 0x40fc50
Capabilities:
Check if file exists
Link many functions at runtime

Disassembly:
mov eax, dword [0x468c80]
sub esp, 0x800
test eax, eax
push ebx
mov ebx, dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
push ebp
mov ebp, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push esi
push edi
mov edi, dword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecW]
je 0x40fd36
mov eax, dword [0x468ad4]
test eax, eax
je 0x40fc90
mov ecx, dword [0x468ad8]
test ecx, ecx
jne 0x40fd25
lea eax, [esp + 0x10]
push 0x400
push eax
push 0
call ebx
lea ecx, [esp + 0x10]
push ecx
call edi
mov eax, dword [0x468adc]
xor esi, esi
test eax, eax
jle 0x40fcc1
lea edx, [esp + 0x10]
push edx
call edi
mov eax, dword [0x468adc]
inc esi
cmp esi, eax
jl 0x40fcb0
lea eax, [esp + 0x10]
push str.MiniUI.dll
lea ecx, [esp + 0x14]
push eax
push ecx
call dword [sym.imp.SHLWAPI.dll_PathCombineW]
lea edx, [esp + 0x10]
push edx
call fcn.00407f40
add esp, 4
test eax, eax
je 0x40fcf2
lea eax, [esp + 0x10]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
test eax, eax
mov dword [0x468ad8], eax
je 0x40fd36
push str.GetMiniUI
push eax
call ebp
test eax, eax
mov dword [0x468ad4], eax
jne 0x40fd25
mov ecx, dword [0x468ad8]
push ecx
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov dword [0x468ad8], 0
jmp 0x40fd36
call eax
test eax, eax
je 0x40fd36
mov edx, dword [eax]
push 0x468c80
push eax
call dword [edx + 0x58]
mov eax, dword [0x468c84]
test eax, eax
je 0x40fe00
mov eax, dword [0x468ad4]
test eax, eax
je 0x40fd5a
mov ecx, dword [0x468ad8]
test ecx, ecx
jne 0x40fdef
lea eax, [esp + 0x10]
push 0x400
push eax
push 0
call ebx
lea ecx, [esp + 0x10]
push ecx
call edi
mov eax, dword [0x468adc]
xor esi, esi
test eax, eax
jle 0x40fd8b
lea edx, [esp + 0x10]
push edx
call edi
mov eax, dword [0x468adc]
inc esi
cmp esi, eax
jl 0x40fd7a
lea eax, [esp + 0x10]
push str.MiniUI.dll
lea ecx, [esp + 0x14]
push eax
push ecx
call dword [sym.imp.SHLWAPI.dll_PathCombineW]
lea edx, [esp + 0x10]
push edx
call fcn.00407f40
add esp, 4
test eax, eax
je 0x40fdbc
lea eax, [esp + 0x10]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
test eax, eax
mov dword [0x468ad8], eax
je 0x40fe00
push str.GetMiniUI
push eax
call ebp
test eax, eax
mov dword [0x468ad4], eax
jne 0x40fdef
mov ecx, dword [0x468ad8]
push ecx
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov dword [0x468ad8], 0
jmp 0x40fe00
call eax
test eax, eax
je 0x40fe00
mov edx, dword [eax]
push 0x468c84
push eax
call dword [edx + 0x58]
mov eax, dword [0x468c88]
test eax, eax
je 0x40feca
mov eax, dword [0x468ad4]
test eax, eax
je 0x40fe24
mov ecx, dword [0x468ad8]
test ecx, ecx
jne 0x40feb9
lea eax, [esp + 0x10]
push 0x400
push eax
push 0
call ebx
lea ecx, [esp + 0x10]
push ecx
call edi
mov eax, dword [0x468adc]
xor esi, esi
test eax, eax
jle 0x40fe55
lea edx, [esp + 0x10]
push edx
call edi
mov eax, dword [0x468adc]
inc esi
cmp esi, eax
jl 0x40fe44
lea eax, [esp + 0x10]
push str.MiniUI.dll
lea ecx, [esp + 0x14]
push eax
push ecx
call dword [sym.imp.SHLWAPI.dll_PathCombineW]
lea edx, [esp + 0x10]
push edx
call fcn.00407f40
add esp, 4
test eax, eax
je 0x40fe86
lea eax, [esp + 0x10]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
test eax, eax
mov dword [0x468ad8], eax
je 0x40feca
push str.GetMiniUI
push eax
call ebp
test eax, eax
mov dword [0x468ad4], eax
jne 0x40feb9
mov ecx, dword [0x468ad8]
push ecx
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov dword [0x468ad8], 0
jmp 0x40feca
call eax
test eax, eax
je 0x40feca
mov edx, dword [eax]
push 0x468c88
push eax
call dword [edx + 0x58]
mov eax, dword [0x468c8c]
test eax, eax
je 0x40ff94
mov eax, dword [0x468ad4]
test eax, eax
je 0x40feee
mov ecx, dword [0x468ad8]
test ecx, ecx
jne 0x40ff83
lea eax, [esp + 0x10]
push 0x400
push eax
push 0
call ebx
lea ecx, [esp + 0x10]
push ecx
call edi
mov eax, dword [0x468adc]
xor esi, esi
test eax, eax
jle 0x40ff1f
lea edx, [esp + 0x10]
push edx
call edi
mov eax, dword [0x468adc]
inc esi
cmp esi, eax
jl 0x40ff0e
lea eax, [esp + 0x10]
push str.MiniUI.dll
lea ecx, [esp + 0x14]
push eax
push ecx
call dword [sym.imp.SHLWAPI.dll_PathCombineW]
lea edx, [esp + 0x10]
push edx
call fcn.00407f40
add esp, 4
test eax, eax
je 0x40ff50
lea eax, [esp + 0x10]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
test eax, eax
mov dword [0x468ad8], eax
je 0x40ff94
push str.GetMiniUI
push eax
call ebp
test eax, eax
mov dword [0x468ad4], eax
jne 0x40ff83
mov ecx, dword [0x468ad8]
push ecx
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov dword [0x468ad8], 0
jmp 0x40ff94
call eax
test eax, eax
je 0x40ff94
mov edx, dword [eax]
push 0x468c8c
push eax
call dword [edx + 0x58]
mov eax, dword [0x468c94]
test eax, eax
je 0x4100ac
mov eax, dword [0x468ad4]
test eax, eax
je 0x40ffb8
mov ecx, dword [0x468ad8]
test ecx, ecx
jne 0x41009b
lea eax, [esp + 0x10]
push 0x400
push eax
push 0
call ebx
lea ecx, [esp + 0x10]
push ecx
call edi
mov eax, dword [0x468adc]
xor esi, esi
test eax, eax
jle 0x40ffe9
lea edx, [esp + 0x10]
push edx
call edi
mov eax, dword [0x468adc]
inc esi
cmp esi, eax
jl 0x40ffd8
lea eax, [esp + 0x10]
push str.MiniUI.dll
lea ecx, [esp + 0x14]
push eax
push ecx
call dword [sym.imp.SHLWAPI.dll_PathCombineW]
push 0
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push eax
call fcn.004026a0
add esp, 8
test eax, eax
jne 0x410054
lea edx, [esp + 0x10]
test edx, edx
je 0x410050
lea eax, [esp + 0x10]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x410054
lea ecx, [esp + 0x10]
push ecx
call fcn.00401e30
add esp, 4
test eax, eax
jne 0x410054
push 1
call fcn.004568c0
lea edx, [esp + 0x14]
push eax
push edx
call fcn.00456b50
add esp, 0xc
xor eax, eax
jmp 0x41005f
lea eax, [esp + 0x10]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
test eax, eax
mov dword [0x468ad8], eax
je 0x4100ac
push str.GetMiniUI
push eax
call ebp
test eax, eax
mov dword [0x468ad4], eax
jne 0x41009b
mov ecx, dword [0x468ad8]
push ecx
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
pop edi
pop esi
pop ebp
mov dword [0x468ad8], 0
pop ebx
add esp, 0x800
ret
call eax
test eax, eax
je 0x4100ac
mov edx, dword [eax]
push 0x468c94
push eax
call dword [edx + 0x58]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x800
ret