Function at 0x1800015e0
Capabilities:
Get common file path

Disassembly:
mov r11, rsp
push rsi
push rdi
push r12
sub rsp, 0x210
mov qword [rsp + 0x88], 0xfffffffffffffffe
mov qword [r11 + 0x10], rbx
mov qword [r11 + 0x18], rbp
mov rax, qword [0x1800f18c0]
xor rax, rsp
mov qword [rsp + 0x200], rax
mov rsi, rcx
mov byte [rsp + 0xf0], 0
xor edx, edx
mov r8d, 0x104
lea rcx, [r11 - 0x137]
call fcn.18008fd00
mov edx, 0x104
lea rcx, [rsp + 0xf0]
call qword [sym.imp.KERNEL32.dll_GetWindowsDirectoryA]
mov edx, InitCommonControls
mov qword [rsp + 0x40], rdx
xor ebp, ebp
mov r8, rbp
mov qword [rsp + 0x38], rbp
mov byte [rsp + 0x28], bpl
xor eax, eax
or rcx, 0xffffffffffffffff
lea rdi, [rsp + 0xf0]
repne scasb al, byte [rdi]
not rcx
sub rcx, 1
mov rdi, rcx
cmp rcx, 0xfffffffffffffffe
jbe 0x18000168e
call fcn.18002d730
mov rdx, qword [rsp + 0x40]
mov r8, qword [rsp + 0x38]
cmp rdx, rdi
jae 0x1800016a7
mov rdx, rdi
lea rcx, [rsp + 0x20]
call fcn.180005ab0
mov rdx, qword [rsp + 0x40]
jmp 0x1800016c5
test rdi, rdi
jne 0x1800016c5
mov qword [rsp + 0x38], rbp
lea rax, [rsp + 0x28]
cmp rdx, 0x10
cmovae rax, qword [rsp + 0x28]
mov byte [rax], bpl
jmp 0x180001703
test rdi, rdi
je 0x180001703
lea rcx, [rsp + 0x28]
cmp rdx, 0x10
cmovae rcx, qword [rsp + 0x28]
mov r9, rdi
lea r8, [rsp + 0xf0]
call fcn.180087940
mov qword [rsp + 0x38], rdi
lea rax, [rsp + 0x28]
cmp qword [rsp + 0x40], 0x10
cmovae rax, qword [rsp + 0x28]
mov byte [rax + rdi], bpl
lea r8, str.kdfgdfgdfhfed
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0xc0]
call fcn.180005f20
nop
cmp qword [rsp + 0x40], 0x10
jb 0x18000172f
mov rcx, qword [rsp + 0x28]
call fcn.180087ce0
mov qword [rsp + 0x40], InitCommonControls
mov qword [rsp + 0x38], rbp
mov byte [rsp + 0x28], 0
lea rcx, [rsp + 0x48]
call qword [sym.imp.KERNEL32.dll_GetLocalTime]
mov qword [rsp + 0x78], InitCommonControls
mov qword [rsp + 0x70], rbp
mov byte [rsp + 0x60], 0
or r9, 0xffffffffffffffff
xor r8d, r8d
lea rdx, [rsp + 0xc0]
lea rcx, [rsp + 0x58]
call fcn.1800051e0
lea rdx, [rsp + 0x58]
mov qword [rsp + 0x80], rdx
lea r12, [0x1800bc018]
mov qword [rsp + 0x90], r12
mov qword [rsp + 0xb8], InitCommonControls
mov qword [rsp + 0xb0], rbp
mov byte [rsp + 0xa0], 0
or r9, 0xffffffffffffffff
xor r8d, r8d
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x98]
call fcn.1800051e0
nop
cmp qword [rsp + 0x78], 0x10
jb 0x1800017dd
mov rcx, qword [rsp + 0x60]
call fcn.180087ce0
movzx ebx, word [rsp + 0x48]
lea rcx, [rsp + 0xa0]
cmp qword [rsp + 0xb8], 0x10
cmovae rcx, qword [rsp + 0xa0]
lea rdx, [0x1800bc008]
call fcn.180088630
mov rdi, rax
test rax, rax
je 0x18000182a
mov r8d, ebx
lea rdx, [0x1800bc00c]
mov rcx, rax
call fcn.180088780
mov rcx, rdi
call fcn.1800886e0
lea rcx, [rsp + 0xa0]
cmp qword [rsp + 0xb8], 0x10
cmovae rcx, qword [rsp + 0xa0]
lea rdx, [0x1800bc008]
call fcn.180088630
mov rdi, rax
test rax, rax
je 0x180001877
mov r9, rax
mov edx, 1
mov r8, rdx
lea rcx, [0x1800bb9e8]
call fcn.180088400
mov rcx, rdi
call fcn.1800886e0
movzx ebx, word [rsp + 0x4a]
lea rcx, [rsp + 0xa0]
cmp qword [rsp + 0xb8], 0x10
cmovae rcx, qword [rsp + 0xa0]
lea rdx, [0x1800bc008]
call fcn.180088630
mov rdi, rax
test rax, rax
je 0x1800018c4
mov r8d, ebx
lea rdx, [0x1800bc00c]
mov rcx, rax
call fcn.180088780
mov rcx, rdi
call fcn.1800886e0
lea rcx, [rsp + 0xa0]
cmp qword [rsp + 0xb8], 0x10
cmovae rcx, qword [rsp + 0xa0]
lea rdx, [0x1800bc008]
call fcn.180088630
mov rdi, rax
test rax, rax
je 0x180001911
mov r9, rax
mov edx, 1
mov r8, rdx
lea rcx, [0x1800bb9e8]
call fcn.180088400
mov rcx, rdi
call fcn.1800886e0
movzx ebx, word [rsp + 0x4e]
lea rcx, [rsp + 0xa0]
cmp qword [rsp + 0xb8], 0x10
cmovae rcx, qword [rsp + 0xa0]
lea rdx, [0x1800bc008]
call fcn.180088630
mov rdi, rax
test rax, rax
je 0x18000195e
mov r8d, ebx
lea rdx, [0x1800bc00c]
mov rcx, rax
call fcn.180088780
mov rcx, rdi
call fcn.1800886e0
lea rcx, [rsp + 0xa0]
cmp qword [rsp + 0xb8], 0x10
cmovae rcx, qword [rsp + 0xa0]
lea rdx, [0x1800bc008]
call fcn.180088630
mov rdi, rax
test rax, rax
je 0x1800019ab
mov r9, rax
mov edx, 1
mov r8, rdx
lea rcx, [0x1800bb9ec]
call fcn.180088400
mov rcx, rdi
call fcn.1800886e0
movzx ebx, word [rsp + 0x50]
lea rcx, [rsp + 0xa0]
cmp qword [rsp + 0xb8], 0x10
cmovae rcx, qword [rsp + 0xa0]
lea rdx, [0x1800bc008]
call fcn.180088630
mov rdi, rax
test rax, rax
je 0x1800019f8
mov r8d, ebx
lea rdx, [0x1800bc00c]
mov rcx, rax
call fcn.180088780
mov rcx, rdi
call fcn.1800886e0
lea rcx, [rsp + 0xa0]
cmp qword [rsp + 0xb8], 0x10
cmovae rcx, qword [rsp + 0xa0]
lea rdx, [0x1800bc008]
call fcn.180088630
mov rdi, rax
test rax, rax
je 0x180001a45
mov r9, rax
mov edx, 1
mov r8, rdx
lea rcx, [0x1800bb9f0]
call fcn.180088400
mov rcx, rdi
call fcn.1800886e0
movzx ebx, word [rsp + 0x52]
lea rcx, [rsp + 0xa0]
cmp qword [rsp + 0xb8], 0x10
cmovae rcx, qword [rsp + 0xa0]
lea rdx, [0x1800bc008]
call fcn.180088630
mov rdi, rax
test rax, rax
je 0x180001a92
mov r8d, ebx
lea rdx, [0x1800bc00c]
mov rcx, rax
call fcn.180088780
mov rcx, rdi
call fcn.1800886e0
lea rcx, [rsp + 0xa0]
cmp qword [rsp + 0xb8], 0x10
cmovae rcx, qword [rsp + 0xa0]
lea rdx, [0x1800bc008]
call fcn.180088630
mov rdi, rax
test rax, rax
je 0x180001adf
mov r9, rax
mov edx, 1
mov r8, rdx
lea rcx, [0x1800bb9f0]
call fcn.180088400
mov rcx, rdi
call fcn.1800886e0
movzx ebx, word [rsp + 0x54]
lea rcx, [rsp + 0xa0]
cmp qword [rsp + 0xb8], 0x10
cmovae rcx, qword [rsp + 0xa0]
lea rdx, [0x1800bc008]
call fcn.180088630
mov rdi, rax
test rax, rax
je 0x180001b2c
mov r8d, ebx
lea rdx, [0x1800bc00c]
mov rcx, rax
call fcn.180088780
mov rcx, rdi
call fcn.1800886e0
lea rcx, [rsp + 0xa0]
cmp qword [rsp + 0xb8], 0x10
cmovae rcx, qword [rsp + 0xa0]
lea rdx, [0x1800bc008]
call fcn.180088630
mov rdi, rax
test rax, rax
je 0x180001b7a
mov r9, rax
mov edx, 5
lea r8d, [rdx - 4]
lea rcx, [0x1800bb9f4]
call fcn.180088400
mov rcx, rdi
call fcn.1800886e0
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov ebx, eax
lea rcx, [rsp + 0xa0]
cmp qword [rsp + 0xb8], 0x10
cmovae rcx, qword [rsp + 0xa0]
lea rdx, [0x1800bc008]
call fcn.180088630
mov rdi, rax
test rax, rax
je 0x180001bca
mov r8d, ebx
lea rdx, [0x1800bc00c]
mov rcx, rax
call fcn.180088780
mov rcx, rdi
call fcn.1800886e0
lea rcx, [rsp + 0xa0]
cmp qword [rsp + 0xb8], 0x10
cmovae rcx, qword [rsp + 0xa0]
lea rdx, [0x1800bc008]
call fcn.180088630
mov rdi, rax
test rax, rax
je 0x180001c18
mov r9, rax
mov edx, 2
lea r8d, [rdx - 1]
lea rcx, [0x1800bb9fc]
call fcn.180088400
mov rcx, rdi
call fcn.1800886e0
lea rcx, [rsp + 0xa0]
cmp qword [rsp + 0xb8], 0x10
cmovae rcx, qword [rsp + 0xa0]
lea rdx, [0x1800bc008]
call fcn.180088630
mov rbx, rax
test rax, rax
je 0x180001c6f
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, rsi
repne scasb al, byte [rdi]
not rcx
lea rdx, [rcx - 1]
mov r9, rbx
lea r8d, [rax + 1]
mov rcx, rsi
call fcn.180088400
mov rcx, rbx
call fcn.1800886e0
lea rcx, [rsp + 0xa0]
cmp qword [rsp + 0xb8], 0x10
cmovae rcx, qword [rsp + 0xa0]
lea rdx, [0x1800bc008]
call fcn.180088630
mov rdi, rax
test rax, rax
je 0x180001cbd
mov r9, rax
mov edx, 2
lea r8d, [rdx - 1]
lea rcx, [0x1800bba00]
call fcn.180088400
mov rcx, rdi
call fcn.1800886e0
mov qword [rsp + 0x90], r12
cmp qword [rsp + 0xb8], 0x10
jb 0x180001cdd
mov rcx, qword [rsp + 0xa0]
call fcn.180087ce0
mov qword [rsp + 0xb8], InitCommonControls
mov qword [rsp + 0xb0], rbp
mov byte [rsp + 0xa0], 0
cmp qword [rsp + 0xe0], 0x10
jb 0x180001d11
mov rcx, qword [rsp + 0xc8]
call fcn.180087ce0
mov rcx, qword [rsp + 0x200]
xor rcx, rsp
call fcn.180087cc0
lea r11, [rsp + 0x210]
mov rbx, qword [r11 + 0x28]
mov rbp, qword [r11 + 0x30]
mov rsp, r11
pop r12
pop rdi
pop rsi
ret