Function at 0x180022070
Capabilities:
Create directory

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r14
push r15
lea rbp, [rsp - 0x27]
sub rsp, 0x100
mov rax, qword [0x1800b0280]
xor rax, rsp
mov qword [rbp + 0x17], rax
mov rbx, r8
mov rdi, rcx
mov qword [rbp - 0x71], rcx
xor r12d, r12d
lea r8, str._bkc_config
lea rcx, [rbp - 9]
call fcn.18002b5b0
nop
lea rcx, [rbp - 9]
cmp qword [rbp + 0xf], 7
cmova rcx, qword [rbp - 9]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_CreateDirectoryW]
xorps xmm0, xmm0
movups xmmword [rbp - 0x29], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x19], xmm1
mov r8, 0xffffffffffffffff
nop
inc r8
cmp byte [rbx + r8], 0
jne 0x1800220e0
mov rdx, rbx
lea rcx, [rbp - 0x29]
call fcn.1800207d0
nop
lea rdx, [rbp - 0x29]
cmp qword [rbp - 0x11], 0xf
cmova rdx, qword [rbp - 0x29]
mov r15, qword [rbp - 0x19]
add r15, rdx
lea rbx, [rbp - 0x29]
cmp qword [rbp - 0x11], 0xf
cmova rbx, qword [rbp - 0x29]
xorps xmm0, xmm0
movups xmmword [rbp - 0x69], xmm0
movabs r14, 0x7fffffffffffffff
cmp rbx, r15
jne 0x18002214a
mov rbx, r12
mov qword [rbp - 0x59], rbx
mov esi, 7
mov qword [rbp - 0x51], rsi
mov word [rbp - 0x69], r12w
jmp 0x180022255
sub r15, rbx
mov qword [rbp - 0x59], r12
mov qword [rbp - 0x51], 7
movabs rax, 0x7ffffffffffffffe
cmp r15, rax
ja 0x18002264d
mov esi, 7
cmp r15, rsi
jbe 0x18002220c
mov rsi, r15
or rsi, 7
cmp rsi, rax
jbe 0x18002218f
mov rsi, rax
lea rcx, [r14 + r14]
jmp 0x1800221b4
mov eax, 0xa
cmp rsi, rax
cmovb rsi, rax
lea rcx, [rsi + 1]
cmp rcx, r14
ja 0x180022653
add rcx, rcx
cmp rcx, 0x1000
jb 0x1800221eb
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x180022653
mov rcx, rax
call fcn.180080ba0
mov rcx, rax
test rax, rax
je 0x180022581
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
mov qword [rbp - 0x69], rax
mov qword [rbp - 0x51], rsi
jmp 0x180022210
test rcx, rcx
je 0x1800221ff
call fcn.180080ba0
mov qword [rbp - 0x69], rax
mov qword [rbp - 0x51], rsi
jmp 0x180022210
mov rax, r12
mov qword [rbp - 0x69], rax
mov qword [rbp - 0x51], rsi
jmp 0x180022210
mov rax, qword [rbp - 0x69]
lea r8, [rbp - 0x69]
cmp rsi, 7
cmova r8, rax
mov rcx, r8
mov rdx, r15
test r15, r15
je 0x180022244
nop word [rax + rax]
movsx eax, byte [rbx]
mov word [rcx], ax
lea rcx, [rcx + 2]
lea rbx, [rbx + 1]
sub rdx, 1
jne 0x180022230
mov qword [rbp - 0x59], r15
mov word [r8 + r15*2], r12w
mov rsi, qword [rbp - 0x51]
mov rbx, qword [rbp - 0x59]
lea r8, [0x180099314]
lea rdx, [rbp - 9]
lea rcx, [rsp + 0x48]
call fcn.18002b5b0
nop
lea rdx, [rbp - 0x69]
cmp rsi, 7
cmova rdx, qword [rbp - 0x69]
mov r8, rbx
mov rcx, rax
call fcn.18002a6e0
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x30], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x20], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x30], xmm1
mov qword [rax + 0x18], 7
mov qword [rax + 0x10], r12
mov word [rax], r12w
mov r8d, 4
lea rdx, str..bkc
lea rcx, [rsp + 0x20]
call fcn.18002a6e0
xorps xmm0, xmm0
movups xmmword [rbp - 0x49], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x39], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x49], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x39], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 7
mov word [rax], r12w
mov rdx, qword [rsp + 0x38]
cmp rdx, 7
jbe 0x18002233f
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18002233a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18002233a
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18008101c
movdqa xmm0, xmmword [0x18009d300]
movdqu xmmword [rsp + 0x30], xmm0
mov word [rsp + 0x20], r12w
mov rdx, qword [rbp - 0x79]
cmp rdx, 7
jbe 0x180022397
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180022392
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180022392
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18008101c
movdqa xmm0, xmmword [0x18009d300]
movdqu xmmword [rsp + 0x58], xmm0
mov word [rsp + 0x48], r12w
lea rdx, [rbp - 0x49]
cmp qword [rbp - 0x31], 7
cmova rdx, qword [rbp - 0x49]
mov rax, qword [rbp - 0x39]
lea rsi, [rdx + rax*2]
lea rbx, [rbp - 0x49]
cmova rbx, qword [rbp - 0x49]
xorps xmm0, xmm0
movups xmmword [rdi], xmm0
mov qword [rdi + 0x10], r12
mov qword [rdi + 0x18], 0xf
cmp rbx, rsi
jne 0x1800223e9
mov byte [rdi], 0
jmp 0x1800224cc
sub rsi, rbx
sar rsi, 1
cmp rsi, r14
ja 0x180022641
cmp rsi, 0xf
jbe 0x180022496
mov rax, rsi
or rax, 0xf
cmp rax, r14
jbe 0x18002243a
movabs rax, 0x8000000000000000
add rax, 0x27
mov rcx, rax
call fcn.180080ba0
mov rcx, rax
test rax, rax
je 0x180022465
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x18002247b
mov r14, rax
mov ecx, 0x16
cmp rax, rcx
cmovb r14, rcx
lea rcx, [r14 + 1]
cmp rcx, 0x1000
jb 0x18002246c
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x180022647
jmp 0x18002241c
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
test rcx, rcx
je 0x180022478
call fcn.180080ba0
jmp 0x18002247b
mov rax, r12
mov qword [rdi], rax
mov qword [rdi + 0x18], r14
mov r8, rdi
cmp r14, 0xf
jbe 0x180022499
mov r8, rax
mov rcx, rax
mov rdx, rsi
jmp 0x1800224b0
mov r8, rdi
mov rcx, r8
mov rdx, rsi
test rsi, rsi
je 0x1800224c3
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [rbx]
mov byte [rcx], al
lea rcx, [rcx + 1]
lea rbx, [rbx + 2]
sub rdx, 1
jne 0x1800224b0
mov qword [rdi + 0x10], rsi
mov byte [r8 + rsi], 0
mov rdx, rdi
cmp qword [rdi + 0x18], 0xf
jbe 0x1800224d9
mov rdx, qword [rdi]
lea r8, [0x180099318]
lea rcx, [rbp - 0x71]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fopen_s]
mov rcx, qword [rbp - 0x71]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
nop
mov rdx, qword [rbp - 0x31]
cmp rdx, 7
jbe 0x180022538
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x49]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180022533
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180022533
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18008101c
movdqa xmm0, xmmword [0x18009d300]
movdqu xmmword [rbp - 0x39], xmm0
mov word [rbp - 0x49], r12w
mov rdx, qword [rbp - 0x51]
cmp rdx, 7
jbe 0x18002258e
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x69]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180022588
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180022588
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18008101c
nop
mov rdx, qword [rbp - 0x11]
cmp rdx, 0xf
jbe 0x1800225cc
inc rdx
mov rcx, qword [rbp - 0x29]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800225c7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800225c7
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18008101c
movdqa xmm0, xmmword [0x18009d310]
movdqu xmmword [rbp - 0x19], xmm0
mov byte [rbp - 0x29], 0
mov rdx, qword [rbp + 0xf]
cmp rdx, 7
jbe 0x180022620
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 9]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18002261b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18002261b
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18008101c
mov rax, rdi
mov rcx, qword [rbp + 0x17]
xor rcx, rsp
call fcn.180080b80
add rsp, 0x100
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.18001e4c0
nop
call fcn.18001e420
nop
call fcn.18001e4c0
int3
call fcn.18001e420
int3