Function at 0x43c5a0
Capabilities:
Check if file exists

Disassembly:
sub esp, 0x808
push ebx
push ebp
push esi
mov esi, ecx
mov ebp, dword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecW]
push edi
mov eax, dword [esi + 0x118]
lea ebx, [esi + 0x118]
test eax, eax
jne 0x43c6ae
mov eax, dword [0x4730e0]
test eax, eax
je 0x43c5dd
mov ecx, dword [0x4730e4]
test ecx, ecx
jne 0x43c780
lea eax, [esp + 0x18]
push 0x400
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
lea ecx, [esp + 0x18]
push ecx
call ebp
mov eax, dword [0x4730e8]
xor edi, edi
test eax, eax
jle 0x43c612
lea edx, [esp + 0x18]
push edx
call ebp
mov eax, dword [0x4730e8]
inc edi
cmp edi, eax
jl 0x43c601
lea eax, [esp + 0x18]
push str.MiniUI.dll
lea ecx, [esp + 0x1c]
push eax
push ecx
call dword [sym.imp.SHLWAPI.dll_PathCombineW]
lea edx, [esp + 0x18]
test edx, edx
je 0x43c662
lea eax, [esp + 0x18]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x43c666
lea ecx, [esp + 0x18]
push ecx
call fcn.00456ce0
add esp, 4
test eax, eax
jne 0x43c666
call fcn.00456be0
lea edx, [esp + 0x18]
push eax
push edx
call fcn.00456bf0
add esp, 8
xor eax, eax
jmp 0x43c671
lea eax, [esp + 0x18]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
test eax, eax
mov dword [0x4730e4], eax
je 0x43c6aa
push str.GetMiniUI
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
mov dword [0x4730e0], eax
jne 0x43c780
mov ecx, dword [0x4730e4]
push ecx
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov dword [0x4730e4], 0
xor eax, eax
mov dword [ebx], eax
mov edi, dword [esp + 0x820]
cmp edi, 1
jge 0x43c6bf
mov edi, 1
mov ecx, dword [ebx]
test ecx, ecx
je 0x43c83d
mov edx, dword [esp + 0x81c]
mov eax, dword [ecx]
push 0
push edx
call dword [eax + 0xc]
test eax, eax
jne 0x43c800
mov eax, dword [0x4730e0]
test eax, eax
je 0x43c6f7
mov ecx, dword [0x4730e4]
test ecx, ecx
jne 0x43c7e6
lea eax, [esp + 0x18]
push 0x400
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
lea ecx, [esp + 0x18]
push ecx
call ebp
mov eax, dword [0x4730e8]
xor esi, esi
test eax, eax
jle 0x43c72c
lea edx, [esp + 0x18]
push edx
call ebp
mov eax, dword [0x4730e8]
inc esi
cmp esi, eax
jl 0x43c71b
lea eax, [esp + 0x18]
push str.MiniUI.dll
lea ecx, [esp + 0x1c]
push eax
push ecx
call dword [sym.imp.SHLWAPI.dll_PathCombineW]
lea edx, [esp + 0x18]
test edx, edx
je 0x43c77c
lea eax, [esp + 0x18]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x43c795
lea ecx, [esp + 0x18]
push ecx
call fcn.00456ce0
add esp, 4
test eax, eax
jne 0x43c795
call fcn.00456be0
lea edx, [esp + 0x18]
push eax
push edx
call fcn.00456bf0
add esp, 8
xor eax, eax
jmp 0x43c7a0
call eax
test eax, eax
je 0x43c6aa
mov edx, dword [eax]
push eax
call dword [edx + 0x54]
jmp 0x43c6ac
lea eax, [esp + 0x18]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
test eax, eax
mov dword [0x4730e4], eax
je 0x43c83d
push str.GetMiniUI
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
mov dword [0x4730e0], eax
jne 0x43c7e6
mov ecx, dword [0x4730e4]
push ecx
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
pop edi
pop esi
pop ebp
mov dword [0x4730e4], 0
pop ebx
add esp, 0x808
ret 8
call eax
test eax, eax
je 0x43c83d
mov edx, dword [eax]
push ebx
push eax
call dword [edx + 0x58]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x808
ret 8
mov ecx, dword [ebx]
lea edx, [esp + 0x10]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov ecx, eax
mov eax, dword [ecx]
cdq
idiv edi
mov edx, dword [esi + 0x20]
mov ebx, dword [ecx + 4]
mov dword [esi + 0xb0], edi
push edx
mov edi, eax
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x43c83d
push 2
push ebx
push edi
push 0
push 0
push 0
mov ecx, esi
call sub.MFC42u.DLL_CWnd::SetWindowPos
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x808
ret 8