Function at 0x101d498
Capabilities:
Get common file path

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x14
push ebx
push esi
push edi
lea eax, [ebp + 0xc]
push eax
lea ecx, [ebp - 4]
call fcn.010162d3
mov ecx, dword [ebp + 8]
call fcn.01015b06
lea ecx, [ebp - 4]
call fcn.01015871
test eax, eax
jne 0x101d72e
lea ecx, [ebp + 0x10]
call fcn.01015871
test eax, eax
jne 0x101d72e
cmp dword [ebp + 0x14], eax
je 0x101d72e
lea ecx, [ebp - 0x10]
call fcn.01015b06
push 0x82
call fcn.0101ffa8
mov edi, eax
test edi, edi
je 0x101d541
mov esi, dword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
push 0x40
push edi
call esi
mov ebx, eax
test ebx, ebx
je 0x101d53b
cmp ebx, 0x40
jb 0x101d52e
lea eax, [ebx + ebx + 2]
push eax
call fcn.0101ffa8
mov edi, eax
test edi, edi
je 0x101d541
push ebx
push edi
call esi
test eax, eax
jne 0x101d52e
push edi
call fcn.0101b7bb
xor edi, edi
test edi, edi
je 0x101d541
push edi
lea ecx, [ebp - 0x10]
call fcn.01015cf8
push edi
call fcn.0101b7bb
lea eax, [ebp - 4]
push eax
lea ecx, [ebp - 0xc]
call fcn.010162d3
lea ecx, [ebp - 0xc]
call fcn.01015ec8
mov edi, 0x100507c
push edi
lea eax, [ebp - 0xc]
push eax
call fcn.01015936
test eax, eax
mov ebx, 0x1005068
je 0x101d572
lea eax, [ebp + 0x10]
jmp 0x101d583
push ebx
lea eax, [ebp - 0xc]
push eax
call fcn.01015936
test eax, eax
je 0x101d58c
lea eax, [ebp - 0x10]
mov ecx, dword [ebp + 8]
push eax
call fcn.01015c9e
mov ecx, dword [ebp + 8]
call fcn.01015871
cmp eax, 1
jne 0x101d71e
lea ecx, [ebp - 8]
call fcn.01015b06
push edi
lea ecx, [ebp - 8]
call fcn.01015cf8
lea ecx, [ebp - 8]
call fcn.01015883
push eax
lea ecx, [ebp - 4]
call fcn.01015a7a
mov esi, eax
cmp esi, 0xffffffff
jne 0x101d5eb
push ebx
lea ecx, [ebp - 8]
call fcn.01015cf8
lea ecx, [ebp - 8]
call fcn.01015883
push eax
lea ecx, [ebp - 4]
call fcn.01015a7a
mov esi, eax
cmp esi, 0xffffffff
je 0x101d6d5
lea ecx, [ebp - 8]
call fcn.01015866
add esi, eax
push esi
lea eax, [ebp - 0x14]
push eax
lea ecx, [ebp - 4]
call fcn.0101640d
push eax
lea ecx, [ebp - 4]
call fcn.01015c9e
lea ecx, [ebp - 0x14]
call fcn.010159a8
lea ecx, [ebp - 4]
call fcn.01015871
test eax, eax
jne 0x101d716
push eax
lea ecx, [ebp - 4]
call fcn.010158ff
cmp ax, 0x2b
jne 0x101d716
push 1
lea eax, [ebp - 0x14]
push eax
lea ecx, [ebp - 4]
call fcn.0101640d
push eax
lea ecx, [ebp - 4]
call fcn.01015c9e
lea ecx, [ebp - 0x14]
call fcn.010159a8
lea ecx, [ebp - 4]
call fcn.01015871
test eax, eax
jne 0x101d716
push ecx
lea eax, [ebp - 4]
mov ecx, esp
push eax
call fcn.010162d3
mov ecx, dword [ebp + 0x14]
lea eax, [ebp - 0x14]
push eax
call fcn.0101fc50
push eax
lea ecx, [ebp - 4]
call fcn.01015c9e
lea ecx, [ebp - 0x14]
call fcn.010159a8
lea ecx, [ebp - 4]
call fcn.0101626a
lea ecx, [ebp - 4]
call fcn.0101621b
lea ecx, [ebp - 4]
call fcn.01015871
test eax, eax
jne 0x101d716
push edi
lea eax, [ebp - 8]
push eax
call fcn.01015936
test eax, eax
push dword [ebp - 4]
je 0x101d6c0
push dword [ebp + 0x10]
jmp 0x101d6c3
push dword [ebp - 0x10]
push 0x1002520
push dword [ebp + 8]
call fcn.01016200
add esp, 0x10
jmp 0x101d716
push ecx
lea eax, [ebp - 4]
mov ecx, esp
push eax
call fcn.010162d3
mov ecx, dword [ebp + 0x14]
lea eax, [ebp - 0x14]
push eax
call fcn.0101fc50
push eax
lea ecx, [ebp - 4]
call fcn.01015c9e
lea ecx, [ebp - 0x14]
call fcn.010159a8
lea ecx, [ebp - 4]
call fcn.01015871
test eax, eax
jne 0x101d716
mov ecx, dword [ebp + 8]
lea eax, [ebp - 4]
push eax
call fcn.01015c9e
lea ecx, [ebp - 8]
call fcn.010159a8
lea ecx, [ebp - 0xc]
call fcn.010159a8
lea ecx, [ebp - 0x10]
call fcn.010159a8
lea ecx, [ebp - 4]
call fcn.010159a8
lea ecx, [ebp + 0xc]
call fcn.010159a8
lea ecx, [ebp + 0x10]
call fcn.010159a8
mov eax, dword [ebp + 8]
pop edi
pop esi
pop ebx
leave
ret 0x10