Function at 0x140044550
Capabilities:
Get common file path

Disassembly:
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x7a8]
sub rsp, 0x8a8
xor edx, edx
mov r8d, 0x800
lea rcx, [rbp - 0x60]
call fcn.140014220
lea rdx, [rbp - 0x60]
mov ecx, 0x400
call qword [sym.imp.KERNEL32.dll_GetTempPathW]
xor r13d, r13d
mov qword [rsp + 0x78], r13
mov qword [rbp - 0x78], r13
mov r15d, 7
mov qword [rbp - 0x70], r15
mov word [rsp + 0x78], r13w
lea rax, [rbp - 0x60]
mov r12, 0xffffffffffffffff
nop word [rax + rax]
inc r12
cmp word [rax + r12*2], r13w
jne 0x1400445c0
mov qword [rbp + 0x7f8], r12
mov rdi, 0xfffffffffffffffe
lea ecx, [rdi + 0xc]
movabs rax, 0x7fffffffffffffff
movabs r9, 0x7ffffffffffffffe
cmp r12, r15
ja 0x14004463a
mov qword [rbp - 0x78], r12
lea rbx, [r12 + r12]
mov r8, rbx
lea rdx, [rbp - 0x60]
lea rcx, [rsp + 0x78]
call fcn.140013b70
mov word [rsp + rbx + 0x78], r13w
mov rax, qword [rbp - 0x70]
mov qword [rbp + 0x808], rax
mov r12, qword [rbp - 0x78]
mov qword [rbp + 0x7f8], r12
mov rax, qword [rsp + 0x78]
mov qword [rbp + 0x800], rax
jmp 0x14004470a
cmp r12, r9
ja 0x140044dbb
mov r15, r12
or r15, 7
cmp r15, r9
jbe 0x14004465e
mov r15, r9
mov qword [rbp + 0x808], r9
mov rcx, rdi
jmp 0x140044685
cmp r15, rcx
cmovb r15, rcx
mov qword [rbp + 0x808], r15
lea rcx, [r15 + 1]
cmp rcx, rax
ja 0x140044db5
add rcx, rcx
cmp rcx, 0x1000
jb 0x1400446b8
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140044db5
mov rcx, rax
call fcn.140011b08
test rax, rax
je 0x140044de5
lea rdi, [rax + 0x27]
and rdi, 0xffffffffffffffe0
mov qword [rbp + 0x800], rdi
mov qword [rdi - 8], rax
jmp 0x1400446d8
test rcx, rcx
je 0x1400446ce
call fcn.140011b08
mov rdi, rax
mov qword [rbp + 0x800], rax
jmp 0x1400446d8
mov rdi, r13
mov qword [rbp + 0x800], r13
mov qword [rbp - 0x78], r12
mov qword [rbp - 0x70], r15
lea rbx, [r12 + r12]
mov r8, rbx
lea rdx, [rbp - 0x60]
mov rcx, rdi
call fcn.140013b70
mov word [rbx + rdi], r13w
mov qword [rsp + 0x78], rdi
mov rdi, 0xfffffffffffffffe
mov r15d, 7
mov qword [rsp + 0x30], r13
mov r14, r15
mov qword [rsp + 0x48], r15
mov word [rsp + 0x30], r13w
mov rsi, qword [rsp + 0x30]
lea rax, [rsp + 0x30]
cmp r14, 8
cmovae rax, rsi
mov qword [rsp + 0x40], r13
mov word [rax], r13w
mov r14, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x40]
cmp r14, 0xa
jae 0x14004489e
cmp rbx, 0xb
ja 0x14004489e
cmp r14, 0xa
ja 0x14004489e
mov ecx, VariantTimeToDosDateTime
sub rcx, rbx
movabs rdx, 0x7ffffffffffffffe
mov rax, rdx
sub rax, rbx
cmp rax, rcx
jb 0x140044dcd
mov r15, r14
mov rcx, r14
shr rcx, 1
mov rax, rdx
sub rax, rcx
cmp r14, rax
jbe 0x14004479d
mov r14, rdx
mov rcx, rdi
jmp 0x1400447d1
lea rax, [rcx + r14]
mov r14d, send
cmp rax, r14
cmova r14, rax
lea rcx, [r14 + 1]
movabs rax, 0x7fffffffffffffff
cmp rcx, rax
ja 0x140044dd3
add rcx, rcx
cmp rcx, 0x1000
jb 0x1400447fd
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140044dd3
mov rcx, rax
call fcn.140011b08
test rax, rax
je 0x140044dd9
lea rsi, [rax + 0x27]
and rsi, 0xffffffffffffffe0
mov qword [rsi - 8], rax
jmp 0x14004480f
test rcx, rcx
je 0x14004480c
call fcn.140011b08
mov rsi, rax
jmp 0x14004480f
mov rsi, r13
mov qword [rsp + 0x40], send
mov qword [rsp + 0x48], r14
lea r8, [rbx*2 + 2]
mov rcx, rsi
cmp r15, 8
jb 0x140044882
mov rdi, qword [rsp + 0x30]
mov rdx, rdi
call fcn.140013b70
lea rdx, [r15*2 + 2]
mov rax, rdi
cmp rdx, 0x1000
jb 0x140044868
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140044dd9
mov rcx, rdi
call fcn.140011b00
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x40], rbx
mov r15d, 7
jmp 0x1400448a3
lea rdx, [rsp + 0x30]
call fcn.140013b70
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x40], rbx
mov r15d, 7
jmp 0x1400448a3
mov rsi, qword [rsp + 0x30]
cmp rbx, 0xa
jae 0x14004497b
mov r12d, 0x57
call fcn.140018230
mov r8d, eax
mov eax, 0x38e38e39
imul r8d
sar edx, 3
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
lea ecx, [rdx + rdx*8]
shl ecx, 2
sub r8d, ecx
mov eax, gethostbyname
cmp r8d, 9
cmova eax, r12d
add al, r8b
movsx ecx, al
test rbx, rbx
jne 0x1400448fc
cmp cx, 0x30
jb 0x140044916
cmp cx, 0x39
jbe 0x1400448b3
jmp 0x140044916
cmp rbx, 1
jbe 0x140044916
lea rax, [rsp + 0x30]
cmp r14, 8
cmovae rax, rsi
cmp word [rax + rbx*2 - 4], cx
je 0x14004496a
mov rax, r14
sub rax, rbx
cmp rax, 1
jb 0x140044944
lea rax, [rbx + 1]
mov qword [rsp + 0x40], rax
lea rax, [rsp + 0x30]
cmp r14, 8
cmovae rax, rsi
mov word [rax + rbx*2], cx
mov word [rax + rbx*2 + 2], r13w
jmp 0x14004495b
mov word [rsp + 0x20], cx
mov edx, 1
mov r9d, edx
lea rcx, [rsp + 0x30]
call fcn.140007ee0
mov rsi, qword [rsp + 0x30]
mov rbx, qword [rsp + 0x40]
mov r14, qword [rsp + 0x48]
cmp rbx, 0xa
jb 0x1400448b3
mov r12, qword [rbp + 0x7f8]
movabs rcx, 0x7ffffffffffffffe
mov rax, rcx
sub rax, r12
cmp rax, rbx
jb 0x140044daf
lea r13, [rsp + 0x78]
cmp qword [rbp + 0x808], 8
cmovae r13, qword [rbp + 0x800]
lea rax, [rsp + 0x30]
cmp r14, 8
cmovae rax, rsi
mov qword [rsp + 0x50], rax
xor eax, eax
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x70], rax
add r12, rbx
mov rdi, r15
lea r15, [rsp + 0x58]
cmp r12, 7
jbe 0x140044a64
mov rdi, r12
or rdi, 7
cmp rdi, rcx
jbe 0x1400449f6
mov rdi, rcx
lea rcx, [rax - 2]
jmp 0x140044a26
cmp rdi, 0xa
mov ecx, 0xa
cmovb rdi, rcx
lea rcx, [rdi + 1]
movabs rdx, 0x7fffffffffffffff
cmp rcx, rdx
ja 0x140044dc1
add rcx, rcx
cmp rcx, 0x1000
jb 0x140044a52
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140044dc1
mov rcx, rax
call fcn.140011b08
test rax, rax
je 0x140044dc7
lea r15, [rax + 0x27]
and r15, 0xffffffffffffffe0
mov qword [r15 - 8], rax
jmp 0x140044a5f
test rcx, rcx
je 0x140044a5c
call fcn.140011b08
mov r15, rax
mov qword [rsp + 0x58], r15
mov qword [rsp + 0x68], r12
mov qword [rsp + 0x70], rdi
mov rdi, qword [rbp + 0x7f8]
add rdi, rdi
mov r8, rdi
mov rdx, r13
mov rcx, r15
call fcn.140013b70
lea rcx, [rdi + r15]
lea r8, [rbx + rbx]
mov rdx, qword [rsp + 0x50]
call fcn.140013b70
xor r13d, r13d
mov word [r15 + r12*2], r13w
lea rcx, [rsp + 0x58]
cmp qword [rsp + 0x70], 8
cmovae rcx, qword [rsp + 0x58]
xor edx, edx
call fcn.14001d404
test eax, eax
sete dil
mov rdx, qword [rsp + 0x70]
cmp rdx, 8
jb 0x140044b00
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140044afb
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140044dc7
call fcn.140011b00
test dil, dil
je 0x140044b1c
mov r12, qword [rbp + 0x7f8]
mov rdi, 0xfffffffffffffffe
lea r15d, [rdi + 9]
jmp 0x140044722
movabs r9, 0x7ffffffffffffffe
mov rax, r9
mov rcx, qword [rbp + 0x7f8]
sub rax, rcx
cmp rax, rbx
jb 0x140044dcd
lea r13, [rsp + 0x78]
cmp qword [rbp + 0x808], 8
cmovae r13, qword [rbp + 0x800]
lea rax, [rsp + 0x30]
cmp r14, 8
cmovae rax, rsi
mov qword [rbp - 0x68], rax
xor r8d, r8d
mov qword [rsp + 0x58], r8
lea r12, [rbx + rcx]
lea r15, [rsp + 0x58]
cmp r12, 7
jbe 0x140044c32
mov rdx, r12
or rdx, 7
cmp rdx, r9
jbe 0x140044b92
mov rdi, r9
lea rax, [r8 - 2]
jmp 0x140044bcb
cmp rdx, 0xa
mov eax, 0xa
cmovb rdx, rax
mov qword [rsp + 0x50], rdx
lea rax, [rdx + 1]
movabs rdx, 0x7fffffffffffffff
cmp rax, rdx
ja 0x140044dd3
add rax, rax
cmp rax, 0x1000
jb 0x140044c00
mov rdi, qword [rsp + 0x50]
lea rcx, [rax + 0x27]
cmp rcx, rax
jbe 0x140044dd3
call fcn.140011b08
test rax, rax
je 0x140044dd9
lea r15, [rax + 0x27]
and r15, 0xffffffffffffffe0
mov qword [r15 - 8], rax
mov rcx, qword [rbp + 0x7f8]
mov qword [rsp + 0x58], r15
jmp 0x140044c37
test rax, rax
je 0x140044c23
mov rcx, rax
call fcn.140011b08
mov r15, rax
mov rcx, qword [rbp + 0x7f8]
mov rdi, qword [rsp + 0x50]
mov qword [rsp + 0x58], rax
jmp 0x140044c37
mov r15, r8
mov rdi, qword [rsp + 0x50]
mov qword [rsp + 0x58], r8
jmp 0x140044c37
mov edi, 7
mov qword [rsp + 0x68], r12
mov qword [rsp + 0x70], rdi
lea rdi, [rcx + rcx]
mov r8, rdi
mov rdx, r13
mov rcx, r15
call fcn.140013b70
lea rcx, [rdi + r15]
lea r8, [rbx + rbx]
mov rdx, qword [rbp - 0x68]
call fcn.140013b70
xor eax, eax
mov word [r15 + r12*2], ax
lea rax, [rsp + 0x58]
mov rbx, qword [rbp + 0x7f0]
cmp rbx, rax
je 0x140044cce
mov rdx, qword [rbx + 0x18]
cmp rdx, 8
jb 0x140044cbb
mov rcx, qword [rbx]
lea rdx, [rdx*2 + 2]
cmp rdx, 0x1000
jb 0x140044cb6
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140044dd9
mov rcx, r8
call fcn.140011b00
movups xmm0, xmmword [rsp + 0x58]
movups xmmword [rbx], xmm0
movups xmm1, xmmword [rsp + 0x68]
movups xmmword [rbx + 0x10], xmm1
jmp 0x140044d10
mov rdx, qword [rsp + 0x70]
cmp rdx, 8
jb 0x140044d10
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140044d0b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140044dd9
call fcn.140011b00
cmp qword [rbx + 0x18], 8
jb 0x140044d1a
mov rbx, qword [rbx]
cmp r14, 8
jb 0x140044d56
lea rdx, [r14*2 + 2]
mov rax, rsi
cmp rdx, 0x1000
jb 0x140044d4d
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140044ddf
mov rcx, rsi
call fcn.140011b00
nop
mov rax, qword [rbp + 0x808]
cmp rax, 8
jb 0x140044d98
lea rdx, [rax*2 + 2]
mov rcx, qword [rbp + 0x800]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140044d93
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140044de5
call fcn.140011b00
mov rax, rbx
add rsp, 0x8a8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.14000235c
nop
call fcn.140001814
int3
call fcn.14000235c
nop
call fcn.140001814
int3
call fcn.140018100
int3
call fcn.14000235c
int3
call fcn.140001814
int3
call fcn.140018100
nop
call fcn.140018100
nop
call fcn.140018100
int3