Function at 0x140003060
Capabilities:
Get common file path

Disassembly:
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x1b0
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
xor edx, edx
mov r9d, 0x30
mov rcx, rax
mov qword [rsp + 0x20], 0
lea r13, [rsp + 0x70]
mov r8, r13
call fcn.140002d50
test eax, eax
jns 0x140003268
lea r12, [rsp + 0x40]
mov byte [rsp + 0x40], 0
lea rsi, [rsp + 0xa0]
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x38], 0
mov rdx, rsi
mov ecx, 0x104
call qword [sym.imp.KERNEL32.dll_GetTempPathA]
mov rbx, qword [rsp + 0x38]
lea rdi, [rsp + 0x60]
mov r14, qword [rsp + 0x30]
lea rbp, [rsp + 0x50]
mov qword [rsp + 0x50], rdi
mov qword [rsp + 0x70], rbx
cmp rbx, 0xf
ja 0x1400032c8
cmp rbx, 1
jne 0x140003250
movzx eax, byte [r14]
mov byte [rsp + 0x60], al
mov rax, rdi
mov qword [rsp + 0x58], rbx
mov r9d, 2
mov rcx, rbp
mov r8, 0xffffffffffffffff
mov byte [rax + rbx], 0
lea rdx, [0x1401115a2]
call fcn.14003ee70
cmp rax, 0xffffffffffffffff
je 0x1400031e4
mov rcx, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x50]
lea rbx, [rsp + 0x80]
mov qword [rsp + 0x70], rbx
cmp rax, rcx
cmova rax, rcx
mov rcx, r13
lea r8, [rdx + rax]
call fcn.140002d70
mov rax, qword [rsp + 0x50]
mov r9, rax
cmp rax, rdi
je 0x140003308
mov rdx, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x70]
mov r8, rdx
cmp rcx, rbx
je 0x140003350
movq xmm0, rdx
mov qword [rsp + 0x50], rcx
mov rdx, qword [rsp + 0x60]
movhps xmm0, qword [rsp + 0x80]
movups xmmword [rsp + 0x58], xmm0
test rax, rax
je 0x140003322
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x80], rdx
mov qword [rsp + 0x78], 0
mov byte [rax], 0
mov rcx, qword [rsp + 0x70]
cmp rcx, rbx
je 0x1400031e4
mov rax, qword [rsp + 0x80]
lea rdx, [rax + 1]
call fcn.14010ab40
mov rcx, rsi
call sub.msvcrt.dll_strlen
xor r8d, r8d
mov rcx, rbp
mov rdx, rsi
mov r9, rax
call fcn.14003f710
mov rcx, qword [rsp + 0x50]
cmp rax, 0xffffffffffffffff
setne bl
cmp rcx, rdi
je 0x14000321c
mov rax, qword [rsp + 0x60]
lea rdx, [rax + 1]
call fcn.14010ab40
mov rcx, qword [rsp + 0x30]
cmp rcx, r12
je 0x140003234
mov rax, qword [rsp + 0x40]
lea rdx, [rax + 1]
call fcn.14010ab40
mov eax, ebx
add rsp, 0x1b0
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
ret
test rbx, rbx
jne 0x140003461
mov rax, rdi
jmp 0x14000310b
mov rax, qword [rsp + 0x78]
lea rsi, [rsp + 0xa0]
lea r12, [rsp + 0x40]
mov rcx, rsi
mov rax, qword [rax + 0x20]
movzx ebx, word [rax + 0x60]
mov rdx, qword [rax + 0x68]
shr rbx, 1
mov r8, rbx
call sub.msvcrt.dll_wcstombs
mov byte [rsp + rbx + 0xa0], 0
mov rcx, rsi
lea rbx, [rsp + 0x30]
mov qword [rsp + 0x30], r12
call sub.msvcrt.dll_strlen
mov rdx, rsi
mov rcx, rbx
lea r8, [rsi + rax]
call fcn.140002d70
jmp 0x1400030c0
xor r8d, r8d
mov rdx, r13
mov rcx, rbp
call fcn.1400ee610
mov qword [rsp + 0x50], rax
mov rcx, rax
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x60], rax
mov r8, rbx
mov rdx, r14
call sub.msvcrt.dll_memcpy
mov rbx, qword [rsp + 0x70]
mov rax, qword [rsp + 0x50]
jmp 0x14000310b
mov rdx, qword [rsp + 0x70]
cmp rdx, rbx
je 0x140003340
movdqu xmm0, xmmword [rsp + 0x78]
mov qword [rsp + 0x50], rdx
movups xmmword [rsp + 0x58], xmm0
mov qword [rsp + 0x70], rbx
lea rbx, [rsp + 0x80]
mov rax, rbx
jmp 0x1400031bd
mov rdx, qword [rsp + 0x78]
mov r8, rdx
nop dword [rax + rax]
test rdx, rdx
je 0x140003393
cmp rdx, 1
je 0x1400033b0
mov eax, edx
cmp edx, 8
jae 0x1400033d0
test dl, 4
jne 0x140003425
test edx, edx
je 0x14000338d
movzx ecx, byte [rsp + 0x80]
and edx, 2
mov byte [r9], cl
jne 0x140003447
mov r9, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x78]
mov r8, rdx
mov rax, r9
mov qword [rsp + 0x58], r8
mov byte [rax + r8], 0
mov rax, qword [rsp + 0x70]
jmp 0x1400031bd
movzx eax, byte [rsp + 0x80]
mov byte [r9], al
mov r8, qword [rsp + 0x78]
mov rax, qword [rsp + 0x50]
jmp 0x140003393
mov rax, qword [rsp + 0x80]
mov qword [r9], rax
mov eax, edx
mov rcx, qword [rbx + rax - 8]
mov qword [r9 + rax - 8], rcx
lea rcx, [r9 + 8]
mov rax, r9
mov r9, rbx
and rcx, 0xfffffffffffffff8
sub rax, rcx
sub r9, rax
add eax, edx
and eax, 0xfffffff8
cmp eax, 8
jb 0x140003383
and eax, 0xfffffff8
xor edx, edx
mov r8d, edx
add edx, 8
mov r10, qword [r9 + r8]
mov qword [rcx + r8], r10
cmp edx, eax
jb 0x14000340e
jmp 0x140003383
mov edx, dword [rsp + 0x80]
mov dword [r9], edx
mov edx, dword [rbx + rax - 4]
mov dword [r9 + rax - 4], edx
mov r9, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x78]
jmp 0x14000338d
movzx edx, word [rbx + rax - 2]
mov word [r9 + rax - 2], dx
mov r9, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x78]
jmp 0x14000338d
mov rcx, rdi
jmp 0x1400032e8