Function at 0x4f17dc
Capabilities:
Get file system object information

Disassembly:
xor esi, dword [edx]
insb byte es:[edi], dx
insb byte es:[edi], dx
add byte [eax], al
add byte [eax], al
inc edi
je 0x4f1628
jb 0x4f1649
arpl word [ebp + 0x73], sp
jae 0x4f1628
insd dword es:[edi], dx
popal
inc esi
imul ebp, dword [ebp + 0x4e], 0x41656d61
add byte [eax], al
add byte [eax], al
jo 0x4f1665
popal
jo 0x4f165e
insb byte es:[edi], dx
insb byte es:[edi], dx
add byte [eax], al
add byte [edi + 0x6f], dl
ja 0x4f1636
xor al, 0x44
imul esi, dword [ebx + 0x61], 0x57656c62
outsd dx, dword [esi]
ja 0x4f1642
xor al, 0x46
jae 0x4f1662
imul esi, dword fs:[edx + 0x65], 0x6f697463
outsb dx, byte [esi]
add byte [eax], al
push edi
outsd dx, dword [esi]
ja 0x4f1656
xor al, 0x52
jbe 0x4f168a
jb 0x4f169b
push edi
outsd dx, dword [esi]
ja 0x4f1661
xor al, 0x46
jae 0x4f1681
imul esi, dword fs:[edx + 0x65], 0x6f697463
outsb dx, byte [esi]
add byte [eax], al
add byte [eax + eax], ah
add byte [eax], al
dec eax
add byte [ebx], cl
inc ebp
add byte [ecx], bl
pop edi
imul ebp, dword [edi + 0x6e], 0x24000000
add byte [eax], al
add byte [eax], cl
dec ebx
add byte [ebp], al
pop ecx
add byte [edi], bl
dec esp
add byte [edi], cl
inc ebx
add byte [ecx], al
dec esp
add byte [edi], bl
add byte [eax + eax + 0x4f], cl
add byte [ebx], al
inc ecx
add byte [eax + eax + 0x5f], cl
add byte [ebp], cl
inc ecx
add byte [ebx], al
dec eax
add byte [ecx], cl
dec esi
dec ebp
add byte [ecx], al
inc ebx
add byte [eax], cl
dec ecx
add byte [esi], cl
add byte [ebp], al
add byte [eax], al
add byte [eax], al
and al, byte [eax]
add byte [eax], al
dec eax
add byte [ebx], cl
inc ebp
add byte [ecx], bl
pop edi
add byte [ebx], al
push ebp
add byte [edx], dl
push edx
add byte [ebp], al
dec esi
inc ebp
add byte [eax], al
add byte [eax], al
add byte [edx], ah
add byte [eax], al
add byte [eax], cl
dec ebx
add byte [ebp], al
pop ecx
add byte [edi], bl
inc ebx
add byte [ebp], dl
push edx
add byte [edx], dl
inc ebp
add byte [esi], cl
push esp
add byte [edi], bl
push ebp
add byte [ebx], dl
add byte [eax + eax + 0x5f], dl
add byte [ebp], dl
push ebx
add byte [ebp], al
push edx
add byte [eax], al
add byte [edx], ah
add byte [eax], al
add byte [eax], cl
dec ebx
add byte [ebp], al
pop ecx
inc ebp
add byte [edx], dl
add byte [eax], al
and al, byte [eax]
add byte [eax], al
dec eax
add byte [ebx], cl
inc ebp
add byte [ecx], bl
pop edi
add byte [ebx], al
dec esp
add byte [ecx], al
push ebx
add byte [ebx], dl
inc ebp
add byte [ebx], dl
pop edi
add byte [edx], dl
dec edi
add byte [edi], cl
push esp
add byte [eax], al
add byte [edi], bl
inc ebx
add byte [eax + eax + 0x41], cl
add byte [ebx], dl
push ebx
add byte [ebp], al
push ebx
add byte [edi], bl
push edx
add byte [edi], cl
dec edi
add byte [eax + eax], dl
add byte [eax + eax], dl
add byte [eax], al
dec eax
add byte [ebx], cl
inc ebp
add byte [ecx], bl
pop edi
add byte [ebp], dl
push ebx
add byte [ebp], al
push edx
add byte [ebx], dl
add byte [eax], al
add byte [eax], al
sbb al, 0
add byte [eax], al
pop esp
add byte [edx], dl
inc ebp
add byte [edi], al
dec ecx
add byte [ebx], dl
push esp
add byte [edx], dl
pop ecx
add byte [eax + eax + 0x55], bl
add byte [ebx], dl
inc ebp
add byte [edx], dl
add byte [eax], al
add byte [eax], al
and byte [eax], al
add byte [eax], al
pop esp
add byte [edx], dl
inc ebp
add byte [edi], al
dec ecx
add byte [ebx], dl
push esp
add byte [edx], dl
pop ecx
add byte [eax + eax + 0x55], bl
add byte [ebx], dl
inc ebp
add byte [edx], dl
pop esp
add byte [ebx], dl
add byte [eax], al
add byte [eax], al
adc byte [eax], al
add byte [eax], al
pop edi
add byte [ebx], al
insb byte es:[edi], dx
add byte [ecx], ah
jae 0x4f172e
jae 0x4f1730
add byte gs:[ebx], dh
add byte [eax], al
add byte [eax], al
and al, byte [eax]
add byte [eax], al
pop esp
add byte [ebx], dl
outsd dx, dword [esi]
add byte [esi], ah
je 0x4f1746
ja 0x4f1748
popal
add byte [edx], dh
add byte gs:[eax + eax + 0x43], bl
add byte [eax + eax + 0x61], ch
add byte [ebx], dh
jae 0x4f175a
add byte gs:[ebx], dh
add byte [eax], al
and al, byte [eax]
add byte [eax], al
pop esp
add byte [edx], dl
inc ebp
add byte [edi], al
dec ecx
add byte [ebx], dl
push esp
add byte [edx], dl
pop ecx
add byte [eax + eax + 0x4d], bl
add byte [ecx], al
inc ebx
add byte [eax], cl
dec ecx
add byte [esi], cl
inc ebp
add byte [eax], al
add byte [ecx - 0x15f3c], al
add esp, 0xfffffea0
cmp dword [0x6b3150], 0
jne 0x4f17ed
call sub.kernel32.dll_GetVersion
shr eax, 0x20
setne byte [0x6b314c]
push 0x4f17f4
push 0x4f1808
call sub.kernel32.dll_GetModuleHandleA_2
push eax
call sub.kernel32.dll_GetProcAddress_1
test eax, eax
je 0x4f17cd
push 0x6b3150
push 0x6b3154
call eax
jmp 0x4f17ed
push 0x4011
push 0x160
lea eax, [esp + 8]
push eax
push 0x10
push 0x4f1808
call sub.shell32.dll_SHGetFileInfoA
mov dword [0x6b3150], eax
add esp, 0x160
ret