Function at 0x10315b90
Capabilities:
Get memory capacity

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x98
mov eax, dword [0x11ad127c]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
push edi
mov edi, ecx
mov ecx, dword [ebp + 0xc]
mov dword [ebp - 0x98], edi
mov dword [edi + 8], eax
mov dword [edi + 0x1c], ecx
mov eax, dword [ecx]
call dword [eax + 0x18]
mov ecx, dword [edi + 8]
push 0
push 0
push 0
push 0x40000082
push 1
mov dword [edi + 4], eax
mov eax, dword [ecx]
push 1
push 0x40000
call dword [eax]
mov dword [edi + 0xc], eax
test eax, eax
jne 0x10315c58
push 0xffffffffffffffff
push 0x10469160
mov dword [ebp - 0x4c], eax
xorps xmm0, xmm0
lea eax, [ebp - 0x24]
push 0x20
push eax
movups xmmword [ebp - 0x44], xmm0
movups xmmword [ebp - 0x34], xmm0
call fcn.1043cfe3
add esp, 0x10
mov dword [ebp - 0x4c], 3
mov dword [ebp - 0x44], 0x20
mov dword [ebp - 0x40], 0
call fcn.1027e6c0
push eax
lea eax, [ebp - 0x4c]
push eax
push 5
push 0x1045c930
push 0xdd7
push 0x1045c5a0
push dword [edi + 8]
push 0x8007000e
call fcn.1029c7f0
test eax, eax
pop edi
setns al
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1045066c
mov esp, ebp
pop ebp
ret 8
push ebx
push 0x8000
call fcn.10450898
add esp, 4
mov dword [edi + 0x10], eax
lea ebx, [edi + 0x10]
test eax, eax
jne 0x10315d31
mov ecx, dword [edi + 8]
push dword [edi + 0xc]
mov eax, dword [ecx]
call dword [eax + 0xc]
push 0xffffffffffffffff
push 0x10469160
xorps xmm0, xmm0
mov dword [edi + 0xc], 0
lea eax, [ebp - 0x24]
mov dword [ebp - 0x4c], 0
push 0x20
push eax
movups xmmword [ebp - 0x44], xmm0
movups xmmword [ebp - 0x34], xmm0
call fcn.1043cfe3
add esp, 0x10
mov dword [ebp - 0x4c], 1
lea eax, [ebp - 0x8c]
mov dword [ebp - 0x44], 0x8000
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x8c], 0x40
push eax
call dword [sym.imp.KERNEL32.dll_GlobalMemoryStatusEx]
test eax, eax
je 0x10315cf2
push 0xffffffffffffffff
push 0x10454240
lea eax, [ebp - 0x24]
push 0x20
push eax
call fcn.1043cfe3
add esp, 0x10
call fcn.1027e6c0
push eax
lea eax, [ebp - 0x4c]
push eax
push 5
push 0x1045c930
push 0xde1
push 0x1045c5a0
push dword [edi + 8]
push 0x8007000e
call fcn.1029c7f0
test eax, eax
pop ebx
setns al
pop edi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1045066c
mov esp, ebp
pop ebp
ret 8
movaps xmm4, xmmword [0x1122e040]
lea ecx, [eax + 0x7ff8]
push esi
xor esi, esi
mov dword [edi + 0x14], 0
cmp eax, ebx
ja 0x10315d54
cmp ecx, ebx
jae 0x10315e07
movaps xmm5, xmmword [0x10a89ae0]
mov ecx, 0x20
mov edi, 0x10
mov dword [ebp - 0x90], ecx
mov ebx, eax
nop dword [eax]
movd xmm0, esi
lea eax, [edi - 0xb]
pshufd xmm0, xmm0, 0
lea edx, [edi - 3]
paddd xmm0, xmm5
movd xmm3, edi
movups xmmword [ecx + ebx - 0x20], xmm0
add esi, 0x10
movd xmm0, eax
lea eax, [edi - 7]
pshufd xmm0, xmm0, 0
paddd xmm0, xmm4
movd xmm2, edx
movups xmmword [ecx + ebx - 0x10], xmm0
movd xmm0, eax
lea eax, [edi - 1]
pshufd xmm0, xmm0, 0
paddd xmm0, xmm4
movups xmmword [ecx + ebx], xmm0
lea ecx, [edi - 2]
add edi, 0x10
movd xmm0, eax
movd xmm1, ecx
mov ecx, dword [ebp - 0x90]
punpckldq xmm2, xmm0
punpckldq xmm1, xmm3
punpckldq xmm2, xmm1
movups xmmword [ecx + ebx + 0x10], xmm2
add ecx, 0x40
mov dword [ebp - 0x90], ecx
cmp ecx, 0x7fe0
jb 0x10315d70
mov edi, dword [ebp - 0x98]
lea ebx, [edi + 0x10]
cmp esi, 0x1fff
jae 0x10315e19
mov eax, dword [ebx]
lea ecx, [esi + 1]
mov dword [eax + esi*4], ecx
mov esi, ecx
cmp esi, 0x1fff
jb 0x10315e07
mov eax, dword [ebx]
mov ecx, dword [ebp - 4]
pop esi
pop ebx
mov dword [eax + 0x7ffc], 0xffffffff
xor ecx, ebp
mov dword [edi + 0x18], 0x2000
mov al, 1
pop edi
call fcn.1045066c
mov esp, ebp
pop ebp
ret 8