Function at 0x1400128a0
Capabilities:
Get disk size
Get memory capacity
Resolve function by parsing pe exports

Disassembly:
test rcx, rcx
je 0x140012bfa
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0xc0
mov ebx, r8d
mov rsi, rdx
mov rdi, rcx
test rdx, rdx
je 0x1400128f2
test ebx, ebx
je 0x1400128f2
mov edx, ebx
mov rcx, rsi
call fcn.140012c10
mov rdx, rsi
lea rcx, [rsp + 0x30]
mov r8d, ebx
cmp ebx, 0x28
jb 0x1400128ed
mov r8d, 0x28
call fcn.14000a048
lea rcx, [rsp + 0x30]
call qword [sym.imp.USER32.dll_GetCursorPos]
lea rcx, [rsp + 0x30]
mov edx, 0x28
call fcn.140012c10
call qword [sym.imp.KERNEL32.dll_GetCurrentThread]
lea r9, [rsp + 0x78]
mov rcx, rax
lea rax, [rsp + 0x80]
lea r8, [rsp + 0x70]
lea rdx, [rsp + 0xe8]
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_GetThreadTimes]
mov eax, dword [rsp + 0xec]
mov r11d, dword [rsp + 0xe8]
xor dword [rsp + 0x34], eax
mov eax, dword [rsp + 0x70]
xor dword [rsp + 0x30], r11d
xor dword [rsp + 0x38], eax
mov eax, dword [rsp + 0x74]
lea rcx, [rsp + 0x30]
xor dword [rsp + 0x3c], eax
mov edx, 0x28
call fcn.140012c10
mov eax, dword [rsp + 0x7c]
mov r11d, dword [rsp + 0x78]
xor dword [rsp + 0x34], eax
mov eax, dword [rsp + 0x80]
xor dword [rsp + 0x30], r11d
xor dword [rsp + 0x38], eax
mov eax, dword [rsp + 0x84]
lea rcx, [rsp + 0x30]
xor dword [rsp + 0x3c], eax
mov edx, 0x28
call fcn.140012c10
call qword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
xor dword [rsp + 0x30], eax
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
lea rcx, [rsp + 0x30]
xor dword [rsp + 0x34], eax
mov edx, 0x28
call fcn.140012c10
lea r9, [rsp + 0x68]
lea r8, [rsp + 0x60]
lea rdx, [rsp + 0x58]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetDiskFreeSpaceExW]
mov eax, dword [rsp + 0x5c]
mov r11d, dword [rsp + 0x58]
xor dword [rsp + 0x34], eax
mov eax, dword [rsp + 0x60]
xor dword [rsp + 0x30], r11d
xor dword [rsp + 0x38], eax
mov eax, dword [rsp + 0x64]
lea rcx, [rsp + 0x30]
xor dword [rsp + 0x3c], eax
mov eax, dword [rsp + 0x68]
mov edx, 0x28
xor dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x6c]
xor dword [rsp + 0x44], eax
call fcn.140012c10
lea rcx, [rsp + 0x88]
call qword [sym.imp.KERNEL32.dll_GlobalMemoryStatus]
mov eax, dword [rsp + 0x90]
mov r11d, dword [rsp + 0x8c]
xor dword [rsp + 0x34], eax
mov eax, dword [rsp + 0x98]
xor dword [rsp + 0x30], r11d
xor dword [rsp + 0x38], eax
mov eax, dword [rsp + 0xa8]
lea rcx, [rsp + 0x30]
xor dword [rsp + 0x3c], eax
mov eax, dword [rsp + 0xb8]
mov edx, 0x28
xor dword [rsp + 0x40], eax
call fcn.140012c10
call qword [sym.imp.KERNEL32.dll_GetTickCount]
xor dword [rsp + 0x30], eax
mov edx, 0x28
lea rcx, [rsp + 0x30]
call fcn.140012c10
lea rcx, [rsp + 0xd0]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov r11d, dword [rsp + 0xd0]
mov eax, dword [rsp + 0xd4]
xor dword [rsp + 0x30], r11d
xor dword [rsp + 0x34], eax
lea rcx, [rsp + 0x30]
mov edx, 0x28
call fcn.140012c10
lea rcx, [rsp + 0xd0]
call qword [sym.imp.KERNEL32.dll_GetSystemTimeAsFileTime]
mov r11d, dword [rsp + 0xd0]
mov eax, dword [rsp + 0xd4]
xor dword [rsp + 0x30], r11d
xor dword [rsp + 0x34], eax
lea rcx, [rsp + 0x30]
mov edx, 0x28
call fcn.140012c10
mov ebx, 8
lea rcx, [rsp + 0x30]
mov edx, 0x28
call fcn.140012c10
sub rbx, 1
jne 0x140012b01
xor edx, edx
lea rbx, [rsp + 0x30]
lea r10, [rsp + 0x41]
sub rbx, rdi
lea r9, [rdi + 0x13]
lea r11d, [rdx + 4]
nop dword [rax]
movzx eax, byte [r9]
movzx ecx, byte [rbx + r9]
movzx r8d, byte [r10 + 1]
add edx, eax
movzx eax, byte [r9 - 1]
sub r9, 5
add edx, ecx
movzx ecx, byte [r10 - 1]
sub r10, 5
mov byte [r9 + 5], dl
shr edx, 8
add r8d, edx
movzx edx, byte [r10 + 3]
add r8d, eax
movzx eax, byte [r10 + 5]
mov byte [r9 + 4], r8b
shr r8d, 8
add r8d, eax
movzx eax, byte [r9 + 3]
add r8d, eax
movzx eax, byte [r9 + 2]
mov byte [r9 + 3], r8b
shr r8d, 8
add ecx, r8d
add ecx, eax
movzx eax, byte [r9 + 1]
mov byte [r9 + 2], cl
shr ecx, 8
add edx, ecx
add edx, eax
mov byte [r9 + 1], dl
shr edx, 8
sub r11, 1
jne 0x140012b30
lea r8d, [r11 + 0x14]
lea rcx, [rdi + 0x18]
mov rdx, rdi
mov dword [rdi + 0x14], 0x14
mov dword [rdi + 0x2c], r11d
call fcn.14000a048
lea rcx, [rdi + 0x18]
mov edx, 0x14
call fcn.140012c10
xor edx, edx
lea rcx, [rsp + 0x30]
lea r8d, [rdx + 0x28]
call fcn.14000a068
lea r11, [rsp + 0xc0]
mov rbx, qword [r11 + 0x18]
mov rsi, qword [r11 + 0x20]
mov rsp, r11
pop rdi
repz ret