Function at 0x42eb62
Capabilities:
Set socket configuration

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffb2c
push ebx
push esi
push edi
mov edi, dword [ebp + 0xc]
mov ebx, dword [ebp + 8]
mov eax, 0x4b692d
call fcn.0049d698
mov eax, dword [ebx + 0x1a5]
cmp eax, 8
je 0x42eba4
cmp eax, 0xa
je 0x42eba4
cmp eax, 9
je 0x42eba4
mov edx, dword [ebp - 0x28]
mov dword fs:[0], edx
mov eax, edx
jmp 0x42f335
cmp dword [ebx + 0xc77], 0
je 0x42ee58
mov eax, dword [ebx + 0x34]
test eax, eax
je 0x42ebc3
push 3
push eax
call fcn.004552f8
add esp, 8
push 0x146
call fcn.004a78c0
pop ecx
mov dword [ebp - 4], eax
test eax, eax
je 0x42ec00
mov word [ebp - 0x18], 0x14
push 0
push 7
push 0x400
push dword [ebx + 0x40]
push dword [ebx + 0x3c]
push dword [ebp - 4]
call fcn.0045512e
add esp, 0x18
mov word [ebp - 0x18], 8
mov edx, dword [ebp - 4]
jmp 0x42ec03
mov edx, dword [ebp - 4]
mov dword [ebx + 0x34], edx
test edi, edi
jne 0x42ec7f
mov edi, dword [ebx + 0x38]
mov esi, dword [ebx + 0x34]
cmp dword [0x4c0168], 0
jne 0x42ec25
push edi
push esi
call fcn.00456179
add esp, 8
jmp 0x42ec2f
push edi
push esi
call fcn.0045bdad
add esp, 8
mov edi, eax
cmp edi, 0xd
jne 0x42ec57
push 3
push dword [ebx + 0x34]
call fcn.004552f8
add esp, 8
xor eax, eax
mov dword [ebx + 0x34], eax
mov ecx, dword [ebp - 0x28]
mov dword fs:[0], ecx
jmp 0x42f335
mov eax, dword [ebx + 0x185]
mov edx, dword [ebx + 0x34]
cmp dword [0x4c0168], 0
jne 0x42ec75
push eax
push edx
call fcn.004598bb
add esp, 8
jmp 0x42ec7f
push eax
push edx
call fcn.0045c38a
add esp, 8
push 3
push dword [ebx + 0x38]
call fcn.004552f8
add esp, 8
xor ecx, ecx
mov dword [ebx + 0x38], ecx
xor eax, eax
mov dword [ebx + 0xc77], eax
test edi, edi
jne 0x42ee58
cmp dword [ebx + 0x1a5], 9
jne 0x42ed53
push 0xa0
lea edx, [ebp - 0x29c]
push edx
push 0x41f
push dword [ebx + 0x3c]
call sub.USER32.dll_LoadStringA
cmp dword [ebx + 0xc73], 0
je 0x42ece1
push edi
lea edi, [ebp - 0x38]
mov eax, edi
mov esi, 0x4b7299
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
pop edi
jmp 0x42ecf1
push edi
lea edi, [ebp - 0x38]
mov eax, edi
mov esi, 0x4b729f
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop edi
cmp dword [ebx + 0x195], 0
setne dl
and edx, 1
push edx
lea ecx, [ebx + 0x3ad]
push ecx
lea eax, [ebx + 0x9ad]
push eax
lea edx, [ebp - 0x2d]
push edx
call fcn.0040559f
add esp, 0x10
push eax
push ebx
call fcn.0042fdeb
add esp, 8
push eax
lea ecx, [ebp - 0x38]
push ecx
lea eax, [ebp - 0x29c]
push eax
lea edx, [ebp - 0x49c]
push edx
call fcn.004a00a0
add esp, 0x10
lea ecx, [ebp - 0x49c]
push ecx
push ebx
call fcn.0042d216
add esp, 8
jmp 0x42ee58
cmp dword [ebx + 0x1a5], 8
jne 0x42ee2f
xor esi, esi
lea eax, [ebp - 0x4c0]
push eax
lea edx, [ebx + 0x9ad]
push edx
call fcn.004a1ca8
add esp, 8
test eax, eax
jne 0x42ed82
mov esi, dword [ebp - 0x4ae]
test esi, esi
jg 0x42ed88
xor esi, esi
push 0xa0
lea eax, [ebp - 0x29c]
push eax
push 0x407
push dword [ebx + 0x3c]
call sub.USER32.dll_LoadStringA
cmp dword [ebx + 0xc73], 0
je 0x42edbd
push esi
push edi
mov esi, 0x4b7299
lea edi, [ebp - 0x44]
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
pop edi
pop esi
jmp 0x42edcf
push esi
push edi
mov esi, 0x4b729f
lea edi, [ebp - 0x44]
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop edi
pop esi
push esi
lea ecx, [ebx + 0x3ad]
cmp dword [ebx + 0x195], 0
setne dl
and edx, 1
lea eax, [ebx + 0x9ad]
push edx
push ecx
push eax
lea edx, [ebp - 0x2d]
push edx
call fcn.0040559f
add esp, 0x10
push eax
push ebx
call fcn.0042fdeb
add esp, 8
push eax
lea ecx, [ebp - 0x44]
push ecx
lea eax, [ebp - 0x29c]
push eax
lea edx, [ebp - 0x49c]
push edx
call fcn.004a00a0
add esp, 0x14
lea ecx, [ebp - 0x49c]
push ecx
push ebx
call fcn.0042d216
add esp, 8
jmp 0x42ee58
push 0xa0
lea eax, [ebp - 0x29c]
push eax
push 0x411
push dword [ebx + 0x3c]
call sub.USER32.dll_LoadStringA
lea edx, [ebp - 0x29c]
push edx
push ebx
call fcn.0042d216
add esp, 8
push edi
mov esi, 0x4b6909
lea edi, [ebp - 0x4d4]
mov ecx, 5
rep movsd dword es:[edi], dword [esi]
pop edi
mov eax, dword [0x4b6440]
mov dword [ebp - 0x4cc], eax
mov dword [ebp - 0x4c8], eax
mov eax, dword [ebx + 0x34]
cmp dword [0x4c0168], 0
jne 0x42ee9d
push 1
lea edx, [ebp - 0x4d4]
push edx
push eax
call fcn.00459715
add esp, 0xc
jmp 0x42eeaf
push 1
lea ecx, [ebp - 0x4d4]
push ecx
push eax
call fcn.0045c2d7
add esp, 0xc
xor eax, eax
xor edx, edx
mov dword [ebx + 0x90], eax
mov dword [ebx + 0x9c], edx
test edi, edi
jne 0x42f1d6
mov esi, dword [ebx + 0x34]
cmp dword [0x4b6444], 0
jl 0x42ef63
mov eax, dword [0x4b6444]
mov dword [ebp - 0x48], eax
mov edx, dword [ebp - 0x48]
mov dword [ebp - 0x4c], edx
cmp dword [esi + 0xc], 0xffffffff
jne 0x42eef2
mov ecx, 9
jmp 0x42ef63
mov eax, dword [esi + 0xc]
cmp dword [0x4c0168], 0
mov dword [ebp - 0x54], eax
jne 0x42ef1b
push 4
lea edx, [ebp - 0x4c]
push edx
push 0x100
push 0xffff
push dword [ebp - 0x54]
call sub.WSOCK32.dll_setsockopt
jmp 0x42ef34
push 4
lea ecx, [ebp - 0x4c]
push ecx
push 0x100
push 0xffff
push dword [ebp - 0x54]
push esi
call fcn.0045a663
mov dword [ebp - 0x50], eax
cmp dword [ebp - 0x50], 0
jne 0x42ef41
xor ecx, ecx
jmp 0x42ef63
cmp dword [0x4c0168], 0
jne 0x42ef51
call sub.WSOCK32.dll_WSAGetLastError
jmp 0x42ef57
push esi
call fcn.0045adc4
push eax
push esi
call fcn.0045861f
add esp, 8
mov ecx, eax
cmp dword [0x4b6448], 0
jl 0x42eff4
mov eax, dword [0x4b6448]
mov dword [ebp - 0x58], eax
mov edx, dword [ebp - 0x58]
mov dword [ebp - 0x5c], edx
cmp dword [esi + 0xc], 0xffffffff
jne 0x42ef8b
mov eax, 9
jmp 0x42eff4
mov edx, dword [esi + 0xc]
cmp dword [0x4c0168], 0
mov dword [ebp - 0x64], edx
jne 0x42efb1
push 4
lea ecx, [ebp - 0x5c]
push ecx
push 8
push 0xffff
push dword [ebp - 0x64]
call sub.WSOCK32.dll_setsockopt
jmp 0x42efc7
push 4
lea eax, [ebp - 0x5c]
push eax
push 8
push 0xffff
push dword [ebp - 0x64]
push esi
call fcn.0045a663
mov dword [ebp - 0x60], eax
cmp dword [ebp - 0x60], 0
jne 0x42efd4
xor eax, eax
jmp 0x42eff4
cmp dword [0x4c0168], 0
jne 0x42efe4
call sub.WSOCK32.dll_WSAGetLastError
jmp 0x42efea
push esi
call fcn.0045adc4
push eax
push esi
call fcn.0045861f
add esp, 8
cmp dword [0x4b644c], 0
jl 0x42f07c
mov edx, dword [0x4b644c]
mov dword [ebp - 0x68], edx
mov ecx, dword [ebp - 0x68]
mov dword [ebp - 0x6c], ecx
cmp dword [esi + 0xc], 0xffffffff
jne 0x42f019
mov eax, 9
jmp 0x42f07c
mov edx, dword [esi + 0xc]
cmp dword [0x4c0168], 0
mov dword [ebp - 0x74], edx
jne 0x42f03c
push 4
lea ecx, [ebp - 0x6c]
push ecx
push 1
push 6
push dword [ebp - 0x74]
call sub.WSOCK32.dll_setsockopt
jmp 0x42f04f
push 4
lea eax, [ebp - 0x6c]
push eax
push 1
push 6
push dword [ebp - 0x74]
push esi
call fcn.0045a663
mov dword [ebp - 0x70], eax
cmp dword [ebp - 0x70], 0
jne 0x42f05c
xor eax, eax
jmp 0x42f07c
cmp dword [0x4c0168], 0
jne 0x42f06c
call sub.WSOCK32.dll_WSAGetLastError
jmp 0x42f072
push esi
call fcn.0045adc4
push eax
push esi
call fcn.0045861f
add esp, 8
cmp dword [0x4b6450], 0
jl 0x42f11d
mov edx, dword [0x4b6450]
mov dword [ebp - 0x78], edx
mov ecx, dword [ebp - 0x78]
mov dword [ebp - 0x7c], ecx
cmp dword [esi + 0xc], 0xffffffff
jne 0x42f0a5
mov eax, 9
jmp 0x42f11d
mov edx, dword [esi + 0xc]
cmp dword [0x4c0168], 0
mov dword [ebp - 0x84], edx
jne 0x42f0d4
push 4
lea ecx, [ebp - 0x78]
push ecx
push 0x1001
push 0xffff
push dword [ebp - 0x84]
call sub.WSOCK32.dll_setsockopt
jmp 0x42f0f0
push 4
lea eax, [ebp - 0x78]
push eax
push 0x1001
push 0xffff
push dword [ebp - 0x84]
push esi
call fcn.0045a663
mov dword [ebp - 0x80], eax
cmp dword [ebp - 0x80], 0
jne 0x42f0fd
xor eax, eax
jmp 0x42f11d
cmp dword [0x4c0168], 0
jne 0x42f10d
call sub.WSOCK32.dll_WSAGetLastError
jmp 0x42f113
push esi
call fcn.0045adc4
push eax
push esi
call fcn.0045861f
add esp, 8
cmp dword [0x4b6454], 0
jl 0x42f1d6
mov edx, dword [0x4b6454]
mov dword [ebp - 0x88], edx
mov ecx, dword [ebp - 0x88]
mov dword [ebp - 0x8c], ecx
cmp dword [esi + 0xc], 0xffffffff
jne 0x42f152
mov eax, 9
jmp 0x42f1d6
mov edx, dword [esi + 0xc]
cmp dword [0x4c0168], 0
mov dword [ebp - 0x94], edx
jne 0x42f184
push 4
lea ecx, [ebp - 0x88]
push ecx
push 0x1002
push 0xffff
push dword [ebp - 0x94]
call sub.WSOCK32.dll_setsockopt
jmp 0x42f1a3
push 4
lea eax, [ebp - 0x88]
push eax
push 0x1002
push 0xffff
push dword [ebp - 0x94]
push esi
call fcn.0045a663
mov dword [ebp - 0x90], eax
cmp dword [ebp - 0x90], 0
jne 0x42f1b6
xor eax, eax
jmp 0x42f1d6
cmp dword [0x4c0168], 0
jne 0x42f1c6
call sub.WSOCK32.dll_WSAGetLastError
jmp 0x42f1cc
push esi
call fcn.0045adc4
push eax
push esi
call fcn.0045861f
add esp, 8
cmp dword [ebx + 0x1a5], 8
jne 0x42f220
test edi, edi
je 0x42f206
push 0
push 0x409
push 1
push 1
push ebx
call fcn.0042e3ca
add esp, 0x14
mov edx, dword [ebp - 0x28]
mov dword fs:[0], edx
jmp 0x42f335
mov dword [ebx + 0x1a5], 5
push 0
push ebx
call fcn.0042f5a6
add esp, 8
jmp 0x42f32b
cmp dword [ebx + 0x1a5], 9
jne 0x42f2bf
test edi, edi
jne 0x42f299
mov dword [ebx + 0x1a5], 6
mov edi, dword [ebx + 0xa0]
mov eax, dword [ebx + 0x84]
mov dword [ebp - 0x98], eax
lea esi, [ebx + 0x9c]
mov edx, dword [ebx + 0x34]
cmp dword [0x4c0168], 0
mov dword [ebp - 0x9c], edx
jne 0x42f27f
push 0
push esi
push edi
push dword [ebp - 0x98]
push dword [ebp - 0x9c]
call fcn.00456e27
add esp, 0x14
jmp 0x42f297
push 0
push esi
push edi
push dword [ebp - 0x98]
push dword [ebp - 0x9c]
call fcn.0045bf06
add esp, 0x14
mov edi, eax
test edi, edi
je 0x42f32b
push 0
push 0x421
push 1
push ebx
call fcn.0042dada
add esp, 0x10
mov ecx, dword [ebp - 0x28]
mov dword fs:[0], ecx
jmp 0x42f335
cmp dword [ebx + 0x1a5], 0xa
jne 0x42f32b
test edi, edi
je 0x42f2eb
push 0
push 0x40c
push 0
push 1
push ebx
call fcn.0042e3ca
add esp, 0x14
mov eax, dword [ebp - 0x28]
mov dword fs:[0], eax
jmp 0x42f335
mov dword [ebx + 0x1a5], 7
mov ebx, dword [ebx + 0x34]
cmp dword [0x4c0168], 0
jne 0x42f311
push 0x1f4
push ebx
call fcn.00456f7c
add esp, 8
jmp 0x42f31f
push 0x1f4
push ebx
call fcn.0045bf7a
add esp, 8
mov edx, dword [ebp - 0x28]
mov dword fs:[0], edx
jmp 0x42f335
mov ecx, dword [ebp - 0x28]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret