Function at 0x14019d570
Capabilities:
Get memory capacity

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x37]
sub rsp, 0xe0
mov rax, qword [0x1404779b8]
xor rax, rsp
mov qword [rbp + 0x2f], rax
mov rbx, rdx
mov qword [rsp + 0x28], rdx
xor esi, esi
mov dword [rsp + 0x20], esi
mov qword [rdx], rsi
mov qword [rdx + 0x10], rsi
mov edi, SafeArrayGetLBound
mov qword [rdx + 0x18], rdi
mov byte [rdx], sil
mov dword [rsp + 0x20], 1
mov qword [rbp - 0x51], rsi
mov qword [rbp - 0x41], rsi
mov qword [rbp - 0x39], rdi
mov byte [rbp - 0x51], sil
mov dword [rbp - 0x29], 0x40
lea rcx, [rbp - 0x29]
call qword [sym.imp.KERNEL32.dll_GlobalMemoryStatusEx]
lea r9, [rbp + 0x2c]
mov rcx, qword [rbp - 0x21]
movabs r10, 0xcccccccccccccccd
nop
dec r9
mov rax, r10
mul rcx
mov r8, rdx
shr r8, 3
movzx eax, r8b
shl al, 2
lea edx, [rax + r8]
add dl, dl
sub cl, dl
add cl, 0x30
mov byte [r9], cl
mov rcx, r8
test r8, r8
jne 0x14019d600
mov rcx, rsi
mov qword [rbp - 0x71], rcx
mov qword [rbp - 0x61], rsi
mov rax, rdi
mov qword [rbp - 0x59], rax
lea rdx, [rbp + 0x2c]
cmp r9, rdx
je 0x14019d663
lea r8, [rbp + 0x2c]
sub r8, r9
mov rdx, r9
lea rcx, [rbp - 0x71]
call fcn.140101ee0
mov rax, qword [rbp - 0x59]
mov rcx, qword [rbp - 0x71]
mov dword [rsp + 0x20], 7
lea rdx, [rbp - 0x71]
cmp rbx, rdx
je 0x14019d6c2
mov rdx, qword [rbx + 0x18]
cmp rdx, 0x10
jb 0x14019d6ae
mov rcx, qword [rbx]
inc rdx
cmp rdx, 0x1000
jb 0x14019d6a9
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14019d8c8
mov rcx, r8
call fcn.14021ecec
mov byte [rbx], 0
movups xmm0, xmmword [rbp - 0x71]
movups xmmword [rbx], xmm0
movups xmm1, xmmword [rbp - 0x61]
movups xmmword [rbx + 0x10], xmm1
jmp 0x14019d6f6
cmp rax, 0x10
jb 0x14019d6f6
lea rdx, [rax + 1]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14019d6f1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14019d8c8
call fcn.14021ecec
mov r13, qword [rbx + 0x10]
movabs rcx, 0x7fffffffffffffff
mov rax, rcx
sub rax, r13
cmp rax, 0x37
jb 0x14019d8ce
mov r12, rbx
cmp qword [rbx + 0x18], 0x10
jb 0x14019d721
mov r12, qword [rbx]
mov qword [rbp - 0x71], rsi
lea r15, [r13 + 0x37]
mov rsi, rdi
lea r14, [rbp - 0x71]
cmp r15, rdi
jbe 0x14019d762
mov rsi, r15
or rsi, 0xf
cmp rsi, rcx
jbe 0x14019d746
mov rsi, rcx
jmp 0x14019d752
mov eax, SafeArrayPutElement
cmp rsi, rax
cmovb rsi, rax
lea rcx, [rsi + 1]
call fcn.1400eb1a0
mov r14, rax
mov qword [rbp - 0x71], rax
mov qword [rbp - 0x61], r15
mov qword [rbp - 0x59], rsi
movups xmm0, xmmword [str._SystemInfoClass__Detail_GetMemoryTotalSize_:_return_:]
movups xmmword [r14], xmm0
movups xmm1, xmmword [0x140359fb8]
movups xmmword [r14 + 0x10], xmm1
movups xmm0, xmmword [0x140359fc8]
movups xmmword [r14 + 0x20], xmm0
mov eax, dword [0x140359fd8]
mov dword [r14 + 0x30], eax
movzx eax, word [0x140359fdc]
mov word [r14 + 0x34], ax
movzx eax, byte [0x140359fde]
mov byte [r14 + 0x36], al
lea rcx, [r14 + 0x37]
mov r8, r13
mov rdx, r12
call fcn.140253310
mov byte [r14 + r15], 0
mov dword [rsp + 0x20], edi
movups xmm0, xmmword [rbp - 0x71]
movups xmmword [rbp - 0x51], xmm0
movups xmm1, xmmword [rbp - 0x61]
movups xmmword [rbp - 0x41], xmm1
xor eax, eax
mov qword [rbp - 0x71], rax
mov qword [rbp - 0x61], rax
mov qword [rbp - 0x59], rax
lea r12, [rbp - 0x51]
movq rsi, xmm0
movdqa xmm0, xmm1
psrldq xmm0, 8
movq r15, xmm0
cmp r15, 0x10
cmovae r12, rsi
movq r14, xmm1
cmp r14, 0x10
jae 0x14019d819
movups xmm0, xmmword [r12]
movups xmmword [rbp - 0x71], xmm0
jmp 0x14019d84d
mov rdi, r14
or rdi, 0xf
movabs rax, 0x7fffffffffffffff
cmp rdi, rax
cmova rdi, rax
lea rcx, [rdi + 1]
call fcn.1400eb1a0
mov qword [rbp - 0x71], rax
lea r8, [r14 + 1]
mov rdx, r12
mov rcx, rax
call fcn.140253310
mov qword [rbp - 0x61], r14
mov qword [rbp - 0x59], rdi
lea rcx, [rbp - 0x71]
call fcn.1401a7f60
nop
cmp r15, 0x10
jb 0x14019d892
lea rdx, [r15 + 1]
mov rax, rsi
cmp rdx, 0x1000
jb 0x14019d88a
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14019d8c2
mov rcx, rsi
call fcn.14021ecec
mov rax, rbx
mov rcx, qword [rbp + 0x2f]
xor rcx, rsp
call fcn.14021f250
lea r11, [rsp + 0xe0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.140260f54
nop
call fcn.140260f54
int3
call fcn.140101a70
int3