Function at 0x444080
Capabilities:
Get common file path

Disassembly:
mov eax, 0x180c
call fcn.004a4220
mov eax, dword [0x4ca3b0]
xor eax, esp
mov dword [esp + 0x1808], eax
push ebp
push esi
push edi
mov edi, dword [esp + 0x181c]
mov ebp, ecx
mov ecx, 0x4b8bac
mov eax, edi
jmp 0x4440b0
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4440d6
test dx, dx
je 0x4440d2
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4440d6
add eax, 4
add ecx, 4
test dx, dx
jne 0x4440b0
xor eax, eax
jmp 0x4440db
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
sete al
cmp byte [ebp + 0x81a], 0
mov byte [esp + 0xf], al
je 0x44414a
xor esi, esi
test al, al
je 0x4440f8
mov esi, 1
mov ecx, 0x4b8844
mov eax, edi
nop
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x444126
test dx, dx
je 0x444122
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x444126
add eax, 4
add ecx, 4
test dx, dx
jne 0x444100
xor eax, eax
jmp 0x44412b
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x444135
mov esi, dword [ebp + 0x91c]
test esi, esi
je 0x44414a
push 0
push esi
mov ecx, ebp
call fcn.0043fad0
push 0
jmp 0x444363
mov byte [ebp + 0x81a], 0
cmp byte [0x4e7b89], 0
je 0x44427a
push 0
push 0x4b99b4
push 0x4b8cc0
call fcn.0045afb0
test eax, eax
je 0x44417e
cmp byte [esp + 0xf], 0
je 0x44436a
push 0x400
lea eax, [esp + 0x1018]
push eax
mov ecx, 0x4eeda0
call fcn.00412ff0
mov ecx, 0x4b8844
mov eax, edi
lea esp, [esp]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4441c6
test dx, dx
je 0x4441c2
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4441c6
add eax, 4
add ecx, 4
test dx, dx
jne 0x4441a0
xor eax, eax
jmp 0x4441cb
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x44420e
push edi
mov ecx, 0x4eeda0
call fcn.00412ed0
test al, al
je 0x44420e
cmp byte [esp + 0xf], 0
je 0x4441ff
lea ecx, [esp + 0x1014]
push ecx
call fcn.004513d0
push eax
mov ecx, ebp
call fcn.00443390
jmp 0x44436a
xor eax, eax
push eax
mov ecx, ebp
call fcn.00443390
jmp 0x44436a
push 0x400
lea edx, [esp + 0x818]
push edx
mov ecx, 0x4eeda0
call fcn.00413010
xor eax, eax
jmp 0x444230
movzx ecx, word [esp + eax + 0x814]
mov word [esp + eax + 0x14], cx
add eax, 2
test cx, cx
jne 0x444230
lea eax, [esp + 0x14]
push eax
call fcn.00451940
lea ecx, [esp + 0x14]
push ecx
call fcn.00483d60
mov ecx, ebp
call fcn.004423b0
test al, al
je 0x44436a
lea edx, [esp + 0x814]
push edx
call fcn.004513d0
jmp 0x444362
push 0x400
lea eax, [esp + 0x1018]
push eax
call fcn.00484e80
cmp byte [esp + 0xf], 0
je 0x444344
xor eax, eax
lea esp, [esp]
movzx ecx, word [esp + eax + 0x1014]
mov word [esp + eax + 0x14], cx
add eax, 2
test cx, cx
jne 0x4442a0
lea ecx, [esp + 0x814]
push ecx
lea edx, [esp + 0x18]
push edx
call fcn.00452730
lea eax, [esp + 0x14]
push eax
call fcn.00450e70
lea ecx, [esp + 0x814]
push ecx
call fcn.00450e70
lea edx, [esp + 0x814]
push edx
lea eax, [esp + 0x18]
push eax
call fcn.00472870
test eax, eax
jne 0x444344
cmp dword [ebp + 0x91c], eax
jle 0x444306
mov byte [ebp + 0x81a], 1
push eax
jmp 0x444363
mov edx, dword [ebp]
lea ecx, [esp + 0x10]
push ecx
push 0x11
push edx
mov dword [esp + 0x1c], 0
call dword [sym.imp.SHELL32.dll_SHGetSpecialFolderLocation]
mov eax, dword [esp + 0x10]
push eax
mov ecx, 0x4ee478
call fcn.00440870
mov eax, dword [0x50fbfc]
mov edx, dword [esp + 0x10]
mov ecx, dword [eax]
push edx
push eax
mov eax, dword [ecx + 0x14]
call eax
push 0
jmp 0x444363
push edi
call fcn.00483d60
cmp byte [esp + 0xf], 0
je 0x444360
lea ecx, [esp + 0x1014]
push ecx
call fcn.004513d0
jmp 0x444362
xor eax, eax
push eax
mov ecx, ebp
call fcn.00442a80
mov ecx, dword [esp + 0x1814]
pop edi
pop esi
pop ebp
xor ecx, esp
call fcn.004a39f3
add esp, 0x180c
ret 4