Function at 0x33e08a720
Capabilities:
Create directory

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0xaf8
xor ebx, ebx
mov rax, rbx
lea rdi, [rsp + 0x60]
mov rbp, rcx
mov ecx, 0x40
mov rsi, rdx
mov qword [rsp + 0x30], rdi
mov r15, rdi
lea rdx, [rsp + 0x270]
rep stosq qword [rdi], rax
mov ecx, 0x40
mov qword [rsp + 0xb50], r8
mov qword [rsp + 0xb58], r9
mov byte [rdi], 0
mov rdi, rdx
rep stosq qword [rdi], rax
mov rcx, rsi
mov byte [rdi], 0
call sub.msvcrt.dll_strlen
lea r14, [rax + 1]
mov rdx, rax
mov qword [rsp + 0x40], r14
cmp r14, 0x200
ja 0x33e08ac84
lea rax, [rsp + 0x690]
mov ecx, 0x8b
mov r8d, r14d
mov rdi, rax
mov qword [rsp + 0x48], rax
mov rax, rbx
rep stosq qword [rdi], rax
mov rdi, r15
cmp r14d, 8
jb 0x33e08a7cd
mov ecx, r14d
shr ecx, 3
rep movsq qword [rdi], qword [rsi]
xor eax, eax
test r8b, 4
jne 0x33e08aa74
test r8b, 2
jne 0x33e08aa87
and r8d, 1
jne 0x33e08aa49
movzx eax, byte [rsp + rdx + 0x5f]
cmp al, 0x2f
je 0x33e08aa5d
cmp al, 0x5c
je 0x33e08aa5d
mov rsi, qword [rsp + 0x40]
mov eax, 0x200
mov byte [rsp + rdx + 0x60], 0x5c
sub rax, rsi
mov qword [rsp + 0x50], rax
mov eax, dword [rbp + 0x10]
test eax, eax
je 0x33e08ab60
mov qword [rsp + 0x58], rax
mov rsi, qword [sym.imp.msvcrt.dll__mkdir]
xor ebx, ebx
nop word [rax + rax]
mov r8, qword [rbp + 0x68]
mov dword [rsp + 0x3c], ebx
test r8, r8
je 0x33e08a85b
cmp ebx, dword [rbp + 0x10]
jae 0x33e08ac60
mov rax, qword [r8 + 0x20]
mov eax, dword [rax + rbx*4]
add rax, qword [r8]
mov r8, rax
mov qword [rsp + 0x20], 0
mov r9, qword [rsp + 0x48]
mov rcx, rbp
mov edx, dword [rsp + 0x3c]
call fcn.33e080870
test eax, eax
je 0x33e08ac70
lea rdi, [rsp + 0x6e8]
mov rcx, rdi
call sub.msvcrt.dll_strlen
test rax, rax
je 0x33e08ac28
movzx edx, byte [rsp + 0x6e8]
cmp dl, 0x5c
je 0x33e08a8ac
cmp dl, 0x2f
jne 0x33e08ac68
mov rdx, rdi
nop
movzx ecx, byte [rdx + 1]
add rdx, 1
cmp cl, 0x2f
je 0x33e08a8b0
cmp cl, 0x5c
je 0x33e08a8b0
lea r8, [rdx + rax]
xor r10d, r10d
xor ecx, ecx
jmp 0x33e08a8f0
lea r14, [r10 + 0xaf0]
add rcx, 1
lea r11, [rsp + r14]
mov byte [rcx + r11 - 0x409], al
add rdx, 1
cmp r8, rdx
je 0x33e08a928
movzx eax, byte [rdx]
lea r9, [rdi + r10]
cmp al, 0x2f
je 0x33e08a8ff
cmp al, 0x5c
jne 0x33e08a8d0
test rcx, rcx
je 0x33e08a8e7
cmp byte [r9], 0x2e
jne 0x33e08aa10
cmp byte [r9 + 1], 0
jne 0x33e08aa10
add rdx, 1
xor ecx, ecx
cmp r8, rdx
jne 0x33e08a8f0
nop dword [rax]
test rcx, rcx
je 0x33e08a942
cmp byte [r9], 0x2e
jne 0x33e08ac38
cmp byte [r9 + 1], 0
jne 0x33e08ac38
mov byte [r9], 0
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x40]
mov rdx, rdi
mov r8, qword [rsp + 0x50]
add rcx, rax
call sub.msvcrt.dll_strncpy
movzx edx, byte [rsp + 0x60]
mov eax, edx
and eax, 0xffffffdf
sub eax, 0x41
cmp al, 0x19
ja 0x33e08a97c
cmp byte [rsp + 0x61], 0x3a
je 0x33e08abb0
mov ecx, 0x40
xor eax, eax
mov r15, qword [rsp + 0x30]
xor r12d, r12d
lea r13, [rsp + 0x480]
mov r14d, 1
mov rdi, r13
rep stosq qword [rdi], rax
mov byte [rdi], 0
xor edi, edi
test dl, dl
jne 0x33e08a9d7
jmp 0x33e08aaa0
add r15, 1
mov byte [r13 + rdi], dl
movzx edx, byte [r15]
test dl, dl
setne cl
cmp edi, 0x1ff
setne al
add rdi, 1
test cl, al
je 0x33e08aaa0
cmp dl, 0x2f
je 0x33e08a9e1
cmp dl, 0x5c
jne 0x33e08a9b0
mov eax, edi
test edi, edi
jle 0x33e08a9ec
test r14b, r14b
jne 0x33e08a9f6
cmp eax, 2
jle 0x33e08a9b0
test r12b, r12b
je 0x33e08a9b0
mov rcx, r13
call rsi
cmp eax, 0xffffffff
je 0x33e08ab98
movzx edx, byte [r15]
jmp 0x33e08a9b0
cmp byte [r9], 0x2e
jne 0x33e08aa30
cmp byte [r9 + 1], 0x2e
jne 0x33e08aa30
cmp byte [r9 + 2], 0
je 0x33e08a919
nop dword [rax + rax]
add rcx, r10
lea r10, [rcx + 1]
mov byte [rsp + rcx + 0x6e8], al
xor ecx, ecx
lea r9, [rdi + r10]
jmp 0x33e08a8e7
movzx ecx, byte [rsi + rax]
mov byte [rdi + rax], cl
movzx eax, byte [rsp + rdx + 0x5f]
cmp al, 0x2f
jne 0x33e08a7fa
mov eax, 0x200
mov qword [rsp + 0x40], rdx
sub rax, rdx
mov qword [rsp + 0x50], rax
jmp 0x33e08a819
mov eax, dword [rsi]
mov dword [rdi], eax
mov eax, 4
test r8b, 2
je 0x33e08a7e3
movzx ecx, word [rsi + rax]
mov word [rdi + rax], cx
add rax, 2
and r8d, 1
je 0x33e08a7ed
jmp 0x33e08aa49
movzx eax, word [rsp + 0x6a0]
and ax, 0xef00
cmp ax, 0x300
jne 0x33e08aabc
test byte [rsp + 0x6cf], 0x20
jne 0x33e08ab2e
mov rdx, qword [rbp + 0x68]
test rdx, rdx
je 0x33e08ac18
mov eax, dword [rsp + 0x3c]
cmp eax, dword [rbp + 0x10]
jae 0x33e08ac18
mov rax, qword [rdx + 0x20]
mov eax, dword [rax + rbx*4]
add rax, qword [rdx]
je 0x33e08ac18
movzx edx, word [rax + 0x1c]
test dx, dx
je 0x33e08aaf6
cmp byte [rax + rdx + 0x2d], 0x2f
je 0x33e08ab18
test byte [rax + 0x26], 0x10
jne 0x33e08ab18
mov r8, qword [rsp + 0x30]
mov edx, dword [rsp + 0x3c]
xor r9d, r9d
mov rcx, rbp
call fcn.33e08a5e0
test eax, eax
je 0x33e08ac7a
movzx edx, word [rsp + 0x6ce]
lea eax, [rdx - 1]
cmp eax, 0xfffe
jbe 0x33e08abf8
cmp qword [rsp + 0xb50], 0
je 0x33e08ab51
mov rdx, qword [rsp + 0xb58]
mov rcx, qword [rsp + 0x30]
call qword [rsp + 0xb50]
test eax, eax
js 0x33e08ab60
add rbx, 1
cmp qword [rsp + 0x58], rbx
jne 0x33e08a838
xor ebx, ebx
nop word [rax + rax]
mov edx, 1
mov rcx, rbp
call fcn.33e07bc70
test eax, eax
mov eax, 0xffffffe7
cmove ebx, eax
mov eax, ebx
add rsp, 0xaf8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
call qword [sym.imp.msvcrt.dll__errno]
cmp dword [rax], 0x11
je 0x33e08aa04
mov ebx, 0xffffffe9
jmp 0x33e08ab68
mov ecx, 0x40
xor eax, eax
mov r12d, 1
xor r14d, r14d
lea r13, [rsp + 0x480]
lea r15, [rsp + 0x62]
mov rdi, r13
rep stosq qword [rdi], rax
mov byte [rsp + 0x480], dl
movzx edx, byte [rsp + 0x62]
mov byte [rsp + 0x481], 0x3a
mov byte [rdi], 0
mov edi, 2
jmp 0x33e08a9a4
mov rcx, qword [rsp + 0x30]
call sub.msvcrt.dll__chmod
test eax, eax
jns 0x33e08ab2e
mov ebx, 0xffffffec
jmp 0x33e08ab68
mov dword [rbp + 0x1c], 0x18
jmp 0x33e08aafc
mov ebx, 0xfffffffe
jmp 0x33e08ab68
cmp byte [r9], 0x2e
jne 0x33e08a946
cmp byte [r9 + 1], 0x2e
jne 0x33e08a946
cmp byte [r9 + 2], 0
je 0x33e08a942
jmp 0x33e08a946
xor r8d, r8d
jmp 0x33e08a85b
mov rdx, rdi
jmp 0x33e08a8c2
mov ebx, 0xfffffffd
jmp 0x33e08ab68
mov ebx, 0xffffffed
jmp 0x33e08ab68
mov ebx, 0xfffffffe
jmp 0x33e08ab7f