Function at 0x180050ca0
Capabilities:
Get memory capacity

Disassembly:
mov qword [rsp + 0x10], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0xd0]
sub rsp, 0x1d0
movaps xmmword [rsp + 0x1c0], xmm6
mov rax, qword [0x1800a0238]
xor rax, rsp
mov qword [rbp + 0xb0], rax
mov r10, qword [rbp + 0x130]
lea eax, [rdx + 0x1b0]
mov qword [rbp - 0x58], r9
mov r14, r9
mov qword [rbp - 0x60], r8
mov r12d, edx
mov dword [rsp + 0x38], edx
mov r13, rcx
mov qword [rsp + 0x58], r10
mov dword [rsp + 0x30], eax
cmp edx, eax
ja case.0x18005104a.28026
mov r15d, dword [rbp - 0x64]
movaps xmm6, xmmword [rbp - 0x20]
mov edi, dword [rbp - 0x64]
lea rdx, [0x180000000]
cmp r12d, 0x6d5a
ja 0x180051025
je 0x180050fc7
cmp r12d, 0x6b1e
ja 0x180050e9e
je 0x180050e92
mov eax, r12d
sub eax, 0xb6c
je 0x180050daf
sub eax, 0x12
je case.0x18005104a.28026
sub eax, 0x2531
je 0x180050d7f
sub eax, 0x12
je case.0x18005104a.28026
cmp eax, 0x3a4b
mov eax, dword [rsp + 0x30]
jne 0x18005182b
mov byte [rsp + 0x40], 1
jmp 0x18005182b
xor r9d, r9d
mov dword [rsp + 0x38], 2
xor r8d, r8d
mov qword [rsp + 0x20], 0
lea rdx, [rsp + 0x38]
mov ecx, 0x61b6
call fcn.18002bb50
mov qword [rsp + 0x48], rax
jmp case.0x18005104a.28027
mov dword [r14], 0
lea r14, [0x18007fdf0]
nop dword [rax]
mov esi, dword [r14]
mov ebx, 0x38ac
nop dword [rax + rax]
mov eax, ebx
sub eax, 0x38ac
je 0x180050e14
sub eax, 0x32
je 0x180050e51
sub eax, 0x20b4
je 0x180050df8
cmp eax, 0x32
jne 0x180050e3d
mov edi, 1
mov dword [rsp + 0x48], edi
jmp case.0x18005104a.28026
mov ecx, dword [r8]
xor eax, eax
nop dword [rax]
cmp ecx, dword [rdx + rax*8 + 0x80770]
je 0x180050e4a
inc rax
cmp rax, 3
jl 0x180050e00
jmp 0x180050e3d
lea r9, [rbp - 0x50]
mov dword [rsp + 0x38], esi
xor edx, edx
mov dword [rsp + 0x20], 0x6bbb
lea rcx, [rsp + 0x38]
call fcn.180030e20
mov r8, qword [rbp - 0x60]
lea rdx, [0x180000000]
mov edi, eax
add ebx, 0x32
cmp ebx, 0x4b9e
jbe 0x180050dd0
jmp 0x180050e51
mov edi, dword [rdx + rax*8 + 0x80774]
test edi, edi
jne 0x180050def
cmp dword [rbp - 0x50], edi
jne 0x180050e71
mov eax, 0xc76
cmp eax, eax
je 0x18005184f
add eax, 0x1e
cmp eax, 0xc76
jbe 0x180050e61
add r14, 4
lea rcx, [0x1800801f0]
cmp r14, rcx
jl 0x180050dc0
mov dword [rsp + 0x48], 0
jmp case.0x18005104a.28027
mov dword [rbp - 0x10], 0x40
jmp 0x18005182b
mov eax, r12d
sub eax, 0x6b30
je 0x180050fa5
sub eax, 0x12
je 0x180050f81
sub eax, 0x12
je 0x180050ee4
cmp eax, 0x12
jne case.0x18005104a.28027
mov eax, 0x261b
cmp eax, eax
je 0x180051863
add eax, 0x53
cmp eax, 0x261b
jbe 0x180050eca
mov dword [rsp + 0x48], r15d
jmp case.0x18005104a.28027
mov ecx, 0xfffffff5
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov rsi, qword [rbp - 0x60]
mov r14, rax
mov dword [rsp + 0x38], 0
mov qword [rbp - 0x48], rax
mov rcx, qword [rsi]
mov rbx, rcx
mov rax, qword [rcx + 8]
cmp byte [rax + 0x19], 0
jne 0x180050f29
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x180050f12
cmp rbx, rcx
je 0x180050f29
cmp dword [rbx + 0x20], 0
jbe 0x180050f65
lea rax, [rsp + 0x38]
mov rcx, rsi
lea r9, [rbp - 0x70]
mov qword [rbp - 0x38], rax
lea r8, [rbp - 0x38]
lea rdx, [0x18007fa4c]
call fcn.180001c30
mov r8, rbx
mov qword [rsp + 0x20], rax
lea rdx, [rbp - 0x30]
mov rcx, rsi
lea r9, [rax + 0x20]
call fcn.180003a10
mov rbx, qword [rbp - 0x30]
mov eax, dword [rsp + 0x30]
movups xmmword [rbx + 0x28], xmm6
cmp r14, 0xffffffffffffffff
jne 0x18005182b
mov byte [rsp + 0x40], 0
jmp 0x18005182b
mov rcx, qword [rbp - 8]
mov rax, rcx
mov qword [rbp - 0x18], rcx
sub rax, qword [rbp]
mov qword [rbp - 0x20], rax
movaps xmm6, xmmword [rbp - 0x20]
mov qword [rbp - 0x48], 0xffffffffffffffff
jmp case.0x18005104a.28027
lea rcx, [rbp - 0x10]
mov dword [rbp - 0x64], 0x40
call qword [sym.imp.KERNEL32.dll_GlobalMemoryStatusEx]
test eax, eax
jne case.0x18005104a.28027
mov byte [rsp + 0x48], al
jmp case.0x18005104a.28026
test r8, r8
jne 0x180050ff2
mov dword [rsp + 0x38], r8d
lea r9, str.k___NULL
lea r8, [0x180082820]
mov edx, 0x5836
lea rcx, [rsp + 0x38]
call fcn.18000e4c0
mov eax, dword [rsp + 0x30]
test r14, r14
jne 0x18005182b
lea r9, str.G___NULL
lea r8, [0x180082820]
mov dword [rsp + 0x38], 0
mov edx, 0x5836
lea rcx, [rsp + 0x38]
call fcn.18000e4c0
jmp case.0x18005104a.28027
lea eax, [r12 - 0x6d6c]
cmp eax, 0xfc
ja case.0x18005104a.28027
movzx eax, byte [rdx + rax + 0x51930]
mov ecx, dword [rdx + rax*4 + 0x518f0]
add rcx, rdx
jmp rcx
mov rcx, qword [rsp + 0x78]
mov rdx, r10
call qword [0x1800a3958]
mov r15d, eax
test eax, eax
je 0x1800510a0
mov ebx, 0x4b54
mov ecx, ebx
sub ecx, 0x4b54
je 0x18005108a
cmp ecx, 0x23
jne 0x180051095
mov rcx, qword [rsp + 0x78]
call qword [0x1800a3850]
mov dword [rsp + 0x48], r15d
jmp case.0x18005104a.28026
mov rcx, qword [rsp + 0x60]
call qword [0x1800a3968]
add ebx, 0x23
cmp ebx, 0x4b77
jbe 0x180051066
xor r12d, r12d
xor esi, esi
nop word [rax + rax]
mov r9d, 0x1db0
mov qword [rsp + 0x20], 0
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.180045e60
mov qword [rbp + rsi*8 + 0x30], rax
test rax, rax
jne 0x180051167
mov r14d, 0x4f4b
nop
mov eax, r14d
sub eax, 0x4f4b
je 0x180051121
sub eax, 8
je 0x180051109
sub eax, 8
je 0x1800510ff
cmp eax, 8
je case.0x18005104a.28026
jmp 0x180051156
mov dword [rsp + 0x48], 0xd
jmp 0x180051156
mov rcx, qword [rsp + 0x60]
call qword [0x1800a3968]
mov rcx, qword [rsp + 0x78]
call qword [0x1800a3850]
jmp 0x180051156
xor ebx, ebx
test rsi, rsi
jle 0x180051156
nop dword [rax + rax]
mov rdx, qword [rbp + rbx*8 + 0x30]
mov r9d, 0x38d8
xor r8d, r8d
mov qword [rsp + 0x20], 0
xor ecx, ecx
call fcn.180045620
inc rbx
cmp rbx, rsi
jl 0x180051130
add r14d, 8
cmp r14d, 0x4f63
jbe 0x1800510e0
inc r12d
inc rsi
cmp r12d, 8
jl 0x1800510b0
mov r9d, 0x1db0
mov qword [rsp + 0x20], 0
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.180045e60
mov r12d, dword [rsp + 0x38]
mov qword [rbp - 0x78], rax
jmp case.0x18005104a.28027
mov rcx, qword [rsp + 0x78]
test rcx, rcx
je 0x1800511b0
call qword [0x1800a3850]
mov rcx, qword [rsp + 0x60]
call qword [0x1800a3968]
mov rdx, qword [rbp - 0x78]
mov r9d, 0x38d8
xor r8d, r8d
mov qword [rsp + 0x20], 0
xor ecx, ecx
call fcn.180045620
jmp case.0x18005104a.28027
xor ebx, ebx
nop
mov rdx, qword [rbp + rbx*8 + 0x30]
mov r9d, 0x38d8
xor r8d, r8d
mov qword [rsp + 0x20], 0
xor ecx, ecx
call fcn.180045620
inc rbx
cmp rbx, 8
jl 0x1800511e0
jmp case.0x18005104a.28027
mov rsi, qword [rbp - 0x78]
test rsi, rsi
jne 0x180051224
lea r15d, [rsi + 0xd]
mov r12d, 0x6e20
jmp case.0x18005104a.28027
mov rcx, qword [rsp + 0x78]
mov edx, 1
call qword [0x1800a3890]
test eax, eax
jne 0x180051298
mov ebx, 0x2b5b
nop dword [rax]
mov eax, ebx
sub eax, 0x2b5b
je 0x180051271
cmp eax, 0x5c
jne 0x180051288
mov rdx, qword [rsi + 8]
mov rcx, qword [r14 + 8]
call qword [0x1800a3860]
mov r15d, eax
test eax, eax
jne case.0x18005104a.28022
mov rdx, qword [rsi + 0x10]
mov rcx, qword [r14 + 0x10]
jmp 0x180051277
mov rdx, qword [rsi]
mov rcx, qword [r14]
call qword [0x1800a3860]
mov r15d, eax
test eax, eax
jne case.0x18005104a.28022
add ebx, 0x5c
cmp ebx, 0x2bb7
jbe 0x180051240
jmp case.0x18005104a.28027
mov r14, qword [rsp + 0x58]
mov ebx, 0x3ab3
mov eax, ebx
sub eax, 0x3ab3
je 0x1800512d1
sub eax, 0xa
je 0x1800512c3
cmp eax, 0xa
jne 0x1800512f4
mov rax, qword [rbp - 0x58]
mov r9, qword [rsi + 0x10]
mov rcx, qword [rax + 0x10]
jmp 0x1800512db
mov rax, qword [rbp - 0x58]
mov r9, qword [rsi + 8]
mov rcx, qword [rax + 8]
jmp 0x1800512db
mov rax, qword [rbp - 0x58]
mov r9, qword [rsi]
mov rcx, qword [rax]
mov rdx, qword [rsp + 0x78]
mov r8, r14
call qword [0x1800a3938]
mov r15d, eax
test eax, eax
jne case.0x18005104a.28022
add ebx, 0xa
cmp ebx, 0x3ac7
jbe 0x1800512a2
jmp case.0x18005104a.28027
cmp dword [rbp - 0x80], 2
jne 0x18005142c
cmp dword [rsp + 0x70], 0
jle 0x18005142c
xor r14d, r14d
nop dword [rax]
mov esi, 0x1160
cmp esi, esi
jne 0x18005140a
mov ebx, dword [rsp + 0x68]
test ebx, ebx
jne 0x180051359
mov r9, qword [rsp + 0x60]
mov r8, r10
mov rdx, r13
mov rcx, r13
call qword [0x1800a3990]
mov r15d, eax
test eax, eax
jne case.0x18005104a.28022
mov r10, qword [rsp + 0x58]
mov eax, dword [rsp + 0x6c]
add eax, eax
mov dword [rsp + 0x6c], eax
test al, 0x10
je 0x18005140a
cmp ebx, 1
jne 0x1800513e2
mov ebx, 0x7775
mov eax, ebx
sub eax, 0x7775
je 0x1800513b9
sub eax, 0x16
je 0x1800513ab
cmp eax, 0x16
jne 0x1800513d5
mov rax, qword [rbp - 0x78]
mov rdx, qword [r13 + 0x10]
mov rcx, qword [rax + 0x10]
call qword [0x1800a3860]
mov r15d, eax
test eax, eax
jne case.0x18005104a.28022
mov dword [rsp + 0x68], eax
jmp 0x1800513d5
mov rax, qword [rbp - 0x78]
mov rdx, qword [r13 + 8]
mov rcx, qword [rax + 8]
jmp 0x1800513c4
mov rax, qword [rbp - 0x78]
mov rdx, qword [r13]
mov rcx, qword [rax]
call qword [0x1800a3860]
mov r15d, eax
test eax, eax
jne case.0x18005104a.28022
add ebx, 0x16
cmp ebx, 0x77a1
jbe 0x180051375
jmp 0x18005140a
mov rax, qword [rsp + 0x60]
mov r9, r10
mov rdx, qword [rbp - 0x78]
mov r8, r13
mov rcx, r13
mov qword [rsp + 0x20], rax
call qword [0x1800a3988]
mov r15d, eax
test eax, eax
jne case.0x18005104a.28022
mov r10, qword [rsp + 0x58]
add esi, 0x21
cmp esi, 0x1160
jbe 0x180051327
inc r14d
cmp r14d, dword [rsp + 0x70]
jl 0x180051320
mov rax, qword [rbp + 0x138]
cmp dword [rax], 0
je 0x180051455
mov r9, qword [rsp + 0x60]
mov r8, r13
mov rdx, r10
mov ecx, 0xf5f
call fcn.180059a10
mov r15d, eax
jmp case.0x18005104a.28027
xor r15d, r15d
jmp case.0x18005104a.28027
mov dword [rbp - 0x80], 0
mov dword [rbp - 0x6c], 1
jmp case.0x18005104a.28027
mov r14, qword [rbp + 0x30]
mov r8, r10
mov r9, qword [rsp + 0x60]
mov rdx, r14
mov rcx, r14
call qword [0x1800a3990]
mov r15d, eax
test eax, eax
jne case.0x18005104a.28022
mov r9, qword [rsp + 0x60]
mov rdx, r14
mov r8, qword [rsp + 0x58]
mov rcx, r14
call qword [0x1800a3990]
mov r15d, eax
test eax, eax
jne case.0x18005104a.28022
lea esi, [rax + 9]
mov rcx, r14
lea rbx, [rbp + 0x30]
nop
mov rax, qword [rsp + 0x60]
mov r14, qword [rbx + 8]
mov r9, qword [rsp + 0x58]
mov r8, r14
mov rdx, qword [rbp - 0x78]
mov qword [rsp + 0x20], rax
call qword [0x1800a3988]
mov r15d, eax
test eax, eax
jne case.0x18005104a.28022
inc rsi
add rbx, 8
mov rcx, r14
cmp rsi, 0x10
jl 0x1800514c0
jmp case.0x18005104a.28027
mov ebx, 1
mov dword [rsp + 0x68], ebx
nop dword [rax]
mov eax, dword [rsp + 0x50]
sub dword [rbp - 0x6c], 1
jne 0x180051573
mov ebx, 0x76a2
nop
mov eax, ebx
sub eax, 0x76a2
je 0x180051533
cmp eax, 0x46
jne 0x18005155b
dec dword [rbp - 0x68]
jmp 0x18005155b
mov esi, dword [rbp - 0x68]
cmp esi, 0xffffffff
je 0x18005173c
mov edx, esi
mov rcx, r8
call qword [0x1800a3878]
mov r8, qword [rbp - 0x60]
mov dword [rsp + 0x50], eax
mov eax, dword [0x1800a3838]
mov dword [rbp - 0x6c], eax
add ebx, 0x46
cmp ebx, 0x76e8
jbe 0x180051520
mov ebx, dword [rsp + 0x68]
mov r10, qword [rsp + 0x58]
mov eax, dword [rsp + 0x50]
mov ecx, dword [0x1800a3838]
mov edx, eax
dec ecx
add eax, eax
shr edx, cl
mov ecx, dword [rbp - 0x80]
and edx, 1
mov dword [rsp + 0x50], eax
test ecx, ecx
jne 0x180051645
test edx, edx
je 0x180051514
mov r9d, dword [rsp + 0x70]
mov ecx, 4
mov eax, dword [rsp + 0x6c]
inc r9d
sub ecx, r9d
mov dword [rsp + 0x70], r9d
shl edx, cl
or eax, edx
mov dword [rbp - 0x80], 2
mov dword [rsp + 0x6c], eax
cmp r9d, 4
jne 0x180051510
mov r12d, 0x6066
movsxd r14, eax
cmp r12d, r12d
jne 0x180051719
cmp ebx, 1
jne 0x1800516af
mov esi, 0x7975
lea r14, [rbp + r14*8 - 0x10]
mov eax, esi
sub eax, 0x7975
je 0x180051683
cmp eax, 0x4b
jne 0x18005169e
mov rbx, qword [r14]
mov rdx, qword [r13 + 8]
mov rcx, qword [rbx + 8]
call qword [0x1800a3860]
mov r15d, eax
test eax, eax
jne case.0x18005104a.28022
mov rdx, qword [r13 + 0x10]
mov rcx, qword [rbx + 0x10]
call qword [0x1800a3860]
mov r15d, eax
test eax, eax
jne case.0x18005104a.28022
xor ebx, ebx
mov dword [rsp + 0x68], ebx
jmp 0x18005169e
cmp ecx, 1
jne 0x18005159b
test edx, edx
jne 0x18005159b
mov r9, qword [rsp + 0x60]
mov r8, r10
mov rdx, r13
mov rcx, r13
call qword [0x1800a3990]
mov r15d, eax
test eax, eax
jne case.0x18005104a.28022
mov r10, qword [rsp + 0x58]
mov r8, qword [rbp - 0x60]
jmp 0x180051510
mov rcx, qword [r14]
mov rdx, qword [r13]
mov rcx, qword [rcx]
call qword [0x1800a3860]
mov r15d, eax
test eax, eax
jne case.0x18005104a.28022
add esi, 0x4b
cmp esi, 0x79c0
jbe 0x1800515f2
jmp 0x180051705
xor ebx, ebx
mov r9, qword [rsp + 0x60]
mov r8, r10
mov rdx, r13
mov rcx, r13
call qword [0x1800a3990]
mov r15d, eax
test eax, eax
jne case.0x18005104a.28022
mov r10, qword [rsp + 0x58]
inc ebx
cmp ebx, 4
jl 0x1800516b1
mov rax, qword [rsp + 0x60]
mov r9, r10
mov rdx, qword [rbp + r14*8 - 0x10]
mov r8, r13
mov rcx, r13
mov qword [rsp + 0x20], rax
call qword [0x1800a3988]
mov r15d, eax
test eax, eax
jne case.0x18005104a.28022
xor eax, eax
mov dword [rbp - 0x80], 1
mov dword [rsp + 0x6c], eax
xor r14d, r14d
mov dword [rsp + 0x70], eax
mov ebx, dword [rsp + 0x68]
add r12d, 0x22
mov r10, qword [rsp + 0x58]
cmp r12d, 0x6066
jbe 0x1800515d9
mov r8, qword [rbp - 0x60]
jmp 0x180051510
mov r12d, 0x6dfc
jmp case.0x18005104a.28027
test r13, r13
jne case.0x18005104a.28027
lea r9, str.Crawford_
jmp 0x180051002
mov rcx, r8
mov dword [rsp + 0x50], 0
call qword [0x1800a3880]
dec eax
mov dword [rbp - 0x68], eax
xor eax, eax
mov dword [rsp + 0x6c], eax
mov dword [rsp + 0x70], eax
jmp case.0x18005104a.28027
mov rcx, qword [rsp + 0x78]
call qword [0x1800a3850]
mov r9, qword [rsp + 0x60]
mov r8, qword [rsp + 0x58]
mov rdx, qword [rbp + 0x30]
mov rcx, qword [rbp - 0x78]
mov qword [rsp + 0x78], 0
call qword [0x1800a3990]
mov r15d, eax
test eax, eax
je case.0x18005104a.28027
mov r12d, 0x6e20
jmp case.0x18005104a.28027
test r10, r10
jne 0x1800517e8
lea r9, str.New_to_croquet_
mov dword [rsp + 0x38], r10d
lea r8, [0x180082820]
mov edx, 0x5836
lea rcx, [rsp + 0x38]
call fcn.18000e4c0
mov r10, qword [rsp + 0x58]
lea rdx, [rsp + 0x60]
mov rcx, r10
call qword [0x1800a3950]
test eax, eax
jne 0x1800518b5
lea rcx, [rsp + 0x78]
call qword [0x1800a3840]
mov r15d, eax
test eax, eax
je case.0x18005104a.28027
mov eax, 0x596
cmp eax, eax
je 0x1800518a3
add eax, 0x19
cmp eax, 0x596
jbe 0x180051817
mov eax, dword [rsp + 0x30]
add r12d, 0x12
mov dword [rsp + 0x38], r12d
cmp r12d, eax
ja case.0x18005104a.28026
mov r10, qword [rsp + 0x58]
mov r8, qword [rbp - 0x60]
mov r14, qword [rbp - 0x58]
jmp 0x180050d16
mov rax, qword [rbp - 0x58]
mov dword [rsp + 0x48], 0
mov dword [rax], 1
jmp case.0x18005104a.28026
cmp byte [rsp + 0x40], 0
je 0x180051897
mov r8d, dword [rbp - 0x64]
lea r9, [rbp - 0x40]
mov rcx, qword [rbp - 0x48]
lea rdx, [rbp + 0x70]
mov qword [rsp + 0x20], 0
call qword [sym.imp.KERNEL32.dll_ReadConsoleA]
mov rcx, qword [rbp - 0x48]
call qword [sym.imp.KERNEL32.dll_FlushConsoleInputBuffer]
mov r8, qword [rbp - 0x60]
cmp qword [r8 + 8], 0
setne byte [rsp + 0x48]
jmp case.0x18005104a.28026
mov rcx, qword [rsp + 0x60]
call qword [0x1800a3968]
mov dword [rsp + 0x48], r15d
jmp case.0x18005104a.28026
mov dword [rsp + 0x48], eax
mov rax, qword [rsp + 0x48]
mov rcx, qword [rbp + 0xb0]
xor rcx, rsp
call fcn.18005fbe0
mov rbx, qword [rsp + 0x218]
movaps xmm6, xmmword [rsp + 0x1c0]
add rsp, 0x1d0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret