Function at 0x5a468c
Capabilities:
Get common file path

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffff4
push ebx
push esi
test dl, dl
je 0x5a46a0
add esp, 0xfffffff0
call fcn.00405948
mov byte [ebp - 5], dl
mov dword [ebp - 4], eax
xor edx, edx
mov eax, dword [ebp - 4]
call fcn.004052d8
mov dl, 1
mov eax, dword [0x5a42f4]
call fcn.005a4648
mov ebx, eax
mov word [ebx + 8], 0x30
lea eax, [ebx + 4]
mov edx, 0x5a4fc8
call fcn.004074f8
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.0044c19c
mov dl, 1
mov eax, dword [0x5a42f4]
call fcn.005a4648
mov ebx, eax
mov word [ebx + 8], 0x1d
lea eax, [ebx + 4]
mov edx, 0x5a4fe4
call fcn.004074f8
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.0044c19c
mov dl, 1
mov eax, dword [0x5a42f4]
call fcn.005a4648
mov ebx, eax
mov word [ebx + 8], 0x1a
lea eax, [ebx + 4]
mov edx, 0x5a5000
call fcn.004074f8
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.0044c19c
mov dl, 1
mov eax, dword [0x5a42f4]
call fcn.005a4648
mov ebx, eax
mov word [ebx + 8], 0xa
lea eax, [ebx + 4]
mov edx, 0x5a5014
call fcn.004074f8
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.0044c19c
mov dl, 1
mov eax, dword [0x5a42f4]
call fcn.005a4648
mov ebx, eax
mov word [ebx + 8], 0x3b
lea eax, [ebx + 4]
mov edx, 0x5a502c
call fcn.004074f8
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.0044c19c
mov dl, 1
mov eax, dword [0x5a42f4]
call fcn.005a4648
mov ebx, eax
mov word [ebx + 8], 0x2f
lea eax, [ebx + 4]
mov edx, 0x5a5048
call fcn.004074f8
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.0044c19c
mov dl, 1
mov eax, dword [0x5a42f4]
call fcn.005a4648
mov ebx, eax
mov word [ebx + 8], 0x1e
lea eax, [ebx + 4]
mov edx, 0x5a5070
call fcn.004074f8
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.0044c19c
mov dl, 1
mov eax, dword [0x5a42f4]
call fcn.005a4648
mov ebx, eax
mov word [ebx + 8], 0x23
lea eax, [ebx + 4]
mov edx, 0x5a5098
call fcn.004074f8
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.0044c19c
mov dl, 1
mov eax, dword [0x5a42f4]
call fcn.005a4648
mov ebx, eax
mov word [ebx + 8], 0x19
lea eax, [ebx + 4]
mov edx, 0x5a50bc
call fcn.004074f8
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.0044c19c
mov dl, 1
mov eax, dword [0x5a42f4]
call fcn.005a4648
mov ebx, eax
mov word [ebx + 8], 0x2e
lea eax, [ebx + 4]
mov edx, 0x5a50f0
call fcn.004074f8
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.0044c19c
mov dl, 1
mov eax, dword [0x5a42f4]
call fcn.005a4648
mov ebx, eax
mov word [ebx + 8], 0x1f
lea eax, [ebx + 4]
mov edx, 0x5a5118
call fcn.004074f8
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.0044c19c
mov dl, 1
mov eax, dword [0x5a42f4]
call fcn.005a4648
mov ebx, eax
mov word [ebx + 8], 0x35
lea eax, [ebx + 4]
mov edx, 0x5a5140
call fcn.004074f8
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.0044c19c
mov dl, 1
mov eax, dword [0x5a42f4]
call fcn.005a4648
mov ebx, eax
mov word [ebx + 8], 0x36
lea eax, [ebx + 4]
mov edx, 0x5a5160
call fcn.004074f8
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.0044c19c
mov dl, 1
mov eax, dword [0x5a42f4]
call fcn.005a4648
mov ebx, eax
mov word [ebx + 8], 0x17
lea eax, [ebx + 4]
mov edx, 0x5a5184
call fcn.004074f8
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.0044c19c
mov dl, 1
mov eax, dword [0x5a42f4]
call fcn.005a4648
mov ebx, eax
mov word [ebx + 8], 0x16
lea eax, [ebx + 4]
mov edx, 0x5a51a8
call fcn.004074f8
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.0044c19c
mov dl, 1
mov eax, dword [0x5a42f4]
call fcn.005a4648
mov ebx, eax
mov word [ebx + 8], 0x18
lea eax, [ebx + 4]
mov edx, 0x5a51d0
call fcn.004074f8
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.0044c19c
mov dl, 1
mov eax, dword [0x5a42f4]
call fcn.005a4648
mov ebx, eax
mov word [ebx + 8], 0x2d
lea eax, [ebx + 4]
mov edx, 0x5a51f4
call fcn.004074f8
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.0044c19c
mov dl, 1
mov eax, dword [0x5a42f4]
call fcn.005a4648
mov ebx, eax
mov word [ebx + 8], 0x37
lea eax, [ebx + 4]
mov edx, 0x5a521c
call fcn.004074f8
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.0044c19c
mov dl, 1
mov eax, dword [0x5a42f4]
call fcn.005a4648
mov ebx, eax
mov word [ebx + 8], 3
lea eax, [ebx + 4]
mov edx, 0x5a523c
call fcn.004074f8
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.0044c19c
mov dl, 1
mov eax, dword [0x5a42f4]
call fcn.005a4648
mov ebx, eax
mov word [ebx + 8], 0x21
lea eax, [ebx + 4]
mov edx, 0x5a5254
call fcn.004074f8
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.0044c19c
mov dl, 1
mov eax, dword [0x5a42f4]
call fcn.005a4648
mov ebx, eax
mov word [ebx + 8], 0
lea eax, [ebx + 4]
mov edx, 0x5a5268
call fcn.004074f8
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.0044c19c
mov dl, 1
mov eax, dword [0x5a42f4]
call fcn.005a4648
mov ebx, eax
mov word [ebx + 8], 0x10
lea eax, [ebx + 4]
mov edx, 0x5a527c
call fcn.004074f8
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.0044c19c
mov dl, 1
mov eax, dword [0x5a42f4]
call fcn.005a4648
mov ebx, eax
mov word [ebx + 8], 0x11
lea eax, [ebx + 4]
mov edx, 0x5a52a4
call fcn.004074f8
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.0044c19c
mov dl, 1
mov eax, dword [0x5a42f4]
call fcn.005a4648
mov ebx, eax
mov word [ebx + 8], 6
lea eax, [ebx + 4]
mov edx, 0x5a52b8
call fcn.004074f8
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.0044c19c
mov dl, 1
mov eax, dword [0x5a42f4]
call fcn.005a4648
mov ebx, eax
mov word [ebx + 8], 0x14
lea eax, [ebx + 4]
mov edx, 0x5a52d0
call fcn.004074f8
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.0044c19c
mov dl, 1
mov eax, dword [0x5a42f4]
call fcn.005a4648
mov ebx, eax
mov word [ebx + 8], 0x22
lea eax, [ebx + 4]
mov edx, 0x5a52e0
call fcn.004074f8
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.0044c19c
mov dl, 1
mov eax, dword [0x5a42f4]
call fcn.005a4648
mov ebx, eax
mov word [ebx + 8], 1
lea eax, [ebx + 4]
mov edx, 0x5a52f4
call fcn.004074f8
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.0044c19c
mov dl, 1
mov eax, dword [0x5a42f4]
call fcn.005a4648
mov ebx, eax
mov word [ebx + 8], 0x20
lea eax, [ebx + 4]
mov edx, 0x5a530c
call fcn.004074f8
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.0044c19c
mov dl, 1
mov eax, dword [0x5a42f4]
call fcn.005a4648
mov ebx, eax
mov word [ebx + 8], 0x1c
lea eax, [ebx + 4]
mov edx, 0x5a5330
call fcn.004074f8
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.0044c19c
mov dl, 1
mov eax, dword [0x5a42f4]
call fcn.005a4648
mov ebx, eax
mov word [ebx + 8], 0xc
lea eax, [ebx + 4]
mov edx, 0x5a5350
call fcn.004074f8
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.0044c19c
mov dl, 1
mov eax, dword [0x5a42f4]
call fcn.005a4648
mov ebx, eax
mov word [ebx + 8], 0xd
lea eax, [ebx + 4]
mov edx, 0x5a536c
call fcn.004074f8
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.0044c19c
mov dl, 1
mov eax, dword [0x5a42f4]
call fcn.005a4648
mov ebx, eax
mov word [ebx + 8], 0x27
lea eax, [ebx + 4]
mov edx, 0x5a5380
call fcn.004074f8
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.0044c19c
mov dl, 1
mov eax, dword [0x5a42f4]
call fcn.005a4648
mov ebx, eax
mov word [ebx + 8], 0xe
lea eax, [ebx + 4]
mov edx, 0x5a539c
call fcn.004074f8
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.0044c19c
mov dl, 1
mov eax, dword [0x5a42f4]
call fcn.005a4648
mov ebx, eax
mov word [ebx + 8], 0x13
lea eax, [ebx + 4]
mov edx, 0x5a53b0
call fcn.004074f8
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.0044c19c
mov dl, 1
mov eax, dword [0x5a42f4]
call fcn.005a4648
mov ebx, eax
mov word [ebx + 8], 0x12
lea eax, [ebx + 4]
mov edx, 0x5a53c4
call fcn.004074f8
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.0044c19c
mov dl, 1
mov eax, dword [0x5a42f4]
call fcn.005a4648
mov ebx, eax
mov word [ebx + 8], 5
lea eax, [ebx + 4]
mov edx, 0x5a53d8
call fcn.004074f8
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.0044c19c
mov dl, 1
mov eax, dword [0x5a42f4]
call fcn.005a4648
mov ebx, eax
mov word [ebx + 8], 4
lea eax, [ebx + 4]
mov edx, 0x5a53f0
call fcn.004074f8
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.0044c19c
mov dl, 1
mov eax, dword [0x5a42f4]
call fcn.005a4648
mov ebx, eax
mov word [ebx + 8], 0x1b
lea eax, [ebx + 4]
mov edx, 0x5a5408
call fcn.004074f8
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.0044c19c
mov dl, 1
mov eax, dword [0x5a42f4]
call fcn.005a4648
mov ebx, eax
mov word [ebx + 8], 0x28
lea eax, [ebx + 4]
mov edx, 0x5a5420
call fcn.004074f8
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.0044c19c
mov dl, 1
mov eax, dword [0x5a42f4]
call fcn.005a4648
mov ebx, eax
mov word [ebx + 8], 0x3e
lea eax, [ebx + 4]
mov edx, 0x5a5434
call fcn.004074f8
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.0044c19c
mov dl, 1
mov eax, dword [0x5a42f4]
call fcn.005a4648
mov ebx, eax
mov word [ebx + 8], 0x26
lea eax, [ebx + 4]
mov edx, 0x5a544c
call fcn.004074f8
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.0044c19c
mov dl, 1
mov eax, dword [0x5a42f4]
call fcn.005a4648
mov ebx, eax
mov word [ebx + 8], 0x2b
lea eax, [ebx + 4]
mov edx, 0x5a546c
call fcn.004074f8
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.0044c19c
mov dl, 1
mov eax, dword [0x5a42f4]
call fcn.005a4648
mov ebx, eax
mov word [ebx + 8], 2
lea eax, [ebx + 4]
mov edx, 0x5a549c
call fcn.004074f8
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.0044c19c
mov dl, 1
mov eax, dword [0x5a42f4]
call fcn.005a4648
mov ebx, eax
mov word [ebx + 8], 8
lea eax, [ebx + 4]
mov edx, 0x5a54b4
call fcn.004074f8
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.0044c19c
mov dl, 1
mov eax, dword [0x5a42f4]
call fcn.005a4648
mov ebx, eax
mov word [ebx + 8], 9
lea eax, [ebx + 4]
mov edx, 0x5a54c8
call fcn.004074f8
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.0044c19c
mov dl, 1
mov eax, dword [0x5a42f4]
call fcn.005a4648
mov ebx, eax
mov word [ebx + 8], 0xb
lea eax, [ebx + 4]
mov edx, 0x5a54dc
call fcn.004074f8
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.0044c19c
mov dl, 1
mov eax, dword [0x5a42f4]
call fcn.005a4648
mov ebx, eax
mov word [ebx + 8], 7
lea eax, [ebx + 4]
mov edx, 0x5a54f4
call fcn.004074f8
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.0044c19c
mov dl, 1
mov eax, dword [0x5a42f4]
call fcn.005a4648
mov ebx, eax
mov word [ebx + 8], 0x25
lea eax, [ebx + 4]
mov edx, 0x5a5508
call fcn.004074f8
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.0044c19c
mov dl, 1
mov eax, dword [0x5a42f4]
call fcn.005a4648
mov ebx, eax
mov word [ebx + 8], 0x15
lea eax, [ebx + 4]
mov edx, 0x5a551c
call fcn.004074f8
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.0044c19c
mov dl, 1
mov eax, dword [0x5a42f4]
call fcn.005a4648
mov ebx, eax
mov word [ebx + 8], 0x24
lea eax, [ebx + 4]
mov edx, 0x5a5534
call fcn.004074f8
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.0044c19c
mov eax, 0xfffe
call fcn.0040469c
mov dword [ebp - 0xc], eax
xor eax, eax
push ebp
push 0x5a4f99
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 4]
mov esi, dword [eax + 8]
dec esi
test esi, esi
jl 0x5a4f83
inc esi
xor ebx, ebx
mov eax, dword [ebp - 0xc]
xor ecx, ecx
mov edx, 0xfffe
call fcn.00404d64
push 0
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.005a5580
movzx eax, word [eax + 8]
push eax
mov eax, dword [ebp - 0xc]
push eax
push 0
call sub.shell32.dll_SHGetSpecialFolderPathW
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.005a5580
add eax, 0xc
mov edx, dword [ebp - 0xc]
call fcn.00407d14
inc ebx
dec esi
jne 0x5a4f3f
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x5a4fa0
mov eax, dword [ebp - 0xc]
call fcn.004046b8
ret