Function at 0x404aa5
Capabilities:
Get common file path

Disassembly:
push 0x28c
mov eax, 0x442bea
call fcn.0042bcc0
xor eax, eax
xor ebx, ebx
push 0x206
mov word [ebp - 0x218], ax
lea eax, [ebp - 0x216]
push ebx
push eax
call fcn.0042b470
add esp, 0xc
lea eax, [ebp - 0x218]
push ebx
push 0x1a
push eax
push ebx
call dword [sym.imp.SHELL32.dll_SHGetSpecialFolderPathW]
test eax, eax
je 0x404e33
lea eax, [ebp - 0x218]
push eax
lea ecx, [ebp - 0x234]
call fcn.00402874
mov esi, 0x44d0e4
mov dword [ebp - 4], ebx
push esi
call fcn.0040126a
pop ecx
push eax
push esi
lea ecx, [ebp - 0x234]
call fcn.00402e83
lea eax, [ebp - 0x298]
mov dword [ebp - 0x298], 3
push eax
call fcn.0040297d
push 0xffffffffffffffff
push ebx
lea ecx, [ebp - 0x234]
mov edi, dword [eax]
lea eax, [edi + 0x60]
push eax
call fcn.00402ddd
lea eax, [ebp - 0x234]
push eax
lea ecx, [ebp - 0x264]
call fcn.0040284c
mov esi, str.Extension
mov byte [ebp - 4], 1
push esi
call fcn.0040126a
pop ecx
push eax
push esi
lea ecx, [ebp - 0x234]
call fcn.00402e83
mov esi, 0x44d0e4
push esi
call fcn.0040126a
pop ecx
push eax
push esi
lea ecx, [ebp - 0x234]
call fcn.00402e83
lea edx, [edi + 0x108]
cmp dword [edx + 0x14], 0x10
jb 0x404b9b
mov edx, dword [edx]
lea ecx, [ebp - 0x294]
call fcn.0041dcac
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [ebp - 0x234]
mov byte [ebp - 4], 2
call fcn.00402ddd
push ebx
push 1
lea ecx, [ebp - 0x294]
mov byte [ebp - 4], 1
call fcn.00403476
push esi
call fcn.0040126a
pop ecx
push eax
push esi
lea ecx, [ebp - 0x234]
call fcn.00402e83
lea edx, [edi + 0xf0]
cmp dword [edx + 0x14], 0x10
jb 0x404bed
mov edx, dword [edx]
lea ecx, [ebp - 0x294]
call fcn.0041dcac
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [ebp - 0x234]
mov byte [ebp - 4], 3
call fcn.00402ddd
push ebx
push 1
lea ecx, [ebp - 0x294]
mov byte [ebp - 4], 1
call fcn.00403476
lea ecx, [ebp - 0x234]
call fcn.00419ffd
mov esi, dword [edi + 0x150]
jmp 0x404cc1
lea eax, [ebp - 0x234]
push eax
lea ecx, [ebp - 0x24c]
call fcn.0040284c
push 0x44d0e4
mov byte [ebp - 4], 4
call fcn.0040126a
pop ecx
push eax
push 0x44d0e4
lea ecx, [ebp - 0x24c]
call fcn.00402e83
cmp dword [esi + 0x14], 0x10
jb 0x404c6f
mov edx, dword [esi]
jmp 0x404c71
mov edx, esi
lea ecx, [ebp - 0x294]
call fcn.0041dcac
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [ebp - 0x24c]
mov byte [ebp - 4], 5
call fcn.00402ddd
push ebx
push 1
lea ecx, [ebp - 0x294]
mov byte [ebp - 4], 4
call fcn.00403476
lea ecx, [ebp - 0x24c]
call fcn.00419ffd
push ebx
push 1
lea ecx, [ebp - 0x24c]
mov byte [ebp - 4], 1
call fcn.00403476
add esi, 0x18
cmp esi, dword [edi + 0x154]
jne 0x404c33
mov eax, dword [edi + 0x15c]
mov esi, dword [eax]
mov dword [ebp - 0x21c], esi
cmp esi, eax
je 0x404d97
cmp dword [ebp - 0x220], 8
lea edx, [ebp - 0x234]
lea ecx, [ebp - 0x24c]
cmovae edx, dword [ebp - 0x234]
call fcn.0041dd26
push 0x44d1e4
mov byte [ebp - 4], 6
call fcn.004012d5
pop ecx
push eax
push 0x44d1e4
lea ecx, [ebp - 0x24c]
call fcn.00402b6c
push 0xffffffffffffffff
lea eax, [esi + 0x10]
push ebx
push eax
lea ecx, [ebp - 0x24c]
call fcn.00402ac6
push 0x44d1e8
lea ecx, [ebp - 0x294]
call fcn.0040276c
lea eax, [ebp - 0x294]
push eax
lea edx, [esi + 0x28]
lea ecx, [ebp - 0x24c]
call fcn.0041aea5
pop ecx
push ebx
push 1
lea ecx, [ebp - 0x294]
call fcn.00402d99
push ebx
push 1
lea ecx, [ebp - 0x24c]
mov byte [ebp - 4], 1
call fcn.00402d99
lea ecx, [ebp - 0x21c]
call fcn.00402a3e
mov esi, dword [ebp - 0x21c]
cmp esi, dword [edi + 0x15c]
jne 0x404ce3
cmp dword [ebp - 0x250], 8
lea edx, [ebp - 0x264]
lea ecx, [ebp - 0x27c]
cmovae edx, dword [ebp - 0x264]
call fcn.0041dd26
mov esi, 0x44d2b8
mov byte [ebp - 4], 7
push esi
call fcn.004012d5
pop ecx
push eax
push esi
lea ecx, [ebp - 0x27c]
call fcn.00402b6c
push 0x44d1e8
lea ecx, [ebp - 0x294]
call fcn.0040276c
lea eax, [ebp - 0x294]
push eax
lea edx, [edi + 0x138]
lea ecx, [ebp - 0x27c]
call fcn.0041aea5
pop ecx
xor esi, esi
lea ecx, [ebp - 0x294]
push ebx
inc esi
push esi
call fcn.00402d99
push ebx
push esi
lea ecx, [ebp - 0x27c]
call fcn.00402d99
push ebx
push esi
lea ecx, [ebp - 0x264]
call fcn.00403476
push ebx
push esi
lea ecx, [ebp - 0x234]
call fcn.00403476
call fcn.0042bc6f
ret