Function at 0x48564c
Capabilities:
Get common file path

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffff004
push eax
add esp, 0xffffffa0
push ebx
push esi
push edi
mov esi, edx
mov edi, eax
mov eax, 0x4a2bb0
call fcn.0048d8c4
push esi
push edi
call fcn.0048d3d8
add esp, 8
test eax, eax
jne 0x48568c
xor eax, eax
mov edx, dword [ebp - 0xc44]
mov dword fs:[0], edx
jmp 0x48593a
xor ebx, ebx
lea eax, [ebp - 0x1060]
push eax
push 0x400
call sub.KERNEL32.DLL_GetCurrentDirectoryA
xor edx, edx
mov dl, byte [ebp - 0x1060]
mov dword [ebp - 0xc4c], edx
push dword [ebp - 0xc4c]
call fcn.00491378
pop ecx
mov dword [ebp - 0xc48], eax
xor ecx, ecx
mov cl, byte [ebp - 0x1060]
cmp ecx, 0x5c
je 0x485740
xor eax, eax
mov al, byte [esi]
cmp eax, 0x5c
je 0x485740
xor edx, edx
mov dl, byte [edi]
cmp edx, 0x5c
je 0x485740
xor ecx, ecx
mov cl, byte [esi]
mov dword [ebp - 0xc54], ecx
push dword [ebp - 0xc54]
call fcn.00491378
pop ecx
mov dword [ebp - 0xc50], eax
xor eax, eax
mov al, byte [edi]
mov dword [ebp - 0xc58], eax
push dword [ebp - 0xc58]
call fcn.00491378
pop ecx
xor edx, edx
mov dl, byte [esi + 1]
cmp edx, 0x3a
je 0x485726
mov ecx, dword [ebp - 0xc48]
mov dword [ebp - 0xc50], ecx
xor edx, edx
mov dl, byte [edi + 1]
cmp edx, 0x3a
je 0x485736
mov eax, dword [ebp - 0xc48]
cmp eax, dword [ebp - 0xc50]
je 0x485740
mov bl, 1
xor edx, edx
mov eax, edi
call fcn.0040a0e0
test al, al
je 0x485822
mov word [ebp - 0xc34], 8
lea eax, [ebp - 0xc20]
call fcn.00409038
inc dword [ebp - 0xc28]
mov word [ebp - 0xc34], 0x14
push 0
push 1
lea eax, [ebp - 0xc20]
xor ecx, ecx
mov edx, edi
call fcn.00409130
test al, al
je 0x48579a
lea eax, [ebp - 0xc20]
call fcn.004093e4
test al, al
jne 0x4857c9
mov eax, 0xf
mov edx, 2
push eax
lea eax, [ebp - 0xc20]
dec dword [ebp - 0xc28]
call fcn.004090e8
pop eax
mov edx, dword [ebp - 0xc44]
mov dword fs:[0], edx
jmp 0x48593a
mov eax, edi
call fcn.0040a90c
test al, al
jne 0x485803
mov eax, 0xf
mov edx, 2
push eax
lea eax, [ebp - 0xc20]
dec dword [ebp - 0xc28]
call fcn.004090e8
pop eax
mov edx, dword [ebp - 0xc44]
mov dword fs:[0], edx
jmp 0x48593a
dec dword [ebp - 0xc28]
lea eax, [ebp - 0xc20]
mov edx, 2
call fcn.004090e8
mov word [ebp - 0xc34], 0
test bl, bl
jne 0x48583e
push 0
mov ecx, edi
xor edx, edx
mov eax, esi
call fcn.0040a8b4
xor ebx, ebx
mov bl, al
cmp ebx, 1
sbb ebx, ebx
neg ebx
test bl, bl
je 0x48592b
push 0x4a2b7c
push esi
call fcn.0048f3cc
add esp, 8
mov dword [ebp - 0xc5c], eax
test eax, eax
jne 0x485887
mov eax, 0x4a697c
mov ecx, esi
mov edx, dword [0x4dc074]
call fcn.00429794
mov eax, 0xa
mov edx, dword [ebp - 0xc44]
mov dword fs:[0], edx
jmp 0x48593a
push 0x4a2b7f
push edi
call fcn.0048f3cc
add esp, 8
mov dword [ebp - 0xc60], eax
test eax, eax
jne 0x4858bf
push dword [ebp - 0xc5c]
call fcn.0048eed0
pop ecx
mov eax, 0xf
mov edx, dword [ebp - 0xc44]
mov dword fs:[0], edx
jmp 0x48593a
or ecx, 0xffffffff
mov edx, dword [ebp - 0xc60]
mov eax, dword [ebp - 0xc5c]
call fcn.0048598c
push dword [ebp - 0xc5c]
mov ebx, eax
call fcn.0048eed0
pop ecx
push dword [ebp - 0xc60]
call fcn.0048eed0
pop ecx
test eax, eax
jne 0x4858f5
test ebx, ebx
je 0x485924
mov eax, edi
call fcn.0040a90c
test ebx, ebx
je 0x485910
cmp ebx, 0xa
jne 0x48590c
mov eax, 0xe
jmp 0x485915
mov eax, ebx
jmp 0x485915
mov eax, 0xe
mov edx, dword [ebp - 0xc44]
mov dword fs:[0], edx
jmp 0x48593a
mov eax, esi
call fcn.0040a90c
xor eax, eax
mov edx, dword [ebp - 0xc44]
mov dword fs:[0], edx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret