Function at 0x100133b8c
Capabilities:
Create directory

Disassembly:
mov rax, rsp
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x68
xor r12d, r12d
mov r13, rdx
mov r14, rcx
mov qword [rax + 0x20], r12
mov rbx, r12
mov qword [rax + 0x10], r12
mov rbp, r12
mov qword [rax + 0x18], r12
cmp rcx, r12
jne 0x100133bd7
lea r8, [0x100014760]
lea rcx, [0x1000146f0]
mov edx, 0x234
call fcn.100099ad8
cmp r13, r12
jne 0x100133bf4
lea r8, [0x100014778]
lea rcx, [0x1000146f0]
mov edx, 0x235
call fcn.100099ad8
lea rdx, [rsp + 0xb8]
mov rcx, r14
mov qword [r13], r12
call fcn.10011c890
mov rsi, qword [rsp + 0xb8]
mov r15d, 2
cmp eax, r12d
mov edi, eax
jl 0x100134029
lea rcx, [rsp + 0x40]
call fcn.1000a45dc
cmp eax, r12d
mov edi, eax
jl 0x100134029
lea rdx, [rsp + 0x40]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CreateDirectoryW]
mov rcx, qword [rsp + 0x48]
mov edi, eax
cmp rcx, r12
je 0x100133c5b
call qword [sym.imp.KERNEL32.dll_LocalFree]
mov qword [rsp + 0x48], r12
cmp edi, r12d
jne 0x100133cb8
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx edi, ax
or edi, 0x80070000
cmp eax, r12d
cmovle edi, eax
cmp edi, 0x800700b7
jne 0x100133d8a
mov rcx, qword [0x1001653b8]
lea rax, [0x1001653b8]
cmp rcx, rax
je 0x100133cb8
test byte [rcx + 0x1c], 1
je 0x100133cb8
cmp byte [rcx + 0x19], 3
jb 0x100133cb8
mov rcx, qword [rcx + 0x10]
lea r8, [0x100002e90]
mov edx, 0x1e
mov r9, rsi
call fcn.10001da24
lea r8, [rsp + 0xc8]
lea rdx, [0x100002954]
mov rcx, r14
call fcn.10009b5b0
mov r15, qword [rsp + 0xc8]
cmp eax, r12d
mov edi, eax
jl 0x100134015
or rdx, 0xffffffffffffffff
xor eax, eax
mov rdi, r15
mov qword [rsp + 0x30], rdx
mov rcx, rdx
xor r9d, r9d
repne scasw ax, word [rdi]
lea eax, [rdx + 4]
mov edx, 0xc0000000
not rcx
mov r8d, eax
mov dword [rsp + 0x28], 0x2200080
lea rdi, [rcx - 1]
mov rcx, rsi
mov dword [rsp + 0x20], eax
add di, di
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov qword [rsp + 0xc8], rax
cmp rax, 0xffffffffffffffff
jne 0x100133dd6
mov rcx, qword [0x1001653b8]
lea rax, [0x1001653b8]
cmp rcx, rax
je 0x100133d70
test byte [rcx + 0x1c], 1
je 0x100133d70
mov edx, 2
cmp byte [rcx + 0x19], dl
jb 0x100133d70
mov rcx, qword [rcx + 0x10]
lea r8, [0x100002e90]
mov edx, 0x20
mov r9, rsi
call fcn.10001da24
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx edi, ax
or edi, 0x80070000
cmp eax, r12d
cmovle edi, eax
jmp 0x100133ff0
mov rcx, qword [0x1001653b8]
lea rbx, [0x1001653b8]
cmp rcx, rbx
je 0x100134030
test byte [rcx + 0x1c], 1
je 0x100134030
cmp byte [rcx + 0x19], r15b
jb 0x100134030
mov rcx, qword [rcx + 0x10]
lea r8, [0x100002e90]
mov edx, 0x1f
mov r9, rsi
mov dword [rsp + 0x20], edi
call fcn.10001daa4
jmp 0x100134030
mov ecx, 0x4000
call qword [sym.imp.ole32.dll_CoTaskMemAlloc]
mov r12, rax
xor eax, eax
cmp r12, rax
je 0x100133f0d
lea eax, [rdi + 0xc]
mov word [r12 + 0xa], di
lea rcx, [r12 + 0x10]
mov word [r12 + 4], ax
xor eax, eax
mov rdx, r15
mov word [r12 + 6], ax
mov word [r12 + 8], ax
mov eax, 2
add eax, edi
movzx edi, di
mov dword [r12], 0xa0000003
mov word [r12 + 0xc], ax
xor eax, eax
mov r8, rdi
mov word [r12 + 0xe], ax
call sub.msvcrt.dll_memcpy
mov rcx, qword [rsp + 0xc8]
xor eax, eax
shr rdi, 1
mov r11d, 0x3f
mov word [r12 + 0x12], r11w
mov word [r12 + rdi*2 + 0x10], ax
mov word [r12 + rdi*2 + 0x12], ax
movzx r9d, word [r12 + 4]
xor edi, edi
lea rax, [rsp + 0xb0]
mov qword [rsp + 0x38], rdi
mov qword [rsp + 0x30], rax
mov r8, r12
add r9d, 8
mov edx, 0x900a4
mov dword [rsp + 0x28], edi
mov qword [rsp + 0x20], rdi
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
cmp eax, edi
jne 0x100133efa
call qword [sym.imp.KERNEL32.dll_GetLastError]
xor ecx, ecx
movzx edi, ax
or edi, 0x80070000
cmp eax, ecx
cmovle edi, eax
mov rcx, qword [0x1001653b8]
lea rax, [0x1001653b8]
cmp rcx, rax
je 0x100133fdc
test byte [rcx + 0x1c], 1
je 0x100133fdc
mov eax, 2
cmp byte [rcx + 0x19], al
jb 0x100133fdc
mov rcx, qword [rcx + 0x10]
lea edx, [rax + 0x1f]
lea r8, [0x100002e90]
mov r9d, edi
call fcn.10001c7dc
jmp 0x100133fdc
mov ecx, 0x208
call qword [sym.imp.ole32.dll_CoTaskMemAlloc]
mov rbx, rax
cmp rax, rdi
jne 0x100133f17
mov edi, 0x8007000e
jmp 0x100133fdc
xor edx, edx
mov r8d, 0x208
mov rcx, rax
call sub.msvcrt.dll_memset
lea r8, [0x100006048]
mov r10d, 0x104
sub r8, rbx
xor r9d, r9d
mov rdx, r10
lea esi, [r9 + 2]
mov rcx, rbx
lea rax, [rdx + 0x7ffffefa]
cmp rax, r9
je 0x100133f67
movzx eax, word [r8 + rcx]
cmp ax, r9w
je 0x100133f67
mov word [rcx], ax
add rcx, rsi
sub rdx, 1
jne 0x100133f44
mov rsi, qword [rsp + 0xb8]
cmp rdx, r9
jne 0x100133f7d
sub rcx, 2
mov edi, 0x8007007a
cmp edi, r9d
mov word [rcx], r9w
jl 0x100133fdc
lea r8, [0x100002954]
mov rdx, r10
mov rcx, rbx
call fcn.1000590dc
mov edi, eax
xor eax, eax
cmp edi, eax
jl 0x100133fdc
lea rdx, [rsp + 0xc0]
mov rcx, r14
call fcn.10011c628
cmp eax, ebp
mov rbp, qword [rsp + 0xc0]
mov edi, eax
jl 0x100133fdc
mov r8, rbp
mov edx, 0x104
mov rcx, rbx
call fcn.1000590dc
mov edi, eax
xor eax, eax
cmp edi, eax
jl 0x100133fdc
mov qword [r13], rbx
xor ebx, ebx
xor r13d, r13d
cmp r12, r13
je 0x100133fed
mov rcx, r12
call qword [sym.imp.ole32.dll_CoTaskMemFree]
xor r12d, r12d
mov rax, qword [rsp + 0xc8]
cmp rax, 0xffffffffffffffff
je 0x100134007
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp rbx, r12
je 0x100134015
mov rcx, rbx
call qword [sym.imp.ole32.dll_CoTaskMemFree]
cmp r15, r12
je 0x100134023
mov rcx, r15
call qword [sym.imp.ole32.dll_CoTaskMemFree]
mov r15d, 2
lea rbx, [0x1001653b8]
cmp rsi, r12
je 0x10013403e
mov rcx, rsi
call qword [sym.imp.ole32.dll_CoTaskMemFree]
cmp rbp, r12
je 0x10013404c
mov rcx, rbp
call qword [sym.imp.ole32.dll_CoTaskMemFree]
cmp edi, r12d
jge 0x100134085
mov rcx, qword [0x1001653b8]
cmp rcx, rbx
je 0x100134085
test byte [rcx + 0x1c], 1
je 0x100134085
cmp byte [rcx + 0x19], r15b
jb 0x100134085
mov rcx, qword [rcx + 0x10]
lea r8, [0x100002e90]
mov edx, 0x22
mov r9, r14
mov dword [rsp + 0x20], edi
call fcn.10001daa4
mov eax, edi
add rsp, 0x68
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret