Function at 0x40df80
Capabilities:
Get common file path
Get hostname
Get session user name
Get system information on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x6c
mov eax, dword [0x452074]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
mov esi, dword [0x1a278f8]
lea eax, [ebp - 8]
push edi
push eax
mov ebx, ecx
mov dword [ebp - 8], 0xffff
add esi, 0x5c
mov dword [ebp - 0x54], ebx
push esi
call dword [sym.imp.KERNEL32.dll_GetComputerNameA]
test eax, eax
je 0x40dfc9
push 0
push esi
mov edx, str.Computer_Name
mov ecx, ebx
call fcn.00407d00
add esp, 8
lea eax, [ebp - 8]
mov dword [ebp - 8], 0xffff
push eax
push esi
call dword [sym.imp.ADVAPI32.dll_GetUserNameA]
test eax, eax
je 0x40dff1
push 0
push esi
mov edx, str.Username
mov ecx, ebx
call fcn.00407d00
add esp, 8
mov edi, dword [sym.imp.KERNEL32.dll_GetComputerNameExA]
lea eax, [ebp - 8]
push eax
push esi
push 2
call edi
test eax, eax
je 0x40e016
push 0
push esi
mov edx, str.DNS_Domain
mov ecx, ebx
call fcn.00407d00
add esp, 8
lea eax, [ebp - 8]
push eax
push esi
push 1
call edi
test eax, eax
je 0x40e035
push 0
push esi
mov edx, str.DNS_Hostname
mov ecx, ebx
call fcn.00407d00
add esp, 8
push 0xffff
push esi
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryA]
test eax, eax
je 0x40e057
push 0
push esi
mov edx, str.System_Directory
mov ecx, ebx
call fcn.00407d00
add esp, 8
push 0xffff
push esi
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryA]
test eax, eax
je 0x40e079
push 0
push esi
mov edx, str.Windows_Directory
mov ecx, ebx
call fcn.00407d00
add esp, 8
call dword [0x4252f4]
mov ebx, eax
mov ecx, edx
mov edx, 0x1a9fbe77
mov dword [ebp - 0x30], ecx
mul edx
mov edi, 0x624dd2f
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x50], eax
mov esi, edx
mov eax, ebx
mul edi
mov edi, eax
mov dword [ebp - 0x38], edx
mov eax, ecx
mov ecx, 0x1a9fbe77
mul ecx
mov ecx, eax
mov ebx, edx
mov eax, dword [ebp - 0x30]
mov edx, 0x624dd2f
mul edx
add ecx, esi
mov dword [ebp - 0x34], eax
adc ebx, 0
add edi, ecx
mov ecx, dword [ebp - 0x38]
adc ecx, 0
mov dword [ebp - 0x50], edi
mov edi, dword [ebp - 0x3c]
xor eax, eax
add ebx, ecx
mov ecx, dword [ebp - 0x34]
adc eax, eax
add ecx, ebx
mov ebx, dword [ebp - 0x30]
adc edx, eax
sub edi, ecx
sbb ebx, edx
shrd edi, ebx, 1
shr ebx, 1
add edi, ecx
mov ecx, 0xabcdf013
adc ebx, edx
shrd edi, ebx, 9
mov eax, edi
shr ebx, 9
mul ecx
mov dword [ebp - 0x3c], edi
mov dword [ebp - 0x50], eax
mov esi, edx
mov eax, edi
mov dword [ebp - 0x30], ebx
mov edx, 0x23456789
mul edx
mov edi, eax
mov dword [ebp - 0x38], edx
mov eax, ebx
mul ecx
mov ecx, eax
mov ebx, edx
mov eax, dword [ebp - 0x30]
mov edx, 0x23456789
mul edx
add ecx, esi
mov dword [ebp - 0x34], eax
adc ebx, 0
add edi, ecx
mov ecx, dword [ebp - 0x38]
adc ecx, 0
mov dword [ebp - 0x50], edi
mov edi, dword [ebp - 0x3c]
xor eax, eax
add ebx, ecx
mov ecx, dword [ebp - 0x34]
adc eax, eax
add ecx, ebx
mov ebx, dword [ebp - 0x30]
adc edx, eax
sub edi, ecx
sbb ebx, edx
shrd edi, ebx, 1
shr ebx, 1
add edi, ecx
mov ecx, 0xaaaaaaab
adc ebx, edx
shrd edi, ebx, 0xb
mov eax, edi
shr ebx, 0xb
mul ecx
mov dword [ebp - 0x38], edi
mov dword [ebp - 0x50], eax
mov esi, edx
mov eax, edi
mov dword [ebp - 0x34], ebx
mov edx, 0xaaaaaaaa
mul edx
mov edi, eax
mov dword [ebp - 0x44], edx
mov eax, ebx
mul ecx
mov ecx, eax
mov ebx, edx
mov eax, dword [ebp - 0x34]
mov edx, 0xaaaaaaaa
mul edx
add ecx, esi
mov dword [ebp - 0x40], eax
adc ebx, 0
add edi, ecx
mov ecx, dword [ebp - 0x44]
adc ecx, 0
mov dword [ebp - 0x50], edi
xor eax, eax
add ebx, ecx
mov ecx, dword [ebp - 0x40]
adc eax, eax
add ecx, ebx
mov ebx, 0x88888889
adc edx, eax
mov eax, dword [ebp - 0x3c]
shrd ecx, edx, 4
shr edx, 4
lea edi, [ebx - 1]
mov dword [ebp - 0x4c], edx
mul ebx
mov dword [ebp - 0x40], ecx
mov dword [ebp - 0x60], eax
mov esi, edx
mov eax, dword [ebp - 0x3c]
mul edi
mov edi, eax
mov dword [ebp - 0x44], edx
mov eax, dword [ebp - 0x30]
mul ebx
mov ecx, eax
mov ebx, edx
mov eax, dword [ebp - 0x30]
mov edx, 0x88888888
mul edx
add ecx, esi
mov dword [ebp - 0x5c], eax
mov esi, eax
adc ebx, 0
add edi, ecx
mov ecx, dword [ebp - 0x44]
mov dword [ebp - 0x68], edi
adc ecx, 0
xor eax, eax
add ebx, ecx
adc eax, eax
add esi, ebx
adc edx, eax
shrd esi, edx, 5
shr edx, 5
mov eax, esi
mov ecx, edx
shld ecx, eax, 4
shl eax, 4
sub eax, esi
sbb ecx, edx
shld ecx, eax, 2
mov ebx, dword [ebp - 0x3c]
shl eax, 2
sub ebx, eax
mov edi, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x30]
sbb eax, ecx
mov ecx, dword [ebp - 0x34]
push eax
mov eax, dword [ebp - 0x38]
shld ecx, eax, 4
push ebx
mov ebx, dword [ebp - 0x40]
shl eax, 4
sub eax, dword [ebp - 0x38]
sbb ecx, dword [ebp - 0x34]
shld ecx, eax, 2
shl eax, 2
sub esi, eax
mov eax, ebx
sbb edx, ecx
mov ecx, edi
push edx
shld ecx, eax, 1
push esi
add eax, eax
mov edx, ebx
add edx, eax
mov esi, edi
mov eax, dword [ebp - 0x34]
adc esi, ecx
mov ecx, dword [ebp - 0x38]
shld esi, edx, 3
shl edx, 3
sub ecx, edx
sbb eax, esi
mov esi, dword [ebp - 0x54]
push eax
push ecx
push edi
push ebx
push str._llu_days___llu_hours___llu_min___llu_sec
push 0
push str.Uptime
push esi
call fcn.00407f50
add esp, 0x30
lea eax, [ebp - 0x2c]
push eax
call dword [sym.imp.KERNEL32.dll_GetNativeSystemInfo]
movzx ecx, word [ebp - 0x2c]
test ecx, ecx
je 0x40e2c5
cmp ecx, 9
mov eax, str.UNKNOWN
mov edx, 0x44870c
cmove eax, edx
jmp 0x40e2ca
mov eax, 0x44de48
push 0
push eax
mov edx, str.Processor_Architecture
mov ecx, esi
call fcn.00407d00
push dword [ebp - 0x28]
push 0x444d3c
push 0x200
push str.Page_Size
push esi
call fcn.00407f50
mov ecx, dword [ebp - 4]
add esp, 0x1c
xor ecx, ebp
pop edi
pop esi
pop ebx
call fcn.0041abcf
mov esp, ebp
pop ebp
ret