Function at 0x1401b5ca0
Capabilities:
Create directory

Disassembly:
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xa8
lea rbp, [rsp + 0x40]
mov qword [rbp], 0xfffffffffffffffe
mov qword [rbp + 0x58], 7
xor r12d, r12d
mov qword [rbp + 0x50], r12
mov word [rbp + 0x40], r12w
cmp word [rdx], r12w
jne 0x1401b5ce4
mov r8d, r12d
jmp 0x1401b5cfa
or r8, 0xffffffffffffffff
nop dword [rax + rax]
inc r8
cmp word [rdx + r8*2], r12w
jne 0x1401b5cf0
lea rcx, [rbp + 0x40]
call fcn.140007100
nop
lea rax, [rbp + 0x40]
cmp qword [rbp + 0x58], 8
cmovae rax, qword [rbp + 0x40]
mov edx, 0x5c
movabs r10, 0x7ffffffffffffffe
mov rcx, qword [rbp + 0x50]
cmp word [rax + rcx*2 - 2], dx
je 0x1401b5dd7
or rax, 0xffffffffffffffff
sub rax, rcx
cmp rax, 1
ja 0x1401b5d4a
lea rcx, str.string_too_long
call fcn.1401a0e9c
int3
mov rbx, qword [rbp + 0x50]
inc rbx
cmp rbx, r10
jbe 0x1401b5d63
lea rcx, str.string_too_long
call fcn.1401a0e9c
int3
cmp qword [rbp + 0x58], rbx
jae 0x1401b5d8a
mov r8, qword [rbp + 0x50]
mov rdx, rbx
lea rcx, [rbp + 0x40]
call fcn.140007250
mov edx, 0x5c
movabs r10, 0x7ffffffffffffffe
jmp 0x1401b5da5
test rbx, rbx
jne 0x1401b5daa
mov qword [rbp + 0x50], r12
lea rax, [rbp + 0x40]
cmp qword [rbp + 0x58], 8
cmovae rax, qword [rbp + 0x40]
mov word [rax], r12w
test rbx, rbx
je 0x1401b5dd7
lea rcx, [rbp + 0x40]
cmp qword [rbp + 0x58], 8
cmovae rcx, qword [rbp + 0x40]
mov rax, qword [rbp + 0x50]
mov word [rcx + rax*2], dx
mov qword [rbp + 0x50], rbx
lea rax, [rbp + 0x40]
cmp qword [rbp + 0x58], 8
cmovae rax, qword [rbp + 0x40]
mov word [rax + rbx*2], r12w
xorps xmm0, xmm0
movdqu xmmword [rbp + 8], xmm0
mov rbx, r12
mov qword [rbp + 0x18], rbx
mov qword [rbp + 0x38], 7
mov r14, r12
mov qword [rbp + 0x30], r12
mov word [rbp + 0x20], r12w
mov esi, r12d
mov dword [rbp + 0xb8], r12d
mov r8d, r12d
mov dword [rbp + 0xb0], r12d
mov rdi, qword [rbp + 0x10]
mov r15, qword [rbp + 8]
cmp qword [rbp + 0x50], rsi
jbe 0x1401b619d
mov r13, r12
movabs r9, 0x7ffffffffffffff
lea rax, [rbp + 0x40]
mov rcx, qword [rbp + 0x40]
mov rdx, qword [rbp + 0x58]
cmp rdx, 8
cmovae rax, rcx
cmp word [r13 + rax], 0x5c
je 0x1401b5efb
lea rax, [rbp + 0x40]
cmp rdx, 8
cmovae rax, rcx
movzx r12d, word [r13 + rax]
or rax, 0xffffffffffffffff
sub rax, r14
cmp rax, 1
jbe 0x1401b6154
lea rsi, [r14 + 1]
cmp rsi, r10
ja 0x1401b6147
cmp qword [rbp + 0x38], rsi
jae 0x1401b5e9c
mov r8, r14
mov rdx, rsi
lea rcx, [rbp + 0x20]
call fcn.140007250
mov r8d, dword [rbp + 0xb0]
jmp 0x1401b5eb8
test rsi, rsi
jne 0x1401b5ec5
xor ecx, ecx
mov qword [rbp + 0x30], rcx
lea rax, [rbp + 0x20]
cmp qword [rbp + 0x38], 8
cmovae rax, qword [rbp + 0x20]
mov word [rax], cx
mov r14, qword [rbp + 0x30]
test rsi, rsi
je 0x1401b611e
lea rax, [rbp + 0x20]
cmp qword [rbp + 0x38], 8
cmovae rax, qword [rbp + 0x20]
mov word [rax + r14*2], r12w
mov qword [rbp + 0x30], rsi
lea rax, [rbp + 0x20]
cmp qword [rbp + 0x38], 8
cmovae rax, qword [rbp + 0x20]
xor r12d, r12d
mov word [rax + rsi*2], r12w
mov r14, qword [rbp + 0x30]
jmp 0x1401b6121
lea rax, [rbp + 0x20]
cmp rax, rdi
jae 0x1401b5fcf
lea rax, [rbp + 0x20]
cmp r15, rax
ja 0x1401b5fcf
lea rsi, [rbp + 0x20]
sub rsi, r15
cmp rdi, rbx
jne 0x1401b5f8a
mov rax, rbx
sub rax, rdi
sar rax, 5
cmp rax, 1
jae 0x1401b5f8a
sub rdi, r15
sar rdi, 5
mov rax, r9
sub rax, rdi
cmp rax, 1
jb 0x1401b6161
inc rdi
sub rbx, r15
sar rbx, 5
mov rcx, rbx
shr rcx, 1
mov rax, r9
sub rax, rcx
cmp rax, rbx
jae 0x1401b5f68
mov rbx, r12
jmp 0x1401b5f6b
add rbx, rcx
cmp rbx, rdi
cmovb rbx, rdi
mov rdx, rbx
lea rcx, [rbp + 8]
call fcn.140007370
mov rbx, qword [rbp + 0x18]
mov rdi, qword [rbp + 0x10]
mov r15, qword [rbp + 8]
and rsi, 0xffffffffffffffe0
add rsi, r15
mov qword [rbp + 0xc0], rdi
mov qword [rbp + 0xc8], rdi
test rdi, rdi
je 0x1401b5fca
mov qword [rdi + 0x18], 7
mov qword [rdi + 0x10], r12
mov word [rdi], r12w
or r9, 0xffffffffffffffff
xor r8d, r8d
mov rdx, rsi
mov rcx, rdi
call fcn.1400075a0
mov r14, qword [rbp + 0x30]
jmp 0x1401b6077
cmp rdi, rbx
jne 0x1401b603d
mov rax, rbx
sub rax, rdi
sar rax, 5
cmp rax, 1
jae 0x1401b603d
sub rdi, r15
sar rdi, 5
mov rax, r9
sub rax, rdi
cmp rax, 1
jb 0x1401b616e
inc rdi
sub rbx, r15
sar rbx, 5
mov rcx, rbx
shr rcx, 1
mov rax, r9
sub rax, rcx
cmp rax, rbx
jae 0x1401b601b
mov rbx, r12
jmp 0x1401b601e
add rbx, rcx
cmp rbx, rdi
cmovb rbx, rdi
mov rdx, rbx
lea rcx, [rbp + 8]
call fcn.140007370
mov rbx, qword [rbp + 0x18]
mov rdi, qword [rbp + 0x10]
mov r15, qword [rbp + 8]
mov qword [rbp + 0xc0], rdi
mov qword [rbp + 0xc8], rdi
test rdi, rdi
je 0x1401b6077
mov qword [rdi + 0x18], 7
mov qword [rdi + 0x10], r12
mov word [rdi], r12w
or r9, 0xffffffffffffffff
xor r8d, r8d
lea rdx, [rbp + 0x20]
mov rcx, rdi
call fcn.1400075a0
mov r14, qword [rbp + 0x30]
add rdi, 0x20
mov qword [rbp + 0x10], rdi
or rax, 0xffffffffffffffff
sub rax, r14
cmp rax, 1
jbe 0x1401b6190
lea rsi, [r14 + 1]
movabs rax, 0x7ffffffffffffffe
cmp rsi, rax
ja 0x1401b6183
cmp qword [rbp + 0x38], rsi
jae 0x1401b60be
mov r8, r14
mov rdx, rsi
lea rcx, [rbp + 0x20]
call fcn.140007250
jmp 0x1401b60d9
test rsi, rsi
jne 0x1401b60e2
mov qword [rbp + 0x30], r12
lea rax, [rbp + 0x20]
cmp qword [rbp + 0x38], 8
cmovae rax, qword [rbp + 0x20]
mov word [rax], r12w
mov r14, qword [rbp + 0x30]
test rsi, rsi
je 0x1401b6115
lea rax, [rbp + 0x20]
cmp qword [rbp + 0x38], 8
cmovae rax, qword [rbp + 0x20]
mov ecx, 0x5c
mov word [rax + r14*2], cx
mov qword [rbp + 0x30], rsi
lea rax, [rbp + 0x20]
cmp qword [rbp + 0x38], 8
cmovae rax, qword [rbp + 0x20]
mov word [rax + rsi*2], r12w
mov r14, qword [rbp + 0x30]
mov r8d, dword [rbp + 0xb0]
jmp 0x1401b6121
xor r12d, r12d
inc r8d
mov dword [rbp + 0xb0], r8d
add r13, 2
movsxd rax, r8d
cmp rax, qword [rbp + 0x50]
jae 0x1401b617b
movabs r10, 0x7ffffffffffffffe
jmp 0x1401b5e23
lea rcx, str.string_too_long
call fcn.1401a0e9c
int3
lea rcx, str.string_too_long
call fcn.1401a0e9c
int3
lea rcx, str.vector_T__too_long
call fcn.1401a0e9c
int3
lea rcx, str.vector_T__too_long
call fcn.1401a0e9c
int3
mov esi, dword [rbp + 0xb8]
jmp 0x1401b619d
lea rcx, str.string_too_long
call fcn.1401a0e9c
int3
lea rcx, str.string_too_long
call fcn.1401a0e9c
int3
mov rbx, r15
cmp r15, rdi
je 0x1401b6264
movabs r14, 0xffffffffffffff0
cmp qword [rbx + 0x18], 8
jb 0x1401b61bf
mov r8, qword [rbx]
jmp 0x1401b61c2
mov r8, rbx
test r8, r8
je 0x1401b6240
or rcx, 0xffffffffffffffff
nop dword [rax + rax]
inc rcx
cmp word [r8 + rcx*2], 0
jne 0x1401b61d0
inc ecx
cmp ecx, 0x3fffffff
jg 0x1401b6240
movsxd rax, ecx
add rax, rax
lea rdx, [rax + 0xf]
cmp rdx, rax
ja 0x1401b61f7
mov rdx, r14
and rdx, 0xfffffffffffffff0
mov rax, rdx
call fcn.140183de0
sub rsp, rdx
lea rsi, [rsp + 0x40]
test rsi, rsi
je 0x1401b6240
mov byte [rsi], 0
lea eax, [rcx + rcx]
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x30], r12
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], rsi
or r9d, 0xffffffff
xor edx, edx
lea ecx, [rdx + 3]
call qword [sym.imp.KERNEL32.DLL_WideCharToMultiByte]
test eax, eax
cmove rsi, r12
jmp 0x1401b6243
mov rsi, r12
xor edx, edx
mov rcx, rsi
call qword [sym.imp.KERNEL32.DLL_CreateDirectoryA]
mov esi, r12d
test eax, eax
setne sil
add rbx, 0x20
cmp rbx, rdi
jne 0x1401b61b3
cmp qword [rbp + 0x38], 8
jb 0x1401b6275
mov rcx, qword [rbp + 0x20]
call fcn.140007b08
nop
test r15, r15
je 0x1401b62b3
mov rbx, r15
cmp r15, rdi
je 0x1401b62aa
cmp qword [rbx + 0x18], 8
jb 0x1401b6291
mov rcx, qword [rbx]
call fcn.140007b08
mov qword [rbx + 0x18], 7
mov qword [rbx + 0x10], r12
mov word [rbx], r12w
add rbx, 0x20
cmp rbx, rdi
jne 0x1401b6282
mov rcx, r15
call fcn.140007b08
nop
cmp qword [rbp + 0x58], 8
jb 0x1401b62c3
mov rcx, qword [rbp + 0x40]
call fcn.140007b08
mov eax, esi
lea rsp, [rbp + 0x68]
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret