Function at 0x40ab80
Capabilities:
Get file attributes
Get file system object information

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x59319a
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x260
push ebx
push esi
push edi
mov dword [ebp - 0x10], ecx
mov dword [ebp - 4], 0
lea ecx, [ebp + 8]
call fcn.004027f0
test eax, eax
jne 0x40ac52
mov ecx, dword [ebp - 0x10]
add ecx, 0x7a0
call fcn.00410df0
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0xffffffff
je 0x40ac3a
mov eax, dword [ebp - 0x14]
push eax
mov ecx, dword [ebp - 0x10]
add ecx, 0x7a0
call fcn.00570c71
cmp eax, 1
jne 0x40ac38
push 0
mov ecx, dword [ebp - 0x14]
push ecx
lea edx, [ebp - 0x1b0]
push edx
mov ecx, dword [ebp - 0x10]
add ecx, 0x7a0
call fcn.00570bcc
mov dword [ebp - 0x1dc], eax
mov eax, dword [ebp - 0x1dc]
mov dword [ebp - 0x1e0], eax
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x1e0]
push ecx
lea ecx, [ebp + 8]
call fcn.005773e9
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x1b0]
call fcn.005772b0
jmp 0x40ac52
mov edx, dword [ebp - 0x10]
add edx, 0x668
push edx
mov ecx, dword [ebp - 0x10]
add ecx, 0x728
call fcn.00574177
push 0x5a8e6c
lea eax, [ebp + 8]
push eax
call fcn.004087f0
and eax, 0xff
test eax, eax
je 0x40acd7
mov ecx, dword [ebp - 0x10]
add ecx, 0x668
push ecx
mov edx, esp
mov dword [ebp - 0x1b4], esp
push ecx
mov ecx, edx
call fcn.00577025
mov dword [ebp - 0x1e4], eax
lea eax, [ebp - 0x1b8]
push eax
mov ecx, dword [ebp - 0x10]
call fcn.0040bf40
mov dword [ebp - 0x1e8], eax
mov ecx, dword [ebp - 0x1e8]
mov dword [ebp - 0x1ec], ecx
mov byte [ebp - 4], 2
mov edx, dword [ebp - 0x1ec]
push edx
mov ecx, dword [ebp - 0x10]
add ecx, 0x668
call fcn.005773e9
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x1b8]
call fcn.005772b0
jmp 0x40ad7a
push 0x5a8800
lea eax, [ebp + 8]
push eax
call fcn.00406c80
and eax, 0xff
test eax, eax
je 0x40ad7a
lea ecx, [ebp + 8]
push ecx
mov ecx, dword [ebp - 0x10]
add ecx, 0x668
call fcn.005776c8
push 0x5a825c
push 1
lea edx, [ebp - 0x1c0]
push edx
mov ecx, dword [ebp - 0x10]
add ecx, 0x668
call fcn.0056f93b
mov dword [ebp - 0x1f0], eax
mov eax, dword [ebp - 0x1f0]
mov dword [ebp - 0x1f4], eax
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x1f4]
push ecx
call fcn.00406c80
mov byte [ebp - 0x1bc], al
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x1c0]
call fcn.005772b0
mov edx, dword [ebp - 0x1bc]
and edx, 0xff
test edx, edx
je 0x40ad7a
push 0x5a825c
mov ecx, dword [ebp - 0x10]
add ecx, 0x668
call fcn.0057768c
mov ecx, dword [ebp - 0x10]
add ecx, 0x668
call fcn.004027f0
test eax, eax
jne 0x40ada8
mov ecx, dword [ebp - 0x10]
call fcn.0040a6c0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 8]
call fcn.005772b0
jmp 0x40b244
mov ecx, dword [ebp - 0x10]
add ecx, 0x668
call fcn.00401bd0
push eax
push 0
mov ecx, dword [ebp - 0x10]
add ecx, 0x728
call fcn.00410930
push 0
mov ecx, dword [ebp - 0x10]
add ecx, 0x728
call fcn.00407880
mov ecx, dword [ebp - 0x10]
add ecx, 0x7a0
call fcn.00410b20
push 0
mov ecx, dword [ebp - 0x10]
add ecx, 0x7a0
call fcn.00410ca0
test eax, eax
je 0x40adfb
jmp 0x40ade5
push 0xffffffffffffffff
push 0xc8
push 0
push 0x5a8e34
push 0
mov ecx, dword [ebp - 0x10]
add ecx, 0x7a0
call fcn.00570a53
push 0xffffffffffffffff
push 0x64
push 0
push 0x5a8e64
push 1
mov ecx, dword [ebp - 0x10]
add ecx, 0x7a0
call fcn.00570a53
push 0xffffffffffffffff
push 0x64
push 0
push 0x5a8e2c
push 2
mov ecx, dword [ebp - 0x10]
add ecx, 0x7a0
call fcn.00570a53
push 0xffffffffffffffff
push 0x73
push 0
push 0x5a8e58
push 3
mov ecx, dword [ebp - 0x10]
add ecx, 0x7a0
call fcn.00570a53
mov dword [ebp - 0x18], 0
push 1
push 0x10
push 0x5a7b30
call fcn.0040a080
add esp, 8
push eax
push 0x5a8e6c
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x1f8], eax
mov ecx, dword [ebp - 0x1f8]
push ecx
mov edx, dword [ebp - 0x18]
add edx, 1
mov dword [ebp - 0x18], edx
mov ecx, dword [ebp - 0x10]
add ecx, 0x7a0
call fcn.00410ae0
push eax
mov ecx, dword [ebp - 0x10]
add ecx, 0x7a0
call fcn.00410aa0
mov dword [ebp - 0x1c], 0
jmp 0x40aed0
mov eax, dword [ebp - 0x1c]
add eax, 1
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 2
jge 0x40b21a
lea ecx, [ebp - 0x38]
call fcn.00448f7e
mov byte [ebp - 4], 4
push 0
push 0x5a8e54
mov ecx, dword [ebp - 0x10]
add ecx, 0x668
push ecx
lea edx, [ebp - 0x1c4]
push edx
call fcn.00577545
mov dword [ebp - 0x1fc], eax
mov eax, dword [ebp - 0x1fc]
mov dword [ebp - 0x200], eax
mov byte [ebp - 4], 5
mov ecx, dword [ebp - 0x200]
call fcn.00401bd0
push eax
lea ecx, [ebp - 0x38]
call fcn.00449041
mov dword [ebp - 0x3c], eax
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x1c4]
call fcn.005772b0
cmp dword [ebp - 0x3c], 0
je 0x40b209
lea ecx, [ebp - 0x38]
call fcn.00449261
mov dword [ebp - 0x3c], eax
lea ecx, [ebp - 0x38]
call fcn.00449228
test eax, eax
je 0x40af62
jmp 0x40af3f
lea ecx, [ebp - 0x38]
call fcn.0040d470
neg eax
sbb eax, eax
inc eax
xor ecx, ecx
cmp eax, dword [ebp - 0x1c]
sete cl
mov byte [ebp - 0x40], cl
mov edx, dword [ebp - 0x40]
and edx, 0xff
test edx, edx
jne 0x40af89
jmp 0x40af3f
lea eax, [ebp - 0x1c8]
push eax
lea ecx, [ebp - 0x38]
call fcn.00449330
mov dword [ebp - 0x204], eax
mov ecx, dword [ebp - 0x204]
mov dword [ebp - 0x208], ecx
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x208]
call fcn.00401bd0
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
push eax
lea edx, [ebp - 0x1cc]
push edx
lea ecx, [ebp - 0x38]
call fcn.00449459
mov dword [ebp - 0x20c], eax
mov eax, dword [ebp - 0x20c]
mov dword [ebp - 0x210], eax
mov byte [ebp - 4], 7
mov ecx, dword [ebp - 0x210]
call fcn.00401bd0
push eax
call fcn.0040a080
add esp, 8
push eax
lea ecx, [ebp - 0x1d0]
push ecx
lea ecx, [ebp - 0x38]
call fcn.00449459
mov dword [ebp - 0x214], eax
mov edx, dword [ebp - 0x214]
mov dword [ebp - 0x218], edx
mov byte [ebp - 4], 8
mov ecx, dword [ebp - 0x218]
call fcn.00401bd0
push eax
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x21c], eax
mov ecx, dword [ebp - 0x21c]
push ecx
mov edx, dword [ebp - 0x18]
add edx, 1
mov dword [ebp - 0x18], edx
mov ecx, dword [ebp - 0x10]
add ecx, 0x7a0
call fcn.00410ae0
mov dword [ebp - 0x44], eax
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x1d0]
call fcn.005772b0
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x1cc]
call fcn.005772b0
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x1c8]
call fcn.005772b0
lea ecx, [ebp - 0x38]
call fcn.0040d470
push eax
mov eax, dword [ebp - 0x44]
push eax
mov ecx, dword [ebp - 0x10]
add ecx, 0x7a0
call fcn.00410aa0
push 0x410
push 0x160
lea ecx, [ebp - 0x1a4]
push ecx
push 0x80
lea edx, [ebp - 0x1d4]
push edx
lea ecx, [ebp - 0x38]
call fcn.00449459
mov dword [ebp - 0x220], eax
mov eax, dword [ebp - 0x220]
mov dword [ebp - 0x224], eax
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x224]
call fcn.00401bd0
push eax
call dword [sym.imp.SHELL32.dll_SHGetFileInfoA]
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x1d4]
call fcn.005772b0
lea ecx, [ebp - 0x94]
push ecx
push 2
mov edx, dword [ebp - 0x44]
push edx
mov ecx, dword [ebp - 0x10]
add ecx, 0x7a0
call fcn.00570ba1
lea ecx, [ebp - 0x1a8]
call fcn.00401ba0
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x38]
call fcn.004494b8
mov esi, eax
shr esi, 0xa
lea ecx, [ebp - 0x38]
call fcn.004494b8
xor edx, edx
mov ecx, 0x400
div ecx
neg edx
sbb edx, edx
neg edx
add esi, edx
push esi
push str._10d_KB
lea edx, [ebp - 0x1a8]
push edx
call fcn.0056fdd7
add esp, 0xc
lea ecx, [ebp - 0x1a8]
call fcn.00401bd0
push eax
push 1
mov eax, dword [ebp - 0x44]
push eax
mov ecx, dword [ebp - 0x10]
add ecx, 0x7a0
call fcn.00570ba1
lea ecx, [ebp - 0x1ac]
call fcn.004194a0
lea ecx, [ebp - 0x1ac]
push ecx
lea ecx, [ebp - 0x38]
call fcn.004491d2
push str._Y__m__d__H:_M
lea edx, [ebp - 0x1d8]
push edx
lea ecx, [ebp - 0x1ac]
call fcn.00570636
mov dword [ebp - 0x228], eax
mov eax, dword [ebp - 0x228]
mov dword [ebp - 0x22c], eax
mov byte [ebp - 4], 0xb
mov ecx, dword [ebp - 0x22c]
call fcn.00401bd0
push eax
push 3
mov ecx, dword [ebp - 0x44]
push ecx
mov ecx, dword [ebp - 0x10]
add ecx, 0x7a0
call fcn.00570ba1
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x1d8]
call fcn.005772b0
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x1a8]
call fcn.005772b0
jmp 0x40af3f
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x38]
call fcn.00448fbb
jmp 0x40aec7
mov edx, dword [ebp - 0x10]
mov eax, dword [edx + 0x668]
push eax
push 0x5a8df0
mov ecx, dword [ebp - 0x10]
push ecx
call fcn.0040cad0
add esp, 0xc
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 8]
call fcn.005772b0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4