Function at 0x1400064d0
Capabilities:
Get common file path

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
lea rbp, [rsp - 0x4d0]
sub rsp, 0x5d0
mov rax, qword [0x14009f100]
xor rax, rsp
mov qword [rbp + 0x4c0], rax
xor esi, esi
mov rdx, qword [rdx]
xorps xmm0, xmm0
movups xmmword [rsp + 0x38], xmm0
mov qword [rsp + 0x48], rsi
mov qword [rsp + 0x50], rsi
mov rbx, 0xffffffffffffffff
mov r8, rbx
inc r8
cmp word [rdx + r8*2], si
jne 0x140006521
lea rcx, [rsp + 0x38]
call fcn.140001fa0
lea rdx, [rsp + 0x38]
lea rcx, [rsp + 0x58]
call fcn.1400242c0
mov rdi, rax
lea rax, [0x14009fdf8]
cmp rax, rdi
je 0x1400065d8
mov rdx, qword [0x14009fe10]
cmp rdx, 7
jbe 0x14000659d
mov rcx, qword [0x14009fdf8]
lea rdx, [rdx*2 + 2]
cmp rdx, 0x1000
jb 0x140006598
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140006e06
mov rcx, r8
call fcn.140036bb4
movdqa xmm0, xmmword [0x140093280]
movdqu xmmword [0x14009fe08], xmm0
mov word [0x14009fdf8], si
movups xmm0, xmmword [rdi]
movups xmmword [0x14009fdf8], xmm0
movups xmm1, xmmword [rdi + 0x10]
movups xmmword [0x14009fe08], xmm1
mov qword [rdi + 0x10], rsi
mov qword [rdi + 0x18], 7
mov word [rdi], si
mov rdx, qword [rsp + 0x70]
cmp rdx, 7
jbe 0x14000661a
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140006615
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140006e06
call fcn.140036bb4
lea rdx, [rbp + 0x2b0]
mov ecx, 0x104
call qword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
dec eax
xorps xmm0, xmm0
cmp eax, 0x103
ja 0x1400066fb
movups xmmword [rsp + 0x78], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x78], xmm1
lea rax, [rbp + 0x2b0]
mov r8, rbx
inc r8
cmp word [rax + r8*2], si
jne 0x140006653
lea rdx, [rbp + 0x2b0]
lea rcx, [rsp + 0x78]
call fcn.140001fa0
nop
mov r8d, 0xb
lea rdx, str.output.bmp
lea rcx, [rsp + 0x78]
call fcn.14001c1e0
xorps xmm0, xmm0
movups xmmword [rsp + 0x38], xmm0
mov qword [rsp + 0x48], rsi
mov qword [rsp + 0x50], rsi
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x38], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x48], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], 7
mov word [rax], si
mov rdx, qword [rbp - 0x70]
cmp rdx, 7
jbe 0x140006713
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400066f4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140006e0c
call fcn.140036bb4
jmp 0x140006713
movups xmmword [rsp + 0x38], xmm0
mov qword [rsp + 0x48], rsi
mov qword [rsp + 0x50], 7
mov word [rsp + 0x38], si
lea rdx, [rsp + 0x38]
lea rcx, [rbp + 0x18]
call fcn.1400242c0
mov rdi, rax
lea rax, [0x14009fdb8]
cmp rax, rdi
je 0x1400067b5
mov rdx, qword [0x14009fdd0]
cmp rdx, 7
jbe 0x14000677a
mov rcx, qword [0x14009fdb8]
lea rdx, [rdx*2 + 2]
cmp rdx, 0x1000
jb 0x140006775
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140006e12
mov rcx, r8
call fcn.140036bb4
movdqa xmm0, xmmword [0x140093280]
movdqu xmmword [0x14009fdc8], xmm0
mov word [0x14009fdb8], si
movups xmm0, xmmword [rdi]
movups xmmword [0x14009fdb8], xmm0
movups xmm1, xmmword [rdi + 0x10]
movups xmmword [0x14009fdc8], xmm1
mov qword [rdi + 0x10], rsi
mov qword [rdi + 0x18], 7
mov word [rdi], si
mov rdx, qword [rbp + 0x30]
cmp rdx, 7
jbe 0x1400067f5
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x18]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400067f0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140006e12
call fcn.140036bb4
lea rax, [rbp + 0xa0]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
mov edx, 0x1a
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_SHGetFolderPathW]
test eax, eax
js 0x1400068f3
xorps xmm0, xmm0
movups xmmword [rbp - 0x68], xmm0
mov qword [rbp - 0x58], rsi
mov qword [rbp - 0x50], rsi
lea rax, [rbp + 0xa0]
mov r8, rbx
inc r8
cmp word [rax + r8*2], 0
jne 0x140006835
lea rdx, [rbp + 0xa0]
lea rcx, [rbp - 0x68]
call fcn.140001fa0
lea rdx, [rbp - 0x68]
lea rcx, [rbp + 0x38]
call fcn.1400242c0
nop
mov rdx, qword [0x1400a6800]
cmp rdx, qword [0x1400a6808]
je 0x1400068a3
xorps xmm0, xmm0
movups xmmword [rdx], xmm0
mov qword [rdx + 0x10], rsi
mov qword [rdx + 0x18], rsi
movups xmm0, xmmword [rax]
movups xmmword [rdx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rdx + 0x10], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], 7
mov word [rax], si
add qword [0x1400a6800], 0x20
jmp 0x1400068b3
mov r8, rax
lea rcx, [0x1400a67f8]
call fcn.14000eb50
nop
mov rdx, qword [rbp + 0x50]
cmp rdx, 7
jbe 0x1400068f3
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400068ee
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140006e18
call fcn.140036bb4
lea rax, [rbp + 0xa0]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
mov edx, 0x1c
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_SHGetFolderPathW]
test eax, eax
js 0x1400069f1
xorps xmm0, xmm0
movups xmmword [rbp - 0x48], xmm0
mov qword [rbp - 0x38], rsi
mov qword [rbp - 0x30], rsi
lea rax, [rbp + 0xa0]
mov r8, rbx
inc r8
cmp word [rax + r8*2], 0
jne 0x140006933
lea rdx, [rbp + 0xa0]
lea rcx, [rbp - 0x48]
call fcn.140001fa0
lea rdx, [rbp - 0x48]
lea rcx, [rbp + 0x58]
call fcn.1400242c0
nop
mov rdx, qword [0x1400a6800]
cmp rdx, qword [0x1400a6808]
je 0x1400069a1
xorps xmm0, xmm0
movups xmmword [rdx], xmm0
mov qword [rdx + 0x10], rsi
mov qword [rdx + 0x18], rsi
movups xmm0, xmmword [rax]
movups xmmword [rdx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rdx + 0x10], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], 7
mov word [rax], si
add qword [0x1400a6800], 0x20
jmp 0x1400069b1
mov r8, rax
lea rcx, [0x1400a67f8]
call fcn.14000eb50
nop
mov rdx, qword [rbp + 0x70]
cmp rdx, 7
jbe 0x1400069f1
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400069ec
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140006e1e
call fcn.140036bb4
lea rax, [rbp + 0xa0]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
mov edx, 0x2e
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_SHGetFolderPathW]
test eax, eax
js 0x140006af2
xorps xmm0, xmm0
movups xmmword [rbp - 0x28], xmm0
mov qword [rbp - 0x18], rsi
mov qword [rbp - 0x10], rsi
lea rax, [rbp + 0xa0]
mov r8, rbx
inc r8
cmp word [rax + r8*2], 0
jne 0x140006a31
lea rdx, [rbp + 0xa0]
lea rcx, [rbp - 0x28]
call fcn.140001fa0
lea rdx, [rbp - 0x28]
lea rcx, [rbp + 0x78]
call fcn.1400242c0
nop
mov rdx, qword [0x1400a6800]
cmp rdx, qword [0x1400a6808]
je 0x140006a9f
xorps xmm0, xmm0
movups xmmword [rdx], xmm0
mov qword [rdx + 0x10], rsi
mov qword [rdx + 0x18], rsi
movups xmm0, xmmword [rax]
movups xmmword [rdx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rdx + 0x10], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], 7
mov word [rax], si
add qword [0x1400a6800], 0x20
jmp 0x140006aaf
mov r8, rax
lea rcx, [0x1400a67f8]
call fcn.14000eb50
nop
mov rdx, qword [rbp + 0x90]
cmp rdx, 7
jbe 0x140006af2
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140006aed
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140006e24
call fcn.140036bb4
lea rax, [rbp + 0xa0]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
mov edx, 0x23
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_SHGetFolderPathW]
test eax, eax
js 0x140006bf5
xorps xmm0, xmm0
movups xmmword [rsp + 0x58], xmm0
mov qword [rsp + 0x68], rsi
mov qword [rsp + 0x70], rsi
lea rax, [rbp + 0xa0]
mov r8, rbx
inc r8
cmp word [rax + r8*2], 0
jne 0x140006b35
lea rdx, [rbp + 0xa0]
lea rcx, [rsp + 0x58]
call fcn.140001fa0
lea rdx, [rsp + 0x58]
lea rcx, [rbp - 8]
call fcn.1400242c0
nop
mov rdx, qword [0x1400a6800]
cmp rdx, qword [0x1400a6808]
je 0x140006ba5
xorps xmm0, xmm0
movups xmmword [rdx], xmm0
mov qword [rdx + 0x10], rsi
mov qword [rdx + 0x18], rsi
movups xmm0, xmmword [rax]
movups xmmword [rdx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rdx + 0x10], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], 7
mov word [rax], si
add qword [0x1400a6800], 0x20
jmp 0x140006bb5
mov r8, rax
lea rcx, [0x1400a67f8]
call fcn.14000eb50
nop
mov rdx, qword [rbp + 0x10]
cmp rdx, 7
jbe 0x140006bf5
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140006bf0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140006e2a
call fcn.140036bb4
lea rax, [rbp + 0xa0]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
mov edx, 0x24
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_SHGetFolderPathW]
test eax, eax
js 0x140006d35
xorps xmm0, xmm0
movups xmmword [rsp + 0x58], xmm0
mov qword [rsp + 0x68], rsi
mov qword [rsp + 0x70], rsi
lea rax, [rbp + 0xa0]
inc rbx
cmp word [rax + rbx*2], 0
jne 0x140006c35
mov r8, rbx
lea rdx, [rbp + 0xa0]
lea rcx, [rsp + 0x58]
call fcn.140001fa0
lea rdx, [rsp + 0x58]
lea rcx, [rbp - 8]
call fcn.1400242c0
mov rbx, rax
lea rax, [0x14009fdd8]
cmp rax, rbx
je 0x140006cf5
mov rdx, qword [0x14009fdf0]
cmp rdx, 7
jbe 0x140006cba
mov rcx, qword [0x14009fdd8]
lea rdx, [rdx*2 + 2]
cmp rdx, 0x1000
jb 0x140006cb5
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140006e30
mov rcx, r8
call fcn.140036bb4
movdqa xmm0, xmmword [0x140093280]
movdqu xmmword [0x14009fde8], xmm0
mov word [0x14009fdd8], si
movups xmm0, xmmword [rbx]
movups xmmword [0x14009fdd8], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [0x14009fde8], xmm1
mov qword [rbx + 0x10], rsi
mov qword [rbx + 0x18], 7
mov word [rbx], si
mov rdx, qword [rbp + 0x10]
cmp rdx, 7
jbe 0x140006d35
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140006d30
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140006e30
call fcn.140036bb4
call fcn.140003e50
call fcn.1400060b0
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x38], xmm0
mov qword [rsp + 0x48], rsi
lea r8, [0x14009fd68]
lea rdx, [rsp + 0x38]
lea rcx, [rsp + 0x58]
call fcn.140033590
nop
mov rcx, rax
call fcn.140005ab0
nop
mov rcx, qword [rsp + 0x60]
test rcx, rcx
je 0x140006d7d
call qword [sym.imp.ADVAPI32.dll_CryptDestroyKey]
mov rcx, qword [rsp + 0x68]
test rcx, rcx
je 0x140006d8d
call qword [sym.imp.ADVAPI32.dll_CryptDestroyKey]
mov rcx, qword [rsp + 0x58]
test rcx, rcx
je 0x140006da0
xor edx, edx
call qword [sym.imp.ADVAPI32.dll_CryptReleaseContext]
nop
mov rcx, qword [rsp + 0x38]
test rcx, rcx
je 0x140006dd8
mov rdx, qword [rsp + 0x48]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x140006dd3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140006e00
call fcn.140036bb4
mov rcx, qword [rbp + 0x4c0]
xor rcx, rsp
call fcn.140036840
lea r11, [rsp + 0x5d0]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x20]
mov rdi, qword [r11 + 0x28]
mov rsp, r11
pop rbp
ret
call fcn.140046420
int3
call fcn.140046420
int3
call fcn.140046420
int3
call fcn.140046420
int3
call fcn.140046420
int3
call fcn.140046420
int3
call fcn.140046420
int3
call fcn.140046420
int3
call fcn.140046420
int3