Function at 0x443390
Capabilities:
Get file system object information

Disassembly:
push 0xffffffffffffffff
push 0x4b53f6
mov eax, dword fs:[0]
push eax
mov eax, 0x2958
call fcn.004a4220
mov eax, dword [0x4ca3b0]
xor eax, esp
mov dword [esp + 0x2954], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x4ca3b0]
xor eax, esp
push eax
lea eax, [esp + 0x296c]
mov dword fs:[0], eax
mov eax, dword [esp + 0x297c]
inc dword [0x4e8434]
mov ebp, ecx
mov dword [esp + 0x34], eax
xor edi, edi
mov dword [esp + 0x2974], edi
mov ecx, dword [ebp]
mov ebx, dword [sym.imp.USER32.dll_SendMessageW]
push 1
push 0xffffffffffffffff
push 0x100c
push ecx
call ebx
push 1
mov ecx, 0x4e8cd8
mov dword [esp + 0x28], eax
call fcn.00469a10
push 0x1c4
call fcn.00460760
push eax
mov ecx, 0x4e8cd8
call fcn.00469a80
mov edx, dword [ebp]
push edi
push edi
push 0xb
push edx
call ebx
mov ecx, ebp
call fcn.00442090
push 0x4011
push 0x2b4
lea eax, [esp + 0x1504]
push eax
push edi
push str.file
call dword [sym.imp.SHELL32.dll_SHGetFileInfoW]
mov ecx, dword [ebp]
push eax
push 1
push 0x1003
push ecx
call ebx
mov ecx, 0x4ee468
call fcn.00407070
lea edx, [esp + 0x13ac]
push edx
mov ecx, 0x4eeda0
call fcn.00413040
push 0x400
lea eax, [esp + 0x216c]
push eax
mov ecx, 0x4eeda0
call fcn.00412ff0
lea ecx, [esp + 0x2168]
push ecx
mov ecx, ebp
call fcn.0043f110
lea eax, [esp + 0x2168]
lea ecx, [eax + 2]
mov edi, edi
mov dx, word [eax]
add eax, 2
cmp dx, di
jne 0x4434b0
sub eax, ecx
sar eax, 1
mov esi, eax
je 0x4434c4
inc esi
lea edx, [esp + 0x2168]
push edx
mov ecx, 0x4ee450
call fcn.00470230
push 1
push str.AllowUppercase
push 0x4b8cc0
mov dword [esp + 0x24], edi
mov byte [esp + 0x22], 0
call fcn.0045afb0
push edi
push 0x4b99b4
test eax, eax
push 0x4b8cc0
setne byte [esp + 0x23]
call fcn.0045afb0
push edi
push str.ShowSeconds
test eax, eax
push 0x4b8cc0
setne byte [esp + 0x28]
call fcn.0045afb0
test eax, eax
setne al
xor ecx, ecx
mov word [esp + 0x1968], cx
push 0x1f4
lea ecx, [esp + 0x64]
mov byte [esp + 0x2c], al
call fcn.00484ac0
mov byte [esp + 0x2974], 1
mov edx, dword [esp + 0x1c]
push edx
lea eax, [esp + 0x9c]
push eax
mov ecx, 0x4eeda0
call fcn.004126c0
test al, al
je 0x443b6e
lea ecx, [esp + esi*2 + 0x98]
mov dword [esp + 0x30], ecx
test byte [esp + 0x18], 0x1f
jne 0x443581
lea ecx, [esp + 0x60]
call fcn.00484280
mov eax, dword [esp + 0x8a8]
mov esi, dword [esp + 0x30]
shr eax, 4
and al, 1
cmp byte [esp + 0x1c], 0
mov dword [esp + 0x2c], esi
mov byte [esp + 0x15], al
je 0x4435b7
lea edx, [esp + 0x98]
push edx
call fcn.004513d0
mov esi, eax
mov dword [esp + 0x2c], eax
mov al, byte [esp + 0x15]
test al, al
je 0x44364f
cmp byte [esp + 0x1c], 0
jne 0x44364f
test dword [esp + 0x8b4], 0x10000
je 0x443706
lea ecx, [esp + 0x1968]
mov eax, esi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x44360a
cmp dx, di
je 0x443606
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x44360a
add eax, 4
add ecx, 4
cmp dx, di
jne 0x4435e4
xor eax, eax
jmp 0x44360f
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, edi
je 0x443b4f
lea edx, [esp + 0x1968]
mov eax, esi
sub edx, esi
movzx ecx, word [eax]
mov word [edx + eax], cx
add eax, 2
cmp cx, di
jne 0x443622
push 1
push edi
lea eax, [esp + 0xa0]
push eax
push edi
mov ecx, 0x4fea40
call fcn.0043ec40
test al, al
jne 0x443b4f
mov ecx, dword [esp + 0x18]
xor edx, edx
mov word [esp + 0x17b0], dx
mov edx, dword [esp + 0x8b4]
mov dword [esp + 0x70], 7
mov dword [esp + 0x74], ecx
mov dword [esp + 0x8c], 0xffffffff
mov dword [esp + 0x78], edi
test dl, 1
je 0x4436af
lea eax, [esp + 0x17b0]
add eax, 0xfffffffe
mov edi, edi
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x443690
mov ecx, dword [0x4bb824]
mov dword [eax], ecx
mov cx, word [0x4bb828]
mov word [eax + 4], cx
and edx, 6
mov eax, edx
je 0x44380c
sub eax, 2
je 0x4437da
sub eax, 2
je 0x44379f
sub eax, 2
jne 0x44380c
lea eax, [esp + 0x17b0]
add eax, 0xfffffffe
nop
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4436e0
mov edx, dword [0x4bb818]
mov ecx, dword [0x4bb81c]
mov dword [eax], edx
mov dx, word [0x4bb820]
jmp 0x443805
push 1
lea ecx, [esp + 0x24]
push ecx
lea edx, [esp + 0xa0]
push edx
push edi
mov ecx, 0x4fea40
call fcn.0043ec40
test al, al
je 0x44364f
mov eax, dword [esp + 0x20]
push eax
mov ecx, 0x4fea40
call fcn.0043ed10
mov ecx, dword [esp + 0x8ac]
mov dword [eax + 0x1c], ecx
mov edx, dword [esp + 0x8b0]
mov ecx, dword [esp + 0x28]
mov dword [eax + 0x20], edx
push 0x64
lea eax, [esp + 0x17dc]
push eax
push ecx
lea edx, [esp + 0x8b8]
push edx
mov ecx, ebp
call fcn.00440980
mov edx, dword [esp + 0x20]
lea ecx, [esp + 0x17b0]
push ecx
lea eax, [esp + 0x17dc]
push edx
mov dword [esp + 0x17cc], eax
mov eax, dword [ebp]
push 0x1074
push eax
mov dword [esp + 0x17c8], 4
call ebx
jmp 0x443b4f
lea eax, [esp + 0x17b0]
add eax, 0xfffffffe
lea esp, [esp]
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4437b0
mov ecx, dword [0x4bb80c]
mov edx, dword [0x4bb810]
mov dword [eax], ecx
mov cx, word [0x4bb814]
mov dword [eax + 4], edx
mov word [eax + 8], cx
jmp 0x44380c
lea eax, [esp + 0x17b0]
add eax, 0xfffffffe
mov cx, word [eax + 2]
add eax, 2
cmp cx, di
jne 0x4437e4
mov edx, dword [0x4bb800]
mov ecx, dword [0x4bb804]
mov dword [eax], edx
mov dx, word [0x4bb808]
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 + 0x8bc], eax
lea eax, [esp + 0x98]
push eax
mov ecx, 0x4fea40
call fcn.0043e980
lea ecx, [esp + 0x98]
push ecx
mov ecx, ebp
mov dword [esp + 0x94], eax
call fcn.0043f110
cmp byte [esp + 0x17], 0
jne 0x443851
push esi
call fcn.00446330
mov eax, esi
mov dword [esp + 0x84], esi
lea edx, [eax + 2]
lea ecx, [ecx]
mov cx, word [eax]
add eax, 2
cmp cx, di
jne 0x443860
sub eax, edx
sar eax, 1
mov edi, eax
lea eax, [esp + 0x17b0]
mov ecx, eax
lea ebx, [ebx]
mov dx, word [eax]
add eax, 2
test dx, dx
jne 0x443880
mov edx, dword [esp + 0x2c]
lea edi, [edx + edi*2]
sub eax, ecx
mov esi, ecx
add edi, 0xfffffffe
lea esp, [esp]
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x4438a0
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
lea eax, [esp + 0x70]
push eax
and ecx, 3
push 0
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [ebp]
push 0x104d
push ecx
call ebx
cmp byte [esp + 0x15], 0
mov esi, eax
jne 0x4439d7
mov eax, dword [esp + 0x898]
mov ecx, dword [esp + 0x89c]
cmp eax, 0x7fffffff
jne 0x443919
cmp ecx, 0x7fffffff
jne 0x443919
xor eax, eax
jmp 0x443900
movzx ecx, word [eax + 0x4bb7fc]
mov word [esp + eax + 0x17d8], cx
add eax, 2
test cx, cx
jne 0x443900
jmp 0x44392a
push 0x32
lea edx, [esp + 0x17dc]
push edx
push ecx
push eax
call fcn.00445fe0
mov edx, dword [ebp]
lea ecx, [esp + 0x17b0]
push ecx
push esi
push 0x1074
lea eax, [esp + 0x17e4]
push edx
mov dword [esp + 0x17c8], 1
mov dword [esp + 0x17d4], eax
call ebx
mov eax, dword [esp + 0x8a0]
mov ecx, dword [esp + 0x8a4]
cmp eax, 0x7fffffff
jne 0x443999
cmp ecx, 0x7fffffff
jne 0x443999
xor eax, eax
jmp 0x443980
movzx ecx, word [eax + 0x4bb7fc]
mov word [esp + eax + 0x17d8], cx
add eax, 2
test cx, cx
jne 0x443980
jmp 0x4439aa
push 0x32
lea edx, [esp + 0x17dc]
push edx
push ecx
push eax
call fcn.00445fe0
mov edx, dword [ebp]
lea ecx, [esp + 0x17b0]
push ecx
push esi
push 0x1074
lea eax, [esp + 0x17e4]
push edx
mov dword [esp + 0x17c8], 2
mov dword [esp + 0x17d4], eax
call ebx
cmp dword [esp + 0x8ac], 0
jne 0x443a09
cmp dword [esp + 0x8b0], 0
jne 0x443a09
xor eax, eax
lea ecx, [ecx]
movzx ecx, word [eax + 0x4b8d0c]
mov word [esp + eax + 0x18a0], cx
add eax, 2
test cx, cx
jne 0x4439f0
jmp 0x443a27
mov ecx, dword [esp + 0x28]
push 0x64
lea eax, [esp + 0x18a4]
push eax
push ecx
lea edx, [esp + 0x8b8]
push edx
mov ecx, ebp
call fcn.00440980
mov edx, dword [ebp]
lea ecx, [esp + 0x17b0]
push ecx
push esi
push 0x1074
lea eax, [esp + 0x18ac]
mov edi, 4
push edx
mov dword [esp + 0x17c8], edi
mov dword [esp + 0x17d4], eax
call ebx
mov al, byte [esp + 0x8b4]
test al, 8
je 0x443abe
cmp byte [esp + 0x15], 0
jne 0x443abe
test al, 0x10
mov eax, str._04X
jne 0x443a75
mov eax, str._08X
mov ecx, dword [esp + 0x8b8]
push ecx
push eax
lea edx, [esp + 0x17b8]
push edx
mov edx, 0xa
call fcn.00495900
mov edx, dword [ebp]
add esp, 0xc
lea ecx, [esp + 0x38]
push ecx
push esi
push 0x1074
lea eax, [esp + 0x17bc]
push edx
mov dword [esp + 0x50], 5
mov dword [esp + 0x5c], eax
call ebx
mov al, byte [esp + 0x8b4]
cmp byte [esp + 0x16], 0
jne 0x443b00
test al, 0x10
mov eax, 0
setne al
mov dword [esp + 0x17b0], edi
add eax, 0x73
push eax
call fcn.00460760
mov edx, dword [ebp]
lea ecx, [esp + 0x17b0]
push ecx
push 5
push 0x1060
push edx
mov dword [esp + 0x17cc], eax
call ebx
mov byte [esp + 0x16], 1
cmp byte [esp + 0x1c], 0
je 0x443b45
push 0x400
lea eax, [esp + 0xb80]
push eax
lea ecx, [esp + 0xa0]
push ecx
call fcn.00451900
mov ecx, dword [ebp]
lea eax, [esp + 0x38]
push eax
push esi
push 0x1074
lea edx, [esp + 0xb88]
push ecx
mov dword [esp + 0x50], 6
mov dword [esp + 0x5c], edx
call ebx
mov edx, dword [esp + 0x18]
mov dword [esp + 0x18], edx
xor edi, edi
mov eax, dword [esp + 0x1c]
push eax
lea ecx, [esp + 0x9c]
push ecx
mov ecx, 0x4eeda0
call fcn.004126c0
test al, al
jne 0x443571
push 0x4411
push 0x2b4
lea edx, [esp + 0x8d0]
push edx
push 0x10
push 0x4bb7dc
call dword [sym.imp.SHELL32.dll_SHGetFileInfoW]
mov esi, eax
mov dword [esp + 0x17b0], 5
cmp esi, edi
je 0x443ba9
mov dword [esp + 0x17b0], 7
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x8cc]
push 0x830
lea edx, [esp + 0xb80]
push edi
push edx
mov dword [esp + 0x17c0], eax
mov dword [esp + 0x17d8], ecx
mov dword [esp + 0x17c4], edi
mov dword [esp + 0x17d0], 0x4b8bac
call fcn.004a4250
add esp, 0xc
xor eax, eax
lea esp, [esp]
movzx ecx, word [eax + 0x4b8bac]
mov word [esp + eax + 0xb7c], cx
add eax, 2
cmp cx, di
jne 0x443bf0
lea eax, [esp + 0xb7c]
push eax
mov ecx, 0x4fea40
mov dword [esp + 0x1390], 0x10
call fcn.0043e980
mov edx, dword [ebp]
lea ecx, [esp + 0x17b0]
push ecx
push edi
push 0x104d
push edx
mov dword [esp + 0x17e0], eax
call ebx
cmp esi, edi
mov esi, 3
je 0x443c68
lea edx, [esp + 0x38]
push edx
push eax
mov eax, dword [ebp]
push 0x1074
lea ecx, [esp + 0xae8]
push eax
mov dword [esp + 0x50], esi
mov dword [esp + 0x5c], ecx
call ebx
mov ecx, 0x4fea40
call fcn.0043ebf0
mov ecx, ebp
call fcn.004426e0
mov eax, dword [esp + 0x34]
cmp eax, edi
je 0x443cbf
cmp word [eax], di
je 0x443cbf
push eax
mov ecx, ebp
call fcn.004424d0
test eax, eax
jne 0x443cd8
mov ecx, dword [ebp]
push edi
push edi
push 0x1004
push ecx
call ebx
cmp eax, edi
mov ecx, dword [esp + 0x24]
jle 0x443cae
cmp ecx, eax
jl 0x443cae
lea ecx, [eax - 1]
mov eax, dword [ebp]
lea edx, [esp + 0x38]
push edx
push ecx
push 0x102b
push eax
jmp 0x443cce
mov edx, dword [ebp]
lea ecx, [esp + 0x38]
push ecx
push edi
push 0x102b
push edx
mov dword [esp + 0x58], esi
mov dword [esp + 0x54], esi
call ebx
mov eax, dword [ebp]
push edi
push 1
push 0xb
push eax
call ebx
mov ecx, dword [ebp]
push edi
push edi
push 0x102a
push ecx
call ebx
push edi
mov ecx, 0x4e8cd8
call fcn.00469a80
mov ecx, ebp
call fcn.00440d10
mov ecx, ebp
call fcn.00440f30
mov ecx, 0x4f0c78
call fcn.0046d8c0
push edi
mov ecx, 0x4e8cd8
call fcn.00469a10
mov byte [esp + 0x2974], 0
lea ecx, [esp + 0x60]
call fcn.004842c0
mov dword [esp + 0x2974], 0xffffffff
cmp dword [0x4e8434], edi
jle 0x443d48
dec dword [0x4e8434]
mov ecx, dword [esp + 0x296c]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x2954]
xor ecx, esp
call fcn.004a39f3
add esp, 0x2964
ret 4