Function at 0x10048194
Capabilities:
Get file attributes

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x48
mov eax, dword [0x10086084]
xor eax, ebp
mov dword [ebp - 8], eax
mov eax, dword [ebp + 8]
or dword [ebp - 0x28], 0xffffffff
push ebx
push esi
push edi
mov dword [ebp - 0x38], eax
lea edi, [ebp - 0x1c]
xor eax, eax
mov dword [ebp - 0x3c], edx
stosd dword es:[edi], eax
xor esi, esi
mov dword [ebp - 0x44], esi
mov ebx, esi
mov dword [ebp - 0x40], esi
mov dword [ebp - 0x34], esi
stosd dword es:[edi], eax
mov dword [ebp - 0x30], esi
mov dword [ebp - 0x24], ebx
stosd dword es:[edi], eax
stosd dword es:[edi], eax
mov edi, esi
mov dword [ebp - 0x20], edi
test edx, edx
je 0x10048396
test ecx, ecx
je 0x10048396
lea edx, [ebp - 0x24]
call fcn.100370ec
mov esi, eax
test esi, esi
jns 0x1004820a
push esi
push 0x1d8
mov ecx, 0x1000939c
call fcn.1003a254
mov ebx, dword [ebp - 0x24]
jmp 0x1004823d
mov ebx, dword [ebp - 0x24]
lea eax, [ebp - 0x20]
push 0x10009350
push ebx
push 0x10007468
push eax
call fcn.1007ff3f
mov esi, eax
add esp, 0x10
test esi, esi
jns 0x10048289
push esi
push 0x1e2
mov ecx, 0x1000939c
call fcn.1003a254
mov edi, dword [ebp - 0x20]
test ebx, ebx
je 0x10048251
push ebx
push 0
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
call dword [sym.imp.KERNEL32.dll_HeapFree]
test edi, edi
je 0x10048265
push edi
push 0
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
call dword [sym.imp.KERNEL32.dll_HeapFree]
mov eax, dword [ebp - 0x28]
cmp eax, 0xffffffff
je 0x10048274
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [ebp - 8]
mov eax, esi
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.10083b20
mov esp, ebp
pop ebp
ret 4
mov edi, dword [ebp - 0x20]
xor eax, eax
push eax
push eax
push 3
push eax
push 3
push 0x80000000
push edi
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov ecx, eax
mov dword [ebp - 0x28], ecx
cmp ecx, 0xffffffff
jne 0x100482f2
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jle 0x100482bf
movzx eax, ax
or eax, 0x80070000
test eax, eax
jns 0x100482d8
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
test esi, esi
jle 0x100482dd
movzx esi, si
or esi, 0x80070000
jmp 0x100482dd
mov esi, 0x80004005
push esi
push 0x1ed
mov ecx, 0x1000939c
call fcn.1003a254
jmp 0x1004823d
xor eax, eax
lea edi, [ebp - 0x1c]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
lea eax, [ebp - 0x1c]
xor edi, edi
push edi
push edi
push 1
push 0x21
push 0x10
push eax
lea eax, [ebp - 0x44]
push eax
push edi
push edi
push edi
push ecx
call dword [sym.imp.ntdll.dll_NtQueryDirectoryFile]
cmp eax, 0x80000006
je 0x1004838f
cmp eax, 0xc000000f
je 0x1004823a
test eax, eax
js 0x1004837c
mov esi, dword [ebp - 0x44]
test esi, esi
js 0x1004836b
push dword [ebp - 0x38]
mov eax, dword [ebp - 0x1c]
push dword [ebp - 0x14]
mov esi, dword [ebp - 0x3c]
mov ecx, esi
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x30], eax
lea eax, [ebp - 0x34]
push eax
call dword [0x10087410]
call esi
mov ecx, dword [ebp - 0x28]
mov esi, eax
test esi, esi
jns 0x100482f2
push esi
push 0x214
jmp 0x10048230
or esi, 0x10000000
push esi
push 0x20b
jmp 0x10048230
mov esi, eax
or esi, 0x10000000
push esi
push 0x20a
jmp 0x10048230
mov esi, edi
jmp 0x1004823a
mov esi, 0x80070057
push esi
push 0x1d0
jmp 0x100482e3