Function at 0x140055e40
Capabilities:
Create directory

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x37]
sub rsp, 0xb0
mov rax, qword [0x1400f63f8]
xor rax, rsp
mov qword [rbp + 0x2f], rax
mov rdi, rcx
cmp qword [rcx + 0x18], 8
jb 0x140055e7f
mov rcx, qword [rcx]
call fcn.140055690
test al, al
je 0x140055eb7
xor eax, eax
mov rcx, qword [rbp + 0x2f]
xor rcx, rsp
call fcn.140085660
lea r11, [rsp + 0xb0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
xor r15d, r15d
mov qword [rbp - 0x11], r15
mov qword [rbp - 1], r15
mov qword [rbp + 7], r15
mov rbx, qword [rdi + 0x10]
mov r14, rdi
mov rax, qword [rdi + 0x18]
cmp rax, 8
jb 0x140055eda
mov r14, qword [rdi]
movabs rcx, 0x7ffffffffffffffe
movabs rdx, 0x7fffffffffffffff
cmp rbx, 8
jae 0x140055f0a
movups xmm0, xmmword [r14]
movups xmmword [rbp - 0x11], xmm0
mov qword [rbp - 1], rbx
mov qword [rbp + 7], 7
jmp 0x140055f82
mov rsi, rbx
or rsi, 7
cmp rsi, rcx
cmova rsi, rcx
lea rcx, [rsi + 1]
cmp rcx, rdx
ja 0x1400564ea
add rcx, rcx
cmp rcx, 0x1000
jb 0x140055f38
call fcn.140004650
jmp 0x140055f47
test rcx, rcx
je 0x140055f44
call fcn.140084c04
jmp 0x140055f47
mov rax, r15
mov qword [rbp - 0x11], rax
lea r8, [rbx*2 + 2]
mov rdx, r14
mov rcx, rax
call fcn.140087210
mov qword [rbp - 1], rbx
mov qword [rbp + 7], rsi
mov rbx, qword [rdi + 0x10]
mov rax, qword [rdi + 0x18]
movabs rcx, 0x7ffffffffffffffe
movabs rdx, 0x7fffffffffffffff
mov qword [rbp - 0x31], r15
mov qword [rbp - 0x19], 7
mov esi, 4
cmp rbx, rsi
cmovb rsi, rbx
mov r12, rdi
cmp rax, 8
jb 0x140055fa6
mov r12, qword [rdi]
mov eax, 0xa
lea r13, [rax - 0xc]
cmp rsi, 7
ja 0x140055fe0
mov qword [rbp - 0x21], rsi
lea rbx, [rsi + rsi]
mov r8, rbx
mov rdx, r12
lea rcx, [rbp - 0x31]
call fcn.140087210
mov word [rbp + rbx - 0x31], r15w
mov r14, qword [rbp - 0x19]
mov rsi, qword [rbp - 0x21]
mov r15, qword [rbp - 0x31]
jmp 0x14005605b
cmp rsi, rcx
ja 0x1400564e4
mov r14, rsi
or r14, 7
cmp r14, rcx
jbe 0x140056002
mov r14, rcx
mov rcx, r13
call fcn.140004650
jmp 0x140056033
cmp r14, rax
cmovb r14, rax
lea rcx, [r14 + 1]
cmp rcx, rdx
ja 0x1400564de
add rcx, rcx
cmp rcx, 0x1000
jb 0x140056029
call fcn.140004650
jmp 0x140056033
test rcx, rcx
je 0x140056036
call fcn.140084c04
mov r15, rax
mov qword [rbp - 0x21], rsi
mov qword [rbp - 0x19], r14
lea rbx, [rsi + rsi]
mov r8, rbx
mov rdx, r12
mov rcx, r15
call fcn.140087210
xor eax, eax
mov word [r15 + rbx], ax
mov qword [rbp - 0x31], r15
lea r9, [rbp - 0x31]
cmp r14, 8
setae r10b
cmovae r9, r15
lea r11, [0x1400d97c0]
cmp rsi, 4
jne 0x1400560b2
mov r8, rsi
mov rax, r11
movzx ecx, word [r9]
mov edx, 0x5c
cmp cx, dx
jb 0x1400560b2
sub r9, r11
cmp cx, dx
ja 0x1400560b2
cmp r8, 1
je 0x140056160
dec r8
add rax, 2
movzx ecx, word [rax + r9]
movzx edx, word [rax]
cmp cx, dx
jae 0x140056092
xor bl, bl
test r10b, r10b
je 0x1400560ee
lea rdx, [r14*2 + 2]
mov rax, r15
cmp rdx, 0x1000
jb 0x1400560e6
add rdx, 0x27
mov r15, qword [r15 - 8]
sub rax, r15
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400564f6
mov rcx, r15
call fcn.140084c40
mov r12, 0xffffffffffffffff
test bl, bl
je 0x140056257
xor r14d, r14d
mov qword [rbp - 0x31], r14
mov qword [rbp - 0x19], 7
mov rax, qword [rdi + 0x10]
cmp rax, 4
jb 0x1400564f0
add rax, 0xfffffffffffffffc
mov rbx, r12
cmp rax, rbx
cmovb rbx, rax
mov rax, rdi
cmp qword [rdi + 0x18], 8
jb 0x140056135
mov rax, qword [rdi]
lea r15, [rax + 8]
cmp rbx, 7
ja 0x140056167
mov qword [rbp - 0x21], rbx
add rbx, rbx
mov r8, rbx
mov rdx, r15
lea rcx, [rbp - 0x31]
call fcn.140087210
mov word [rbp + rbx - 0x31], r14w
jmp 0x140056202
mov bl, 1
jmp 0x1400560b4
movabs rax, 0x7ffffffffffffffe
cmp rbx, rax
ja 0x1400564e4
mov rsi, rbx
or rsi, 7
cmp rsi, rax
jbe 0x140056193
mov rsi, rax
mov rcx, r13
call fcn.140004650
jmp 0x1400561db
cmp rsi, 0xa
mov eax, 0xa
cmovb rsi, rax
lea rax, [rsi + 1]
movabs rcx, 0x7fffffffffffffff
cmp rax, rcx
ja 0x1400564de
lea r13, [rax + rax]
cmp r13, 0x1000
jb 0x1400561ce
mov rcx, r13
call fcn.140004650
jmp 0x1400561db
test r13, r13
je 0x1400561de
mov rcx, r13
call fcn.140084c04
mov r14, rax
mov qword [rbp - 0x21], rbx
mov qword [rbp - 0x19], rsi
add rbx, rbx
mov r8, rbx
mov rdx, r15
mov rcx, r14
call fcn.140087210
xor eax, eax
mov word [r14 + rbx], ax
mov qword [rbp - 0x31], r14
mov rdx, qword [rbp + 7]
cmp rdx, 8
jb 0x140056242
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x11]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005623d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400564f6
call fcn.140084c40
movups xmm0, xmmword [rbp - 0x31]
movups xmmword [rbp - 0x11], xmm0
movups xmm1, xmmword [rbp - 0x21]
movups xmmword [rbp - 1], xmm1
mov sil, 1
jmp 0x14005625a
xor sil, sil
lea r8, [rbp - 0x11]
mov r9, qword [rbp + 7]
cmp r9, 8
setae bl
mov rcx, qword [rbp - 0x11]
cmovae r8, rcx
mov r11, qword [rbp - 1]
xor r14d, r14d
test r11, r11
je 0x1400564a0
mov rax, r11
mov rdx, r8
mov r10d, r14d
cmp word [r8], 0x5c
je 0x1400562a4
cmp rax, 1
je 0x1400562a7
dec rax
add rdx, 2
cmp word [rdx], 0x5c
jne 0x140056291
mov r10, rdx
test r10, r10
je 0x1400564a0
sub r10, r8
sar r10, 1
cmp r10, 0xffffffffffffffff
je 0x1400564a0
lea rdx, [rbp - 0x11]
test bl, bl
cmovne rdx, rcx
test r11, r11
je 0x1400564a0
lea rax, [r11 - 1]
cmp rax, 0xffffffffffffffff
cmovb r12, rax
lea r8, [rdx + r12*2]
cmp word [r8], 0x5c
je 0x140056304
nop word [rax + rax]
cmp r8, rdx
je 0x1400564a0
sub r8, 2
cmp word [r8], 0x5c
jne 0x1400562f0
sub r8, rdx
sar r8, 1
cmp r8, 0xffffffffffffffff
je 0x1400564a0
cmp r10, r8
je 0x140056466
mov qword [rbp - 0x31], r14
mov qword [rbp - 0x21], r14
mov qword [rbp - 0x19], 7
mov word [rbp - 0x31], r14w
cmp r11, r8
cmovb r8, r11
lea rdx, [rbp - 0x11]
test bl, bl
cmovne rdx, rcx
lea rcx, [rbp - 0x31]
call fcn.140003b60
nop
test sil, sil
je 0x1400563cd
mov rcx, qword [rbp - 0x21]
movabs rax, 0x7ffffffffffffffe
sub rax, rcx
cmp rax, 4
jb 0x1400564fc
lea rax, [rbp - 0x31]
cmp qword [rbp - 0x19], 8
cmovae rax, qword [rbp - 0x31]
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 4
lea r9, [0x1400d97c0]
lea r8, [rbp - 0x31]
movzx edx, byte [rbp - 0x39]
lea rcx, [rbp + 0xf]
call fcn.140014ba0
lea rdx, [rbp + 0xf]
lea rcx, [rbp - 0x31]
call fcn.140005840
mov r8, qword [rbp + 0x27]
cmp r8, 8
jb 0x1400563cd
inc r8
mov rdx, qword [rbp + 0xf]
lea rcx, [rbp + 0xf]
call fcn.140003f10
lea rcx, [rbp - 0x31]
call fcn.140055e40
mov ebx, eax
mov rdx, qword [rbp - 0x19]
test eax, eax
je 0x14005642a
cmp rdx, 8
jb 0x14005648e
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x31]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005641b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140056502
call fcn.140084c40
mov r9, qword [rbp + 7]
mov rcx, qword [rbp - 0x11]
jmp 0x1400564a3
cmp rdx, 8
jb 0x140056466
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x31]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140056461
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140056502
call fcn.140084c40
cmp qword [rdi + 0x18], 8
jb 0x140056470
mov rdi, qword [rdi]
xor edx, edx
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CreateDirectoryW]
test eax, eax
jne 0x140056498
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
cmp eax, 0xb7
je 0x140056498
mov r9, qword [rbp + 7]
mov rcx, qword [rbp - 0x11]
jmp 0x1400564a3
mov r9, qword [rbp + 7]
mov rcx, qword [rbp - 0x11]
mov ebx, r14d
cmp r9, 8
jb 0x1400564d7
lea rdx, [r9*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400564d2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140056508
call fcn.140084c40
mov eax, ebx
jmp 0x140055e8a
call fcn.140001c90
int3
call fcn.140001d30
nop
call fcn.140001c90
nop
call fcn.140003e80
int3
call fcn.14008c334
nop
call fcn.140001d30
nop
call fcn.14008c334
nop
call fcn.14008c334
int3