Function at 0x1004a944
Capabilities:
Set socket configuration

Disassembly:
mov eax, 0x100d0652
call fcn.10030644
sub esp, 0x3c
mov eax, dword [ecx + 0x338]
push ebx
imul eax, eax, 0x58
push esi
push edi
lea esi, [eax + ecx + 0x394]
mov dword [ebp - 0x10], ecx
lea eax, [esi + 0x10]
push eax
call fcn.10030730
test eax, eax
pop ecx
jne 0x1004aa25
mov al, byte [esi]
xor ebx, ebx
push ebx
lea ecx, [ebp - 0x28]
mov byte [ebp - 0x28], al
call fcn.10002424
push dword [0x100d6d18]
lea ecx, [ebp - 0x28]
push ebx
push esi
call fcn.10003585
mov al, byte [ebp - 0x28]
sub esp, 0x10
mov edi, esp
mov dword [ebp - 0x14], esp
mov dword [ebp - 4], ebx
push ebx
mov ecx, edi
mov byte [edi], al
call fcn.10002424
push dword [0x100d6d18]
lea eax, [ebp - 0x28]
mov ecx, edi
push ebx
push eax
call fcn.10003585
and byte [ebp - 4], bl
lea eax, [ebp - 0x48]
push eax
call fcn.10041fb4
add esp, 0x14
mov eax, dword [ebp - 0x44]
mov byte [ebp - 4], 2
cmp eax, ebx
jne 0x1004a9e2
mov eax, 0x100d6d1c
push 0x40
push eax
lea eax, [esi + 0x10]
push eax
call fcn.10037280
mov eax, dword [ebp - 0x44]
add esp, 0xc
cmp eax, ebx
jne 0x1004a9fd
mov eax, 0x100d6d1c
push eax
call dword [sym.imp.WSOCK32.dll_inet_addr]
and byte [ebp - 4], 0
push 1
lea ecx, [ebp - 0x48]
mov dword [esi + 0x50], eax
call fcn.10002424
or dword [ebp - 4], 0xffffffff
push 1
lea ecx, [ebp - 0x28]
call fcn.10002424
jmp 0x1004aa27
xor ebx, ebx
mov al, byte [ebp + 0x13]
push ebx
lea ecx, [ebp - 0x38]
mov byte [ebp - 0x38], al
call fcn.10002424
lea edi, [esi + 0x10]
mov dword [ebp - 4], 3
push edi
call fcn.10030730
test eax, eax
pop ecx
jbe 0x1004aa5e
push edi
call fcn.10030730
pop ecx
push eax
push edi
lea ecx, [ebp - 0x38]
call fcn.100036bc
jmp 0x1004aa6e
push dword [0x100d6d18]
lea ecx, [ebp - 0x38]
push ebx
push esi
call fcn.10003585
push 0xb0
call fcn.100c0da0
pop ecx
mov ecx, eax
mov dword [ebp - 0x14], ecx
cmp ecx, ebx
mov byte [ebp - 4], 4
je 0x1004aaa6
mov eax, dword [ebp - 0x34]
cmp eax, ebx
jne 0x1004aa92
mov eax, 0x100d6d1c
movsx edx, word [esi + 0x54]
push 0x100fcb24
push edx
push eax
call fcn.1006b810
mov edi, eax
jmp 0x1004aaa8
xor edi, edi
mov eax, dword [esi + 4]
mov byte [ebp - 4], 3
cmp eax, ebx
jne 0x1004aab8
mov eax, 0x100d6d1c
push eax
mov ecx, edi
call fcn.1006ccb9
push 1
mov ecx, edi
call fcn.1006cc97
mov al, byte [ebp + 0x13]
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x18], esp
push ebx
mov dword [ebp - 0x14], ecx
mov byte [ecx], al
call fcn.10002424
mov ebx, str.vpn__091server
push ebx
call fcn.10030730
pop ecx
mov ecx, dword [ebp - 0x14]
push eax
push ebx
call fcn.100036bc
mov byte [ebp - 4], 3
call fcn.100512a9
add esp, 0x10
mov ecx, edi
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
push str.Execute
call fcn.1006ba82
mov byte [ebp + 0x13], al
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 4]
test edi, edi
je 0x1004ab2c
mov eax, dword [edi]
push 1
mov ecx, edi
call dword [eax]
cmp byte [ebp + 0x13], 0
jne 0x1004ab5f
mov ecx, dword [ebp - 0x10]
inc dword [ecx + 0x338]
mov eax, dword [ecx + 0x338]
cmp eax, dword [ecx + 0x334]
jl 0x1004ab50
and dword [ecx + 0x338], 0
push dword [ecx + 0x338]
push 0x6e
call fcn.1004b572
jmp 0x1004ab9e
cmp byte [esi + 0x56], 0
jne 0x1004ab9e
mov al, byte [ebp + 0x13]
sub esp, 0x10
mov edi, esp
mov dword [ebp + 0xc], esp
push 0
mov ecx, edi
mov byte [edi], al
call fcn.10002424
lea ebx, [esi + 0x10]
push ebx
call fcn.10030730
pop ecx
push eax
push ebx
mov ecx, edi
call fcn.100036bc
mov ecx, dword [ebp - 0x10]
mov byte [ebp - 4], 3
call fcn.1004dd6c
mov byte [esi + 0x56], 1
or dword [ebp - 4], 0xffffffff
push 1
lea ecx, [ebp - 0x38]
call fcn.10002424
mov ecx, dword [ebp - 0xc]
mov al, byte [ebp + 0x13]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
leave
ret 0xc