Function at 0x180068250
Capabilities:
Check if file exists
Get common file path
Query environment variable

Disassembly:
push rbp
push rsi
push rdi
push r14
push r15
lea rbp, [rsp - 0x600]
sub rsp, 0x700
mov qword [rsp + 0x28], 0xfffffffffffffffe
mov qword [rsp + 0x740], rbx
mov rax, qword [0x180332088]
xor rax, rsp
mov qword [rbp + 0x5f0], rax
mov r14, rdx
mov rdi, rcx
mov qword [rsp + 0x30], rdx
xor ebx, ebx
mov dword [rsp + 0x20], ebx
cmp qword [rdx + 0x10], rbx
jne 0x180068305
mov qword [rcx + 0x18], 7
mov qword [rcx + 0x10], rbx
cmp qword [rcx + 0x18], 8
jb 0x1800682b8
mov rax, qword [rcx]
jmp 0x1800682bb
mov rax, rdi
mov word [rax], bx
xor r8d, r8d
lea rdx, [0x1802abc2c]
call fcn.18005c660
nop
mov r8, qword [r14 + 0x18]
cmp r8, 8
jb 0x1800682e6
inc r8
mov rdx, qword [r14]
mov rcx, r14
call fcn.18005cac0
mov qword [r14 + 0x18], 7
mov qword [r14 + 0x10], rbx
cmp qword [r14 + 0x18], 8
jb 0x1800682fc
mov r14, qword [r14]
mov word [r14], bx
jmp 0x1800692d4
mov rsi, qword [rdx + 0x18]
cmp rsi, 8
jb 0x180068314
mov rcx, qword [rdx]
jmp 0x180068317
mov rcx, r14
mov r9d, 3
lea r8, [0x1802ac3e0]
mov rdx, qword [rdx + 0x10]
call fcn.18005c450
test eax, eax
jne 0x1800683bd
xor edx, edx
mov r8d, 0x208
lea rcx, [rbp - 0x40]
call fcn.180233580
mov r8d, 0x26
lea rdx, [rbp - 0x40]
call fcn.180069510
lea rcx, [rbp - 0x40]
sub rcx, 2
nop dword [rax]
lea rcx, [rcx + 2]
cmp word [rcx], 0
jne 0x180068360
mov eax, dword [0x1802abc78]
mov dword [rcx], eax
mov qword [rdi + 0x18], 7
mov qword [rdi + 0x10], rbx
cmp qword [rdi + 0x18], 8
jb 0x18006838a
mov rax, qword [rdi]
jmp 0x18006838d
mov rax, rdi
mov word [rax], bx
cmp word [rbp - 0x40], 0
jne 0x18006839c
mov rsi, rbx
jmp 0x1800683ae
lea rax, [rbp - 0x40]
or rsi, 0xffffffffffffffff
inc rsi
cmp word [rax + rsi*2], 0
jne 0x1800683a4
mov r8, rsi
lea rdx, [rbp - 0x40]
mov rcx, rdi
jmp 0x1800682c8
cmp rsi, 8
jb 0x1800683c8
mov rcx, qword [r14]
jmp 0x1800683cb
mov rcx, r14
mov r9d, 3
lea r8, [0x1802ac3e8]
mov rdx, qword [r14 + 0x10]
call fcn.18005c450
test eax, eax
jne 0x18006846e
xor edx, edx
mov r8d, 0x208
lea rcx, [rbp - 0x40]
call fcn.180233580
mov r8d, 5
lea rdx, [rbp - 0x40]
call fcn.180069510
lea rcx, [rbp - 0x40]
sub rcx, 2
lea rcx, [rcx + 2]
cmp word [rcx], 0
jne 0x180068411
mov eax, dword [0x1802abc78]
mov dword [rcx], eax
mov qword [rdi + 0x18], 7
mov qword [rdi + 0x10], rbx
cmp qword [rdi + 0x18], 8
jb 0x18006843b
mov rax, qword [rdi]
jmp 0x18006843e
mov rax, rdi
mov word [rax], bx
cmp word [rbp - 0x40], 0
je 0x18006845a
lea rax, [rbp - 0x40]
or rbx, 0xffffffffffffffff
inc rbx
cmp word [rax + rbx*2], 0
jne 0x180068450
mov r8, rbx
lea rdx, [rbp - 0x40]
mov rcx, rdi
call fcn.18005c660
jmp 0x1800692cc
cmp rsi, 8
jb 0x180068479
mov rcx, qword [r14]
jmp 0x18006847c
mov rcx, r14
mov r9d, 7
lea r8, str.desktop
mov rdx, qword [r14 + 0x10]
call fcn.18005c450
test eax, eax
jne 0x180068526
xor r9d, r9d
xor r8d, r8d
lea rdx, [rbp + 0x1d0]
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_SHGetSpecialFolderPathW]
lea rcx, [rbp + 0x1d0]
sub rcx, 2
nop word [rax + rax]
lea rcx, [rcx + 2]
cmp word [rcx], 0
jne 0x1800684c0
mov eax, dword [0x1802abc78]
mov dword [rcx], eax
mov qword [rdi + 0x18], 7
mov qword [rdi + 0x10], rbx
cmp qword [rdi + 0x18], 8
jb 0x1800684ea
mov rax, qword [rdi]
jmp 0x1800684ed
mov rax, rdi
mov word [rax], bx
cmp word [rbp + 0x1d0], 0
je 0x18006850f
lea rax, [rbp + 0x1d0]
or rbx, 0xffffffffffffffff
inc rbx
cmp word [rax + rbx*2], 0
jne 0x180068505
mov r8, rbx
lea rdx, [rbp + 0x1d0]
mov rcx, rdi
call fcn.18005c660
jmp 0x1800692cc
cmp rsi, 8
jb 0x180068531
mov rcx, qword [r14]
jmp 0x180068534
mov rcx, r14
mov r9d, 3
lea r8, [0x1802ac400]
mov rdx, qword [r14 + 0x10]
call fcn.18005c450
test eax, eax
jne 0x1800685e1
xor r9d, r9d
lea r8d, [rax + 6]
lea rdx, [rbp + 0x1d0]
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_SHGetSpecialFolderPathW]
lea rcx, [rbp + 0x1d0]
sub rcx, 2
lea rcx, [rcx + 2]
cmp word [rcx], 0
jne 0x180068573
mov eax, dword [0x1802abc78]
mov dword [rcx], eax
mov qword [rdi + 0x18], 7
mov qword [rdi + 0x10], rbx
cmp qword [rdi + 0x18], 8
jb 0x18006859d
mov rax, qword [rdi]
jmp 0x1800685a0
mov rax, rdi
mov word [rax], bx
cmp word [rbp + 0x1d0], 0
je 0x1800685ca
lea rax, [rbp + 0x1d0]
or rbx, 0xffffffffffffffff
nop dword [rax + rax]
inc rbx
cmp word [rax + rbx*2], 0
jne 0x1800685c0
mov r8, rbx
lea rdx, [rbp + 0x1d0]
mov rcx, rdi
call fcn.18005c660
jmp 0x1800692cc
cmp rsi, 8
jb 0x1800685ec
mov rcx, qword [r14]
jmp 0x1800685ef
mov rcx, r14
mov r9d, 7
lea r8, str.program
mov rdx, qword [r14 + 0x10]
call fcn.18005c450
test eax, eax
jne 0x18006876e
xor edx, edx
mov r8d, 0x208
lea rcx, [rbp - 0x40]
call fcn.180233580
mov r8d, 0x26
lea rdx, [rbp - 0x40]
call fcn.180069510
lea rcx, [rbp - 0x40]
or rsi, 0xffffffffffffffff
mov rax, rsi
nop dword [rax + rax]
inc rax
cmp word [rcx + rax*2], 0
jne 0x180068640
cmp eax, 3
jl 0x180068721
xor edx, edx
mov r8d, 0x208
lea rcx, [rbp + 0x1d0]
call fcn.180233580
mov r8d, 3
lea rdx, [rbp - 0x40]
lea rcx, [rbp + 0x1d0]
call fcn.18023d3dc
lea rcx, [rbp + 0x1d0]
sub rcx, 2
nop dword [rax + rax]
lea rcx, [rcx + 2]
cmp word [rcx], 0
jne 0x180068690
movups xmm0, xmmword [str.Program_Files_]
movups xmmword [rcx], xmm0
movsd xmm1, qword [0x1802ac428]
movsd qword [rcx + 0x10], xmm1
mov eax, dword [0x1802ac430]
mov dword [rcx + 0x18], eax
movzx eax, word [0x1802ac434]
mov word [rcx + 0x1c], ax
mov qword [rdi + 0x18], 7
mov qword [rdi + 0x10], rbx
cmp qword [rdi + 0x18], 8
jb 0x1800686dd
mov rax, qword [rdi]
jmp 0x1800686e0
mov rax, rdi
mov word [rax], bx
cmp word [rbp + 0x1d0], 0
je 0x18006870a
lea rax, [rbp + 0x1d0]
mov rbx, rsi
nop word [rax + rax]
inc rbx
cmp word [rax + rbx*2], 0
jne 0x180068700
mov r8, rbx
lea rdx, [rbp + 0x1d0]
mov rcx, rdi
call fcn.18005c660
jmp 0x1800692cc
mov qword [rdi + 0x18], 7
mov qword [rdi + 0x10], rbx
cmp qword [rdi + 0x18], 8
jb 0x180068739
mov rax, qword [rdi]
jmp 0x18006873c
mov rax, rdi
mov word [rax], bx
cmp word [rbp - 0x40], 0
je 0x18006875a
lea rax, [rbp - 0x40]
mov rbx, rsi
nop dword [rax]
inc rbx
cmp word [rax + rbx*2], 0
jne 0x180068750
mov r8, rbx
lea rdx, [rbp - 0x40]
mov rcx, rdi
call fcn.18005c660
jmp 0x1800692cc
cmp rsi, 8
jb 0x180068779
mov rcx, qword [r14]
jmp 0x18006877c
mov rcx, r14
mov r9d, 4
lea r8, str.curr
mov rdx, qword [r14 + 0x10]
call fcn.18005c450
test eax, eax
jne 0x180068831
xor edx, edx
mov r8d, 0x208
lea rcx, [rbp + 0x1d0]
call fcn.180233580
mov r8d, 0x104
lea rdx, [rbp + 0x1d0]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
mov edx, 0x5c
lea rcx, [rbp + 0x1d0]
call fcn.1802328bc
mov word [rax + 2], bx
mov qword [rdi + 0x18], 7
mov qword [rdi + 0x10], rbx
cmp qword [rdi + 0x18], 8
jb 0x1800687f0
mov rax, qword [rdi]
jmp 0x1800687f3
mov rax, rdi
mov word [rax], bx
cmp word [rbp + 0x1d0], 0
je 0x18006881a
lea rax, [rbp + 0x1d0]
or rbx, 0xffffffffffffffff
nop dword [rax + rax]
inc rbx
cmp word [rax + rbx*2], 0
jne 0x180068810
mov r8, rbx
lea rdx, [rbp + 0x1d0]
mov rcx, rdi
call fcn.18005c660
jmp 0x1800692cc
cmp rsi, 8
jb 0x18006883c
mov rcx, qword [r14]
jmp 0x18006883f
mov rcx, r14
mov r9d, 4
lea r8, str.temp
mov rdx, qword [r14 + 0x10]
call fcn.18005c450
test eax, eax
jne 0x180068980
xor edx, edx
mov r8d, 0x208
lea rcx, [rbp - 0x40]
call fcn.180233580
xor edx, edx
mov r8d, 0x208
lea rcx, [rbp + 0x1d0]
call fcn.180233580
call fcn.180069300
or rsi, 0xffffffffffffffff
test al, al
je 0x1800688dc
lea r8d, [rsi + 0x1d]
lea rdx, [rbp - 0x40]
call fcn.180069510
test eax, eax
je 0x180068936
lea rcx, [rbp - 0x40]
sub rcx, 2
nop dword [rax]
lea rcx, [rcx + 2]
cmp word [rcx], 0
jne 0x1800688b0
movsd xmm0, qword [str.Temp_]
movsd qword [rcx], xmm0
mov eax, dword [0x1802ac460]
mov dword [rcx + 8], eax
movzx eax, word [0x1802ac464]
mov word [rcx + 0xc], ax
jmp 0x180068936
lea rdx, [rbp + 0x1d0]
mov ecx, 0x104
call qword [sym.imp.KERNEL32.dll_GetTempPathW]
mov r8d, 0x104
lea rdx, [rbp - 0x40]
lea rcx, [rbp + 0x1d0]
call qword [sym.imp.KERNEL32.dll_GetLongPathNameW]
lea rcx, [rbp - 0x40]
mov rax, rsi
nop dword [rax]
inc rax
cmp word [rcx + rax*2], 0
jne 0x180068910
test rax, rax
jne 0x180068936
mov r8d, 0x104
lea rdx, [rbp - 0x40]
lea rcx, str.TEMP
call qword [sym.imp.KERNEL32.dll_GetEnvironmentVariableW]
mov qword [rdi + 0x18], 7
mov qword [rdi + 0x10], rbx
cmp qword [rdi + 0x18], 8
jb 0x18006894e
mov rax, qword [rdi]
jmp 0x180068951
mov rax, rdi
mov word [rax], bx
cmp word [rbp - 0x40], 0
je 0x18006896c
lea rax, [rbp - 0x40]
mov rbx, rsi
inc rbx
cmp word [rax + rbx*2], 0
jne 0x180068962
mov r8, rbx
lea rdx, [rbp - 0x40]
mov rcx, rdi
call fcn.18005c660
jmp 0x1800692cc
cmp rsi, 8
jb 0x18006898b
mov rcx, qword [r14]
jmp 0x18006898e
mov rcx, r14
mov r9d, 7
lea r8, str.recirle
mov rdx, qword [r14 + 0x10]
call fcn.18005c450
test eax, eax
jne 0x180068a22
xor edx, edx
mov r8d, 0x208
lea rcx, [rbp + 0x1d0]
call fcn.180233580
mov r8d, 0xa
lea rdx, [rbp + 0x1d0]
call fcn.180069510
mov qword [rdi + 0x18], 7
mov qword [rdi + 0x10], rbx
cmp qword [rdi + 0x18], 8
jb 0x1800689e6
mov rax, qword [rdi]
jmp 0x1800689e9
mov rax, rdi
mov word [rax], bx
cmp word [rbp + 0x1d0], 0
je 0x180068a0b
lea rax, [rbp + 0x1d0]
or rbx, 0xffffffffffffffff
inc rbx
cmp word [rax + rbx*2], 0
jne 0x180068a01
mov r8, rbx
lea rdx, [rbp + 0x1d0]
mov rcx, rdi
call fcn.18005c660
jmp 0x1800692cc
cmp rsi, 8
jb 0x180068a2d
mov rcx, qword [r14]
jmp 0x180068a30
mov rcx, r14
mov r9d, 9
lea r8, str.downloads
mov rdx, qword [r14 + 0x10]
call fcn.18005c450
test eax, eax
jne 0x180068b8e
xor edx, edx
mov r8d, 0x208
lea rcx, [rbp - 0x40]
call fcn.180233580
mov r8d, 0x10
lea rdx, [rbp - 0x40]
call fcn.180069510
lea rcx, [rbp - 0x40]
or rsi, 0xffffffffffffffff
mov rax, rsi
nop dword [rax]
inc rax
cmp word [rcx + rax*2], 0
jne 0x180068a80
test rax, rax
je 0x180068ada
mov edx, 0x5c
lea rcx, [rbp - 0x40]
call fcn.1802328bc
mov word [rax + 2], bx
lea rcx, [rbp - 0x40]
sub rcx, 2
nop dword [rax]
lea rcx, [rcx + 2]
cmp word [rcx], 0
jne 0x180068ab0
movups xmm0, xmmword [0x1802ac4a0]
movups xmmword [rcx], xmm0
mov eax, dword [0x1802ac4b0]
mov dword [rcx + 0x10], eax
movzx eax, word [0x1802ac4b4]
mov word [rcx + 0x14], ax
jmp 0x180068b41
mov r8d, 0x104
lea rdx, [rbp - 0x40]
lea rcx, str.USERPROFILE
call qword [sym.imp.KERNEL32.dll_GetEnvironmentVariableW]
lea rcx, [rbp - 0x40]
mov rax, rsi
nop dword [rax + rax]
inc rax
cmp word [rcx + rax*2], 0
jne 0x180068b00
test rax, rax
je 0x180068b41
lea rax, [rbp - 0x40]
sub rax, 2
nop word [rax + rax]
lea rax, [rax + 2]
cmp word [rax], 0
jne 0x180068b20
movups xmm0, xmmword [str.Downloads_]
movups xmmword [rax], xmm0
movsd xmm1, qword [0x1802ac4e0]
movsd qword [rax + 0x10], xmm1
mov qword [rdi + 0x18], 7
mov qword [rdi + 0x10], rbx
cmp qword [rdi + 0x18], 8
jb 0x180068b59
mov rax, qword [rdi]
jmp 0x180068b5c
mov rax, rdi
mov word [rax], bx
cmp word [rbp - 0x40], 0
je 0x180068b7a
lea rax, [rbp - 0x40]
mov rbx, rsi
nop dword [rax]
inc rbx
cmp word [rax + rbx*2], 0
jne 0x180068b70
mov r8, rbx
lea rdx, [rbp - 0x40]
mov rcx, rdi
call fcn.18005c660
jmp 0x1800692cc
mov qword [rsp + 0x50], 7
mov qword [rsp + 0x48], rbx
mov word [rsp + 0x38], bx
xor edx, edx
mov r8d, 0x208
lea rcx, [rbp + 0x3e0]
call fcn.180233580
mov r8d, 0x104
lea rdx, [rbp + 0x3e0]
lea rcx, str.USERPROFILE
call qword [sym.imp.KERNEL32.dll_GetEnvironmentVariableW]
lea rcx, [rbp + 0x3e0]
sub rcx, 2
nop word [rax + rax]
lea rcx, [rcx + 2]
cmp word [rcx], 0
jne 0x180068be0
movups xmm0, xmmword [str.AppDataLocalLow_]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [0x1802ac4f8]
movups xmmword [rcx + 0x10], xmm1
mov eax, dword [0x1802ac508]
mov dword [rcx + 0x20], eax
movzx eax, word [0x1802ac50c]
mov word [rcx + 0x24], ax
or rsi, 0xffffffffffffffff
cmp word [rbp + 0x3e0], 0
jne 0x180068c26
mov r8, rbx
jmp 0x180068c3b
lea rax, [rbp + 0x3e0]
mov r8, rsi
inc r8
cmp word [rax + r8*2], 0
jne 0x180068c30
lea rdx, [rbp + 0x3e0]
lea rcx, [rsp + 0x38]
call fcn.18005c660
mov r15, qword [r14 + 0x18]
cmp r15, 8
jb 0x180068c5b
mov rcx, qword [r14]
jmp 0x180068c5e
mov rcx, r14
mov r9d, 8
lea r8, str.locallow
mov rdx, qword [r14 + 0x10]
call fcn.18005c450
test eax, eax
jne 0x180068dc3
lea r8d, [rax + 0x1a]
lea rdx, [rbp + 0x3e0]
call fcn.180069510
lea rcx, [rbp + 0x3e0]
call qword [sym.imp.SHLWAPI.dll_PathAddBackslashW]
mov qword [rsp + 0x70], 7
mov qword [rsp + 0x68], rbx
mov word [rsp + 0x58], bx
cmp word [rbp + 0x3e0], 0
jne 0x180068cbb
mov r8, rbx
jmp 0x180068cd0
lea rax, [rbp + 0x3e0]
mov r8, rsi
inc r8
cmp word [rax + r8*2], 0
jne 0x180068cc5
lea rdx, [rbp + 0x3e0]
lea rcx, [rsp + 0x58]
call fcn.18005c660
nop
mov qword [rbp - 0x50], 7
mov qword [rbp - 0x58], rbx
mov word [rbp - 0x68], bx
mov r8d, 8
lea rdx, str.LocalLow
lea rcx, [rbp - 0x68]
call fcn.18005c660
nop
mov qword [rbp - 0x70], 7
mov qword [rbp - 0x78], rbx
mov word [rsp + 0x78], bx
mov r8d, 7
lea rdx, str.Roaming
lea rcx, [rsp + 0x78]
call fcn.18005c660
nop
lea r8, [rbp - 0x68]
lea rdx, [rsp + 0x78]
lea rcx, [rsp + 0x58]
call fcn.18006d4a0
nop
mov r8, qword [rbp - 0x70]
cmp r8, 8
jb 0x180068d62
inc r8
mov rdx, qword [rsp + 0x78]
lea rcx, [rsp + 0x78]
call fcn.18005cac0
mov qword [rbp - 0x70], 7
mov qword [rbp - 0x78], rbx
mov word [rsp + 0x78], bx
mov r8, qword [rbp - 0x50]
cmp r8, 8
jb 0x180068d8d
inc r8
mov rdx, qword [rbp - 0x68]
lea rcx, [rbp - 0x68]
call fcn.18005cac0
lea rcx, [rsp + 0x58]
cmp qword [rsp + 0x70], 8
cmovae rcx, qword [rsp + 0x58]
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x180068dbe
mov r9, rsi
xor r8d, r8d
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x38]
call fcn.18005cbe0
nop
jmp 0x1800691c8
cmp r15, 8
jb 0x180068dce
mov rcx, qword [r14]
jmp 0x180068dd1
mov rcx, r14
mov r9d, 7
lea r8, str.roaming
mov rdx, qword [r14 + 0x10]
call fcn.18005c450
test eax, eax
je 0x18006905a
cmp r15, 8
jb 0x180068dfa
mov rcx, qword [r14]
jmp 0x180068dfd
mov rcx, r14
mov r9d, 7
lea r8, str.Roaming
mov rdx, qword [r14 + 0x10]
call fcn.18005c450
test eax, eax
je 0x18006905a
cmp r15, 8
jb 0x180068e26
mov rcx, qword [r14]
jmp 0x180068e29
mov rcx, r14
mov r9d, 5
lea r8, str.local
mov rdx, qword [r14 + 0x10]
call fcn.18005c450
test eax, eax
jne 0x180068fa9
lea r8d, [rax + 0x1c]
lea rdx, [rbp + 0x3e0]
call fcn.180069510
lea rcx, [rbp + 0x3e0]
call qword [sym.imp.SHLWAPI.dll_PathAddBackslashW]
lea rcx, [rbp + 0x3e0]
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x180068e9f
cmp word [rbp + 0x3e0], 0
jne 0x180068e87
mov rsi, rbx
jmp 0x1800690aa
lea rax, [rbp + 0x3e0]
nop
inc rsi
cmp word [rax + rsi*2], 0
jne 0x180068e90
jmp 0x1800690aa
mov qword [rsp + 0x70], 7
mov qword [rsp + 0x68], rbx
mov word [rsp + 0x58], bx
mov r9, rsi
xor r8d, r8d
lea rdx, [rsp + 0x38]
lea rcx, [rsp + 0x58]
call fcn.18005cbe0
nop
mov qword [rbp - 0x50], 7
mov qword [rbp - 0x58], rbx
mov word [rbp - 0x68], bx
mov r8d, 5
lea rdx, str.Local
lea rcx, [rbp - 0x68]
call fcn.18005c660
nop
mov qword [rbp - 0x70], 7
mov qword [rbp - 0x78], rbx
mov word [rsp + 0x78], bx
mov r8d, 8
lea rdx, str.LocalLow
lea rcx, [rsp + 0x78]
call fcn.18005c660
nop
lea r8, [rbp - 0x68]
lea rdx, [rsp + 0x78]
lea rcx, [rsp + 0x58]
call fcn.18006d4a0
nop
mov r8, qword [rbp - 0x70]
cmp r8, 8
jb 0x180068f48
inc r8
mov rdx, qword [rsp + 0x78]
lea rcx, [rsp + 0x78]
call fcn.18005cac0
mov qword [rbp - 0x70], 7
mov qword [rbp - 0x78], rbx
mov word [rsp + 0x78], bx
mov r8, qword [rbp - 0x50]
cmp r8, 8
jb 0x180068f73
inc r8
mov rdx, qword [rbp - 0x68]
lea rcx, [rbp - 0x68]
call fcn.18005cac0
lea rcx, [rsp + 0x58]
cmp qword [rsp + 0x70], 8
cmovae rcx, qword [rsp + 0x58]
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x180068fa4
mov r9, rsi
xor r8d, r8d
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x38]
call fcn.18005cbe0
nop
jmp 0x1800691c8
cmp r15, 8
jb 0x180068fb4
mov rcx, qword [r14]
jmp 0x180068fb7
mov rcx, r14
mov r9d, 6
lea r8, str.system
mov rdx, qword [r14 + 0x10]
call fcn.18005c450
test eax, eax
jne 0x18006902c
lea r8d, [rax + 0x25]
lea rdx, [rbp + 0x3e0]
call fcn.180069510
lea rcx, [rbp + 0x3e0]
call qword [sym.imp.SHLWAPI.dll_PathAddBackslashW]
lea rcx, [rbp + 0x3e0]
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x1800691e5
cmp word [rbp + 0x3e0], 0
jne 0x180069015
mov rsi, rbx
jmp 0x1800690aa
lea rax, [rbp + 0x3e0]
nop dword [rax]
inc rsi
cmp word [rax + rsi*2], 0
jne 0x180069020
jmp 0x1800690aa
mov qword [rdi + 0x18], 7
mov qword [rdi + 0x10], rbx
cmp qword [rdi + 0x18], 8
jb 0x180069044
mov rax, qword [rdi]
jmp 0x180069047
mov rax, rdi
mov word [rax], bx
mov rdx, r14
mov rcx, rdi
call fcn.18005c590
jmp 0x18006929c
mov r8d, 0x1a
lea rdx, [rbp + 0x3e0]
call fcn.180069510
lea rcx, [rbp + 0x3e0]
call qword [sym.imp.SHLWAPI.dll_PathAddBackslashW]
lea rcx, [rbp + 0x3e0]
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x1800690c3
cmp word [rbp + 0x3e0], 0
jne 0x180069099
mov rsi, rbx
jmp 0x1800690aa
lea rax, [rbp + 0x3e0]
inc rsi
cmp word [rax + rsi*2], 0
jne 0x1800690a0
mov r8, rsi
lea rdx, [rbp + 0x3e0]
lea rcx, [rsp + 0x38]
call fcn.18005c660
jmp 0x1800691e5
mov qword [rsp + 0x70], 7
mov qword [rsp + 0x68], rbx
mov word [rsp + 0x58], bx
mov r9, rsi
xor r8d, r8d
lea rdx, [rsp + 0x38]
lea rcx, [rsp + 0x58]
call fcn.18005cbe0
nop
mov qword [rbp - 0x50], 7
mov qword [rbp - 0x58], rbx
mov word [rbp - 0x68], bx
mov r8d, 7
lea rdx, str.Roaming
lea rcx, [rbp - 0x68]
call fcn.18005c660
nop
mov qword [rbp - 0x70], 7
mov qword [rbp - 0x78], rbx
mov word [rsp + 0x78], bx
mov r8d, 8
lea rdx, str.LocalLow
lea rcx, [rsp + 0x78]
call fcn.18005c660
nop
lea r8, [rbp - 0x68]
lea rdx, [rsp + 0x78]
lea rcx, [rsp + 0x58]
call fcn.18006d4a0
nop
mov r8, qword [rbp - 0x70]
cmp r8, 8
jb 0x18006916c
inc r8
mov rdx, qword [rsp + 0x78]
lea rcx, [rsp + 0x78]
call fcn.18005cac0
mov qword [rbp - 0x70], 7
mov qword [rbp - 0x78], rbx
mov word [rsp + 0x78], bx
mov r8, qword [rbp - 0x50]
cmp r8, 8
jb 0x180069197
inc r8
mov rdx, qword [rbp - 0x68]
lea rcx, [rbp - 0x68]
call fcn.18005cac0
lea rcx, [rsp + 0x58]
cmp qword [rsp + 0x70], 8
cmovae rcx, qword [rsp + 0x58]
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x1800691c8
mov r9, rsi
xor r8d, r8d
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x38]
call fcn.18005cbe0
nop
mov r8, qword [rsp + 0x70]
cmp r8, 8
jb 0x1800691e5
inc r8
mov rdx, qword [rsp + 0x58]
lea rcx, [rsp + 0x58]
call fcn.18005cac0
lea rcx, [rsp + 0x38]
cmp qword [rsp + 0x50], 8
cmovae rcx, qword [rsp + 0x38]
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x18006926b
mov r9d, 8
xor r8d, r8d
lea rdx, str.system32
lea rcx, [rsp + 0x38]
call fcn.18005fea0
cmp rax, 0xffffffffffffffff
jne 0x18006926b
lea r9d, [rax + 0xe]
xor r8d, r8d
lea rdx, str.systemprofile
lea rcx, [rsp + 0x38]
call fcn.18005fea0
cmp rax, 0xffffffffffffffff
jne 0x18006926b
mov qword [rdi + 0x18], 7
mov qword [rdi + 0x10], rbx
cmp qword [rdi + 0x18], 8
jb 0x180069256
mov rax, qword [rdi]
jmp 0x180069259
mov rax, rdi
mov word [rax], bx
lea rdx, [rsp + 0x38]
mov rcx, rdi
call fcn.18005c590
jmp 0x18006929c
mov qword [rdi + 0x18], 7
mov qword [rdi + 0x10], rbx
cmp qword [rdi + 0x18], 8
jb 0x180069283
mov rax, qword [rdi]
jmp 0x180069286
mov rax, rdi
mov word [rax], bx
xor r8d, r8d
lea rdx, [0x1802abc2c]
mov rcx, rdi
call fcn.18005c660
nop
mov r8, qword [rsp + 0x50]
cmp r8, 8
jb 0x1800692b9
inc r8
mov rdx, qword [rsp + 0x38]
lea rcx, [rsp + 0x38]
call fcn.18005cac0
mov qword [rsp + 0x50], 7
mov qword [rsp + 0x48], rbx
mov word [rsp + 0x38], bx
mov rcx, r14
call fcn.18005c830
mov rax, rdi
mov rcx, qword [rbp + 0x5f0]
xor rcx, rsp
call fcn.1802037a0
mov rbx, qword [rsp + 0x740]
add rsp, 0x700
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret