Function at 0x40eb69
Capabilities:
Get common file path

Disassembly:
push ebp
lea ebp, [esp - 0x7ac]
sub esp, 0x82c
mov eax, dword [0x4755d0]
xor eax, ebp
mov dword [ebp + 0x7a8], eax
mov eax, dword [ebp + 0x7b4]
push ebx
push esi
push edi
mov edi, dword [ebp + 0x7b8]
mov esi, 0x207
xor ebx, ebx
push esi
mov dword [ebp - 0x80], eax
lea eax, [ebp + 0x295]
push ebx
push eax
mov dword [ebp - 0x7c], edi
mov byte [ebp + 0x294], bl
call fcn.00448090
push esi
lea eax, [ebp + 0x49d]
push ebx
push eax
mov byte [ebp + 0x49c], bl
call fcn.00448090
mov esi, 0x103
push esi
lea eax, [ebp + 0x6a5]
push ebx
push eax
mov byte [ebp + 0x6a4], bl
call fcn.00448090
push esi
lea eax, [ebp + 0x191]
push ebx
push eax
mov byte [ebp + 0x190], bl
call fcn.00448090
push esi
lea eax, [ebp - 0x77]
push ebx
push eax
mov byte [ebp - 0x78], bl
call fcn.00448090
push esi
lea eax, [ebp + 0x8d]
push ebx
push eax
mov byte [ebp + 0x8c], bl
call fcn.00448090
add esp, 0x48
cmp edi, ebx
je 0x40eeab
mov eax, dword [ebp - 0x80]
mov byte [edi], bl
cmp eax, ebx
je 0x40eeab
cmp byte [eax], bl
je 0x40eeab
mov edi, dword [sym.imp.KERNEL32.dll_lstrlenA]
push eax
call edi
inc eax
cmp eax, esi
jle 0x40ec49
mov eax, esi
jmp 0x40ec4f
push dword [ebp - 0x80]
call edi
inc eax
push eax
push dword [ebp - 0x80]
lea eax, [ebp + 0x294]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpynA]
lea eax, [ebp + 0x294]
push eax
call fcn.0040d1b6
lea eax, [ebp + 0x294]
push eax
call edi
lea ecx, [ebp + 0x294]
dec ecx
cmp byte [eax + ecx], 0x5c
je 0x40eca5
push ebx
lea eax, [ebp + 0x294]
push eax
call fcn.0040dde2
test eax, eax
je 0x40eca5
push 0x45c800
lea eax, [ebp + 0x294]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcatA]
test dword [ebp + 0x7bc], 0x100
je 0x40ed56
lea eax, [ebp + 0x294]
push eax
call edi
inc eax
cmp eax, esi
jle 0x40ecc7
mov eax, esi
jmp 0x40ecd1
lea eax, [ebp + 0x294]
push eax
call edi
inc eax
mov esi, dword [ebp - 0x7c]
push eax
lea eax, [ebp + 0x294]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_lstrcpynA]
push ebx
push 0x45f088
push esi
call fcn.004417cc
push ebx
push 0x45f084
push esi
call fcn.004417cc
push esi
call edi
push ebx
push dword [ebp - 0x7c]
lea esi, [eax - 1]
jmp 0x40ed22
cmp esi, ebx
jle 0x40ed2b
mov eax, dword [ebp - 0x7c]
mov cl, byte [eax + esi]
cmp cl, bl
je 0x40ed2e
cmp cl, 0x3a
je 0x40ed2e
cmp cl, 0x5c
je 0x40ed2e
push ebx
dec esi
push eax
call fcn.0040dde2
test eax, eax
je 0x40ed07
mov eax, dword [ebp - 0x7c]
push eax
mov byte [eax + esi + 1], bl
call edi
mov ecx, eax
mov eax, dword [ebp - 0x7c]
cmp byte [ecx + eax - 1], 0x5c
je 0x40eeab
push 0x45c800
push eax
call dword [sym.imp.KERNEL32.dll_lstrcatA]
jmp 0x40eeab
push esi
lea eax, [ebp + 0x8c]
push eax
push esi
lea eax, [ebp - 0x78]
push eax
push esi
lea eax, [ebp + 0x190]
push eax
push esi
lea eax, [ebp + 0x6a4]
push eax
lea eax, [ebp + 0x294]
push eax
call fcn.0044a225
add esp, 0x24
test byte [ebp + 0x7bc], 1
mov byte [ebp + 0x49c], bl
je 0x40ee07
push 0x45e494
push dword [ebp - 0x80]
call fcn.00447a30
pop ecx
pop ecx
test eax, eax
jne 0x40ee07
cmp byte [ebp + 0x6a4], bl
jne 0x40edef
lea eax, [ebp + 0x6a4]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryA]
lea eax, [ebp + 0x6a4]
push 0x45e150
push eax
call fcn.00447a30
pop ecx
pop ecx
test eax, eax
je 0x40ede9
lea eax, [ebp + 0x6a4]
push 0x45e150
push eax
call fcn.00447a30
pop ecx
pop ecx
mov byte [eax + 1], bl
jmp 0x40edef
mov byte [ebp + 0x6a4], bl
mov ebx, dword [sym.imp.KERNEL32.dll_lstrcatA]
lea eax, [ebp + 0x6a4]
push eax
lea eax, [ebp + 0x49c]
push eax
call ebx
jmp 0x40ee0d
mov ebx, dword [sym.imp.KERNEL32.dll_lstrcatA]
test byte [ebp + 0x7bc], 2
je 0x40ee4f
lea eax, [ebp + 0x49c]
push eax
call edi
lea ecx, [ebp + 0x49c]
cmp byte [eax + ecx - 1], 0x3a
jne 0x40ee3f
cmp byte [ebp + 0x190], 0x5c
je 0x40ee3f
push 0x45c800
mov eax, ecx
push eax
call ebx
lea eax, [ebp + 0x190]
push eax
lea eax, [ebp + 0x49c]
push eax
call ebx
test byte [ebp + 0x7bc], 4
je 0x40ee65
lea eax, [ebp - 0x78]
push eax
lea eax, [ebp + 0x49c]
push eax
call ebx
test byte [ebp + 0x7bc], 8
je 0x40ee7e
lea eax, [ebp + 0x8c]
push eax
lea eax, [ebp + 0x49c]
push eax
call ebx
lea eax, [ebp + 0x49c]
push eax
call edi
inc eax
cmp eax, esi
jle 0x40ee90
mov eax, esi
jmp 0x40ee9a
lea eax, [ebp + 0x49c]
push eax
call edi
inc eax
push eax
lea eax, [ebp + 0x49c]
push eax
push dword [ebp - 0x7c]
call dword [sym.imp.KERNEL32.dll_lstrcpynA]
mov ecx, dword [ebp + 0x7a8]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.00448080
add ebp, 0x7ac
leave
ret 0xc