Function at 0x180012718
Capabilities:
Create directory
Get common file path

Disassembly:
mov rax, rsp
push rbp
push rsi
push rdi
push r12
push r13
sub rsp, 0x6a0
mov qword [rsp + 0x30], 0xfffffffffffffffe
mov qword [rax + 0x20], rbx
mov rax, qword [0x180059640]
xor rax, rsp
mov qword [rsp + 0x690], rax
mov rdi, r8
mov rbx, rdx
mov rsi, rcx
mov qword [rsp + 0x58], 7
xor r12d, r12d
mov qword [rsp + 0x50], r12
mov word [rsp + 0x40], r12w
or ebp, 0xffffffff
mov r8d, ebp
lea rdx, [rsp + 0x38]
call fcn.180011ba8
lea r9, [0x1800472e4]
mov r8d, ebp
lea rdx, [rsp + 0x38]
mov rcx, rsi
call fcn.180011cc8
cmp eax, r12d
jne 0x1800127b6
mov rcx, rbx
call fcn.180017240
nop
cmp qword [rsp + 0x58], 8
jb 0x1800127af
mov rcx, qword [rsp + 0x40]
call fcn.180025e24
xor eax, eax
jmp 0x1800129f1
mov r8d, 2
lea rdx, [0x1800472e8]
mov rcx, rbx
call fcn.180001990
mov r8d, 6
lea rdx, str._ieml.
mov rcx, rbx
call fcn.18000e764
lea rcx, [0x180059508]
mov rax, qword [0x180059508]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x20], rax
cmp rdi, r12
je 0x180012815
mov r8, rdi
lea rdx, str.______s_
lea rcx, [rsp + 0x20]
call fcn.180008ca4
jmp 0x180012826
lea rdx, str.___
lea rcx, [rsp + 0x20]
call fcn.180008ca4
xor eax, eax
or rbp, 0xffffffffffffffff
mov rcx, rbp
mov rdx, qword [rsp + 0x20]
mov rdi, rdx
repne scasw ax, word [rdi]
not rcx
lea r13d, [rax + 1]
sub rcx, r13
mov r8, rcx
mov rcx, rbx
call fcn.18000e764
lea rdx, [rsp + 0x270]
mov edi, 0x104
mov ecx, edi
call qword [sym.imp.KERNEL32.dll_GetTempPathW]
lea r9, [rsp + 0x60]
xor r8d, r8d
lea rdx, [0x180047328]
lea rcx, [rsp + 0x270]
call qword [sym.imp.KERNEL32.dll_GetTempFileNameW]
lea rcx, [rsp + 0x60]
call qword [sym.imp.SHLWAPI.dll_PathFindExtensionW]
mov word [rax], r12w
lea rcx, [0x180059508]
mov rax, qword [0x180059508]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x28], rax
lea rcx, [rsp + 0x28]
call fcn.18000e4c4
mov r8, qword [rsp + 0x28]
mov rdx, rdi
lea rcx, [rsp + 0x60]
call fcn.180027fc8
xor edx, edx
lea rcx, [rsp + 0x60]
call qword [sym.imp.KERNEL32.dll_CreateDirectoryW]
xor r9d, r9d
mov r8d, edi
lea rdx, [rsp + 0x480]
mov rcx, rsi
call fcn.180011388
lea rcx, [rsp + 0x480]
call qword [sym.imp.SHLWAPI.dll_PathFindFileNameW]
mov rdx, rax
lea rcx, [rsp + 0x60]
call qword [sym.imp.SHLWAPI.dll_PathAppendW]
lea rcx, [rsp + 0x60]
call fcn.18000dfa4
cmp eax, r12d
je 0x18001295d
mov r8, r13
lea rdx, str.___a
mov rcx, rbx
call fcn.18000e764
xor eax, eax
mov rcx, rbp
lea rdi, [rsp + 0x60]
repne scasw ax, word [rdi]
not rcx
sub rcx, r13
mov r8, rcx
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.18000e764
mov r8, r13
lea rdx, [0x180047334]
mov rcx, rbx
call fcn.18000e764
jmp 0x180012980
xor eax, eax
mov rcx, rbp
lea rdi, [rsp + 0x60]
repne scasw ax, word [rdi]
not rcx
sub rcx, r13
mov r8, rcx
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.18000e764
lea rdx, [rsp + 0x40]
cmp qword [rsp + 0x58], 8
cmovae rdx, qword [rsp + 0x40]
mov rcx, rbx
call fcn.180011ad8
nop
mov rdx, qword [rsp + 0x28]
add rdx, 0xffffffffffffffe8
mov eax, ebp
lock xadd dword [rdx + 0x10], eax
add eax, ebp
cmp eax, r12d
jg 0x1800129bb
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rdx, qword [rsp + 0x20]
add rdx, 0xffffffffffffffe8
mov eax, ebp
lock xadd dword [rdx + 0x10], eax
add eax, ebp
cmp eax, r12d
jg 0x1800129dc
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
cmp qword [rsp + 0x58], 8
jb 0x1800129ee
mov rcx, qword [rsp + 0x40]
call fcn.180025e24
mov eax, r13d
mov rcx, qword [rsp + 0x690]
xor rcx, rsp
call fcn.180026540
mov rbx, qword [rsp + 0x6e8]
add rsp, 0x6a0
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret