Function at 0x140003760
Capabilities:
Create directory

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x50]
sub rsp, 0x150
mov rsi, rcx
mov r15, 0xffffffffffffffff
test dl, dl
je 0x1400039f3
mov r14, qword [rcx + 0x10]
mov rdi, rcx
mov r13, qword [rcx + 0x18]
cmp r13, 0x10
jb 0x1400037a7
mov rdi, qword [rcx]
test r14, r14
je 0x140003afc
xor edx, edx
mov r8d, pe_nt_image_headers64
lea rcx, [rsp + 0x40]
call sub.VCRUNTIME140.dll_memset
lea rbx, [0x1400df180]
mov rcx, rbx
lea rdx, [0x1400df182]
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [rcx]
mov byte [rsp + rax + 0x40], 1
inc rcx
cmp rcx, rdx
jne 0x1400037e0
lea rax, [r14 - 1]
mov r12, r15
cmp rax, r15
cmovb r12, rax
lea rcx, [r12 + rdi]
movzx eax, byte [rcx]
cmp byte [rsp + rax + 0x40], 0
jne 0x140003826
nop dword [rax]
cmp rcx, rdi
je 0x140003afc
dec rcx
movzx eax, byte [rcx]
cmp byte [rsp + rax + 0x40], 0
je 0x140003810
sub rcx, rdi
cmp rcx, r15
je 0x140003afc
mov r14, rsi
cmp r13, 0x10
jb 0x14000383e
mov r14, qword [rsi]
xor edx, edx
mov r8d, pe_nt_image_headers64
lea rcx, [rsp + 0x40]
call sub.VCRUNTIME140.dll_memset
lea rcx, [0x1400df182]
nop word [rax + rax]
movzx eax, byte [rbx]
mov byte [rsp + rax + 0x40], 1
inc rbx
cmp rbx, rcx
jne 0x140003860
lea rdi, [r12 + r14]
movzx eax, byte [rdi]
cmp byte [rsp + rax + 0x40], 0
jne 0x140003892
nop
cmp rdi, r14
je 0x1400038f6
dec rdi
movzx eax, byte [rdi]
cmp byte [rsp + rax + 0x40], 0
je 0x140003880
sub rdi, r14
mov qword [rsp + 0x20], 0
cmp qword [rsi + 0x10], rdi
cmovb rdi, qword [rsi + 0x10]
mov r12, rsi
cmp r13, 0x10
jb 0x1400038b3
mov r12, qword [rsi]
movabs r14, 0x7fffffffffffffff
cmp rdi, r14
ja 0x140003b0f
cmp rdi, 0x10
jae 0x1400038fb
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x38], 0xf
mov r8, rdi
mov rdx, r12
lea rcx, [rsp + 0x20]
call sub.VCRUNTIME140.dll_memcpy
mov byte [rsp + rdi + 0x20], 0
mov r14, qword [rsp + 0x38]
jmp 0x140003948
mov rdi, r15
jmp 0x140003895
mov rax, rdi
or rax, 0xf
cmp rax, r14
ja 0x140003916
mov r14, rax
mov ecx, 0x16
cmp rax, rcx
cmovb r14, rcx
lea rdx, [r14 + 1]
lea rcx, [rsp + 0x20]
call fcn.140004fe0
mov rbx, rax
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x38], r14
mov r8, rdi
mov rdx, r12
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
mov byte [rbx + rdi], 0
lea rax, [rsp + 0x20]
cmp rsi, rax
je 0x1400039b7
mov rdx, qword [rsi + 0x18]
cmp rdx, 0x10
jb 0x140003988
mov rcx, qword [rsi]
inc rdx
cmp rdx, 0x1000
jb 0x140003983
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x1400039e7
mov rcx, r8
call fcn.140093e7c
mov qword [rsi + 0x10], 0
mov byte [rsi], 0
mov qword [rsi + 0x18], 0xf
movups xmm0, xmmword [rsp + 0x20]
movups xmmword [rsi], xmm0
movups xmm1, xmmword [rsp + 0x30]
movups xmmword [rsi + 0x10], xmm1
mov r14d, 0xf
mov byte [rsp + 0x20], 0
cmp r14, 0x10
jb 0x1400039f3
lea rdx, [r14 + 1]
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400039ee
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400039ee
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140093e7c
mov r8, rsi
cmp qword [rsi + 0x18], 0x10
jb 0x140003a00
mov r8, qword [rsi]
mov edx, 0x104
mov r9d, edx
lea rcx, [rsp + 0x40]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy_s]
lea rax, [rsp + 0x40]
nop dword [rax + rax]
lea r15, [r15 + 1]
cmp byte [rax + r15], 0
jne 0x140003a20
cmp byte [rsp + r15 + 0x3f], 0x2f
jne 0x140003a39
mov byte [rsp + r15 + 0x3f], 0
lea rbx, [rsp + 0x40]
movzx eax, byte [rsp + 0x40]
test al, al
je 0x140003a7b
cmp al, 0x2f
je 0x140003a4f
cmp al, 0x5c
jne 0x140003a71
mov byte [rbx], 0
xor edx, edx
lea rcx, [rsp + 0x40]
call qword [sym.imp.api_ms_win_crt_filesystem_l1_1_0.dll__access]
test eax, eax
je 0x140003a6e
lea rcx, [rsp + 0x40]
call qword [sym.imp.api_ms_win_crt_filesystem_l1_1_0.dll__mkdir]
mov byte [rbx], 0x5c
inc rbx
movzx eax, byte [rbx]
test al, al
jne 0x140003a47
xor edx, edx
lea rcx, [rsp + 0x40]
call qword [sym.imp.api_ms_win_crt_filesystem_l1_1_0.dll__access]
test eax, eax
je 0x140003a98
lea rcx, [rsp + 0x40]
call qword [sym.imp.api_ms_win_crt_filesystem_l1_1_0.dll__mkdir]
nop
mov rdx, qword [rsi + 0x18]
cmp rdx, 0x10
jb 0x140003ace
inc rdx
mov rcx, qword [rsi]
cmp rdx, 0x1000
jb 0x140003ac9
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140003b08
mov rcx, r8
call fcn.140093e7c
mov qword [rsi + 0x10], 0
mov byte [rsi], 0
mov qword [rsi + 0x18], 0xf
mov rbx, qword [rsp + 0x1a0]
add rsp, 0x150
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
cmp r13, 0x10
jb 0x140003ace
lea rdx, [r13 + 1]
jmp 0x140003aa5
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call fcn.140004f80
nop
int3