Function at 0x100ccbde
Capabilities:
Get common file path

Disassembly:
push 0x320
mov eax, 0x10223e83
call fcn.101b7126
mov edi, ecx
mov dword [ebp - 0x32c], edi
mov eax, dword [edi]
mov esi, dword [eax + 0x1c8]
mov ecx, esi
call fcn.101b79da
mov ecx, edi
call esi
mov ebx, eax
mov eax, dword [edi + 0xf34]
test eax, eax
je 0x100ccc87
push eax
call dword [sym.imp.USER32.dll_IsMenu]
test eax, eax
jne 0x100ccc24
call fcn.100669a3
cmp dword [edi + 0x158], 0
jne 0x100ccc42
push ebx
push dword [edi + 0xf34]
mov ecx, 0x102dc67c
call fcn.100de843
test eax, eax
jne 0x100ccc87
call fcn.100cd55f
test eax, eax
je 0x100ccc71
mov eax, dword [ebx]
push 1
mov esi, dword [eax + 0x438]
push dword [edi + 0xf34]
mov ecx, esi
call fcn.101b79da
mov ecx, ebx
call esi
test eax, eax
jne 0x100ccc87
xor eax, eax
jmp 0x100cd1f3
mov esi, dword [ebx]
xor eax, eax
cmp dword [edi + 0x158], eax
sete al
mov esi, dword [esi + 0x438]
push eax
jmp 0x100ccc55
call fcn.100674eb
mov eax, dword [eax + 4]
mov eax, dword [eax + 0x8c]
mov dword [ebp - 0x320], eax
test eax, eax
je 0x100ccf10
cmp dword [0x102dafe0], 0
jne 0x100ccf10
mov esi, dword [ebx + 0xc40]
xor edx, edx
mov dword [ebp - 0x308], edx
xor eax, eax
mov dword [ebp - 0x314], esi
mov dword [ebp - 0x310], eax
test esi, esi
je 0x100ccf10
lea ecx, [ebp - 0x314]
lea eax, [ebx + 0xc3c]
push ecx
mov ecx, eax
call fcn.10076b01
mov edi, dword [eax]
test edi, edi
je 0x100ccc1f
cmp dword [edi + 0x20], 0xe110
jne 0x100ccd0c
push str.Recent_File
lea ecx, [edi + 0x2c]
call fcn.1000f630
test eax, eax
je 0x100ccd20
mov eax, dword [edi + 0x24]
mov esi, dword [ebp - 0x314]
and eax, 1
inc dword [ebp - 0x308]
jmp 0x100cccc6
push esi
lea ecx, [ebx + 0xc3c]
call fcn.100689ba
mov eax, dword [edi]
push 1
mov esi, dword [eax + 4]
mov ecx, esi
call fcn.101b79da
mov ecx, edi
call esi
lea eax, [ebp - 0x218]
push eax
push 0x104
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
lea eax, [ebp - 0x218]
push eax
call fcn.101e5e0b
pop ecx
push 0x5c
pop ecx
mov word [ebp + eax*2 - 0x218], cx
inc eax
mov dword [ebp - 0x328], eax
add eax, eax
cmp eax, 0x208
jae 0x100cd0d7
mov edi, dword [ebp - 0x320]
xor ecx, ecx
mov word [ebp + eax - 0x218], cx
xor eax, eax
and dword [ebp - 0x30c], eax
mov dword [ebp - 0x318], eax
cmp dword [edi + 4], eax
jle 0x100ccebc
call fcn.100687ac
push eax
lea ecx, [ebp - 0x324]
call fcn.1000dd90
mov esi, dword [edi]
lea eax, [ebp - 0x218]
and dword [ebp - 4], 0
push 1
push dword [ebp - 0x328]
mov ecx, dword [esi + 0xc]
push eax
push dword [ebp - 0x30c]
lea eax, [ebp - 0x324]
push eax
call fcn.101b79da
mov ecx, edi
call dword [esi + 0xc]
test eax, eax
je 0x100cce8a
call fcn.100687ac
push eax
lea ecx, [ebp - 0x31c]
call fcn.1000dd90
push dword [ebp - 0x324]
mov eax, dword [ebp - 0x318]
inc eax
mov byte [ebp - 4], 1
push eax
mov dword [ebp - 0x318], eax
lea eax, [ebp - 0x31c]
push str._d__Ts
push eax
call fcn.10014750
mov esi, dword [ebp - 0x31c]
lea ecx, [ebp - 0x304]
mov eax, dword [ebp - 0x30c]
add esp, 0x10
add eax, 0xe110
push 0
push esi
push 0xffffffffffffffff
push 0
push eax
call fcn.101273d7
mov ecx, dword [ebx]
mov edx, dword [ebp - 0x308]
push edx
push eax
mov edi, dword [ecx + 0x344]
mov ecx, edi
mov byte [ebp - 4], 2
call fcn.101b79da
mov ecx, ebx
call edi
inc dword [ebp - 0x308]
lea ecx, [ebp - 0x304]
call fcn.101274c0
lea ecx, [esi - 0x10]
call fcn.1000dde0
mov edi, dword [ebp - 0x320]
mov ecx, dword [ebp - 0x324]
or dword [ebp - 4], 0xffffffff
lea ecx, [ecx - 0x10]
call fcn.1000dde0
mov eax, dword [ebp - 0x30c]
inc eax
mov dword [ebp - 0x30c], eax
cmp eax, dword [edi + 4]
jl 0x100ccda3
mov eax, dword [ebp - 0x318]
test eax, eax
jne 0x100ccf10
mov eax, dword [ebp - 0x310]
test eax, eax
je 0x100ccf10
mov esi, dword [ebp - 0x314]
test esi, esi
je 0x100ccf10
lea eax, [ebp - 0x314]
push eax
lea ecx, [ebx + 0xc3c]
call fcn.10076b01
mov edi, dword [eax]
test edi, edi
je 0x100ccc1f
test byte [edi + 0x24], 1
je 0x100ccf10
push esi
lea ecx, [ebx + 0xc3c]
call fcn.100689ba
mov eax, dword [edi]
push 1
mov esi, dword [eax + 4]
mov ecx, esi
call fcn.101b79da
mov ecx, edi
call esi
cmp dword [0x102dc9b8], 0
je 0x100cd14f
cmp dword [0x102dafe0], 0
jne 0x100cd14f
mov eax, dword [ebx + 0xc40]
xor esi, esi
and dword [ebp - 0x310], 0
xor edi, edi
mov dword [ebp - 0x308], esi
mov dword [ebp - 0x314], eax
test eax, eax
je 0x100cd14f
lea ecx, [ebx + 0xc3c]
mov dword [ebp - 0x320], eax
lea eax, [ebp - 0x314]
push eax
call fcn.10076b01
mov ecx, dword [eax]
mov dword [ebp - 0x30c], ecx
test ecx, ecx
je 0x100ccc1f
mov edx, dword [0x102dc9b8]
mov eax, dword [edx + 0x20]
cmp eax, dword [ecx + 0x20]
mov eax, dword [ebp - 0x314]
mov dword [ebp - 0x31c], eax
jne 0x100cd0f6
cmp dword [0x102dc3d8], 0
lea eax, [edx + 4]
mov dword [ebp - 0x318], eax
je 0x100ccfad
cmp dword [eax + 0xc], 0
je 0x100ccfe6
push dword [ebp - 0x320]
lea ecx, [ebx + 0xc3c]
call fcn.100689ba
mov ecx, dword [ebp - 0x30c]
push 1
mov eax, dword [ecx]
mov esi, dword [eax + 4]
mov ecx, esi
call fcn.101b79da
mov ecx, dword [ebp - 0x30c]
call esi
mov esi, dword [ebp - 0x308]
mov eax, dword [ebp - 0x318]
cmp dword [ebp - 0x310], 0
jne 0x100cd13a
test esi, esi
jne 0x100cd019
cmp dword [eax + 0xc], esi
je 0x100cd019
cmp dword [ebx + 0xc48], esi
je 0x100cd019
mov eax, dword [ebx]
push edi
mov esi, dword [eax + 0x348]
mov ecx, esi
call fcn.101b79da
mov ecx, ebx
call esi
inc edi
mov ecx, dword [ebp - 0x318]
mov eax, dword [ecx + 4]
mov dword [ebp - 0x310], eax
test eax, eax
je 0x100cd0b0
lea eax, [ebp - 0x310]
push eax
call fcn.100ac6c7
mov esi, eax
push 1
push dword [esi + 0x10]
call fcn.100dee34
mov ecx, eax
call fcn.100dedfc
xor ecx, ecx
cmp eax, 0xffffffff
setne cl
push ecx
push dword [esi + 4]
lea ecx, [eax + 1]
neg ecx
sbb ecx, ecx
and ecx, eax
push ecx
push 0
push dword [esi + 0x10]
lea ecx, [ebp - 0x304]
call fcn.101273d7
mov ecx, dword [ebx]
push edi
push eax
mov dword [ebp - 4], 3
mov esi, dword [ecx + 0x344]
mov ecx, esi
call fcn.101b79da
mov ecx, ebx
call esi
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x304]
inc edi
call fcn.101274c0
cmp dword [ebp - 0x310], 0
mov ecx, dword [ebp - 0x318]
jne 0x100cd030
cmp dword [ebp - 0x31c], 0
je 0x100cd0e4
mov eax, dword [ebx]
push edi
mov esi, dword [eax + 0x348]
mov ecx, esi
call fcn.101b79da
mov ecx, ebx
call esi
inc edi
test eax, eax
js 0x100cd0dc
xor eax, eax
inc eax
jmp 0x100cd0de
call fcn.101b752f
xor eax, eax
mov dword [ebp - 0x308], eax
mov esi, dword [ebp - 0x308]
mov dword [ebp - 0x310], 1
jmp 0x100cd13a
test byte [ecx + 0x24], 1
je 0x100cd132
test esi, esi
je 0x100cd12d
push dword [ebp - 0x320]
lea ecx, [ebx + 0xc3c]
call fcn.100689ba
mov ecx, dword [ebp - 0x30c]
push 1
mov eax, dword [ecx]
mov esi, dword [eax + 4]
mov ecx, esi
call fcn.101b79da
mov ecx, dword [ebp - 0x30c]
call esi
xor esi, esi
inc esi
jmp 0x100cd134
xor esi, esi
mov dword [ebp - 0x308], esi
mov eax, dword [ebp - 0x31c]
lea ecx, [ebx + 0xc3c]
inc edi
test eax, eax
jne 0x100ccf55
mov eax, dword [ebx]
mov esi, dword [eax + 0x3c4]
mov ecx, esi
call fcn.101b79da
mov ecx, ebx
call esi
mov edi, eax
mov dword [ebp - 0x328], edi
test edi, edi
je 0x100cd185
mov ecx, dword [edi]
mov esi, dword [ecx + 0x150]
mov ecx, esi
call fcn.101b79da
mov ecx, edi
call esi
test eax, eax
jne 0x100cd196
mov edi, dword [ebp - 0x32c]
push edi
call fcn.100938ed
pop ecx
mov ecx, eax
jmp 0x100cd1a2
mov edi, dword [ebp - 0x32c]
mov ecx, dword [ebp - 0x328]
test ecx, ecx
je 0x100cd1bc
mov eax, dword [ebx]
push 0
push ecx
mov esi, dword [eax + 0x244]
mov ecx, esi
call fcn.101b79da
mov ecx, ebx
call esi
mov eax, dword [0x102dc518]
test eax, eax
jne 0x100cd1cc
mov ecx, edi
call fcn.1006d4a6
push edi
push eax
call fcn.100cb0bf
test eax, eax
je 0x100ccc6a
mov edx, dword [edi]
push 1
mov esi, dword [edx + 0x178]
mov ecx, esi
call fcn.101b79da
mov ecx, edi
call esi
xor eax, eax
inc eax
call fcn.101b70d0
ret