Function at 0x449ab0
Capabilities:
Get memory capacity

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4c1314
mov eax, dword fs:[0]
push eax
sub esp, 0x200
mov eax, dword [0x513008]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x168], ecx
lea ecx, [ebp - 0xa0]
call fcn.0042bd70
mov dword [ebp - 4], 0
push 0x40
push 0
lea eax, [ebp - 0x130]
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov dword [ebp - 0x130], 0x40
lea ecx, [ebp - 0x130]
push ecx
call dword [sym.imp.KERNEL32.dll_GlobalMemoryStatusEx]
test eax, eax
je 0x449bdb
push 0
push 0x100000
mov edx, dword [ebp - 0x124]
push edx
mov eax, dword [ebp - 0x128]
push eax
call fcn.004b7be0
mov dword [ebp - 0x174], eax
lea ecx, [ebp - 0x58]
mov dword [ebp - 0x170], ecx
mov ecx, dword [ebp - 0x170]
call fcn.00413580
mov byte [ebp - 4], 1
mov byte [ebp - 4], 2
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x58]
call fcn.00412eb0
mov byte [ebp - 4], 4
mov edx, dword [ebp - 0x174]
push edx
push 0x4eb398
lea eax, [ebp - 0x58]
push eax
call fcn.00486750
add esp, 0xc
mov ecx, dword [ebp - 0x48]
mov dword [ebp - 0x178], ecx
lea edx, [ebp - 0xa0]
push edx
lea ecx, [ebp - 0x58]
call fcn.0041c9c0
mov edx, dword [ebp - 0x178]
mov ecx, eax
call fcn.0048b6c0
add esp, 4
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x58]
call fcn.00412df0
mov byte [ebp - 4], 6
mov byte [ebp - 4], 0
lea eax, [ebp - 0x58]
mov dword [ebp - 0x1d8], eax
mov byte [ebp - 4], 7
mov byte [ebp - 4], 8
mov byte [ebp - 4], 0
lea ecx, [ebp - 0xa0]
call fcn.0041ed90
movzx ecx, al
test ecx, ecx
jne 0x449c26
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x1d4], esp
lea edx, [ebp - 0xa0]
push edx
call fcn.004ad280
mov dword [ebp - 0x1d0], eax
mov byte [ebp - 4], 9
push str.A0201
mov ecx, dword [ebp + 8]
call fcn.004ae0e0
mov byte [ebp - 4], 0
mov ecx, eax
call fcn.004ad570
push str.User32.dll
lea ecx, [ebp - 0x20c]
call fcn.00412ab0
mov byte [ebp - 4], 0xa
lea eax, [ebp - 0x20c]
push eax
call fcn.00494cc0
mov ecx, eax
call fcn.00494d80
mov dword [ebp - 0x140], eax
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x20c]
call fcn.00412df0
mov byte [ebp - 4], 0xc
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x20c]
mov dword [ebp - 0x1c0], ecx
mov byte [ebp - 4], 0xd
mov byte [ebp - 4], 0xe
mov byte [ebp - 4], 0
mov dword [ebp - 0x134], 0
cmp dword [ebp - 0x140], 0
je 0x449cad
push str.GetSystemMetrics
mov edx, dword [ebp - 0x140]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x134], eax
lea ecx, [ebp - 0xb8]
call fcn.0042bd70
mov byte [ebp - 4], 0xf
mov dword [ebp - 0x154], 0
cmp dword [ebp - 0x134], 0
je 0x449cdd
push 0
call dword [ebp - 0x134]
mov dword [ebp - 0x154], eax
cmp dword [ebp - 0x154], 0
jle 0x449d7f
lea eax, [ebp - 0x40]
mov dword [ebp - 0x17c], eax
mov ecx, dword [ebp - 0x17c]
call fcn.00413580
mov byte [ebp - 4], 0x10
mov byte [ebp - 4], 0x11
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0x40]
call fcn.00412eb0
mov byte [ebp - 4], 0x13
mov ecx, dword [ebp - 0x154]
push ecx
push 0x4ebb34
lea edx, [ebp - 0x40]
push edx
call fcn.00486750
add esp, 0xc
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x180], eax
lea ecx, [ebp - 0xb8]
push ecx
lea ecx, [ebp - 0x40]
call fcn.0041c9c0
mov edx, dword [ebp - 0x180]
mov ecx, eax
call fcn.0048b6c0
add esp, 4
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x40]
call fcn.00412df0
mov byte [ebp - 4], 0x15
mov byte [ebp - 4], 0xf
lea edx, [ebp - 0x40]
mov dword [ebp - 0x1dc], edx
mov byte [ebp - 4], 0x16
mov byte [ebp - 4], 0x17
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0xb8]
call fcn.0041ed90
movzx eax, al
test eax, eax
jne 0x449dca
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x1e0], esp
lea edx, [ebp - 0xb8]
push edx
call fcn.004ad280
mov dword [ebp - 0x1e4], eax
mov byte [ebp - 4], 0x18
push str.A0202
mov ecx, dword [ebp + 8]
call fcn.004ae0e0
mov byte [ebp - 4], 0xf
mov ecx, eax
call fcn.004ad570
lea ecx, [ebp - 0x88]
call fcn.0042bd70
mov byte [ebp - 4], 0x19
mov dword [ebp - 0x150], 0
cmp dword [ebp - 0x134], 0
je 0x449dfa
push 1
call dword [ebp - 0x134]
mov dword [ebp - 0x150], eax
cmp dword [ebp - 0x150], 0
jle 0x449e9c
lea eax, [ebp - 0x28]
mov dword [ebp - 0x184], eax
mov ecx, dword [ebp - 0x184]
call fcn.00413580
mov byte [ebp - 4], 0x1a
mov byte [ebp - 4], 0x1b
mov byte [ebp - 4], 0x1c
lea ecx, [ebp - 0x28]
call fcn.00412eb0
mov byte [ebp - 4], 0x1d
mov ecx, dword [ebp - 0x150]
push ecx
push 0x4ebb34
lea edx, [ebp - 0x28]
push edx
call fcn.00486750
add esp, 0xc
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x198], eax
lea ecx, [ebp - 0x88]
push ecx
lea ecx, [ebp - 0x28]
call fcn.0041c9c0
mov edx, dword [ebp - 0x198]
mov ecx, eax
call fcn.0048b6c0
add esp, 4
mov byte [ebp - 4], 0x1e
lea ecx, [ebp - 0x28]
call fcn.00412df0
mov byte [ebp - 4], 0x1f
mov byte [ebp - 4], 0x19
lea edx, [ebp - 0x28]
mov dword [ebp - 0x1e8], edx
mov byte [ebp - 4], 0x20
mov byte [ebp - 4], 0x21
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0x88]
call fcn.0041ed90
movzx eax, al
test eax, eax
jne 0x449ee7
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x1ec], esp
lea edx, [ebp - 0x88]
push edx
call fcn.004ad280
mov dword [ebp - 0x1f0], eax
mov byte [ebp - 4], 0x22
push str.A0203
mov ecx, dword [ebp + 8]
call fcn.004ae0e0
mov byte [ebp - 4], 0x19
mov ecx, eax
call fcn.004ad570
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x19c], esp
call fcn.00485780
push eax
mov ecx, esi
call fcn.004ad160
mov dword [ebp - 0x1a0], eax
mov byte [ebp - 4], 0x23
push str.A0204
mov ecx, dword [ebp + 8]
call fcn.004ae0e0
mov byte [ebp - 4], 0x19
mov ecx, eax
call fcn.004ad570
push str.GetDC
mov eax, dword [ebp - 0x140]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x158], eax
push str.ReleaseDC
mov ecx, dword [ebp - 0x140]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x15c], eax
mov dword [ebp - 0x144], 0
push str.Gdi32.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov dword [ebp - 0x138], eax
cmp dword [ebp - 0x138], 0
je 0x449f8d
push str.GetDeviceCaps
mov edx, dword [ebp - 0x138]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x144], eax
mov dword [ebp - 0x160], 0
mov dword [ebp - 0x164], 0
cmp dword [ebp - 0x144], 0
je 0x44a00c
cmp dword [ebp - 0x158], 0
je 0x44a00c
cmp dword [ebp - 0x15c], 0
je 0x44a00c
push 0
call dword [ebp - 0x158]
mov dword [ebp - 0x148], eax
cmp dword [ebp - 0x148], 0
je 0x44a00c
push 0x58
mov eax, dword [ebp - 0x148]
push eax
call dword [ebp - 0x144]
mov dword [ebp - 0x160], eax
push 0x5a
mov ecx, dword [ebp - 0x148]
push ecx
call dword [ebp - 0x144]
mov dword [ebp - 0x164], eax
mov edx, dword [ebp - 0x148]
push edx
push 0
call dword [ebp - 0x15c]
cmp dword [ebp - 0x138], 0
je 0x44a02c
mov eax, dword [ebp - 0x138]
push eax
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov dword [ebp - 0x138], 0
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x1a4], esp
mov edx, dword [ebp - 0x160]
push edx
call fcn.004ad160
mov dword [ebp - 0x1a8], eax
mov byte [ebp - 4], 0x24
push str.A0205
mov ecx, dword [ebp + 8]
call fcn.004ae0e0
mov byte [ebp - 4], 0x19
mov ecx, eax
call fcn.004ad570
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x1ac], esp
mov eax, dword [ebp - 0x164]
push eax
call fcn.004ad160
mov dword [ebp - 0x1b0], eax
mov byte [ebp - 4], 0x25
push str.A0206
mov ecx, dword [ebp + 8]
call fcn.004ae0e0
mov byte [ebp - 4], 0x19
mov ecx, eax
call fcn.004ad570
push 0x20
lea ecx, [ebp - 0xf0]
call fcn.0042e0e0
lea ecx, [ebp - 0xf0]
call fcn.00430a70
mov byte [ebp - 4], 0x26
mov ecx, dword [ebp - 0x168]
push ecx
lea ecx, [ebp - 0xf0]
call fcn.00430be0
mov edx, dword [ebp - 0x168]
movzx eax, byte [edx + 0x30]
push eax
lea ecx, [ebp - 0xf0]
call fcn.004329d0
lea ecx, [ebp - 0x70]
push ecx
lea ecx, [ebp - 0xf0]
call fcn.00430c30
mov byte [ebp - 4], 0x27
mov edx, dword [ebp - 0x60]
mov dword [ebp - 0x194], edx
cmp dword [ebp - 0x194], 0
jne 0x44a113
mov dword [ebp - 0x16c], 1
jmp 0x44a11d
mov dword [ebp - 0x16c], 0
movzx eax, byte [ebp - 0x16c]
test eax, eax
je 0x44a18a
mov dword [ebp - 0x13c], str.000000000000
mov ecx, dword [ebp - 0x13c]
add ecx, 2
mov dword [ebp - 0x190], ecx
mov edx, dword [ebp - 0x13c]
mov ax, word [edx]
mov word [ebp - 0x14a], ax
add dword [ebp - 0x13c], 2
cmp word [ebp - 0x14a], 0
jne 0x44a141
mov ecx, dword [ebp - 0x13c]
sub ecx, dword [ebp - 0x190]
sar ecx, 1
mov dword [ebp - 0x18c], ecx
mov edx, dword [ebp - 0x18c]
push edx
push str.000000000000
lea ecx, [ebp - 0x70]
call fcn.00412f10
lea ecx, [ebp - 0xd0]
call fcn.0042bd70
mov byte [ebp - 4], 0x28
mov eax, dword [ebp - 0x60]
mov dword [ebp - 0x188], eax
lea ecx, [ebp - 0xd0]
push ecx
lea ecx, [ebp - 0x70]
call fcn.0041c9c0
mov edx, dword [ebp - 0x188]
mov ecx, eax
call fcn.0048b6c0
add esp, 4
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x1b4], esp
lea edx, [ebp - 0xd0]
push edx
call fcn.004ad280
mov dword [ebp - 0x1b8], eax
mov byte [ebp - 4], 0x29
push str.A0207
mov ecx, dword [ebp + 8]
call fcn.004ae0e0
mov byte [ebp - 4], 0x28
mov ecx, eax
call fcn.004ad570
mov byte [ebp - 4], 0x2a
lea ecx, [ebp - 0xd0]
call fcn.00417d30
mov byte [ebp - 4], 0x2b
mov byte [ebp - 4], 0x27
lea eax, [ebp - 0xd0]
mov dword [ebp - 0x1bc], eax
mov byte [ebp - 4], 0x2c
mov byte [ebp - 4], 0x2d
mov byte [ebp - 4], 0x27
mov byte [ebp - 4], 0x2e
lea ecx, [ebp - 0x70]
call fcn.00412df0
mov byte [ebp - 4], 0x2f
mov byte [ebp - 4], 0x26
lea ecx, [ebp - 0x70]
mov dword [ebp - 0x1f4], ecx
mov byte [ebp - 4], 0x30
mov byte [ebp - 4], 0x31
mov byte [ebp - 4], 0x26
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0xf0]
call fcn.00430b20
mov byte [ebp - 4], 0x32
lea ecx, [ebp - 0x88]
call fcn.00417d30
mov byte [ebp - 4], 0x33
mov byte [ebp - 4], 0xf
lea edx, [ebp - 0x88]
mov dword [ebp - 0x1c4], edx
mov byte [ebp - 4], 0x34
mov byte [ebp - 4], 0x35
mov byte [ebp - 4], 0xf
mov byte [ebp - 4], 0x36
lea ecx, [ebp - 0xb8]
call fcn.00417d30
mov byte [ebp - 4], 0x37
mov byte [ebp - 4], 0
lea eax, [ebp - 0xb8]
mov dword [ebp - 0x1c8], eax
mov byte [ebp - 4], 0x38
mov byte [ebp - 4], 0x39
mov byte [ebp - 4], 0
mov dword [ebp - 4], 0x3a
lea ecx, [ebp - 0xa0]
call fcn.00417d30
mov dword [ebp - 4], 0x3b
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xa0]
mov dword [ebp - 0x1cc], ecx
mov dword [ebp - 4], 0x3c
mov dword [ebp - 4], 0x3d
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004b6253
mov esp, ebp
pop ebp
ret 4