Function at 0x407570
Capabilities:
Get file attributes

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x442a18
push 0x423b60
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x2e4
push ebx
push esi
push edi
xor edi, edi
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x28], edi
cmp dword [0x483d74], edi
jne 0x407932
cmp dword [0x451140], 0xffffffff
jne 0x407932
mov eax, dword [0x48af04]
cmp eax, edi
jne 0x4075e1
push str.QueryActCtxW
push 0x48af1c
push 0x4429b8
call fcn.00407a10
mov dword [0x48af04], eax
cmp eax, edi
jne 0x4075e1
xor eax, eax
jmp 0x4075f7
push edi
push 8
lea ecx, [ebp - 0x24]
push ecx
push 1
push edi
push 0x451140
push 0x80000010
call eax
cmp eax, edi
je 0x407939
mov eax, dword [ebp - 0x24]
cmp eax, edi
jne 0x4077c7
push str.GetModuleHandleExW
push 0x48af1c
push 0x4429b8
call fcn.00407a10
cmp eax, edi
je 0x407939
lea edx, [ebp - 0x2c]
push edx
push 0x451140
push 6
call eax
test eax, eax
je 0x407939
mov word [ebp - 0x2e], di
mov word [ebp - 0x30], di
push 0x105
lea eax, [ebp - 0x238]
push eax
mov ecx, dword [ebp - 0x2c]
push ecx
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
cmp eax, edi
je 0x407939
cmp word [ebp - 0x30], di
je 0x407683
push 0x6f
call dword [sym.imp.KERNEL32.dll_SetLastError]
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x10]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov dword [ebp - 0x260], 0x20
mov dword [ebp - 0x25c], 0x88
lea edx, [ebp - 0x238]
mov dword [ebp - 0x258], edx
mov dword [ebp - 0x24c], 3
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x244], eax
mov eax, dword [0x48af08]
cmp eax, edi
jne 0x407779
xor esi, esi
cmp dword [0x48af14], edi
jne 0x4076ff
call dword [sym.imp.KERNEL32.dll_GetVersion]
test eax, 0x80000000
je 0x4076f5
push str.___.___
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
push str.Unicows.dll
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [0x48af18], eax
mov dword [0x48af14], 1
mov eax, dword [0x48af18]
cmp eax, edi
je 0x40771e
push str.CreateActCtxW
push eax
mov ebx, dword [sym.imp.KERNEL32.dll_GetProcAddress]
call ebx
mov esi, eax
cmp esi, edi
jne 0x407769
jmp 0x407724
mov ebx, dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov eax, dword [0x48af1c]
cmp eax, edi
jne 0x40775f
call dword [sym.imp.KERNEL32.dll_GetVersion]
test eax, 0x80000000
je 0x407749
mov ecx, dword [str.Kernel32.dll]
push ecx
call dword [0x4429b8]
jmp 0x407756
mov edx, dword [0x4429c4]
push edx
call dword [0x4429bc]
cmp eax, edi
je 0x407769
mov dword [0x48af1c], eax
push str.CreateActCtxW
push eax
call ebx
mov esi, eax
mov eax, esi
mov dword [0x48af08], eax
cmp esi, edi
jne 0x40777f
or eax, 0xffffffff
jmp 0x407788
mov ebx, dword [sym.imp.KERNEL32.dll_GetProcAddress]
lea ecx, [ebp - 0x260]
push ecx
call eax
mov dword [ebp - 0x24], eax
cmp eax, 0xffffffff
jne 0x4077bb
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x714
je 0x4077b6
cmp eax, 0x715
je 0x4077b6
cmp eax, 0x717
je 0x4077b6
cmp eax, 0x716
jne 0x407939
xor eax, eax
mov dword [ebp - 0x24], eax
mov dword [0x483d70], 1
jmp 0x4077cd
mov ebx, dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x451140], eax
mov esi, eax
mov eax, dword [0x48af10]
cmp eax, edi
jne 0x4077fe
push str.ActivateActCtx
push 0x48af1c
push 0x4429b8
call fcn.00407a10
mov dword [0x48af10], eax
cmp eax, edi
jne 0x4077fe
xor eax, eax
jmp 0x407805
lea edx, [ebp - 0x28]
push edx
push esi
call eax
cmp eax, edi
je 0x407932
xor edi, edi
mov dword [ebp - 4], edi
mov dword [ebp - 0x2a4], 0x40
mov dword [ebp - 0x2d0], edi
mov eax, dword [0x48af0c]
cmp eax, edi
jne 0x4078f9
xor esi, esi
mov dword [ebp - 0x2d4], esi
cmp dword [0x48af14], edi
jne 0x407871
call dword [sym.imp.KERNEL32.dll_GetVersion]
test eax, 0x80000000
je 0x407867
push str.___.___
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
push str.Unicows.dll
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [0x48af18], eax
mov dword [0x48af14], 1
mov eax, dword [0x48af18]
cmp eax, edi
je 0x40788e
push str.FindActCtxSectionStringW
push eax
call ebx
mov esi, eax
mov dword [ebp - 0x2d4], esi
cmp esi, edi
jne 0x4078e4
mov eax, dword [0x48af1c]
mov dword [ebp - 0x2d8], eax
cmp eax, edi
jne 0x4078d4
call dword [sym.imp.KERNEL32.dll_GetVersion]
test eax, 0x80000000
je 0x4078b8
mov eax, dword [str.Kernel32.dll]
push eax
call dword [0x4429b8]
jmp 0x4078c5
mov ecx, dword [0x4429c4]
push ecx
call dword [0x4429bc]
mov dword [ebp - 0x2d8], eax
cmp eax, edi
je 0x4078e4
mov dword [0x48af1c], eax
push str.FindActCtxSectionStringW
push eax
call ebx
mov esi, eax
mov dword [ebp - 0x2d4], esi
mov dword [ebp - 0x2dc], esi
mov eax, esi
mov dword [0x48af0c], eax
cmp esi, edi
jne 0x4078f9
xor eax, eax
jmp 0x407911
lea edx, [ebp - 0x2a4]
push edx
push str.Comctl32.dll
push 2
push edi
push edi
call eax
mov dword [ebp - 0x2d0], eax
mov dword [ebp - 0x2e0], eax
cmp eax, edi
je 0x407926
push str.Comctl32.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov dword [ebp - 4], 0xffffffff
call fcn.00407953
mov dword [ebp - 0x1c], 1
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x10]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret