Function at 0x18007d3f0
Capabilities:
Get disk information
Link many functions at runtime

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x800]
sub rsp, 0x900
mov qword [rsp + 0x60], 0xfffffffffffffffe
mov qword [rsp + 0x950], rbx
mov rax, qword [0x180134010]
xor rax, rsp
mov qword [rbp + 0x7f0], rax
mov rsi, rdx
mov qword [rsp + 0x28], rdx
mov r13, rcx
mov qword [rsp + 0x68], rcx
xor r15d, r15d
mov dword [rsp + 0x20], r15d
lea rcx, [rbp - 0x68]
call fcn.180005ed4
nop
test rsi, rsi
jne 0x18007d465
lea rdx, [rbp - 0x68]
mov rcx, r13
call fcn.180005e40
jmp 0x18007d8e3
lea rdx, str.Kernel32.dll
lea rcx, [rsp + 0x70]
call fcn.180005e8c
nop
call fcn.18007ee20
mov rcx, rax
lea rdx, [rsp + 0x70]
call fcn.18007eec0
mov rdi, rax
mov qword [rsp + 0x38], rax
lea rcx, [rsp + 0x70]
call fcn.180005e38
lea rdx, str.Psapi.dll
lea rcx, [rsp + 0x40]
call fcn.180005e8c
nop
call fcn.18007ee20
mov rcx, rax
lea rdx, [rsp + 0x40]
call fcn.18007eec0
mov r14, rax
mov qword [rsp + 0x30], rax
lea rcx, [rsp + 0x40]
call fcn.180005e38
test r14, r14
je 0x18007d8d7
test rdi, rdi
je 0x18007d8d7
lea rcx, [rbp - 0x10]
call fcn.18006f5b0
cmp dword [rbp - 0xc], 6
jb 0x18007d56d
lea rdx, str.QueryFullProcessImageNameW
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rbx, rax
test rax, rax
je 0x18007d56d
xor edx, edx
mov r8d, 0x412
lea rcx, [rbp - 0x10]
call fcn.1800ab190
mov dword [rbp - 0x70], 0x208
lea r9, [rbp - 0x70]
lea r8, [rbp - 0x10]
xor edx, edx
mov rcx, rsi
call rbx
test eax, eax
je 0x18007d56d
mov eax, dword [rbp - 0x70]
cmp eax, 0x208
jae 0x18007d554
add rax, rax
cmp rax, 0x412
jae 0x18007d92d
mov word [rbp + rax - 0x10], r15w
lea rcx, [rbp - 0x10]
call fcn.1800060dc
mov r8, rax
lea rdx, [rbp - 0x10]
lea rcx, [rbp - 0x68]
call fcn.180005f68
lea rcx, [rbp - 0x68]
call fcn.180005dfc
test al, al
je 0x18007d813
lea rdx, str.GetProcessImageFileNameW
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rbx, rax
test rax, rax
jne 0x18007d5ae
lea rdx, str.GetProcessImageFileNameW
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rbx, rax
test rax, rax
je 0x18007d60c
xor edx, edx
mov r8d, 0x412
lea rcx, [rbp - 0x10]
call fcn.1800ab190
mov r8d, 0x208
lea rdx, [rbp - 0x10]
mov rcx, rsi
call rbx
lea ecx, [rax - 1]
cmp ecx, 0x206
ja 0x18007d60c
mov eax, eax
add rax, rax
cmp rax, 0x412
jae 0x18007d921
xor ebx, ebx
mov word [rbp + rax - 0x10], bx
lea rcx, [rbp - 0x10]
call fcn.1800060dc
mov r8, rax
lea rdx, [rbp - 0x10]
lea rcx, [rbp - 0x68]
call fcn.180005f68
jmp 0x18007d60e
xor ebx, ebx
lea rcx, [rbp - 0x68]
call fcn.180005dfc
test al, al
jne 0x18007d810
mov ecx, 0x410
call fcn.1800a7f04
mov rdi, rax
xor edx, edx
mov r8d, 0x410
mov rcx, rax
call fcn.1800ab190
mov edx, 0x18
lea rcx, [rbp - 0x48]
call fcn.180008820
lea rcx, [rbp - 0x48]
call fcn.180006860
nop
lea rdx, [rbp - 0x10]
mov ecx, 0x3fe
call qword [sym.imp.KERNEL32.dll_GetLogicalDriveStringsW]
test eax, eax
je 0x18007d677
mov r8d, eax
lea rdx, [rbp - 0x10]
lea rcx, [rbp - 0x48]
call fcn.18008c020
mov r12, rbx
lea rcx, [rbp - 0x48]
call fcn.180007510
test rax, rax
je 0x18007d7f9
lea rcx, [rbp - 0x48]
call fcn.180005ef0
mov qword [rbp - 0x70], rax
mov r15, rbx
nop dword [rax]
mov rsi, qword [rax]
add rsi, r15
mov rcx, rsi
call fcn.180005f60
cmp rax, 3
jb 0x18007d6e0
mov rcx, rsi
call fcn.180005ef0
mov rcx, rax
mov rdx, qword [rax + 0x18]
cmp rdx, 8
jb 0x18007d6cc
mov rcx, qword [rax]
cmp word [rcx + 4], 0x5c
jne 0x18007d6e0
cmp rdx, 8
jb 0x18007d6dc
mov rax, qword [rax]
mov word [rax + 4], bx
mov rcx, rsi
call fcn.1800061dc
mov rcx, rax
mov r8d, 0x208
mov rdx, rdi
call qword [sym.imp.KERNEL32.dll_QueryDosDeviceW]
test eax, eax
jne 0x18007d701
mov word [rdi], bx
mov rbx, 0xffffffffffffffff
nop dword [rax + rax]
inc rbx
cmp word [rdi + rbx*2], 0
jne 0x18007d710
test ebx, ebx
je 0x18007d74a
mov r14d, ebx
lea rcx, [rbp - 0x68]
call fcn.180005f60
cmp r14, rax
jae 0x18007d74a
lea rcx, [rbp - 0x68]
call fcn.1800061dc
mov rcx, rax
mov r8d, r14d
mov rdx, rdi
call fcn.1800b624c
test eax, eax
je 0x18007d76e
inc r12
add r15, 0x20
lea rcx, [rbp - 0x48]
call fcn.180007510
cmp r12, rax
jae 0x18007d7ef
mov rax, qword [rbp - 0x70]
xor ebx, ebx
jmp 0x18007d6a0
lea rcx, [rbp - 0x30]
call fcn.180005ed4
nop
lea rcx, [rbp - 0x68]
call fcn.1800061dc
mov ecx, ebx
lea rbx, [rax + rcx*2]
mov rcx, rsi
call fcn.1800061dc
mov r8, rax
mov r9, rbx
lea rdx, str._s_s
lea rcx, [rbp - 0x30]
call fcn.18006e3a0
lea rcx, [rbp - 0x68]
call fcn.180005ef0
mov rcx, rax
call fcn.180005ef0
mov rbx, rax
lea rcx, [rbp - 0x30]
call fcn.180005ef0
mov rcx, rax
call fcn.180005ef0
movups xmm2, xmmword [rbx]
movups xmm3, xmmword [rbx + 0x10]
movups xmm0, xmmword [rax]
movups xmmword [rbx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbx + 0x10], xmm1
movups xmmword [rax], xmm2
movups xmmword [rax + 0x10], xmm3
lea rcx, [rbp - 0x30]
call fcn.180005e38
mov r14, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x28]
mov rcx, rdi
call fcn.1800a73a4
nop
lea rcx, [rbp - 0x48]
call fcn.180006850
mov rdi, qword [rsp + 0x38]
xor r15d, r15d
lea rcx, [rbp - 0x68]
call fcn.180005dfc
test al, al
je 0x18007d8b1
lea rdx, str.GetModuleFileNameExW
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rbx, rax
test rax, rax
jne 0x18007d854
lea rdx, str.GetModuleFileNameExW
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rbx, rax
test rax, rax
je 0x18007d8b1
xor edx, edx
mov r8d, 0x412
lea rcx, [rbp - 0x10]
call fcn.1800ab190
mov r9d, 0x208
lea r8, [rbp - 0x10]
xor edx, edx
mov rcx, rsi
call rbx
lea ecx, [rax - 1]
cmp ecx, 0x206
ja 0x18007d8b1
mov eax, eax
add rax, rax
cmp rax, 0x412
jae 0x18007d927
mov word [rbp + rax - 0x10], r15w
lea rcx, [rbp - 0x10]
call fcn.1800060dc
mov r8, rax
lea rdx, [rbp - 0x10]
lea rcx, [rbp - 0x68]
call fcn.180005f68
lea rdx, [rbp - 0x68]
lea rcx, [rsp + 0x40]
call fcn.180070390
nop
mov rdx, rax
lea rcx, [rbp - 0x68]
call fcn.180006900
nop
lea rcx, [rsp + 0x40]
call fcn.180005e38
lea rdx, [rbp - 0x68]
mov rcx, r13
call fcn.180005e40
mov dword [rsp + 0x20], 1
lea rcx, [rbp - 0x68]
call fcn.180005e38
mov rax, r13
mov rcx, qword [rbp + 0x7f0]
xor rcx, rsp
call fcn.1800a7380
mov rbx, qword [rsp + 0x950]
add rsp, 0x900
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.1800a74bc
int3
call fcn.1800a74bc
int3
call fcn.1800a74bc
int3