Function at 0x4441f0
Capabilities:
Get common file path

Disassembly:
mov eax, 0x180c
call fcn.004a4490
mov eax, dword [0x4ca3b0]
xor eax, esp
mov dword [esp + 0x1808], eax
push ebp
mov ebp, dword [esp + 0x1814]
push esi
push edi
mov edi, ecx
mov ecx, 0x4b8bbc
mov eax, ebp
jmp 0x444220
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x444246
test dx, dx
je 0x444242
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x444246
add eax, 4
add ecx, 4
test dx, dx
jne 0x444220
xor eax, eax
jmp 0x44424b
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
sete al
cmp byte [edi + 0x81a], 0
mov byte [esp + 0xf], al
je 0x4442ba
xor esi, esi
test al, al
je 0x444268
mov esi, 1
mov ecx, 0x4b8854
mov eax, ebp
nop
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x444296
test dx, dx
je 0x444292
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x444296
add eax, 4
add ecx, 4
test dx, dx
jne 0x444270
xor eax, eax
jmp 0x44429b
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4442a5
mov esi, dword [edi + 0x91c]
test esi, esi
je 0x4442ba
push 0
push esi
mov ecx, edi
call fcn.0043fc50
push 0
jmp 0x4444c2
mov byte [edi + 0x81a], 0
cmp byte [0x4e7b89], 0
je 0x4443da
push 0
push 0x4b99c4
push str.FileList
call fcn.0045b230
test eax, eax
je 0x4442ee
cmp byte [esp + 0xf], 0
je 0x4444c9
push 0x400
lea eax, [esp + 0x1018]
push eax
mov ecx, 0x4eeda0
call fcn.00412f60
mov ecx, 0x4b8854
mov eax, ebp
lea esp, [esp]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x444336
test dx, dx
je 0x444332
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x444336
add eax, 4
add ecx, 4
test dx, dx
jne 0x444310
xor eax, eax
jmp 0x44433b
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x44436d
push ebp
mov ecx, 0x4eeda0
call fcn.00412e40
test al, al
je 0x44436d
movzx ecx, byte [esp + 0xf]
neg ecx
sbb ecx, ecx
lea edx, [esp + 0x1014]
and ecx, edx
push ecx
mov ecx, edi
call fcn.00443500
jmp 0x4444c9
push 0x400
lea eax, [esp + 0x818]
push eax
mov ecx, 0x4eeda0
call fcn.00412f80
xor eax, eax
jmp 0x444390
movzx ecx, word [esp + eax + 0x814]
mov word [esp + eax + 0x14], cx
add eax, 2
test cx, cx
jne 0x444390
lea ecx, [esp + 0x14]
push ecx
call fcn.00451b20
lea edx, [esp + 0x14]
push edx
call fcn.00484110
mov ecx, edi
call fcn.00442540
test al, al
je 0x4444c9
lea eax, [esp + 0x814]
push eax
call fcn.004515b0
jmp 0x4444c1
push 0x400
lea ecx, [esp + 0x1018]
push ecx
call fcn.004850e0
cmp byte [esp + 0xf], 0
je 0x4444a3
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 0x444400
lea edx, [esp + 0x814]
push edx
lea eax, [esp + 0x18]
push eax
call fcn.00452920
lea ecx, [esp + 0x14]
push ecx
call fcn.00451050
lea edx, [esp + 0x814]
push edx
call fcn.00451050
lea eax, [esp + 0x814]
push eax
lea ecx, [esp + 0x18]
push ecx
call fcn.00472b40
test eax, eax
jne 0x4444a3
cmp dword [edi + 0x91c], eax
jle 0x444466
mov byte [edi + 0x81a], 1
push eax
jmp 0x4444c2
mov eax, dword [edi]
lea edx, [esp + 0x10]
push edx
push 0x11
push eax
mov dword [esp + 0x1c], 0
call dword [sym.imp.SHELL32.dll_SHGetSpecialFolderLocation]
mov ecx, dword [esp + 0x10]
push ecx
mov ecx, 0x4ee478
call fcn.00440a00
mov eax, dword [0x50fc04]
mov ecx, dword [esp + 0x10]
mov edx, dword [eax]
mov edx, dword [edx + 0x14]
push ecx
push eax
call edx
push 0
jmp 0x4444c2
push ebp
call fcn.00484110
cmp byte [esp + 0xf], 0
je 0x4444bf
lea eax, [esp + 0x1014]
push eax
call fcn.004515b0
jmp 0x4444c1
xor eax, eax
push eax
mov ecx, edi
call fcn.00442bf0
mov ecx, dword [esp + 0x1814]
pop edi
pop esi
pop ebp
xor ecx, esp
call fcn.004a3c63
add esp, 0x180c
ret 4