Function at 0x44f700
Capabilities:
Get file system object information

Disassembly:
push 0xffffffffffffffff
push 0x4d2bb6
mov eax, dword fs:[0]
push eax
mov eax, 0x49c8
call fcn.004bfc70
mov eax, dword [0x4ea93c]
xor eax, esp
mov dword [esp + 0x49c4], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x4ea93c]
xor eax, esp
push eax
lea eax, [esp + 0x49dc]
mov dword fs:[0], eax
mov eax, dword [esp + 0x49ec]
inc dword [0x53349c]
mov ebp, ecx
mov dword [esp + 0x60], eax
xor ebx, ebx
mov dword [esp + 0x49e4], ebx
mov ecx, dword [ebp]
mov edi, dword [sym.imp.USER32.dll_SendMessageW]
push 1
push 0xffffffffffffffff
push 0x100c
push ecx
call edi
push 1
mov ecx, 0x534548
mov dword [esp + 0x28], eax
call fcn.0047db70
push 0x1c4
call fcn.004744a0
push eax
mov ecx, 0x534548
call fcn.0047dbe0
mov edx, dword [ebp]
push ebx
push ebx
push 0xb
push edx
call edi
mov ecx, ebp
call fcn.0044e420
push 0x4011
push 0x2b4
lea eax, [esp + 0x1538]
push eax
push ebx
push str.file
call dword [sym.imp.SHELL32.dll_SHGetFileInfoW]
mov ecx, dword [ebp]
push eax
push 1
push 0x1003
push ecx
call edi
mov ecx, 0x53ed78
call fcn.004075a0
lea edx, [esp + 0x111c]
push edx
mov ecx, 0x540eb0
call fcn.00414e10
mov eax, dword [esp + 0x1230]
sub eax, 1
mov dword [esp + 0xac], 4
lea ecx, [ebx + 0x73]
je 0x44f81e
sub eax, 2
je 0x44f817
sub eax, 1
jne 0x44f823
lea ecx, [ebx + 0x76]
jmp 0x44f823
mov ecx, 0x75
jmp 0x44f823
mov ecx, 0x74
push ecx
call fcn.004744a0
mov ecx, dword [ebp]
mov dword [esp + 0xb8], eax
lea eax, [esp + 0xac]
push eax
push 5
push 0x1060
push ecx
call edi
push 0x800
lea edx, [esp + 0x29dc]
push edx
mov ecx, 0x540eb0
call fcn.00414dc0
lea eax, [esp + 0x29d8]
push eax
mov ecx, ebp
call fcn.0044b270
lea eax, [esp + 0x29d8]
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
cmp cx, bx
jne 0x44f875
sub eax, edx
sar eax, 1
mov esi, eax
je 0x44f889
inc esi
lea ecx, [esp + 0x29d8]
push ecx
mov ecx, 0x53ed68
call fcn.004849b0
push 1
push str.AllowUppercase
push str.FileList
mov dword [esp + 0x24], ebx
call fcn.0046bce0
push ebx
push str.FlatView
test eax, eax
push str.FileList
setne byte [esp + 0x23]
call fcn.0046bce0
push ebx
push str.ShowSeconds
test eax, eax
push str.FileList
setne byte [esp + 0x28]
call fcn.0046bce0
test eax, eax
setne dl
xor eax, eax
push 0x1f4
lea ecx, [esp + 0xa0]
mov byte [esp + 0x24], dl
mov word [esp + 0x39dc], ax
call fcn.0049e180
mov byte [esp + 0x49e4], 1
mov ecx, dword [esp + 0x1c]
push ecx
lea edx, [esp + 0xd0]
push edx
mov ecx, 0x540eb0
call fcn.00414ae0
test al, al
je 0x44fee1
lea eax, [esp + esi*2 + 0xcc]
mov dword [esp + 0x64], eax
test byte [esp + 0x18], 0x1f
jne 0x44f947
lea ecx, [esp + 0x9c]
call fcn.0049d8f0
mov eax, dword [esp + 0x10dc]
mov ebx, dword [esp + 0x64]
shr eax, 4
and al, 1
cmp byte [esp + 0x1c], 0
mov byte [esp + 0x16], al
je 0x44f975
lea ecx, [esp + 0xcc]
push ecx
call fcn.0045f900
mov ebx, eax
mov al, byte [esp + 0x16]
test al, al
je 0x44fa0d
cmp byte [esp + 0x1c], 0
jne 0x44fa0d
test byte [esp + 0x10e8], 0x20
je 0x44fac6
lea ecx, [esp + 0x39d8]
mov eax, ebx
nop
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x44f9c6
test dx, dx
je 0x44f9c2
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x44f9c6
add eax, 4
add ecx, 4
test dx, dx
jne 0x44f9a0
xor eax, eax
jmp 0x44f9cb
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x44fec0
lea edx, [esp + 0x39d8]
mov eax, ebx
sub edx, ebx
mov edi, edi
movzx ecx, word [eax]
mov word [edx + eax], cx
add eax, 2
test cx, cx
jne 0x44f9e0
push 1
push 0
lea edx, [esp + 0xd4]
push edx
mov ecx, 0x55e9b8
call fcn.0044ae40
test al, al
jne 0x44fec0
mov ecx, dword [esp + 0x18]
xor edx, edx
mov word [esp + 0x2834], dx
mov edx, dword [esp + 0x10e8]
mov dword [esp + 0x68], 7
mov dword [esp + 0x6c], ecx
mov dword [esp + 0x84], 0xffffffff
mov dword [esp + 0x70], 0
test dl, 1
je 0x44fa6f
lea eax, [esp + 0x2834]
add eax, 0xfffffffe
mov cx, word [eax + 2]
add eax, 2
test cx, cx
jne 0x44fa50
mov ecx, dword [0x4d9d14]
mov dword [eax], ecx
mov cx, word [0x4d9d18]
mov word [eax + 4], cx
and edx, 6
mov eax, edx
je 0x44fbbc
sub eax, 2
je 0x44fb8a
sub eax, 2
je 0x44fb55
sub eax, 2
jne 0x44fbbc
lea eax, [esp + 0x2834]
add eax, 0xfffffffe
nop
mov cx, word [eax + 2]
add eax, 2
test cx, cx
jne 0x44faa0
mov edx, dword [0x4d9d08]
mov ecx, dword [0x4d9d0c]
mov dword [eax], edx
mov dx, word [0x4d9d10]
jmp 0x44fbb5
push 1
lea eax, [esp + 0x2c]
push eax
lea ecx, [esp + 0xd4]
push ecx
mov ecx, 0x55e9b8
call fcn.0044ae40
test al, al
je 0x44fa0d
mov edx, dword [esp + 0x28]
push edx
mov ecx, 0x55e9b8
call fcn.0044aeb0
mov ecx, dword [esp + 0x10e0]
mov dword [eax + 0x1c], ecx
mov edx, dword [esp + 0x10e4]
mov ecx, dword [esp + 0x20]
mov dword [eax + 0x20], edx
push 0x64
lea eax, [esp + 0x284c]
push eax
push ecx
lea edx, [esp + 0x10ec]
push edx
mov ecx, ebp
call fcn.0044cf00
mov edx, dword [esp + 0x28]
lea ecx, [esp + 0x2c]
push ecx
lea eax, [esp + 0x284c]
push edx
mov dword [esp + 0x48], eax
mov eax, dword [ebp]
push 0x1074
push eax
mov dword [esp + 0x44], 4
call edi
jmp 0x44fec0
lea eax, [esp + 0x2834]
add eax, 0xfffffffe
nop
mov cx, word [eax + 2]
add eax, 2
test cx, cx
jne 0x44fb60
mov ecx, dword [0x4d9cfc]
mov edx, dword [0x4d9d00]
mov dword [eax], ecx
mov cx, word [0x4d9d04]
mov dword [eax + 4], edx
mov word [eax + 8], cx
jmp 0x44fbbc
lea eax, [esp + 0x2834]
add eax, 0xfffffffe
mov cx, word [eax + 2]
add eax, 2
test cx, cx
jne 0x44fb94
mov edx, dword [0x4d9cf0]
mov ecx, dword [0x4d9cf4]
mov dword [eax], edx
mov dx, word [0x4d9cf8]
mov dword [eax + 4], ecx
mov word [eax + 8], dx
mov eax, dword [esp + 0x18]
inc eax
mov dword [esp + 0x18], eax
mov dword [esp + 0x1110], eax
lea eax, [esp + 0xcc]
push eax
mov ecx, 0x55e9b8
call fcn.0044ab20
lea ecx, [esp + 0xcc]
push ecx
mov ecx, ebp
mov dword [esp + 0x8c], eax
call fcn.0044b270
cmp byte [esp + 0x17], 0
jne 0x44fc01
push ebx
call fcn.004526c0
mov eax, ebx
mov dword [esp + 0x7c], ebx
lea edx, [eax + 2]
lea ebx, [ebx]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x44fc10
sub eax, edx
sar eax, 1
mov edi, eax
lea eax, [esp + 0x2834]
mov ecx, eax
lea ebx, [ebx]
mov dx, word [eax]
add eax, 2
test dx, dx
jne 0x44fc30
lea edi, [ebx + edi*2]
sub eax, ecx
mov esi, ecx
add edi, 0xfffffffe
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x44fc45
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
lea edx, [esp + 0x68]
push edx
and ecx, 3
push 0
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp]
mov edi, dword [sym.imp.USER32.dll_SendMessageW]
push 0x104d
push eax
call edi
mov bl, byte [esp + 0x16]
mov esi, eax
test bl, bl
jne 0x44fd6e
mov eax, dword [esp + 0x10cc]
mov ecx, dword [esp + 0x10d0]
cmp eax, 0x7fffffff
jne 0x44fcc9
cmp ecx, 0x7fffffff
jne 0x44fcc9
xor eax, eax
jmp 0x44fcb0
movzx ecx, word [eax + 0x4d9cec]
mov word [esp + eax + 0x2848], cx
add eax, 2
test cx, cx
jne 0x44fcb0
jmp 0x44fcda
push 0x32
lea edx, [esp + 0x284c]
push edx
push ecx
push eax
call fcn.00452400
mov edx, dword [ebp]
lea ecx, [esp + 0x2c]
push ecx
push esi
push 0x1074
lea eax, [esp + 0x2854]
push edx
mov dword [esp + 0x44], 1
mov dword [esp + 0x50], eax
call edi
mov eax, dword [esp + 0x10d4]
mov ecx, dword [esp + 0x10d8]
cmp eax, 0x7fffffff
jne 0x44fd39
cmp ecx, 0x7fffffff
jne 0x44fd39
xor eax, eax
lea ecx, [ecx]
movzx ecx, word [eax + 0x4d9cec]
mov word [esp + eax + 0x2848], cx
add eax, 2
test cx, cx
jne 0x44fd20
jmp 0x44fd4a
push 0x32
lea edx, [esp + 0x284c]
push edx
push ecx
push eax
call fcn.00452400
mov edx, dword [ebp]
lea ecx, [esp + 0x2c]
push ecx
push esi
push 0x1074
lea eax, [esp + 0x2854]
push edx
mov dword [esp + 0x44], 2
mov dword [esp + 0x50], eax
call edi
cmp dword [esp + 0x10e0], 0
jne 0x44fda9
cmp dword [esp + 0x10e4], 0
jne 0x44fda9
xor eax, eax
jmp 0x44fd90
movzx ecx, word [eax + 0x4d69fc]
mov word [esp + eax + 0x2910], cx
add eax, 2
test cx, cx
jne 0x44fd90
jmp 0x44fdc7
mov ecx, dword [esp + 0x20]
push 0x64
lea eax, [esp + 0x2914]
push eax
push ecx
lea edx, [esp + 0x10ec]
push edx
mov ecx, ebp
call fcn.0044cf00
mov edx, dword [ebp]
lea ecx, [esp + 0x2c]
push ecx
push esi
push 0x1074
lea eax, [esp + 0x291c]
push edx
mov dword [esp + 0x44], 4
mov dword [esp + 0x50], eax
call edi
mov eax, dword [esp + 0x10ec]
test eax, eax
je 0x44fe6d
test bl, bl
jne 0x44fe6d
cmp eax, 3
jne 0x44fe1c
push 0x41
lea eax, [esp + 0x284c]
push eax
push 0
push 0x20
lea ecx, [esp + 0x1100]
push ecx
call fcn.0047e1a0
jmp 0x44fe49
cmp eax, 1
mov eax, str._04X
je 0x44fe2b
mov eax, str._08X
mov edx, dword [esp + 0x10f0]
push edx
push eax
lea eax, [esp + 0x2850]
push eax
mov edx, 0x41
call fcn.0043a6e0
add esp, 0xc
mov eax, dword [ebp]
lea edx, [esp + 0x2c]
push edx
push esi
push 0x1074
lea ecx, [esp + 0x2854]
push eax
mov dword [esp + 0x44], 5
mov dword [esp + 0x50], ecx
call edi
cmp byte [esp + 0x1c], 0
je 0x44feb2
push 0x800
lea ecx, [esp + 0x17e8]
push ecx
lea edx, [esp + 0xd4]
push edx
call fcn.0045fba0
mov edx, dword [ebp]
lea ecx, [esp + 0x2c]
push ecx
push esi
push 0x1074
lea eax, [esp + 0x17f0]
push edx
mov dword [esp + 0x44], 6
mov dword [esp + 0x50], eax
call edi
mov eax, dword [esp + 0x18]
mov edi, dword [sym.imp.USER32.dll_SendMessageW]
mov dword [esp + 0x18], eax
mov ecx, dword [esp + 0x1c]
push ecx
lea edx, [esp + 0xd0]
push edx
mov ecx, 0x540eb0
call fcn.00414ae0
test al, al
jne 0x44f934
xor ebx, ebx
push 0x4411
push 0x2b4
lea eax, [esp + 0x1284]
push eax
push 0x10
push 0x4d9ccc
call dword [sym.imp.SHELL32.dll_SHGetFileInfoW]
mov esi, eax
mov dword [esp + 0x68], 5
cmp esi, ebx
je 0x44ff16
mov dword [esp + 0x68], 7
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1280]
push 0x1050
lea eax, [esp + 0x17e8]
push ebx
push eax
mov dword [esp + 0x78], ecx
mov dword [esp + 0x90], edx
mov dword [esp + 0x7c], ebx
mov dword [esp + 0x88], 0x4d6bcc
call fcn.004c05a0
add esp, 0xc
xor eax, eax
jmp 0x44ff60
movzx ecx, word [eax + 0x4d6bcc]
mov word [esp + eax + 0x17e4], cx
add eax, 2
cmp cx, bx
jne 0x44ff60
lea ecx, [esp + 0x17e4]
push ecx
mov ecx, 0x55e9b8
mov dword [esp + 0x27f8], 0x10
call fcn.0044ab20
lea edx, [esp + 0x68]
push edx
push ebx
mov dword [esp + 0x90], eax
mov eax, dword [ebp]
push 0x104d
push eax
call edi
cmp esi, ebx
mov esi, 3
je 0x44ffd5
lea edx, [esp + 0x2c]
push edx
push eax
mov eax, dword [ebp]
push 0x1074
lea ecx, [esp + 0x149c]
push eax
mov dword [esp + 0x44], esi
mov dword [esp + 0x50], ecx
call edi
mov ecx, 0x55e9b8
call fcn.0044ae10
mov ecx, ebp
call fcn.0044ea80
mov eax, dword [esp + 0x60]
cmp eax, ebx
je 0x45002c
cmp word [eax], bx
je 0x45002c
push eax
mov ecx, ebp
call fcn.0044e7b0
test al, al
jne 0x450045
mov ecx, dword [ebp]
push ebx
push ebx
push 0x1004
push ecx
call edi
cmp eax, ebx
mov ecx, dword [esp + 0x24]
jle 0x45001b
cmp ecx, eax
jl 0x45001b
lea ecx, [eax - 1]
mov eax, dword [ebp]
lea edx, [esp + 0x2c]
push edx
push ecx
push 0x102b
push eax
jmp 0x45003b
mov edx, dword [ebp]
lea ecx, [esp + 0x2c]
push ecx
push ebx
push 0x102b
push edx
mov dword [esp + 0x4c], esi
mov dword [esp + 0x48], esi
call edi
mov eax, dword [ebp]
push ebx
push 1
push 0xb
push eax
call edi
mov ecx, dword [ebp]
push ebx
push ebx
push 0x102a
push ecx
call edi
push ebx
mov ecx, 0x534548
call fcn.0047dbe0
mov ecx, ebp
call fcn.0044d230
mov ecx, ebp
call fcn.0044b750
mov ecx, 0x5448dc
call fcn.00482060
push ebx
mov ecx, 0x534548
call fcn.0047db70
mov byte [esp + 0x49e4], 0
lea ecx, [esp + 0x9c]
call fcn.0049d930
mov dword [esp + 0x49e4], 0xffffffff
cmp dword [0x53349c], ebx
jle 0x4500b8
dec dword [0x53349c]
mov ecx, dword [esp + 0x49dc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x49c4]
xor ecx, esp
call fcn.004bfc52
add esp, 0x49d4
ret 4