Function at 0x4803d0
Capabilities:
Get file attributes

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x4be837
mov eax, dword fs:[0]
push eax
sub esp, 0xb0
mov eax, dword [0x4fc504]
xor eax, esp
mov dword [esp + 0xa8], eax
push ebx
push esi
push edi
mov eax, dword [0x4fc504]
xor eax, esp
push eax
lea eax, [esp + 0xc0]
mov dword fs:[0], eax
mov edi, dword [ebp + 8]
lea esi, [ecx + 0x254]
cmp dword [esi + 0x14], 8
jb 0x480423
mov eax, dword [esi]
jmp 0x480425
mov eax, esi
xor ecx, ecx
push ecx
push 0x80
push 3
push ecx
push ecx
push SysReAllocString
push eax
call dword [sym.imp.kernel32.dll_CreateFileW]
mov ebx, eax
cmp ebx, 0xffffffff
je 0x4805a7
lea eax, [esp + 0x1c]
push eax
push 0
push 0
push ebx
call dword [sym.imp.kernel32.dll_GetFileTime]
push ebx
call dword [sym.imp.kernel32.dll_CloseHandle]
lea eax, [esp + 0x14]
push eax
lea eax, [esp + 0x20]
push eax
call dword [sym.imp.kernel32.dll_FileTimeToLocalFileTime]
lea eax, [esp + 0x3c]
push eax
lea eax, [esp + 0x18]
push eax
call dword [sym.imp.kernel32.dll_FileTimeToSystemTime]
test eax, eax
jne 0x480493
push 0x10
push eax
lea eax, [esp + 0x44]
push eax
call fcn.004936a0
add esp, 0xc
push 0x64
lea eax, [esp + 0x50]
push eax
push 0
lea eax, [esp + 0x48]
push eax
push 0
push 0x400
call dword [sym.imp.kernel32.dll_GetTimeFormatA]
or ebx, 0xffffffff
lea eax, [esp + 0x4c]
push ebx
push ebx
push eax
push str.FileTime
mov ecx, edi
call fcn.0045194d
push 0x64
lea eax, [esp + 0x50]
push eax
push 0
lea eax, [esp + 0x48]
push eax
push 1
push 0x400
call dword [sym.imp.kernel32.dll_GetDateFormatA]
push ebx
push ebx
lea eax, [esp + 0x54]
mov ecx, edi
push eax
push str.FileDate
call fcn.0045194d
cmp dword [esi + 0x14], 8
jb 0x4804fa
mov esi, dword [esi]
push esi
call dword [sym.imp.kernel32.dll_GetFileAttributesW]
mov ebx, eax
mov dword [esp + 0x38], 0xf
xor eax, eax
mov dword [esp + 0x34], eax
mov byte [esp + 0x24], al
mov dword [esp + 0xc8], eax
test bl, 1
je 0x480538
mov esi, 0x4ed6dc
push esi
call fcn.004914f0
pop ecx
push eax
push esi
lea ecx, [esp + 0x2c]
call main
test bl, 2
je 0x480554
mov esi, 0x4ed6e0
push esi
call fcn.004914f0
pop ecx
push eax
push esi
lea ecx, [esp + 0x2c]
call main
test bl, 4
je 0x480570
mov esi, 0x4ed6e4
push esi
call fcn.004914f0
pop ecx
push eax
push esi
lea ecx, [esp + 0x2c]
call main
cmp dword [esp + 0x38], 0x10
mov eax, dword [esp + 0x24]
jae 0x48057f
lea eax, [esp + 0x24]
or ebx, 0xffffffff
mov ecx, edi
push ebx
push ebx
push eax
push 0x4ed6e8
call fcn.0045194d
push 0
push 1
lea ecx, [esp + 0x2c]
mov dword [esp + 0xd0], ebx
call main
jmp 0x4805dc
or ebx, 0xffffffff
mov esi, 0x4d3406
push ebx
push ebx
push esi
push str.FileTime
mov ecx, edi
call fcn.0045194d
push ebx
push ebx
push esi
push str.FileDate
mov ecx, edi
call fcn.0045194d
push ebx
push ebx
push esi
push 0x4ed6e8
mov ecx, edi
call fcn.0045194d
push 0x64
lea eax, [esp + 0x50]
mov esi, 0x400
push eax
push 0
push 0
push 1
push esi
call dword [sym.imp.kernel32.dll_GetDateFormatA]
push ebx
push ebx
lea eax, [esp + 0x54]
mov ecx, edi
push eax
push str.CurrentDate
call fcn.0045194d
push 0x64
lea eax, [esp + 0x50]
push eax
xor eax, eax
push eax
push eax
push eax
push esi
call dword [sym.imp.kernel32.dll_GetTimeFormatA]
push ebx
push ebx
lea eax, [esp + 0x54]
mov ecx, edi
push eax
push str.CurrentTime
call fcn.0045194d
mov ecx, dword [esp + 0xc0]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0xa8]
xor ecx, esp
call fcn.004906a0
mov esp, ebp
pop ebp
ret 4