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

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0xae4
mov eax, dword [0x40026d24]
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 0x40013beb
test edi, edi
je 0x40013ad8
test ebx, ebx
je 0x40013beb
mov edx, ecx
mov ecx, eax
call fcn.400160cd
mov dword [ebp - 0xadc], eax
test eax, eax
je 0x40013bd3
test edi, edi
jne 0x40013b64
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]
cmp word [ebp - 0x414], di
jne 0x40013b4a
push ecx
push eax
push ecx
mov edx, 0x104
lea ecx, [ebp - 0x414]
call fcn.4000a67b
jmp 0x40013b5e
push eax
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 0x40013bc7
push 0
push ecx
lea ecx, [ebp - 0x824]
mov edx, 0xc000
push ecx
mov ecx, eax
call fcn.40016003
test eax, eax
js 0x40013bc7
lea eax, [ebp - 0x824]
push eax
call dword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecW]
cmp word [ebp - 0x61c], 0
lea eax, [ebp - 0x824]
jne 0x40013bb4
push ecx
push eax
push ecx
mov edx, 0x104
lea ecx, [ebp - 0x61c]
call fcn.4000a67b
jmp 0x40013bc7
push eax
lea eax, [ebp - 0x61c]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
neg eax
sbb ebx, ebx
inc ebx
push dword [ebp - 0xadc]
call dword [sym.imp.SHELL32.dll_Ordinal_12443]
mov ecx, dword [ebp - 0xae0]
mov eax, dword [esi + 8]
inc ecx
mov dword [ebp - 0xae0], ecx
cmp ecx, dword [eax]
jb 0x40013acc
push 1
push 0
lea eax, [ebp - 0xae4]
push eax
push 0xffffff7b
push 0x400023a0
call dword [sym.imp.SHELL32.dll_ExtractIconExW]
test eax, eax
je 0x40013c1d
push dword [ebp - 0xae4]
mov ecx, dword [esi + 4]
mov edx, 0x137
call fcn.400170de
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 0x40013c6f
push 0x145
push dword [0x400272f8]
call dword [sym.imp.USER32.dll_LoadStringW]
jmp 0x40013c92
push 0x147
push dword [0x400272f8]
call dword [sym.imp.USER32.dll_LoadStringW]
lea eax, [ebp - 0x414]
push eax
lea ecx, [ebp - 0x20c]
call fcn.4000a5d0
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 0x40013cd8
push 0x146
push dword [0x400272f8]
call dword [sym.imp.USER32.dll_LoadStringW]
lea eax, [ebp - 0x61c]
push eax
lea ecx, [ebp - 0x20c]
call fcn.4000a5d0
jmp 0x40013ce9
push 0x148
push dword [0x400272f8]
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.40013870
cmp dword [esi + 0x20], 0
jne 0x40013d25
push 0x40014490
push 8
push esi
push 0x40014370
call dword [sym.imp.SHLWAPI.dll_SHCreateThread]
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.40021790
leave
ret