Function at 0x497030
Capabilities:
Get common file path

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffff004
push eax
add esp, 0xffffff9c
push ebx
push esi
push edi
mov esi, ecx
mov dword [ebp - 0xc48], edx
mov edi, eax
mov eax, 0x4b7424
call fcn.004a0204
push esi
push edi
call fcn.0049fd88
add esp, 8
test eax, eax
jne 0x497076
xor eax, eax
mov edx, dword [ebp - 0xc44]
mov dword fs:[0], edx
jmp 0x49735d
xor ebx, ebx
lea eax, [ebp - 0x1064]
push eax
push 0x400
call sub.KERNEL32.DLL_GetCurrentDirectoryA
xor edx, edx
mov dl, byte [ebp - 0x1064]
mov dword [ebp - 0xc50], edx
push dword [ebp - 0xc50]
call fcn.004a3e80
pop ecx
mov dword [ebp - 0xc4c], eax
xor ecx, ecx
mov cl, byte [ebp - 0x1064]
cmp ecx, 0x5c
je 0x49712a
xor eax, eax
mov al, byte [esi]
cmp eax, 0x5c
je 0x49712a
xor edx, edx
mov dl, byte [edi]
cmp edx, 0x5c
je 0x49712a
xor ecx, ecx
mov cl, byte [esi]
mov dword [ebp - 0xc58], ecx
push dword [ebp - 0xc58]
call fcn.004a3e80
pop ecx
mov dword [ebp - 0xc54], eax
xor eax, eax
mov al, byte [edi]
mov dword [ebp - 0xc5c], eax
push dword [ebp - 0xc5c]
call fcn.004a3e80
pop ecx
xor edx, edx
mov dl, byte [esi + 1]
cmp edx, 0x3a
je 0x497110
mov ecx, dword [ebp - 0xc4c]
mov dword [ebp - 0xc54], ecx
xor edx, edx
mov dl, byte [edi + 1]
cmp edx, 0x3a
je 0x497120
mov eax, dword [ebp - 0xc4c]
cmp eax, dword [ebp - 0xc54]
je 0x49712a
mov bl, 1
mov edx, dword [ebp - 0xc48]
mov eax, edi
call fcn.0040a918
test al, al
je 0x49721a
mov word [ebp - 0xc34], 8
lea eax, [ebp - 0xc20]
call fcn.00409724
inc dword [ebp - 0xc28]
mov word [ebp - 0xc34], 0x14
push 0
push 1
lea eax, [ebp - 0xc20]
mov ecx, dword [ebp - 0xc48]
mov edx, edi
call fcn.00409818
test al, al
je 0x49718c
lea eax, [ebp - 0xc20]
call fcn.00409af8
test al, al
jne 0x4971bb
mov eax, 0xf
mov edx, 2
push eax
lea eax, [ebp - 0xc20]
dec dword [ebp - 0xc28]
call fcn.004097d4
pop eax
mov edx, dword [ebp - 0xc44]
mov dword fs:[0], edx
jmp 0x49735d
mov edx, dword [ebp - 0xc48]
mov eax, edi
call fcn.0040b1cc
test al, al
jne 0x4971fb
mov eax, 0xf
mov edx, 2
push eax
lea eax, [ebp - 0xc20]
dec dword [ebp - 0xc28]
call fcn.004097d4
pop eax
mov edx, dword [ebp - 0xc44]
mov dword fs:[0], edx
jmp 0x49735d
dec dword [ebp - 0xc28]
lea eax, [ebp - 0xc20]
mov edx, 2
call fcn.004097d4
mov word [ebp - 0xc34], 0
test bl, bl
jne 0x49723a
push dword [ebp - 0xc48]
mov ecx, edi
xor edx, edx
mov eax, esi
call fcn.0040b140
xor ebx, ebx
mov bl, al
cmp ebx, 1
sbb ebx, ebx
neg ebx
test bl, bl
je 0x49734e
push 0x4b73f1
push esi
call fcn.004a1e14
add esp, 8
mov dword [ebp - 0xc60], eax
test eax, eax
jne 0x497283
mov eax, 0x4bb2e4
mov ecx, esi
mov edx, dword [0x4f5e6c]
call fcn.0042eb84
mov eax, 0xa
mov edx, dword [ebp - 0xc44]
mov dword fs:[0], edx
jmp 0x49735d
push 0
mov ecx, 0x4b73f4
mov edx, dword [ebp - 0xc48]
mov eax, edi
call fcn.0040b5f8
mov dword [ebp - 0xc64], eax
test eax, eax
jne 0x4972c4
push dword [ebp - 0xc60]
call fcn.004a191c
pop ecx
mov eax, 0xf
mov edx, dword [ebp - 0xc44]
mov dword fs:[0], edx
jmp 0x49735d
mov eax, 0x4bb2e4
xor edx, edx
call fcn.0042ed20
or ecx, 0xffffffff
mov edx, dword [ebp - 0xc64]
mov eax, dword [ebp - 0xc60]
call fcn.004973b0
push dword [ebp - 0xc60]
mov ebx, eax
call fcn.004a191c
pop ecx
mov eax, 0x4bb2e4
mov dl, 1
call fcn.0042ed20
push dword [ebp - 0xc64]
call fcn.004a191c
pop ecx
test eax, eax
jne 0x497312
test ebx, ebx
je 0x497347
mov edx, dword [ebp - 0xc48]
mov eax, edi
call fcn.0040b1cc
test ebx, ebx
je 0x497333
cmp ebx, 0xa
jne 0x49732f
mov eax, 0xe
jmp 0x497338
mov eax, ebx
jmp 0x497338
mov eax, 0xe
mov edx, dword [ebp - 0xc44]
mov dword fs:[0], edx
jmp 0x49735d
mov eax, esi
call fcn.0040b1c4
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