Function at 0x501ad4
Capabilities:
Get common file path

Disassembly:
push 0x33c
mov eax, 0x560db0
call fcn.00523a34
mov dword [ebp - 0x338], ecx
xor eax, eax
mov word [ebp - 0x220], ax
push 0x206
xor ebx, ebx
push ebx
lea eax, [ebp - 0x21e]
push eax
call fcn.00517bf0
add esp, 0xc
push 0x104
lea eax, [ebp - 0x220]
push eax
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
test eax, eax
je 0x501ecd
lea eax, [ebp - 0x220]
push eax
lea esi, [ebp - 0x274]
call fcn.00403350
mov dword [ebp - 4], ebx
push str.ImagePath
lea esi, [ebp - 0x290]
call fcn.00403350
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x258]
call fcn.0040333d
mov byte [ebp - 4], 2
mov dword [ebp - 0x330], ebx
mov byte [ebp - 4], 3
mov dword [ebp - 0x32c], ebx
mov byte [ebp - 4], 4
mov byte [ebp - 4], 5
push str.HKEY_LOCAL_MACHINESystemCurrentControlSet_servicesRiftEnabler
lea esi, [ebp - 0x23c]
call fcn.00403350
mov byte [ebp - 4], 6
push 0x201
mov edx, esi
lea ecx, [ebp - 0x334]
call fcn.00490d05
pop ecx
mov byte [ebp - 4], 7
mov edi, eax
lea esi, [ebp - 0x330]
call fcn.00490aef
mov byte [ebp - 4], 6
lea esi, [ebp - 0x334]
call fcn.00490ade
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x23c]
call fcn.00403372
mov dword [ebp - 4], 4
mov byte [ebp - 4], 0xb
lea eax, [ebp - 0x290]
push eax
lea eax, [ebp - 0x2e0]
push eax
lea ecx, [ebp - 0x330]
call fcn.0049147e
mov byte [ebp - 4], 0xc
push 0xffffffffffffffff
push ebx
lea eax, [ebp - 0x2d0]
lea ecx, [ebp - 0x258]
call fcn.0040406a
cmp dword [ebp - 0x248], ebx
jbe 0x501cae
push 0x584ab8
lea eax, [ebp - 0x23c]
push eax
lea edi, [ebp - 0x258]
call fcn.0042943e
pop ecx
pop ecx
mov byte [ebp - 4], 0xd
push ebx
push eax
or eax, 0xffffffff
lea esi, [ebp - 0x274]
call fcn.0040eb30
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x23c]
call fcn.00403372
mov esi, dword [ebp - 0x338]
lea ecx, [esi + 0x14]
lea eax, [ebp - 0x274]
push eax
call fcn.0050208d
test al, al
jne 0x501caa
mov byte [ebp - 4], 0xb
lea eax, [ebp - 0x2e0]
call fcn.004099b6
mov byte [ebp - 4], 3
lea esi, [ebp - 0x32c]
call fcn.00490ade
mov byte [ebp - 4], 2
lea esi, [ebp - 0x330]
call fcn.00490ade
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x258]
call fcn.00403372
mov byte [ebp - 4], bl
jmp 0x501eb3
mov byte [esi + 0x30], 1
mov byte [ebp - 4], 0xb
lea eax, [ebp - 0x2e0]
call fcn.004099b6
mov dword [ebp - 4], 4
lea eax, [ebp - 0x220]
push eax
lea eax, [ebp - 0x274]
push eax
call fcn.00404104
mov byte [ebp - 4], 0x11
push str.HKEY_LOCAL_MACHINESystemCurrentControlSet_servicesOCUSBVID
lea esi, [ebp - 0x23c]
call fcn.00403350
mov byte [ebp - 4], 0x12
push 0x201
mov edx, esi
lea ecx, [ebp - 0x334]
call fcn.00490d05
pop ecx
mov byte [ebp - 4], 0x13
mov edi, eax
lea esi, [ebp - 0x32c]
call fcn.00490aef
mov byte [ebp - 4], 0x12
lea esi, [ebp - 0x334]
call fcn.00490ade
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x23c]
call fcn.00403372
mov dword [ebp - 4], 4
mov byte [ebp - 4], 0x17
lea eax, [ebp - 0x290]
push eax
lea eax, [ebp - 0x2e0]
push eax
lea ecx, [ebp - 0x32c]
call fcn.0049147e
mov byte [ebp - 4], 0x18
push 0xffffffffffffffff
push ebx
lea eax, [ebp - 0x2d0]
lea ecx, [ebp - 0x258]
call fcn.0040406a
cmp dword [ebp - 0x248], ebx
jbe 0x501dd7
push 0x584ab8
lea eax, [ebp - 0x23c]
push eax
lea edi, [ebp - 0x258]
call fcn.0042943e
pop ecx
pop ecx
mov byte [ebp - 4], 0x19
push ebx
push eax
or eax, 0xffffffff
lea esi, [ebp - 0x274]
call fcn.0040eb30
mov byte [ebp - 4], 0x18
lea ecx, [ebp - 0x23c]
call fcn.00403372
mov esi, dword [ebp - 0x338]
lea ecx, [esi + 0x34]
lea eax, [ebp - 0x274]
push eax
call fcn.0050208d
test al, al
jne 0x501dd3
mov byte [ebp - 4], 0x17
jmp 0x501c6a
mov byte [esi + 0x50], 1
mov byte [ebp - 4], 0x17
lea eax, [ebp - 0x2e0]
call fcn.004099b6
mov dword [ebp - 4], 3
jmp 0x501c79
lea ecx, [ebp - 0x290]
call fcn.00403372
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x274]
call fcn.00403372
call fcn.00523a90
ret