Function at 0x43ca10
Capabilities:
Get memory capacity

Disassembly:
push ebp
push esp
pop ebp
add esp, 0xffffffb4
push ebx
push esi
push edi
sub edx, edx
mov dword [ebp - 0x4c], edx
mov dword [ebp - 0x48], edx
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], edx
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x30], edx
mov dword [ebp - 0x2c], edx
mov dword [ebp - 4], edx
mov dword [ebp - 8], edx
mov esi, eax
lea edi, [ebp - 0x28]
xor eax, eax
push ebp
push 0x43cc7a
push dword fs:[eax]
mov dword fs:[eax], esp
mov dword [edi], 0x20
push edi
call sub.KERNEL32.DLL_GlobalMemoryStatus
mov ebx, dword [edi + 8]
cmp ebx, 0x400
jae 0x43ca7e
mov eax, ebx
xor edx, edx
push edx
push eax
lea eax, [ebp - 0x2c]
call fcn.00408d10
mov edx, dword [ebp - 0x2c]
lea eax, [ebp - 4]
mov ecx, 0x43cc90
call fcn.004050a8
mov ebx, dword [edi + 8]
cmp ebx, 0x100000
jae 0x43cac6
mov dword [ebp - 0x38], ebx
xor eax, eax
mov dword [ebp - 0x34], eax
fild qword [ebp - 0x38]
fdiv dword [0x43cc94]
add esp, 0xfffffff4
fstp xword [esp]
wait
lea eax, [ebp - 0x30]
push eax
mov ecx, 1
push 0xa
pop edx
nop
nop
mov al, 2
call fcn.0040a430
mov edx, dword [ebp - 0x30]
lea eax, [ebp - 4]
mov ecx, 0x43cca0
call fcn.004050a8
mov ebx, dword [edi + 8]
cmp ebx, 0x40000000
jae 0x43cb0e
mov dword [ebp - 0x38], ebx
sub eax, eax
mov dword [ebp - 0x34], eax
fild qword [ebp - 0x38]
fdiv dword [0x43cca4]
add esp, 0xfffffff4
fstp xword [esp]
wait
lea eax, [ebp - 0x3c]
push eax
push 1
pop ecx
pushal
popal
nop
nop
push 0xa
pop edx
mov al, 2
call fcn.0040a430
mov edx, dword [ebp - 0x3c]
lea eax, [ebp - 4]
mov ecx, 0x43ccb0
call fcn.004050a8
mov ebx, dword [edi + 8]
cmp ebx, 0x40000000
jbe 0x43cb56
mov dword [ebp - 0x38], ebx
sub eax, eax
mov dword [ebp - 0x34], eax
fild qword [ebp - 0x38]
fdiv dword [0x43ccb4]
add esp, 0xfffffff4
fstp xword [esp]
wait
lea eax, [ebp - 0x40]
push eax
push 1
pop ecx
push ecx
pop ecx
mov edx, 0xa
mov al, 2
call fcn.0040a430
mov edx, dword [ebp - 0x40]
lea eax, [ebp - 4]
mov ecx, 0x43ccc0
call fcn.004050a8
mov ebx, dword [edi + 0xc]
cmp ebx, 0x100000
jae 0x43cb9e
mov dword [ebp - 0x38], ebx
xor eax, eax
mov dword [ebp - 0x34], eax
fild qword [ebp - 0x38]
fdiv dword [0x43cc94]
add esp, 0xfffffff4
fstp xword [esp]
wait
lea eax, [ebp - 0x44]
push eax
pushfd
xor ecx, ecx
inc ecx
popfd
push 0xa
pop edx
pushal
popal
mov al, 2
call fcn.0040a430
mov edx, dword [ebp - 0x44]
lea eax, [ebp - 8]
mov ecx, 0x43cca0
call fcn.004050a8
mov ebx, dword [edi + 0xc]
cmp ebx, 0x40000000
jae 0x43cbe6
mov dword [ebp - 0x38], ebx
sub eax, eax
mov dword [ebp - 0x34], eax
fild qword [ebp - 0x38]
fdiv dword [0x43cca4]
add esp, 0xfffffff4
fstp xword [esp]
wait
lea eax, [ebp - 0x48]
push eax
nop
push 1
nop
pop ecx
push 0xa
pop edx
nop
nop
mov al, 2
call fcn.0040a430
mov edx, dword [ebp - 0x48]
lea eax, [ebp - 8]
mov ecx, 0x43ccb0
call fcn.004050a8
mov ebx, dword [edi + 0xc]
cmp ebx, 0x40000000
jbe 0x43cc2e
mov dword [ebp - 0x38], ebx
xor eax, eax
mov dword [ebp - 0x34], eax
fild qword [ebp - 0x38]
fdiv dword [0x43ccb4]
add esp, 0xfffffff4
fstp xword [esp]
wait
lea eax, [ebp - 0x4c]
push eax
pushfd
xor ecx, ecx
inc ecx
popfd
push 0xa
pop edx
push ebx
pop ebx
mov al, 2
call fcn.0040a430
mov edx, dword [ebp - 0x4c]
lea eax, [ebp - 8]
mov ecx, 0x43ccc0
call fcn.004050a8
push dword [ebp - 4]
push 0x43cccc
push dword [ebp - 8]
push esi
pop eax
mov edx, 3
call fcn.0040511c
sub eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x43cc81
lea eax, [ebp - 0x4c]
nop
nop
push 5
pop edx
call fcn.00404dc0
lea eax, [ebp - 0x30]
mov edx, 2
call fcn.00404dc0
lea eax, [ebp - 8]
push ecx
pop ecx
push 2
pop edx
call fcn.00404dc0
ret