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

Disassembly:
mov rax, rsp
push rbp
push rdi
push r14
lea rbp, [rax - 0x618]
sub rsp, 0x700
mov qword [rsp + 0x28], 0xfffffffffffffffe
mov qword [rax + 0x18], rbx
mov qword [rax + 0x20], rsi
mov rax, qword [0x14004a1a0]
xor rax, rsp
mov qword [rbp + 0x5f0], rax
mov r14, rdx
mov rsi, rcx
mov qword [rsp + 0x30], rdx
xor ebx, ebx
mov dword [rsp + 0x20], ebx
cmp qword [rdx + 0x10], rbx
jne 0x140008b13
mov qword [rcx + 0x18], 7
mov qword [rcx + 0x10], rbx
cmp qword [rcx + 0x18], 8
jb 0x140008ac6
mov rax, qword [rcx]
jmp 0x140008ac9
mov rax, rsi
mov word [rax], bx
xor r8d, r8d
lea rdx, [0x140032910]
call fcn.140003130
nop
mov r8, qword [r14 + 0x18]
cmp r8, 8
jb 0x140008af4
inc r8
mov rdx, qword [r14]
mov rcx, r14
call fcn.140003310
mov qword [r14 + 0x18], 7
mov qword [r14 + 0x10], rbx
cmp qword [r14 + 0x18], 8
jb 0x140008b0a
mov r14, qword [r14]
mov word [r14], bx
jmp 0x140009968
mov r11, qword [rdx + 0x18]
cmp r11, 8
jb 0x140008b22
mov rcx, qword [rdx]
jmp 0x140008b25
mov rcx, r14
mov r10, qword [rdx + 0x10]
mov r8d, 3
cmp r10, r8
cmovb r8, r10
mov r9d, 1
or rdi, 0xffffffffffffffff
test r8, r8
je 0x140008b73
lea rdx, [0x140035140]
nop dword [rax]
movzx eax, word [rdx]
cmp word [rcx], ax
jne 0x140008b67
add rcx, 2
add rdx, 2
sub r8, r9
jne 0x140008b50
jmp 0x140008b73
mov r8d, r9d
cmp word [rcx], ax
cmovb r8d, edi
jmp 0x140008b76
mov r8d, ebx
test r8d, r8d
jne 0x140008c0d
cmp r10, 3
jne 0x140008c0d
xor edx, edx
mov r8d, 0x208
lea rcx, [rbp - 0x40]
call fcn.140017bf0
xor r9d, r9d
lea r8d, [r9 + 0x26]
lea rdx, [rbp - 0x40]
xor ecx, ecx
call fcn.14000a2a0
lea rcx, [rbp - 0x40]
sub rcx, 2
lea rcx, [rcx + 2]
cmp word [rcx], 0
jne 0x140008bb4
mov eax, dword [0x140032be0]
mov dword [rcx], eax
mov qword [rsi + 0x18], 7
mov qword [rsi + 0x10], rbx
cmp qword [rsi + 0x18], 8
jb 0x140008bde
mov rax, qword [rsi]
jmp 0x140008be1
mov rax, rsi
mov word [rax], bx
cmp word [rbp - 0x40], 0
jne 0x140008bf0
mov rdi, rbx
jmp 0x140008bfe
lea rax, [rbp - 0x40]
inc rdi
cmp word [rax + rdi*2], 0
jne 0x140008bf4
mov r8, rdi
lea rdx, [rbp - 0x40]
mov rcx, rsi
jmp 0x140008ad6
cmp r11, 8
jb 0x140008c18
mov rcx, qword [r14]
jmp 0x140008c1b
mov rcx, r14
mov r8d, 3
cmp r10, r8
cmovb r8, r10
test r8, r8
je 0x140008c57
lea rdx, [0x140035148]
movzx eax, word [rdx]
cmp word [rcx], ax
jne 0x140008c4b
add rcx, 2
add rdx, 2
sub r8, r9
jne 0x140008c34
jmp 0x140008c57
mov r8d, r9d
cmp word [rcx], ax
cmovb r8d, edi
jmp 0x140008c5a
mov r8d, ebx
test r8d, r8d
jne 0x140008cfe
cmp r10, 3
jne 0x140008cfe
xor edx, edx
mov r8d, 0x208
lea rcx, [rbp - 0x40]
call fcn.140017bf0
xor r9d, r9d
lea r8d, [r9 + 5]
lea rdx, [rbp - 0x40]
xor ecx, ecx
call fcn.14000a2a0
lea rcx, [rbp - 0x40]
sub rcx, 2
nop dword [rax + rax]
lea rcx, [rcx + 2]
cmp word [rcx], 0
jne 0x140008ca0
mov eax, dword [0x140032be0]
mov dword [rcx], eax
mov qword [rsi + 0x18], 7
mov qword [rsi + 0x10], rbx
cmp qword [rsi + 0x18], 8
jb 0x140008cca
mov rax, qword [rsi]
jmp 0x140008ccd
mov rax, rsi
mov word [rax], bx
cmp word [rbp - 0x40], 0
je 0x140008cea
lea rax, [rbp - 0x40]
mov rbx, rdi
nop
inc rbx
cmp word [rax + rbx*2], 0
jne 0x140008ce0
mov r8, rbx
lea rdx, [rbp - 0x40]
mov rcx, rsi
call fcn.140003130
jmp 0x140009960
cmp r11, 8
jb 0x140008d09
mov rcx, qword [r14]
jmp 0x140008d0c
mov rcx, r14
mov r8d, 7
cmp r10, r8
cmovb r8, r10
test r8, r8
je 0x140008d48
lea rdx, str.desktop
movzx eax, word [rdx]
cmp word [rcx], ax
jne 0x140008d3c
add rcx, 2
add rdx, 2
sub r8, r9
jne 0x140008d25
jmp 0x140008d48
mov r8d, r9d
cmp word [rcx], ax
cmovb r8d, edi
jmp 0x140008d4b
mov r8d, ebx
test r8d, r8d
jne 0x140008de5
cmp r10, 7
jne 0x140008de5
xor r9d, r9d
lea rdx, [rbp + 0x3e0]
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_SHGetSpecialFolderPathW]
lea rcx, [rbp + 0x3e0]
sub rcx, 2
nop dword [rax + rax]
lea rcx, [rcx + 2]
cmp word [rcx], 0
jne 0x140008d80
mov eax, dword [0x140032be0]
mov dword [rcx], eax
mov qword [rsi + 0x18], 7
mov qword [rsi + 0x10], rbx
cmp qword [rsi + 0x18], 8
jb 0x140008daa
mov rax, qword [rsi]
jmp 0x140008dad
mov rax, rsi
mov word [rax], bx
cmp word [rbp + 0x3e0], 0
je 0x140008dce
lea rax, [rbp + 0x3e0]
mov rbx, rdi
inc rbx
cmp word [rax + rbx*2], 0
jne 0x140008dc4
mov r8, rbx
lea rdx, [rbp + 0x3e0]
mov rcx, rsi
call fcn.140003130
jmp 0x140009960
cmp r11, 8
jb 0x140008df0
mov rcx, qword [r14]
jmp 0x140008df3
mov rcx, r14
mov r8d, 3
cmp r10, r8
cmovb r8, r10
test r8, r8
je 0x140008e33
lea rdx, [0x140035160]
nop dword [rax]
movzx eax, word [rdx]
cmp word [rcx], ax
jne 0x140008e27
add rcx, 2
add rdx, 2
sub r8, r9
jne 0x140008e10
jmp 0x140008e33
mov r8d, r9d
cmp word [rcx], ax
cmovb r8d, edi
jmp 0x140008e36
mov r8d, ebx
test r8d, r8d
jne 0x140008ed5
cmp r10, 3
jne 0x140008ed5
xor r9d, r9d
lea r8d, [r10 + 3]
lea rdx, [rbp + 0x3e0]
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_SHGetSpecialFolderPathW]
lea rcx, [rbp + 0x3e0]
sub rcx, 2
nop word [rax + rax]
lea rcx, [rcx + 2]
cmp word [rcx], 0
jne 0x140008e70
mov eax, dword [0x140032be0]
mov dword [rcx], eax
mov qword [rsi + 0x18], 7
mov qword [rsi + 0x10], rbx
cmp qword [rsi + 0x18], 8
jb 0x140008e9a
mov rax, qword [rsi]
jmp 0x140008e9d
mov rax, rsi
mov word [rax], bx
cmp word [rbp + 0x3e0], 0
je 0x140008ebe
lea rax, [rbp + 0x3e0]
mov rbx, rdi
inc rbx
cmp word [rax + rbx*2], 0
jne 0x140008eb4
mov r8, rbx
lea rdx, [rbp + 0x3e0]
mov rcx, rsi
call fcn.140003130
jmp 0x140009960
cmp r11, 8
jb 0x140008ee0
mov rcx, qword [r14]
jmp 0x140008ee3
mov rcx, r14
mov r8d, 7
cmp r10, r8
cmovb r8, r10
test r8, r8
je 0x140008f23
lea rdx, str.program
nop dword [rax]
movzx eax, word [rdx]
cmp word [rcx], ax
jne 0x140008f17
add rcx, 2
add rdx, 2
sub r8, r9
jne 0x140008f00
jmp 0x140008f23
mov r8d, r9d
cmp word [rcx], ax
cmovb r8d, edi
jmp 0x140008f26
mov r8d, ebx
test r8d, r8d
jne 0x14000908e
cmp r10, 7
jne 0x14000908e
xor edx, edx
mov r8d, 0x208
lea rcx, [rbp - 0x40]
call fcn.140017bf0
xor r9d, r9d
lea r8d, [r9 + 0x26]
lea rdx, [rbp - 0x40]
xor ecx, ecx
call fcn.14000a2a0
lea rcx, [rbp - 0x40]
mov rax, rdi
inc rax
cmp word [rcx + rax*2], 0
jne 0x140008f63
cmp eax, 3
jl 0x140009041
xor edx, edx
mov r8d, 0x208
lea rcx, [rbp + 0x3e0]
call fcn.140017bf0
mov r8d, 3
lea rdx, [rbp - 0x40]
lea rcx, [rbp + 0x3e0]
call fcn.14001d9b4
lea rcx, [rbp + 0x3e0]
sub rcx, 2
nop dword [rax + rax]
lea rcx, [rcx + 2]
cmp word [rcx], 0
jne 0x140008fb0
movups xmm0, xmmword [str.Program_Files_]
movups xmmword [rcx], xmm0
movsd xmm1, qword [0x140035188]
movsd qword [rcx + 0x10], xmm1
mov eax, dword [0x140035190]
mov dword [rcx + 0x18], eax
movzx eax, word [0x140035194]
mov word [rcx + 0x1c], ax
mov qword [rsi + 0x18], 7
mov qword [rsi + 0x10], rbx
cmp qword [rsi + 0x18], 8
jb 0x140008ffd
mov rax, qword [rsi]
jmp 0x140009000
mov rax, rsi
mov word [rax], bx
cmp word [rbp + 0x3e0], 0
je 0x14000902a
lea rax, [rbp + 0x3e0]
mov rbx, rdi
nop word [rax + rax]
inc rbx
cmp word [rax + rbx*2], 0
jne 0x140009020
mov r8, rbx
lea rdx, [rbp + 0x3e0]
mov rcx, rsi
call fcn.140003130
jmp 0x140009960
mov qword [rsi + 0x18], 7
mov qword [rsi + 0x10], rbx
cmp qword [rsi + 0x18], 8
jb 0x140009059
mov rax, qword [rsi]
jmp 0x14000905c
mov rax, rsi
mov word [rax], bx
cmp word [rbp - 0x40], 0
je 0x14000907a
lea rax, [rbp - 0x40]
mov rbx, rdi
nop dword [rax]
inc rbx
cmp word [rax + rbx*2], 0
jne 0x140009070
mov r8, rbx
lea rdx, [rbp - 0x40]
mov rcx, rsi
call fcn.140003130
jmp 0x140009960
cmp r11, 8
jb 0x140009099
mov rcx, qword [r14]
jmp 0x14000909c
mov rcx, r14
mov r8d, 4
cmp r10, r8
cmovb r8, r10
test r8, r8
je 0x1400090d2
lea rdx, str.curr
movzx eax, word [rdx]
cmp word [rcx], ax
jne 0x1400090cc
add rcx, 2
add rdx, 2
sub r8, r9
jne 0x1400090b5
jmp 0x1400090d2
cmovb r9d, edi
jmp 0x1400090d5
mov r9d, ebx
test r9d, r9d
jne 0x140009181
cmp r10, 4
jne 0x140009181
xor edx, edx
mov r8d, 0x208
lea rcx, [rbp + 0x3e0]
call fcn.140017bf0
mov r8d, 0x104
lea rdx, [rbp + 0x3e0]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
mov edx, 0x5c
lea rcx, [rbp + 0x3e0]
call fcn.140017d90
mov word [rax + 2], bx
mov qword [rsi + 0x18], 7
mov qword [rsi + 0x10], rbx
cmp qword [rsi + 0x18], 8
jb 0x14000913e
mov rax, qword [rsi]
jmp 0x140009141
mov rax, rsi
mov word [rax], bx
cmp word [rbp + 0x3e0], 0
je 0x14000916a
lea rax, [rbp + 0x3e0]
mov rbx, rdi
nop dword [rax + rax]
inc rbx
cmp word [rax + rbx*2], 0
jne 0x140009160
mov r8, rbx
lea rdx, [rbp + 0x3e0]
mov rcx, rsi
call fcn.140003130
jmp 0x140009960
lea rdx, str.temp
mov rcx, r14
call fcn.140008570
test al, al
je 0x140009287
xor edx, edx
mov r8d, 0x208
lea rcx, [rbp - 0x40]
call fcn.140017bf0
xor edx, edx
mov r8d, 0x208
lea rcx, [rbp + 0x3e0]
call fcn.140017bf0
call fcn.140009b60
test al, al
je 0x14000921c
xor r9d, r9d
lea r8d, [r9 + 0x1c]
lea rdx, [rbp - 0x40]
xor ecx, ecx
call fcn.14000a2a0
test eax, eax
je 0x140009276
lea rcx, [rbp - 0x40]
sub rcx, 2
nop dword [rax + rax]
lea rcx, [rcx + 2]
cmp word [rcx], 0
jne 0x1400091f0
movsd xmm0, qword [str.Temp_]
movsd qword [rcx], xmm0
mov eax, dword [0x1400351c0]
mov dword [rcx + 8], eax
movzx eax, word [0x1400351c4]
mov word [rcx + 0xc], ax
jmp 0x140009276
lea rdx, [rbp + 0x3e0]
mov ecx, 0x104
call qword [sym.imp.KERNEL32.dll_GetTempPathW]
mov r8d, 0x104
lea rdx, [rbp - 0x40]
lea rcx, [rbp + 0x3e0]
call qword [sym.imp.KERNEL32.dll_GetLongPathNameW]
lea rax, [rbp - 0x40]
nop dword [rax]
inc rdi
cmp word [rax + rdi*2], 0
jne 0x140009250
test rdi, rdi
jne 0x140009276
mov r8d, 0x104
lea rdx, [rbp - 0x40]
lea rcx, str.TEMP
call qword [sym.imp.KERNEL32.dll_GetEnvironmentVariableW]
lea rdx, [rbp - 0x40]
mov rcx, rsi
call fcn.1400085f0
jmp 0x140009960
lea rdx, str.downloads
mov rcx, r14
call fcn.140008570
test al, al
je 0x140009392
xor edx, edx
mov r8d, 0x208
lea rcx, [rbp - 0x40]
call fcn.140017bf0
xor r9d, r9d
lea r8d, [r9 + 0x10]
lea rdx, [rbp - 0x40]
xor ecx, ecx
call fcn.14000a2a0
lea rcx, [rbp - 0x40]
mov rax, rdi
nop dword [rax + rax]
inc rax
cmp word [rcx + rax*2], 0
jne 0x1400092d0
test rax, rax
je 0x14000932a
mov edx, 0x5c
lea rcx, [rbp - 0x40]
call fcn.140017d90
mov word [rax + 2], bx
lea rcx, [rbp - 0x40]
sub rcx, 2
nop dword [rax]
lea rcx, [rcx + 2]
cmp word [rcx], 0
jne 0x140009300
movups xmm0, xmmword [0x1400351f0]
movups xmmword [rcx], xmm0
mov eax, dword [0x140035200]
mov dword [rcx + 0x10], eax
movzx eax, word [0x140035204]
mov word [rcx + 0x14], ax
jmp 0x140009381
mov r8d, 0x104
lea rdx, [rbp - 0x40]
lea rcx, str.USERPROFILE
call qword [sym.imp.KERNEL32.dll_GetEnvironmentVariableW]
lea rax, [rbp - 0x40]
inc rdi
cmp word [rax + rdi*2], 0
jne 0x140009345
test rdi, rdi
je 0x140009381
lea rax, [rbp - 0x40]
sub rax, 2
nop dword [rax]
lea rax, [rax + 2]
cmp word [rax], 0
jne 0x140009360
movups xmm0, xmmword [str.Downloads_]
movups xmmword [rax], xmm0
movsd xmm1, qword [0x140035230]
movsd qword [rax + 0x10], xmm1
lea rdx, [rbp - 0x40]
mov rcx, rsi
call fcn.1400085f0
jmp 0x140009960
mov qword [rsp + 0x70], 7
mov qword [rsp + 0x68], rbx
mov word [rsp + 0x58], bx
xor edx, edx
mov r8d, 0x208
lea rcx, [rbp + 0x1d0]
call fcn.140017bf0
mov r8d, 0x104
lea rdx, [rbp + 0x1d0]
lea rcx, str.USERPROFILE
call qword [sym.imp.KERNEL32.dll_GetEnvironmentVariableW]
lea rcx, [rbp + 0x1d0]
sub rcx, 2
nop
lea rcx, [rcx + 2]
cmp word [rcx], 0
jne 0x1400093e0
movups xmm0, xmmword [str.AppDataLocalLow_]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [0x140035248]
movups xmmword [rcx + 0x10], xmm1
mov eax, dword [0x140035258]
mov dword [rcx + 0x20], eax
movzx eax, word [0x14003525c]
mov word [rcx + 0x24], ax
cmp word [rbp + 0x1d0], 0
jne 0x140009422
mov r8, rbx
jmp 0x14000943b
lea rax, [rbp + 0x1d0]
mov r8, rdi
nop dword [rax]
inc r8
cmp word [rax + r8*2], 0
jne 0x140009430
lea rdx, [rbp + 0x1d0]
lea rcx, [rsp + 0x58]
call fcn.140003130
lea rdx, str.locallow
mov rcx, r14
call fcn.140008570
test al, al
je 0x14000957c
xor r9d, r9d
lea r8d, [r9 + 0x1a]
lea rdx, [rbp + 0x1d0]
xor ecx, ecx
call fcn.14000a2a0
lea rcx, [rbp + 0x1d0]
call qword [sym.imp.SHLWAPI.dll_PathAddBackslashW]
mov qword [rsp + 0x50], 7
mov qword [rsp + 0x48], rbx
mov word [rsp + 0x38], bx
cmp word [rbp + 0x1d0], 0
jne 0x1400094a7
mov r8, rbx
jmp 0x1400094bc
lea rax, [rbp + 0x1d0]
mov r8, rdi
inc r8
cmp word [rax + r8*2], 0
jne 0x1400094b1
lea rdx, [rbp + 0x1d0]
lea rcx, [rsp + 0x38]
call fcn.140003130
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.140003130
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.140003130
nop
lea r8, [rbp - 0x68]
lea rdx, [rsp + 0x78]
lea rcx, [rsp + 0x38]
call fcn.14000b260
nop
lea rcx, [rsp + 0x78]
call fcn.1400122a0
nop
lea rcx, [rbp - 0x68]
call fcn.1400122a0
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 0x140009577
mov r9, rdi
xor r8d, r8d
lea rdx, [rsp + 0x38]
lea rcx, [rsp + 0x58]
call fcn.140002ff0
nop
jmp 0x1400098b5
lea rdx, str.roaming
mov rcx, r14
call fcn.140008570
test al, al
jne 0x140009772
lea rdx, str.Roaming
mov rcx, r14
call fcn.140008570
test al, al
jne 0x140009772
lea rdx, str.local
mov rcx, r14
call fcn.140008570
test al, al
je 0x1400096f6
xor r9d, r9d
lea r8d, [r9 + 0x1c]
lea rdx, [rbp + 0x1d0]
xor ecx, ecx
call fcn.14000a2a0
lea rcx, [rbp + 0x1d0]
call qword [sym.imp.SHLWAPI.dll_PathAddBackslashW]
lea rcx, [rbp + 0x1d0]
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x14000961f
cmp word [rbp + 0x1d0], 0
jne 0x140009606
mov rdi, rbx
jmp 0x1400097ca
lea rax, [rbp + 0x1d0]
nop dword [rax]
inc rdi
cmp word [rax + rdi*2], 0
jne 0x140009610
jmp 0x1400097ca
mov qword [rsp + 0x50], 7
mov qword [rsp + 0x48], rbx
mov word [rsp + 0x38], bx
mov r9, rdi
xor r8d, r8d
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x38]
call fcn.140002ff0
nop
mov qword [rbp - 0x70], 7
mov qword [rbp - 0x78], rbx
mov word [rsp + 0x78], bx
mov r8d, 5
lea rdx, str.Local
lea rcx, [rsp + 0x78]
call fcn.140003130
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.140003130
nop
lea r8, [rsp + 0x78]
lea rdx, [rbp - 0x68]
lea rcx, [rsp + 0x38]
call fcn.14000b260
nop
lea rcx, [rbp - 0x68]
call fcn.1400122a0
nop
lea rcx, [rsp + 0x78]
call fcn.1400122a0
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 0x1400096f1
mov r9, rdi
xor r8d, r8d
lea rdx, [rsp + 0x38]
lea rcx, [rsp + 0x58]
call fcn.140002ff0
nop
jmp 0x1400098b5
lea rdx, str.system
mov rcx, r14
call fcn.140008570
test al, al
je 0x140009762
xor r9d, r9d
lea r8d, [r9 + 0x25]
lea rdx, [rbp + 0x1d0]
xor ecx, ecx
call fcn.14000a2a0
lea rcx, [rbp + 0x1d0]
call qword [sym.imp.SHLWAPI.dll_PathAddBackslashW]
lea rcx, [rbp + 0x1d0]
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x1400098bf
cmp word [rbp + 0x1d0], 0
jne 0x14000974f
mov rdi, rbx
jmp 0x1400097ca
lea rax, [rbp + 0x1d0]
inc rdi
cmp word [rax + rdi*2], 0
jne 0x140009756
jmp 0x1400097ca
mov rdx, r14
mov rcx, rsi
call fcn.1400085c0
jmp 0x140009955
xor r9d, r9d
lea r8d, [r9 + 0x1a]
lea rdx, [rbp + 0x1d0]
xor ecx, ecx
call fcn.14000a2a0
lea rcx, [rbp + 0x1d0]
call qword [sym.imp.SHLWAPI.dll_PathAddBackslashW]
lea rcx, [rbp + 0x1d0]
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x1400097e3
cmp word [rbp + 0x1d0], 0
jne 0x1400097b4
mov rdi, rbx
jmp 0x1400097ca
lea rax, [rbp + 0x1d0]
nop dword [rax + rax]
inc rdi
cmp word [rax + rdi*2], 0
jne 0x1400097c0
mov r8, rdi
lea rdx, [rbp + 0x1d0]
lea rcx, [rsp + 0x58]
call fcn.140003130
jmp 0x1400098bf
mov qword [rsp + 0x50], 7
mov qword [rsp + 0x48], rbx
mov word [rsp + 0x38], bx
mov r9, rdi
xor r8d, r8d
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x38]
call fcn.140002ff0
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.140003130
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.140003130
nop
lea r8, [rsp + 0x78]
lea rdx, [rbp - 0x68]
lea rcx, [rsp + 0x38]
call fcn.14000b260
nop
lea rcx, [rbp - 0x68]
call fcn.1400122a0
nop
lea rcx, [rsp + 0x78]
call fcn.1400122a0
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 0x1400098b5
mov r9, rdi
xor r8d, r8d
lea rdx, [rsp + 0x38]
lea rcx, [rsp + 0x58]
call fcn.140002ff0
nop
lea rcx, [rsp + 0x38]
call fcn.1400122a0
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 0x140009945
mov r9d, 8
xor r8d, r8d
lea rdx, str.system32
lea rcx, [rsp + 0x58]
call fcn.140003980
cmp rax, 0xffffffffffffffff
jne 0x140009945
lea r9d, [rax + 0xe]
xor r8d, r8d
lea rdx, str.systemprofile
lea rcx, [rsp + 0x58]
call fcn.140003980
cmp rax, 0xffffffffffffffff
jne 0x140009945
mov qword [rsi + 0x18], 7
mov qword [rsi + 0x10], rbx
cmp qword [rsi + 0x18], 8
jb 0x140009930
mov rax, qword [rsi]
jmp 0x140009933
mov rax, rsi
mov word [rax], bx
lea rdx, [rsp + 0x58]
mov rcx, rsi
call fcn.140002b10
jmp 0x140009955
lea rdx, [0x140032910]
mov rcx, rsi
call fcn.1400085f0
nop
lea rcx, [rsp + 0x58]
call fcn.1400122a0
nop
mov rcx, r14
call fcn.1400122a0
mov rax, rsi
mov rcx, qword [rbp + 0x5f0]
xor rcx, rsp
call fcn.1400131c0
lea r11, [rsp + 0x700]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rsp, r11
pop r14
pop rdi
pop rbp
ret