Function at 0x1400371f0
Capabilities:
Contain obfuscated stackstrings
Get common file path

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r14
push r15
lea rbp, [rsp - 0x5e0]
sub rsp, 0x6e0
mov qword [rsp + 0x30], 0xfffffffffffffffe
mov rax, qword [0x1402c4148]
xor rax, rsp
mov qword [rbp + 0x5d0], rax
mov rdi, r8
mov rbx, rdx
mov r14, rcx
mov qword [rsp + 0x40], rcx
lea r15, [rcx + 0x88]
xor r12d, r12d
mov qword [r15 + 0x10], r12
mov qword [r15 + 0x18], 7
mov word [r15], r12w
mov byte [rcx + 0xa8], 1
mov qword [rcx], r12
mov qword [rcx + 8], r12
mov qword [rcx + 0x10], r12
mov qword [rcx + 0x18], r12
mov dword [rcx + 0x20], r12d
add rcx, 0x24
xor edx, edx
lea r8d, [r12 + 0x60]
call fcn.14018da90
mov rdx, rbx
lea rcx, [rsp + 0x50]
call fcn.140006840
nop
lea rsi, [r12 - 1]
cmp qword [rsp + 0x60], r12
jne 0x1400373cd
mov qword [rsp + 0x70], r12
lea rax, [0x1402c8f98]
mov qword [rsp + 0x70], rax
mov rcx, qword [0x1402c8f98]
test rcx, rcx
je 0x1400372b8
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
nop
mov r8, qword [0x1402c4ca8]
test r8, r8
je 0x1400372e0
lea rdx, [0x1402c4c98]
cmp qword [0x1402c4cb0], 8
cmovae rdx, qword [0x1402c4c98]
jmp 0x14003739f
xor edx, edx
mov r8d, 0x20c
lea rcx, [rbp - 0x60]
call fcn.14018da90
lea rdx, [rbp - 0x60]
mov ecx, 0x105
call qword [sym.imp.KERNEL32.dll_GetTempPathW]
dec eax
cmp eax, 0x103
ja 0x1400373aa
mov word [rbp + 0x1aa], r12w
xor edx, edx
mov r8d, 0x412
lea rcx, [rbp + 0x1b0]
call fcn.14018da90
mov r8d, 0x208
lea rdx, [rbp + 0x1b0]
lea rcx, [rbp - 0x60]
call qword [sym.imp.KERNEL32.dll_GetLongPathNameW]
lea ecx, [rax - 1]
cmp ecx, 0x207
ja 0x140037384
mov eax, eax
add rax, rax
cmp rax, 0x412
jae 0x1400375c9
mov word [rbp + rax + 0x1b0], r12w
lea rax, [rbp + 0x1b0]
mov r8, rsi
nop
inc r8
cmp word [rax + r8*2], 0
jne 0x140037370
lea rdx, [rbp + 0x1b0]
jmp 0x14003739f
lea rax, [rbp - 0x60]
mov r8, rsi
nop dword [rax + rax]
inc r8
cmp word [rax + r8*2], 0
jne 0x140037390
lea rdx, [rbp - 0x60]
lea rcx, [rsp + 0x50]
call fcn.140006b60
nop
mov rcx, qword [0x1402c8f98]
test rcx, rcx
je 0x1400373bc
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov qword [rsp + 0x70], r12
cmp qword [rsp + 0x60], 0
je 0x140037544
cmp qword [rdi + 0x10], 0
je 0x140037544
mov r8, rdi
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x78]
call fcn.1400b4190
mov rbx, rax
lea rax, [rsp + 0x50]
cmp rax, rbx
je 0x140037422
lea rcx, [rsp + 0x50]
call fcn.140006a90
movups xmm0, xmmword [rbx]
movups xmmword [rsp + 0x50], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rsp + 0x60], xmm1
mov qword [rbx + 0x10], r12
mov qword [rbx + 0x18], 7
mov word [rbx], r12w
mov rdx, qword [rbp - 0x70]
cmp rdx, 8
jb 0x140037463
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003745e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400375cf
call fcn.140187064
movdqa xmm0, xmmword [0x14024e310]
movdqu xmmword [rbp - 0x78], xmm0
mov word [rsp + 0x78], r12w
mov dword [rsp + 0x78], 0x43002e
mov dword [rsp + 0x7c], 0x650068
mov dword [rbp - 0x80], 0x6b0063
mov dword [rbp - 0x7c], 0x740053
mov dword [rbp - 0x78], 0x740061
mov dword [rbp - 0x74], 0x64002e
mov dword [rbp - 0x70], 0x740061
mov dword [rbp - 0x6c], 0x61
lea rax, [rsp + 0x78]
inc rsi
cmp word [rax + rsi*2], 0
jne 0x1400374b5
mov rcx, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x68]
mov rax, rdx
sub rax, rcx
cmp rsi, rax
ja 0x140037505
lea rdi, [rcx + rsi]
mov qword [rsp + 0x60], rdi
lea rbx, [rsp + 0x50]
cmp rdx, 8
cmovae rbx, qword [rsp + 0x50]
lea r8, [rsi + rsi]
lea rcx, [rbx + rcx*2]
lea rdx, [rsp + 0x78]
call fcn.14018d350
mov word [rbx + rdi*2], r12w
jmp 0x14003751c
mov qword [rsp + 0x20], rsi
lea r9, [rsp + 0x78]
mov rdx, rsi
lea rcx, [rsp + 0x50]
call fcn.140007480
lea rax, [rsp + 0x50]
cmp r15, rax
je 0x140037544
lea rdx, [rsp + 0x50]
cmp qword [rsp + 0x68], 8
cmovae rdx, qword [rsp + 0x50]
mov r8, qword [rsp + 0x60]
mov rcx, r15
call fcn.140006b60
mov rcx, r14
call fcn.1400377c0
nop
mov rdx, qword [rsp + 0x68]
cmp rdx, 8
jb 0x14003758b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140037586
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400375c3
call fcn.140187064
mov qword [rsp + 0x60], r12
mov qword [rsp + 0x68], 7
mov word [rsp + 0x50], r12w
mov rax, r14
mov rcx, qword [rbp + 0x5d0]
xor rcx, rsp
call fcn.140187610
add rsp, 0x6e0
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.140199e4c
nop
call fcn.14018774c
nop
call fcn.140199e4c
int3