Function at 0x40bbb0
Capabilities:
Get memory capacity

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x44615b
mov eax, dword fs:[0]
push eax
sub esp, 0x880
mov eax, dword [0x45e508]
xor eax, esp
mov dword [esp + 0x878], eax
push ebx
push esi
push edi
mov eax, dword [0x45e508]
xor eax, esp
push eax
lea eax, [esp + 0x890]
mov dword fs:[0], eax
lea eax, [esp + 0x20]
mov ebx, ecx
push eax
mov dword [esp + 0x20], ebx
call dword [sym.imp.KERNEL32.dll_GetLocalTime]
push 0x103
xor edi, edi
lea ecx, [esp + 0x679]
push edi
push ecx
mov byte [esp + 0x680], 0
call fcn.00432dc0
movzx edx, word [esp + 0x36]
movzx eax, word [esp + 0x34]
movzx ecx, word [esp + 0x32]
add esp, 0xc
push edx
movzx edx, word [esp + 0x26]
push eax
movzx eax, word [esp + 0x28]
push ecx
push edx
push eax
lea ecx, [esp + 0x688]
push str._04d__02d__02d__02d:_02d
push ecx
call fcn.0043209d
add esp, 0x1c
lea edx, [esp + 0x674]
push edx
push str._r_n_r_n_sCrash_Report__r_n
call fcn.0040cc20
add esp, 8
push 7
push str.Unknown
lea ecx, [esp + 0x58]
mov dword [esp + 0x70], 0xf
mov dword [esp + 0x6c], edi
mov byte [esp + 0x5c], 0
call fcn.004072f0
lea eax, [esp + 0x50]
push eax
mov dword [esp + 0x89c], edi
call fcn.0040cc90
mov eax, dword [esp + 0x58]
add esp, 4
cmp dword [esp + 0x68], 0x10
jae 0x40bcad
lea eax, [esp + 0x54]
push eax
push str.OS_Info:__s__r_n
call fcn.0040cc20
add esp, 8
lea ecx, [esp + 0x30]
push ecx
mov dword [esp + 0x34], 0x20
call dword [sym.imp.KERNEL32.dll_GlobalMemoryStatus]
mov edx, dword [esp + 0x4c]
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x38]
shr edx, 0x14
push edx
shr eax, 0x14
push eax
shr ecx, 0x14
push ecx
push str.Physics_Memory:__ld_MB___Avail_Physics_Memory:__ld_MB__Virtual_Memory:__ld_MB_r_n_r_n_r_n
call fcn.0040cc20
mov esi, dword [ebx]
mov eax, dword [esi]
call fcn.0040c160
mov edx, dword [esi]
push eax
push edx
push str.Exception_code:__08X__s_r_n
call fcn.0040cc20
mov ecx, dword [ebx + 4]
mov eax, dword [esi + 0xc]
add esp, 0x1c
cmp dword [ecx + 0xb8], edi
jne 0x40bd20
mov eax, dword [ecx + 0xc4]
mov eax, dword [eax]
lea ecx, [esp + 0x10]
push ecx
lea edx, [esp + 0x18]
push edx
lea ecx, [esp + 0x784]
push ecx
call fcn.0040c3a0
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
add esp, 0xc
lea edx, [esp + 0x77c]
push edx
mov edx, dword [esi + 0xc]
push eax
push ecx
push edx
push str.Fault_address:___08X__02X:_08X__s_r_n
call fcn.0040cc20
mov ebx, dword [ebx + 4]
add esp, 0x14
push str._r_nRegisters:_r_n
call fcn.0040cc20
mov eax, dword [ebx + 0x9c]
mov ecx, dword [ebx + 0xa0]
mov edx, dword [ebx + 0xa8]
add esp, 4
push eax
mov eax, dword [ebx + 0xac]
push ecx
mov ecx, dword [ebx + 0xa4]
push edx
mov edx, dword [ebx + 0xb0]
push eax
push ecx
push edx
push str.EAX:_08X_r_nEBX:_08X_r_nECX:_08X_r_nEDX:_08X_r_nESI:_08X_r_nEDI:_08X_r_n
call fcn.0040cc20
mov eax, dword [ebx + 0xb8]
mov ecx, dword [ebx + 0xbc]
add esp, 0x1c
push eax
push ecx
push str.CS:EIP:_04X:_08X_r_n
call fcn.0040cc20
mov edx, dword [ebx + 0xb4]
mov eax, dword [ebx + 0xc4]
mov ecx, dword [ebx + 0xc8]
add esp, 0xc
push edx
push eax
push ecx
push str.SS:ESP:_04X:_08X__EBP:_08X_r_n
call fcn.0040cc20
mov edx, dword [ebx + 0x8c]
mov eax, dword [ebx + 0x90]
mov ecx, dword [ebx + 0x94]
push edx
mov edx, dword [ebx + 0x98]
push eax
push ecx
push edx
push str.DS:_04X__ES:_04X__FS:_04X__GS:_04X_r_n
call fcn.0040cc20
mov eax, dword [ebx + 0xc0]
add esp, 0x24
push eax
push str.Flags:_08X_r_n
call fcn.0040cc20
add esp, 8
push 4
call dword [sym.imp.dbghelp.dll_SymSetOptions]
push 1
push edi
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push eax
call dword [sym.imp.dbghelp.dll_SymInitialize]
test eax, eax
je 0x40c120
mov ecx, 0xb3
mov esi, ebx
lea edi, [esp + 0x3a4]
rep movsd dword es:[edi], dword [esi]
push 0
lea esi, [esp + 0x3a8]
call fcn.0040c450
add esp, 4
push str._r_nMachine_code:_r_n
call fcn.0040cc20
mov edi, dword [ebx + 0xb8]
add esp, 4
test edi, edi
mov dword [esp + 0x18], edi
jne 0x40be8c
mov edx, dword [esp + 0x1c]
mov eax, dword [edx + 4]
mov ecx, dword [eax + 0xc4]
mov edx, dword [ecx]
mov dword [esp + 0x18], edx
mov edi, edx
lea eax, [edi - 0x20]
push 0x40
push eax
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x40bff0
xor esi, esi
movzx eax, byte [edi + esi - 0x20]
push eax
push str._02X
call fcn.0040cc20
mov ecx, esi
add esp, 8
and ecx, 0x8000000f
jns 0x40bec4
dec ecx
or ecx, 0xfffffff0
inc ecx
cmp ecx, 0xf
jne 0x40bed6
push 0x4524c4
call fcn.0040cc20
add esp, 4
add esi, 1
cmp esi, 0x40
jl 0x40bea2
push str._r_nDisassem_code:_r_n
call fcn.0040cc20
add esp, 4
push str.ASM_Code
push str.Opcode
push str.Length__Address__________24s____24s_r_n
call fcn.0040cc20
lea eax, [edi - 0x20]
add esp, 0xc
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], 0
cmp eax, edi
mov esi, eax
jae 0x40bf32
push 0
push esi
lea edx, [esp + 0x74]
mov ecx, esi
call fcn.0040ea30
add esi, eax
add esp, 8
cmp esi, edi
jb 0x40bf17
mov eax, dword [esp + 0x14]
cmp esi, edi
je 0x40bf4d
mov ecx, dword [esp + 0x10]
add ecx, 1
add eax, 1
cmp ecx, 0x20
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], ecx
jl 0x40bf11
mov ecx, edi
sub ecx, eax
xor esi, esi
test ecx, ecx
mov dword [esp + 0x10], ecx
jle 0x40bfa1
jmp 0x40bf64
mov eax, dword [esp + 0x14]
lea ecx, [esi + eax]
push 4
push ecx
lea edx, [esp + 0x74]
call fcn.0040ea30
mov ecx, dword [esp + 0x74]
mov edi, eax
lea edx, [esp + 0x178]
push edx
lea eax, [esp + 0x7c]
push eax
push ecx
push edi
push str._3i______08X_________24s____24s_r_n
call fcn.0040cc20
add esi, edi
add esp, 0x1c
cmp esi, dword [esp + 0x10]
jl 0x40bf60
mov edi, dword [esp + 0x18]
push str._EIP__r_n
call fcn.0040cc20
add esp, 4
xor esi, esi
jmp 0x40bfb6
mov edi, dword [esp + 0x18]
lea ecx, [esi + edi]
push 4
push ecx
lea edx, [esp + 0x74]
call fcn.0040ea30
mov ecx, dword [esp + 0x74]
mov edi, eax
lea edx, [esp + 0x178]
push edx
lea eax, [esp + 0x7c]
push eax
push ecx
push edi
push str._3i______08X_________24s____24s_r_n
call fcn.0040cc20
add esi, edi
add esp, 0x1c
cmp esi, 0x20
jl 0x40bfb2
jmp 0x40bffd
push str.NULL_r_n
call fcn.0040cc20
add esp, 4
push 0x4524c4
call fcn.0040cc20
add esp, 4
push str._r_nStack_code:_r_n
call fcn.0040cc20
mov edx, dword [esp + 0x20]
mov eax, dword [edx + 4]
mov edi, dword [eax + 0xc4]
add esp, 4
push 0x40
push edi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x40c072
xor esi, esi
movzx ecx, byte [edi]
push ecx
push str._02X
call fcn.0040cc20
mov edx, esi
add esp, 8
and edx, 0x8000000f
jns 0x40c053
dec edx
or edx, 0xfffffff0
inc edx
cmp edx, 0xf
jne 0x40c065
push 0x4524c4
call fcn.0040cc20
add esp, 4
add esi, 1
add edi, 1
cmp esi, 0x40
jl 0x40c033
jmp 0x40c07f
push str.NULL_r_n
call fcn.0040cc20
add esp, 4
push 0x4524c4
call fcn.0040cc20
add esp, 4
push str._r_n
call fcn.0040cc20
add esp, 4
push str.Local_Variables_And_Parameters_r_n
call fcn.0040cc20
mov ecx, 0xb3
mov esi, ebx
lea edi, [esp + 0x3a8]
add esp, 4
rep movsd dword es:[edi], dword [esi]
push 1
lea esi, [esp + 0x3a8]
call fcn.0040c450
add esp, 4
push str._r_n
call fcn.0040cc20
add esp, 4
push str.Global_Variables_r_n
call fcn.0040cc20
add esp, 4
push 0
push 0x40c6e0
push 0
lea eax, [esp + 0x788]
push eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov esi, dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
cdq
push edx
push eax
call esi
push eax
call dword [sym.imp.dbghelp.dll_SymEnumSymbols]
call esi
push eax
call dword [sym.imp.dbghelp.dll_SymCleanup]
push 0x4524c4
call fcn.0040cc20
add esp, 4
cmp dword [esp + 0x68], 0x10
jb 0x40c134
mov ecx, dword [esp + 0x54]
push ecx
call fcn.004132c9
add esp, 4
mov ecx, dword [esp + 0x890]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x878]
xor ecx, esp
call fcn.0042f760
mov esp, ebp
pop ebp
ret