Function at 0x10016ca0
Capabilities:
Get file attributes

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100814f4
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x1c4
push esi
push edi
and dword [ebp - 0x54], 0
mov eax, dword [0x10673d74]
and eax, 1
jne 0x10016cf8
mov eax, dword [0x10673d74]
or eax, 1
mov dword [0x10673d74], eax
and dword [ebp - 4], 0
mov ecx, 0x10673d2c
call fcn.10017f65
push 0x1008323e
call fcn.10069d46
pop ecx
or dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp + 0xc]
call fcn.10011803
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x108], 0xfffffffd
mov dword [ebp - 0xd4], 0xfffffffd
push 4
lea ecx, [ebp - 0x13c]
call fcn.10017c5d
mov dword [ebp - 4], 1
mov dword [ebp - 0xf8], 0xb7ab61b5
mov dword [ebp - 0x100], 1
mov dword [ebp - 0x11c], 0xfffffff6
mov dword [ebp - 0x104], 0xfffd
mov dword [ebp - 0x154], 0
mov dword [ebp - 0x38], 0
jmp 0x10016d6d
mov eax, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 4
jge 0x10016d89
push dword [ebp - 0x38]
lea ecx, [ebp - 0x13c]
call fcn.10017cfb
mov dword [eax], 4
jmp 0x10016d66
push 1
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0x100]
push eax
lea eax, [ebp - 0x108]
push eax
lea eax, [ebp - 0x11c]
push eax
lea eax, [ebp - 0x13c]
push eax
lea eax, [ebp - 0xf8]
push eax
push 0x40a2
lea eax, [ebp - 0xd4]
push eax
call fcn.10016576
add esp, 0x24
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x13c]
call fcn.10017cdf
cmp dword [ebp - 0x44], 6
jae 0x10016e8f
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0xfc], eax
lea eax, [ebp - 0x140]
push eax
mov ecx, 0x10673d2c
call fcn.10017dd5
push eax
lea eax, [ebp - 0xfc]
push eax
lea eax, [ebp - 0x158]
push eax
mov ecx, 0x10673d2c
call fcn.10017de3
mov ecx, eax
call fcn.10017df8
movzx eax, al
test eax, eax
je 0x10016e8f
mov dword [ebp - 0x150], 0xea75c96
mov byte [ebp - 0x25], 0
movzx eax, byte [ebp - 0x25]
test eax, eax
je 0x10016e41
push 0
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
mov byte [ebp - 0x1e], 0
movzx eax, byte [ebp - 0x1e]
test eax, eax
je 0x10016e5b
push 0x5bc2
push 1
call fcn.100166db
pop ecx
pop ecx
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0xdc], eax
lea eax, [ebp - 0xdc]
push eax
mov ecx, 0x10673d2c
call fcn.10017fb9
push eax
mov ecx, dword [ebp + 8]
call fcn.10017a12
mov eax, dword [ebp - 0x54]
or eax, 1
mov dword [ebp - 0x54], eax
mov eax, dword [ebp + 8]
jmp 0x1001773f
mov dword [ebp - 0x40], 1
mov dword [ebp - 0x58], 0
jmp 0x10016ea6
mov eax, dword [ebp - 0x58]
inc eax
mov dword [ebp - 0x58], eax
cmp dword [ebp - 0x58], 4
jge 0x10016ebc
mov eax, dword [ebp - 0x58]
mov dword [ebp + eax*4 - 0x1d0], 0x2403
jmp 0x10016e9f
mov byte [ebp - 0x20], 0
movzx eax, byte [ebp - 0x20]
test eax, eax
je 0x10016ee1
push 0
push 0x4ba
push 0x75d
push 0x33e1
call fcn.10016857
add esp, 0x10
mov dword [ebp - 0x40], 0
jmp 0x10016ef1
mov eax, dword [ebp - 0x40]
inc eax
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 3
jg 0x10016f13
mov byte [ebp - 0x22], 0
movzx eax, byte [ebp - 0x22]
test eax, eax
je 0x10016f11
push 1
push 0x785d
call fcn.10016808
pop ecx
pop ecx
jmp 0x10016eea
lea ecx, [ebp - 0x170]
call fcn.10017a3a
mov dword [ebp - 4], 2
mov eax, dword [ebp - 0x44]
xor edx, edx
push 2
pop ecx
div ecx
test edx, edx
jne 0x10017616
mov dword [ebp - 0xe4], 7
mov dword [ebp - 0x124], 0x24f84b81
mov dword [ebp - 0x30], 0xfffffffa
mov dword [ebp - 0xc8], 0xf365653d
push 1
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x124]
push eax
lea eax, [ebp - 0xe4]
push eax
call fcn.10016857
add esp, 0x10
mov dword [ebp - 0x30], 0
jmp 0x10016f88
mov eax, dword [ebp - 0x30]
dec eax
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 0xfffffffb
jle 0x10016fd7
mov dword [ebp - 0x50], 0
jmp 0x10016f9e
mov eax, dword [ebp - 0x50]
inc eax
mov dword [ebp - 0x50], eax
cmp dword [ebp - 0x50], 4
jge 0x10016fb4
mov eax, dword [ebp - 0x50]
mov dword [ebp + eax*4 - 0x198], 0xb055cc25
jmp 0x10016f97
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0xc8]
mov dword [ebp + eax - 0x198], ecx
push 0x279b
push 1
call fcn.100168b9
pop ecx
pop ecx
jmp 0x10016f81
lea eax, [ebp - 0x1a4]
push eax
call fcn.10008c89
pop ecx
mov esi, eax
lea edi, [ebp - 0x17c]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea esi, [ebp - 0x17c]
lea edi, [ebp - 0x188]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov dword [ebp - 0x1c], 0xfffffff8
mov dword [ebp - 0x48], 0
jmp 0x10017015
mov eax, dword [ebp - 0x48]
inc eax
mov dword [ebp - 0x48], eax
cmp dword [ebp - 0x48], 3
jge 0x1001702b
mov eax, dword [ebp - 0x48]
mov dword [ebp + eax*4 - 0x1b0], 6
jmp 0x1001700e
mov dword [ebp - 0x1c], 8
jmp 0x1001703b
mov eax, dword [ebp - 0x1c]
dec eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 6
jle 0x10017080
mov dword [ebp - 0x8c], 0xd69f4288
mov eax, dword [ebp - 0x8c]
dec eax
mov dword [ebp - 0x8c], eax
mov byte [ebp - 0x24], 0
push 0x7047
push 0x1c24
push 0x3829
push 0
lea eax, [ebp - 0x24]
push eax
push 0x7908
call fcn.100178ba
add esp, 0x18
jmp 0x10017034
mov dword [ebp - 0x1c], 0xffffffe7
jmp 0x10017090
mov eax, dword [ebp - 0x1c]
inc eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 6
jl 0x10017151
mov dword [ebp - 0x118], 0
mov dword [ebp - 0x114], 0
mov dword [ebp - 0x110], 0
mov dword [ebp - 0x10c], 0
push 4
pop eax
imul eax, eax, 0
mov dword [ebp + eax - 0x118], 2
jmp 0x100170f0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x118]
dec eax
push 4
pop ecx
imul ecx, ecx, 0
mov dword [ebp + ecx - 0x118], eax
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x118], 0
jl 0x1001714c
mov dword [ebp - 0x34], 0x7be9fb1c
mov dword [ebp - 0x34], 0
jmp 0x10017117
mov eax, dword [ebp - 0x34]
inc eax
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 2
jg 0x1001714a
mov dword [ebp - 0xec], 0x2b000cd9
mov byte [ebp - 0x1f], 0
push 1
lea eax, [ebp - 0x1f]
push eax
call fcn.1001690b
pop ecx
pop ecx
lea eax, [ebp - 0xec]
push eax
push 1
call fcn.1001696a
pop ecx
pop ecx
jmp 0x10017110
jmp 0x100170d5
jmp 0x10017089
mov ecx, dword [ebp + 0xc]
call fcn.10011837
mov dword [ebp - 0xf4], eax
mov dword [ebp - 0x2c], 0xffffffff
mov dword [ebp - 0x3c], 0
jmp 0x10017176
mov eax, dword [ebp - 0x3c]
inc eax
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x3c], 4
jge 0x1001718c
mov eax, dword [ebp - 0x3c]
mov dword [ebp + eax*4 - 0x1c0], 6
jmp 0x1001716f
mov dword [ebp - 0x2c], 3
jmp 0x1001719c
mov eax, dword [ebp - 0x2c]
inc eax
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 7
jge 0x100171b7
mov dword [ebp - 0x120], 0x8bac04ee
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x120], eax
jmp 0x10017195
push 1
lea eax, [ebp - 0x2c]
push eax
call fcn.100169d7
pop ecx
pop ecx
lea eax, [ebp - 0x170]
push eax
lea eax, [ebp - 0xf4]
push eax
push 0x58de
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp - 0x188]
push eax
push 1
call fcn.10016aa2
add esp, 0x18
cmp dword [ebp - 0x44], 6
jae 0x10017616
mov dword [ebp - 0x10], 1
push 4
lea ecx, [ebp - 0x64]
call fcn.10017c5d
mov byte [ebp - 4], 3
mov dword [ebp - 0x70], 0xfffffff6
mov dword [ebp - 0xa0], 3
mov dword [ebp - 0x74], 8
push 1
push 0x2592
lea eax, [ebp - 0x64]
push eax
lea eax, [ebp - 0x14]
push eax
push 0x31a3
call fcn.10016b2c
add esp, 0x14
mov dword [ebp - 0x14], 0
jmp 0x1001724f
mov eax, dword [ebp - 0x14]
inc eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 2
jge 0x10017265
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xbc], 0xa2e
jmp 0x10017248
mov dword [ebp - 0x14], 0
jmp 0x10017275
mov eax, dword [ebp - 0x14]
inc eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 1
jge 0x1001728b
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xe8], 0xc50133ec
jmp 0x1001726e
lea eax, [ebp - 0x10]
push eax
push 1
push 0x1589
call fcn.10016bd6
add esp, 0xc
mov dword [ebp - 0x10], 0
jmp 0x100172ae
mov eax, dword [ebp - 0x10]
inc eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 3
jg 0x100175e2
push 3
lea ecx, [ebp - 0x130]
call fcn.10017c5d
mov byte [ebp - 4], 4
mov dword [ebp - 0xd0], 0x2fc53d8b
mov dword [ebp - 0xe0], 0x1dd5
mov dword [ebp - 0xa4], 0xfffffffc
mov dword [ebp - 0x4c], 0
jmp 0x100172f7
mov eax, dword [ebp - 0x4c]
inc eax
mov dword [ebp - 0x4c], eax
cmp dword [ebp - 0x4c], 3
jge 0x10017313
push dword [ebp - 0x4c]
lea ecx, [ebp - 0x130]
call fcn.10017cfb
mov dword [eax], 1
jmp 0x100172f0
push dword [ebp - 0x10]
lea ecx, [ebp - 0x64]
call fcn.10017cfb
mov eax, dword [eax]
mov dword [ebp - 0x70], eax
cmp dword [ebp - 0x70], 0
je 0x1001739e
mov esi, dword [ebp - 0x10]
push dword [ebp - 0x10]
lea ecx, [ebp - 0x64]
call fcn.10017cfb
imul esi, dword [eax]
test esi, esi
je 0x10017351
push 0xfffffffffffffffd
pop eax
test eax, eax
je 0x10017351
mov dword [ebp - 0xac], 1
jmp 0x10017358
and dword [ebp - 0xac], 0
mov eax, dword [ebp - 0x10]
imul eax, dword [ebp - 0xac]
test eax, eax
jne 0x10017376
push 4
pop eax
test eax, eax
jne 0x10017376
and dword [ebp - 0x98], 0
jmp 0x10017380
mov dword [ebp - 0x98], 1
push dword [ebp - 0x10]
lea ecx, [ebp - 0x64]
call fcn.10017cfb
mov ecx, dword [ebp - 0x98]
cmp ecx, dword [eax]
je 0x1001739e
mov dword [ebp - 0x78], 1
jmp 0x100173a2
and dword [ebp - 0x78], 0
cmp dword [ebp - 0x78], 0xfffffffc
jge 0x100173b4
mov dword [ebp - 0xb4], 1
jmp 0x100173bb
and dword [ebp - 0xb4], 0
push 2
lea ecx, [ebp - 0x130]
call fcn.10017cfb
mov ecx, dword [ebp - 0xb4]
cmp ecx, dword [eax]
jg 0x100173db
mov dword [ebp - 0x80], 1
jmp 0x100173df
and dword [ebp - 0x80], 0
mov eax, dword [ebp - 0x80]
neg eax
mov dword [ebp - 0xa0], eax
mov eax, dword [ebp - 0xa0]
push 4
pop ecx
shl ecx, 0
add eax, dword [ebp + ecx - 0xbc]
cmp eax, 9
jg 0x1001740e
mov dword [ebp - 0x88], 1
jmp 0x10017415
and dword [ebp - 0x88], 0
mov eax, dword [ebp - 0x10]
add eax, 0x2076
cmp eax, dword [ebp - 0x88]
jge 0x10017431
mov dword [ebp - 0xb0], 1
jmp 0x10017438
and dword [ebp - 0xb0], 0
push 2
lea ecx, [ebp - 0x64]
call fcn.10017cfb
mov ecx, dword [ebp - 0xb0]
cmp ecx, dword [eax]
jle 0x10017458
mov dword [ebp - 0x90], 1
jmp 0x1001745f
and dword [ebp - 0x90], 0
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0xbc]
cmp dword [ebp - 0x90], eax
je 0x10017480
mov dword [ebp - 0xa8], 1
jmp 0x10017487
and dword [ebp - 0xa8], 0
mov eax, dword [ebp - 0x74]
cmp dword [ebp - 0xa8], eax
jg 0x1001749e
mov dword [ebp - 0xcc], 1
jmp 0x100174a5
and dword [ebp - 0xcc], 0
push dword [ebp - 0x10]
lea ecx, [ebp - 0x64]
call fcn.10017cfb
push 0
lea ecx, [ebp - 0x64]
call fcn.10017cfb
mov esi, dword [ebp - 0xd0]
push 3
lea ecx, [ebp - 0x64]
call fcn.10017cfb
cmp esi, dword [eax]
jge 0x100174da
mov dword [ebp - 0xd8], 1
jmp 0x100174e1
and dword [ebp - 0xd8], 0
cmp dword [ebp - 0xe0], 0
jne 0x10017500
push dword [ebp - 0x10]
lea ecx, [ebp - 0x64]
call fcn.10017cfb
cmp dword [eax], 0
jne 0x10017500
and dword [ebp - 0x6c], 0
jmp 0x10017507
mov dword [ebp - 0x6c], 1
cmp dword [ebp - 0x6c], 0
je 0x1001751f
mov eax, 0x3146
test eax, eax
je 0x1001751f
mov dword [ebp - 0x7c], 1
jmp 0x10017523
and dword [ebp - 0x7c], 0
mov eax, dword [ebp - 0x74]
cmp dword [ebp - 0x7c], eax
jl 0x10017537
mov dword [ebp - 0x84], 1
jmp 0x1001753e
and dword [ebp - 0x84], 0
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0xbc]
cmp dword [ebp - 0x84], eax
jg 0x1001755c
mov dword [ebp - 0x68], 1
jmp 0x10017560
and dword [ebp - 0x68], 0
push 2
lea ecx, [ebp - 0x130]
call fcn.10017cfb
mov ecx, dword [ebp - 0x68]
cmp ecx, dword [eax]
jle 0x10017580
mov dword [ebp - 0x94], 1
jmp 0x10017587
and dword [ebp - 0x94], 0
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0xbc]
cmp dword [ebp - 0x94], eax
jle 0x100175a8
mov dword [ebp - 0x9c], 1
jmp 0x100175af
and dword [ebp - 0x9c], 0
mov eax, dword [ebp - 0x9c]
mov dword [ebp - 0xa4], eax
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0xa4]
mov dword [ebp + eax - 0xe8], ecx
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x130]
call fcn.10017cdf
jmp 0x100172a7
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x64]
call fcn.10017cdf
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0xf0], eax
lea eax, [ebp - 0x170]
push eax
lea eax, [ebp - 0xf0]
push eax
mov ecx, 0x10673d2c
call fcn.10017fb9
mov ecx, eax
call fcn.10017aa1
push 1
lea ecx, [ebp - 0x14c]
call fcn.10017c5d
mov byte [ebp - 4], 5
mov dword [ebp - 0x18], 0
jmp 0x10017637
mov eax, dword [ebp - 0x18]
inc eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 1
jge 0x10017650
push dword [ebp - 0x18]
lea ecx, [ebp - 0x14c]
call fcn.10017cfb
or dword [eax], 0xffffffff
jmp 0x10017630
mov dword [ebp - 0x18], 0
jmp 0x10017660
mov eax, dword [ebp - 0x18]
inc eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 2
jge 0x10017676
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xc4], 0x2c70bb74
jmp 0x10017659
mov byte [ebp - 0x23], 0
movzx eax, byte [ebp - 0x23]
test eax, eax
je 0x1001768a
push 1
call fcn.10016c1f
pop ecx
push 4
pop eax
shl eax, 0
mov dword [ebp + eax - 0xc4], 0
jmp 0x100176b8
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0xc4]
inc eax
push 4
pop ecx
shl ecx, 0
mov dword [ebp + ecx - 0xc4], eax
push 4
pop eax
shl eax, 0
cmp dword [ebp + eax - 0xc4], 0
jg 0x10017706
mov byte [ebp - 0x21], 0
lea eax, [ebp - 0x21]
push eax
push 0x44d5
push 1
call fcn.10016c4d
add esp, 0xc
mov byte [ebp - 0x1d], 0
movzx eax, byte [ebp - 0x1d]
test eax, eax
je 0x10017704
push 0
push 0x265a
push 0xf3f
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_SetScrollPos]
jmp 0x1001769d
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x14c]
call fcn.10017cdf
lea eax, [ebp - 0x170]
push eax
mov ecx, dword [ebp + 8]
call fcn.10017a4d
mov eax, dword [ebp - 0x54]
or eax, 1
mov dword [ebp - 0x54], eax
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x170]
call fcn.10017a97
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret