Function at 0x1000d753
Capabilities:
Get common file path

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x440
mov eax, dword [0x10041914]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x418], eax
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x434], eax
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x428], eax
mov eax, dword [ebp + 0x18]
mov dword [ebp - 0x430], eax
mov eax, dword [ebp + 0x1c]
push ebx
mov ebx, dword [ebp + 0x10]
mov dword [ebp - 0x42c], eax
xor eax, eax
push esi
push edi
mov dword [ebp - 0x438], eax
mov esi, eax
mov dword [ebp - 0x420], eax
mov edi, ecx
mov dword [ebp - 0x41c], eax
lea eax, [ebp - 0x41c]
push eax
mov dword [ebp - 0x424], ebx
call fcn.1000da54
xor eax, eax
cmp dword [edi + 0xa4], eax
je 0x1000f2b6
cmp dword [ebp - 0x41c], eax
jne 0x1000f2b6
push 0x104
lea eax, [ebp - 0x20c]
push eax
push dword [ebp - 0x418]
call dword [sym.imp.KERNEL32.dll_GetLongPathNameW]
test eax, eax
jne 0x1000d813
push dword [ebp - 0x418]
mov edx, 0x104
lea ecx, [ebp - 0x20c]
call fcn.1000d402
mov esi, eax
test esi, esi
js 0x1000da04
lea eax, [ebp - 0x20c]
push 0x5c
push eax
call sub.msvcrt.dll_wcsrchr
mov dword [ebp - 0x440], eax
mov edx, 0x104
pop ecx
pop ecx
test eax, eax
je 0x1000ddcc
mov ecx, eax
lea esi, [ebp - 0x20c]
sub ecx, esi
add eax, 2
sar ecx, 1
mov dword [ebp - 0x41c], ecx
lea ecx, [ebp - 0x414]
push eax
mov dword [ebp - 0x43c], eax
call fcn.1000d402
mov esi, eax
mov eax, dword [ebp - 0x41c]
test eax, eax
jle 0x1000d882
cmp word [ebp + eax*2 - 0x20e], 0x3a
mov eax, dword [ebp - 0x43c]
je 0x1000d888
mov eax, dword [ebp - 0x440]
xor ecx, ecx
mov word [eax], cx
test esi, esi
js 0x1000da04
lea ecx, [edi + 0xc]
call fcn.1000d448
test eax, eax
je 0x1000d8f1
push ecx
push ecx
push dword [ebp - 0x418]
lea eax, [ebp - 0x420]
push eax
lea eax, [edi + 4]
push eax
push dword [ebp - 0x42c]
lea eax, [ebp - 0x20c]
push dword [ebp - 0x430]
push dword [ebp - 0x428]
push ebx
push eax
lea eax, [ebp - 0x414]
push eax
call fcn.1000d4ba
lea ecx, [edi + 0xc]
mov esi, eax
call fcn.1000da1e
cmp dword [ebp - 0x420], 0
jne 0x1000da04
lea ecx, [edi + 0x64]
call fcn.1000d448
test eax, eax
je 0x1000d94d
push ecx
push ecx
push dword [ebp - 0x418]
lea eax, [ebp - 0x420]
push eax
lea eax, [edi + 0x5c]
push eax
push dword [ebp - 0x42c]
lea eax, [ebp - 0x20c]
push dword [ebp - 0x430]
push dword [ebp - 0x428]
push ebx
push eax
lea eax, [ebp - 0x414]
push eax
call fcn.1000d4ba
lea ecx, [edi + 0x64]
mov esi, eax
call fcn.1000da1e
cmp dword [ebp - 0x420], 0
jne 0x1000da04
lea ebx, [edi + 0xf0]
xor eax, eax
cmp ax, word [ebx]
je 0x1000f24f
test esi, esi
js 0x10020472
mov ecx, ebx
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, word [ebp - 0x438]
jne 0x1000d96b
sub ecx, edx
lea eax, [ebp - 0x20c]
sar ecx, 1
push ecx
push ebx
push eax
call sub.msvcrt.dll__wcsnicmp
add esp, 0xc
test eax, eax
je 0x1000d9c7
mov ecx, ebx
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, word [ebp - 0x438]
jne 0x1000d998
sub ecx, edx
sar ecx, 1
lea eax, [ecx - 4]
push eax
lea eax, [ebp - 0x20c]
push ebx
push eax
call sub.msvcrt.dll__wcsnicmp
add esp, 0xc
test eax, eax
je 0x10020472
mov ebx, dword [ebp - 0x424]
xor esi, esi
push esi
push ebx
mov ecx, edi
call fcn.1000dd86
mov eax, dword [ebp - 0x430]
mov dword [eax], esi
mov eax, dword [ebp - 0x42c]
mov dword [eax], esi
mov eax, dword [ebp - 0x428]
test eax, eax
je 0x1000d9f4
mov dword [eax], esi
xor esi, esi
inc esi
cmp dword [ebp - 0x434], 0
jne 0x10020432
mov ecx, dword [ebp - 4]
mov eax, esi
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.10001a60
mov esp, ebp
pop ebp
ret 0x20
push dword [ebp - 0x418]
lea ecx, [ebp - 0x414]
call fcn.1000d402
mov esi, eax
xor eax, eax
mov word [ebp - 0x20c], ax
jmp 0x1000d88d
lea ecx, [edi + 0xd4]
call fcn.1000e9cf
test eax, eax
je 0x1000f2a1
push ebx
xor eax, eax
push eax
push eax
push 0x20
push eax
call dword [sym.imp.SHELL32.dll_SHGetFolderPathW]
mov esi, eax
test esi, esi
js 0x1000f280
push 0x1000f2ac
mov ecx, ebx
call fcn.1000f7be
mov esi, eax
lea ecx, [edi + 0xd4]
call fcn.1000f7a5
jmp 0x1000d95e
cmp dword [ebp - 0x41c], eax
jne 0x1000f2cf
jmp 0x1000f2f0
mov esi, 0x8007000e
jmp 0x1000f2fb
mov esi, 0x8007000e
jmp 0x1000d95e
lea ecx, [edi + 0x88]
call fcn.1000e9cf
test eax, eax
je 0x1000f29a
xor eax, eax
cmp dword [edi + 0xa4], eax
jne 0x1000f290
mov ecx, edi
call fcn.1000f30d
mov esi, eax
test esi, esi
js 0x1000f2f0
xor eax, eax
cmp dword [edi + 0xa4], eax
jne 0x1000f2f0
mov dword [edi + 0xa4], 1
lea ecx, [edi + 0x88]
call fcn.1000f7a5
test esi, esi
jns 0x1000d7df
jmp 0x1000da04
push dword [ebp - 0x418]
call dword [sym.imp.api_ms_win_downlevel_shlwapi_l1_1_0.dll_PathFindFileNameW]
test eax, eax
je 0x1000da04
push 0x10020484
push eax
call sub.msvcrt.dll__wcsicmp
pop ecx
pop ecx
test eax, eax
jne 0x1000da04
push ebx
push dword [ebx]
mov ecx, edi
push dword [ebp - 0x434]
call fcn.1003ee3f
mov esi, eax
jmp 0x1000da04
mov ebx, dword [ebp - 0x424]
xor eax, eax
mov dword [ebx], eax
jmp 0x1000da04