Function at 0x18009a100
Capabilities:
Get common file path

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r14
push r15
lea rbp, [rsp - 0x47]
sub rsp, 0xd0
mov rax, qword [0x180176168]
xor rax, rsp
mov qword [rbp + 0x37], rax
mov r14, rcx
mov qword [rbp - 0x51], rcx
xor r15d, r15d
mov qword [rbp - 0x51], r15
lea r9, [rbp - 0x51]
xor r8d, r8d
xor edx, edx
lea rcx, [0x1800f05e0]
call qword [sym.imp.SHELL32.dll_SHGetKnownFolderPath]
mov ecx, eax
mov rax, qword [sym.imp.ole32.dll_CoTaskMemFree]
mov qword [rbp - 0x41], rax
mov rdi, qword [rbp - 0x51]
mov qword [rbp - 0x39], rdi
test rdi, rdi
je 0x18009a3a9
test ecx, ecx
jne 0x18009a3a9
mov rbx, 0xffffffffffffffff
mov r8, rbx
inc r8
cmp word [rdi + r8*2], 0
jne 0x18009a182
xorps xmm0, xmm0
movups xmmword [rbp - 9], xmm0
mov qword [rbp + 7], r15
mov qword [rbp + 0xf], r15
mov rdx, rdi
lea rcx, [rbp - 9]
call fcn.1800240b0
nop
call fcn.1800bcf40
lea rcx, str.My_Games
mov qword [rbp - 0x69], rcx
mov qword [rbp - 0x61], 8
lea r8, [rbp - 0x69]
mov edx, eax
lea rcx, [rbp - 0x29]
call fcn.180018250
nop
lea rdx, [rbp - 0x29]
lea rcx, [rbp - 9]
call fcn.18003de50
nop
lea rcx, [rbp - 0x29]
call fcn.180024040
call fcn.1800bcf40
lea rcx, str.steam_api64.dll
mov qword [rbp - 0x69], rcx
mov qword [rbp - 0x61], 0xf
lea r8, [rbp - 0x69]
mov edx, eax
lea rcx, [rbp - 0x29]
call fcn.180018250
nop
lea rcx, [rbp - 0x29]
cmp qword [rbp - 0x11], 8
cmovae rcx, qword [rbp - 0x29]
mov r9d, 0xffffffff
mov r8d, 3
lea rdx, [rbp + 0x17]
call fcn.1800bd254
mov edx, eax
test eax, eax
jne 0x18009a282
mov ecx, dword [rbp + 0x27]
test cl, 1
mov eax, 0x1ff
mov r8d, 0x16d
cmovne eax, r8d
mov dword [rbp - 0x65], eax
bt ecx, 0xa
jae 0x18009a274
mov eax, dword [rbp + 0x2b]
cmp eax, 0xa000000c
jne 0x18009a266
lea eax, [rdx + 4]
jmp 0x18009a2a5
cmp eax, 0xa0000003
jne 0x18009a274
mov eax, 0xa
jmp 0x18009a2a5
movzx eax, cl
and eax, 0x10
or eax, 0x20
shr eax, 4
jmp 0x18009a2a5
mov dword [rbp - 0x65], 0xffff
sub eax, 2
je 0x18009a2a0
sub eax, 1
je 0x18009a2a0
sub eax, 0x32
je 0x18009a2a0
cmp eax, 0x46
mov eax, r15d
jne 0x18009a2a5
mov eax, 1
mov dword [rbp - 0x69], edx
lea rcx, [0x180176d80]
mov qword [rbp - 0x61], rcx
movaps xmm0, xmmword [rbp - 0x69]
movdqa xmmword [rbp - 0x69], xmm0
test eax, eax
je 0x18009a39a
cmp eax, 1
setne al
lea rcx, str.Skyrim_Special_Edition
lea rsi, str.Skyrim_Special_Edition_GOG
test al, al
cmovne rsi, rcx
nop
inc rbx
cmp byte [rsi + rbx], 0
jne 0x18009a2e0
call fcn.1800bcf40
mov qword [rbp - 0x69], rsi
mov qword [rbp - 0x61], rbx
lea r8, [rbp - 0x69]
mov edx, eax
lea rcx, [rbp + 0x17]
call fcn.180018250
nop
lea rdx, [rbp + 0x17]
lea rcx, [rbp - 9]
call fcn.18003de50
nop
lea rcx, [rbp + 0x17]
call fcn.180024040
nop
lea rcx, [rbp - 0x29]
call fcn.180024040
call fcn.1800bcf40
lea rcx, str.SKSE
mov qword [rbp - 0x69], rcx
mov qword [rbp - 0x61], 4
lea r8, [rbp - 0x69]
mov edx, eax
lea rcx, [rbp - 0x29]
call fcn.180018250
nop
lea rdx, [rbp - 0x29]
lea rcx, [rbp - 9]
call fcn.18003de50
nop
lea rcx, [rbp - 0x29]
call fcn.180024040
movups xmm0, xmmword [rbp - 9]
movups xmmword [r14], xmm0
movups xmm1, xmmword [rbp + 7]
movups xmmword [r14 + 0x10], xmm1
movdqa xmm0, xmmword [0x18015f330]
movdqu xmmword [rbp + 7], xmm0
mov word [rbp - 9], r15w
mov byte [r14 + 0x20], 1
lea rcx, [rbp - 9]
call fcn.180024040
nop
jmp 0x18009a40b
xor al, al
test edx, edx
jne 0x18009a446
jmp 0x18009a2ca
lea rax, str.D:_aKeyword_Item_DistributorKeyword_Item_DistributorexternCommonLibSSE_srcSKSELogger.cpp
mov qword [rbp + 0x17], rax
mov dword [rbp + 0x1f], 0x46
lea rax, str.class_std::optional_class_std::filesystem::path____cdecl_SKSE::log::log_directory_void_
mov qword [rbp + 0x27], rax
call fcn.1800a2c00
lea rcx, str.failed_to_get_known_folder_path
mov qword [rbp - 0x69], rcx
mov qword [rbp - 0x61], 0x1f
movups xmm0, xmmword [rbp + 0x17]
movaps xmmword [rbp - 0x29], xmm0
movsd xmm1, qword [rbp + 0x27]
movsd qword [rbp - 0x19], xmm1
lea r9, [rbp - 0x69]
mov r8d, 4
lea rdx, [rbp - 0x29]
mov rcx, rax
call fcn.180013330
mov byte [r14 + 0x20], 0
test rdi, rdi
je 0x18009a41a
mov rcx, rdi
call qword [sym.imp.ole32.dll_CoTaskMemFree]
nop
mov rax, r14
mov rcx, qword [rbp + 0x37]
xor rcx, rsp
call fcn.1800be760
lea r11, [rsp + 0xd0]
mov rbx, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
mov rdi, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rbp
ret
lea r8, [rbp - 0x29]
lea rdx, [rbp - 0x69]
call fcn.18009a560
int3