Function at 0x5a4af2
Capabilities:
Get memory capacity
Get system information on windows

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x9c
cmp dword [0x6116f0], 0
jne 0x5a4d9c
mov eax, 1
call fcn.00427d52
mov dword [0x5af150], 3
xor edx, edx
mov dword [0x6116f8], edx
mov dword [0x6116fc], edx
mov dword [esp], 0x6116f8
call dword [sym.imp.KERNEL32.dll_QueryPerformanceFrequency]
push ecx
test eax, eax
je 0x5a4b84
mov dword [esp], 0x611700
call dword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
push eax
mov dword [0x61170c], 0x41957f
mov dword [0x611708], 0x419520
cmp dword [0x5af030], 2
jbe 0x5a4bbe
mov dword [0x611418], 3
xor eax, eax
mov dword [0x611414], eax
mov dword [esp], str._core__using_WIN32_performance_timer_n
jmp 0x5a4bb9
mov dword [0x61170c], 0x4195f3
mov dword [0x611708], 0x4195de
cmp dword [0x5af030], 2
jbe 0x5a4bbe
mov dword [0x611418], 3
xor eax, eax
mov dword [0x611414], eax
mov dword [esp], str._core__using_WIN32_regular_timer_n
call fcn.004268ea
mov dword [esp], 1
call dword [sym.imp.WINMM.DLL_timeBeginPeriod]
push eax
cmp dword [0x5af030], 2
jbe 0x5a4bf2
mov dword [0x611418], 3
xor eax, eax
mov dword [0x611414], eax
mov dword [esp], str._core__checking_for_run_time_info_tools
call fcn.004268ea
mov dword [esp], str.kernel32.dll
mov esi, dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
call esi
push ebx
mov dword [esp + 4], str.GetSystemTimes
mov dword [esp], eax
mov ebx, dword [sym.imp.KERNEL32.dll_GetProcAddress]
call ebx
push edi
push edi
mov dword [0x6116e8], eax
test eax, eax
jne 0x5a4c66
mov dword [esp], str.ntdll.dll
call esi
push edx
mov dword [esp + 4], str.NtQuerySystemInformation
mov dword [esp], eax
call ebx
push ecx
push ecx
mov dword [0x6116e0], eax
test eax, eax
je 0x5a4c8d
cmp dword [0x5af030], 2
jbe 0x5a4c8d
mov dword [0x611418], 3
xor edi, edi
mov dword [0x611414], edi
mov dword [esp], str.___CPU:_QuerySystemInformation
jmp 0x5a4c88
cmp dword [0x5af030], 2
jbe 0x5a4c8d
mov dword [0x611418], 3
xor esi, esi
mov dword [0x611414], esi
mov dword [esp], str.___CPU:_GetSystemsTimes
call fcn.004268ea
mov dword [esp], str.psapi.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
push edx
mov dword [0x6116dc], eax
mov dword [esp + 4], str.GetProcessMemoryInfo
mov dword [esp], eax
call ebx
push ecx
push ecx
mov dword [0x6116e4], eax
test eax, eax
je 0x5a4cde
cmp dword [0x5af030], 2
jbe 0x5a4cde
mov dword [0x611418], 3
xor eax, eax
mov dword [0x611414], eax
mov dword [esp], str.___memory:_GetProcessMemoryInfo
call fcn.004268ea
xor eax, eax
mov dword [0x612898], eax
mov dword [0x61289c], eax
mov dword [0x612890], eax
mov dword [0x612894], eax
mov dword [0x612888], eax
mov dword [0x61288c], eax
mov dword [0x6116ec], eax
mov edx, 0x612830
mov ecx, 0x16
xor eax, eax
mov edi, edx
rep stosd dword es:[edi], eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
mov dword [0x612854], eax
lea eax, [ebp - 0x70]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetSystemInfo]
push eax
mov eax, dword [ebp - 0x5c]
mov dword [0x612880], eax
cmp dword [0x5af030], 2
jbe 0x5a4d88
mov dword [0x611418], 3
xor eax, eax
mov dword [0x611414], eax
mov dword [esp], 0x60be10
call fcn.004268ea
cmp dword [0x5af030], 2
jbe 0x5a4d88
mov dword [0x611418], 3
xor eax, eax
mov dword [0x611414], eax
mov eax, dword [0x612854]
mov dword [esp + 4], eax
mov dword [esp], str._core__process_id__d_n
call fcn.004268ea
mov dword [esp + 4], 0x60be28
mov dword [esp], 4
call sub.api_ms_win_crt_locale_l1_1_0.dll_setlocale
inc dword [0x6116f0]
cmp dword [0x61282c], 0
jne 0x5a4eb1
cmp dword [0x612828], 0
jne 0x5a4eb1
call fcn.0042091d
mov edx, dword [0x6116ec]
test edx, edx
je 0x5a4de7
sub eax, edx
cmp eax, 0x1f3
ja 0x5a4de7
xor edi, edi
mov dword [0x612828], edi
mov dword [0x61282c], edi
jmp 0x5a4eb1
lea ebx, [ebp - 0x6c]
mov ecx, 0x15
xor eax, eax
mov edi, ebx
rep stosd dword es:[edi], eax
mov dword [ebp - 0x70], edx
lea eax, [ebp - 0x90]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GlobalMemoryStatus]
push esi
mov eax, dword [ebp - 0x88]
xor edx, edx
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], edx
mov ecx, dword [ebp - 0x84]
xor ebx, ebx
mov dword [ebp - 0x30], ecx
mov dword [ebp - 0x2c], ebx
cmp dword [ebp - 0x3c], 0
jne 0x5a4e46
cmp dword [ebp - 0x40], 0
jne 0x5a4e46
mov esi, dword [0x612828]
mov edi, dword [0x61282c]
sub esi, ecx
sbb edi, ebx
mov dword [ebp - 0x40], esi
mov dword [ebp - 0x3c], edi
cmp dword [ebp - 0x24], 0
jne 0x5a4e68
cmp dword [ebp - 0x28], 0
jne 0x5a4e68
mov esi, dword [0x612828]
mov edi, dword [0x61282c]
sub esi, ecx
sbb edi, ebx
mov dword [ebp - 0x28], esi
mov dword [ebp - 0x24], edi
mov dword [0x612828], ecx
mov dword [0x61282c], ebx
cmp dword [0x5af030], 2
jbe 0x5a4eb1
mov dword [0x611418], 3
xor ecx, ecx
mov dword [0x611414], ecx
mov ecx, dword [ebp - 0x20]
mov dword [esp + 0xc], ecx
shrd eax, edx, 0x14
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x4c]
mov dword [esp + 4], eax
mov dword [esp], str._core__System_init_OK___process_id__d____d_MB_physical_RAM____d_cores_n
call fcn.004268ea
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret