Function at 0x402cca
Capabilities:
Get file attributes

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x2c
push ebx
mov ebx, ecx
push esi
push edi
mov dword [ebp - 0x10], ebx
lea eax, [ebx + 0x24]
push eax
lea ecx, [ebx + 0x3c]
mov dword [ebp - 0x18], eax
call fcn.0043c8ec
push 0x3ec
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_GetDlgItem]
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
mov edi, eax
xor eax, eax
push eax
push eax
push 0x146
push edi
call esi
test eax, eax
je 0x402d2a
xor ebx, ebx
push ebx
push ebx
push 0x144
push edi
call esi
push ebx
push ebx
push 0x146
push edi
call esi
test eax, eax
jne 0x402d0f
mov ebx, dword [ebp - 0x10]
push 0x3e8
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_GetDlgItem]
xor ecx, ecx
push ecx
push ecx
push 0x1009
push eax
call esi
mov ecx, dword [ebx + 0x24]
call fcn.0044c9a8
cmp eax, 1
jne 0x4030c2
mov eax, dword [ebx + 0x48]
add ebx, 0x44
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x20], eax
mov esi, dword [ebx]
cmp esi, eax
je 0x402d7d
mov ebx, eax
push dword [esi]
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
add esi, 8
cmp esi, ebx
jne 0x402d69
mov ebx, dword [ebp - 0x24]
mov esi, dword [ebx]
mov eax, dword [ebp - 0x18]
push ecx
mov dword [ebx + 4], esi
mov esi, esp
mov ecx, dword [eax]
sub ecx, 0x10
call fcn.0043baa0
add eax, 0x10
mov ecx, ebx
mov dword [esi], eax
call fcn.00470dcd
mov dword [ebp - 0x20], eax
test eax, eax
je 0x402ddb
push 0x486308
call sym.Dismx86.exe_DismMultiLanguage
mov edx, dword [ebp - 0x20]
lea ecx, [ebp - 0x24]
mov esi, eax
call fcn.0043b4b9
mov ecx, dword [ebp - 0x10]
push 0
push esi
push dword [eax]
push dword [ecx + 4]
call dword [sym.imp.USER32.dll_MessageBoxW]
mov ecx, dword [ebp - 0x24]
lea ecx, [ecx - 0x10]
call fcn.0043c924
jmp 0x4030c2
xor eax, eax
mov dword [ebp - 0x1c], eax
mov eax, dword [ebx]
mov eax, dword [eax]
mov dword [ebp - 0x14], eax
mov eax, dword [eax + 0x18]
push dword [eax*8 + 0x486398]
call sym.Dismx86.exe_DismMultiLanguage
mov esi, dword [ebp - 0x10]
push eax
cmp dword [esi + 0x20], 0
jne 0x402e7f
push 0x486200
call sym.Dismx86.exe_DismMultiLanguage
push eax
lea eax, [ebp - 0x20]
push str._s__s
push eax
call fcn.00449eea
add esp, 0x10
push dword [eax]
push dword [esi + 4]
call dword [sym.imp.USER32.dll_SetWindowTextW]
mov ecx, dword [ebp - 0x20]
lea ecx, [ecx - 0x10]
call fcn.0043c924
push 0x3ee
push dword [esi + 4]
call dword [sym.imp.USER32.dll_GetDlgItem]
mov esi, eax
mov eax, dword [ebp - 0x18]
push dword [eax]
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
test al, 1
je 0x402e71
xor eax, eax
push eax
push esi
call dword [sym.imp.USER32.dll_EnableWindow]
xor eax, eax
push eax
push 1
push 0xf1
push esi
call dword [sym.imp.USER32.dll_SendMessageW]
jmp 0x402f5a
push 1
push esi
call dword [sym.imp.USER32.dll_EnableWindow]
jmp 0x402f5a
push 0x486260
call sym.Dismx86.exe_DismMultiLanguage
push eax
lea eax, [ebp - 0x20]
push str._s__s
push eax
call fcn.00449eea
add esp, 0x10
push dword [eax]
push dword [esi + 4]
call dword [sym.imp.USER32.dll_SetWindowTextW]
mov ecx, dword [ebp - 0x20]
lea ecx, [ecx - 0x10]
call fcn.0043c924
push 0x3ee
push dword [esi + 4]
call dword [sym.imp.USER32.dll_GetDlgItem]
mov esi, eax
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + 0x18]
dec eax
cmp eax, 2
ja 0x402ed8
push 1
push esi
call dword [sym.imp.USER32.dll_EnableWindow]
jmp 0x402ef2
xor eax, eax
push eax
push esi
call dword [sym.imp.USER32.dll_EnableWindow]
xor eax, eax
push eax
push eax
push 0xf1
push esi
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [ebx + 4]
sub eax, dword [ebx]
and eax, 0xfffffff8
cmp eax, 8
jne 0x402f5a
mov esi, dword [ebp - 0x14]
push str.Windows_Setup_Media
lea eax, [esi + 0x3c]
push eax
call dword [sym.imp.SHLWAPI.dll_StrCmpW]
test eax, eax
jne 0x402f5a
lea eax, [esi + 0x1a58]
push 0x48d2dc
push eax
call dword [sym.imp.SHLWAPI.dll_StrCmpW]
test eax, eax
jne 0x402f3c
cmp dword [esi + 0x1c], 4
sbb ecx, ecx
and ecx, 0xfffffffd
add ecx, 3
mov dword [ebp - 0x1c], ecx
jmp 0x402f5a
lea eax, [esi + 0x1a58]
test eax, eax
je 0x402f4d
xor ecx, ecx
cmp word [eax], cx
jne 0x402f5a
cmp dword [esi + 0x1c], 3
jb 0x402f5a
mov dword [ebp - 0x1c], 2
mov esi, dword [ebx]
xor eax, eax
mov dword [ebp - 0x14], eax
mov ecx, eax
mov dword [ebp - 8], eax
mov eax, dword [ebx + 4]
sub eax, esi
cmp eax, 8
jb 0x4030a5
mov eax, dword [esi + ecx*8]
mov dword [ebp - 0x20], eax
call fcn.0043c5cd
push eax
lea ecx, [ebp - 0xc]
call fcn.0043ac50
mov eax, dword [ebp - 8]
mov esi, dword [esi + eax*8 + 4]
test esi, esi
je 0x402fb7
push 0x48d2e0
add esi, 2
push esi
call dword [sym.imp.SHLWAPI.dll_StrStrIW]
test eax, eax
je 0x402fb4
sub eax, esi
lea ecx, [ebp - 0xc]
sar eax, 1
push eax
push esi
call fcn.0043b835
mov eax, dword [ebp - 8]
mov esi, dword [ebp - 0x20]
xor ecx, ecx
cmp dword [esi + 0x1c], ecx
je 0x403081
shl eax, 0x10
mov ebx, ecx
mov dword [ebp - 0x2c], eax
lea eax, [esi + 0x3c]
mov dword [ebp - 0x18], eax
call fcn.0043c5cd
push eax
lea ecx, [ebp - 4]
call fcn.0043ac50
mov eax, dword [ebp - 0xc]
xor ecx, ecx
cmp dword [eax - 0xc], ecx
je 0x403001
lea eax, [ebp - 0xc]
push eax
lea ecx, [ebp - 4]
call fcn.0043b599
push 0x20
lea ecx, [ebp - 4]
call fcn.0043b93f
push dword [ebp - 0x18]
mov eax, dword [ebp - 0x14]
inc eax
push eax
mov dword [ebp - 0x28], eax
lea eax, [ebp - 4]
push str._d:__s
push eax
call fcn.0043b264
add esp, 0x10
cmp dword [esi], ebx
jne 0x403034
push 0x48d304
call sym.Dismx86.exe_DismMultiLanguage
push eax
lea ecx, [ebp - 4]
call fcn.0043b9f9
mov esi, dword [ebp - 4]
xor eax, eax
push esi
push eax
push 0x143
push edi
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [ebp - 0x2c]
or eax, ebx
push eax
push dword [ebp - 0x14]
push 0x151
push edi
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [ebp - 0x28]
lea ecx, [esi - 0x10]
mov dword [ebp - 0x14], eax
call fcn.0043c924
mov esi, dword [ebp - 0x20]
inc ebx
add dword [ebp - 0x18], 0xe1c
cmp ebx, dword [esi + 0x1c]
jne 0x402fd3
mov ebx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0xc]
lea ecx, [ecx - 0x10]
call fcn.0043c924
mov eax, dword [ebx + 4]
mov ecx, dword [ebp - 8]
mov esi, dword [ebx]
inc ecx
sub eax, esi
mov dword [ebp - 8], ecx
sar eax, 3
cmp ecx, eax
jne 0x402f74
xor eax, eax
push eax
push dword [ebp - 0x1c]
push 0x14e
push edi
call dword [sym.imp.USER32.dll_SendMessageW]
mov ecx, dword [ebp - 0x10]
sub esp, 0x10
call fcn.004030cb
pop edi
pop esi
xor eax, eax
pop ebx
leave
ret 0x10