Function at 0x1021201
Capabilities:
Get common file path

Disassembly:
push 0x224
mov eax, 0x1041005
call fcn.01001615
mov eax, dword [ebp + 0x18]
mov esi, dword [ebp + 0x10]
mov edi, dword [ebp + 0xc]
push eax
push esi
push edi
mov dword [ebp - 0x228], esi
mov dword [ebp - 0x220], eax
call fcn.0101f6ed
xor ebx, ebx
cmp eax, ebx
jl 0x102129a
push dword [ebp - 0x220]
push ebx
push esi
push edi
call fcn.0101f969
cmp eax, ebx
mov dword [ebp - 0x22c], eax
jl 0x102129a
lea eax, [ebp - 0x21c]
push eax
push esi
push edi
mov dword [ebp - 0x21c], ebx
call fcn.01027923
cmp eax, ebx
jge 0x102129a
cmp dword [ebp - 0x21c], ebx
jbe 0x102127e
push dword [ebp - 0x220]
push esi
push edi
call fcn.0101f6ed
mov dword [ebp - 0x22c], eax
cmp dword [ebp - 0x22c], ebx
jl 0x102129a
push dword [ebp - 0x220]
push 0x67
push 0x1021958
push esi
push edi
call fcn.0101fad5
xor eax, eax
cmp dword [0x104d00c], 0x7d6
push 0x10038f0
setge al
lea ecx, [ebp - 0x224]
mov dword [ebp - 0x21c], eax
call fcn.01003bb9
mov esi, dword [ebp - 0x224]
neg esi
sbb esi, esi
and esi, 0x7ff8fff2
add esi, 0x8007000e
mov dword [ebp - 4], ebx
js 0x10217e7
push dword [ebp - 0x220]
push 0xffffffffffffffff
push dword [ebp - 0x224]
push dword [ebp - 0x228]
push edi
call fcn.0101fa0d
mov esi, eax
cmp esi, ebx
jl 0x10217e7
push dword [ebp - 0x220]
push 1
push ebx
push ebx
push 0x24
push dword [ebp - 0x224]
push dword [ebp - 0x228]
push edi
call fcn.0101f509
mov esi, eax
cmp esi, ebx
jl 0x10217e7
push dword [ebp - 0x220]
push 1
push ebx
push ebx
push 0x26
push dword [ebp - 0x224]
push dword [ebp - 0x228]
push edi
call fcn.0101f509
mov esi, eax
cmp esi, ebx
jl 0x10217e7
cmp dword [ebp - 0x21c], ebx
je 0x102137b
push dword [ebp - 0x220]
push 1
push ebx
push 1
push 0x16
push dword [ebp - 0x224]
push dword [ebp - 0x228]
push edi
call fcn.0101f509
mov esi, eax
cmp esi, ebx
jl 0x10217e7
push dword [ebp - 0x220]
push 1
push ebx
push ebx
push 0x23
push dword [ebp - 0x224]
push dword [ebp - 0x228]
push edi
call fcn.0101f509
mov esi, eax
cmp esi, ebx
jl 0x10217e7
push dword [ebp - 0x220]
push dword [ebp - 0x224]
push dword [ebp - 0x228]
push edi
push dword [ebp + 8]
call fcn.01020a83
mov esi, eax
cmp esi, ebx
jl 0x10217e7
push 0x1021908
lea ecx, [ebp - 0x22c]
call fcn.01003bb9
mov esi, dword [ebp - 0x22c]
neg esi
sbb esi, esi
and esi, 0x7ff8fff2
add esi, 0x8007000e
mov byte [ebp - 4], 1
js 0x1021420
push dword [ebp - 0x220]
push 1
push ebx
push ebx
push dword [ebp - 0x22c]
push dword [ebp - 0x224]
push dword [ebp - 0x228]
push edi
call fcn.0101f34d
mov esi, eax
push dword [ebp - 0x22c]
mov byte [ebp - 4], bl
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
cmp esi, ebx
jl 0x10217e7
push 0x10218d8
lea ecx, [ebp - 0x22c]
call fcn.01003bb9
mov esi, dword [ebp - 0x22c]
neg esi
sbb esi, esi
and esi, 0x7ff8fff2
add esi, 0x8007000e
mov byte [ebp - 4], 2
js 0x1021487
push dword [ebp - 0x220]
push 1
push ebx
push ebx
push dword [ebp - 0x22c]
push dword [ebp - 0x224]
push dword [ebp - 0x228]
push edi
call fcn.0101f34d
mov esi, eax
push dword [ebp - 0x22c]
mov byte [ebp - 4], bl
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
cmp esi, ebx
jl 0x10217e7
push 0x10218b4
lea ecx, [ebp - 0x22c]
call fcn.01003bb9
mov esi, dword [ebp - 0x22c]
neg esi
sbb esi, esi
and esi, 0x7ff8fff2
add esi, 0x8007000e
mov byte [ebp - 4], 3
js 0x10214ee
push dword [ebp - 0x220]
push 1
push ebx
push ebx
push dword [ebp - 0x22c]
push dword [ebp - 0x224]
push dword [ebp - 0x228]
push edi
call fcn.0101f34d
mov esi, eax
push dword [ebp - 0x22c]
mov byte [ebp - 4], bl
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
cmp esi, ebx
jl 0x10217e7
push 0x1021880
lea ecx, [ebp - 0x22c]
call fcn.01003bb9
mov esi, dword [ebp - 0x22c]
neg esi
sbb esi, esi
and esi, 0x7ff8fff2
add esi, 0x8007000e
mov byte [ebp - 4], 4
js 0x1021555
push dword [ebp - 0x220]
push 1
push ebx
push ebx
push dword [ebp - 0x22c]
push dword [ebp - 0x224]
push dword [ebp - 0x228]
push edi
call fcn.0101f34d
mov esi, eax
push dword [ebp - 0x22c]
mov byte [ebp - 4], bl
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
cmp esi, ebx
jl 0x10217e7
cmp dword [ebp - 0x21c], ebx
jne 0x10215d3
push 0x1021854
lea ecx, [ebp - 0x22c]
call fcn.01003bb9
mov esi, dword [ebp - 0x22c]
neg esi
sbb esi, esi
and esi, 0x7ff8fff2
add esi, 0x8007000e
mov byte [ebp - 4], 5
js 0x10215c4
push dword [ebp - 0x220]
push 1
push ebx
push ebx
push dword [ebp - 0x22c]
push dword [ebp - 0x224]
push dword [ebp - 0x228]
push edi
call fcn.0101f34d
mov esi, eax
push dword [ebp - 0x22c]
mov byte [ebp - 4], bl
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
cmp esi, ebx
jl 0x10217e7
cmp dword [ebp - 0x21c], ebx
jne 0x1021642
push 0x102182c
lea ecx, [ebp - 0x21c]
call fcn.01003bb9
mov esi, dword [ebp - 0x21c]
neg esi
sbb esi, esi
and esi, 0x7ff8fff2
add esi, 0x8007000e
mov byte [ebp - 4], 6
js 0x1021633
push dword [ebp - 0x220]
push 1
push ebx
push ebx
push dword [ebp - 0x21c]
push dword [ebp - 0x224]
push dword [ebp - 0x228]
push edi
call fcn.0101f34d
mov esi, eax
push dword [ebp - 0x21c]
mov byte [ebp - 4], bl
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
cmp esi, ebx
jl 0x10217e7
lea eax, [ebp - 0x21c]
push eax
lea eax, [ebp - 0x218]
push eax
mov dword [ebp - 0x21c], 0x104
call dword [sym.imp.USERENV.dll_GetDefaultUserProfileDirectoryW]
test eax, eax
je 0x1021746
lea eax, [ebp - 0x218]
push eax
mov dword [ebp - 0x21c], 0x104
call dword [sym.imp.SHLWAPI.dll_PathAddBackslashW]
test eax, eax
jne 0x1021692
call fcn.0100f5ae
mov esi, eax
cmp esi, ebx
jl 0x10217e7
push 0x1018a14
push dword [ebp - 0x21c]
lea eax, [ebp - 0x218]
push eax
call fcn.0100e0f4
mov esi, eax
cmp esi, ebx
jl 0x10217e7
push 0x100fe9c
lea ecx, [ebp - 0x22c]
call fcn.01003bb9
mov esi, dword [ebp - 0x22c]
neg esi
sbb esi, esi
and esi, 0x7ff8fff2
add esi, 0x8007000e
mov byte [ebp - 4], 7
js 0x1021735
lea eax, [ebp - 0x218]
push eax
lea ecx, [ebp - 0x22c]
call fcn.0101e1ae
mov esi, dword [ebp - 0x22c]
neg esi
sbb esi, esi
and esi, 0x7ff8fff2
add esi, 0x8007000e
js 0x1021735
push dword [ebp - 0x220]
push 1
push ebx
push ebx
push dword [ebp - 0x22c]
push dword [ebp - 0x224]
push dword [ebp - 0x228]
push edi
call fcn.0101f34d
mov esi, eax
push dword [ebp - 0x22c]
mov byte [ebp - 4], bl
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
jmp 0x1021774
push ebx
lea ecx, [ebp - 0x230]
call fcn.0101e28a
mov ecx, dword [ebp - 0x220]
push 0x7dc
lea eax, [ebp - 0x230]
push eax
call fcn.0100f6ba
lea ecx, [ebp - 0x230]
call fcn.0100e0c2
cmp esi, ebx
jl 0x10217e7
push 0x1021800
lea ecx, [ebp - 0x21c]
call fcn.01003bb9
mov esi, dword [ebp - 0x21c]
neg esi
sbb esi, esi
and esi, 0x7ff8fff2
add esi, 0x8007000e
mov byte [ebp - 4], 8
js 0x10217c8
push dword [ebp - 0x220]
push 1
push ebx
push ebx
push dword [ebp - 0x21c]
push dword [ebp - 0x224]
push dword [ebp - 0x228]
push edi
call fcn.0101f34d
mov esi, eax
push dword [ebp - 0x21c]
mov byte [ebp - 4], bl
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
cmp esi, ebx
jl 0x10217e7
push dword [ebp - 0x228]
push edi
call fcn.01028655
push dword [ebp - 0x224]
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, esi
call fcn.01001652
ret 0x14