Function at 0x4664f0
Capabilities:
Get disk size
Get memory capacity
Get system information on windows

Disassembly:
mov eax, dword [esp + 4]
sub esp, 0x5c
mov dword [0x64e4a8], eax
push ebx
push ebp
push esi
push edi
call fcn.00441880
call fcn.004d3520
xor esi, esi
push str.Starcraft_Check_For_Other_Instances
push esi
push esi
push esi
call dword [sym.imp.KERNEL32.dll_CreateEventA]
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
jne 0x4665a4
mov edi, dword [sym.imp.KERNEL32.dll_Sleep]
mov ebp, dword [sym.imp.USER32.dll_FindWindowA]
xor ebx, ebx
jmp 0x466539
xor esi, esi
push 0xfa
call edi
push esi
push str.SWarClass
call ebp
mov esi, eax
test esi, esi
jne 0x466562
inc ebx
cmp ebx, 8
jl 0x466537
xor cl, cl
mov ebp, 1
call fcn.004d6350
jmp 0x4665a9
push esi
call dword [sym.imp.USER32.dll_GetLastActivePopup]
test eax, eax
je 0x46656f
mov esi, eax
push esi
call dword [sym.imp.USER32.dll_GetTopWindow]
mov edi, eax
test edi, edi
jne 0x46657e
mov edi, esi
push esi
call dword [sym.imp.USER32.dll_SetForegroundWindow]
push edi
call dword [sym.imp.USER32.dll_SetFocus]
mov ebp, 1
push ebp
push esi
call dword [sym.imp.USER32.dll_ShowWindow]
xor cl, cl
call fcn.004d6350
xor esi, esi
jmp 0x4665a9
mov ebp, 1
mov ecx, dword [esp + 0x70]
call fcn.004651f0
lea ecx, [esp + 0x48]
push ecx
call dword [sym.imp.KERNEL32.dll_GetSystemInfo]
cmp word [esp + 0x48], si
jne 0x4665de
cmp dword [esp + 0x60], 0x1e6
jae 0x4665de
call fcn.004d5f30
test eax, eax
jne 0x4665de
mov cl, 1
call fcn.004d6350
lea edx, [esp + 0x1c]
lea eax, [esp + 0x18]
push edx
lea ecx, [esp + 0x14]
push eax
lea edx, [esp + 0x1c]
push ecx
push edx
push 0x4f2994
call dword [sym.imp.KERNEL32.dll_GetDiskFreeSpaceA]
test eax, eax
je 0x46666f
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], esi
fild qword [esp + 0x20]
mov edx, dword [esp + 0x18]
mov dword [esp + 0x20], ecx
mov dword [esp + 0x24], esi
fild qword [esp + 0x20]
fxch st(1)
fmul qword [0x4e5e28]
fxch st(1)
fmul qword [0x4e5e28]
mov dword [esp + 0x20], edx
mov dword [esp + 0x24], esi
fild qword [esp + 0x20]
fxch st(1)
fmulp st(2)
fmulp st(1)
fcom qword [0x4e5e30]
fnstsw ax
test ah, 1
je 0x46666d
call fcn.004c7640
mov ecx, eax
call fcn.004d5da0
test eax, eax
jne 0x46666f
mov cl, 1
call fcn.004d6350
jmp 0x46666f
fstp st(0)
lea eax, [esp + 0x28]
mov dword [esp + 0x28], 0x20
push eax
call dword [sym.imp.KERNEL32.dll_GlobalMemoryStatus]
cmp dword [esp + 0x30], 0xd00000
jae 0x466697
call fcn.004d5f50
test eax, eax
jne 0x4666b1
jmp 0x4666aa
cmp dword [esp + 0x38], 0x1e00000
jae 0x4666b1
call fcn.004d5f70
test eax, eax
jne 0x4666b1
mov cl, 1
call fcn.004d6350
lea ecx, [esp + 0x70]
push ecx
push esi
push str.ForceLowMem
push 0x4ec1a0
call sub.storm.dll_Ordinal_423
test eax, eax
je 0x4666d8
cmp dword [esp + 0x70], esi
je 0x4666d8
mov dword [0x64e4b8], ebp
jmp 0x466710
lea edx, [esp + 0x70]
push edx
push esi
push str.ForceHighMem
push 0x4ec1a0
call sub.storm.dll_Ordinal_423
test eax, eax
je 0x4666ff
cmp dword [esp + 0x70], esi
je 0x4666ff
mov dword [0x64e4b8], esi
jmp 0x466710
cmp dword [esp + 0x30], 0x1600000
sbb eax, eax
neg eax
mov dword [0x64e4b8], eax
call fcn.00440c80
mov edi, 4
mov word [0x63c51c], di
call fcn.004653d0
call fcn.0043fcc0
call fcn.00466940
call fcn.00465bd0
mov edx, 0xf0
mov ecx, 0x140
call fcn.004d4f90
call fcn.0045a7e0
test eax, eax
mov eax, dword [0x6b3e30]
jne 0x46676a
test ah, 2
je 0x46678d
and ah, 0xfd
xor ecx, ecx
mov dword [0x6b3e30], eax
call fcn.0047e150
mov ecx, ebp
jmp 0x466788
test ah, 8
je 0x46678d
mov eax, dword [0x6b3e30]
xor ecx, ecx
and ah, 0xf7
mov dword [0x6b3e30], eax
call fcn.0047e150
mov ecx, 0x18
call fcn.0047e150
call fcn.004b8a40
call fcn.00408d90
mov ecx, 0x408f80
call fcn.004d4ff0
cmp word [0x63c51c], di
je 0x4667af
call fcn.004b8d20
mov ebx, 3
mov ecx, 0xa
call fcn.0043f1c0
call fcn.004da7d0
call fcn.00462e10
test eax, eax
jne 0x4667d1
mov byte [0x50f1a8], al
movsx eax, word [0x63c51c]
cmp eax, 0xa
ja case.0x4667e1.2
jmp dword [eax*4 + 0x46690c]
mov ecx, ebp
call fcn.00476e80
call fcn.00444b20
xor ecx, ecx
mov esi, eax
call fcn.00476e80
mov ecx, dword [0x6848e8]
test ecx, ecx
je 0x466816
call fcn.004d36b0
mov dword [0x6848e8], 0
test esi, esi
je 0x466831
call fcn.00446b30
mov esi, eax
call fcn.00445340
mov word [0x63c51c], si
xor esi, esi
jmp 0x4667b4
mov esi, edi
call fcn.00445340
mov word [0x63c51c], si
xor esi, esi
jmp 0x4667b4
call fcn.004c0e90
cmp word [0x63c51c], 0xa
jne 0x4667b4
mov ecx, ebp
call fcn.004c08d0
jmp 0x4667b4
mov dword [0x64e4b4], ebp
mov word [0x63c51c], bx
jmp 0x4667b4
xor ecx, ecx
call fcn.0047e150
cmp word [0x63c51c], si
jne 0x4667b4
call fcn.0045a7e0
test eax, eax
mov ecx, 0x18
jne 0x46689b
mov ecx, ebp
call fcn.0047e150
cmp word [0x63c51c], si
jne 0x4667b4
mov word [0x63c51c], di
jmp 0x4667b4
call fcn.00457e70
jmp 0x4667b4
call fcn.0040fab0
cmp word [0x63c51c], 8
jmp 0x4668df
call fcn.0040f090
cmp word [0x63c51c], 9
jne 0x4667b4
mov word [0x63c51c], di
mov dword [0x640740], esi
jmp 0x4667b4
xor cl, cl
call fcn.004d6350
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x5c
ret 0x10