Function at 0x401f0f
Capabilities:
Get memory capacity
Write file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x2d4
push ebx
push esi
push edi
lea eax, [ebp - 0x18]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTime]
movzx eax, word [ebp - 0xe]
push eax
movzx eax, word [ebp - 0x10]
mov edi, dword [sym.imp.USER32.dll_wsprintfA]
push eax
movzx eax, word [ebp - 0x18]
push eax
movzx eax, word [ebp - 0x12]
push eax
movzx eax, word [ebp - 0x16]
push eax
lea eax, [ebp - 0x1cc]
push str._nCurrent_date_time:__02d__02d__04d__02d:_02d_r_n
push eax
call edi
add esp, 0x1c
xor ebx, ebx
push ebx
lea eax, [ebp - 4]
push eax
lea eax, [ebp - 0x1cc]
push eax
call fcn.00405b90
mov esi, dword [sym.imp.KERNEL32.dll_WriteFile]
pop ecx
push eax
lea eax, [ebp - 0x1cc]
push eax
push dword [ebp + 8]
call esi
push 0x105
lea eax, [ebp - 0x2d4]
push eax
push dword [0x409b60]
mov byte [ebp - 0x2d4], bl
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea eax, [ebp - 0x2d4]
push eax
lea eax, [ebp - 0x1cc]
push str.Module_name___s_r_n
push eax
call edi
add esp, 0xc
push ebx
lea eax, [ebp - 4]
push eax
lea eax, [ebp - 0x1cc]
push eax
call fcn.00405b90
pop ecx
push eax
lea eax, [ebp - 0x1cc]
push eax
push dword [ebp + 8]
call esi
push dword [0x409dbc]
lea eax, [ebp - 0x1cc]
push dword [0x409db8]
push str._nOperating_System_Version__d._02d_r_n
push eax
call edi
add esp, 0x10
push ebx
lea eax, [ebp - 4]
push eax
lea eax, [ebp - 0x1cc]
push eax
call fcn.00405b90
pop ecx
push eax
lea eax, [ebp - 0x1cc]
push eax
push dword [ebp + 8]
call esi
call dword [sym.imp.KERNEL32.dll_GetVersion]
cmp eax, 0x80000000
mov dword [ebp - 8], eax
jae 0x402024
push str.Windows_NT_r_n
jmp 0x402034
cmp al, 4
jae 0x40202f
push str.Win32s_r_n
jmp 0x402034
push str.Windows_95_98_r_n
lea eax, [ebp - 0x1cc]
push eax
call edi
pop ecx
pop ecx
push ebx
lea eax, [ebp - 4]
push eax
lea eax, [ebp - 0x1cc]
push eax
call fcn.00405b90
pop ecx
push eax
lea eax, [ebp - 0x1cc]
push eax
push dword [ebp + 8]
call esi
movzx eax, byte [ebp - 7]
push eax
movzx eax, byte [ebp - 8]
push eax
lea eax, [ebp - 0x1cc]
push str._Version__d._d_r_n
push eax
call edi
add esp, 0x10
push ebx
lea eax, [ebp - 4]
push eax
lea eax, [ebp - 0x1cc]
push eax
call fcn.00405b90
pop ecx
push eax
lea eax, [ebp - 0x1cc]
push eax
push dword [ebp + 8]
call esi
lea eax, [ebp - 0x38]
push eax
mov dword [ebp - 0x38], 0x20
call dword [sym.imp.KERNEL32.dll_GlobalMemoryStatus]
push dword [ebp - 0x34]
lea eax, [ebp - 0x1cc]
push str.Memory_in_use___ld___r_n
push eax
call edi
add esp, 0xc
push ebx
lea eax, [ebp - 4]
push eax
lea eax, [ebp - 0x1cc]
push eax
call fcn.00405b90
pop ecx
push eax
lea eax, [ebp - 0x1cc]
push eax
push dword [ebp + 8]
call esi
mov eax, dword [ebp - 0x30]
shr eax, 0xa
push eax
lea eax, [ebp - 0x1cc]
push str.Total_physical_memory___ld_Kbytes_r_n
push eax
call edi
add esp, 0xc
push ebx
lea eax, [ebp - 4]
push eax
lea eax, [ebp - 0x1cc]
push eax
call fcn.00405b90
pop ecx
push eax
lea eax, [ebp - 0x1cc]
push eax
push dword [ebp + 8]
call esi
mov eax, dword [ebp - 0x2c]
shr eax, 0xa
push eax
lea eax, [ebp - 0x1cc]
push str.Physical_memory_available___ld_Kbytes_r_n
push eax
call edi
add esp, 0xc
push ebx
lea eax, [ebp - 4]
push eax
lea eax, [ebp - 0x1cc]
push eax
call fcn.00405b90
pop ecx
push eax
lea eax, [ebp - 0x1cc]
push eax
push dword [ebp + 8]
call esi
mov eax, dword [ebp - 0x20]
shr eax, 0xa
push eax
lea eax, [ebp - 0x1cc]
push str.Total_virtual_memory___ld_Kbytes_r_n
push eax
call edi
add esp, 0xc
push ebx
lea eax, [ebp - 4]
push eax
lea eax, [ebp - 0x1cc]
push eax
call fcn.00405b90
pop ecx
push eax
lea eax, [ebp - 0x1cc]
push eax
push dword [ebp + 8]
call esi
mov eax, dword [ebp - 0x1c]
shr eax, 0xa
push eax
lea eax, [ebp - 0x1cc]
push str.Virtual_memory_available___ld_Kbytes_r_n
push eax
call edi
add esp, 0xc
push ebx
lea eax, [ebp - 4]
push eax
lea eax, [ebp - 0x1cc]
push eax
call fcn.00405b90
pop ecx
push eax
lea eax, [ebp - 0x1cc]
push eax
push dword [ebp + 8]
call esi
pop edi
pop esi
pop ebx
leave
ret