Function at 0x140066ef0
Capabilities:
Encode data using xor
Get disk information

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r14
push r15
lea rbp, [rsp - 0x10]
sub rsp, 0x110
mov rax, qword [0x14017b4c0]
xor rax, rsp
mov qword [rbp + 8], rax
xor ebx, ebx
mov dword [rbp - 0x20], ebx
cmp qword [rcx + 0x18], 0xf
jbe 0x140066f2d
mov rcx, qword [rcx]
mov dword [rsp + 0x38], ebx
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rbx
lea r9, [rbp - 0x20]
xor r8d, r8d
xor edx, edx
call qword [sym.imp.KERNEL32.dll_GetVolumeInformationA]
test eax, eax
jne 0x140066f5a
xor eax, eax
jmp 0x1400673d9
call qword [sym.imp.KERNEL32.dll_IsDebuggerPresent]
mov ecx, ebx
test eax, eax
setne cl
mov edx, dword [rbp - 0x20]
add edx, ecx
mov dword [rbp - 0x20], edx
mov eax, ebx
mov ecx, reloc.WLDAP32.dll_Ordinal_50
mov r8, qword [0x140188988]
cmp qword [r8 + 0x30], rax
cmove eax, ecx
add edx, eax
mov dword [rbp - 0x20], edx
mov rax, qword [r8 + 0x10]
neg rax
sbb ecx, ecx
neg ecx
lea eax, [rcx - 1]
add eax, edx
mov dword [rbp - 0x20], eax
lea rcx, [r8 + 0x20]
mov rdx, qword [r8 + 0x10]
mov r10, qword [rcx + 0x10]
movabs rax, 0x7fffffffffffffff
sub rax, rdx
cmp rax, r10
jb 0x140067408
mov r9, r8
cmp qword [r8 + 0x18], 0xf
jbe 0x140066fcb
mov r9, qword [r8]
cmp qword [rcx + 0x18], 0xf
jbe 0x140066fd5
mov rcx, qword [rcx]
mov qword [rsp + 0x30], r10
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rdx
movzx edx, byte [rsp + 0x40]
lea rcx, [rbp - 0x80]
call fcn.140012da0
nop
lea r9, [rbp - 0x80]
mov rdi, qword [rbp - 0x80]
mov r14, qword [rbp - 0x68]
cmp r14, 0xf
cmova r9, rdi
mov rcx, rbx
mov rdx, rbx
mov r8, qword [rbp - 0x70]
test r8, r8
je 0x140067041
nop word [rax + rax]
movsx rax, byte [rdx + r9]
add rax, rcx
imul rcx, rax, 0x401
mov rax, rcx
shr rax, 6
xor rcx, rax
inc rdx
cmp rdx, r8
jb 0x140067020
lea rax, [rcx + rcx*8]
mov rcx, rax
shr rcx, 0xb
xor rcx, rax
imul rax, rcx, 0x8001
movabs r15, 0x5851f42d4c957f2d
test rax, rax
jne 0x14006706e
imul r8, r15
inc r8
jmp 0x140067071
mov r8, rax
mov rax, qword [0x140188988]
sub r8, qword [rax + 0x40]
cmp byte [rax + 0x48], 0
sete al
lea rcx, [0x14015bac4]
mov qword [rsp + 0x60], rcx
mov qword [rsp + 0x68], 5
mov byte [rbp - 0x30], al
movabs rax, 0x5000000000000000
mov qword [rbp - 0x40], rax
mov qword [rbp - 0x2f], r8
movabs rax, 0x4000000000000001
mov qword [rbp - 0x38], rax
mov qword [rsp + 0x50], 2
lea rax, [rbp - 0x40]
mov qword [rsp + 0x58], rax
movaps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x70], xmm0
movaps xmm1, xmmword [rsp + 0x60]
movdqa xmmword [rsp + 0x60], xmm1
lea r8, [rsp + 0x70]
lea rdx, [rsp + 0x60]
lea rcx, [rbp - 0x60]
call fcn.14000fd40
lea r9, [rbp - 0x60]
mov r10, qword [rbp - 0x60]
mov r11, qword [rbp - 0x48]
cmp r11, 0xf
cmova r9, r10
mov rcx, rbx
mov rdx, rbx
mov r8, qword [rbp - 0x50]
test r8, r8
je 0x140067141
nop dword [rax]
movsx rax, byte [rdx + r9]
add rax, rcx
imul rcx, rax, 0x401
mov rax, rcx
shr rax, 6
xor rcx, rax
inc rdx
cmp rdx, r8
jb 0x140067120
lea rax, [rcx + rcx*8]
mov rcx, rax
shr rcx, 0xb
xor rcx, rax
imul rax, rcx, 0x8001
test rax, rax
jne 0x140067164
imul r8, r15
inc r8
jmp 0x140067167
mov r8, rax
mov esi, ebx
mov ecx, gethostname
mov rax, qword [0x1401888c8]
cmp qword [rax + 8], r8
cmovne esi, ecx
cmp r11, 0xf
jbe 0x1400671b3
lea rdx, [r11 + 1]
mov rax, r10
cmp rdx, 0x1000
jb 0x1400671ab
add rdx, 0x27
mov r10, qword [r10 - 8]
sub rax, r10
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14006740e
mov rcx, r10
call fcn.1400ce56c
movdqa xmm0, xmmword [0x14015cbe0]
movdqu xmmword [rbp - 0x50], xmm0
mov byte [rbp - 0x60], 0
cmp r14, 0xf
jbe 0x1400671fb
lea rdx, [r14 + 1]
mov rax, rdi
cmp rdx, 0x1000
jb 0x1400671f3
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140067414
mov rcx, rdi
call fcn.1400ce56c
mov ecx, dword [rbp - 0x20]
add ecx, esi
lea r14, str.:08X
mov qword [rsp + 0x70], r14
mov qword [rsp + 0x78], 6
mov dword [rsp + 0x68], ecx
movabs rdi, 0x2000000000000000
mov qword [rsp + 0x60], rdi
mov qword [rsp + 0x50], 1
lea rax, [rsp + 0x60]
mov qword [rsp + 0x58], rax
movaps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x50], xmm0
movaps xmm1, xmmword [rsp + 0x70]
movdqa xmmword [rsp + 0x70], xmm1
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x70]
lea rcx, [rbp - 0x18]
call fcn.14000fd40
nop
mov rcx, qword [rbp - 8]
add rcx, 0xfffffffffffffffb
movabs rax, 0x393d93bf10c8e35b
imul rcx, rax
xor edx, edx
mov rax, qword [0x1401888c8]
mov rax, qword [rax + 0x18]
div rcx
mov ecx, dword [rbp - 0x20]
imul ecx, eax
mov dword [rbp - 0x20], ecx
lea eax, [rcx + rsi]
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], 6
mov dword [rsp + 0x78], eax
mov qword [rsp + 0x70], rdi
mov qword [rsp + 0x60], 1
lea rax, [rsp + 0x70]
mov qword [rsp + 0x68], rax
movaps xmm0, xmmword [rsp + 0x60]
movdqa xmmword [rsp + 0x60], xmm0
movaps xmm1, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x50], xmm1
lea r8, [rsp + 0x60]
lea rdx, [rsp + 0x50]
lea rcx, [rbp - 0x80]
call fcn.14000fd40
lea rdx, [rbp - 0x80]
mov r8, qword [rbp - 0x80]
mov r9, qword [rbp - 0x68]
cmp r9, 0xf
cmova rdx, r8
mov rcx, rbx
mov rdi, qword [rbp - 0x70]
test rdi, rdi
je 0x140067331
nop word [rax + rax]
movsx rax, byte [rcx + rdx]
add rax, rbx
imul rbx, rax, 0x401
mov rax, rbx
shr rax, 6
xor rbx, rax
inc rcx
cmp rcx, rdi
jb 0x140067310
lea rax, [rbx + rbx*8]
mov rcx, rax
shr rcx, 0xb
xor rcx, rax
imul rax, rcx, 0x8001
test rax, rax
jne 0x140067354
imul rdi, r15
inc rdi
jmp 0x140067357
mov rdi, rax
cmp r9, 0xf
jbe 0x14006738e
lea rdx, [r9 + 1]
mov rax, r8
cmp rdx, 0x1000
jb 0x140067386
add rdx, 0x27
mov r8, qword [r8 - 8]
sub rax, r8
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14006741a
mov rcx, r8
call fcn.1400ce56c
movdqa xmm0, xmmword [0x14015cbe0]
movdqu xmmword [rbp - 0x70], xmm0
mov byte [rbp - 0x80], 0
mov rdx, qword [rbp]
cmp rdx, 0xf
jbe 0x1400673d6
inc rdx
mov rcx, qword [rbp - 0x18]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400673d1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140067402
call fcn.1400ce56c
mov rax, rdi
mov rcx, qword [rbp + 8]
xor rcx, rsp
call fcn.1400ce1f0
lea r11, [rsp + 0x110]
mov rbx, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
mov rdi, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rbp
ret
call fcn.1400e1a34
int3
call fcn.140002530
nop
call fcn.1400e1a34
nop
call fcn.1400e1a34
nop
call fcn.1400e1a34
int3