Function at 0x4ae6b0
Capabilities:
Get memory capacity

Disassembly:
push ebx
push ebp
push esi
mov esi, dword [sym.imp.KERNEL32.dll_GlobalMemoryStatus]
mov ebp, ecx
push 0x661398
call esi
mov ecx, dword [ebp + 0x2cf0c]
xor ebx, ebx
push ebx
call fcn.004a6290
fld dword [ebp + 0x5c]
fcomp dword [0x5887b0]
fnstsw ax
test ah, 1
je 0x4ae71b
fld dword [ebp + 0x5c]
fcomp dword [0x588314]
fnstsw ax
test ah, 1
jne 0x4ae70b
fld dword [ebp + 0x60]
fcomp dword [0x588314]
fnstsw ax
test ah, 1
je 0x4ae70b
mov ecx, dword [ebp + 0x2cf0c]
call fcn.0049e510
mov ecx, dword [ebp + 0x2cf0c]
call fcn.0049e570
jmp 0x4aeb5e
fld dword [ebp + 0x60]
fcomp dword [0x5887b0]
fnstsw ax
test ah, 1
je 0x4ae898
mov ecx, dword [ebp + 0x2cf0c]
push 1
call fcn.004a6290
fld dword [ebp + 0x18]
fcomp dword [0x588314]
fnstsw ax
test ah, 0x40
je 0x4ae85a
movsx eax, byte [ebp + 0x2a]
lea ecx, [eax + eax*2]
lea ecx, [ecx + ecx*8]
shl ecx, 1
sub ecx, eax
mov eax, dword [ecx*4 + 0x620f80]
test al, 0x20
jne 0x4ae7c0
test ah, 0x20
jne 0x4ae7c0
test al, 0x40
je 0x4ae883
cmp byte [ebp + 0x4d], bl
jne 0x4ae8a8
fld dword [ebp + 4]
fcomp dword [0x588314]
fnstsw ax
test ah, 0x40
je 0x4ae883
push ebx
mov ecx, 0x65cc90
mov dword [ebp + 0x5c], 0x447a4000
mov dword [ebp + 0x60], 0x447a2000
call fcn.0048b7b0
push 0x638b0d
mov ecx, 0x656120
call fcn.00449b30
jmp 0x4ae883
mov esi, dword [ebp + 0x2cf0c]
fld dword [esi]
fcomp dword [0x588314]
fnstsw ax
test ah, 0x40
je 0x4ae7dc
mov edx, 1
jmp 0x4ae7de
xor edx, edx
fld dword [ebp + 4]
fcomp dword [0x588314]
fnstsw ax
test ah, 0x40
je 0x4ae7f5
mov eax, 1
jmp 0x4ae7f7
xor eax, eax
xor ecx, ecx
cmp byte [ebp + 0x4d], bl
sete cl
and ecx, eax
test edx, ecx
je 0x4ae883
mov ecx, esi
call fcn.004a6270
mov ecx, dword [ebp + 0x2cf0c]
inc al
mov byte [ebp + 0x4d], al
call fcn.0049e510
mov al, byte [ebp + 0x4d]
cmp al, 1
jne 0x4ae833
mov dword [ebp + 0x5c], 0x42f20000
mov dword [ebp + 0x60], 0x42f10000
jmp 0x4ae845
cmp al, 2
jne 0x4ae845
mov dword [ebp + 0x5c], 0x43170000
mov dword [ebp + 0x60], 0x43168000
push 6
mov ecx, 0x6239d8
call fcn.0048e9f0
mov ecx, ebp
call fcn.004b6c00
jmp 0x4ae883
mov edx, dword [ebp + 0x18]
mov dword [ebp + 0x1c], edx
fld dword [0x6213fc]
fadd dword [ebp + 0x18]
fst dword [ebp + 0x18]
fcomp dword [0x588c2c]
fnstsw ax
test ah, 1
jne 0x4ae883
mov dword [ebp + 0x18], ebx
mov dword [ebp + 0x1c], 0xbf000000
cmp byte [ebp + 0x4d], bl
jne 0x4ae8a8
mov ecx, dword [ebp + 0x2cf0c]
call fcn.0049d9a0
jmp 0x4aeb5e
fld dword [ebp + 0x5c]
fcomp dword [0x589ee0]
fnstsw ax
test ah, 1
je 0x4ae8b8
mov ecx, dword [ebp + 0x2cf0c]
call fcn.004a19a0
jmp 0x4aeb5e
fld dword [ebp + 0x60]
fcomp dword [0x589ee0]
fnstsw ax
test ah, 1
je 0x4ae91a
push edi
mov ecx, ebp
call fcn.004b6c00
push ebx
mov ecx, ebp
call fcn.004bf2e0
lea esi, [ebp + 0x2e4ce]
lea edi, [ebp + 0x2a028]
mov ecx, 0x2a
mov byte [ebp + 0x2cf08], 1
rep movsd dword es:[edi], dword [esi]
lea esi, [ebp + 0x2fc4f]
lea edi, [ebp + 0x2a0db]
mov ecx, 0xc
mov dword [ebp + 0x5c], 0x43150000
rep movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
mov dword [ebp + 0x60], 0x43148000
pop edi
jmp 0x4aeb5e
fld dword [ebp + 0x5c]
fcomp dword [0x588f8c]
fnstsw ax
test ah, 1
jne 0x4ae93e
fld dword [ebp + 0x60]
fcomp dword [0x588f8c]
fnstsw ax
test ah, 1
jne 0x4aeb5e
fld dword [ebp + 0x5c]
fcomp dword [0x5889f4]
fld dword [ebp + 0x5c]
fnstsw ax
test ah, 0x41
je 0x4ae989
fcomp dword [0x588b2c]
fnstsw ax
test ah, 1
jne 0x4ae979
fld dword [ebp + 0x60]
fcomp dword [0x588b2c]
fnstsw ax
test ah, 1
je 0x4ae979
mov ecx, dword [ebp + 0x2cf0c]
call fcn.0049e510
mov ecx, dword [ebp + 0x2cf0c]
call fcn.004a2630
jmp 0x4aeb5e
fcomp dword [0x589edc]
fnstsw ax
test ah, 1
je 0x4ae9d1
fld dword [ebp + 0x5c]
fcomp dword [0x589efc]
fnstsw ax
test ah, 1
jne 0x4ae9c1
fld dword [ebp + 0x60]
fcomp dword [0x589efc]
fnstsw ax
test ah, 1
je 0x4ae9c1
mov ecx, dword [ebp + 0x2cf0c]
call fcn.0049e510
mov ecx, dword [ebp + 0x2cf0c]
call fcn.004a5100
jmp 0x4aeb5e
fld dword [ebp + 0x60]
fcomp dword [0x589edc]
fnstsw ax
test ah, 1
je 0x4aea05
mov byte [ebp + 0x2cf07], 1
mov byte [ebp + 0x2cf08], 1
mov dword [ebp + 0x5c], 0x439a8000
mov dword [ebp + 0x60], 0x439a4000
mov byte [ebp], bl
jmp 0x4aeb5e
fld dword [ebp + 0x5c]
fcomp dword [0x5884d0]
fld dword [ebp + 0x5c]
fnstsw ax
test ah, 1
je 0x4aea6a
fcomp dword [0x589ef8]
fnstsw ax
test ah, 1
jne 0x4aea40
fld dword [ebp + 0x60]
fcomp dword [0x589ef8]
fnstsw ax
test ah, 1
je 0x4aea40
mov ecx, dword [ebp + 0x2cf0c]
call fcn.0049e510
fld dword [ebp + 0x5c]
fcomp dword [0x589ef8]
mov ecx, dword [ebp + 0x2cf0c]
fnstsw ax
test ah, 1
je 0x4aea60
call fcn.004a2630
jmp 0x4aeb5e
call fcn.004a3c20
jmp 0x4aeb5e
fcomp dword [0x589ed4]
fnstsw ax
test ah, 1
je 0x4aea87
mov ecx, dword [ebp + 0x2cf0c]
call fcn.004a2630
jmp 0x4aeb5e
fld dword [ebp + 0x5c]
fcomp dword [0x5889a4]
fnstsw ax
test ah, 1
jne 0x4aeab7
fld dword [ebp + 0x60]
fcomp dword [0x5889a4]
fnstsw ax
test ah, 1
je 0x4aeab7
mov ecx, dword [ebp + 0x2cf0c]
call fcn.004a2630
jmp 0x4aeb5e
fld dword [ebp + 0x5c]
fcomp dword [0x5883f0]
fnstsw ax
test ah, 1
jne 0x4aeb5e
fld dword [ebp + 0x5c]
fcomp dword [0x589ef4]
fnstsw ax
test ah, 1
je 0x4aeae8
mov ecx, dword [ebp + 0x2cf0c]
call fcn.0049d9a0
jmp 0x4aeb5e
fld dword [ebp + 0x5c]
fcomp dword [0x588ce8]
fnstsw ax
test ah, 1
je 0x4aeb5e
fld dword [ebp + 0x60]
fcomp dword [0x589ef4]
fnstsw ax
test ah, 1
je 0x4aeb53
mov ecx, dword [ebp + 0x2cf0c]
call fcn.0049e510
mov eax, dword [ebp + 0x2a0d0]
cmp eax, ebx
je 0x4aeb2e
push eax
mov ecx, 0x63b370
call fcn.004168a0
mov dword [ebp + 0x2a0d0], ebx
push 0x64f560
mov ecx, 0x64f558
call fcn.00432ca0
push 0x64f960
mov ecx, 0x64f558
call fcn.00432ca0
push 0x661398
call esi
mov ecx, dword [ebp + 0x2cf0c]
call fcn.004a0300
mov ecx, dword [ebp + 0x2cf0c]
call fcn.004a6180
fld dword [ebp + 4]
fcomp dword [0x588314]
fnstsw ax
test ah, 0x40
jne 0x4aeb8d
mov eax, dword [ebp + 4]
mov dword [ebp + 8], eax
fld dword [0x6213fc]
fadd dword [ebp + 4]
fstp dword [ebp + 4]
jmp 0x4aeb97
mov dword [ebp + 4], ebx
mov dword [ebp + 8], 0xbf000000
fld dword [ebp + 4]
fcomp dword [0x588c2c]
fnstsw ax
test ah, 0x41
jne 0x4aebb1
mov dword [ebp + 4], ebx
mov dword [ebp + 8], 0xbf000000
pop esi
pop ebp
pop ebx
ret