Function at 0x449be6
Capabilities:
Get file attributes

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x740
push ebx
push esi
xor ebx, ebx
push edi
mov dword [ebp - 4], ebx
call fcn.00448c49
push 0x65
pop esi
lea ecx, [ebp - 0x6c]
mov dword [ebp - 4], esi
call fcn.00448294
mov ecx, dword [0x4b1e14]
test ecx, ecx
je 0x449c9e
mov eax, dword [ecx]
call dword [eax + 4]
push eax
lea ecx, [ebp - 0x20]
call fcn.00417e10
mov edi, 0x40374c
lea ecx, [ebp - 0x20]
push edi
call fcn.004183f0
test al, al
je 0x449c58
push edi
lea ecx, [ebp - 0x38]
call fcn.00419340
lea eax, [ebp - 0x38]
push eax
lea ecx, [ebp - 0x20]
call fcn.00418a50
push ebx
push 1
lea ecx, [ebp - 0x38]
call fcn.0041a110
push ebx
lea eax, [ebp - 0x38]
push eax
lea ecx, [ebp - 0x20]
call fcn.00418e50
lea eax, [ebp - 0x38]
push eax
lea ecx, [ebp - 0x6c]
call fcn.004483f9
mov bl, al
lea ecx, [ebp - 0x38]
push 0
neg bl
push 1
sbb bl, bl
call fcn.0041a570
lea ecx, [ebp - 0x20]
inc bl
je 0x449c97
mov esi, dword [ebp - 4]
call fcn.00417c90
jmp 0x449ed6
call fcn.00417c90
xor ebx, ebx
lea eax, [ebp - 4]
push eax
lea eax, [ebp - 0x6c]
push eax
call fcn.00448fc2
pop ecx
pop ecx
test al, al
jne 0x449ed3
xor eax, eax
mov word [ebp - 0x70], ax
mov word [ebp - 0x278], ax
lea eax, [ebp - 0x278]
push eax
push dword [ebp + 8]
call fcn.00448d61
pop ecx
pop ecx
test al, al
je 0x449ed6
mov ecx, dword [0x4b1e14]
test ecx, ecx
je 0x449d09
mov eax, dword [ecx]
push ebx
call dword [eax + 8]
test al, al
je 0x449d09
mov ecx, dword [0x4b1e14]
push ebx
mov eax, dword [ecx]
call dword [eax + 0xc]
test eax, eax
je 0x449d09
mov esi, 0x2711
jmp 0x449ed6
xor eax, eax
mov word [ebp - 0x488], ax
mov word [ebp - 0x690], ax
mov word [ebp - 0x27c], ax
mov word [ebp - 0x484], ax
lea eax, [ebp - 0x484]
push eax
lea eax, [ebp - 0x690]
push eax
lea eax, [ebp - 0x278]
push eax
push dword [ebp + 8]
lea eax, [ebp - 0x6c]
push eax
call fcn.004497bd
add esp, 0x14
mov byte [ebp - 5], al
or edi, 0xffffffff
test al, al
jne 0x449e12
mov esi, 0x104
lea eax, [ebp - 0x278]
push esi
push eax
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
cmp eax, esi
jae 0x449e06
test eax, eax
je 0x449e06
push eax
lea eax, [ebp - 0x278]
push eax
call fcn.00449f60
pop ecx
pop ecx
test eax, eax
je 0x449e06
xor ecx, ecx
mov word [eax], cx
lea eax, [ebp - 0x278]
push eax
lea eax, [ebp - 0x484]
push esi
push eax
call fcn.0044a01a
push 0x401584
lea eax, [ebp - 0x484]
push esi
push eax
call fcn.00449ff2
lea eax, [ebp - 0x278]
push eax
lea eax, [ebp - 0x690]
push esi
push eax
call fcn.0044a01a
push 0x401628
lea eax, [ebp - 0x690]
push esi
push eax
call fcn.00449ff2
mov esi, dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
lea eax, [ebp - 0x484]
add esp, 0x30
push eax
call esi
cmp eax, edi
je 0x449e06
lea eax, [ebp - 0x690]
push eax
call esi
cmp eax, edi
jne 0x449e12
mov dword [ebp - 4], 0x66
jmp 0x449ea7
mov ecx, dword [0x4b1e14]
test ecx, ecx
je 0x449e21
mov eax, dword [ecx]
call dword [eax + 0x20]
push edi
push edi
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push eax
call dword [sym.imp.KERNEL32.dll_SetProcessWorkingSetSize]
lea eax, [ebp - 4]
push eax
lea eax, [ebp - 0x484]
push eax
lea eax, [ebp - 0x690]
push eax
lea eax, [ebp - 0x6c]
push eax
call fcn.0044924a
add esp, 0x10
test al, al
jne 0x449ea7
call fcn.0041fd20
cmp eax, 2
jg 0x449e90
push 2
push 0x3e6
xor ebx, ebx
lea ecx, [ebp - 0x740]
push 0x401528
inc ebx
call fcn.0041fdc0
push dword [ebp - 4]
add eax, 8
push 0x401508
push eax
call fcn.0041bbb0
pop ecx
pop ecx
mov ecx, eax
call fcn.00420840
test bl, 1
je 0x449ea0
lea ecx, [ebp - 0x740]
call fcn.0041fe10
mov dword [ebp - 4], 0x67
cmp byte [ebp - 5], 0
je 0x449ed3
call fcn.00449782
test al, al
je 0x449ed3
lea eax, [ebp - 0x484]
push eax
lea eax, [ebp - 0x690]
push eax
lea eax, [ebp - 0x278]
push eax
call fcn.00448b9e
add esp, 0xc
mov esi, dword [ebp - 4]
lea ecx, [ebp - 0x6c]
call fcn.004482b4
pop edi
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret