Function at 0x180017b70
Capabilities:
Get memory capacity

Disassembly:
mov rax, rsp
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x338]
sub rsp, 0x400
mov qword [rsp + 0x58], 0xfffffffffffffffe
mov qword [rax + 0x20], rbx
movaps xmmword [rax - 0x48], xmm6
mov rax, qword [0x180063088]
xor rax, rsp
mov qword [rbp + 0x2e8], rax
mov edi, r9d
mov dword [rsp + 0x3c], r9d
mov r13, r8
mov rsi, rdx
mov qword [rsp + 0x40], rdx
mov r12, rcx
xor ecx, ecx
mov qword [rbp - 0x70], rcx
mov qword [rbp - 0x68], 0xf
mov byte [rbp - 0x80], cl
lea r14d, [r9 - 0xa]
movzx ebx, byte [rsp + 0x38]
cmp r9d, r14d
jbe 0x180017e4e
add edi, 0xffffff51
movaps xmm6, xmmword [rbp - 0x40]
mov r15, qword [rsp + 0x50]
mov r10d, 0x57
lea r8d, [r10 - 0x25]
lea rdx, [0x180000000]
cmp edi, 0x19
ja case.0x180017c1a.4
mov ecx, dword [rdx + rdi*4 + 0x184b8]
add rcx, rdx
jmp rcx
lea rcx, [rbp - 0x20]
call qword [sym.imp.KERNEL32.dll_GlobalMemoryStatusEx]
test eax, eax
je 0x180017ec7
mov rcx, qword [rbp - 0x18]
mov rax, rcx
sub rax, qword [rbp - 0x10]
mov qword [rbp - 0x60], rax
mov qword [rbp - 0x58], rcx
movaps xmm6, xmmword [rbp - 0x60]
jmp case.0x180017c1a.4
xor ecx, ecx
mov dword [rsp + 0x30], ecx
mov rsi, qword [rsi]
mov rbx, rsi
mov rax, qword [rsi + 8]
cmp byte [rax + 0x19], cl
jne 0x180017c8b
nop
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], cl
je 0x180017c60
cmp rbx, rsi
je 0x180017c8b
cmp dword [rbx + 0x20], ecx
ja 0x180017c8b
mov rsi, qword [rsp + 0x40]
movups xmmword [rbx + 0x28], xmm6
cmp qword [rsi + 8], 0
setne bl
jmp case.0x180017c1a.4
mov rax, qword [rsp + 0x40]
mov qword [rbp - 0x40], rax
mov qword [rbp - 0x38], rcx
mov ecx, 0x38
call fcn.18002c788
lea r9, [rax + 0x20]
mov ecx, dword [rsp + 0x30]
mov dword [r9], ecx
xorps xmm0, xmm0
movups xmmword [r9 + 8], xmm0
mov qword [rax], rsi
mov qword [rax + 8], rsi
mov qword [rax + 0x10], rsi
mov word [rax + 0x18], 0
mov qword [rbp - 0x38], 0
mov qword [rsp + 0x20], rax
mov r8, rbx
lea rdx, [rsp + 0x50]
mov rsi, qword [rsp + 0x40]
mov rcx, rsi
call fcn.180025a30
mov rbx, qword [rsp + 0x50]
movups xmmword [rbx + 0x28], xmm6
cmp qword [rsi + 8], 0
setne bl
jmp case.0x180017c1a.4
mov eax, dword [r13]
mov dword [rsp + 0x48], eax
mov eax, dword [r12]
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x20], 0x7b
lea r9, [rbp + 0x20]
lea r8, [rsp + 0x30]
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x60]
call fcn.1800054b0
movups xmm1, xmmword [rax]
movups xmm0, xmmword [rax + 0x10]
movups xmmword [rsp + 0x70], xmm0
movd eax, xmm1
jmp 0x180017e31
mov eax, dword [str._method_:_spelling.check___apiVersion_:_v_d___params_:_text_:_s__language_:__s___originCountry_:__s___key_:_s]
mov dword [rbp + 0x2a8], eax
movzx eax, byte [0x18005a6e4]
mov byte [rbp + 0x2ac], al
mov dword [rbp + 0x2ad], 0x22646f68
mov byte [rbp + 0x2b1], 0
jmp case.0x180017c1a.4
mov dword [rbp - 0x20], 0x40
jmp case.0x180017c1a.4
mov dword [rbp + 0x2d0], 0x730077
mov word [rbp + 0x2d4], r8w
mov dword [rbp + 0x2d6], 0x33005f
jmp case.0x180017c1a.4
mov dword [rbp + 0x2da], 0x2e0032
mov dword [rbp + 0x2de], 0x6c0064
mov dword [rbp + 0x2e2], 0x6c
mov r9d, 0x4e
lea r8, [rbp + 0x2d0]
xor edx, edx
lea rcx, [rbp + 0x2c0]
call fcn.18001b660
mov r15, rax
jmp case.0x180017c1a.4
mov dword [rbp + 0x2c0], 0x415357
mov dword [rbp + 0x2c3], 0x636f53
mov dword [rbp + 0x2c6], 0x74656b
mov word [rbp + 0x2c9], r10w
jmp case.0x180017c1a.4
mov dword [rsp + 0x28], 1
xor eax, eax
mov dword [rsp + 0x20], eax
lea r9, [rbp + 0x20]
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call r15
mov qword [rsi], rax
mov rdx, rsi
mov ecx, 9
call fcn.180005110
test al, al
je 0x180017ec7
dec edi
lea eax, [rdi + 0xaf]
cmp eax, r14d
ja 0x180017bf6
mov edi, dword [rsp + 0x3c]
mov r12d, edi
imul edi, edi, 0xb
mov dword [rsp + 0x30], edi
mov r15d, dword [rsp + 0x3c]
cmp r15d, edi
ja case.0x180017c1a.0
mov r13d, 0x3a22
mov r14, 0xffffffffffffffff
nop
cmp r12d, 0x3e8
ja 0x180017fcb
je 0x180017f9d
mov eax, r12d
sub eax, 0xbd
je 0x18001849d
sub eax, 0xb
je 0x180017f73
sub eax, 0xc8
je 0x180017f67
sub eax, 0xc8
je 0x180017f3a
cmp eax, 0xc8
jne 0x180018487
mov byte [rbp + 0x2be], 0x22
jmp 0x180018487
xor bl, bl
mov rcx, qword [rbp - 0x68]
cmp rcx, 0x10
jb 0x180017f05
lea rdx, [rcx + 1]
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180017f00
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800184aa
call fcn.18002c4e4
movzx eax, bl
mov rcx, qword [rbp + 0x2e8]
xor rcx, rsp
call fcn.18002c4c0
mov rbx, qword [rsp + 0x458]
movaps xmm6, xmmword [rsp + 0x3f0]
add rsp, 0x400
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov r8d, 4
lea rdx, [0x18005a81f]
lea rcx, [rbp + 0x2a8]
call fcn.1800336c0
mov word [rbp + 0x2bc], r13w
mov byte [rbp + 0x2be], 0
jmp 0x180018487
mov byte [rbp + 0x2b8], 0
jmp 0x180018487
mov dword [rbp + 0x2b1], 0x6f6c223a
movzx eax, word [0x18005a7b8]
mov word [rbp + 0x2b5], ax
movzx eax, byte [0x18005a7ba]
mov byte [rbp + 0x2b7], al
jmp 0x180018487
mov byte [rbp + 0x2bf], 0
movzx eax, word [0x18005a95b]
mov word [rbp + 0x2a0], ax
movzx eax, byte [0x18005a95d]
mov byte [rbp + 0x2a2], al
mov byte [rbp + 0x2a3], 0
jmp 0x180018487
cmp r12d, 0x4b0
je 0x1800182eb
cmp r12d, 0x578
je 0x180018279
cmp r12d, 0x640
je 0x180018194
cmp r12d, 0x708
je 0x18001800d
cmp r12d, 0x7d0
je case.0x180017c1a.0
jmp 0x180018487
xor r8d, r8d
xor edx, edx
mov ecx, 0x9c
call fcn.180018520
mov r9d, eax
lea r10, [rbp - 0x2b]
nop dword [rax]
nop word [rax + rax]
dec r10
mov eax, 0xcccccccd
mul r9d
shr edx, 3
movzx ecx, dl
shl cl, 2
lea r8d, [rcx + rdx]
add r8b, r8b
sub r9b, r8b
add r9b, 0x30
mov byte [r10], r9b
mov r9d, edx
test edx, edx
jne 0x180018030
xor eax, eax
mov edi, eax
mov qword [rbp - 0x50], rax
mov esi, 0xf
mov qword [rbp - 0x48], rsi
mov byte [rbp - 0x60], al
lea rax, [rbp - 0x2b]
cmp r10, rax
je 0x180018094
lea r8, [rbp - 0x2b]
sub r8, r10
mov rdx, r10
lea rcx, [rbp - 0x60]
call fcn.1800203a0
mov rsi, qword [rbp - 0x48]
mov rdi, qword [rbp - 0x50]
lea r9, [rbp - 0x60]
mov r14, qword [rbp - 0x60]
cmp rsi, 0x10
cmovae r9, r14
mov rcx, qword [rbp - 0x70]
mov rdx, qword [rbp - 0x68]
mov rax, rdx
sub rax, rcx
cmp rdi, rax
ja 0x1800180e3
lea rax, [rcx + rdi]
mov qword [rbp - 0x70], rax
lea rbx, [rbp - 0x80]
cmp rdx, 0x10
cmovae rbx, qword [rbp - 0x80]
add rbx, rcx
mov r8, rdi
mov rdx, r9
mov rcx, rbx
call fcn.18002ddf0
mov byte [rdi + rbx], 0
jmp 0x1800180ff
mov qword [rsp + 0x20], rdi
xor r8d, r8d
mov rdx, rdi
lea rcx, [rbp - 0x80]
call fcn.180021d30
mov rsi, qword [rbp - 0x48]
mov r14, qword [rbp - 0x60]
cmp rsi, 0x10
jb 0x180018136
lea rdx, [rsi + 1]
mov rax, r14
cmp rdx, 0x1000
jb 0x18001812e
add rdx, 0x27
mov r14, qword [r14 - 8]
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800184a4
mov rcx, r14
call fcn.18002c4e4
mov rcx, qword [rbp - 0x70]
mov rdx, qword [rbp - 0x68]
cmp rcx, rdx
jae 0x180018160
lea rax, [rcx + 1]
mov qword [rbp - 0x70], rax
lea rax, [rbp - 0x80]
cmp rdx, 0x10
cmovae rax, qword [rbp - 0x80]
mov word [rax + rcx], 0x7d
jmp 0x180018173
mov r9b, 0x7d
xor r8d, r8d
lea edx, [r8 + 1]
lea rcx, [rbp - 0x80]
call fcn.180021bd0
lea r8, [rbp - 0x80]
mov edx, 0x41
mov rcx, qword [0x180065798]
call fcn.180011100
movzx ebx, al
mov edi, dword [rsp + 0x30]
jmp 0x180018480
mov rdx, qword [rbp - 0x70]
mov rcx, qword [rbp - 0x68]
cmp rdx, rcx
jae 0x1800181be
lea rax, [rdx + 1]
mov qword [rbp - 0x70], rax
lea rax, [rbp - 0x80]
cmp rcx, 0x10
cmovae rax, qword [rbp - 0x80]
mov word [rax + rdx], 0x22
jmp 0x1800181d1
mov r9b, 0x22
xor r8d, r8d
lea edx, [r8 + 1]
lea rcx, [rbp - 0x80]
call fcn.180021bd0
xor r9d, r9d
lea r8, [rbp - 0x80]
mov rdx, rsi
lea ecx, [r9 + 0x4f]
call fcn.180013e80
mov dword [rsp + 0x20], 0xc
lea r9, [rbp - 0x80]
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.1800066f0
lea rax, [rbp + 0x2a0]
mov rsi, r14
inc rsi
cmp byte [rax + rsi], 0
jne 0x180018206
mov rcx, qword [rbp - 0x70]
mov rdx, qword [rbp - 0x68]
mov rax, rdx
sub rax, rcx
cmp rsi, rax
ja 0x180018259
lea rax, [rcx + rsi]
mov qword [rbp - 0x70], rax
lea rdi, [rbp - 0x80]
cmp rdx, 0x10
cmovae rdi, qword [rbp - 0x80]
add rdi, rcx
mov r8, rsi
lea rdx, [rbp + 0x2a0]
mov rcx, rdi
call fcn.18002ddf0
mov byte [rsi + rdi], 0
mov edi, dword [rsp + 0x30]
jmp 0x180018487
mov qword [rsp + 0x20], rsi
lea r9, [rbp + 0x2a0]
xor r8d, r8d
mov rdx, rsi
lea rcx, [rbp - 0x80]
call fcn.180021d30
jmp 0x180018487
lea r9, [rsi + 0x28]
cmp qword [rsi + 0x40], 0x10
jb 0x180018288
mov r9, qword [rsi + 0x28]
mov rsi, qword [rsi + 0x38]
mov rdx, qword [rbp - 0x70]
mov rcx, qword [rbp - 0x68]
mov rax, rcx
sub rax, rdx
cmp rsi, rax
ja 0x1800182d2
lea rax, [rdx + rsi]
mov qword [rbp - 0x70], rax
lea rdi, [rbp - 0x80]
cmp rcx, 0x10
cmovae rdi, qword [rbp - 0x80]
add rdi, rdx
mov r8, rsi
mov rdx, r9
mov rcx, rdi
call fcn.18002ddf0
mov byte [rsi + rdi], 0
mov edi, dword [rsp + 0x30]
jmp 0x180018487
mov qword [rsp + 0x20], rsi
xor r8d, r8d
mov rdx, rsi
lea rcx, [rbp - 0x80]
call fcn.180021d30
jmp 0x180018487
mov r8d, 2
lea rdx, [0x18005a9d1]
lea rcx, [rbp + 0x2a3]
call fcn.1800331c0
mov word [rbp + 0x2a5], r13w
mov byte [rbp + 0x2a7], 0
xor eax, eax
mov qword [rbp - 0x30], rax
mov qword [rbp - 0x28], 0xf
mov byte [rbp - 0x40], al
lea rax, [rbp + 0x2a8]
mov r8, r14
nop
inc r8
cmp byte [rax + r8], 0
jne 0x180018330
lea rdx, [rbp + 0x2a8]
lea rcx, [rbp - 0x40]
call fcn.1800203a0
nop
lea r15, [rbp - 0x40]
mov r14, qword [rbp - 0x40]
mov r13, qword [rbp - 0x28]
cmp r13, 0x10
cmovae r15, r14
mov rsi, qword [rbp - 0x30]
cmp rsi, 0x10
jae 0x18001837a
movups xmm6, xmmword [r15]
mov qword [rbp - 0x48], 0xf
jmp 0x1800183fb
mov rdi, rsi
or rdi, 0xf
movabs rax, 0x7fffffffffffffff
cmp rdi, rax
cmova rdi, rax
lea rax, [rdi + 1]
cmp rax, 0x1000
jb 0x1800183cf
lea rcx, [rax + 0x27]
cmp rcx, rax
mov rax, 0xffffffffffffffff
cmovbe rcx, rax
call fcn.18002c788
mov rcx, rax
test rax, rax
je 0x1800184b0
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x1800183dc
test rax, rax
je 0x1800183dc
mov rcx, rax
call fcn.18002c788
mov qword [rbp - 0x60], rax
lea r8, [rsi + 1]
mov rdx, r15
mov rcx, rax
call fcn.18002ddf0
mov qword [rbp - 0x48], rdi
movups xmm6, xmmword [rbp - 0x60]
mov edi, dword [rsp + 0x30]
mov qword [rbp - 0x50], rsi
mov rdx, qword [rbp - 0x68]
cmp rdx, 0x10
jb 0x180018436
inc rdx
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180018431
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800184b0
call fcn.18002c4e4
movups xmmword [rbp - 0x80], xmm6
movups xmm0, xmmword [rbp - 0x50]
movups xmmword [rbp - 0x70], xmm0
cmp r13, 0x10
jb 0x180018475
lea rdx, [r13 + 1]
mov rax, r14
cmp rdx, 0x1000
jb 0x18001846d
add rdx, 0x27
mov r14, qword [r14 - 8]
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800184a4
mov rcx, r14
call fcn.18002c4e4
mov r13d, 0x3a22
mov r15d, dword [rsp + 0x3c]
mov r14, 0xffffffffffffffff
add r12d, r15d
cmp r12d, edi
ja case.0x180017c1a.0
mov rsi, qword [rsp + 0x40]
jmp 0x180017e70
mov bl, 1
jmp case.0x180017c1a.0
call fcn.180033a84
nop
call fcn.180033a84
nop
call fcn.180033a84
int3