Function at 0x427bf0
Capabilities:
Set socket configuration

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc4c
mov eax, dword [0x481a58]
xor eax, ebp
mov dword [ebp - 8], eax
mov dword [ebp - 0xc14], 0xffffffff
call fcn.00410c50
mov dword [ebp - 0xc4c], eax
cmp dword [ebp - 0xc4c], 1
je 0x427c2c
cmp dword [ebp - 0xc4c], 2
je 0x427c5f
jmp 0x427c90
push 0x475824
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x87c]
lea edx, [ecx*4 + 0x4886f0]
push edx
lea eax, [ebp - 0x808]
push eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx]
push edx
call fcn.0044d800
add esp, 0x10
mov dword [ebp - 0xc48], eax
jmp 0x427c90
push str.EPSV
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x87c]
lea edx, [ecx*4 + 0x4886f0]
push edx
lea eax, [ebp - 0x808]
push eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx]
push edx
call fcn.0044d800
add esp, 0x10
mov dword [ebp - 0xc48], eax
mov eax, dword [ebp - 0xc48]
cdq
mov ecx, 0x64
idiv ecx
cmp eax, 2
jne 0x42801c
push 0x27
lea edx, [ebp - 0xc44]
push edx
lea eax, [ebp - 0xc3c]
push eax
lea ecx, [ebp - 0x808]
push ecx
mov edx, dword [ebp + 8]
mov eax, dword [edx]
push eax
call fcn.0042a830
add esp, 0x14
cmp eax, 1
jne 0x427ff4
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x87c]
lea eax, [edx*4 + 0x4886f0]
push eax
push 0x475b84
mov ecx, dword [ebp - 0xc44]
push ecx
lea edx, [ebp - 0xc3c]
push edx
call fcn.0040ef50
add esp, 0x10
mov dword [ebp - 0xc14], eax
cmp dword [ebp - 0xc14], 0xffffffff
je 0x427fdb
mov dword [ebp - 0xc40], 1
push 4
lea eax, [ebp - 0xc40]
push eax
push 1
push 6
mov ecx, dword [ebp - 0xc14]
push ecx
call dword [sym.imp.WS2_32.dll_setsockopt]
cmp eax, 0xffffffff
jne 0x427d51
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
push eax
push str.setsockopt
call fcn.0044e210
add esp, 8
lea edx, [ebp - 4]
push edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x844]
push ecx
mov edx, dword [eax + 0x840]
push edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x860]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.00429c20
add esp, 0x14
cmp dword [ebp - 4], 0
jne 0x427e76
call fcn.0040d5c0
cmp eax, 8
jne 0x427e52
call fcn.0040dd40
test eax, eax
jne 0x427e52
mov eax, dword [ebp + 8]
cmp dword [eax + 0x830], 0x41
je 0x427e52
mov ecx, dword [ebp + 8]
cmp dword [ecx + 0x868], 4
jne 0x427e06
mov edx, dword [ebp + 8]
cmp dword [edx + 0x86c], 0x1c
jne 0x427e06
mov eax, dword [ebp + 8]
cmp dword [eax + 0x870], 0x3d2
jne 0x427e06
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x864]
push edx
mov eax, dword [ebp + 8]
add eax, 0x2c
push eax
mov ecx, dword [ebp + 8]
add ecx, 4
push ecx
push str._s_s__d
lea edx, [ebp - 0x808]
push edx
call fcn.0045b942
add esp, 0x14
jmp 0x427e50
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x870]
push ecx
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x86c]
push eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x868]
push edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x864]
push ecx
mov edx, dword [ebp + 8]
add edx, 0x2c
push edx
mov eax, dword [ebp + 8]
add eax, 4
push eax
push str._s_s__d__d__d__d
lea ecx, [ebp - 0x808]
push ecx
call fcn.0045b942
add esp, 0x20
jmp 0x427e74
mov edx, dword [ebp + 8]
add edx, 0x2c
push edx
mov eax, dword [ebp + 8]
add eax, 4
push eax
push str._s_s
lea ecx, [ebp - 0x808]
push ecx
call fcn.0045b942
add esp, 0x10
jmp 0x427e96
mov edx, dword [ebp + 8]
add edx, 0x2c
push edx
push str.APPE
push str._s_s
lea eax, [ebp - 0x808]
push eax
call fcn.0045b942
add esp, 0x10
lea ecx, [ebp - 0x808]
push ecx
push 0x47484c
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x87c]
lea ecx, [eax*4 + 0x4886f0]
push ecx
lea edx, [ebp - 0xc10]
push edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
push ecx
call fcn.0044d800
add esp, 0x14
mov dword [ebp - 0xc48], eax
mov eax, dword [ebp - 0xc48]
cdq
mov ecx, 0x64
idiv ecx
cmp eax, 1
jne 0x427f9e
mov edx, dword [ebp + 8]
cmp dword [edx + 0x860], 4
jne 0x427efe
mov eax, dword [ebp + 8]
mov dword [eax + 0x850], 0xffffffff
mov ecx, dword [0x486254]
push ecx
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
mov edx, dword [ebp + 8]
mov eax, dword [edx]
push eax
call fcn.00454d00
add esp, 4
test eax, eax
je 0x427f6e
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x87c]
lea eax, [edx*4 + 0x4886f0]
push eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx]
push edx
mov eax, dword [ebp - 0xc14]
push eax
call fcn.00454a30
add esp, 0xc
test eax, eax
je 0x427f62
mov ecx, dword [ebp - 0xc14]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.00428040
add esp, 8
mov dword [ebp - 0xc48], eax
jmp 0x427f6c
mov dword [ebp - 0xc48], 0x1f4
jmp 0x427f87
mov eax, dword [ebp - 0xc14]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.00428040
add esp, 8
mov dword [ebp - 0xc48], eax
mov edx, dword [ebp - 0xc14]
push edx
call fcn.0044d330
add esp, 4
mov dword [ebp - 0xc14], eax
jmp 0x427fd9
lea eax, [ebp - 0xc10]
push eax
call fcn.0042aea0
add esp, 4
push 0x475744
call fcn.00456c30
add esp, 4
mov ecx, dword [ebp - 0xc14]
push ecx
call fcn.0044d330
add esp, 4
mov dword [ebp - 0xc14], eax
mov dword [ebp - 0xc48], 0x1f4
jmp 0x427ff2
push 0x475b5c
call fcn.0042aea0
add esp, 4
mov dword [ebp - 0xc48], 0x1f4
jmp 0x42801a
lea edx, [ebp - 0x808]
push edx
call fcn.0042aea0
add esp, 4
push 0x4757d4
call fcn.00456c30
add esp, 4
mov dword [ebp - 0xc48], 0x1f4
jmp 0x42802b
lea eax, [ebp - 0x808]
push eax
call fcn.0042aea0
add esp, 4
mov eax, dword [ebp - 0xc48]
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.0045a968
mov esp, ebp
pop ebp
ret