Function at 0x1401e0dd0
Capabilities:
Get memory capacity

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x88
lea rbp, [rsp + 0x80]
movaps xmmword [rbp - 0x10], xmm6
mov rsi, rcx
mov eax, dword [0x1415a8f88]
xor edx, edx
div dword [0x1415a8f8c]
mov ecx, eax
not ecx
mov edx, eax
and edx, 0xe0f4cc99
and ecx, 0x1f0b3366
imul ecx, edx
mov edx, eax
and edx, 0x1f0b3366
or eax, 0x1f0b3366
imul eax, edx
add eax, ecx
mov ecx, eax
xor ecx, 0x4c2e7fe4
add ecx, eax
and eax, 0xb3d1801a
sub ecx, eax
or ecx, 0x4ec67263
mov dword [rbp - 0x4c], ecx
mov dword [rbp - 0x34], 0x18d19e5
lea rax, [rbp - 0x34]
mov qword [rbp - 0x18], rax
mov rbx, 0xffffffffffffffff
mov r14d, 0x7e9de770
xorps xmm6, xmm6
mov edi, 0x91561dd
mov r13d, 0xfa0371de
mov r15, qword [sym.imp.KERNEL32.dll_K32GetPerformanceInfo]
jmp 0x1401e0e96
cmp dword [rbp - 0x4c], 0xd065a3e7
mov eax, 0x5b3b5599
cmovb eax, r13d
nop word cs:[rax + rax]
mov rcx, qword [rbp - 0x18]
mov dword [rcx], eax
mov eax, dword [rbp - 0x34]
cmp eax, 0x18d19e4
jg 0x1401e0f20
cmp eax, 0xc4a6c364
jg 0x1401e0f80
cmp eax, 0xb66bf721
jle 0x1401e1016
cmp eax, 0xb9371ac3
jg 0x1401e11a2
cmp eax, 0xb66bf722
je 0x1401e13dc
cmp eax, 0xb8119300
je 0x1401e1411
cmp eax, 0xb920f382
jne 0x1401e0e96
mov eax, dword [0x1415a8fc0]
xor eax, dword [0x1415a8fc4]
and eax, 0x2080a046
add eax, 0x47cf8f7b
cmp eax, 0xa85b4fa8
mov rax, qword [rbp - 0x28]
movups xmm0, xmmword [rax + 8]
movups xmmword [rsi + 0x70], xmm0
mov eax, 0x1f3f463f
mov ecx, 0xd43385f6
cmovb eax, ecx
jmp 0x1401e0e90
cmp eax, 0x31387ae0
jg 0x1401e0fd0
cmp eax, 0x1680d291
jle 0x1401e10ba
cmp eax, 0x1f5b2085
jg 0x1401e11d2
cmp eax, 0x1680d292
je 0x1401e1471
cmp eax, 0x198b16c3
je 0x1401e1487
cmp eax, 0x1f3f463f
jne 0x1401e0e96
mov rax, qword [rbp - 0x28]
movups xmm0, xmmword [rax + 8]
movups xmmword [rsi + 0x70], xmm0
mov rax, qword [rbp - 0x18]
mov dword [rax], 0xb920f382
jmp 0x1401e0e96
cmp eax, 0xe30bc2bc
jle 0x1401e10eb
cmp eax, 0xf5805b89
jg 0x1401e1202
cmp eax, 0xe30bc2bd
je 0x1401e1496
cmp eax, 0xead139b7
je 0x1401e14b8
cmp eax, 0xeb677f5a
jne 0x1401e0e96
mov rax, qword [rbp - 0x18]
mov dword [rax], 0xb9371ac4
jmp 0x1401e0e96
cmp eax, 0x5a3aaf29
jle 0x1401e115a
cmp eax, 0x75dea04b
jle 0x1401e1232
cmp eax, 0x75dea04c
je 0x1401e14ff
cmp eax, 0x7c309db4
je 0x1401e1718
cmp eax, 0x7e9de770
jne 0x1401e0e96
mov rax, qword [rbp - 0x18]
mov dword [rax], 0x75dea04c
jmp 0x1401e0e96
cmp eax, 0x9ae1d4f7
jle 0x1401e1270
cmp eax, 0x9ae1d4f8
je 0x1401e1578
cmp eax, 0xa200b6b3
je 0x1401e1587
cmp eax, 0xaa41c0ee
jne 0x1401e0e96
mov eax, dword [0x1415a8fe8]
or eax, dword [0x1415a8fec]
mov ecx, eax
not ecx
or eax, 0x5ebd8d34
or ecx, 0xa14272cb
and ecx, eax
imul r8, rcx, 0x297cab3f
shr r8, 0x3b
mov rax, qword [rbp - 0x48]
mul qword [rbp - 0x58]
mov rcx, rax
cmovo rcx, rbx
mov rdx, qword [rbp - 0x70]
sub rdx, qword [rbp - 0x78]
mov eax, 0
cmovae rax, rdx
mul qword [rbp - 0x48]
seto byte [rbp - 0x60]
mov qword [rsi + 0x80], rcx
seto byte [rbp - 0x19]
cmp r8d, 0xbaf8be8c
mov qword [rbp - 0x68], rax
mov eax, 0xaa41c0ee
mov ecx, 0x6de19
cmovne eax, ecx
jmp 0x1401e0e90
cmp eax, 0xa7e381a
jle 0x1401e12d0
cmp eax, 0xa7e381b
je 0x1401e1596
cmp eax, 0xd7c9203
je 0x1401e1608
cmp eax, 0xeba1c0a
je 0x1401e1261
jmp 0x1401e0e96
cmp eax, 0xd1340d89
jle 0x1401e130d
cmp eax, 0xd1340d8a
je 0x1401e1645
cmp eax, 0xd43385f6
je 0x1401e168a
cmp eax, 0xd58d0a4b
jne 0x1401e0e96
mov rax, qword [rbp - 0x28]
movups xmmword [rax + 0x30], xmm6
movups xmmword [rax + 0x20], xmm6
movups xmmword [rax + 0x10], xmm6
movups xmmword [rax], xmm6
mov rax, qword [rbp - 0x28]
mov dword [rax], 0x40
mov rcx, qword [rbp - 0x28]
sub rsp, 0x20
call qword [sym.imp.KERNEL32.dll_GlobalMemoryStatusEx]
add rsp, 0x20
test eax, eax
mov eax, 0xb9371ac4
mov ecx, 0x962a786a
cmove eax, ecx
jmp 0x1401e0e90
cmp eax, 0x42f4d6fd
jle 0x1401e1332
cmp eax, 0x42f4d6fe
je 0x1401e1699
cmp eax, 0x470e1097
je 0x1401e16e1
cmp eax, 0x51566221
jne 0x1401e0e96
sub rsp, 0x20
call sub.KERNEL32.dll_GetLastError
add rsp, 0x20
mov rax, qword [rbp - 0x18]
mov dword [rax], 0x3240b5c3
jmp 0x1401e0e96
cmp eax, 0xb9371ac4
je 0x1401e1727
cmp eax, 0xb9d22ec0
je 0x1401e1767
cmp eax, 0xc0d2eb85
jne 0x1401e0e96
mov rax, qword [rbp - 0x18]
mov dword [rax], 0xd58d0a4b
jmp 0x1401e0e96
cmp eax, 0x1f5b2086
je 0x1401e1776
cmp eax, 0x2403a8ec
je 0x1401e17a6
cmp eax, 0x2ed1de47
jne 0x1401e0e96
mov rax, qword [rbp - 0x18]
mov dword [rax], 0xeba1c0a
jmp 0x1401e0e96
cmp eax, 0xf5805b8a
je 0x1401e1821
cmp eax, 0xfa0371de
je 0x1401e1878
cmp eax, 0x6de19
jne 0x1401e0e96
mov rax, qword [rbp - 0x18]
mov dword [rax], 0x1f5b2086
jmp 0x1401e0e96
cmp eax, 0x5b3b5599
je 0x1401e18f1
cmp eax, 0x61297edd
jne 0x1401e1990
sub rsp, 0x20
mov rcx, rsi
mov dl, 1
call fcn.14020db30
add rsp, 0x20
mov rax, qword [rbp - 0x40]
mov byte [rax], 1
mov rax, qword [rbp - 0x18]
mov dword [rax], 0x2403a8ec
jmp 0x1401e0e96
cmp eax, 0x8c6abb30
je 0x1401e1927
cmp eax, 0x962a786a
jne 0x1401e0e96
mov eax, dword [0x1415a8fa8]
or eax, dword [0x1415a8fac]
imul rax, rax, 0x75beca0f
mov rcx, rax
shr rcx, 0x3d
mov edx, ecx
xor edx, 0x78708852
add edx, ecx
bt rax, 0x3d
sbb edx, 0
or edx, 0x856bed8e
cmp edx, 0xcba84837
mov eax, 0x51566221
mov ecx, 0x3240b5c3
cmovne eax, ecx
jmp 0x1401e0e90
cmp eax, 0x18d19e5
je 0x1401e0e74
cmp eax, 0x91561dd
jne 0x1401e0e96
cmp byte [rbp - 0x19], 0
mov rax, 0xffffffffffffffff
jne 0x1401e12f7
mov rax, qword [rbp - 0x68]
mov qword [rsi + 0x88], rax
mov rax, qword [rbp - 0x18]
mov dword [rax], 0xead139b7
jmp 0x1401e0e96
cmp eax, 0xc4a6c365
je 0x1401e1936
cmp eax, 0xc8fc2cfb
jne 0x1401e0e96
mov rax, qword [rbp - 0x18]
mov dword [rax], 0xeb677f5a
jmp 0x1401e0e96
cmp eax, 0x31387ae1
je 0x1401e1981
cmp eax, 0x3240b5c3
jne 0x1401e0e96
mov r12d, dword [0x1415a8fb0]
and r12d, dword [0x1415a8fb4]
mov eax, r12d
not eax
and eax, 0x3153dd80
mov ecx, r12d
and ecx, 0xceac227f
imul ecx, eax
mov eax, r12d
and eax, 0x3153dd80
or r12d, 0x3153dd80
imul r12d, eax
add r12d, ecx
mov eax, r12d
not eax
mov ecx, r12d
and ecx, 0x8f463600
and eax, 0x70b9c9f3
imul eax, ecx
mov ecx, r12d
and ecx, 0x70b9c980
or r12d, 0x70b9c9f3
imul r12d, ecx
add r12d, eax
and r12d, 0xda7f0280
sub rsp, 0x20
call sub.KERNEL32.dll_GetLastError
add rsp, 0x20
cmp r12d, 0x18405f79
mov eax, 0x51566221
mov ecx, 0xc8fc2cfb
cmovne eax, ecx
jmp 0x1401e0e90
mov rax, qword [rbp - 0x40]
movabs rcx, 0x202020202020101
mov qword [rax + 1], rcx
mov rdx, qword [rbp - 0x40]
sub rsp, 0x20
mov rcx, rsi
call fcn.14020db00
add rsp, 0x20
mov rax, qword [rbp - 0x18]
mov dword [rax], 0xd1340d8a
jmp 0x1401e0e96
mov eax, dword [0x1415a8fe0]
add eax, dword [0x1415a8fe4]
imul rax, rax, 0x15253cbd
shr rax, 0x3b
mov ecx, eax
not ecx
and ecx, 0xe3688abe
mov edx, eax
and edx, 1
imul edx, ecx
mov ecx, eax
and ecx, 0xfffffffe
or eax, 0xe3688abe
imul eax, ecx
add eax, edx
mov ecx, eax
not ecx
and ecx, 0x135a7b9
and eax, 0xfeca5846
sub eax, ecx
cmp eax, 0x2320b193
mov eax, 0xaa41c0ee
mov ecx, 0xe30bc2bd
cmovb eax, ecx
jmp 0x1401e0e90
cmp byte [rbp - 0x1a], 0
mov eax, 0xc4a6c365
mov ecx, 0xeba1c0a
cmovne eax, ecx
jmp 0x1401e0e90
mov rax, qword [rbp - 0x18]
mov dword [rax], 0xb8119300
jmp 0x1401e0e96
mov rax, qword [rbp - 0x48]
mul qword [rbp - 0x58]
cmovo rax, rbx
mov qword [rsi + 0x80], rax
mov rax, qword [rbp - 0x18]
mov dword [rax], 0xaa41c0ee
jmp 0x1401e0e96
mov eax, dword [0x1415a8ff8]
xor edx, edx
div dword [0x1415a8ffc]
cmp byte [rbp - 0x19], 0
mov rcx, 0xffffffffffffffff
jne 0x1401e14d7
mov rcx, qword [rbp - 0x68]
xor eax, 0x28a04085
and eax, 0x69e8c2f5
add eax, 0x4a147bbe
cmp eax, 0xab77419a
mov qword [rsi + 0x88], rcx
mov eax, 0x2ed1de47
cmovae eax, edi
jmp 0x1401e0e90
mov eax, dword [0x1415a8fd8]
mov ecx, dword [0x1415a8fdc]
not eax
not ecx
or ecx, eax
not ecx
add ecx, 0xe3c7c093
shr ecx, 4
imul rax, rcx, 0x892eb3b
shr rax, 0x32
not eax
mov ecx, eax
or ecx, 0xffffffda
or eax, 0x277c601a
and eax, ecx
mov rcx, qword [rbp - 0x30]
mov rdx, qword [rcx + 0x50]
mov qword [rbp - 0x48], rdx
mov rdx, qword [rcx + 0x20]
mov qword [rbp - 0x78], rdx
mov r8, qword [rcx + 8]
mov rcx, qword [rcx + 0x10]
sub rcx, rdx
mov edx, 0
cmovae rdx, rcx
cmp eax, 0x5b652b93
mov qword [rbp - 0x70], r8
mov qword [rbp - 0x58], rdx
mov eax, 0x198b16c3
cmovb eax, r14d
jmp 0x1401e0e90
mov rax, qword [rbp - 0x18]
mov dword [rax], 0xd7c9203
jmp 0x1401e0e96
mov rax, qword [rbp - 0x18]
mov dword [rax], 0x7c309db4
jmp 0x1401e0e96
mov r12d, dword [0x1415a8fc8]
and r12d, dword [0x1415a8fcc]
add r12d, 0xfa69542c
and r12d, 0xcc36da80
mov rax, qword [rbp - 0x30]
movups xmmword [rax + 0x50], xmm6
movups xmmword [rax + 0x40], xmm6
movups xmmword [rax + 0x30], xmm6
movups xmmword [rax + 0x20], xmm6
movups xmmword [rax + 0x10], xmm6
movups xmmword [rax], xmm6
mov qword [rax + 0x60], 0
mov rcx, qword [rbp - 0x30]
sub rsp, 0x20
mov edx, 0x68
call r15
add rsp, 0x20
test eax, eax
sete byte [rbp - 0x1a]
cmp r12d, 0x3cbc5e3a
mov eax, 0x470e1097
mov ecx, 0x1680d292
cmovb eax, ecx
jmp 0x1401e0e90
mov eax, dword [0x1415a8fa0]
xor eax, dword [0x1415a8fa4]
add eax, 0xc023f603
mov ecx, eax
and ecx, 0x5939264e
xor eax, 0x5939264e
lea eax, [rax + rcx*2]
or eax, 0x589931b5
cmp eax, 0xe79f75b4
mov eax, 0x9ae1d4f8
mov ecx, 0xc0d2eb85
cmovb eax, ecx
jmp 0x1401e0e90
mov eax, dword [0x1415a9008]
mov ecx, dword [0x1415a900c]
mov edx, eax
not edx
and edx, ecx
not ecx
and ecx, eax
sub ecx, edx
add ecx, 0x7afad946
mov eax, ecx
xor eax, 0xa6947f50
or ecx, 0x596b80af
and ecx, eax
cmp ecx, 0xdbe7ea99
mov eax, 0x31387ae1
mov ecx, 0x42f4d6fe
cmovb eax, ecx
jmp 0x1401e0e90
mov rax, qword [rbp - 0x18]
mov dword [rax], 0xa200b6b3
jmp 0x1401e0e96
mov eax, dword [0x1415a9010]
xor edx, edx
div dword [0x1415a9014]
mov ecx, eax
xor ecx, 0x41450923
xor eax, 0x8c00504c
and eax, 0x9ea2f4dc
and ecx, 0x615d0b23
sub ecx, eax
not ecx
or ecx, 0x18d09c2f
cmp ecx, 0xb8f418a8
mov eax, 0x31387ae1
mov ecx, 0x5a3aaf2a
cmovb eax, ecx
jmp 0x1401e0e90
mov rax, qword [rbp - 0x30]
movups xmmword [rax + 0x50], xmm6
movups xmmword [rax + 0x40], xmm6
movups xmmword [rax + 0x30], xmm6
movups xmmword [rax + 0x20], xmm6
movups xmmword [rax + 0x10], xmm6
movups xmmword [rax], xmm6
mov qword [rax + 0x60], 0
mov rcx, qword [rbp - 0x30]
sub rsp, 0x20
mov edx, 0x68
call r15
add rsp, 0x20
mov rax, qword [rbp - 0x18]
mov dword [rax], 0xa7e381b
jmp 0x1401e0e96
mov eax, dword [0x1415a8fb8]
mov ecx, dword [0x1415a8fbc]
not ecx
mov edx, eax
or edx, ecx
and ecx, eax
not ecx
and ecx, edx
xor ecx, 0x1f9cfb65
imul eax, ecx, 0xac46d5e7
add eax, 0x8b49049c
cmp eax, 0x6a1aa6ec
mov eax, 0xb920f382
mov ecx, 0x1f3f463f
cmovb eax, ecx
jmp 0x1401e0e90
mov rax, qword [rbp - 0x18]
mov dword [rax], 0xb66bf722
jmp 0x1401e0e96
mov eax, dword [0x1415a8ff0]
mov ecx, dword [0x1415a8ff4]
mov edx, eax
and edx, ecx
or eax, ecx
add eax, edx
add eax, 0x35982d56
xor eax, 0xb7f334d
cmp eax, 0x4a77775b
mov eax, 0xead139b7
cmove eax, edi
jmp 0x1401e0e90
mov eax, dword [0x1415a9000]
xor edx, edx
div dword [0x1415a9004]
mov ecx, eax
not ecx
mov edx, eax
and edx, 0xb8394962
and ecx, 0x47c6b69d
imul ecx, edx
mov edx, eax
and edx, 0x47c6b69d
or eax, 0x47c6b69d
imul eax, edx
add eax, ecx
shr eax, 1
imul r12, rax, 0x221343ad
shr r12, 0x3a
add r12d, 0x4adf3a09
sub rsp, 0x20
mov rcx, rsi
mov dl, 1
call fcn.1401b2290
add rsp, 0x20
cmp r12d, 0x394f06bd
mov rax, qword [rbp - 0x40]
mov byte [rax], 1
mov eax, 0xb9d22ec0
mov ecx, 0x61297edd
cmovb eax, ecx
jmp 0x1401e0e90
mov eax, dword [0x1415a8f98]
mov ecx, dword [0x1415a8f9c]
mov edx, eax
not edx
and eax, ecx
not ecx
or ecx, edx
not ecx
or ecx, eax
mov eax, ecx
and eax, 0x135bf24a
add eax, eax
neg eax
add eax, ecx
add eax, 0x135bf24a
shr eax, 3
imul rax, rax, 0x1219ee71
shr rax, 0x39
imul eax, eax, 0x44583c4
cmp eax, 0x3cb5ffc3
mov eax, 0x9ae1d4f8
mov ecx, 0xd7c9203
cmovne eax, ecx
jmp 0x1401e0e90
mov ecx, dword [0x1415a8f90]
mov eax, dword [0x1415a8f94]
mov edx, eax
and edx, ecx
add ecx, eax
sub ecx, edx
xor ecx, 0x5611ce76
mov eax, 0xc480cfa7
imul rcx, rax
shr rcx, 0x3f
add ecx, 0xec227099
mov eax, 0x70
call fcn.14020e090
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x30], rax
mov eax, 0x40
call fcn.14020e090
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x28], rax
mov eax, 0x10
call fcn.14020e090
sub rsp, rax
mov rax, rsp
cmp ecx, 0x6327f9da
mov qword [rbp - 0x40], rax
mov eax, 0x8c6abb30
jmp 0x1401e0e80
mov eax, 0x70
call fcn.14020e090
sub rsp, rax
mov eax, 0x40
call fcn.14020e090
sub rsp, rax
mov eax, 0x10
call fcn.14020e090
sub rsp, rax
mov rax, qword [rbp - 0x18]
mov dword [rax], 0xfa0371de
jmp 0x1401e0e96
mov rax, qword [rbp - 0x18]
mov dword [rax], 0xf5805b8a
jmp 0x1401e0e96
mov eax, dword [0x1415a8fd0]
xor edx, edx
div dword [0x1415a8fd4]
mov ecx, eax
not ecx
or ecx, 0x283dfcec
lea edx, [rax + rcx]
inc edx
add eax, ecx
mov ecx, edx
and ecx, 0x1db1f494
xor edx, 0x24e0b6b
add eax, edx
inc eax
sub eax, ecx
or eax, 0xe9657402
cmp eax, 0x5af3e2d7
mov eax, 0x75dea04c
cmovb eax, r14d
jmp 0x1401e0e90
mov rax, qword [rbp - 0x18]
mov dword [rax], 0x42f4d6fe
jmp 0x1401e0e96
cmp eax, 0x5a3aaf2a
jne 0x1401e0e96
movaps xmm6, xmmword [rbp - 0x10]
lea rsp, [rbp + 8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret