Function at 0x140059970
Capabilities:
Get common file path

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x210]
sub rsp, 0x310
mov rax, qword [0x1400cc040]
xor rax, rsp
mov qword [rbp + 0x200], rax
mov r13, rcx
mov qword [rsp + 0x48], rcx
xor edi, edi
xorps xmm0, xmm0
movups xmmword [rbp - 0x30], xmm0
movdqa xmm1, xmmword [0x1400ba9a0]
movdqu xmmword [rbp - 0x20], xmm1
movsd xmm0, qword [str.C:Users_]
movsd qword [rbp - 0x30], xmm0
movzx eax, byte [0x1400ae390]
mov byte [rbp - 0x28], al
mov byte [rbp - 0x27], dil
xorps xmm0, xmm0
movups xmmword [rbp - 0x50], xmm0
lea ecx, [rdi + 0x20]
call fcn.1400a5700
mov r12, rax
mov qword [rbp - 0x50], rax
mov qword [rbp - 0x40], 0x10
mov qword [rbp - 0x38], 0x1f
movups xmm0, xmmword [str.AppDataRoaming]
movups xmmword [rax], xmm0
mov byte [rax + 0x10], dil
lea rax, [rbp - 0x10]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
lea edx, [rdi + 0x28]
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_SHGetFolderPathW]
xorps xmm0, xmm0
movups xmmword [rsp + 0x70], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x80], xmm1
lea rax, [rbp - 0x10]
mov rbx, 0xffffffffffffffff
nop word [rax + rax]
inc rbx
cmp word [rax + rbx*2], 0
jne 0x140059a50
movabs rsi, 0x7ffffffffffffffe
cmp rbx, rsi
ja 0x140059e7c
movabs r14, 0x7fffffffffffffff
cmp rbx, 7
ja 0x140059aa9
mov qword [rbp - 0x80], rbx
mov qword [rbp - 0x78], 7
add rbx, rbx
mov r8, rbx
lea rdx, [rbp - 0x10]
lea rcx, [rsp + 0x70]
call sub.VCRUNTIME140.dll_memcpy
xor esi, esi
mov word [rsp + rbx + 0x70], si
jmp 0x140059b44
mov rax, rbx
or rax, 7
cmp rax, rsi
jbe 0x140059abb
lea rcx, [r14 + r14]
jmp 0x140059ae3
mov rsi, rax
mov ecx, 0xa
cmp rax, rcx
cmovb rsi, rcx
lea rcx, [rsi + 1]
cmp rcx, r14
ja 0x140059e76
add rcx, rcx
cmp rcx, 0x1000
jb 0x140059b12
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140059e76
mov rcx, rax
call fcn.1400a5700
test rax, rax
je 0x140059b0b
lea rdi, [rax + 0x27]
and rdi, 0xffffffffffffffe0
mov qword [rdi - 8], rax
jmp 0x140059b1f
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
test rcx, rcx
je 0x140059b1f
call fcn.1400a5700
mov rdi, rax
mov qword [rsp + 0x70], rdi
mov qword [rbp - 0x80], rbx
mov qword [rbp - 0x78], rsi
add rbx, rbx
mov r8, rbx
lea rdx, [rbp - 0x10]
mov rcx, rdi
call sub.VCRUNTIME140.dll_memcpy
xor esi, esi
mov word [rbx + rdi], si
lea rdx, [rsp + 0x70]
cmp qword [rbp - 0x78], 7
cmova rdx, qword [rsp + 0x70]
mov rax, qword [rbp - 0x80]
lea r15, [rdx + rax*2]
lea rdi, [rsp + 0x70]
cmova rdi, qword [rsp + 0x70]
xorps xmm0, xmm0
movups xmmword [rsp + 0x50], xmm0
cmp rdi, r15
jne 0x140059b90
mov rax, rsi
mov qword [rsp + 0x60], rax
mov ecx, 0xf
mov qword [rsp + 0x68], rcx
mov byte [rsp + 0x50], 0
jmp 0x140059c93
mov rax, r15
sub rax, rdi
sar rax, 1
mov qword [rsp + 0x60], rsi
mov ebx, 0xf
mov qword [rsp + 0x68], rbx
cmp rax, r14
ja 0x140059e82
cmp rax, rbx
jbe 0x140059c40
mov rbx, rax
or rbx, 0xf
cmp rbx, r14
jbe 0x140059bf5
mov rbx, r14
movabs rax, 0x8000000000000000
add rax, 0x27
mov rcx, rax
call fcn.1400a5700
mov rcx, rax
test rax, rax
je 0x140059c1d
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x140059c32
mov eax, 0x16
cmp rbx, rax
cmovb rbx, rax
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x140059c24
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140059e70
jmp 0x140059bd7
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
test rcx, rcx
je 0x140059c30
call fcn.1400a5700
jmp 0x140059c32
xor eax, eax
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x68], rbx
nop dword [rax]
lea rcx, [rsp + 0x50]
cmp rbx, 0xf
cmova rcx, qword [rsp + 0x50]
movzx eax, byte [rdi]
mov byte [rsi + rcx], al
mov rsi, qword [rsp + 0x60]
inc rsi
mov qword [rsp + 0x60], rsi
add rdi, 2
cmp rdi, r15
je 0x140059c72
mov rbx, qword [rsp + 0x68]
jmp 0x140059c40
lea rax, [rsp + 0x50]
cmp qword [rsp + 0x68], 0xf
cmova rax, qword [rsp + 0x50]
mov byte [rax + rsi], 0
mov rcx, qword [rsp + 0x68]
mov rax, qword [rsp + 0x60]
xor esi, esi
sub r14, rax
cmp r14, 0x10
jb 0x140059e6a
lea r9, [rsp + 0x50]
cmp rcx, 0xf
cmova r9, qword [rsp + 0x50]
mov qword [rsp + 0x30], 0x10
mov qword [rsp + 0x28], r12
mov qword [rsp + 0x20], rax
lea rcx, [rbp - 0x70]
call fcn.14002ded0
nop
mov r8d, 0xb
lea rdx, str.SharpMacro
lea rcx, [rbp - 0x70]
call fcn.14002e000
xorps xmm0, xmm0
movups xmmword [r13], xmm0
mov qword [r13 + 0x10], rsi
mov qword [r13 + 0x18], rsi
movups xmm0, xmmword [rax]
movups xmmword [r13], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [r13 + 0x10], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov rdx, qword [rbp - 0x58]
cmp rdx, 0xf
jbe 0x140059d50
inc rdx
mov rcx, qword [rbp - 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140059d4b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140059d4b
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400a55d0
movdqa xmm0, xmmword [0x1400ba950]
movdqu xmmword [rbp - 0x60], xmm0
mov byte [rbp - 0x70], 0
mov rdx, qword [rsp + 0x68]
cmp rdx, 0xf
jbe 0x140059da2
inc rdx
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140059d9c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140059d9c
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400a55d0
nop
mov rdx, qword [rbp - 0x78]
cmp rdx, 7
jbe 0x140059de6
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140059de1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140059de1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400a55d0
movdqa xmm0, xmmword [0x1400ba930]
movdqu xmmword [rbp - 0x80], xmm0
mov word [rsp + 0x70], si
mov rdx, qword [rbp - 0x38]
cmp rdx, 0xf
jbe 0x140059e37
inc rdx
mov rcx, qword [rbp - 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140059e31
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140059e31
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400a55d0
nop
mov rax, r13
mov rcx, qword [rbp + 0x200]
xor rcx, rsp
call fcn.1400a55b0
lea r11, [rsp + 0x310]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.140007aa0
nop
call fcn.140007a00
nop
call fcn.140007a00
int3
call fcn.140007aa0
nop
call fcn.140007aa0
int3