Function at 0x140083620
Capabilities:
Get disk information

Disassembly:
mov rax, rsp
mov qword [rax + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x48]
sub rsp, 0x108
movaps xmmword [rax - 0x58], xmm6
movaps xmmword [rax - 0x68], xmm7
xor edi, edi
mov dword [rbp + 0x58], edi
xorps xmm0, xmm0
movups xmmword [rsp + 0x40], xmm0
mov qword [rsp + 0x50], rdi
mov qword [rsp + 0x58], reloc.WS2_32.dll_ntohs
mov byte [rsp + 0x40], dil
movups xmmword [rbp - 0x60], xmm0
mov qword [rbp - 0x50], rdi
mov qword [rbp - 0x48], reloc.WS2_32.dll_ntohs
mov byte [rbp - 0x60], dil
movups xmmword [rbp - 0x40], xmm0
movdqa xmm1, xmmword [0x1401377c0]
movdqu xmmword [rbp - 0x30], xmm1
mov byte [rbp - 0x40], dil
mov qword [rsp + 0x60], rdi
mov dword [rsp + 0x68], edi
xor eax, eax
xor ecx, ecx
cpuid
mov dword [rsp + 0x6c], edx
lea eax, [rax + rax*4]
lea edx, [rbx + rax*2]
lea eax, [rdx + rdx*4]
lea ecx, [rcx + rax*2]
lea ecx, [rcx*2 + 0xf8]
lea r9, [rsp + 0x75]
test ecx, ecx
jns 0x1400836f0
neg ecx
dec r9
mov eax, 0xcccccccd
mul ecx
shr edx, 3
movzx eax, dl
shl al, 2
lea ebx, [rax + rdx]
add bl, bl
sub cl, bl
add cl, 0x30
mov byte [r9], cl
mov ecx, edx
test edx, edx
jne 0x1400836c0
dec r9
mov byte [r9], 0x2d
jmp 0x140083716
dec r9
mov eax, 0xcccccccd
mul ecx
shr edx, 3
movzx eax, dl
shl al, 2
lea ebx, [rax + rdx]
add bl, bl
sub cl, bl
add cl, 0x30
mov byte [r9], cl
mov ecx, edx
test edx, edx
jne 0x1400836f0
lea r8, [rsp + 0x75]
mov rdx, r9
lea rcx, [rsp + 0x78]
call fcn.14008be20
movups xmm7, xmmword [rsp + 0x78]
movups xmmword [rbp - 0x60], xmm7
movups xmm6, xmmword [rbp - 0x78]
movups xmmword [rbp - 0x50], xmm6
mov edx, 8
mov rax, qword gs:[0x58]
mov rcx, qword [rax]
mov eax, dword [rdx + rcx]
cmp dword [0x140272330], eax
jle 0x140083793
lea rcx, [0x140272330]
call fcn.1400c6f30
cmp dword [0x140272330], 0xffffffff
jne 0x140083793
mov dword [0x1402733b4], 0x101146d
mov byte [0x1402733b8], 0x2e
lea rcx, [0x140106800]
call fcn.1400c72a0
lea rcx, [0x140272330]
call fcn.1400c6ec4
movzx eax, byte [0x1402733b8]
test al, al
je 0x1400837c2
xor byte [0x1402733b4], 0x2e
xor byte [0x1402733b5], 0x2e
xor byte [0x1402733b6], 0x2e
xor byte [0x1402733b7], 0x2e
xor al, 0x2e
mov byte [0x1402733b8], al
mov dword [rsp + 0x38], edi
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], rdi
lea r9, [rbp + 0x58]
xor r8d, r8d
xor edx, edx
lea rcx, [0x1402733b4]
call qword [sym.imp.KERNEL32.dll_GetVolumeInformationA]
lea r9, [rsp + 0x75]
mov ebx, dword [rbp + 0x58]
nop dword [rax]
nop word [rax + rax]
dec r9
mov eax, 0xcccccccd
mul ebx
shr edx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub bl, cl
add bl, 0x30
mov byte [r9], bl
mov ebx, edx
test edx, edx
jne 0x140083800
lea r8, [rsp + 0x75]
mov rdx, r9
lea rcx, [rsp + 0x78]
call fcn.14008be20
movups xmm1, xmmword [rsp + 0x78]
movups xmmword [rsp + 0x40], xmm1
movups xmm0, xmmword [rbp - 0x78]
movups xmmword [rsp + 0x50], xmm0
movq rdx, xmm0
dec rdx
mov qword [rsp + 0x50], rdx
lea rcx, [rsp + 0x40]
movq rax, xmm1
cmp qword [rsp + 0x58], 0xf
cmova rcx, rax
mov byte [rcx + rdx], bl
mov rcx, qword [rsp + 0x50]
dec rcx
mov qword [rsp + 0x50], rcx
lea rax, [rsp + 0x40]
cmp qword [rsp + 0x58], 0xf
cmova rax, qword [rsp + 0x40]
mov byte [rax + rcx], bl
movabs r8, 0x7fffffffffffffff
mov rax, r8
movq rdx, xmm6
mov qword [rbp + 0x60], rdx
sub rax, rdx
mov rbx, qword [rsp + 0x50]
cmp rax, rbx
jb 0x140083ada
lea rax, [rbp - 0x60]
movq r14, xmm7
psrldq xmm6, 8
movq r15, xmm6
cmp r15, 0xf
cmova rax, r14
mov qword [rbp + 0x68], rax
lea rcx, [rsp + 0x40]
mov rsi, qword [rsp + 0x40]
mov r13, qword [rsp + 0x58]
cmp r13, 0xf
cmova rcx, rsi
mov qword [rsp + 0x60], rcx
xorps xmm0, xmm0
movups xmmword [rsp + 0x78], xmm0
lea r12, [rdx + rbx]
mov ebx, reloc.WS2_32.dll_ntohs
lea rdi, [rsp + 0x78]
cmp r12, rbx
jbe 0x140083993
mov rbx, r12
or rbx, 0xf
cmp rbx, r8
jbe 0x14008394d
mov rbx, r8
movabs rax, 0x8000000000000000
add rax, 0x27
mov rcx, rax
call fcn.1400c7330
test rax, rax
je 0x140083ae0
lea rdi, [rax + 0x27]
and rdi, 0xffffffffffffffe0
mov qword [rdi - 8], rax
jmp 0x140083986
mov ecx, socket
cmp rbx, rcx
cmovb rbx, rcx
lea rcx, [rbx + 1]
test rcx, rcx
jne 0x140083966
xor edi, edi
jmp 0x14008398e
cmp rcx, 0x1000
jb 0x14008397e
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140083ad4
jmp 0x14008392e
call fcn.1400c7330
mov rdi, rax
mov rdx, qword [rbp + 0x60]
mov rax, qword [rbp + 0x68]
mov qword [rsp + 0x78], rdi
mov qword [rbp - 0x78], r12
mov qword [rbp - 0x70], rbx
mov r8, rdx
mov rdx, rax
mov rcx, rdi
call fcn.140101b90
mov rcx, qword [rbp + 0x60]
add rcx, rdi
mov r8, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x60]
call fcn.140101b90
mov byte [rdi + r12], 0
movups xmm0, xmmword [rsp + 0x78]
movups xmmword [rbp - 0x40], xmm0
movups xmm1, xmmword [rbp - 0x78]
movdqu xmmword [rbp - 0x30], xmm1
lea rdx, [rbp - 0x40]
movq rbx, xmm0
psrldq xmm1, 8
movq rdi, xmm1
cmp rdi, 0xf
cmova rdx, rbx
mov r8d, reloc.WS2_32.dll_ntohs
mov r12, qword [rbp + 0x50]
mov rcx, r12
call fcn.140083b00
nop
cmp rdi, 0xf
jbe 0x140083a3c
lea rdx, [rdi + 1]
mov rax, rbx
cmp rdx, 0x1000
jb 0x140083a33
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140083ae6
mov rcx, rbx
call fcn.1400c72b8
nop
cmp r15, 0xf
jbe 0x140083a74
lea rdx, [r15 + 1]
mov rax, r14
cmp rdx, 0x1000
jb 0x140083a6b
add rdx, 0x27
mov r14, qword [r14 - 8]
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140083aec
mov rcx, r14
call fcn.1400c72b8
nop
cmp r13, 0xf
jbe 0x140083aa7
lea rdx, [r13 + 1]
mov rax, rsi
cmp rdx, 0x1000
jb 0x140083a9f
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140083ace
mov rcx, rsi
call fcn.1400c72b8
mov rax, r12
movaps xmm6, xmmword [rsp + 0xf0]
movaps xmm7, xmmword [rsp + 0xe0]
add rsp, 0x108
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.1400e16e0
nop
call fcn.14004d5f0
nop
call fcn.14004d690
int3
call fcn.1400e16e0
nop
call fcn.1400e16e0
nop
call fcn.1400e16e0
int3