Function at 0x100225a6
Capabilities:
Get file system object information

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10068d7c
mov eax, dword fs:[0]
push eax
mov eax, 0x4f1c
call fcn.10049a7e
mov eax, dword [0x1001c40c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, dword [ebp + 8]
xor eax, eax
mov dword [ebp - 0x4f18], eax
mov dword [ebp - 4], eax
mov dword [ebp - 0x4f20], eax
mov dword [ebp - 0x4f0c], eax
push eax
push eax
push eax
push eax
push ebx
lea eax, [ebp - 0x4f0c]
push eax
mov byte [ebp - 4], 2
call fcn.100299b9
test eax, eax
jns 0x10022628
mov eax, dword [ebp - 0x4f0c]
mov byte [ebp - 4], 1
test eax, eax
je 0x10022a5c
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x10022a5c
lea eax, [ebp - 0x4f18]
push eax
push dword [ebp - 0x4f0c]
push ebx
call fcn.10022a7a
mov esi, dword [ebp - 0x4f18]
test al, al
je 0x10022a3e
mov ecx, 0x1046
lea eax, [ebp - 0x4c44]
mov dword [ebp - 0x4c48], ecx
mov dword [ebp - 0x4c54], 0x100a14bc
mov dword [ebp - 0x4c50], eax
mov dword [ebp - 0x4c4c], ecx
push 0
lea ecx, [ebp - 0x4c54]
mov byte [ebp - 4], 3
call fcn.10023440
push esi
mov byte [ebp - 4], 4
call fcn.10022bc2
test al, al
je 0x10022a25
push dword [0x100700fc]
call fcn.100270fc
test eax, eax
je 0x10022a25
lea eax, [ebp - 0x4c54]
push eax
push ecx
mov eax, esp
mov dword [ebp - 0x4f14], esp
mov dword [eax], esi
call fcn.1004b9f4
test al, al
je 0x10022a25
push dword [ebp - 0x4f0c]
call fcn.100232e6
test al, al
je 0x10022a25
mov eax, dword [ebp - 0x4f0c]
push 0x20
lea edx, [ebp - 0x4f24]
push edx
lea edx, [ebp - 0x3ae8]
push edx
mov dword [ebp - 0x4f24], 0x823
mov ecx, dword [eax]
push eax
call dword [ecx + 0x24]
test eax, eax
js 0x10022a25
mov eax, dword [ebp - 0x4f0c]
mov ecx, dword [eax]
xor edx, edx
push edx
push edx
push edx
lea edx, [ebp - 0x3ae8]
push edx
push eax
call dword [ecx + 0x10]
test eax, eax
js 0x10022a25
lea eax, [ebp - 0x3ae8]
push eax
call sub.MSOHEV.DLL_Ordinal_28
mov edi, eax
push esi
mov dword [ebp - 0x4f20], edi
call dword [sym.imp.SHLWAPI.dll_PathFindExtensionW]
push 0
push eax
push 0xa
push 0x100700d0
mov dword [ebp - 0x4f14], eax
call fcn.1004bc78
test al, al
jne 0x1002279a
lea eax, [ebp - 0x4c44]
cmp dword [ebp - 0x4c50], eax
je 0x10022773
push dword [ebp - 0x4c50]
call fcn.10022074
mov eax, dword [ebp - 0x4f0c]
mov byte [ebp - 4], 1
test eax, eax
je 0x10022787
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
test edi, edi
je 0x10022a52
push edi
call sub.MSOHEV.DLL_Ordinal_5
jmp 0x10022a52
mov ecx, 0x102
lea eax, [ebp - 0x3bec]
mov dword [ebp - 0x3bf0], ecx
mov dword [ebp - 0x3bfc], 0x100a14bc
mov dword [ebp - 0x3bf8], eax
mov dword [ebp - 0x3bf4], ecx
push 0
lea ecx, [ebp - 0x3bfc]
mov byte [ebp - 4], 5
call fcn.10023440
lea eax, [ebp - 0x3bfc]
push eax
push 0
push dword [ebp - 0x4f14]
mov byte [ebp - 4], 6
push Ordinal_4
call fcn.10022f2b
test al, al
jne 0x10022815
lea eax, [ebp - 0x3bec]
cmp dword [ebp - 0x3bf8], eax
je 0x1002275a
push dword [ebp - 0x3bf8]
call fcn.10022074
jmp 0x1002275a
call fcn.100230af
test al, al
je 0x100227f3
lea eax, [ebp - 0x4f0d]
push eax
push ebx
mov byte [ebp - 0x4f0d], 0
call fcn.10023238
test al, al
je 0x100227f3
lea edx, [ebp - 0x4f28]
push edx
mov eax, 0x823
mov dword [ebp - 0x4f1c], eax
mov dword [ebp - 0x4f28], eax
mov eax, dword [ebp - 0x4f0c]
mov ecx, dword [eax]
lea edx, [ebp - 0x2aa0]
push edx
push eax
call dword [ecx + 0x50]
test eax, eax
js 0x100227f3
mov eax, dword [ebp - 0x4f0c]
mov ecx, dword [eax]
lea edx, [ebp - 0x4f1c]
push edx
lea edx, [ebp - 0x1a58]
push edx
push eax
call dword [ecx + 0x60]
test eax, eax
js 0x100227f3
xor ebx, ebx
push 0x2b0
lea eax, [ebp - 0x4f04]
push ebx
push eax
mov dword [ebp - 0x4f08], ebx
call sub.MSVCR100.dll_memset
add esp, 0xc
push 0x410
push 0x2b4
lea eax, [ebp - 0x4f08]
push eax
push 0x80
push dword [ebp - 0x4f14]
call dword [sym.imp.SHELL32.dll_SHGetFileInfoW]
lea ecx, [ebp - 0x1a58]
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x100228cf
sub ecx, edx
sar ecx, 1
cmp ecx, 0x28
jbe 0x100228fd
push 0x10003c04
lea eax, [ebp - 0x1a0e]
push 0x7fe
push eax
call dword [sym.imp.MSVCR100.dll_wcscpy_s]
add esp, 0xc
cmp byte [ebp - 0x4f0d], bl
jne 0x100229df
lea eax, [ebp - 0x2aa0]
push eax
lea eax, [ebp - 0x4cf4]
push eax
lea eax, [ebp - 0x1a58]
push eax
push 3
push 0x4000001
push dword [0x100a1ef0]
lea eax, [ebp - 0xa10]
push 0x400
push eax
call fcn.10031f19
add esp, 0x20
push 0x100
lea eax, [ebp - 0x210]
push eax
push 0x4000000
push dword [0x100a1ef0]
call fcn.10031a03
push 0x50134
lea eax, [ebp - 0x210]
push eax
lea eax, [ebp - 0xa10]
push eax
push ebx
call dword [sym.imp.USER32.dll_MessageBoxW]
sub eax, 6
je 0x100229df
dec eax
lea eax, [ebp - 0x3bec]
jne 0x100227f9
cmp dword [ebp - 0x3bf8], eax
je 0x1002299a
push dword [ebp - 0x3bf8]
call fcn.10022074
lea eax, [ebp - 0x4c44]
cmp dword [ebp - 0x4c50], eax
je 0x100229b3
push dword [ebp - 0x4c50]
call fcn.10022074
mov eax, dword [ebp - 0x4f0c]
mov byte [ebp - 4], 1
test eax, eax
je 0x100229c7
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
test edi, edi
je 0x100229d1
push edi
call sub.MSOHEV.DLL_Ordinal_5
test esi, esi
je 0x100229db
push esi
call fcn.10041f95
mov al, 1
jmp 0x10022a5e
push ebx
push dword [ebp - 0x3bf8]
push edi
call sub.MSOHEV.DLL_Ordinal_10
test eax, eax
je 0x100227f3
push 0x260
push edi
push 0xffffffffffffffff
call sub.MSOHEV.DLL_Ordinal_4
test eax, eax
jne 0x10022a1a
push 0x240
push edi
push 0xffffffffffffffff
call sub.MSOHEV.DLL_Ordinal_4
test eax, eax
je 0x100227f3
lea eax, [ebp - 0x3bec]
jmp 0x10022987
lea eax, [ebp - 0x4c44]
cmp dword [ebp - 0x4c50], eax
je 0x10022a3e
push dword [ebp - 0x4c50]
call fcn.10022074
mov eax, dword [ebp - 0x4f0c]
mov byte [ebp - 4], 1
test eax, eax
je 0x10022a52
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
test esi, esi
je 0x10022a5c
push esi
call fcn.10041f95
xor al, al
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.10048c09
leave
ret 4