Function at 0x10008988
Capabilities:
Act as tcp client
Connect socket
Connect tcp socket
Connect udp socket
Create tcp socket
Create udp socket
Get common file path
Resolve dns
Set socket configuration

Disassembly:
push esi
mov esi, dword [0x1003a61c]
push edi
push dword [eax]
call sub.WS2_32.dll_ntohl
mov edi, eax
jmp 0x100044f2
cmp dword [esi], edi
jne 0x100044ef
push dword [esi + 8]
and dword [esi + 4], 0
call fcn.1001655a
pop ecx
mov esi, dword [esi + 0xc]
test esi, esi
jne 0x100044de
pop edi
pop esi
ret
push dword [eax]
call sub.WS2_32.dll_ntohl
xor edx, edx
mov ecx, 0x1003a648
cmp dword [ecx + 0x24], 1
jne 0x100064bf
cmp dword [ecx], eax
je 0x100064cc
add ecx, 0x34
inc edx
cmp ecx, 0x1003ae68
jl 0x100064b5
ret
mov eax, edx
imul eax, eax, 0x34
push 0xa
push dword [eax + 0x1003a674]
push dword [eax + 0x1003a670]
call fcn.100012d0
add esp, 0xc
ret
push dword [eax]
call sub.WS2_32.dll_ntohl
push eax
call fcn.10006644
pop ecx
ret
push esi
push dword [eax]
mov esi, dword [0x1003a644]
call sub.WS2_32.dll_ntohl
jmp 0x100077a2
cmp dword [esi + 4], 0
je 0x1000779f
cmp eax, dword [esi]
jne 0x1000779f
cmp dword [esi + 0x10], 2
je 0x1000779f
and dword [esi + 4], 0
mov esi, dword [esi + 0x20]
test esi, esi
jne 0x1000778b
pop esi
ret
push ebx
push esi
dec eax
push edi
mov esi, edx
cmp eax, 0x67
ja case.0x10008997.2
jmp dword [eax*4 + 0x10008cfc]
xor ebx, ebx
inc ebx
push ebx
push esi
push ecx
call fcn.10004c68
jmp 0x10008cf2
push 1
push esi
push ecx
call fcn.10004bb1
jmp 0x10008cf2
pop edi
pop esi
pop ebx
jmp fcn.10002c88
push esi
push ecx
call fcn.10002cf6
pop ecx
pop ecx
jmp case.0x10008997.2
push ecx
call fcn.10002c9c
jmp 0x100089cc
push 0x1002e70c
push esi
push ecx
call fcn.10003177
jmp 0x10008cf2
push esi
push ecx
call fcn.10004271
jmp 0x100089cb
push ecx
call fcn.10002d45
jmp 0x100089cc
push 1
push esi
push ecx
call fcn.1000aea6
jmp 0x10008cf2
mov eax, esi
pop edi
pop esi
pop ebx
jmp fcn.100073ec
mov eax, esi
pop edi
pop esi
pop ebx
jmp fcn.1000733d
push esi
mov eax, ecx
call fcn.10007693
jmp 0x100089cc
push esi
mov eax, ecx
call fcn.100076d5
jmp 0x100089cc
mov eax, ecx
pop edi
pop esi
pop ebx
jmp 0x1000777b
push ecx
call fcn.100072df
jmp 0x100089cc
push 1
push esi
mov eax, ecx
call fcn.10004ebe
jmp 0x100089cb
mov eax, ecx
pop edi
pop esi
pop ebx
jmp 0x100044cb
push esi
push ecx
call fcn.100064e8
jmp 0x100089cb
mov eax, ecx
pop edi
pop esi
pop ebx
jmp 0x10006635
mov eax, ecx
pop edi
pop esi
pop ebx
jmp 0x100064a7
pop edi
pop esi
pop ebx
jmp fcn.1000b82c
pop edi
pop esi
pop ebx
jmp fcn.1000b6b4
push esi
mov eax, ecx
call fcn.1000b8a0
jmp 0x100089cc
push esi
push ecx
call fcn.10008fcb
jmp 0x100089cb
push esi
push ecx
call fcn.10008ef1
jmp 0x100089cb
push ecx
mov edi, esi
call fcn.10007dd8
jmp 0x100089cc
push esi
push ecx
call fcn.10002ed5
jmp 0x100089cb
pop edi
pop esi
pop ebx
jmp fcn.10003219
push 0
xor eax, eax
push esi
push ecx
call fcn.100061b0
jmp 0x10008cf2
pop edi
pop esi
pop ebx
jmp fcn.100062c2
push esi
push ecx
call fcn.1000632a
jmp 0x100089cb
push 0
jmp 0x100089b0
xor ebx, ebx
push 0
inc ebx
jmp 0x100089a2
push 1
push esi
mov eax, ecx
call fcn.10004f0e
jmp 0x100089cb
push 0
jmp 0x10008b0a
push esi
push ecx
call fcn.10003269
jmp 0x100089cb
push esi
push ecx
call fcn.1000bb07
jmp 0x100089cb
push 0
jmp 0x10008ceb
push esi
push ecx
call fcn.10007d78
jmp 0x100089cb
push esi
push ecx
call fcn.10003303
jmp 0x100089cb
push esi
push ecx
call fcn.100047c9
jmp 0x100089cb
push esi
push ecx
call fcn.10004686
jmp 0x100089cb
push esi
push ecx
call fcn.10004560
jmp 0x100089cb
push esi
push ecx
call fcn.10004637
jmp 0x100089cb
push esi
push ecx
call fcn.100033bf
jmp 0x100089cb
push esi
push ecx
call fcn.1000c034
jmp 0x100089cb
push ecx
call fcn.10003801
jmp 0x100089cc
pop edi
pop esi
pop ebx
jmp fcn.10003879
xor eax, eax
push 0
inc eax
jmp 0x10008ad7
push 0x1002e710
jmp 0x100089df
push ecx
call fcn.1000683c
jmp 0x100089cc
push 0
jmp 0x100089fe
xor ebx, ebx
inc ebx
push ebx
push ebx
push esi
push ecx
call fcn.10005052
add esp, 0x10
jmp case.0x10008997.2
push 1
push 0
jmp 0x10008bd8
push ecx
call fcn.10002cd7
jmp 0x100089cc
push esi
push ecx
call fcn.100046b9
jmp 0x100089cb
push esi
push ecx
call fcn.10004742
jmp 0x100089cb
push esi
push ecx
call fcn.10008136
jmp 0x100089cb
push esi
push ecx
call fcn.10002dd8
jmp 0x100089cb
push esi
push ecx
call fcn.10003949
jmp 0x100089cb
push esi
push ecx
call fcn.10003078
jmp 0x100089cb
push esi
push ecx
call fcn.10007e11
jmp 0x100089cb
push esi
push ecx
call fcn.10007d13
jmp 0x100089cb
push esi
push ecx
call fcn.10001092
jmp 0x100089cb
push esi
mov eax, ecx
call fcn.1000113a
jmp 0x100089cc
pop edi
pop esi
pop ebx
jmp fcn.100011df
push esi
push ecx
call fcn.10006be7
jmp 0x100089cb
push 0
push 1
jmp 0x10008bd8
push 0
jmp 0x10008be9
push 1
xor ebx, ebx
jmp 0x100089a2
push 0
jmp 0x10008c97
push 0
jmp 0x10008a46
push esi
push ecx
call fcn.10008048
jmp 0x100089cb
push 1
push esi
push ecx
call fcn.10004dcc
jmp 0x10008cf2
push 0
jmp 0x10008cb7
push 1
push esi
push ecx
call fcn.10004d0d
jmp 0x10008cf2
push 0
jmp 0x10008cc6
push esi
push ecx
call fcn.10002118
jmp 0x100089cb
push 1
jmp 0x10008ad5
push 0x100007f
push esi
push ecx
call fcn.10007ca2
add esp, 0xc
pop edi
pop esi
pop ebx
ret