Function at 0x478050
Capabilities:
Get common file path

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x73c9dd
mov eax, dword fs:[0]
push eax
sub esp, 0x234
mov eax, dword [0x8312b0]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
push 0x7eb450
call fcn.00473d80
test al, al
jne 0x478091
xor al, al
jmp 0x47836b
push 0x208
lea eax, [ebp - 0x218]
push 0
push eax
call fcn.0070dcd0
add esp, 0xc
lea eax, [ebp - 0x218]
push eax
push 0
push 0
push 0x24
push 0
call dword [sym.imp.SHELL32.dll_SHGetFolderPathW]
test eax, eax
js 0x47808a
push 0x7eb4bc
lea eax, [ebp - 0x218]
xor bl, bl
push eax
call dword [sym.imp.SHLWAPI.dll_PathAppendW]
mov dword [ebp - 0x240], 0
call fcn.00461ac0
test al, al
je 0x4780f2
lea ecx, [ebp - 0x240]
call fcn.00461b10
mov dword [ebp - 0x23c], 0
mov dword [ebp - 0x238], 0
mov dword [ebp - 0x234], 0
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x230]
push 0xc
xor eax, eax
mov dword [ebp - 0x220], 0
push 0x7eb4d0
mov dword [ebp - 0x21c], 7
mov word [ebp - 0x230], ax
call fcn.0044bdc0
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 1
push eax
lea ecx, [ebp - 0x23c]
call fcn.0044c580
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], 0
call fcn.0044bf40
push 0xc
xor eax, eax
mov dword [ebp - 0x220], 0
push 0x7eb4ec
lea ecx, [ebp - 0x230]
mov dword [ebp - 0x21c], 7
mov word [ebp - 0x230], ax
call fcn.0044bdc0
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 2
push eax
lea ecx, [ebp - 0x23c]
call fcn.0044c580
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], 0
call fcn.0044bf40
push 0xa
xor eax, eax
mov dword [ebp - 0x220], 0
push 0x7eb508
lea ecx, [ebp - 0x230]
mov dword [ebp - 0x21c], 7
mov word [ebp - 0x230], ax
call fcn.0044bdc0
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 3
push eax
lea ecx, [ebp - 0x23c]
call fcn.0044c580
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], 0
call fcn.0044bf40
push 0xb
xor eax, eax
mov dword [ebp - 0x220], 0
push 0x7eb520
lea ecx, [ebp - 0x230]
mov dword [ebp - 0x21c], 7
mov word [ebp - 0x230], ax
call fcn.0044bdc0
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 4
push eax
lea ecx, [ebp - 0x23c]
call fcn.0044c580
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], 0
call fcn.0044bf40
push 0xb
xor eax, eax
mov dword [ebp - 0x220], 0
push 0x7eb538
lea ecx, [ebp - 0x230]
mov dword [ebp - 0x21c], 7
mov word [ebp - 0x230], ax
call fcn.0044bdc0
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 5
push eax
lea ecx, [ebp - 0x23c]
call fcn.0044c580
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], 0
call fcn.0044bf40
push 0xc
xor eax, eax
mov dword [ebp - 0x220], 0
push 0x7eb550
lea ecx, [ebp - 0x230]
mov dword [ebp - 0x21c], 7
mov word [ebp - 0x230], ax
call fcn.0044bdc0
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 6
push eax
lea ecx, [ebp - 0x23c]
call fcn.0044c580
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], 0
call fcn.0044bf40
lea eax, [ebp - 0x23c]
push eax
lea eax, [ebp - 0x218]
push eax
call fcn.00473a70
test al, al
je 0x47834a
push 0x7eb56c
lea eax, [ebp - 0x218]
push eax
call dword [sym.imp.SHLWAPI.dll_PathAppendW]
mov edx, str.14.16.27033.0
lea ecx, [ebp - 0x218]
call fcn.00461e90
mov bl, al
call fcn.00461ac0
test al, al
je 0x47835e
mov ecx, dword [ebp - 0x240]
call fcn.00461b50
lea ecx, [ebp - 0x23c]
call fcn.004635a0
mov al, bl
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.006f4f1e
mov esp, ebp
pop ebp
ret