Function at 0x405d53
Capabilities:
Get common file path
Set current directory

Disassembly:
mov eax, 0x416127
call fcn.0040b2b4
mov eax, 0x1640
call fcn.00410ca0
mov eax, dword [0x41b9e4]
xor eax, ebp
inc dword [0x41d254]
push ebx
mov dword [ebp - 0x10], eax
mov ebx, ecx
mov dword [ebp - 0x1648], 0x41d254
and dword [ebp - 4], 0
cmp dword [0x41d254], 0x40
jl 0x405da3
push str.Error__include_depth_exceeded.__Make_sure_there_are_no_recursive_includes.
call fcn.00406368
pop ecx
xor al, al
jmp 0x406083
and dword [ebp - 0x1638], 0
push 0x4187b4
push ebx
mov byte [ebp - 0x1639], 1
mov byte [ebp - 0x163b], 1
mov byte [ebp - 0x163a], 0
call fcn.00409405
test eax, eax
pop ecx
pop ecx
mov dword [ebp - 0x1640], eax
jne 0x405e05
lea eax, [ebp - 0x1634]
push str.Error_reading_the_file:_n_n
push eax
call fcn.00408f00
lea eax, [ebp - 0x1634]
push ebx
push eax
call fcn.00408f10
lea eax, [ebp - 0x1634]
push eax
call fcn.00406368
add esp, 0x14
jmp 0x405d9c
push esi
lea eax, [ebp - 0x42c]
push eax
mov esi, 0x104
push esi
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryA]
lea eax, [ebp - 0x164c]
push eax
lea eax, [ebp - 0x118]
push eax
push esi
push ebx
call dword [sym.imp.KERNEL32.dll_GetFullPathNameA]
push dword [ebp + 8]
mov esi, edi
push 0x4189d4
push dword [ebp - 0x1638]
call fcn.0040593c
push dword [ebp + 8]
mov ebx, str.______________________________________________________________________________
push ebx
push dword [ebp - 0x1638]
call fcn.0040593c
push dword [ebp + 8]
push str.___AUT2EXE_INCLUDE_START:
push dword [ebp - 0x1638]
call fcn.0040593c
lea eax, [ebp - 0x118]
push eax
call fcn.00405989
push 0x418bf4
call fcn.00405989
push dword [ebp + 8]
push ebx
push dword [ebp - 0x1638]
call fcn.0040593c
push dword [ebp + 8]
push 0x4189d4
push dword [ebp - 0x1638]
call fcn.0040593c
lea eax, [ebp - 0x634]
push eax
lea eax, [ebp - 0x530]
push eax
lea eax, [ebp - 0x324]
push eax
lea eax, [ebp - 0x1644]
push eax
lea eax, [ebp - 0x118]
push eax
call fcn.00409085
lea eax, [ebp - 0x1644]
push eax
lea eax, [ebp - 0x220]
push eax
call fcn.00408f00
lea eax, [ebp - 0x324]
push eax
lea eax, [ebp - 0x220]
push eax
call fcn.00408f10
add esp, 0x24
lea eax, [ebp - 0x220]
push eax
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryA]
cmp byte [ebp - 0x163b], 1
jne 0x405ff4
push dword [ebp - 0x1640]
lea eax, [ebp - 0x1634]
push 0xfff
push eax
call fcn.004097ae
add esp, 0xc
test eax, eax
je 0x405ff4
inc dword [ebp - 0x1638]
lea esi, [ebp - 0x1634]
mov byte [ebp - 0x635], 0
call fcn.00405c38
mov eax, esi
push eax
call fcn.00408e10
test eax, eax
pop ecx
je 0x405f66
cmp byte [ebp + eax - 0x1635], 0x5f
mov byte [ebp - 0x163c], 1
je 0x405f6d
mov byte [ebp - 0x163c], 0
cmp byte [ebp - 0x163a], 1
push dword [ebp + 8]
jne 0x405f8f
lea eax, [ebp - 0x1634]
push eax
push dword [ebp - 0x1638]
mov esi, edi
call fcn.0040593c
jmp 0x405fd9
push dword [ebp - 0x1640]
lea eax, [ebp - 0x1638]
push eax
lea eax, [ebp - 0x118]
push eax
lea eax, [ebp - 0x1634]
push eax
mov ecx, edi
call fcn.004060a7
test eax, eax
je 0x405fd2
cmp eax, 1
jle 0x405fd9
cmp eax, 3
jle 0x405fcd
cmp eax, 4
jne 0x405fd9
mov byte [ebp - 0x163b], 0
jmp 0x405fd9
push dword [ebp + 8]
jmp 0x405f79
mov byte [ebp - 0x1639], 0
cmp byte [ebp - 0x163c], 1
sete byte [ebp - 0x163a]
cmp byte [ebp - 0x1639], 1
je 0x405f01
push dword [ebp + 8]
mov esi, edi
push 0x4189d4
push dword [ebp - 0x1638]
call fcn.0040593c
push dword [ebp + 8]
push ebx
push dword [ebp - 0x1638]
call fcn.0040593c
push dword [ebp + 8]
push str.___AUT2EXE_INCLUDE_END:
push dword [ebp - 0x1638]
call fcn.0040593c
lea eax, [ebp - 0x118]
push eax
call fcn.00405989
push 0x418bf4
call fcn.00405989
push dword [ebp + 8]
push ebx
push dword [ebp - 0x1638]
call fcn.0040593c
push dword [ebp + 8]
push 0x4189d4
push dword [ebp - 0x1638]
call fcn.0040593c
push dword [ebp - 0x1640]
call fcn.00409464
pop ecx
lea eax, [ebp - 0x42c]
push eax
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryA]
mov al, byte [ebp - 0x1639]
pop esi
mov ecx, dword [ebp - 0xc]
dec dword [0x41d254]
mov dword fs:[0], ecx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
pop ebx
call fcn.00411ba7
leave
ret 4