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

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x170]
sub rsp, 0x270
mov rax, qword [0x14004c028]
xor rax, rsp
mov qword [rbp + 0x160], rax
mov rdi, rdx
mov r15, rcx
mov qword [rbp - 0x18], rdx
xor esi, esi
cmp byte [0x1400a7508], sil
jne 0x140006abc
call fcn.1400060f0
test al, al
jne 0x140006abc
xor r9d, r9d
lea r8, str.Fatal_Error
lea rdx, str.Failed_to_read_meta_data
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x140006f57
xor r9d, r9d
lea r8d, [r9 + 0x1a]
lea rdx, [rbp + 0x50]
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_SHGetSpecialFolderPathA]
xorps xmm0, xmm0
movups xmmword [rbp - 0x58], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x48], xmm1
lea rax, [rbp + 0x50]
mov rbx, 0xffffffffffffffff
mov r8, rbx
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x140006af0
lea rdx, [rbp + 0x50]
lea rcx, [rbp - 0x58]
call fcn.140002100
nop
mov r8d, 1
lea rdx, [0x140041e30]
lea rcx, [rbp - 0x58]
call fcn.1400106a0
xorps xmm0, xmm0
movups xmmword [rsp + 0x48], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x58], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x48], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x58], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov r8, rbx
inc r8
cmp byte [r15 + r8], 0
jne 0x140006b52
mov rdx, r15
lea rcx, [rsp + 0x48]
call fcn.1400106a0
xorps xmm0, xmm0
movups xmmword [rbp - 0x10], xmm0
mov qword [rbp], rsi
mov qword [rbp + 8], rsi
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x10], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov rdx, qword [rsp + 0x60]
cmp rdx, 0x10
jb 0x140006bd6
inc rdx
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140006bd1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140006bd1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140039c44
movdqa xmm0, xmmword [0x140042c80]
movdqu xmmword [rsp + 0x58], xmm0
mov byte [rsp + 0x48], 0
mov rdx, qword [rbp - 0x40]
cmp rdx, 0x10
jb 0x140006c27
inc rdx
mov rcx, qword [rbp - 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140006c22
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140006c22
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140039c44
movdqa xmm0, xmmword [0x140042c80]
movdqu xmmword [rbp - 0x48], xmm0
mov byte [rbp - 0x58], 0
mov r13, qword [rbp]
movabs rcx, 0x7fffffffffffffff
mov rax, rcx
sub rax, r13
cmp rax, 1
jb 0x1400071b9
lea rax, [rbp - 0x10]
cmp qword [rbp + 8], 0x10
cmovae rax, qword [rbp - 0x10]
mov qword [rsp + 0x20], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x28], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x38], xmm1
lea r12, [r13 + 1]
mov r14d, 0xf
lea rsi, [rsp + 0x28]
cmp r12, r14
jbe 0x140006d12
mov r14, r12
or r14, 0xf
cmp r14, rcx
jbe 0x140006ca3
mov r14, rcx
jmp 0x140006caf
mov ecx, 0x16
cmp r14, rcx
cmovb r14, rcx
mov rcx, r14
add rcx, 1
cmovb rcx, rbx
cmp rcx, 0x1000
jb 0x140006cf7
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x1400071b3
mov rcx, rax
call fcn.140039c00
test rax, rax
je 0x140006cf0
lea rsi, [rax + 0x27]
and rsi, 0xffffffffffffffe0
mov qword [rsi - 8], rax
mov rax, qword [rsp + 0x20]
jmp 0x140006d0d
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
test rcx, rcx
je 0x140006d0b
call fcn.140039c00
mov rsi, rax
mov rax, qword [rsp + 0x20]
jmp 0x140006d0d
xor esi, esi
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x40], r14
mov r8, r13
mov rdx, rax
mov rcx, rsi
call sub.VCRUNTIME140.dll_memcpy
mov byte [rsi + r13], 0x5c
mov byte [rsi + r12], 0
mov r8, rbx
nop word [rax + rax]
inc r8
cmp byte [r15 + r8], 0
jne 0x140006d40
mov rdx, r15
lea rcx, [rsp + 0x28]
call fcn.1400106a0
xorps xmm0, xmm0
movups xmmword [rsp + 0x68], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x78], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x68], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x78], xmm1
xor esi, esi
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], 0xf
mov byte [rax], sil
lea r8d, [rsi + 4]
lea rdx, str..dll
lea rcx, [rsp + 0x68]
call fcn.1400106a0
xorps xmm0, xmm0
movups xmmword [rbp + 0x10], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x20], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x10], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x20], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], 0xf
mov byte [rax], sil
mov rdx, qword [rbp - 0x80]
cmp rdx, 0x10
jb 0x140006e0b
inc rdx
mov rcx, qword [rsp + 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140006e06
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140006e06
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140039c44
movdqa xmm0, xmmword [0x140042c80]
movdqu xmmword [rsp + 0x78], xmm0
mov byte [rsp + 0x68], 0
mov rdx, qword [rsp + 0x40]
cmp rdx, 0x10
jb 0x140006e5e
inc rdx
mov rcx, qword [rsp + 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140006e59
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140006e59
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140039c44
movdqa xmm0, xmmword [0x140042c80]
movdqu xmmword [rsp + 0x38], xmm0
mov byte [rsp + 0x28], 0
lea rcx, [rbp - 0x10]
cmp qword [rbp + 8], 0x10
cmovae rcx, qword [rbp - 0x10]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_CreateDirectoryA]
test eax, eax
jne 0x140006f7a
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
je 0x140006f7a
xor r9d, r9d
lea r8, str.Fatal_Error
lea rdx, str.Failed_to_create_directory
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxA]
nop
mov rdx, qword [rbp + 0x28]
cmp rdx, 0x10
jb 0x140006ef8
inc rdx
mov rcx, qword [rbp + 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140006ef3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140006ef3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140039c44
movdqa xmm0, xmmword [0x140042c80]
movdqu xmmword [rbp + 0x20], xmm0
mov byte [rbp + 0x10], 0
mov rdx, qword [rbp + 8]
cmp rdx, 0x10
jb 0x140006f47
inc rdx
mov rcx, qword [rbp - 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140006f42
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140006f42
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140039c44
mov qword [rbp], rsi
mov qword [rbp + 8], 0xf
mov byte [rbp - 0x10], 0
mov rcx, qword [rdi + 0x38]
test rcx, rcx
je 0x140006f70
cmp rcx, rdi
mov rax, qword [rcx]
setne dl
call qword [rax + 0x20]
mov qword [rdi + 0x38], rsi
mov eax, 0x80004005
jmp 0x140007189
xorps xmm0, xmm0
movups xmmword [rbp - 0x78], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x68], xmm1
mov r8d, 0x1e
lea rdx, str.https:__axion.systems_api_lib_
lea rcx, [rbp - 0x78]
call fcn.140002100
nop
lea rdx, [0x1400a7528]
inc rbx
cmp byte [rdx + rbx], 0
jne 0x140006fa7
mov r8, rbx
lea rcx, [rbp - 0x78]
call fcn.1400106a0
xorps xmm0, xmm0
movups xmmword [rbp + 0x30], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x40], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x30], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x40], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov rdx, qword [rbp - 0x60]
cmp rdx, 0x10
jb 0x140007027
inc rdx
mov rcx, qword [rbp - 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140007022
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140007022
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140039c44
movdqa xmm0, xmmword [0x140042c80]
movdqu xmmword [rbp - 0x68], xmm0
mov byte [rbp - 0x78], 0
lea rax, [rbp - 0x58]
mov qword [rsp + 0x20], rax
mov qword [rbp - 0x20], rsi
mov rcx, qword [rdi + 0x38]
test rcx, rcx
je 0x14000705b
mov rax, qword [rcx]
lea rdx, [rbp - 0x58]
call qword [rax]
mov qword [rbp - 0x20], rax
lea rdx, [rbp + 0x10]
cmp qword [rbp + 0x28], 0x10
cmovae rdx, qword [rbp + 0x10]
lea rcx, [rbp + 0x30]
cmp qword [rbp + 0x48], 0x10
cmovae rcx, qword [rbp + 0x30]
lea r8, [rbp - 0x58]
call fcn.140005f90
mov ebx, eax
mov rdx, qword [rbp + 0x48]
cmp rdx, 0x10
jb 0x1400070c0
inc rdx
mov rcx, qword [rbp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400070bb
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400070bb
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140039c44
movdqa xmm0, xmmword [0x140042c80]
movdqu xmmword [rbp + 0x40], xmm0
mov byte [rbp + 0x30], 0
mov rdx, qword [rbp + 0x28]
cmp rdx, 0x10
jb 0x14000710f
inc rdx
mov rcx, qword [rbp + 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000710a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14000710a
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140039c44
movdqa xmm0, xmmword [0x140042c80]
movdqu xmmword [rbp + 0x20], xmm0
mov byte [rbp + 0x10], 0
mov rdx, qword [rbp + 8]
cmp rdx, 0x10
jb 0x14000715e
inc rdx
mov rcx, qword [rbp - 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140007159
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140007159
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140039c44
mov qword [rbp], rsi
mov qword [rbp + 8], 0xf
mov byte [rbp - 0x10], 0
mov rcx, qword [rdi + 0x38]
test rcx, rcx
je 0x140007187
mov rax, qword [rcx]
cmp rcx, rdi
setne dl
call qword [rax + 0x20]
mov qword [rdi + 0x38], rsi
mov eax, ebx
mov rcx, qword [rbp + 0x160]
xor rcx, rsp
call fcn.140039be0
mov rbx, qword [rsp + 0x2c0]
add rsp, 0x270
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.1400017a0
nop
call fcn.140001840
int3