Function at 0x489100
Capabilities:
Get memory capacity

Disassembly:
push ebx
push esi
mov esi, ecx
push edi
xor ebx, ebx
push 0x440c4000
lea edi, [esi + 0x34]
mov byte [esi + 0x2c], bl
mov ecx, edi
call fcn.0048ee10
test eax, eax
je 0x489187
mov ecx, 0x6239d8
call fcn.0048e0e0
push 0x65cb00
call dword [sym.imp.KERNEL32.dll_GlobalMemoryStatus]
push ebx
push 0x638b0d
mov ecx, 0x656120
call fcn.004499e0
push ebx
push ebx
push 0x64
mov ecx, 0x656120
call fcn.00449fa0
mov ecx, 0x655ec8
call fcn.0040fe70
push ebx
push 0x3f800000
push 0xff000000
push 7
push ebx
push ebx
mov ecx, 0x620cd0
call fcn.0040d7e0
mov ecx, 0x63b108
call fcn.0043df20
mov ecx, 0x655ec8
call fcn.0040fe90
mov al, byte [0x620ce9]
cmp al, bl
mov eax, dword [0x620cd4]
jne 0x4891a3
mov ecx, dword [eax]
push ebx
push 0x1d
push eax
call dword [ecx + 0xc8]
jmp 0x4891b0
mov edx, dword [eax]
push 1
push 0x1d
push eax
call dword [edx + 0xc8]
mov eax, dword [0x620cd4]
push ebx
push 0x8e
push eax
mov ecx, dword [eax]
call dword [ecx + 0xc8]
mov eax, dword [0x620cd4]
push 1
push 0x8f
push eax
mov edx, dword [eax]
call dword [edx + 0xc8]
mov al, byte [0x620cf4]
cmp al, bl
mov eax, dword [0x620cd4]
jne 0x4891f5
mov ecx, dword [eax]
push ebx
push 7
push eax
call dword [ecx + 0xc8]
jmp 0x489202
mov edx, dword [eax]
push 1
push 7
push eax
call dword [edx + 0xc8]
mov al, byte [0x620cf4]
cmp al, bl
mov eax, dword [0x620cd4]
jne 0x48921e
mov ecx, dword [eax]
push ebx
push 0xe
push eax
call dword [ecx + 0xc8]
jmp 0x48922b
mov edx, dword [eax]
push 1
push 0xe
push eax
call dword [edx + 0xc8]
mov eax, dword [0x620cd4]
push ebp
push 1
push 0x16
mov ecx, dword [eax]
push eax
call dword [ecx + 0xc8]
mov ecx, 0x65cc90
call fcn.0048b430
push 0x40a00000
mov ecx, edi
mov byte [esi + 0x50], al
call fcn.0048ee10
test eax, eax
je 0x4892e0
lea ebp, [esi + 0x40]
push ebx
mov ecx, ebp
call fcn.0048ee10
test eax, eax
je 0x4892e0
push ebx
push ebx
push 0x64
mov ecx, 0x656120
call fcn.00449fa0
cmp byte [0x5d5b14], 1
jne 0x4892a1
mov al, 2
push 0x3f800000
mov ecx, ebp
mov byte [esi + 0x52], al
mov byte [esi + 0x53], al
mov byte [esi + 0x54], bl
call fcn.0048edf0
mov dword [esi + 0x58], ebx
jmp 0x4892e0
movsx eax, byte [esi + 0x50]
lea ecx, [eax + eax*2]
lea edx, [ecx + ecx*8]
shl edx, 1
sub edx, eax
mov eax, dword [edx*4 + 0x620f80]
test al, 0x20
jne 0x4892bf
test ah, 0x20
je 0x4892e0
push 0x40c00000
mov ecx, edi
call fcn.0048edd0
push ebx
mov ecx, 0x65cc90
call fcn.0048b7b0
mov ecx, 0x656120
call fcn.0044a140
mov ecx, esi
mov byte [0x620f12], 1
call fcn.0048a620
mov ecx, esi
call fcn.004895b0
mov al, byte [0x620ce9]
pop ebp
cmp al, bl
mov eax, dword [0x620cd4]
jne 0x489312
mov ecx, dword [eax]
push ebx
push 0x1d
push eax
call dword [ecx + 0xc8]
jmp 0x48931e
mov edx, dword [eax]
push ebx
push 0x1d
push eax
call dword [edx + 0xc8]
mov eax, dword [0x620cd4]
push 1
push 0x8e
push eax
mov ecx, dword [eax]
call dword [ecx + 0xc8]
mov eax, dword [0x620cd4]
push ebx
push 0x8f
push eax
mov edx, dword [eax]
call dword [edx + 0xc8]
mov ecx, esi
call fcn.00489b10
push 0x40a00000
mov ecx, edi
call fcn.0048ee10
test eax, eax
jne 0x4893e8
push 0x42f00000
mov ecx, edi
call fcn.0048ee10
test eax, eax
jne 0x4893e8
mov eax, dword [0x6213fc]
mov ecx, edi
push eax
call fcn.0048edf0
push 0x40800000
mov ecx, edi
call fcn.0048ee10
test eax, eax
je 0x4893b5
mov ecx, 0x656120
call fcn.0044a140
push ebx
push ebx
push 0x64
mov ecx, 0x656120
call fcn.00449fa0
push ebx
push ebx
push 0x6c
mov ecx, 0x656120
call fcn.00449fa0
push 0x40a00000
mov ecx, edi
call fcn.0048ee10
test eax, eax
je 0x4893cc
push 0x40a00000
jmp 0x4893e1
push 0x42f00000
mov ecx, edi
call fcn.0048ee10
test eax, eax
je 0x4893e8
push 0x42f00000
mov ecx, edi
call fcn.0048edd0
push 0x43390000
mov ecx, edi
call fcn.0048ee10
test eax, eax
je 0x489400
push ebx
mov ecx, edi
call fcn.0048edd0
push 0x43820000
mov ecx, edi
call fcn.0048ee10
test eax, eax
je 0x48941b
push ebx
mov ecx, edi
call fcn.0048edd0
mov dword [esi + 0x58], ebx
push 0x43b40000
mov ecx, edi
call fcn.0048ee10
test eax, eax
je 0x489447
push ebx
push 0x638b0d
mov ecx, 0x656120
call fcn.004499e0
push 0x42f00000
mov ecx, edi
call fcn.0048edd0
push 0x440c0000
mov ecx, edi
call fcn.0048ee10
test eax, eax
je 0x4894cf
mov ecx, 0x65cc90
call fcn.0048b800
push 0x64
mov ecx, 0x656120
call fcn.0044a0d0
cmp byte [esi + 0x51], 1
jne 0x489498
mov ecx, 0x6239d8
call fcn.0048d8b0
push 0x440c4000
mov ecx, edi
call fcn.0048edd0
mov byte [esi + 0x51], bl
mov byte [0x621370], 0xb1
jmp 0x489521
mov ecx, esi
call fcn.004890d0
mov ecx, dword [0x661334]
call fcn.00535cc0
push ebx
mov ecx, 0x656120
mov byte [esi + 0x2c], 8
mov byte [esi + 0x51], 1
call fcn.00449b60
mov ecx, 0x65ba48
mov byte [0x65ba48], bl
call fcn.00485e10
jmp 0x489521
fld dword [esi + 0x30]
fcomp dword [0x588a48]
fnstsw ax
test ah, 1
jne 0x4894f2
fld dword [esi + 0x30]
fcomp dword [0x589d64]
fnstsw ax
test ah, 1
je 0x4894f2
push ebx
jmp 0x489517
fld dword [esi + 0x30]
fcomp dword [0x589d60]
fnstsw ax
test ah, 1
jne 0x489521
fld dword [esi + 0x30]
fcomp dword [0x5883f0]
fnstsw ax
test ah, 1
je 0x489521
push 0x42f00000
mov ecx, edi
call fcn.0048edd0
mov dword [esi + 0x58], ebx
push 0x40a00000
mov ecx, edi
call fcn.0048ee10
test eax, eax
je 0x489566
push ebx
lea ecx, [esi + 0x40]
call fcn.0048ee10
test eax, eax
je 0x489566
fld dword [0x6213fc]
fadd dword [esi + 0x58]
fst dword [esi + 0x58]
fcomp dword [0x589d5c]
fnstsw ax
test ah, 1
jne 0x489566
push 0x43fa0000
mov ecx, edi
mov dword [esi + 0x58], ebx
call fcn.0048edd0
push 0x44848000
mov ecx, edi
call fcn.0048ee10
test eax, eax
jne 0x489586
push 0x459e2000
mov ecx, edi
call fcn.0048ee10
test eax, eax
je 0x48958d
mov ecx, esi
call fcn.0048b250
mov ecx, 0x620cd0
call fcn.0040da60
mov ecx, 0x658b38
call fcn.0045a7b0
pop edi
pop esi
pop ebx
ret