Function at 0x10052bab
Capabilities:
Get file attributes

Disassembly:
mov eax, 0x1008c62c
call fcn.1008aa68
sub esp, 0x54
push ebx
push esi
push edi
push 1
pop edi
push 0
mov dword [ebp - 0x1c], 4
mov esi, ecx
mov dword [ebp - 0x1c], 0xfffffff1
pop ebx
jmp 0x10052c94
mov dword [ebp - 0x14], 3
lea ecx, [ebp - 0x3c]
mov dword [ebp - 0x18], 0xf23e93d0
push edi
call fcn.1001737a
mov dword [ebp - 0x18], ebx
jmp 0x10052c02
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x3c]
mov dword [eax + ecx*4], 0xf4a8fe24
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x10052bf2
mov byte [ebp - 0xd], bl
cmp byte [ebp - 0xd], 0
je 0x10052c17
push ebx
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
mov dword [ebp - 0x14], ebx
jmp 0x10052c83
xor edx, edx
mov dword [ebp - 0x24], 0xd60a2215
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
cmp ecx, eax
mov eax, dword [ebp - 0x14]
setl dl
xor ecx, ecx
cmp edx, eax
setl cl
xor eax, eax
cmp ecx, 0xf545
setle al
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x14]
sub eax, 0x88146cde
neg eax
sbb eax, eax
xor ecx, ecx
inc eax
cmp eax, 0x9bac
mov eax, dword [ebp - 0x18]
setne cl
xor edx, edx
cmp ecx, eax
setle dl
sub edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x14]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
mov eax, dword [ebp - 0x3c]
setge cl
mov dword [eax], ecx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0xc
jl 0x10052c1c
lea ecx, [ebp - 0x3c]
call fcn.10017bab
dec dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 0xffffffeb
jge 0x10052bd6
push esi
push edi
push 0x62a1
call fcn.1004c20b
add esp, 0xc
lea ecx, [ebp - 0x54]
push 2
call fcn.1001737a
push 2
lea ecx, [ebp - 0x48]
mov dword [ebp - 4], ebx
call fcn.1001737a
push 2
mov dword [ebp - 0x1c], 0xb03629aa
mov dword [ebp - 0x14], ebx
pop edx
jmp 0x10052cdf
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x54]
mov dword [eax + ecx*4], edi
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edx
jl 0x10052cd3
mov dword [ebp - 0x14], ebx
jmp 0x10052cf9
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x48]
mov dword [eax + ecx*4], 0x8a137b18
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edx
jl 0x10052ce9
mov eax, dword [ebp - 0x54]
mov ecx, 0xc6a53d06
mov dword [eax], ecx
mov eax, dword [ebp - 0x48]
mov dword [eax], ecx
mov dword [ebp - 0x1c], edi
cmp dword [ebp - 0x1c], ebx
jl 0x10052d24
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x24], 0x3ee32743
dec dword [ebp - 0x1c]
jns 0x10052d15
lea ecx, [ebp - 0x48]
call fcn.10017bab
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x54]
call fcn.10017bab
push esi
call fcn.1003297b
pop ecx
push 4
lea ecx, [ebp - 0x30]
mov ebx, eax
call fcn.1001737a
push edi
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], edi
call fcn.1001737a
mov dword [ebp - 0x18], 0xffffffff
xor esi, esi
mov dword [ebp - 0x18], 9
mov dword [ebp - 0x14], esi
jmp 0x10052d7c
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x30]
mov dword [eax + ecx*4], 0x1265
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 4
jl 0x10052d6c
mov dword [ebp - 0x14], esi
jmp 0x10052d97
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x60]
mov dword [eax + ecx*4], 0xff93f8de
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x10052d87
mov dword [ebp - 0x14], esi
jmp 0x10052daf
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x20], 0x84ca67b1
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x10052da1
mov edi, dword [ebp - 0x30]
xor ecx, ecx
mov edx, dword [edi + 4]
lea eax, [edx + 0xfff6]
cmp edx, eax
setne cl
xor eax, eax
inc eax
cmp eax, ecx
sbb eax, eax
neg eax
cmp eax, edx
jle 0x10052ddc
test edx, edx
jne 0x10052ddc
mov ecx, esi
jmp 0x10052de1
xor eax, eax
lea ecx, [eax + 1]
xor eax, eax
cmp edx, ecx
setl al
xor ecx, ecx
cmp edx, eax
setge cl
xor eax, eax
cmp ecx, edx
setge al
cmp eax, edx
jge 0x10052e86
xor ecx, ecx
mov esi, 0xffff
mov dword [ebp - 0x14], esi
mov dword [ebp - 0x1c], 0
mov eax, dword [ebp - 0x14]
cmp dword [edi + 4], eax
mov eax, dword [ebp - 0x14]
sete cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x60]
setge dl
xor ecx, ecx
mov dword [eax], edx
mov dword [ebp - 0x18], edx
xor edx, edx
mov eax, dword [ebp - 0x18]
inc edx
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x30]
cmp dword [eax], edx
setne cl
cmp edx, ecx
sbb eax, eax
xor ecx, ecx
inc eax
cmp eax, dword [edi + 4]
setl cl
mov dword [ebp - 0x18], ecx
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x1c]
xor eax, eax
cmp dword [edi + 4], eax
setg al
sub eax, 2
neg eax
sbb eax, eax
inc eax
sub esi, eax
mov dword [ebp - 0x20], esi
mov dword [ebp - 0x20], 0
jmp 0x10052eb7
mov dword [ebp - 0x18], 3
cmp dword [ebp - 0x18], esi
jl 0x10052eb7
mov byte [ebp - 0xd], 0
cmp byte [ebp - 0xd], 0
je 0x10052eb2
push 0
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_RectVisible]
dec dword [ebp - 0x18]
jns 0x10052e92
lea ecx, [ebp - 0x60]
call fcn.10017bab
lea ecx, [ebp - 0x30]
call fcn.10017bab
mov ecx, dword [ebp - 0xc]
mov eax, ebx
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret