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

Disassembly:
push 0x314
mov eax, 0x4b1402
call fcn.00468c4c
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.0044edd1
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.00481070
add esp, 0xc
mov dword [ebp - 0x304], esi
push 0x4e7948
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
test eax, eax
je 0x4443b1
push str.RtlGetVersion
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov esi, eax
test esi, esi
je 0x4443b1
lea eax, [ebp - 0x304]
mov ecx, esi
push eax
call dword [0x4b67e4]
call esi
test eax, eax
jne 0x4443b1
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 0x444189
push esi
lea eax, [ebp - 0x1a4]
push eax
push str.PROCESSOR_ARCHITECTURE
call dword [sym.imp.KERNEL32.dll_GetEnvironmentVariableW]
test eax, eax
je 0x444189
lea eax, [ebp - 0x1a4]
push str.AMD64
push eax
call fcn.00489012
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 0x44419a
push 0x48
pop ecx
jmp 0x4441ba
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.0044cb11
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 0x44422c
cmp esi, edx
jb 0x444233
cmp ecx, 0x1e
jl 0x44421b
jmp 0x444235
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.00414ca1
mov eax, dword [ebp - 0x310]
pop ecx
mov eax, dword [eax]
cmp dword [eax - 0xc], 0
jle 0x4442c4
push eax
call fcn.00488fcc
xor ebx, ebx
cmp edi, eax
pop ecx
setge bl
jge 0x4442c4
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.00414570
pop ecx
pop ecx
mov ecx, dword [ebp - 0x30c]
jmp 0x4443a7
mov eax, dword [ebp - 0x318]
mov eax, dword [eax]
test eax, eax
je 0x4442e8
cmp dword [eax - 0xc], 0
je 0x4442e8
push eax
call fcn.00488fcc
pop ecx
test eax, eax
jle 0x4442e8
xor ebx, ebx
cmp edi, eax
setle bl
test ebx, ebx
jne 0x444322
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.00414570
pop ecx
pop ecx
mov ecx, dword [ebp - 0x310]
jmp 0x4443a7
mov edi, dword [ebp - 0x31c]
mov eax, dword [edi]
cmp dword [eax - 0xc], 0
jle 0x444342
push eax
call fcn.00488fcc
xor ebx, ebx
cmp dword [ebp - 0x308], eax
pop ecx
setge bl
test ebx, ebx
jne 0x44435c
push str.CheckSystemRequirements_failed._Required_MinServicePack:
lea ecx, [ebp - 0x308]
call fcn.00402829
mov byte [ebp - 4], 4
jmp 0x44438e
mov edi, dword [ebp - 0x320]
mov eax, dword [edi]
cmp dword [eax - 0xc], 0
jle 0x444376
push eax
call fcn.00488fcc
cmp esi, eax
pop ecx
sbb ebx, ebx
inc ebx
test ebx, ebx
jne 0x4443e4
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.00414570
pop ecx
pop ecx
mov ecx, dword [ebp - 0x308]
lea ecx, [ecx - 0x10]
call fcn.00402e64
jmp 0x4443e4
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.00414ca1
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.00468bf6
ret