Function at 0x521a70
Capabilities:
Check for peb beingdebugged flag
Get hostname
Get local ipv4 addresses
Get mac address on windows
Get number of processors
Get session user name
Initialize winsock library

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0x74
push 0
push 0
dec ecx
jne 0x521a78
push ebx
push esi
push edi
lea esi, [ebp - 0x10]
xor eax, eax
push ebp
push 0x521f18
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, 0x3f8
call fcn.004027a8
mov ebx, eax
xor eax, eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x1c], 0x2800
mov eax, dword [ebp - 0x1c]
call fcn.004027a8
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x1c]
push eax
mov eax, dword [ebp - 0x14]
push eax
call sub.iphlpapi.dll_GetAdaptersInfo
test eax, eax
jne 0x521eda
mov eax, dword [ebp - 0x14]
mov dword [esi], eax
mov byte [ebx], 0
cmp dword [esi], 0
je 0x521c9b
lea eax, [ebp - 0x24c]
mov edx, dword [esi]
add edx, 0x1b0
mov ecx, 0x10
call fcn.00404424
cmp dword [ebp - 0x24c], 0
je 0x521c8c
lea eax, [ebp - 0x24]
call fcn.004041b4
lea ecx, [ebp - 0x250]
mov eax, dword [esi]
movzx eax, byte [eax + 0x194]
mov edx, 2
call fcn.00408e04
push dword [ebp - 0x250]
lea ecx, [ebp - 0x254]
mov eax, dword [esi]
movzx eax, byte [eax + 0x195]
mov edx, 2
call fcn.00408e04
push dword [ebp - 0x254]
lea ecx, [ebp - 0x258]
mov eax, dword [esi]
movzx eax, byte [eax + 0x196]
mov edx, 2
call fcn.00408e04
push dword [ebp - 0x258]
lea ecx, [ebp - 0x25c]
mov eax, dword [esi]
movzx eax, byte [eax + 0x197]
mov edx, 2
call fcn.00408e04
push dword [ebp - 0x25c]
lea ecx, [ebp - 0x260]
mov eax, dword [esi]
movzx eax, byte [eax + 0x198]
mov edx, 2
call fcn.00408e04
push dword [ebp - 0x260]
lea ecx, [ebp - 0x264]
mov eax, dword [esi]
movzx eax, byte [eax + 0x199]
mov edx, 2
call fcn.00408e04
push dword [ebp - 0x264]
lea eax, [ebp - 0xc]
mov edx, 6
call fcn.00404534
mov eax, dword [esi]
add eax, 0x1ac
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x24], 0
jne 0x521bf5
lea eax, [ebp - 0x24]
mov edx, dword [ebp - 0x18]
add edx, 4
mov ecx, 0x10
call fcn.00404424
jmp 0x521c26
push dword [ebp - 0x24]
push 0x521f34
lea eax, [ebp - 0x268]
mov edx, dword [ebp - 0x18]
add edx, 4
mov ecx, 0x10
call fcn.00404424
push dword [ebp - 0x268]
lea eax, [ebp - 0x24]
mov edx, 3
call fcn.00404534
mov eax, dword [ebp - 0x18]
mov edi, dword [eax]
test edi, edi
je 0x521c34
mov dword [ebp - 0x18], edi
jmp 0x521bda
lea eax, [ebp - 0x370]
mov edx, ebx
call fcn.00404418
push dword [ebp - 0x370]
push dword [ebp - 0xc]
push 0x521f40
push dword [ebp - 0x24]
push 0x521f4c
lea eax, [ebp - 0x36c]
mov edx, 5
call fcn.00404534
mov edx, dword [ebp - 0x36c]
lea eax, [ebp - 0x368]
mov ecx, 0xff
call fcn.00404450
lea edx, [ebp - 0x368]
mov eax, ebx
mov cl, 0xc8
call fcn.00402c9c
mov eax, dword [esi]
mov eax, dword [eax]
mov dword [esi], eax
cmp dword [esi], 0
jne 0x521adc
lea eax, [ebp - 0x1b4]
push eax
push 2
call sub.wsock32.dll_WSAStartup
mov eax, 0x80
call fcn.004027a8
mov esi, eax
push 0x80
push esi
call sub.wsock32.dll_gethostname
lea eax, [ebp - 0x368]
mov edx, esi
call fcn.00402ebc
lea edx, [ebp - 0x368]
lea eax, [ebx + 0xc9]
mov cl, 0x64
call fcn.00402c9c
mov eax, 0x80
call fcn.004027a8
mov esi, eax
mov dword [ebp - 0x20], 0x80
lea eax, [ebp - 0x20]
push eax
push esi
call sub.advapi32.dll_GetUserNameA
lea eax, [ebp - 0x368]
mov edx, esi
call fcn.00402ebc
lea edx, [ebp - 0x368]
lea eax, [ebx + 0x193]
mov cl, 0x64
call fcn.00402c9c
call fcn.00521a58
lea ecx, [ebp - 0x374]
mov edx, 8
call fcn.00408e04
mov edx, dword [ebp - 0x374]
lea eax, [ebp - 0x368]
mov ecx, 0xff
call fcn.00404450
lea edx, [ebp - 0x368]
lea eax, [ebx + 0x12e]
mov cl, 0x64
call fcn.00402c9c
call sub.wsock32.dll_WSACleanup
push ebx
push eax
mov eax, dword fs:[0x30]
xor ebx, ebx
mov ebx, dword [eax + 2]
mov dword [ebp - 4], ebx
pop eax
pop ebx
and dword [ebp - 4], 0xff
mov dword [ebp - 0x248], 0x94
lea eax, [ebp - 0x248]
push eax
call sub.kernel32.dll_GetVersionExA
mov eax, dword [ebp - 0x244]
xor edx, edx
push edx
push eax
lea eax, [ebp - 0x37c]
call fcn.00408ddc
push dword [ebp - 0x37c]
push 0x521f58
mov eax, dword [ebp - 0x240]
xor edx, edx
push edx
push eax
lea eax, [ebp - 0x380]
call fcn.00408ddc
push dword [ebp - 0x380]
push 0x521f58
mov eax, dword [ebp - 0x23c]
xor edx, edx
push edx
push eax
lea eax, [ebp - 0x384]
call fcn.00408ddc
push dword [ebp - 0x384]
lea eax, [ebp - 0x378]
mov edx, 5
call fcn.00404534
mov edx, dword [ebp - 0x378]
lea eax, [ebx + 0x2f8]
mov ecx, 0xff
call fcn.00404450
lea eax, [ebp - 0x38c]
lea edx, [ebx + 0x2f8]
call fcn.00404418
push dword [ebp - 0x38c]
push 0x521f40
lea eax, [ebp - 0x390]
mov edx, ebx
call fcn.00404418
push dword [ebp - 0x390]
push 0x521f40
lea eax, [ebp - 0x394]
lea edx, [ebx + 0xc9]
call fcn.00404418
push dword [ebp - 0x394]
push 0x521f40
lea eax, [ebp - 0x398]
lea edx, [ebx + 0x193]
call fcn.00404418
push dword [ebp - 0x398]
push 0x521f40
lea eax, [ebp - 0x39c]
lea edx, [ebx + 0x12e]
call fcn.00404418
push dword [ebp - 0x39c]
push 0x521f64
mov eax, dword [ebp - 4]
xor edx, edx
push edx
push eax
lea eax, [ebp - 0x3a0]
call fcn.00408ddc
push dword [ebp - 0x3a0]
lea eax, [ebp - 0x388]
mov edx, 0xb
call fcn.00404534
mov edx, dword [ebp - 0x388]
lea eax, [ebx + 0x1f8]
mov ecx, 0xff
call fcn.00404450
mov dword [ebp - 8], ebx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x521f1f
lea eax, [ebp - 0x3a0]
mov edx, 0xe
call fcn.004041d8
lea eax, [ebp - 0x268]
mov edx, 8
call fcn.004041d8
lea eax, [ebp - 0x24]
call fcn.004041b4
lea eax, [ebp - 0xc]
call fcn.004041b4
ret