Function at 0x10003a50
Capabilities:
Get memory capacity

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x2f4
mov eax, dword [0x1000d450]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
mov esi, dword [ebp + 8]
push edi
mov edi, dword [ebp + 0xc]
push 0x220
lea eax, [ebp - 0x298]
push 0
push eax
mov dword [ebp - 0x2dc], esi
call dword [0x1000daec]
push 0x20
lea ecx, [ebp - 0x297]
push ecx
push 0x1000d544
push str.Group
push str.Setting
mov byte [ebp - 0x298], 0xc8
call fcn.10007df0
push 0x10
lea edx, [ebp - 0x78]
push 0
push edx
call dword [0x1000daec]
mov edx, dword [esi + 0x48]
add esp, 0x2c
lea eax, [ebp - 0x2e8]
push eax
lea ecx, [ebp - 0x78]
push ecx
push edx
mov dword [ebp - 0x2e8], 0x10
call dword [0x1000db28]
push 4
lea eax, [ebp - 0x74]
push eax
lea ecx, [ebp - 0x274]
push ecx
call dword [0x1000dae8]
lea edx, [ebp - 0x270]
push 0x32
push edx
call fcn.100047f0
add esp, 0x14
lea eax, [ebp - 0x23c]
push eax
mov dword [ebp - 0x23c], 0x9c
call dword [0x1000da38]
lea ecx, [ebp - 0x2ec]
push ecx
lea edx, [ebp - 0x2e0]
push edx
lea eax, [ebp - 0x2e4]
push eax
call fcn.10003800
add esp, 0xc
test eax, eax
je 0x10003b59
mov ecx, dword [ebp - 0x2e4]
mov edx, dword [ebp - 0x2e0]
mov eax, dword [ebp - 0x2ec]
mov dword [ebp - 0x1a0], ecx
mov dword [ebp - 0x19c], edx
mov dword [ebp - 0x198], eax
lea ecx, [ebp - 0x194]
push ecx
call fcn.10003850
add esp, 4
lea edx, [ebp - 0x2d8]
push edx
mov dword [ebp - 0x2d8], 0x40
call dword [sym.imp.KERNEL32.dll_GlobalMemoryStatusEx]
mov eax, dword [ebp - 0x2d0]
mov ecx, dword [ebp - 0x2cc]
mov edx, dword [ebp + 0x10]
shrd eax, ecx, 0x14
shr ecx, 0x14
mov dword [ebp - 0x174], eax
mov dword [ebp - 0x180], edx
call fcn.100046d0
mov dword [ebp - 0x17c], eax
call fcn.10004830
mov esi, dword [sym.imp.KERNEL32.dll_lstrcpyA]
test eax, eax
push 0x1000d350
lea ecx, [ebp - 0x170]
setne al
push ecx
mov byte [ebp - 0x178], al
call esi
push 0x1000d2bc
lea edx, [ebp - 0x15c]
push edx
call esi
push 0x1000d370
lea eax, [ebp - 0x98]
push eax
call esi
xor ecx, ecx
mov esi, 1
cmp dword [0x1000d664], esi
mov dword [ebp - 0xd8], 0
sete cl
xor edx, edx
cmp dword [0x1000d668], esi
sete dl
xor eax, eax
cmp dword [0x1000d66c], esi
mov dword [ebp - 0xd4], ecx
sete al
xor ecx, ecx
cmp dword [0x1000d670], esi
mov dword [ebp - 0xd0], edx
sete cl
xor edx, edx
cmp dword [0x1000d674], esi
mov dword [ebp - 0xcc], eax
sete dl
xor eax, eax
cmp dword [0x1000d678], esi
mov dword [ebp - 0xc8], ecx
sete al
xor ecx, ecx
cmp dword [0x1000d67c], esi
mov dword [ebp - 0xc4], edx
sete cl
xor edx, edx
cmp dword [0x1000d680], esi
mov dword [ebp - 0xc0], eax
sete dl
xor eax, eax
cmp dword [0x1000d684], esi
mov dword [ebp - 0xbc], ecx
sete al
xor ecx, ecx
cmp dword [0x1000d688], esi
mov dword [ebp - 0xb8], edx
sete cl
xor edx, edx
cmp dword [0x1000d68c], esi
mov dword [ebp - 0xb4], eax
sete dl
xor eax, eax
mov dword [ebp - 0xb0], ecx
mov dword [ebp - 0xac], edx
cmp dword [0x1000d690], esi
mov dword [ebp - 0x2f4], 8
sete al
xor ecx, ecx
cmp dword [0x1000d694], esi
sete cl
xor edx, edx
cmp dword [0x1000d698], esi
mov dword [ebp - 0xa8], eax
sete dl
xor eax, eax
cmp dword [0x1000d69c], esi
mov dword [ebp - 0xa4], ecx
sete al
lea ecx, [ebp - 0x2f4]
push ecx
mov dword [ebp - 0xa0], edx
mov dword [ebp - 0x9c], eax
call dword [sym.imp.USER32.dll_GetLastInputInfo]
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [ebp - 0x2f0]
cmp eax, 0x2bf20
jbe 0x10003d2a
mov dword [ebp - 0xd8], esi
mov ecx, edi
call fcn.100072a0
test al, al
je 0x10003d73
mov edx, dword [edi + 4]
mov eax, dword [edi + 0x7c]
mov dword [ebp - 0x144], edx
mov dword [ebp - 0x140], eax
lea eax, [edi + 8]
lea edx, [ebp - 0x13c]
sub edx, eax
mov cl, byte [eax]
mov byte [edx + eax], cl
add eax, esi
test cl, cl
jne 0x10003d52
lea eax, [edi + 0x3a]
lea edx, [ebp - 0x10a]
sub edx, eax
mov cl, byte [eax]
mov byte [edx + eax], cl
add eax, esi
test cl, cl
jne 0x10003d68
call fcn.10003980
push 0x63
lea ecx, [ebp - 0x67]
push 0
push ecx
mov esi, eax
mov byte [ebp - 0x68], 0
call sub.MSVCR100.dll_memset
add esp, 0xc
cmp esi, 0x3e8
jl 0x10003dbd
mov eax, 0x10624dd3
imul esi
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
push eax
lea ecx, [ebp - 0x68]
push str._u_Gbps
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
lea edx, [ebp - 0x68]
push edx
jmp 0x10003dd1
push esi
lea eax, [ebp - 0x68]
push str._u_Mbps
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
lea ecx, [ebp - 0x68]
push ecx
call dword [sym.imp.MSVCR100.dll_printf]
mov ecx, dword [ebp - 0x2dc]
add esp, 0x10
push 0x220
lea edx, [ebp - 0x298]
push edx
call fcn.100016e0
mov ecx, dword [ebp - 4]
pop edi
xor ecx, ebp
pop esi
call fcn.100088cc
mov esp, ebp
pop ebp
ret