Function at 0x4ad11b18
Capabilities:
Get file attributes

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x634
push ebx
push esi
xor ebx, ebx
push edi
lea eax, [ebp - 0x14]
push ebx
mov esi, 0x80
push eax
push esi
push 0xfe00
call fcn.4ad0d92b
cmp eax, ebx
mov dword [ebp - 0xc], eax
je 0x4ad11fcf
cmp dword [0x4ad1f9d4], ebx
je 0x4ad11b73
lea eax, [ebp - 0x1c]
push 1
push eax
push esi
push dword [ebp - 0x14]
call fcn.4ad0d92b
cmp eax, ebx
mov dword [ebp - 0x18], eax
je 0x4ad11fcf
mov eax, dword [ebp - 0x1c]
cmp dword [ebp - 0x14], eax
jb 0x4ad11b73
mov dword [ebp - 0x14], eax
mov eax, dword [ebp + 8]
mov esi, dword [eax + 0x1c]
push dword [esi]
call fcn.4ad15520
test eax, eax
jne 0x4ad11b90
mov esi, dword [esi + 0x1c]
cmp esi, ebx
jne 0x4ad11b79
jmp 0x4ad11fe8
lea eax, [ebp - 8]
push eax
push dword [esi + 0x14]
push 0x21
push dword [esi]
call fcn.4ad18527
and byte [esi + 0x19], 0x3f
mov eax, dword [esi + 0x18]
test al, 4
je 0x4ad11bb2
and al, 0xfb
or al, 2
mov dword [esi + 0x18], eax
cmp dword [0x4ad22878], ebx
jne 0x4ad11fc7
lea eax, [ebp - 0x634]
push eax
push esi
call fcn.4ad10cc8
push 1
pop edi
cmp eax, edi
je 0x4ad11fd4
push dword [esi + 4]
push str._s_r_n
call fcn.4ad157af
pop ecx
lea eax, [ebp - 0x224]
pop ecx
push ebx
push 0x104
push eax
push dword [ebp + 0xc]
push esi
call fcn.4ad1209f
cmp eax, edi
je 0x4ad11fd4
cmp word [ebp - 0x224], bx
je 0x4ad11fb1
lea eax, [ebp - 0x224]
push eax
push dword [esi + 4]
call fcn.4ad127fe
test eax, eax
je 0x4ad11c3a
push dword [ebp - 0x14]
push dword [ebp - 0xc]
push esi
push dword [esi + 4]
call fcn.4ad128fb
mov dword [ebp - 4], eax
jmp 0x4ad11e09
push ebx
push dword [esi + 4]
call fcn.4ad145df
mov edi, eax
cmp edi, 0xffffffff
jne 0x4ad11c61
push dword [ebp - 8]
call fcn.4ad185bc
push 0x6e
call fcn.4ad143d9
push 1
push ebx
call fcn.4ad12859
push edi
call fcn.4ad14ea0
test eax, eax
je 0x4ad11c72
mov dword [ebp - 0x14], 0x80
lea eax, [ebp - 0x224]
push eax
lea eax, [ebp - 0x10]
push dword [ebp - 4]
push esi
push eax
push dword [ebp - 0x14]
push dword [ebp - 0xc]
push edi
call fcn.4ad12618
cmp dword [0x4ad1d000], ebx
mov dword [ebp + 8], eax
jne 0x4ad11cce
lea eax, [ebp - 0x224]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
test al, 2
jne 0x4ad11cb7
lea eax, [ebp - 0x224]
push eax
call fcn.4ad145f3
jmp 0x4ad11cc6
push ebx
lea eax, [ebp - 0x224]
push 1
push eax
call fcn.4ad145c9
cmp eax, 0xffffffff
mov dword [ebp - 4], eax
jne 0x4ad11ceb
push dword [ebp - 8]
call fcn.4ad185bc
push edi
call fcn.4ad1408a
push 0x6e
call fcn.4ad143d9
push 1
push ebx
call fcn.4ad12859
cmp dword [0x4ad1cfe8], ebx
je 0x4ad11d6a
cmp dword [ebp - 0x10], ebx
jle 0x4ad11d5e
lea eax, [ebp - 0x224]
push edi
push eax
push dword [ebp - 0x10]
push dword [ebp - 0xc]
push dword [ebp - 4]
call fcn.4ad12709
cmp dword [0x4ad1f9d4], ebx
je 0x4ad11d5e
push dword [ebp - 4]
call fcn.4ad14ea0
test eax, eax
jne 0x4ad11d5e
push dword [ebp - 0x18]
lea eax, [ebp - 0x224]
push dword [ebp - 0xc]
push dword [ebp - 0x10]
push eax
lea eax, [ebp - 4]
push eax
call fcn.4ad12bf5
cmp eax, 1
jne 0x4ad11d5e
push dword [ebp - 8]
call fcn.4ad185bc
push edi
call fcn.4ad1408a
push dword [ebp - 4]
call fcn.4ad1408a
push 1
push ebx
call fcn.4ad12859
cmp dword [0x4ad1cfe8], ebx
jne 0x4ad11dfd
cmp dword [ebp + 8], 1
jne 0x4ad11dfd
lea eax, [ebp - 0x224]
push edi
push eax
push dword [ebp - 0x10]
push dword [ebp - 0xc]
push dword [ebp - 4]
call fcn.4ad12709
cmp dword [0x4ad1f9d4], ebx
je 0x4ad11dda
push dword [ebp - 4]
call fcn.4ad14ea0
test eax, eax
jne 0x4ad11dda
push dword [ebp - 0x18]
lea eax, [ebp - 0x224]
push dword [ebp - 0xc]
push dword [ebp - 0x10]
push eax
lea eax, [ebp - 4]
push eax
call fcn.4ad12bf5
cmp eax, 1
jne 0x4ad11dda
push dword [ebp - 8]
call fcn.4ad185bc
push edi
call fcn.4ad1408a
push dword [ebp - 4]
call fcn.4ad1408a
push 1
push ebx
call fcn.4ad12859
lea eax, [ebp - 0x224]
push eax
lea eax, [ebp - 0x10]
push dword [ebp - 4]
push esi
push eax
push dword [ebp - 0x14]
push dword [ebp - 0xc]
push edi
call fcn.4ad12618
mov dword [ebp + 8], eax
jmp 0x4ad11d5e
push edi
mov dword [0x4ad1cfe8], ebx
call fcn.4ad1408a
mov dword [0x4ad264b4], ebx
mov edi, dword [esi + 0x1c]
cmp edi, ebx
je 0x4ad11f93
mov eax, dword [edi + 0x18]
test al, 4
je 0x4ad11e28
and al, 0xfb
or al, 2
mov dword [edi + 0x18], eax
push 0x104
lea eax, [ebp - 0x42c]
push dword [esi + 4]
push dword [edi]
push eax
call fcn.4ad1246f
cmp eax, ebx
je 0x4ad11e4b
push ebx
push eax
call fcn.4ad1391e
jmp 0x4ad11e5c
lea eax, [ebp - 0x42c]
push eax
push str._s_r_n
call fcn.4ad157af
pop ecx
lea eax, [ebp - 0x42c]
pop ecx
push eax
call fcn.4ad15520
test eax, eax
je 0x4ad11f8b
lea eax, [ebp - 0x224]
push eax
lea eax, [ebp - 0x42c]
push eax
call fcn.4ad127fe
test eax, eax
push ebx
je 0x4ad11e9b
push 0x2340
call fcn.4ad1391e
pop ecx
pop ecx
jmp 0x4ad11f8b
lea eax, [ebp - 0x42c]
push eax
call fcn.4ad145df
cmp eax, 0xffffffff
mov dword [ebp + 8], eax
jne 0x4ad11ece
push dword [ebp - 8]
call fcn.4ad185bc
push dword [ebp - 4]
call fcn.4ad1408a
push 0x6e
call fcn.4ad143d9
push 1
push ebx
call fcn.4ad12859
push dword [ebp + 8]
call fcn.4ad14ea0
test eax, eax
je 0x4ad11ee1
mov dword [ebp - 0x14], 0x80
cmp dword [0x4ad1cfe8], ebx
jne 0x4ad11f7d
lea eax, [ebp - 0x224]
push eax
lea eax, [ebp - 0x10]
push dword [ebp - 4]
push edi
push eax
push dword [ebp - 0x14]
push dword [ebp - 0xc]
push dword [ebp + 8]
call fcn.4ad12618
test eax, eax
je 0x4ad11f7d
push dword [ebp + 8]
lea eax, [ebp - 0x224]
push eax
push dword [ebp - 0x10]
push dword [ebp - 0xc]
push dword [ebp - 4]
call fcn.4ad12709
cmp dword [0x4ad1f9d4], ebx
je 0x4ad11ee1
push dword [ebp - 4]
call fcn.4ad14ea0
test eax, eax
jne 0x4ad11ee1
push dword [ebp - 0x18]
lea eax, [ebp - 0x224]
push dword [ebp - 0xc]
push dword [ebp - 0x10]
push eax
lea eax, [ebp - 4]
push eax
call fcn.4ad12bf5
cmp eax, 1
jne 0x4ad11ee1
push dword [ebp - 8]
call fcn.4ad185bc
push dword [ebp + 8]
call fcn.4ad1408a
push dword [ebp - 4]
call fcn.4ad1408a
push 1
push ebx
call fcn.4ad12859
jmp 0x4ad11ee1
push dword [ebp + 8]
mov dword [0x4ad1cfe8], ebx
call fcn.4ad1408a
mov edi, dword [edi + 0x1c]
jmp 0x4ad11e12
push ebx
lea eax, [ebp - 0x224]
push dword [ebp - 4]
push eax
push dword [ebp + 0xc]
push esi
call fcn.4ad12003
mov dword [0x4ad264c8], 1
push dword [ebp - 8]
push 0x21
push dword [esi + 0x14]
call fcn.4ad1855b
test al, al
je 0x4ad11fe0
jmp 0x4ad11ba0
push dword [ebp - 8]
call fcn.4ad185bc
push 1
pop eax
jmp 0x4ad11fea
push dword [ebp - 8]
call fcn.4ad185bc
mov eax, edi
jmp 0x4ad11fea
push dword [ebp - 8]
call fcn.4ad185bc
xor eax, eax
pop edi
pop esi
pop ebx
leave
ret 8