Function at 0x40a63b
Capabilities:
Set socket configuration

Disassembly:
mov eax, 0x450a19
call fcn.0041e4b8
sub esp, 0x114
push ebx
push esi
mov esi, ecx
push edi
lea edi, [esi + 0x2e40]
xor ebx, ebx
mov ecx, edi
mov dword [ebp - 0x14], ebx
call fcn.00412132
push str.STA2
push ebx
mov ecx, edi
call fcn.00412314
push 0x100
lea eax, [ebp - 0x120]
push ebx
push eax
call fcn.0041e5e0
push dword [esi + 0x2e54]
lea eax, [ebp - 0x120]
push str._04d
push eax
call fcn.0041e8d9
add esp, 0x18
mov ecx, esi
call fcn.0040580b
lea eax, [ebp - 0x120]
push eax
inc ebx
push ebx
mov ecx, edi
call fcn.00412314
push 3
lea eax, [esi + 0x143c]
push eax
mov ecx, edi
push 2
call fcn.00412245
cmp dword [ebp + 8], 0
mov ecx, edi
push 0x40
lea eax, [esi + 0xb4]
jne 0x40a6da
lea eax, [esi + 0xf4]
push eax
push 3
call fcn.00412245
lea ecx, [ebp - 0x14]
push ecx
lea eax, [esi + 0x1ab4]
push eax
mov ecx, edi
mov dword [ebp - 0x14], 0x1388
call fcn.004120ff
mov eax, dword [esi + 0x158]
cmp byte [eax + 0x14], 0x31
jne 0x40a718
mov ecx, eax
mov eax, dword [ecx]
call dword [eax + 0x10]
mov eax, dword [esi + 0x158]
mov byte [eax + 0x14], 0x30
mov eax, dword [esi + 0x158]
cmp byte [eax + 0x14], 0x30
jne 0x40a823
mov dword [ebp - 0x18], ebx
or dword [eax + 4], 0xffffffff
call fcn.0042dd95
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0xc]
add eax, 0x10
mov dword [ebp - 0x10], eax
xor edi, edi
cmp dword [ebp + 8], edi
mov dword [ebp - 4], edi
lea ecx, [ebp - 0x10]
lea eax, [esi + 0x80]
jne 0x40a75a
lea eax, [esi + 0x8c]
push eax
call fcn.00401c11
push dword [ebp - 0x10]
mov ecx, dword [esi + 0x158]
push 0x3f
push ebx
push edi
call fcn.0044fa3c
test eax, eax
je 0x40a7d5
mov eax, dword [esi + 0x158]
mov edi, dword [sym.imp.WS2_32.dll_setsockopt]
push 4
lea ecx, [ebp - 0x18]
push ecx
push 8
mov ebx, 0xffff
push ebx
push dword [eax + 4]
call edi
mov eax, dword [esi + 0x158]
and dword [ebp - 0x18], 0
push 4
lea ecx, [ebp - 0x18]
push ecx
push 0xffffff7f
push ebx
push dword [eax + 4]
call edi
push dword [esi + 0x78]
mov eax, dword [esi + 0x134]
mov ecx, dword [esi + 0x158]
push eax
call fcn.0044f42e
test eax, eax
je 0x40a814
mov eax, dword [esi + 0x158]
mov byte [eax + 0x14], 0x31
jmp 0x40a814
call dword [sym.imp.KERNEL32.dll_GetLastError]
push 0xa
lea ecx, [ebp - 0x20]
push ecx
push eax
call fcn.004225e1
lea edi, [esi + 0x154]
mov ecx, dword [edi]
mov eax, dword [ecx]
add esp, 0xc
call dword [eax + 0x10]
mov eax, dword [edi]
push str.The_sockect_to_host_cant_create_error_no_is
mov ecx, esi
mov byte [eax + 0x18], 0x30
call fcn.00408cf5
lea eax, [ebp - 0x20]
push eax
mov ecx, esi
call fcn.00408cf5
mov ecx, dword [ebp - 0x10]
or dword [ebp - 4], 0xffffffff
add ecx, 0xfffffff0
call fcn.004011ce
push dword [ebp - 0x14]
lea edi, [esi + 0x150]
mov ecx, dword [edi]
lea ebx, [esi + 0x1ab4]
push ebx
call fcn.00410fb0
mov ecx, dword [edi]
push 1
call fcn.00411b81
mov eax, dword [esi + 0x158]
cmp byte [eax + 0x14], 0x30
je 0x40a861
push 0
push dword [ebp - 0x14]
mov ecx, eax
mov eax, dword [ecx]
push ebx
call dword [eax + 0x18]
cmp eax, 0xffffffff
jne 0x40a868
push 0x458298
jmp 0x40a86d
push 0x45827c
mov ecx, esi
call fcn.00408cf5
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
leave
ret 4