Function at 0x10078390
Capabilities:
Get number of processors
Initialize winsock library

Disassembly:
push 0xffffffffffffffff
push 0x1017aa0d
mov eax, dword fs:[0]
push eax
sub esp, 0x3e4
mov eax, dword [0x101ce2ac]
xor eax, esp
mov dword [esp + 0x3e0], eax
push ebx
push esi
push edi
mov eax, dword [0x101ce2ac]
xor eax, esp
push eax
lea eax, [esp + 0x3f4]
mov dword fs:[0], eax
mov edi, dword [esp + 0x404]
mov esi, dword [esp + 0x40c]
xor ebx, ebx
push 0x1ff
lea eax, [esp + 0x1f5]
push ebx
mov dword [esp + 0x30], ebx
push eax
mov dword [esp + 0x48], edi
mov byte [esp + 0x1fc], bl
call fcn.10117df0
add esp, 0xc
test ah, ah
mov edi, edi
xor eax, eax
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], eax
mov dword [esp + 0x38], eax
mov edx, edx
test ah, ah
lea ecx, [esp + 0x40]
push ecx
push 0x202
call dword [sym.imp.WS2_32.dll_WSAStartup]
mov ah, ah
mov ax, word [esp + 0x40]
cmp al, 2
jne 0x1007860a
cmp ah, al
jne 0x1007860a
lea ecx, [esp + 0x14]
call fcn.101089f7
mov dword [esp + 0x3fc], 1
mov edx, edx
push ebx
lea edx, [esp + 0x18]
push edx
push 0x10182558
push esi
call fcn.10060090
add esp, 0x10
mov ebx, eax
test eax, 0x443e
mov ebx, ebx
xor esi, esi
test ebx, ebx
jle 0x100784ab
test esi, esi
jl 0x10078605
cmp esi, dword [esp + 0x1c]
jge 0x10078605
mov eax, dword [esp + 0x18]
mov eax, dword [eax + esi*4]
push eax
lea ecx, [esp + 0x30]
push ecx
call fcn.10070390
add esp, 8
test eax, eax
jne 0x100784ab
add esi, 1
cmp esi, ebx
jl 0x10078479
call dword [sym.imp.WS2_32.dll_WSACleanup]
nop
mov dl, 0x25
mov cl, 0x30
mov al, 0x64
mov bl, 0x32
mov byte [esp + 0x1d0], dl
mov byte [esp + 0x1d1], cl
mov byte [esp + 0x1d2], 0x34
mov byte [esp + 0x1d3], al
mov byte [esp + 0x1d4], 0x2d
mov byte [esp + 0x1d5], dl
mov byte [esp + 0x1d6], cl
mov byte [esp + 0x1d7], bl
mov byte [esp + 0x1d8], al
mov byte [esp + 0x1d9], 0x2d
mov byte [esp + 0x1da], dl
mov byte [esp + 0x1db], cl
mov byte [esp + 0x1dc], bl
mov byte [esp + 0x1dd], al
mov byte [esp + 0x1de], 0x20
mov byte [esp + 0x1df], dl
mov byte [esp + 0x1e0], cl
mov byte [esp + 0x1e1], bl
mov byte [esp + 0x1e2], al
mov byte [esp + 0x1e3], 0x3a
mov byte [esp + 0x1e4], dl
mov byte [esp + 0x1e5], cl
mov byte [esp + 0x1e6], bl
mov byte [esp + 0x1e7], al
mov byte [esp + 0x1e8], 0x3a
mov byte [esp + 0x1e9], dl
mov byte [esp + 0x1ea], cl
mov byte [esp + 0x1eb], bl
mov byte [esp + 0x1ec], al
mov byte [esp + 0x1ed], 0
test eax, 0x1cc5
movzx edx, word [esp + 0x38]
movzx eax, word [esp + 0x36]
movzx ecx, word [esp + 0x34]
push edx
movzx edx, word [esp + 0x36]
push eax
movzx eax, word [esp + 0x36]
push ecx
movzx ecx, word [esp + 0x38]
push edx
push eax
push ecx
lea edx, [esp + 0x1e8]
push edx
lea eax, [esp + 0x20c]
push eax
call fcn.10118d49
add esp, 0x20
test dh, dh
lea ecx, [esp + 0x13]
push ecx
lea edx, [esp + 0x1f4]
push edx
mov ecx, edi
call fcn.100085b0
mov dword [esp + 0x28], 1
mov byte [esp + 0x3fc], 0
lea ecx, [esp + 0x14]
call fcn.10108d3f
jmp 0x10078635
jmp fcn.10105789
call dword [sym.imp.WS2_32.dll_WSACleanup]
mov al, al
lea eax, [esp + 0x13]
push eax
lea ecx, [esp + 0x1f4]
push ecx
mov ecx, edi
call fcn.100085b0
mov dword [esp + 0x3fc], ebx
mov dword [esp + 0x28], 1
mov eax, edi
mov ecx, dword [esp + 0x3f4]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x3e0]
xor ecx, esp
call fcn.10116cb9
add esp, 0x3f0
ret