Function at 0x409b40
Capabilities:
Get common file path

Disassembly:
push ebp
lea ebp, [esp - 0x20c]
sub esp, 0x20c
push 0xffffffffffffffff
push 0x45d988
mov eax, dword fs:[0]
push eax
sub esp, 0x14
mov eax, dword [0x48e0ec]
xor eax, ebp
mov dword [ebp + 0x208], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, dword [ebp + 0x214]
mov dword [ebp - 0x10], esi
push dword [0x495b6c]
push dword [0x495b68]
push esi
call fcn.00404370
mov ebx, eax
add esp, 0xc
mov dword [ebp - 0x14], ebx
test ebx, ebx
jne 0x409c3b
push esi
call fcn.00406bc0
add esp, 4
test ebx, ebx
jne 0x409c3b
cmp dword [0x495ac0], ebx
jne 0x409c91
cmp byte [0x495b75], bl
jne 0x409c91
push 0x4628b8
push esi
call fcn.004046f0
mov esi, eax
mov dword [ebp - 0x18], esi
push dword [0x495ad4]
mov dword [ebp - 4], ebx
push ebx
push dword [0x495ad0]
push 0x4628b8
push 4
call fcn.00403270
mov edi, eax
mov dword [ebp - 0x1c], edi
push ebx
push dword [ebp - 0x10]
mov byte [ebp - 4], 1
push edi
push esi
call fcn.0040a000
add esp, 0x2c
push edi
test al, al
jne 0x409d96
call fcn.00442387
push esi
mov dword [ebp - 4], 0xffffffff
call fcn.00442387
mov esi, dword [ebp - 0x10]
mov ebx, 0x11
add esp, 8
mov dword [ebp - 0x14], ebx
jmp 0x409c44
cmp ebx, 0x13
je 0x409e89
push 0xffffffffffffffff
push dword [0x495b78]
mov byte [0x48e06f], 1
call dword [sym.imp.KERNEL32.DLL_WaitForSingleObject]
mov eax, dword [0x495b7c]
test eax, eax
je 0x409c78
push 0
push ebx
push 0x47b
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
test eax, eax
setne al
jmp 0x409c81
push ebx
call fcn.00406f30
add esp, 4
test al, al
jne 0x409b82
test ebx, ebx
jne 0x409e89
mov esi, dword [ebp - 0x10]
push esi
call fcn.004069c0
add esp, 4
cmp byte [0x495b75], 0
je 0x409d19
push 0x4628b8
push esi
call fcn.004046f0
mov ebx, eax
mov dword [ebp - 0x1c], ebx
push ebx
mov dword [ebp - 4], 2
call fcn.00409350
push str.SpotifyWebHelper.exe
push esi
call fcn.004046f0
mov edi, eax
mov dword [ebp - 0x18], edi
push edi
mov byte [ebp - 4], 3
call fcn.00409350
push str.SpotifyCrashService.exe
push esi
call fcn.004046f0
mov esi, eax
mov dword [ebp - 0x20], esi
push esi
mov byte [ebp - 4], 4
call fcn.00409350
push esi
call fcn.00442387
push edi
call fcn.00442387
push ebx
mov dword [ebp - 4], 0xffffffff
call fcn.00442387
mov ebx, dword [ebp - 0x14]
add esp, 0x30
mov esi, dword [ebp - 0x10]
push str.Spotify_new.exe
push esi
call fcn.004046f0
push eax
call fcn.00403960
push str.Spotify_new.exe.sig
push esi
call fcn.004046f0
push eax
call fcn.00403960
add esp, 0x18
cmp byte [0x495b75], 0
je 0x409e89
push str.Spotify.exe.redir
push esi
call fcn.004046f0
mov ebx, eax
mov dword [ebp - 0x10], ebx
push 0
push 0x462514
push ebx
mov dword [ebp - 4], 5
call fcn.00404c50
add esp, 0x14
lea eax, [ebp]
push eax
push 0
push 0
push 0x24
push 0
call dword [sym.imp.SHELL32.dll_SHGetFolderPathW]
test eax, eax
jne 0x409db0
lea eax, [ebp]
push eax
call fcn.00404db0
add esp, 4
jmp 0x409db2
call fcn.00442387
push esi
mov dword [ebp - 4], 0xffffffff
call fcn.00442387
add esp, 8
jmp 0x409c91
xor eax, eax
push str.Spotify.preload
push eax
call fcn.004046f0
mov esi, eax
add esp, 8
mov dword [ebp - 0x20], esi
mov eax, dword [0x495b0c]
mov byte [ebp - 4], 6
test eax, eax
je 0x409e6c
push 0x463280
push eax
push str.referrer_
push 3
call fcn.00403270
mov edi, eax
add esp, 0x10
mov dword [ebp - 0x1c], edi
cmp byte [0x495b76], 0
mov byte [ebp - 4], 7
je 0x409e45
push str.disableautostart__true_n
push edi
push 2
call fcn.00403270
mov ebx, eax
add esp, 0xc
mov dword [ebp - 0x18], ebx
mov ecx, ebx
mov byte [ebp - 4], 8
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x409e20
sub ecx, edx
push ecx
push ebx
push esi
call fcn.00404c50
push ebx
call fcn.00442387
mov ebx, dword [ebp - 0x10]
add esp, 0x10
push edi
call fcn.00442387
jmp 0x409e72
mov ecx, edi
lea edx, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x409e50
sub ecx, edx
push ecx
push edi
push esi
call fcn.00404c50
add esp, 0xc
push edi
call fcn.00442387
jmp 0x409e72
push esi
call fcn.00403960
add esp, 4
push esi
call fcn.00442387
push ebx
call fcn.00442387
mov eax, dword [ebp - 0x14]
add esp, 8
jmp 0x409e8b
mov eax, ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0x208]
xor ecx, ebp
call fcn.00423c9a
lea esp, [ebp + 0x20c]
pop ebp
ret