Function at 0x417be0
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
cmp dword [ebx], 0
push esi
push edi
mov edi, eax
mov esi, ecx
jne 0x417e3a
push 0x2040
push 0
push ebx
call sub.MSVCR80.dll_memset
mov eax, dword [ebp + 0x28]
mov dword [ebx + 4], eax
or eax, 0xffffffff
add esp, 0xc
test esi, esi
mov dword [ebx + 0x2034], eax
mov dword [ebx + 0x2038], eax
je 0x417c32
push 4
push str.Management
lea ecx, [ebx + 0x1c]
push esi
push ecx
call fcn.0041af00
add esp, 0x10
test edi, edi
je 0x417cc5
push 0x10
call fcn.00408960
add esp, 4
test eax, eax
je 0x417c58
push edi
push str.cannot_get_UID_for_user__s____platform_lacks_getpwname___or_setuid___system_calls
push 0x10
call fcn.00408640
add esp, 0xc
cmp dword [0x5426d0], 3
mov dword [ebx + 0x2034], 0xffffffff
jb 0x417c95
push 0x28000003
call fcn.00408960
add esp, 4
test eax, eax
je 0x417c95
mov edx, dword [ebx + 0x2034]
push edx
push str.MANAGEMENT:_client_uid_d
push 0x28000003
call fcn.00408640
add esp, 0xc
cmp dword [ebx + 0x2034], 0
jge 0x417cc5
push 0x10
call fcn.00408960
add esp, 4
test eax, eax
je 0x417cc5
push 0x742
push str..manage.c
push str.Assertion_failed_at__s:_d
push 0x10
call fcn.00408640
add esp, 0x10
mov esi, dword [ebp + 0x10]
test esi, esi
je 0x417d5b
push 0x10
call fcn.00408960
add esp, 4
test eax, eax
je 0x417cee
push esi
push str.cannot_get_GID_for_group__s____platform_lacks_getgrnam___or_setgid___system_calls
push 0x10
call fcn.00408640
add esp, 0xc
cmp dword [0x5426d0], 3
mov dword [ebx + 0x2038], 0xffffffff
jb 0x417d2b
push 0x28000003
call fcn.00408960
add esp, 4
test eax, eax
je 0x417d2b
mov eax, dword [ebx + 0x2038]
push eax
push str.MANAGEMENT:_client_gid_d
push 0x28000003
call fcn.00408640
add esp, 0xc
cmp dword [ebx + 0x2038], 0
jge 0x417d5b
push 0x10
call fcn.00408960
add esp, 4
test eax, eax
je 0x417d5b
push 0x74a
push str..manage.c
push str.Assertion_failed_at__s:_d
push 0x10
call fcn.00408640
add esp, 0x10
mov eax, dword [ebp + 0x20]
test eax, eax
je 0x417d98
lea edx, [eax + 1]
mov cl, byte [eax]
add eax, 1
test cl, cl
jne 0x417d65
sub eax, edx
lea edi, [eax + 1]
push edi
call dword [sym.imp.MSVCR80.dll_malloc]
mov esi, eax
add esp, 4
test esi, esi
jne 0x417d88
jmp fcn.00408a80
mov ecx, dword [ebp + 0x20]
push edi
push ecx
push esi
call sub.MSVCR80.dll_memcpy
add esp, 0xc
jmp 0x417d9a
xor esi, esi
mov edx, dword [ebp + 0xc]
push edx
mov dword [ebx + 0x2030], esi
mov word [ebx + 8], 2
mov dword [ebx + 0xc], 0
call dword [sym.imp.WS2_32.dll_htons]
mov word [ebx + 0xa], ax
mov eax, dword [ebp + 8]
mov edi, str.tunnel
mov esi, eax
mov ecx, 7
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x417ddf
test byte [ebp + 0x28], 0x20
jne 0x417ddf
mov dword [ebx + 0x18], 1
jmp 0x417df3
push 0
push 0
push 0
push eax
push 0x23
call fcn.0043f2f0
add esp, 0x14
mov dword [ebx + 0xc], eax
mov eax, dword [ebp + 0x14]
mov ecx, dword [ebp + 0x18]
mov edx, dword [ebp + 0x1c]
mov dword [ebx + 0x2024], eax
mov eax, dword [ebp + 0x24]
cmp eax, 3
mov dword [ebx + 0x2028], ecx
mov dword [ebx + 0x202c], edx
jne 0x417e29
or dword [ebx + 0x203c], 2
mov dword [ebx], 1
pop edi
pop esi
mov esp, ebp
pop ebp
ret
cmp eax, 4
jne 0x417e34
or dword [ebx + 0x203c], eax
mov dword [ebx], 1
pop edi
pop esi
mov esp, ebp
pop ebp
ret