Function at 0x42f160
Capabilities:
Get memory capacity
Get number of processors

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x52ba5e
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x470
push ebx
push esi
push edi
xor bl, bl
call dword [sym.imp.winmm.dll_timeGetTime]
mov cx, word [0x533c74]
mov dl, byte [0x533c76]
mov dword [esp + 0x18], eax
mov eax, dword [0x533c70]
mov dword [esp + 0x30], eax
xor eax, eax
mov dword [esp + 0x37], eax
mov dword [esp + 0x3b], eax
mov dword [esp + 0x3f], eax
mov dword [esp + 0x43], eax
mov word [esp + 0x34], cx
mov dword [esp + 0x47], eax
lea ecx, [esp + 0x30]
mov word [esp + 0x4b], ax
push ecx
mov byte [esp + 0x3a], dl
mov byte [esp + 0x51], al
call fcn.00431dc0
push 0x533c70
push 0x533c54
lea edx, [esp + 0x1c]
push 1
mov edi, 0x533294
push edx
mov dword [esp + 0x24], edi
mov dword [esp + 0x28], 0xa8f
call fcn.0041ce50
push 0x533c40
lea eax, [esp + 0x28]
push 1
push eax
mov dword [esp + 0x30], edi
mov dword [esp + 0x34], 0xabc
call fcn.0041ce50
lea ecx, [esp + 0x50]
push ecx
lea edx, [esp + 0x40]
push edx
call fcn.00434090
add esp, 0x28
test eax, eax
jmp 0x42f29e
push 0x533be4
lea eax, [esp + 0x14]
push 1
push eax
mov dword [esp + 0x1c], edi
mov dword [esp + 0x20], 0xac8
call fcn.0041ce50
mov al, byte [0x567fa8]
add esp, 0xc
cmp al, 0x3f
jne 0x42f2d1
mov cl, byte [esp + 0x1c]
mov byte [0x567fa8], cl
call fcn.0042d810
test eax, eax
jne 0x42f2f4
mov eax, 3
mov ecx, dword [esp + 0x47c]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
or dword [0x568404], 2
call fcn.00434d20
test al, al
jne 0x42f33e
push 0x530474
lea edx, [esp + 0x14]
push 0
push edx
mov dword [esp + 0x1c], edi
mov dword [esp + 0x20], 0xae9
call fcn.0041ce50
add esp, 0xc
mov eax, 7
mov ecx, dword [esp + 0x47c]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0x14
push 0x554b28
mov ecx, 0x568d70
call fcn.00412760
test al, al
jne 0x42f38d
push 0x530474
lea eax, [esp + 0x14]
push 0
push eax
mov dword [esp + 0x1c], edi
mov dword [esp + 0x20], 0xaf1
call fcn.0041ce50
add esp, 0xc
mov eax, 9
mov ecx, dword [esp + 0x47c]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0x14
push 0x554b78
mov ecx, 0x568d88
call fcn.00412760
test al, al
jne 0x42f3dc
push 0x530474
lea ecx, [esp + 0x14]
push 0
push ecx
mov dword [esp + 0x1c], edi
mov dword [esp + 0x20], 0xaf9
call fcn.0041ce50
add esp, 0xc
mov eax, 0x17
mov ecx, dword [esp + 0x47c]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.0044fe20
test al, al
jne 0x42f41f
push 0x530474
lea edx, [esp + 0x14]
push 0
push edx
mov dword [esp + 0x1c], edi
mov dword [esp + 0x20], 0xb01
call fcn.0041ce50
add esp, 0xc
mov eax, 0xa
mov ecx, dword [esp + 0x47c]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.00448130
test al, al
mov esi, dword [sym.imp.user32.dll_MessageBoxA]
jne 0x42f46b
mov eax, dword [0x554480]
push 0x40
push eax
push 0x533894
push 0
call esi
push 0x533870
lea ecx, [esp + 0x14]
push 1
push ecx
mov dword [esp + 0x1c], edi
mov dword [esp + 0x20], 0xb13
call fcn.0041ce50
add esp, 0xc
call fcn.004486f0
call fcn.00448180
mov bl, 1
call fcn.00438c40
test al, al
jne 0x42f4b0
mov edx, dword [0x554480]
push 0x40
push edx
push 0x533ba0
push 0
call esi
push 0x533b7c
lea eax, [esp + 0x14]
push 1
push eax
mov dword [esp + 0x1c], edi
mov dword [esp + 0x20], 0xb22
call fcn.0041ce50
add esp, 0xc
call fcn.00438e40
call fcn.00438bf0
mov eax, dword [0x5683f4]
test eax, eax
je 0x42f4c5
push 0
mov ecx, 0x5ae1e8
call fcn.00446580
push 0
push 3
push 3
call fcn.00410a80
add esp, 0xc
push 0
lea ecx, [esp + 0x24]
push ecx
push 0
push 0x30
call dword [sym.imp.user32.dll_SystemParametersInfoA]
test bl, bl
je 0x42f521
mov esi, dword [sym.imp.user32.dll_GetSystemMetrics]
push 7
call esi
push 8
lea edi, [eax + eax + 0x320]
call esi
push 4
mov ebx, eax
call esi
mov esi, dword [esp + 0x28]
lea ecx, [eax + ebx*2 + 0x258]
mov eax, dword [esp + 0x2c]
sub esi, edi
sub eax, ecx
sar esi, 1
sar eax, 1
mov edi, 0x533294
jmp 0x42f565
mov ecx, 0x5ae1e8
call fcn.004464e0
mov ecx, dword [esp + 0x20]
cmp eax, ecx
jge 0x42f537
mov eax, ecx
jmp 0x42f542
mov ecx, dword [esp + 0x28]
cmp eax, ecx
jl 0x42f542
lea eax, [ecx - 1]
mov ecx, 0x5ae1e8
mov esi, eax
call fcn.004dd4e0
mov ecx, dword [esp + 0x24]
cmp eax, ecx
jge 0x42f55a
mov eax, ecx
jmp 0x42f565
mov ecx, dword [esp + 0x2c]
cmp eax, ecx
jl 0x42f565
lea eax, [ecx - 1]
push eax
push esi
mov ecx, 0x5ae1e8
call fcn.004464f0
push 0x258
push 0x320
mov ecx, 0x568ff8
call fcn.00419cb0
mov dword [0x554430], 0x78
mov dword [0x554438], 0x3e8
call fcn.0042c6a0
call fcn.0042d970
test al, al
jne 0x42f5bb
push 0x530474
mov dword [esp + 0x18], 0xb8d
push 0
jmp 0x42fb98
call fcn.0042f0a0
test eax, eax
jne 0x42f5fd
push 0x530474
push eax
lea eax, [esp + 0x18]
push eax
mov dword [esp + 0x1c], edi
mov dword [esp + 0x20], 0xb94
call fcn.0041ce50
add esp, 0xc
mov eax, 0xb
mov ecx, dword [esp + 0x47c]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.0042da30
test eax, eax
jne 0x42f63f
push 0x530474
push eax
lea ecx, [esp + 0x18]
push ecx
mov dword [esp + 0x1c], edi
mov dword [esp + 0x20], 0xb9b
call fcn.0041ce50
add esp, 0xc
mov eax, 0xc
mov ecx, dword [esp + 0x47c]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, 0x5ae1e8
call fcn.00446e40
test al, al
je 0x42f654
push 0x80000002
jmp 0x42f659
push 0x80000000
call dword [sym.imp.kernel32.dll_SetThreadExecutionState]
mov edx, dword [0x5683f8]
push edx
call dword [sym.imp.user32.dll_SetForegroundWindow]
push 0x533b68
lea eax, [esp + 0x14]
push 1
push eax
mov dword [esp + 0x1c], edi
mov dword [esp + 0x20], 0xbb5
call fcn.0041ce50
add esp, 0xc
lea ecx, [esp + 0x58]
push ecx
mov dword [esp + 0x5c], 0x20
call dword [sym.imp.kernel32.dll_GlobalMemoryStatus]
mov eax, dword [esp + 0x60]
mov esi, 0x8000000
cmp eax, esi
jae 0x42f714
mov edx, dword [0x554480]
mov eax, dword [0x5683f8]
push esi
push 0x80
push 0x533ad0
push edx
push 0x134
push eax
call fcn.00416760
add esp, 0x18
cmp eax, 6
je 0x42f710
push 0x533aa4
lea ecx, [esp + 0x14]
push 1
push ecx
mov dword [esp + 0x1c], edi
mov dword [esp + 0x20], 0xbdd
call fcn.0041ce50
add esp, 0xc
mov eax, 4
mov ecx, dword [esp + 0x47c]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [esp + 0x60], esi
jbe 0x42f732
mov ecx, 0x5ae1e8
call fcn.00446e00
test al, al
je 0x42f732
mov esi, dword [esp + 0x60]
add esi, 0xf8000000
shr esi, 1
jmp 0x42f734
xor esi, esi
push esi
push 0x533a88
lea edx, [esp + 0x18]
push 1
push edx
mov dword [esp + 0x20], edi
mov dword [esp + 0x24], 0xbed
call fcn.0041ce50
add esp, 0x10
push 0x64
push esi
mov ecx, 0x568728
call fcn.00429400
test al, al
jne 0x42f7a0
push 0x530474
lea eax, [esp + 0x14]
push 0
push eax
mov dword [esp + 0x1c], edi
mov dword [esp + 0x20], 0xbf2
call fcn.0041ce50
add esp, 0xc
mov eax, 6
mov ecx, dword [esp + 0x47c]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0x5680b0
call fcn.00495bb0
add esp, 4
test al, al
jne 0x42f7eb
push 0x530474
lea ecx, [esp + 0x14]
push 0
push ecx
mov dword [esp + 0x1c], edi
mov dword [esp + 0x20], 0xbfc
call fcn.0041ce50
add esp, 0xc
mov eax, 0x18
mov ecx, dword [esp + 0x47c]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [0x5683fc]
push 0x6a
push edx
call dword [sym.imp.user32.dll_LoadAcceleratorsA]
mov dword [0x5683ec], eax
mov eax, dword [0x5683f8]
push eax
call fcn.00416650
add esp, 4
test eax, eax
jne 0x42f84a
push 0x530474
push eax
lea ecx, [esp + 0x18]
push ecx
mov dword [esp + 0x1c], edi
mov dword [esp + 0x20], 0xc16
call fcn.0041ce50
add esp, 0xc
mov eax, 0xd
mov ecx, dword [esp + 0x47c]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.0042cfb0
test eax, eax
jne 0x42f88c
push 0x530474
push eax
lea edx, [esp + 0x18]
push edx
mov dword [esp + 0x1c], edi
mov dword [esp + 0x20], 0xc1d
call fcn.0041ce50
add esp, 0xc
mov eax, 0xe
mov ecx, dword [esp + 0x47c]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.0042c8b0
test eax, eax
jne 0x42f8ce
push 0x530474
push eax
lea eax, [esp + 0x18]
push eax
mov dword [esp + 0x1c], edi
mov dword [esp + 0x20], 0xc28
call fcn.0041ce50
add esp, 0xc
mov eax, 0xf
mov ecx, dword [esp + 0x47c]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov bl, byte [ebp + 8]
test bl, bl
mov ecx, dword [0x5684d0]
mov dword [0x566d4c], ecx
jne 0x42f96b
call fcn.0042d730
test al, al
jne 0x42f928
push 0x530474
lea edx, [esp + 0x14]
push 0
push edx
mov dword [esp + 0x1c], edi
mov dword [esp + 0x20], 0xc34
call fcn.0041ce50
add esp, 0xc
mov eax, 0x10
mov ecx, dword [esp + 0x47c]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.00459e30
test al, al
jne 0x42f96b
push 0x530474
lea eax, [esp + 0x14]
push 0
push eax
mov dword [esp + 0x1c], edi
mov dword [esp + 0x20], 0xc40
call fcn.0041ce50
add esp, 0xc
mov eax, 8
mov ecx, dword [esp + 0x47c]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, 0x56ab94
call fcn.004dc400
test al, al
jne 0x42f9b3
push 0x530474
lea ecx, [esp + 0x14]
push 0
push ecx
mov dword [esp + 0x1c], edi
mov dword [esp + 0x20], 0xc4c
call fcn.0041ce50
add esp, 0xc
mov eax, 6
mov ecx, dword [esp + 0x47c]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0xc4
call fcn.0050c8b3
add esp, 4
mov dword [esp + 0x10], eax
xor esi, esi
cmp eax, esi
mov dword [esp + 0x484], esi
je 0x42f9da
mov ecx, eax
call fcn.00432f40
jmp 0x42f9dc
xor eax, eax
cmp eax, esi
mov dword [esp + 0x484], 0xffffffff
mov dword [0x567664], eax
jne 0x42fa29
push 0x530474
lea edx, [esp + 0x14]
push esi
push edx
mov dword [esp + 0x1c], edi
mov dword [esp + 0x20], 0xc58
call fcn.0041ce50
add esp, 0xc
mov eax, 0x11
mov ecx, dword [esp + 0x47c]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [0x567e94]
push 0x56ab94
push 0x56ab7c
push ecx
mov ecx, eax
call fcn.004333d0
test al, al
jne 0x42fa7e
push 0x530474
lea edx, [esp + 0x14]
push esi
push edx
mov dword [esp + 0x1c], edi
mov dword [esp + 0x20], 0xc5f
call fcn.0041ce50
add esp, 0xc
mov eax, 0x12
mov ecx, dword [esp + 0x47c]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [0x567664]
mov ecx, dword [0x567e94]
mov edx, dword [ecx]
push 0xa
push eax
call dword [edx + 0x34]
mov ecx, dword [0x567e94]
push eax
mov eax, dword [ecx]
call dword [eax + 0x30]
push eax
call fcn.00441090
add esp, 0x10
test al, al
jne 0x42fae3
push 0x530474
lea ecx, [esp + 0x14]
push esi
push ecx
mov dword [esp + 0x1c], edi
mov dword [esp + 0x20], 0xc68
call fcn.0041ce50
add esp, 0xc
mov eax, 0x13
mov ecx, dword [esp + 0x47c]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
test bl, bl
jne 0x42fb29
call fcn.00441010
test al, al
jne 0x42fb29
push 0x530474
lea edx, [esp + 0x14]
push esi
push edx
mov dword [esp + 0x1c], edi
mov dword [esp + 0x20], 0xc73
call fcn.0041ce50
add esp, 0xc
mov eax, 0x14
mov ecx, dword [esp + 0x47c]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.0042cd30
test eax, eax
jne 0x42fb6b
push 0x530474
lea eax, [esp + 0x14]
push esi
push eax
mov dword [esp + 0x1c], edi
mov dword [esp + 0x20], 0xc89
call fcn.0041ce50
add esp, 0xc
mov eax, 0x15
mov ecx, dword [esp + 0x47c]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.00477d60
call fcn.0047a5e0
mov ecx, dword [0x5683fc]
push ecx
mov ecx, 0x568de8
call fcn.00418080
test al, al
jne 0x42fbc3
push 0x530474
mov dword [esp + 0x18], 0xc9d
push esi
lea edx, [esp + 0x18]
push edx
mov dword [esp + 0x1c], edi
call fcn.0041ce50
add esp, 0xc
mov eax, 6
mov ecx, dword [esp + 0x47c]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, 0x568de8
call fcn.004177e0
test eax, eax
jbe 0x42fc14
mov edi, 0x568e38
mov eax, dword [0x5683f8]
push 0
push eax
push esi
mov ecx, 0x568de8
call fcn.004178e0
push eax
mov ecx, edi
call fcn.00417a70
push edi
push esi
mov ecx, 0x568ff8
call fcn.00419ea0
mov ecx, 0x568de8
inc esi
add edi, 0x1c
call fcn.004177e0
cmp esi, eax
jb 0x42fbd6
mov edi, 0x533294
push 0x5ae288
push 0x568ff8
mov dword [0x569f04], 0x190
mov dword [0x569f08], 0xc8
call fcn.004395f0
add esp, 8
test al, al
jne 0x42fc78
push 0x530474
lea ecx, [esp + 0x14]
push 0
push ecx
mov dword [esp + 0x1c], edi
mov dword [esp + 0x20], 0xcb1
call fcn.0041ce50
add esp, 0xc
mov eax, 0x19
mov ecx, dword [esp + 0x47c]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [0x5683f8]
push 0
push 0x64
push 1
push edx
call dword [sym.imp.user32.dll_SetTimer]
test bl, bl
jne 0x42fd12
mov eax, dword [0x5544a8]
push 0x5680b0
push eax
lea ecx, [esp + 0x80]
push ecx
call dword [sym.imp.user32.dll_wsprintfA]
add esp, 0xc
push 0
push 0x451af0
mov ecx, 0x568dc4
call fcn.00414d20
lea edx, [esp + 0x78]
push edx
mov ecx, 0x568dc4
call fcn.004161a0
mov esi, eax
test esi, esi
je 0x42fd12
push 0x530474
lea eax, [esp + 0x14]
push 0
push eax
mov dword [esp + 0x1c], edi
mov dword [esp + 0x20], 0xcc5
call fcn.0041ce50
mov eax, esi
shl eax, 0x10
add esp, 0xc
or eax, 0x16
mov ecx, dword [esp + 0x47c]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call dword [sym.imp.winmm.dll_timeGetTime]
sub eax, dword [esp + 0x18]
push eax
push 0x533a58
lea ecx, [esp + 0x58]
push 1
push ecx
mov dword [esp + 0x60], edi
mov dword [esp + 0x64], 0xcea
call fcn.0041ce50
mov ecx, dword [esp + 0x48c]
add esp, 0x10
pop edi
pop esi
xor eax, eax
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret