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

Disassembly:
mov eax, dword [esp + 4]
sub esp, 0x5c
mov dword [0x65810c], eax
push ebx
push ebp
push esi
push edi
call fcn.004429f0
call fcn.004dbaa0
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 0x46a2c2
mov edi, dword [sym.imp.KERNEL32.dll_Sleep]
mov ebp, dword [sym.imp.USER32.dll_FindWindowA]
xor ebx, ebx
jmp 0x46a269
xor esi, esi
push 0xfa
call edi
push esi
push str.SWarClass
call ebp
mov esi, eax
test esi, esi
jne 0x46a286
inc ebx
cmp ebx, 8
jl 0x46a267
jmp 0x46a2b9
push esi
call dword [sym.imp.USER32.dll_GetLastActivePopup]
test eax, eax
je 0x46a293
mov esi, eax
push esi
call dword [sym.imp.USER32.dll_GetTopWindow]
mov edi, eax
test edi, edi
jne 0x46a2a2
mov edi, esi
push esi
call dword [sym.imp.USER32.dll_SetForegroundWindow]
push edi
call dword [sym.imp.USER32.dll_SetFocus]
push 1
push esi
call dword [sym.imp.USER32.dll_ShowWindow]
xor cl, cl
call fcn.004dea50
xor esi, esi
mov ecx, dword [esp + 0x70]
call fcn.00468ec0
lea ecx, [esp + 0x48]
push ecx
call dword [sym.imp.KERNEL32.dll_GetSystemInfo]
cmp word [esp + 0x48], si
jne 0x46a2f7
cmp dword [esp + 0x60], 0x1e6
jae 0x46a2f7
call fcn.004de5b0
test eax, eax
jne 0x46a2f7
mov cl, 1
call fcn.004dea50
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 0x4fbffc
call dword [sym.imp.KERNEL32.dll_GetDiskFreeSpaceA]
test eax, eax
je 0x46a388
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 [0x4ee090]
fxch st(1)
fmul qword [0x4ee090]
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 [0x4ee098]
fnstsw ax
test ah, 1
je 0x46a386
call fcn.004cf920
mov ecx, eax
call fcn.004de420
test eax, eax
jne 0x46a388
mov cl, 1
call fcn.004dea50
jmp 0x46a388
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 0x46a3b0
call fcn.004de5d0
test eax, eax
jne 0x46a3ca
jmp 0x46a3c3
cmp dword [esp + 0x38], 0x1e00000
jae 0x46a3ca
call fcn.004de5f0
test eax, eax
jne 0x46a3ca
mov cl, 1
call fcn.004dea50
lea ecx, [esp + 0x70]
push ecx
push esi
push str.ForceLowMem
push 0x4f56a4
call sub.Storm.dll_Ordinal_423
test eax, eax
je 0x46a3f5
cmp dword [esp + 0x70], esi
je 0x46a3f5
mov dword [0x658118], 1
jmp 0x46a42d
lea edx, [esp + 0x70]
push edx
push esi
push str.ForceHighMem
push 0x4f56a4
call sub.Storm.dll_Ordinal_423
test eax, eax
je 0x46a41c
cmp dword [esp + 0x70], esi
je 0x46a41c
mov dword [0x658118], esi
jmp 0x46a42d
cmp dword [esp + 0x30], 0x1600000
sbb eax, eax
neg eax
mov dword [0x658118], eax
call fcn.00441dd0
mov edi, 4
mov word [0x645f6c], di
call fcn.004690a0
call fcn.00440df0
call fcn.0046a6e0
call fcn.004698c0
mov edx, 0xf0
mov ecx, 0x140
call fcn.004ddaa0
call fcn.0045dc10
test eax, eax
mov eax, dword [0x6be890]
jne 0x46a48a
test ah, 2
je 0x46a4ad
and ah, 0xfd
xor ecx, ecx
mov dword [0x6be890], eax
call fcn.00483a20
mov ecx, 1
jmp 0x46a4a8
test ah, 8
je 0x46a4ad
mov eax, dword [0x6be890]
xor ecx, ecx
and ah, 0xf7
mov dword [0x6be890], eax
call fcn.00483a20
mov ecx, 0x18
call fcn.00483a20
call fcn.004c08f0
call fcn.00409530
mov ecx, 0x409720
call fcn.004ddb20
cmp word [0x645f6c], di
je 0x46a4cf
call fcn.004c0bd0
mov ebp, 0xa
mov ebx, 3
mov ecx, ebp
call fcn.00440260
call fcn.004e3070
call fcn.00466a40
test eax, eax
jne 0x46a4f3
mov byte [0x518a68], al
movsx eax, word [0x645f6c]
cmp eax, ebp
ja case.0x46a502.2
jmp dword [eax*4 + 0x46a5d0]
call fcn.0046a600
jmp 0x46a4d9
call fcn.004c8e10
cmp word [0x645f6c], bp
jne 0x46a4d9
mov ecx, 1
call fcn.004c8850
jmp 0x46a4d9
mov dword [0x658114], 1
mov word [0x645f6c], bx
jmp 0x46a4d9
xor ecx, ecx
call fcn.00483a20
cmp word [0x645f6c], si
jne 0x46a4d9
call fcn.0045dc10
test eax, eax
mov ecx, 0x18
jne 0x46a560
mov ecx, 1
call fcn.00483a20
cmp word [0x645f6c], si
jne 0x46a4d9
mov word [0x645f6c], di
jmp 0x46a4d9
call fcn.0045b230
jmp 0x46a4d9
call fcn.00410240
cmp word [0x645f6c], 8
jmp 0x46a5a4
call fcn.0040f7d0
cmp word [0x645f6c], 9
jne 0x46a4d9
mov word [0x645f6c], di
mov dword [0x64a320], esi
jmp 0x46a4d9
xor cl, cl
call fcn.004dea50
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x5c
ret 0x10