Function at 0x44c8d0
Capabilities:
Get file system object information

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x350
push ebx
mov ebx, ecx
mov dword [ebp - 0x14], ebx
mov eax, dword [ebx + 4]
test eax, eax
je 0x44c908
cmp byte [ebp + 0xc], 0
je 0x44c8ff
push 3
push 0
push 0
push 0
push 0
push 0
push eax
call dword [sym.imp.USER32.dll_SetWindowPos]
mov al, 1
pop ebx
mov esp, ebp
pop ebp
ret 8
push esi
push edi
mov edi, dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push 0
call edi
cmp dword [0x696290], 0
mov dword [ebp - 0x18], eax
jne 0x44cbe3
push 0
push 0x600
call fcn.0044ba20
add esp, 8
mov bl, al
push 0
call edi
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
test bl, bl
mov ebx, dword [sym.imp.USER32.dll_GetSystemMetrics]
mov dword [ebp + 0xc], eax
je 0x44c97c
push str.comctl32.dll
call edi
test eax, eax
je 0x44c97c
push str.LoadIconMetric
push eax
call esi
test eax, eax
je 0x44c97c
lea ecx, [ebp - 4]
push ecx
push 1
push str.APP_ICON
push dword [ebp + 0xc]
call eax
test eax, eax
jne 0x44c97c
mov eax, dword [ebp - 4]
jmp 0x44c9a0
push 0xc
call ebx
push 0xb
mov esi, eax
call ebx
push 0
push esi
push eax
push 1
push str.APP_ICON
push dword [ebp + 0xc]
call dword [sym.imp.USER32.dll_LoadImageW]
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push 0
push 0x600
mov dword [0x696290], eax
call fcn.0044ba20
add esp, 8
mov bl, al
push 0
call edi
mov dword [ebp + 0xc], eax
test bl, bl
je 0x44c9f1
push str.comctl32.dll
call edi
test eax, eax
je 0x44c9f1
push str.LoadIconMetric
push eax
call esi
test eax, eax
je 0x44c9f1
lea ecx, [ebp - 4]
push ecx
push 0
push str.APP_ICON
push dword [ebp + 0xc]
call eax
test eax, eax
jne 0x44c9f1
mov eax, dword [ebp - 4]
jmp 0x44ca1b
mov ebx, dword [sym.imp.USER32.dll_GetSystemMetrics]
push 0x32
call ebx
push 0x31
mov esi, eax
call ebx
push 0
push esi
push eax
push 1
push str.APP_ICON
push dword [ebp + 0xc]
call dword [sym.imp.USER32.dll_LoadImageW]
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push 0
push 0x600
mov dword [0x696294], eax
call fcn.0044ba20
add esp, 8
mov bl, al
push 0
call edi
mov dword [ebp + 0xc], eax
test bl, bl
je 0x44ca7e
push str.comctl32.dll
call edi
test eax, eax
je 0x44ca7e
push str.LoadIconMetric
push eax
call esi
mov esi, eax
test esi, esi
je 0x44ca7e
mov ebx, str.APP_ICON
call fcn.0044ccc0
test al, al
mov ecx, str.APP_ICON_WHITE
lea eax, [ebp - 4]
push eax
push 0
cmove ecx, ebx
push ecx
push dword [ebp + 0xc]
call esi
test eax, eax
jne 0x44ca7e
mov eax, dword [ebp - 4]
jmp 0x44caa2
mov ebx, dword [sym.imp.USER32.dll_GetSystemMetrics]
push 0x32
call ebx
push 0x31
mov esi, eax
call ebx
push 0
push esi
push eax
push 1
push str.APP_ICON
push dword [ebp + 0xc]
call dword [sym.imp.USER32.dll_LoadImageW]
mov dword [0x696298], eax
lea eax, [ebp - 0x78]
push eax
call fcn.00461450
add esp, 4
call fcn.0044dab0
test eax, eax
je 0x44cb2c
cmp byte [eax], 0
mov ecx, eax
mov byte [ebp - 0x10], 0
mov byte [ebp - 5], 0xb
je 0x44cad6
nop dword [eax + eax]
inc ecx
cmp byte [ecx], 0
jne 0x44cad0
push ecx
push eax
lea ecx, [ebp - 0x10]
call fcn.004409b0
lea eax, [ebp - 0x10]
push eax
lea ecx, [ebp - 0x48]
call fcn.0045cc50
lea ecx, [ebp - 0x9c]
push ecx
mov ecx, eax
call fcn.0045d030
push eax
lea ecx, [ebp - 0x78]
call fcn.0045cd30
lea ecx, [ebp - 0x9c]
call fcn.0043fba0
lea ecx, [ebp - 0x48]
call fcn.0043fba0
test byte [ebp - 5], 0x80
je 0x44cb2c
mov eax, dword [ebp - 0x10]
test eax, eax
je 0x44cb2c
push eax
call fcn.0044d750
add esp, 4
cmp byte [ebp - 0x6d], 0
lea ecx, [ebp - 0x78]
mov byte [ebp - 0x10], 0
cmovl ecx, dword [ebp - 0x78]
mov byte [ebp - 5], 0xb
mov eax, ecx
cmp byte [ecx], 0
je 0x44cb4c
inc eax
cmp byte [eax], 0
jne 0x44cb46
push eax
push ecx
lea ecx, [ebp - 0x10]
call fcn.004409b0
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x24]
push eax
call fcn.00460c00
add esp, 8
test byte [ebp - 5], 0x80
je 0x44cb7c
mov eax, dword [ebp - 0x10]
test eax, eax
je 0x44cb7c
push eax
call fcn.0044d750
add esp, 4
push 0x2b4
lea eax, [ebp - 0x350]
push 0
push eax
call fcn.005d6d60
add esp, 0xc
lea ecx, [ebp - 0x350]
test byte [ebp - 0x19], 0x80
lea eax, [ebp - 0x24]
cmovne eax, dword [ebp - 0x24]
push 0x101
push 0x2b4
push ecx
push 0
push eax
call dword [sym.imp.SHELL32.dll_SHGetFileInfoW]
test byte [ebp - 0x19], 0x80
mov eax, dword [ebp - 0x350]
mov dword [0x69629c], eax
je 0x44cbd8
mov eax, dword [ebp - 0x24]
test eax, eax
je 0x44cbd8
push eax
call fcn.0044d750
add esp, 4
lea ecx, [ebp - 0x78]
call fcn.0043fba0
mov ebx, dword [ebp - 0x14]
cmp word [0x6962a0], 0
jne 0x44cc57
push 0
call edi
push 0x2c
mov esi, eax
mov dword [ebp - 0x54], 0x30
lea eax, [ebp - 0x50]
push 0
push eax
call fcn.005d6d60
mov eax, dword [0x696290]
add esp, 0xc
mov dword [ebp - 0x3c], eax
mov eax, dword [0x696294]
mov dword [ebp - 0x4c], 0x44cf20
push 0x7f00
push 0
mov dword [ebp - 0x40], esi
mov dword [ebp - 0x28], eax
call dword [sym.imp.USER32.dll_LoadCursorW]
mov dword [ebp - 0x38], eax
lea eax, [ebp - 0x54]
push eax
mov dword [ebp - 0x34], 0x10
mov dword [ebp - 0x2c], 0x600ea8
call dword [sym.imp.USER32.dll_RegisterClassExW]
mov word [0x6962a0], ax
test ax, ax
je 0x44cc9c
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax]
mov edx, dword [ebx]
mov ecx, ebx
mov esi, eax
call dword [edx + 4]
push ebx
push dword [ebp - 0x18]
push 0
push dword [ebp + 8]
push accept
push accept
push accept
push accept
push esi
push 0x5ff810
push 0x600ea8
push eax
call dword [sym.imp.USER32.dll_CreateWindowExW]
mov dword [ebx + 4], eax
test eax, eax
jne 0x44cca7
pop edi
pop esi
xor al, al
pop ebx
mov esp, ebp
pop ebp
ret 8
mov eax, dword [ebx]
mov ecx, ebx
mov eax, dword [eax + 8]
call eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8