Function at 0x442bc0
Capabilities:
Get common file path

Disassembly:
sub esp, 0xc0c
mov eax, dword [0x4c03a0]
xor eax, esp
mov dword [esp + 0xc08], eax
push ebp
push esi
mov esi, dword [esp + 0xc1c]
push edi
mov edi, dword [esp + 0xc1c]
mov ebp, ecx
mov dword [esp + 0x10], esi
mov ecx, 0x4b1a5c
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x442c12
test dl, dl
je 0x442c0e
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x442c12
add eax, 2
add ecx, 2
test dl, dl
jne 0x442bf2
xor eax, eax
jmp 0x442c17
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
sete al
cmp byte [ebp + 0xc1e], 0
mov byte [esp + 0xf], al
je 0x442c8a
xor esi, esi
test al, al
je 0x442c34
mov esi, 1
mov ecx, 0x4b17bc
mov eax, edi
jmp 0x442c40
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x442c60
test dl, dl
je 0x442c5c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x442c60
add eax, 2
add ecx, 2
test dl, dl
jne 0x442c40
xor eax, eax
jmp 0x442c65
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x442c6f
mov esi, dword [ebp + 0xd20]
test esi, esi
je 0x442c86
push 0
push esi
mov ecx, ebp
call fcn.0043ea40
push 0
push 0
jmp 0x442e97
mov esi, dword [esp + 0x10]
mov byte [ebp + 0xc1e], 0
cmp dword [0x4dbca4], 0
je 0x442da9
push 0
push str.FlatView
push str.FileList
call fcn.00456940
test eax, eax
je 0x442cbe
cmp byte [esp + 0xf], 0
je 0x442e9e
push 0
lea eax, [esp + 0x818]
push eax
mov ecx, 0x4e0c60
call fcn.004134e0
mov ecx, 0x4b17bc
mov eax, edi
lea esp, [esp]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x442d00
test dl, dl
je 0x442cfc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x442d00
add eax, 2
add ecx, 2
test dl, dl
jne 0x442ce0
xor eax, eax
jmp 0x442d05
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x442d49
push esi
push edi
mov ecx, 0x4e0c60
call fcn.00413320
test eax, eax
je 0x442d49
cmp byte [esp + 0xf], 0
je 0x442d3a
lea ecx, [esp + 0x814]
push ecx
call fcn.0044daf0
push eax
mov ecx, ebp
call fcn.00441d60
jmp 0x442e9e
xor eax, eax
push eax
mov ecx, ebp
call fcn.00441d60
jmp 0x442e9e
push 0
lea edx, [esp + 0x418]
push edx
mov ecx, 0x4e0c60
call fcn.00413520
xor eax, eax
nop
mov cl, byte [esp + eax + 0x414]
mov byte [esp + eax + 0x14], cl
inc eax
test cl, cl
jne 0x442d60
lea eax, [esp + 0x14]
push eax
call fcn.0044e030
push 0
lea ecx, [esp + 0x18]
push ecx
call fcn.0047f4d0
mov ecx, ebp
call fcn.00440db0
test al, al
je 0x442e9e
push 0
lea edx, [esp + 0x418]
push edx
call fcn.0044daf0
jmp 0x442e96
lea eax, [esp + 0x14]
push eax
push 0x400
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryA]
cmp byte [esp + 0xf], 0
je 0x442e78
xor eax, eax
jmp 0x442dd0
mov cl, byte [esp + eax + 0x14]
mov byte [esp + eax + 0x814], cl
inc eax
test cl, cl
jne 0x442dd0
lea ecx, [esp + 0x414]
push ecx
lea edx, [esp + 0x18]
push edx
call fcn.0044da10
lea eax, [esp + 0x814]
push eax
call fcn.0044df70
lea ecx, [esp + 0x414]
push ecx
call fcn.0044df70
lea edx, [esp + 0x414]
push edx
lea eax, [esp + 0x818]
push eax
call fcn.00465330
test eax, eax
jne 0x442e78
cmp dword [ebp + 0xd20], eax
jle 0x442e38
push eax
mov byte [ebp + 0xc1e], 1
push eax
jmp 0x442e97
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, 0x4dff38
call fcn.0043f7b0
mov eax, dword [0x4f81ac]
mov edx, dword [esp + 0x10]
mov ecx, dword [eax]
push edx
push eax
mov eax, dword [ecx + 0x14]
call eax
push 0
push 0
jmp 0x442e97
push esi
push edi
call fcn.0047f4d0
cmp byte [esp + 0xf], 0
je 0x442e92
lea ecx, [esp + 0x14]
push ecx
call fcn.0044daf0
jmp 0x442e94
xor eax, eax
push 0
push eax
mov ecx, ebp
call fcn.004413b0
mov ecx, dword [esp + 0xc14]
pop edi
pop esi
pop ebp
xor ecx, esp
call fcn.0049e626
add esp, 0xc0c
ret 8