Function at 0x402d63
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x34
mov eax, dword [0x40dbc0]
push ebx
push esi
push edi
mov edi, dword [sym.imp.USER32.dll_GetSystemMetrics]
push 0
mov esi, ecx
push 0xc
mov dword [ebp - 4], eax
call edi
push eax
push 0xb
call edi
push eax
mov ebx, 0x80
push 1
push ebx
push dword [ebp - 4]
call dword [sym.imp.USER32.dll_LoadImageW]
push eax
push 1
push ebx
push dword [esi + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [0x40dbc0]
push 0
push 0x32
mov dword [ebp - 4], eax
call edi
push eax
push 0x31
call edi
push eax
push 1
push ebx
push dword [ebp - 4]
call dword [sym.imp.USER32.dll_LoadImageW]
xor edi, edi
push eax
push edi
push ebx
push dword [esi + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
mov ecx, 0x40dbb8
call fcn.004031dd
mov ebx, eax
mov eax, esi
neg eax
lea ecx, [esi + 0x1c]
sbb eax, eax
and eax, ecx
lea ecx, [ebx + 4]
mov dword [ebp - 4], eax
lea eax, [ebp - 4]
push eax
call fcn.00403122
mov eax, esi
lea ecx, [esi + 0x20]
neg eax
sbb eax, eax
and eax, ecx
lea ecx, [ebx + 0x10]
mov dword [ebp - 4], eax
lea eax, [ebp - 4]
push eax
call fcn.00403122
mov eax, dword [esi + 4]
cmp eax, edi
je 0x402e37
mov dword [ebp - 0xc], eax
lea eax, [ebp - 0xc]
push eax
lea ecx, [esi + 0x24]
mov word [ebp - 8], 4
call fcn.0040317b
push dword [esi + 0xa8]
lea ebx, [esi + 0xa8]
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x402e6f
mov ebx, dword [ebx]
push 0x10
call sub.gdiplus.dll_GdipAlloc
cmp eax, edi
je 0x402e65
push edi
push ebx
mov ecx, eax
call fcn.0040415a
jmp 0x402e67
xor eax, eax
mov dword [esi + 0xa0], eax
jmp 0x402e75
mov dword [esi + 0xa0], edi
lea eax, [ebp - 0x34]
push edi
push eax
push 0x10
push 0x30
call dword [sym.imp.USER32.dll_SystemParametersInfoW]
lea eax, [ebp - 0x14]
push eax
call fcn.00404f2e
mov ecx, eax
call fcn.00404f87
mov ebx, dword [ebp - 0x2c]
mov edi, dword [ebp - 0x28]
push dword [esi + 4]
sub ebx, dword [ebp - 0x14]
sub edi, dword [ebp - 0x10]
call dword [sym.imp.USER32.dll_SetForegroundWindow]
push 0
push dword [ebp - 0x10]
push dword [ebp - 0x14]
push edi
push ebx
push 0xffffffffffffffff
push dword [esi + 4]
call dword [sym.imp.USER32.dll_SetWindowPos]
mov eax, dword [ebp - 0x14]
push 0x14
push eax
add eax, 0xffffffce
push 0
push eax
lea eax, [esi + 0x40]
push eax
call dword [sym.imp.USER32.dll_SetRect]
push 0x3e9
push dword [esi + 4]
call dword [sym.imp.USER32.dll_GetDlgItem]
lea edi, [esi + 0x50]
push eax
mov ecx, edi
call fcn.004040f5
test eax, eax
je 0x402ef8
mov ecx, edi
call fcn.00403d97
lea eax, [ebp - 0xc]
push eax
call fcn.00404f2e
mov ecx, eax
call fcn.00404f99
mov ebx, dword [ebp - 0x14]
sub ebx, dword [eax]
lea eax, [ebp - 0xc]
push eax
sub ebx, 0x34
call fcn.00404f2e
mov ecx, eax
call fcn.00404f99
mov ecx, eax
mov eax, dword [ebp - 0x10]
sub eax, dword [ecx + 4]
sub eax, 0x1b
mov dword [ebp - 8], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.00404f2e
mov ecx, eax
call fcn.00404f99
mov eax, dword [eax + 4]
mov dword [ebp - 4], eax
lea eax, [ebp - 0x24]
push eax
call fcn.00404f2e
mov ecx, eax
call fcn.00404f99
mov eax, dword [eax]
push 4
push dword [ebp - 4]
push eax
push dword [ebp - 8]
push ebx
push 0
push dword [esi + 0x54]
call dword [sym.imp.USER32.dll_SetWindowPos]
push 1
pop ebx
mov dword [esi + 0x70], ebx
call fcn.00404f2e
mov ecx, eax
call fcn.00405112
push dword [eax]
mov ecx, edi
call fcn.00403286
and dword [edi + 0x28], 0
and dword [edi + 0x34], 0
mov dword [edi + 0x2c], 2
mov dword [edi + 0x30], ebx
call fcn.00404f2e
mov eax, dword [eax + 4]
push ebx
push eax
push 0x30
push dword [esi + 0x54]
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, 0xb387d
mov dword [edi + 0x44], eax
mov dword [edi + 0x48], eax
mov dword [edi + 0x4c], eax
push dword [esi + 0xac]
push dword [esi + 0x54]
call dword [sym.imp.USER32.dll_SetWindowTextW]
call fcn.00404f2e
mov eax, dword [eax]
push ebx
push eax
push 0x30
push dword [esi + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
pop edi
mov eax, ebx
pop esi
pop ebx
leave
ret 0x10