Function at 0x180086210
Capabilities:
Create directory
Hash data using sha512

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1020]
mov eax, 0x1120
call fcn.1800a17b0
sub rsp, rax
mov rax, qword [0x1800c37a8]
xor rax, rsp
mov qword [rbp + 0x1010], rax
mov rax, qword [rbp + 0x1088]
mov rdi, rdx
movzx ebx, byte [rsp + 0x30]
mov r14, r8
mov qword [rsp + 0x78], rax
lea eax, [rcx + 0x12]
mov qword [rbp - 0x80], rdx
mov rdx, qword [rbp + 0x1080]
mov qword [rsp + 0x48], r9
mov qword [rsp + 0x68], r8
mov dword [rsp + 0x38], ecx
mov qword [rbp - 0x70], rdx
mov dword [rsp + 0x74], eax
cmp ecx, eax
jae case.0x1800862c8.110
mov r15, qword [rsp + 0x68]
mov r10d, ecx
mov r13, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x68]
mov r12, qword [rsp + 0x50]
lea eax, [r10 - 0x63]
lea r8, [0x180000000]
cmp eax, 0x27
ja case.0x1800862c8.117
movzx eax, byte [r8 + rax + 0x86bcc]
mov ecx, dword [r8 + rax*4 + 0x86b80]
add rcx, r8
jmp rcx
mov qword [rsp + 0x28], 0
xor r9d, r9d
mov r8d, 0x104
mov qword [rsp + 0x20], 0
mov rdx, r15
xor ecx, ecx
call fcn.18004f740
movzx ebx, byte [rsp + 0x3c]
jmp 0x1800863ae
mov rax, qword [r15 + 8]
xor r14d, r14d
cmp qword [rax + 8], r14
jbe case.0x1800862c8.117
xor r12d, r12d
nop dword [rax]
mov edi, 0xa2
cmp edi, 0xa2
je 0x18008637c
cmp edi, 0x4bf0
je 0x18008635d
cmp edi, 0x973e
jne 0x180086387
mov rax, qword [rbp - 0x80]
cmp r14d, dword [rax]
jne 0x180086387
mov rcx, qword [rsp + 0x50]
mov r8d, 0x36
mov rdx, qword [r13 + 0x28]
mov rax, qword [rcx + 8]
mov r9, qword [rcx]
lea rcx, [rsp + 0x40]
mov qword [rsp + 0x40], rax
call fcn.1800a0b90
jmp 0x180086387
mov rcx, qword [r13 + 0x28]
lea rdx, [rsp + 0x40]
mov r8d, 0xa8
mov qword [rsp + 0x40], 0
call fcn.18002f4a0
jmp 0x180086387
mov rax, qword [r15 + 8]
mov rcx, qword [rax]
mov r13, qword [rcx + r12*8]
add edi, 0x4b4e
cmp edi, 0xe1ea
jbe 0x180086315
mov rax, qword [r15 + 8]
inc r14d
mov r12d, r14d
cmp r12, qword [rax + 8]
jb 0x180086310
mov r12, qword [rsp + 0x50]
mov r9, qword [rsp + 0x48]
mov r10d, dword [rsp + 0x38]
inc r10d
mov dword [rsp + 0x38], r10d
cmp r10d, dword [rsp + 0x74]
jae case.0x1800862c8.110
mov rdi, qword [rbp - 0x80]
mov r14, qword [rsp + 0x68]
mov rdx, qword [rbp - 0x70]
jmp 0x1800862a0
mov r9, r14
mov qword [rsp + 0x40], 8
mov r8d, 0xfb
lea rdx, [rsp + 0x40]
lea rcx, [rbp - 0x78]
call fcn.18004c0d0
mov ecx, dword [r14]
mov edx, ecx
and edx, 0xff0000
mov dword [r14], 0
mov eax, ecx
shr eax, 0x10
or edx, eax
mov eax, ecx
shl eax, 0x10
and ecx, 0xff00
or eax, ecx
shr edx, 8
mov ecx, dword [r14 + 4]
shl eax, 8
or edx, eax
mov dword [r14 + 4], 0
mov dword [rbp - 0x58], edx
mov eax, ecx
shr eax, 0x10
mov edx, ecx
and edx, 0xff0000
or edx, eax
mov eax, ecx
shl eax, 0x10
and ecx, 0xff00
or eax, ecx
shr edx, 8
mov ecx, dword [r14 + 8]
shl eax, 8
or edx, eax
mov dword [r14 + 8], 0
mov dword [rbp - 0x54], edx
mov eax, ecx
shr eax, 0x10
mov edx, ecx
and edx, 0xff0000
or edx, eax
mov eax, ecx
shl eax, 0x10
and ecx, 0xff00
or eax, ecx
shr edx, 8
mov ecx, dword [r14 + 0xc]
shl eax, 8
or edx, eax
mov dword [r14 + 0xc], 0
mov dword [rbp - 0x50], edx
mov eax, ecx
shr eax, 0x10
mov edx, ecx
and edx, 0xff0000
or edx, eax
mov eax, ecx
shl eax, 0x10
and ecx, 0xff00
or eax, ecx
shr edx, 8
mov ecx, dword [r14 + 0x10]
shl eax, 8
or edx, eax
mov dword [r14 + 0x10], 0
mov dword [rbp - 0x4c], edx
mov eax, ecx
shr eax, 0x10
mov edx, ecx
and edx, 0xff0000
or edx, eax
mov eax, ecx
shl eax, 0x10
and ecx, 0xff00
or eax, ecx
shr edx, 8
shl eax, 8
or edx, eax
mov dword [rbp - 0x48], edx
mov ecx, dword [r14 + 0x14]
mov edx, ecx
mov r9, qword [rsp + 0x48]
and edx, 0xff0000
movups xmm0, xmmword [rbp - 0x58]
mov eax, ecx
mov dword [r14 + 0x14], 0
shr eax, 0x10
or edx, eax
mov eax, ecx
shl eax, 0x10
and ecx, 0xff00
or eax, ecx
shr edx, 8
mov ecx, dword [r14 + 0x18]
shl eax, 8
or edx, eax
mov dword [r14 + 0x18], 0
mov dword [rbp - 0x44], edx
mov eax, ecx
shr eax, 0x10
mov edx, ecx
and edx, 0xff0000
or edx, eax
mov eax, ecx
shl eax, 0x10
and ecx, 0xff00
or eax, ecx
shr edx, 8
mov ecx, dword [r14 + 0x1c]
shl eax, 8
or edx, eax
mov dword [r14 + 0x1c], 0
mov dword [rbp - 0x40], edx
mov eax, ecx
shr eax, 0x10
mov edx, ecx
and edx, 0xff0000
or edx, eax
mov eax, ecx
shl eax, 0x10
and ecx, 0xff00
or eax, ecx
shr edx, 8
shl eax, 8
or edx, eax
mov dword [rbp - 0x3c], edx
movups xmm1, xmmword [rbp - 0x48]
movups xmmword [r9], xmm0
movups xmmword [r9 + 0x10], xmm1
jmp 0x1800863b3
movaps xmm0, xmmword [0x1800a50e0]
movups xmmword [r14], xmm0
movaps xmm1, xmmword [0x1800a50f0]
movups xmmword [r14 + 0x10], xmm1
movaps xmm0, xmmword [0x1800a5100]
movups xmmword [r14 + 0x20], xmm0
movaps xmm1, xmmword [0x1800a5110]
xorps xmm0, xmm0
movups xmmword [r14 + 0x30], xmm1
movups xmmword [r14 + 0x50], xmm0
movups xmmword [r14 + 0x60], xmm0
movups xmmword [r14 + 0x70], xmm0
movups xmmword [r14 + 0x80], xmm0
movups xmmword [r14 + 0x90], xmm0
movups xmmword [r14 + 0xa0], xmm0
movups xmmword [r14 + 0xb0], xmm0
movups xmmword [r14 + 0xc0], xmm0
mov qword [r14 + 0x48], 0
mov qword [r14 + 0x40], 0
jmp case.0x1800862c8.117
mov qword [rbp - 0x30], 0x80
mov qword [rbp - 0x28], 0
movaps xmm0, xmmword [rbp - 0x30]
mov qword [rbp - 0x20], 0
mov qword [rbp - 0x18], 0
movaps xmm1, xmmword [rbp - 0x20]
movaps xmmword [0x1800c5e40], xmm0
movaps xmmword [0x1800c5e50], xmm1
mov qword [rbp - 0x10], 0
mov qword [rbp - 8], 0
movaps xmm0, xmmword [rbp - 0x10]
mov qword [rbp], 0
mov qword [rbp + 8], 0
movaps xmm1, xmmword [rbp]
movaps xmmword [0x1800c5e60], xmm0
movaps xmmword [0x1800c5e70], xmm1
jmp case.0x1800862c8.117
mov rax, qword [rsp + 0x78]
mov edi, 0x1b
mov r14d, dword [rax]
nop word [rax + rax]
mov eax, edi
sub eax, 0x1b
je 0x1800866d6
sub eax, 3
je 0x1800866c7
cmp eax, 1
je 0x1800863ae
jmp 0x1800866f0
mov rcx, qword [rsp + 0x58]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_CreateDirectoryA]
jmp 0x1800866f0
mov rdx, qword [rsp + 0x58]
lea rcx, [rsp + 0x40]
mov r8d, 0xf6
mov dword [rsp + 0x40], r14d
call fcn.180019d50
inc edi
cmp edi, 0x1e
jb 0x1800866b0
jmp 0x1800863ae
test r14, r14
jne case.0x1800862c8.117
movzx eax, bl
mov rcx, qword [rbp + 0x1010]
xor rcx, rsp
call fcn.1800a1820
mov rbx, qword [rsp + 0x1160]
add rsp, 0x1120
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov r8, r14
mov edx, 0x8a
mov rcx, r15
call fcn.180027690
mov rcx, qword [rsp + 0x48]
lea r8, [rbp - 0x68]
xor r9d, r9d
mov rax, qword [rcx + 8]
xor ecx, ecx
lea edx, [r9 + 0x27]
mov qword [rbp - 0x68], rax
call fcn.18002f2a0
mov qword [rsp + 0x50], rax
mov r12, rax
jmp 0x1800863ae
mov r9, rdx
mov qword [rsp + 0x40], 0x20
mov r8, rdx
mov ecx, 0xf5
lea rdx, [rsp + 0x40]
call fcn.180085e40
mov rcx, qword [rsp + 0x58]
lea rdx, [rsp + 0x30]
mov r8d, 0xd4
mov byte [rsp + 0x30], 1
call fcn.18003da40
jmp 0x1800863ae
mov r8d, 0xeb
mov rdx, r9
mov rcx, r12
call fcn.18000f5d0
jmp 0x1800863ae
xor r9d, r9d
mov qword [rbp - 0x60], 0x200
lea r8, [rbp - 0x60]
xor ecx, ecx
lea edx, [r9 + 0x27]
call fcn.18002f2a0
mov qword [rsp + 0x58], rax
xor r9d, r9d
mov rcx, qword [rsp + 0x58]
xor eax, eax
mov qword [rsp + 0x28], rax
mov r8, r15
mov qword [rsp + 0x20], rax
lea edx, [rax + 0x77]
call fcn.1800286c0
jmp 0x1800863ae
mov rcx, qword [r14 + 8]
mov eax, dword [rdi]
cmp rax, qword [rcx + 8]
jae 0x180086b78
xor edx, edx
mov byte [rsp + 0x3c], 1
lea ecx, [rdx + 0x29]
call fcn.180044c50
mov r15, rax
jmp 0x1800863ae
mov rdi, qword [rsp + 0x58]
lea rdx, [rsp + 0x40]
mov r8d, 0x68
lea rcx, [rbp + 0x10]
mov rax, qword [rdi + 8]
mov r9, qword [rdi]
mov qword [rsp + 0x40], rax
call fcn.18009d260
mov rax, qword [rdi + 8]
lea rdx, [rsp + 0x40]
mov r9, qword [rdi]
mov ecx, 0xf5
mov r8, qword [rbp - 0x70]
mov qword [rsp + 0x40], rax
call fcn.180085e40
jmp 0x1800863ae
mov eax, dword [r14 + 0xc0]
lea rdx, [rsp + 0x40]
mov rcx, 0xfffffffffffffff7
mov r9, r14
sub rcx, rax
mov r8d, 0xfb
and ecx, 0x3f
inc rcx
mov qword [rsp + 0x40], rcx
lea rcx, [0x1800c5e40]
call fcn.18004c0d0
jmp 0x1800863ae
mov rdx, qword [r14 + 0xc0]
mov rax, rdx
mov r8, rdx
shr rax, 0x35
mov r9, rdx
movzx ecx, al
mov rax, rdx
shr rax, 0x25
and eax, 0xff00
shr r9, 5
or ecx, eax
shr r8, 0x15
mov eax, r8d
and eax, 0xff0000
or ecx, eax
mov eax, r9d
and eax, 0xff000000
and r9d, 0xff00
or ecx, eax
movzx eax, r8b
mov dword [rbp - 0x78], ecx
mov rcx, rdx
shl rcx, 0xb
and ecx, 0xff0000
shl rdx, 0x1b
or ecx, edx
or ecx, eax
or ecx, r9d
mov r9, qword [rsp + 0x48]
mov dword [rbp - 0x74], ecx
jmp case.0x1800862c8.117
mov rcx, qword [rsp + 0x50]
lea rdx, [rsp + 0x30]
mov r8d, 0xd4
mov byte [rsp + 0x30], 1
call fcn.18003da40
mov rcx, qword [rsp + 0x78]
mov eax, dword [rcx]
and eax, 0x1f
cmp eax, 2
jne 0x180086a2e
mov rcx, qword [r15 + 0x10]
test rcx, rcx
je 0x18008696e
lea r9d, [rax + 0x53]
mov byte [rsp + 0x30], 1
lea r8, [rsp + 0x30]
xor edx, edx
call fcn.18009f810
xor eax, eax
mov qword [rsp + 0x40], 1
mov r9d, 0x10d
mov qword [rsp + 0x20], rax
lea r8, [rsp + 0x40]
xor ecx, ecx
lea rdx, [0x1800286a0]
call fcn.18009bee0
mov rcx, qword [r15 + 8]
xor edx, edx
mov qword [r15 + 0x10], rax
cmp qword [rcx + 8], rdx
jbe 0x1800869d2
xor r8d, r8d
nop word [rax + rax]
mov rax, qword [rcx]
mov r13, qword [rax + r8*8]
cmp edx, dword [rdi]
je 0x1800869c7
mov dword [r13 + 0x30], 0
mov rcx, qword [r15 + 8]
inc edx
mov r8d, edx
cmp r8, qword [rcx + 8]
jb 0x1800869b0
mov rax, qword [rsp + 0x78]
test byte [rax], 0x80
je 0x1800863a9
mov eax, dword [rdi]
test eax, eax
je 0x180086a0d
mov r8, qword [r15 + 8]
lea rdx, [rsp + 0x60]
mov r9d, 0xea
mov qword [rsp + 0x60], rax
lea rcx, [rsp + 0x40]
mov qword [rsp + 0x40], 0
call fcn.1800196e0
mov rdx, qword [r15 + 8]
lea r8, [rsp + 0x60]
mov ecx, 0xf8
mov qword [rsp + 0x60], 1
call fcn.18005e990
jmp 0x1800863a9
cmp eax, 3
jne 0x1800869d2
mov eax, 0x11f
mov dword [rsp + 0x40], eax
nop dword [rax]
sub eax, 0x11f
je 0x180086b17
sub eax, 0x1b
je 0x180086a97
cmp eax, 0x1b
jne 0x180086b42
mov rcx, qword [r15 + 8]
xor edx, edx
cmp qword [rcx + 8], rdx
jbe 0x180086b42
xor r8d, r8d
nop dword [rax]
mov rax, qword [rcx]
mov r13, qword [rax + r8*8]
cmp edx, dword [rdi]
je 0x180086a87
mov dword [r13 + 0x30], 0
mov rcx, qword [r15 + 8]
inc edx
mov r8d, edx
cmp r8, qword [rcx + 8]
jb 0x180086a70
jmp 0x180086b42
mov r12d, dword [rsp + 0x70]
test r12d, r12d
je 0x180086b42
xor r14d, r14d
nop dword [rax + rax]
mov edi, 0xb4
mov eax, edi
sub eax, 0xb3
je 0x180086ad0
cmp eax, 1
jne 0x180086afd
mov rax, qword [r15 + 0x10]
mov rcx, qword [rax]
mov rsi, qword [r14 + rcx]
jmp 0x180086afd
mov rcx, qword [rsi + 8]
mov qword [rsi], 0xffffffffffffffff
test rcx, rcx
je 0x180086afd
mov r8d, 0xd4
mov byte [rsp + 0x30], 1
lea rdx, [rsp + 0x30]
call fcn.18003da40
mov qword [rsi + 8], 0
dec edi
cmp edi, 0xb2
ja 0x180086ab5
add r14, 8
sub r12, 1
jne 0x180086ab0
mov rdi, qword [rbp - 0x80]
jmp 0x180086b42
mov r12d, dword [rdi]
mov rdx, qword [r15 + 0x10]
mov dword [rsp + 0x70], r12d
cmp r12, qword [rdx + 8]
jae 0x180086b5d
lea ecx, [r12 + 1]
mov qword [rsp + 0x60], rcx
lea r8, [rsp + 0x60]
mov ecx, 0xf8
call fcn.18005e990
mov eax, dword [rsp + 0x40]
add eax, 0x1b
mov dword [rsp + 0x40], eax
cmp eax, 0x170
jb 0x180086a40
jmp 0x1800869d2
mov r12, qword [rsp + 0x50]
xor al, al
mov r9, qword [rsp + 0x48]
mov byte [rsp + 0x3c], al
mov r10d, 0x6c
jmp case.0x1800862c8.117
xor al, al
jmp 0x180086708