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

Disassembly:
jmp 0x140033990
push rbp
push rdi
sub rsp, 0x868
lea rbp, [rsp + 0x30]
lea rdi, [rsp + 0x30]
mov ecx, 0x17e
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rax, qword [0x140068040]
xor rax, rbp
mov qword [rbp + 0x828], rax
lea rcx, [0x14007532f]
call fcn.14001a301
nop
lea rdx, [rbp + 0x10]
mov ecx, 0x104
call qword [sym.imp.KERNEL32.dll_GetTempPathW]
test eax, eax
jne 0x140033a0c
lea rdx, str.GetTempPathW_failed_
mov rcx, qword [sym.imp.MSVCP140D.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
call fcn.1400191f4
lea rdx, [0x1400190b9]
mov rcx, rax
call qword [sym.imp.MSVCP140D.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
nop
xor al, al
jmp 0x140033ca0
lea rax, [rbp + 0x240]
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
je 0x140033a5a
lea rdx, str.SHGetFolderPathW_failed_
mov rcx, qword [sym.imp.MSVCP140D.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
call fcn.1400191f4
lea rdx, [0x1400190b9]
mov rcx, rax
call qword [sym.imp.MSVCP140D.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
nop
xor al, al
jmp 0x140033ca0
lea rdx, [rbp + 0x240]
lea rcx, [rbp + 0x768]
call fcn.1400195e6
mov qword [rbp + 0x818], rax
mov rax, qword [rbp + 0x818]
mov qword [rbp + 0x820], rax
lea r8, str..craftrise
mov rdx, qword [rbp + 0x820]
lea rcx, [rbp + 0x468]
call fcn.140019b6d
nop
lea rcx, [rbp + 0x768]
call fcn.14001a06d
nop
lea r8, str.libraries
lea rdx, [rbp + 0x468]
lea rcx, [rbp + 0x4a8]
call fcn.14001a0c7
nop
lea r8, str._natives
lea rdx, [rbp + 0x468]
lea rcx, [rbp + 0x4e8]
call fcn.14001a0c7
nop
lea rcx, [rbp + 0x468]
call fcn.140019604
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_CreateDirectoryW]
test eax, eax
jne 0x140033b65
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
je 0x140033b65
lea rdx, str.CreateDirectoryW_failed_for_baseDir_
mov rcx, qword [sym.imp.MSVCP140D.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
call fcn.1400191f4
lea rdx, [0x1400190b9]
mov rcx, rax
call qword [sym.imp.MSVCP140D.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
nop
mov byte [rbp + 0x7a4], 0
lea rcx, [rbp + 0x4e8]
call fcn.14001a06d
nop
lea rcx, [rbp + 0x4a8]
call fcn.14001a06d
nop
lea rcx, [rbp + 0x468]
call fcn.14001a06d
movzx eax, byte [rbp + 0x7a4]
jmp 0x140033ca0
lea rcx, [rbp + 0x4a8]
call fcn.140019604
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_CreateDirectoryW]
test eax, eax
jne 0x140033bea
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
je 0x140033bea
lea rdx, str.CreateDirectoryW_failed_for_baseDir_
mov rcx, qword [sym.imp.MSVCP140D.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
call fcn.1400191f4
lea rdx, [0x1400190b9]
mov rcx, rax
call qword [sym.imp.MSVCP140D.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
nop
mov byte [rbp + 0x7c4], 0
lea rcx, [rbp + 0x4e8]
call fcn.14001a06d
nop
lea rcx, [rbp + 0x4a8]
call fcn.14001a06d
nop
lea rcx, [rbp + 0x468]
call fcn.14001a06d
movzx eax, byte [rbp + 0x7c4]
jmp 0x140033ca0
lea rcx, [rbp + 0x4e8]
call fcn.140019604
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_CreateDirectoryW]
test eax, eax
jne 0x140033c6c
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
je 0x140033c6c
lea rdx, str.CreateDirectoryW_failed_for_soundsDir_
mov rcx, qword [sym.imp.MSVCP140D.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
call fcn.1400191f4
lea rdx, [0x1400190b9]
mov rcx, rax
call qword [sym.imp.MSVCP140D.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
nop
mov byte [rbp + 0x7e4], 0
lea rcx, [rbp + 0x4e8]
call fcn.14001a06d
nop
lea rcx, [rbp + 0x4a8]
call fcn.14001a06d
nop
lea rcx, [rbp + 0x468]
call fcn.14001a06d
movzx eax, byte [rbp + 0x7e4]
jmp 0x140033ca0
mov byte [rbp + 0x804], 1
lea rcx, [rbp + 0x4e8]
call fcn.14001a06d
nop
lea rcx, [rbp + 0x4a8]
call fcn.14001a06d
nop
lea rcx, [rbp + 0x468]
call fcn.14001a06d
movzx eax, byte [rbp + 0x804]
mov rdi, rax
lea rcx, [rbp - 0x30]
lea rdx, [0x140055940]
call fcn.140019ff0
mov rax, rdi
mov rcx, qword [rbp + 0x828]
xor rcx, rbp
call fcn.1400198f7
lea rsp, [rbp + 0x838]
pop rdi
pop rbp
ret