Function at 0x442300
Capabilities:
Get file system object information

Disassembly:
push ebp
lea ebp, [esp - 0x5ad0]
mov eax, 0x5ad0
call fcn.004ebbf0
push 0xffffffffffffffff
push 0x505bd6
mov eax, dword fs:[0]
push eax
sub esp, 0xb8
mov eax, dword [0x528af4]
xor eax, ebp
mov dword [ebp + 0x5acc], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov eax, dword [ebp + 0x5ad8]
inc dword [0x539a60]
mov dword [ebp - 0x5c], eax
mov dword [ebp - 4], 0
mov ebx, dword [sym.imp.USER32.dll_SendMessageW]
push 1
push 0xffffffffffffffff
push 0x100c
push dword [edi + 0x28]
call ebx
push 1
mov ecx, 0x55d0a8
mov dword [ebp - 0x20], eax
call fcn.004a79e0
push 0x1c4
call fcn.00488530
push eax
mov ecx, 0x55d0a8
call fcn.004a7910
push 0
push 0
push 0xb
push dword [edi + 0x28]
call ebx
mov ecx, edi
call fcn.0043f210
push 0x4011
push 0x2b4
lea eax, [ebp + 0x10e8]
push eax
push 0
push str.file
call dword [sym.imp.SHELL32.dll_SHGetFileInfoW]
push eax
push 1
push 0x1003
push dword [edi + 0x28]
call ebx
mov ecx, 0x55d09c
call fcn.00402660
lea eax, [ebp + 0x2738]
mov ecx, 0x55a850
push eax
call fcn.004051c0
cmp byte [ebp + 0x27b8], 0
je 0x442420
cmp byte [ebp + 0x2924], 0
je 0x442420
cmp byte [ebp + 0x2873], 0
jne 0x442420
mov eax, dword [ebp + 0x2908]
cmp eax, 3
je 0x442413
cmp eax, 2
jne 0x442426
mov eax, 4
mov dword [ebp + 0x2908], eax
jmp 0x442426
mov eax, dword [ebp + 0x2908]
mov dword [ebp - 0xc0], 4
mov ecx, 0x73
sub eax, 1
je 0x442450
sub eax, 2
je 0x442449
sub eax, 1
jne 0x442455
lea ecx, [eax + 0x76]
jmp 0x442455
mov ecx, 0x75
jmp 0x442455
mov ecx, 0x74
push ecx
call fcn.00488530
mov dword [ebp - 0xb4], eax
lea eax, [ebp - 0xc0]
push eax
push 5
push 0x1060
push dword [edi + 0x28]
call ebx
push 0x800
lea eax, [ebp + 0x2928]
mov ecx, 0x55a850
push eax
call fcn.00404e00
push 0x800
lea eax, [ebp + 0x4928]
mov ecx, 0x55a850
push eax
call fcn.004051a0
push 0
lea eax, [ebp + 0x2928]
mov ecx, edi
push eax
lea eax, [ebp + 0x4928]
push eax
call fcn.00436ec0
lea eax, [ebp + 0x4928]
mov ecx, edi
push eax
call fcn.0043ec70
lea esi, [ebp + 0x4928]
lea ecx, [esi + 2]
mov edi, edi
mov ax, word [esi]
add esi, 2
test ax, ax
jne 0x4424d0
sub esi, ecx
sar esi, 1
je 0x4424e2
inc esi
lea eax, [ebp + 0x4928]
mov ecx, 0x543e78
push eax
call fcn.004aca40
push 0
push 0x50c6e8
push str.FileList
mov dword [ebp - 0x14], 0
call fcn.0049fd30
push 0
test eax, eax
push str.ShowSeconds
setne al
push str.FileList
mov byte [ebp - 0x10], al
call fcn.0049fd30
test eax, eax
mov dword [ebp + 0x26e0], 0
push 0x1f4
setne byte [ebp - 0x1c]
mov dword [ebp + 0x26e4], 0
xor eax, eax
lea ecx, [ebp - 0xa0]
mov word [ebp + 0x3928], ax
call fcn.004c2fb0
mov byte [ebp - 4], 1
lea eax, [ebp + 0x1650]
push dword [ebp - 0x10]
mov ecx, 0x55a850
push eax
call fcn.004051e0
test al, al
je 0x442a90
lea ebx, [ebp + 0x1650]
lea ebx, [ebx + esi*2]
mov dword [ebp - 0x58], ebx
jmp 0x442588
mov ebx, dword [ebp - 0x58]
test byte [ebp - 0x14], 0x1f
jne 0x442599
lea ecx, [ebp - 0xa0]
call fcn.004c45c0
mov al, byte [ebp - 0x10]
mov esi, ebx
mov ebx, dword [ebp + 0x26e8]
shr ebx, 4
and bl, 1
test al, al
je 0x4425bf
lea eax, [ebp + 0x1650]
push eax
call fcn.00478eb0
mov esi, eax
mov al, byte [ebp - 0x10]
test bl, bl
je 0x44264e
test al, al
jne 0x44264e
test byte [ebp + 0x2728], 0x20
je 0x442706
lea ecx, [ebp + 0x3928]
mov eax, esi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x44260a
test dx, dx
je 0x442606
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x44260a
add eax, 4
add ecx, 4
test dx, dx
jne 0x4425e4
xor eax, eax
jmp 0x44260f
sbb eax, eax
or eax, 1
test eax, eax
je 0x442a6e
lea edx, [ebp + 0x3928]
mov ecx, esi
sub edx, esi
movzx eax, word [ecx]
lea ecx, [ecx + 2]
mov word [ecx + edx - 2], ax
test ax, ax
jne 0x442621
push 1
push 0
lea eax, [ebp + 0x1650]
mov ecx, 0x562e30
push eax
call fcn.0043d720
test al, al
jne 0x442a6e
mov eax, dword [ebp - 0x14]
mov edx, dword [ebp + 0x2728]
mov dword [ebp - 0x8c], eax
xor eax, eax
mov dword [ebp - 0x90], 7
mov dword [ebp - 0x74], 0xffffffff
mov dword [ebp - 0x88], 0
mov word [ebp + 0x5ab8], ax
test dl, 1
je 0x4426ad
lea ecx, [ebp + 0x5ab8]
add ecx, 0xfffffffe
nop
mov ax, word [ecx + 2]
lea ecx, [ecx + 2]
test ax, ax
jne 0x442690
mov eax, dword [0x50ef24]
mov dword [ecx], eax
mov ax, word [0x50ef28]
mov word [ecx + 4], ax
and edx, 6
je 0x442805
sub edx, 2
je 0x4427d3
sub edx, 2
je 0x4427a5
sub edx, 2
jne 0x442805
lea ecx, [ebp + 0x5ab8]
add ecx, 0xfffffffe
lea ebx, [ebx]
mov ax, word [ecx + 2]
lea ecx, [ecx + 2]
test ax, ax
jne 0x4426e0
mov eax, dword [0x50ef44]
mov dword [ecx], eax
mov eax, dword [0x50ef48]
mov dword [ecx + 4], eax
mov ax, word [0x50ef4c]
jmp 0x442801
push 1
lea eax, [ebp - 0x18]
mov ecx, 0x562e30
push eax
lea eax, [ebp + 0x1650]
push eax
call fcn.0043d720
test al, al
je 0x44264e
mov eax, dword [ebp + 0x26e0]
or eax, dword [ebp + 0x26e4]
je 0x442a6e
push dword [ebp - 0x18]
mov ecx, 0x562e30
call fcn.0043d380
mov ecx, dword [ebp + 0x26e0]
push 0x64
mov dword [eax + 0x20], ecx
mov ecx, dword [ebp + 0x26e4]
mov dword [eax + 0x24], ecx
mov ecx, dword [ebp + 0x26e8]
mov dword [eax + 0x18], ecx
lea eax, [ebp + 0x59f0]
push eax
push dword [ebp - 0x1c]
lea eax, [ebp + 0x26e0]
mov ecx, edi
push eax
call fcn.00444f30
mov ebx, dword [sym.imp.USER32.dll_SendMessageW]
lea eax, [ebp + 0x59f0]
mov dword [ebp - 0x40], eax
lea eax, [ebp - 0x54]
push eax
push dword [ebp - 0x18]
mov dword [ebp - 0x4c], 4
push 0x1074
push dword [edi + 0x28]
call ebx
jmp 0x442a74
lea ecx, [ebp + 0x5ab8]
add ecx, 0xfffffffe
mov edi, edi
mov ax, word [ecx + 2]
lea ecx, [ecx + 2]
test ax, ax
jne 0x4427b0
mov eax, dword [0x50ef38]
mov dword [ecx], eax
mov eax, dword [0x50ef3c]
mov dword [ecx + 4], eax
mov ax, word [0x50ef40]
jmp 0x442801
lea ecx, [ebp + 0x5ab8]
add ecx, 0xfffffffe
lea esp, [esp]
mov ax, word [ecx + 2]
lea ecx, [ecx + 2]
test ax, ax
jne 0x4427e0
mov eax, dword [0x50ef2c]
mov dword [ecx], eax
mov eax, dword [0x50ef30]
mov dword [ecx + 4], eax
mov ax, word [0x50ef34]
mov word [ecx + 8], ax
mov eax, dword [ebp - 0x14]
mov ecx, 0x562e30
inc eax
mov dword [ebp - 0x14], eax
mov dword [ebp + 0x272c], eax
lea eax, [ebp + 0x1650]
push eax
call fcn.0043d430
mov dword [ebp - 0x70], eax
mov ecx, edi
lea eax, [ebp + 0x1650]
push eax
call fcn.0043ec70
lea eax, [ebp + 0x1650]
mov ecx, esi
sub ecx, eax
mov eax, 0x800
sar ecx, 1
sub eax, ecx
push eax
push esi
call fcn.004c4860
cmp word [ebp + 0x5ab8], 0
mov dword [ebp - 0x7c], esi
je 0x442873
push 0x800
lea eax, [ebp + 0x5ab8]
push eax
lea eax, [ebp + 0x1650]
push eax
call fcn.0048e6d0
lea eax, [ebp - 0x90]
push eax
push 0
push 0x104d
push dword [edi + 0x28]
call dword [sym.imp.USER32.dll_SendMessageW]
mov esi, eax
test bl, bl
jne 0x442949
mov edx, dword [ebp + 0x26d0]
mov ecx, dword [ebp + 0x26d4]
cmp edx, 0x7fffffff
jne 0x4428bc
cmp ecx, 0x7fffffff
jne 0x4428bc
mov dword [ebp + 0x5a54], 0x3f
jmp 0x4428cc
push 0x32
lea eax, [ebp + 0x5a54]
push eax
push ecx
push edx
call fcn.004a7a90
lea eax, [ebp + 0x5a54]
mov dword [ebp - 0x4c], 1
mov dword [ebp - 0x40], eax
lea eax, [ebp - 0x54]
push eax
push esi
push 0x1074
push dword [edi + 0x28]
call dword [sym.imp.USER32.dll_SendMessageW]
mov ecx, dword [ebp + 0x26d8]
mov eax, dword [ebp + 0x26dc]
cmp ecx, 0x7fffffff
jne 0x442916
cmp eax, 0x7fffffff
jne 0x442916
mov dword [ebp + 0x5a54], 0x3f
jmp 0x442926
push 0x32
lea edx, [ebp + 0x5a54]
push edx
push eax
push ecx
call fcn.004a7a90
lea eax, [ebp + 0x5a54]
mov dword [ebp - 0x4c], 2
mov dword [ebp - 0x40], eax
lea eax, [ebp - 0x54]
push eax
push esi
push 0x1074
push dword [edi + 0x28]
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [ebp + 0x26e0]
or eax, dword [ebp + 0x26e4]
je 0x442973
push 0x64
lea eax, [ebp + 0x5928]
mov ecx, edi
push eax
push dword [ebp - 0x1c]
lea eax, [ebp + 0x26e0]
push eax
call fcn.00444f30
jmp 0x44297c
xor eax, eax
mov word [ebp + 0x5928], ax
lea eax, [ebp + 0x5928]
mov dword [ebp - 0x4c], 4
mov dword [ebp - 0x40], eax
lea eax, [ebp - 0x54]
push eax
push esi
push 0x1074
push dword [edi + 0x28]
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [ebp + 0x26f4]
test eax, eax
je 0x442a28
test bl, bl
jne 0x442a28
cmp dword [ebp + 0x2718], 0
jne 0x442a28
cmp eax, 3
jne 0x4429da
push 0x41
lea eax, [ebp + 0x5a34]
push eax
push 0
push 0x20
lea eax, [ebp + 0x26f8]
push eax
call fcn.0048df10
jmp 0x442a01
cmp eax, 1
mov eax, str._04X
je 0x4429e9
mov eax, str._08X
push dword [ebp + 0x26f8]
push eax
lea eax, [ebp + 0x5a34]
push 0x41
push eax
call fcn.004028e0
add esp, 0x10
mov ebx, dword [sym.imp.USER32.dll_SendMessageW]
lea eax, [ebp + 0x5a34]
mov dword [ebp - 0x40], eax
lea eax, [ebp - 0x54]
push eax
push esi
push 0x1074
push dword [edi + 0x28]
mov dword [ebp - 0x4c], 5
call ebx
jmp 0x442a2e
mov ebx, dword [sym.imp.USER32.dll_SendMessageW]
mov al, byte [ebp - 0x10]
test al, al
je 0x442a74
push 0x800
lea eax, [ebp + 0xe8]
push eax
lea eax, [ebp + 0x1650]
push eax
call fcn.00478280
lea eax, [ebp + 0xe8]
mov dword [ebp - 0x4c], 6
mov dword [ebp - 0x40], eax
lea eax, [ebp - 0x54]
push eax
push esi
push 0x1074
push dword [edi + 0x28]
call ebx
jmp 0x442a74
mov ebx, dword [sym.imp.USER32.dll_SendMessageW]
push dword [ebp - 0x10]
lea eax, [ebp + 0x1650]
mov ecx, 0x55a850
push eax
call fcn.004051e0
test al, al
jne 0x442585
push 0x4411
push 0x2b4
lea eax, [ebp + 0x139c]
push eax
push 0x10
push 0x50ef68
call dword [sym.imp.SHELL32.dll_SHGetFileInfoW]
mov esi, eax
mov dword [ebp - 0x90], 5
test esi, esi
je 0x442ac8
mov dword [ebp - 0x90], 7
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp + 0x13a0]
push 0x10e8
mov dword [ebp - 0x8c], eax
lea eax, [ebp]
push 0
push eax
mov dword [ebp - 0x74], ecx
mov dword [ebp - 0x88], 0
mov dword [ebp - 0x7c], 0x50baf0
call fcn.004ee100
mov eax, dword [0x50baf0]
add esp, 0xc
mov dword [ebp], eax
mov ecx, 0x562e30
mov ax, word [0x50baf4]
mov word [ebp + 4], ax
lea eax, [ebp]
push eax
mov dword [ebp + 0x1098], 0x10
call fcn.0043d430
mov dword [ebp - 0x70], eax
lea eax, [ebp - 0x90]
push eax
push 0
push 0x104d
push dword [edi + 0x28]
call ebx
test esi, esi
je 0x442b61
lea ecx, [ebp + 0x15b0]
mov dword [ebp - 0x4c], 3
mov dword [ebp - 0x40], ecx
lea ecx, [ebp - 0x54]
push ecx
push eax
push 0x1074
push dword [edi + 0x28]
call ebx
mov ecx, 0x562e30
call fcn.0043d690
mov ecx, edi
call fcn.00444be0
mov eax, dword [ebp - 0x5c]
test eax, eax
je 0x442bae
cmp word [eax], 0
je 0x442bae
push eax
mov ecx, edi
call fcn.0043fc50
test al, al
jne 0x442bcc
push 0
push 0
push 0x1004
push dword [edi + 0x28]
call ebx
mov ecx, dword [ebp - 0x20]
test eax, eax
jle 0x442ba7
cmp ecx, eax
jl 0x442ba7
lea ecx, [eax - 1]
lea eax, [ebp - 0x54]
push eax
push ecx
jmp 0x442bb4
lea eax, [ebp - 0x54]
push eax
push 0
push 0x102b
push dword [edi + 0x28]
mov dword [ebp - 0x44], 3
mov dword [ebp - 0x48], 3
call ebx
push 0
push 1
push 0xb
push dword [edi + 0x28]
call ebx
push 0
push 0
push 0x102a
push dword [edi + 0x28]
call ebx
push 0
mov ecx, 0x55d0a8
call fcn.004a7910
mov ecx, edi
call fcn.004447a0
mov ecx, edi
call fcn.00444a10
mov ecx, 0x55f624
call fcn.004a9ac0
push 0
mov ecx, 0x55d0a8
call fcn.004a79e0
mov byte [ebp - 4], 0
lea ecx, [ebp - 0xa0]
call fcn.004c2ff0
mov dword [ebp - 4], 0xffffffff
mov eax, dword [0x539a60]
test eax, eax
jle 0x442c3a
dec eax
mov dword [0x539a60], eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0x5acc]
xor ecx, ebp
call fcn.004ebbd8
lea esp, [ebp + 0x5ad0]
pop ebp
ret 4