Function at 0x40013131
Capabilities:
Get file system object information
Hide graphical window

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0xae4
mov eax, dword [0x40025d24]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
push 0x208
xor edi, edi
lea eax, [ebp - 0x61c]
push edi
xor ebx, ebx
mov esi, ecx
push eax
inc ebx
call sub.msvcrt.dll_memset
push 0x208
lea eax, [ebp - 0x414]
push edi
push eax
call sub.msvcrt.dll_memset
mov eax, dword [esi + 8]
xor ecx, ecx
add esp, 0x18
mov dword [ebp - 0xae0], ecx
cmp dword [eax], ecx
jbe 0x400132a5
test edi, edi
je 0x40013196
test ebx, ebx
je 0x400132a5
mov edx, ecx
mov ecx, eax
call fcn.4001569b
mov dword [ebp - 0xadc], eax
test eax, eax
je 0x4001328d
test edi, edi
jne 0x4001321f
push 0x2b4
lea eax, [ebp - 0xad8]
push edi
push eax
call sub.msvcrt.dll_memset
add esp, 0xc
lea eax, [ebp - 0xad8]
push 0x408
push 0x2b4
push eax
push edi
push dword [ebp - 0xadc]
call dword [sym.imp.SHELL32.dll_SHGetFileInfoW]
lea eax, [ebp - 0x8c4]
push eax
cmp word [ebp - 0x414], di
jne 0x40013206
mov edx, 0x104
lea ecx, [ebp - 0x414]
call fcn.4000a269
jmp 0x40013219
lea eax, [ebp - 0x414]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcmpW]
neg eax
sbb edi, edi
neg edi
mov eax, dword [ebp - 0xadc]
test ebx, ebx
je 0x40013281
push 0
push ecx
lea ecx, [ebp - 0x824]
mov edx, 0xc000
push ecx
mov ecx, eax
call fcn.400155dd
test eax, eax
js 0x40013281
lea eax, [ebp - 0x824]
push eax
call dword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecW]
cmp word [ebp - 0x61c], 0
lea eax, [ebp - 0x824]
push eax
jne 0x4001326d
mov edx, 0x104
lea ecx, [ebp - 0x61c]
call fcn.4000a269
jmp 0x40013281
lea eax, [ebp - 0x61c]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
mov ebx, eax
neg ebx
sbb ebx, ebx
inc ebx
push dword [ebp - 0xadc]
call dword [sym.imp.SHELL32.dll_Ordinal_8347]
mov ecx, dword [ebp - 0xae0]
mov eax, dword [esi + 8]
inc ecx
mov dword [ebp - 0xae0], ecx
cmp ecx, dword [eax]
jb 0x4001318a
push 1
push 0
lea eax, [ebp - 0xae4]
push eax
push 0xffffff7b
push 0x40002380
call dword [sym.imp.SHELL32.dll_ExtractIconExW]
test eax, eax
je 0x400132d7
push dword [ebp - 0xae4]
mov ecx, dword [esi + 4]
mov edx, 0x137
call fcn.40016638
push 5
push 0x14c
push dword [esi + 4]
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
push 0
push 0x138
push dword [esi + 4]
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
test edi, edi
lea eax, [ebp - 0x20c]
mov edi, 0x104
push edi
push eax
je 0x40013329
push 0x145
push dword [0x40026300]
call dword [sym.imp.USER32.dll_LoadStringW]
jmp 0x4001334c
push 0x147
push dword [0x40026300]
call dword [sym.imp.USER32.dll_LoadStringW]
lea eax, [ebp - 0x414]
push eax
lea ecx, [ebp - 0x20c]
call fcn.4000a17a
lea eax, [ebp - 0x20c]
push eax
push 0x13b
push dword [esi + 4]
call dword [sym.imp.USER32.dll_SetDlgItemTextW]
lea eax, [ebp - 0x20c]
push edi
push eax
test ebx, ebx
je 0x40013392
push 0x146
push dword [0x40026300]
call dword [sym.imp.USER32.dll_LoadStringW]
lea eax, [ebp - 0x61c]
push eax
lea ecx, [ebp - 0x20c]
call fcn.4000a17a
jmp 0x400133a3
push 0x148
push dword [0x40026300]
call dword [sym.imp.USER32.dll_LoadStringW]
lea eax, [ebp - 0x20c]
push eax
push 0x13e
push dword [esi + 4]
call dword [sym.imp.USER32.dll_SetDlgItemTextW]
push dword [esi + 0x28]
mov edx, dword [esi + 0x24]
mov ecx, dword [esi + 4]
call fcn.40012f3a
cmp dword [esi + 0x20], 0
jne 0x400133df
push 0x40013b00
push 8
push esi
push 0x400139e0
call dword [sym.imp.SHLWAPI.dll_SHCreateThread]
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.40020a80
leave
ret