Function at 0x440e91
Capabilities:
Get memory capacity
Query environment variable

Disassembly:
push 0x314
mov eax, 0x4b34f2
call fcn.0046afbc
mov dword [ebp - 0x320], edx
mov dword [ebp - 0x310], ecx
mov eax, dword [ebp + 8]
xor ebx, ebx
mov dword [ebp - 0x31c], eax
inc ebx
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x318], eax
call fcn.00451171
push eax
lea ecx, [ebp - 0x314]
call fcn.00402899
mov esi, 0x11c
lea eax, [ebp - 0x304]
xor edi, edi
push esi
push edi
push eax
mov dword [ebp - 4], edi
call fcn.00483730
add esp, 0xc
mov dword [ebp - 0x304], esi
push 0x4e9e20
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
test eax, eax
je 0x4411e0
push str.RtlGetVersion
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov esi, eax
test esi, esi
je 0x4411e0
lea eax, [ebp - 0x304]
mov ecx, esi
push eax
call dword [0x4b97ec]
call esi
test eax, eax
jne 0x4411e0
movzx eax, word [ebp - 0x1f0]
mov esi, 0xc8
imul edi, dword [ebp - 0x300], 0xa
imul ecx, eax, 0xa
movzx eax, word [ebp - 0x1ee]
push esi
add edi, dword [ebp - 0x2fc]
add ecx, eax
lea eax, [ebp - 0x1a4]
push eax
push str.ProgramW6432
mov dword [ebp - 0x308], ecx
call dword [sym.imp.KERNEL32.dll_GetEnvironmentVariableW]
test eax, eax
setne byte [ebp - 0x30c]
test eax, eax
jne 0x440fb8
push esi
lea eax, [ebp - 0x1a4]
push eax
push str.PROCESSOR_ARCHITECTURE
call dword [sym.imp.KERNEL32.dll_GetEnvironmentVariableW]
test eax, eax
je 0x440fb8
lea eax, [ebp - 0x1a4]
push str.AMD64
push eax
call fcn.0048b6d2
pop ecx
pop ecx
mov ecx, eax
neg ecx
sbb cl, cl
inc cl
mov dword [ebp - 0x30c], ecx
test dword [ebp - 0x1ec], 0x8000
je 0x440fc9
push 0x48
pop ecx
jmp 0x440fe9
push 0x59
call dword [sym.imp.USER32.dll_GetSystemMetrics]
cmp byte [ebp - 0x1ea], 1
push 0x53
pop ecx
push 0x57
pop edx
cmove ecx, edx
test eax, eax
push 0x32
pop edx
cmovne ecx, edx
cmp byte [ebp - 0x30c], 0
push 3
pop eax
push 6
pop edx
cmovne eax, edx
push eax
push ecx
push dword [ebp - 0x2fc]
lea eax, [ebp - 0x1a4]
push dword [ebp - 0x300]
push str._d_d_c_d
push eax
call fcn.0044ee81
add esp, 0x18
mov dword [ebp - 0x1e4], 0x40
lea eax, [ebp - 0x1e4]
push eax
call dword [sym.imp.KERNEL32.dll_GlobalMemoryStatusEx]
mov esi, dword [ebp - 0x1dc]
mov eax, dword [ebp - 0x1d8]
shrd esi, eax, 0x14
xor ecx, ecx
mov dword [ebp - 0x30c], esi
mov eax, ebx
mov edx, ebx
shl eax, cl
inc ecx
shl edx, cl
cmp eax, esi
jae 0x44105b
cmp esi, edx
jb 0x441062
cmp ecx, 0x1e
jl 0x44104a
jmp 0x441064
mov esi, edx
push esi
push dword [ebp - 0x30c]
lea eax, [ebp - 0x1a4]
push eax
push dword [ebp - 0x308]
lea eax, [ebp - 0x314]
push edi
push str.CheckSystemRequirements_os_sp___d__d_osString___s__physicalMemory___d____d
push eax
call fcn.004027d2
add esp, 0x1c
lea edx, [ebp - 0x314]
push 0
push 2
pop ecx
call fcn.00414071
mov eax, dword [ebp - 0x310]
pop ecx
mov eax, dword [eax]
cmp dword [eax - 0xc], 0
jle 0x4410f3
push eax
call fcn.0048b68c
xor ebx, ebx
cmp edi, eax
pop ecx
setge bl
jge 0x4410f3
push str.CheckSystemRequirements_failed._Required_MinOS:
lea ecx, [ebp - 0x30c]
call fcn.00402829
push 0
mov byte [ebp - 4], 2
lea edx, [ebp - 0x30c]
push dword [ebp - 0x310]
push 2
pop ecx
call fcn.00413940
pop ecx
pop ecx
mov ecx, dword [ebp - 0x30c]
jmp 0x4411d6
mov eax, dword [ebp - 0x318]
mov eax, dword [eax]
test eax, eax
je 0x441117
cmp dword [eax - 0xc], 0
je 0x441117
push eax
call fcn.0048b68c
pop ecx
test eax, eax
jle 0x441117
xor ebx, ebx
cmp edi, eax
setle bl
test ebx, ebx
jne 0x441151
push str.CheckSystemRequirements_failed._Required_MaxOS:
lea ecx, [ebp - 0x310]
call fcn.00402829
push ebx
push dword [ebp - 0x318]
lea edx, [ebp - 0x310]
mov byte [ebp - 4], 3
push 2
pop ecx
call fcn.00413940
pop ecx
pop ecx
mov ecx, dword [ebp - 0x310]
jmp 0x4411d6
mov edi, dword [ebp - 0x31c]
mov eax, dword [edi]
cmp dword [eax - 0xc], 0
jle 0x441171
push eax
call fcn.0048b68c
xor ebx, ebx
cmp dword [ebp - 0x308], eax
pop ecx
setge bl
test ebx, ebx
jne 0x44118b
push str.CheckSystemRequirements_failed._Required_MinServicePack:
lea ecx, [ebp - 0x308]
call fcn.00402829
mov byte [ebp - 4], 4
jmp 0x4411bd
mov edi, dword [ebp - 0x320]
mov eax, dword [edi]
cmp dword [eax - 0xc], 0
jle 0x4411a5
push eax
call fcn.0048b68c
cmp esi, eax
pop ecx
sbb ebx, ebx
inc ebx
test ebx, ebx
jne 0x441213
push str.CheckSystemRequirements_failed._Required_MinMemory:
lea ecx, [ebp - 0x308]
call fcn.00402829
mov byte [ebp - 4], 5
push 0
push edi
push 2
lea edx, [ebp - 0x308]
pop ecx
call fcn.00413940
pop ecx
pop ecx
mov ecx, dword [ebp - 0x308]
lea ecx, [ecx - 0x10]
call fcn.00402e64
jmp 0x441213
push str.RtlGetVersion_failed
lea ecx, [ebp - 0x308]
call fcn.00402829
push edi
push 2
lea edx, [ebp - 0x308]
mov byte [ebp - 4], bl
pop ecx
call fcn.00414071
pop ecx
mov ecx, dword [ebp - 0x308]
lea ecx, [ecx - 0x10]
call fcn.00402e64
mov ebx, edi
mov ecx, dword [ebp - 0x314]
add ecx, 0xfffffff0
call fcn.00402e64
mov eax, ebx
call fcn.0046af66
ret