Function at 0x42d850
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ecx
cmp dword [0x5426d0], 1
jb 0x42c8ae
push 0x1001
call fcn.00408960
add esp, 4
test eax, eax
je 0x42c856
push str.OpenVPN_2.1.1_Win32_MSVC__SSL___LZO2___PKCS11__built_on_Apr_20_2010
push 0x5103a4
push 0x1001
call fcn.00408640
add esp, 0xc
cmp dword [0x5426d0], 1
jb 0x42c8ae
push 0x1001
call fcn.00408960
add esp, 4
test eax, eax
je 0x42c882
push str.Originally_developed_by_James_Yonan
push 0x1001
call fcn.00408640
add esp, 8
cmp dword [0x5426d0], 1
jb 0x42c8ae
push 0x1001
call fcn.00408960
add esp, 4
test eax, eax
je 0x42c8ae
push str.Copyright__C__2002_2009_OpenVPN_Technologies__Inc.__sales_openvpn.net_
push 0x1001
call fcn.00408640
add esp, 8
push 1
call fcn.00408eb0
int3
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x5a4
mov eax, dword [ebp + 0x20]
mov ecx, eax
shr ecx, 0x17
and ecx, 1
push ebx
mov dword [esp + 0x14], ecx
mov ecx, dword [ebp + 8]
cmp dword [ecx + 0x10], 0
push esi
push edi
mov dword [esp + 0x18], 0
je 0x42d889
mov dword [esp + 0x14], 0x40
jmp 0x42d890
mov edx, dword [ebp + 0x1c]
mov dword [esp + 0x14], edx
cmp dword [ebp + 0x10], 0
jne 0x42d8a4
mov dword [ebp + 0x10], str._CMD_LINE_
mov dword [ebp + 0x14], 1
mov ecx, dword [ebp + 0xc]
mov ebx, dword [ecx]
mov edi, str.help
mov esi, ebx
mov ecx, 5
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42d90a
test al, 1
jne 0x42d8fb
mov eax, dword [ebp + 0x1c]
and eax, 0xf
cmp eax, dword [0x5426d0]
ja 0x4343d2
mov esi, dword [ebp + 0x1c]
push esi
call fcn.00408960
add esp, 4
test eax, eax
je 0x4343d2
push ebx
push str.option__s_cannot_be_used_in_this_context
push esi
call fcn.00408640
add esp, 0xc
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x24]
test eax, eax
je 0x42d905
or dword [eax], 1
jmp 0x42c730
mov edi, str.version
mov esi, ebx
mov ecx, 8
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42d92f
test al, 1
je 0x42d8bf
mov eax, dword [ebp + 0x24]
test eax, eax
je 0x42d92a
or dword [eax], 1
jmp 0x42c820
mov edi, str.config
mov esi, ebx
mov ecx, 7
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42d9a7
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x42d9a7
mov edi, dword [ebp + 0x24]
mov esi, dword [ebp + 0x1c]
push eax
push ebx
mov ecx, edi
mov eax, 0x40000
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov eax, dword [ebp + 8]
cmp dword [eax + 8], 0
jne 0x42d97a
mov edx, dword [ebp + 0xc]
mov ecx, dword [edx + 4]
mov dword [eax + 8], ecx
mov edx, dword [ebp + 0x28]
mov ecx, dword [ebp + 0x20]
push edx
mov edx, dword [ebp + 0x14]
push ecx
mov ecx, dword [ebp + 0x10]
push esi
push edx
mov edx, dword [ebp + 0x18]
push ecx
push edx
push eax
mov eax, dword [ebp + 0xc]
mov edx, dword [eax + 4]
mov ecx, edi
call fcn.0042d030
add esp, 0x1c
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.echo
mov esi, ebx
mov ecx, 5
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
je 0x43426d
mov edi, str.parameter
mov esi, ebx
mov ecx, 0xa
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
je 0x43426d
mov edi, str.management
mov esi, ebx
mov ecx, 0xb
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42dae6
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x42dae6
cmp dword [ecx + 8], edx
je 0x42dae6
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 1
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov ebx, dword [ebp + 0xc]
mov eax, dword [ebx + 8]
mov edi, str.unix
mov esi, eax
mov ecx, 5
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42da6d
mov esi, dword [ebp + 0x1c]
mov eax, esi
and eax, 0xf
cmp eax, dword [0x5426d0]
ja 0x4343d2
push esi
call fcn.00408960
add esp, 4
test eax, eax
je 0x4343d2
push str.MANAGEMENT:_this_platform_does_not_support_unix_domain_sockets
push esi
call fcn.00408640
add esp, 8
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push eax
call dword [sym.imp.MSVCR80.dll_atoi]
lea ecx, [eax - 1]
add esp, 4
cmp ecx, 0xfffe
jbe 0x42dabc
mov esi, dword [ebp + 0x1c]
mov edx, esi
and edx, 0xf
cmp edx, dword [0x5426d0]
ja 0x4343d2
push esi
call fcn.00408960
add esp, 4
test eax, eax
je 0x4343d2
push str.port_number_associated_with___management_directive_is_out_of_range
push esi
call fcn.00408640
add esp, 8
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp + 8]
mov edx, dword [ebx + 4]
mov dword [ecx + 0x254], eax
mov eax, dword [ebx + 0xc]
test eax, eax
mov dword [ecx + 0x250], edx
je 0x4343d2
mov dword [ecx + 0x258], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.management_client_user
mov esi, ebx
mov ecx, 0x17
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42db33
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x42db33
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 1
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 4]
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x26c], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.management_client_group
mov esi, ebx
mov ecx, 0x18
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42db80
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x42db80
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 1
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 4]
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x270], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.management_query_passwords
mov esi, ebx
mov ecx, 0x1b
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42dbc0
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 1
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov eax, dword [ebp + 8]
or dword [eax + 0x274], 2
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.management_hold
mov esi, ebx
mov ecx, 0x10
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42dc00
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 1
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov eax, dword [ebp + 8]
or dword [eax + 0x274], 4
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.management_signal
mov esi, ebx
mov ecx, 0x12
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42dc40
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 1
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov eax, dword [ebp + 8]
or dword [eax + 0x274], 8
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.management_forget_disconnect
mov esi, ebx
mov ecx, 0x1d
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42dc80
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 1
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov eax, dword [ebp + 8]
or dword [eax + 0x274], 0x10
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.management_client
mov esi, ebx
mov ecx, 0x12
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42dccc
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 1
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov ecx, dword [ebp + 0xc]
mov eax, dword [ebp + 8]
mov edx, dword [ecx + 4]
or dword [eax + 0x274], 0x20
mov dword [eax + 0x268], edx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.management_log_cache
mov esi, ebx
mov ecx, 0x15
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42dd63
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x42dd63
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 1
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 4]
push eax
call dword [sym.imp.MSVCR80.dll_atoi]
add esp, 4
cmp eax, 1
jge 0x42dd53
mov ecx, esi
and ecx, 0xf
cmp ecx, dword [0x5426d0]
ja 0x4343d2
push esi
call fcn.00408960
add esp, 4
test eax, eax
je 0x4343d2
push str.__management_log_cache_parameter_is_out_of_range
push esi
call fcn.00408640
add esp, 8
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
mov dword [edx + 0x25c], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.plugin
mov esi, ebx
mov ecx, 7
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42de3a
mov ecx, dword [ebp + 0xc]
add ecx, 4
cmp dword [ecx], edx
mov dword [esp + 0x10], ecx
je 0x42de3a
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 0x1000000
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov eax, dword [ebp + 8]
cmp dword [eax + 0x278], 0
jne 0x42ddc3
mov edi, eax
call fcn.004370f0
mov dword [edi + 0x278], eax
mov eax, edi
mov edi, dword [eax + 0x278]
mov ebx, dword [edi]
cmp ebx, 0x10
jge 0x42ddfc
mov edx, dword [esp + 0x10]
lea ecx, [ebx + 1]
push eax
mov dword [edi], ecx
call fcn.0041b9d0
add esp, 4
mov dword [edi + ebx*8 + 8], eax
cmp dword [eax], 0
je 0x4343d2
mov edx, dword [eax]
mov dword [edi + ebx*8 + 4], edx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, esi
and eax, 0xf
cmp eax, dword [0x5426d0]
ja 0x4343d2
push esi
call fcn.00408960
add esp, 4
test eax, eax
je 0x4343d2
mov ecx, dword [esp + 0x10]
mov edx, dword [ecx]
push edx
push str.plugin_add_failed:__s
push esi
call fcn.00408640
add esp, 0xc
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.mode
mov esi, ebx
mov ecx, 5
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42deff
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x42deff
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 1
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov ebx, dword [ebp + 0xc]
mov eax, dword [ebx + 4]
mov edi, 0x51ad80
mov esi, eax
mov ecx, 4
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42de9e
mov eax, dword [ebp + 8]
mov dword [eax + 0xc], edx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.server
mov esi, eax
mov ecx, 7
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42dec1
mov eax, dword [ebp + 8]
mov dword [eax + 0xc], 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov esi, dword [ebp + 0x1c]
mov ecx, esi
and ecx, 0xf
cmp ecx, dword [0x5426d0]
ja 0x4343d2
push esi
call fcn.00408960
add esp, 4
test eax, eax
je 0x4343d2
mov edx, dword [ebx + 4]
push edx
push str.Bad___mode_parameter:__s
push esi
call fcn.00408640
add esp, 0xc
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, 0x515e9c
mov esi, ebx
mov ecx, 4
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42df4c
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x42df4c
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 1
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 4]
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x94], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.dev_type
mov esi, ebx
mov ecx, 9
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42df99
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x42df99
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 1
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 4]
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x98], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.dev_node
mov esi, ebx
mov ecx, 9
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42dfe6
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x42dfe6
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 1
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 4]
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x9c], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.lladdr
mov esi, ebx
mov ecx, 7
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42e07d
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x42e07d
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 2
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov ebx, dword [ebp + 0xc]
mov edi, dword [ebx + 4]
mov ecx, edi
call fcn.0043f930
test eax, eax
je 0x42e042
mov edx, dword [ebp + 8]
mov dword [edx + 0xa0], edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, esi
and eax, 0xf
cmp eax, dword [0x5426d0]
ja 0x4343d2
push esi
call fcn.00408960
add esp, 4
test eax, eax
je 0x4343d2
mov ecx, dword [ebx + 4]
push ecx
push str.lladdr_parm__s_must_be_a_MAC_address
push esi
call fcn.00408640
add esp, 0xc
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.topology
mov esi, ebx
mov ecx, 9
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42e0d1
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x42e0d1
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 2
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 4]
mov ebx, esi
call fcn.0042c5e0
mov ecx, dword [ebp + 8]
mov dword [ecx + 0xa4], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.tun_ipv6
mov esi, ebx
mov ecx, 9
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42e114
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 2
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov eax, dword [ebp + 8]
mov dword [eax + 0x100], 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.ifconfig
mov esi, ebx
mov ecx, 9
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42e1e9
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x42e1e9
cmp dword [ecx + 8], edx
je 0x42e1e9
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 2
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov ebx, dword [ebp + 8]
mov eax, dword [ebx + 0x248]
mov edi, dword [ebp + 0xc]
mov esi, dword [edi + 4]
push eax
call fcn.0043f900
add esp, 4
test eax, eax
je 0x42e1a7
mov ecx, dword [ebx + 0x248]
mov esi, dword [edi + 8]
push ecx
call fcn.0043f900
add esp, 4
test eax, eax
je 0x42e1a7
mov edx, dword [edi + 4]
mov eax, dword [edi + 8]
mov dword [ebx + 0xa8], edx
mov dword [ebx + 0xac], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov esi, dword [ebp + 0x1c]
mov ecx, esi
and ecx, 0xf
cmp ecx, dword [0x5426d0]
ja 0x4343d2
push esi
call fcn.00408960
add esp, 4
test eax, eax
je 0x4343d2
mov edx, dword [edi + 8]
mov eax, dword [edi + 4]
push edx
push eax
push str.ifconfig_parms__s_and__s_must_be_valid_addresses
push esi
call fcn.00408640
add esp, 0x10
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.ifconfig_noexec
mov esi, ebx
mov ecx, 0x10
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42e22c
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 2
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov eax, dword [ebp + 8]
mov dword [eax + 0xb0], 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.ifconfig_nowarn
mov esi, ebx
mov ecx, 0x10
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42e26f
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 2
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov eax, dword [ebp + 8]
mov dword [eax + 0xb4], 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.local
mov esi, ebx
mov ecx, 6
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42e2b9
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x42e2b9
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 0x8000001
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 4]
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x48], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.remote_random
mov esi, ebx
mov ecx, 0xe
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42e2fc
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 1
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov eax, dword [ebp + 8]
mov dword [eax + 0x8c], 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.connection
mov esi, ebx
mov ecx, 0xb
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42e439
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x42e439
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 1
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov eax, dword [ebp + 0xc]
mov esi, dword [eax + 4]
mov edi, str.__INLINE__
mov ecx, 0xb
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x4343d2
cmp dword [eax + 8], edx
je 0x4343d2
lea esi, [esp + 0x40]
call fcn.00425450
mov ebx, dword [ebp + 8]
mov eax, dword [ebp + 0xc]
lea esi, [ebx + 0x34]
mov ecx, 0x13
lea edi, [esp + 0x74]
rep movsd dword es:[edi], dword [esi]
mov esi, dword [ebp + 0x1c]
mov ecx, dword [eax + 8]
push 0x8000000
push esi
push ecx
mov ecx, dword [ebp + 0x24]
lea edx, [esp + 0x4c]
push edx
mov edx, dword [ebp + 0x28]
push str._CONNECTION_OPTIONS_
call fcn.0042d300
add esp, 0x14
cmp dword [esp + 0x8c], 0
jne 0x42e3e1
mov eax, esi
and eax, 0xf
cmp eax, dword [0x5426d0]
ja 0x4343d2
push esi
call fcn.00408960
add esp, 4
test eax, eax
je 0x4343d2
push str.Each_connection_block_must_contain_exactly_one_remote_directive
push esi
call fcn.00408640
add esp, 8
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push esi
mov esi, ebx
call fcn.004297d0
add esp, 4
test eax, eax
je 0x4343d2
mov edi, eax
mov ecx, 0x13
lea esi, [esp + 0x74]
rep movsd dword es:[edi], dword [esi]
mov eax, dword [esp + 0x40]
test eax, eax
je 0x42e429
cmp dword [eax], 0
je 0x42e417
mov edi, edi
mov eax, dword [eax]
cmp dword [eax], 0
jne 0x42e410
mov ecx, dword [ebx]
mov dword [eax], ecx
mov edx, dword [esp + 0x40]
mov dword [ebx], edx
mov dword [esp + 0x40], 0
lea ecx, [esp + 0x40]
call fcn.00425610
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.remote
mov esi, ebx
mov ecx, 7
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42e59c
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x42e59c
mov edi, dword [ebp + 0x1c]
or ecx, 0xffffffff
push eax
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x28], ecx
mov ecx, dword [ebp + 0x24]
push ebx
mov esi, edi
mov eax, 0x8000001
mov dword [esp + 0x28], edx
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov ebx, dword [ebp + 0xc]
mov eax, dword [ebx + 8]
test eax, eax
mov edx, dword [ebx + 4]
mov dword [esp + 0x20], edx
je 0x42e545
push eax
call dword [sym.imp.MSVCR80.dll_atoi]
lea ecx, [eax - 1]
add esp, 4
cmp ecx, 0xfffe
jbe 0x42e4ee
mov edx, edi
and edx, 0xf
cmp edx, dword [0x5426d0]
ja 0x4343d2
push edi
call fcn.00408960
add esp, 4
test eax, eax
je 0x4343d2
mov eax, dword [ebx + 4]
push eax
push str.remote:_port_number_associated_with_host__s_is_out_of_range
push edi
call fcn.00408640
add esp, 0xc
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov esi, dword [ebx + 0xc]
test esi, esi
mov dword [esp + 0x24], eax
je 0x42e545
call fcn.00442290
test eax, eax
jge 0x42e541
mov ecx, edi
and ecx, 0xf
cmp ecx, dword [0x5426d0]
ja 0x4343d2
push edi
call fcn.00408960
add esp, 4
test eax, eax
je 0x4343d2
mov edx, dword [ebx + 0xc]
mov eax, dword [ebx + 4]
push edx
push eax
push str.remote:_bad_protocol_associated_with_host__s:__s
push edi
call fcn.00408640
add esp, 0x10
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov dword [esp + 0x28], eax
mov eax, dword [ebp + 0x20]
test al, 1
je 0x42e57b
mov esi, dword [ebp + 8]
push edi
call fcn.00429880
add esp, 4
test eax, eax
je 0x4343d2
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x24]
mov dword [eax], ecx
mov ecx, dword [esp + 0x28]
mov dword [eax + 4], edx
mov dword [eax + 8], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
test eax, 0x8000000
je 0x4343d2
mov edx, dword [ebp + 8]
add edx, 0x34
lea ecx, [esp + 0x20]
call fcn.00429930
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.resolv_retry
mov esi, ebx
mov ecx, 0xd
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42e614
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x42e614
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 1
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 4]
mov edi, str.infinite
mov esi, eax
mov ecx, 9
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42e5ff
mov eax, dword [ebp + 8]
mov dword [eax + 0x124], 0x3b9aca00
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.0042c8f0
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x124], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.connect_retry
mov esi, ebx
mov ecx, 0xe
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42e66a
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x42e66a
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 0x8000001
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 4]
call fcn.0042c8f0
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x5c], eax
mov dword [ecx + 0x60], 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.connect_timeout
mov esi, ebx
mov ecx, 0x10
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42e6c0
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x42e6c0
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 0x8000001
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 4]
call fcn.0042c8f0
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x68], eax
mov dword [ecx + 0x6c], 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.connect_retry_max
mov esi, ebx
mov ecx, 0x12
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42e70f
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x42e70f
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 0x8000001
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 4]
call fcn.0042c8f0
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x64], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.ipchange
mov esi, ebx
mov ecx, 9
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42e77b
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x42e77b
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov ebx, dword [ebp + 0x1c]
mov esi, ebx
mov eax, 0x10
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov esi, dword [ebp + 0xc]
mov eax, 2
call fcn.0042d7e0
test eax, eax
je 0x4343d2
mov edi, dword [ebp + 8]
mov edx, esi
mov eax, dword [edx + 4]
push eax
call fcn.004258d0
add esp, 4
mov dword [edi + 0x90], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.float
mov esi, ebx
mov ecx, 6
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42e7bb
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 0x8000001
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov eax, dword [ebp + 8]
mov dword [eax + 0x50], 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.gremlin
mov esi, ebx
mov ecx, 8
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42e80d
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x42e80d
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 1
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 4]
call fcn.0042c8f0
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x1f8], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.chroot
mov esi, ebx
mov ecx, 7
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42e85a
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x42e85a
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 1
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 4]
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x1b8], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, 0x51b778
mov esi, ebx
mov ecx, 3
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42e8ea
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x42e8ea
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 1
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov esi, dword [ebp + 0xc]
mov eax, dword [esi + 4]
push eax
call dword [sym.imp.MSVCR80.dll__chdir]
add esp, 4
test eax, eax
je 0x42e8d7
push 0x110
call fcn.00408960
add esp, 4
test eax, eax
je 0x4343d2
mov edx, dword [esi + 4]
push edx
push str.cd_to__s_failed
push 0x110
call fcn.00408640
add esp, 0xc
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [esi + 4]
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x1bc], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.writepid
mov esi, ebx
mov ecx, 9
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42e937
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x42e937
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 1
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 4]
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x1c0], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, 0x513538
mov esi, ebx
mov ecx, 3
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42e99a
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x42e99a
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov ebx, dword [ebp + 0x1c]
mov esi, ebx
mov eax, 0x10
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov esi, dword [ebp + 0xc]
mov eax, 2
call fcn.0042d7e0
test eax, eax
je 0x4343d2
mov ecx, dword [ebp + 8]
mov edx, esi
mov eax, dword [edx + 4]
mov dword [ecx + 0x1c4], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.down
mov esi, ebx
mov ecx, 5
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42e9fd
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x42e9fd
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov ebx, dword [ebp + 0x1c]
mov esi, ebx
mov eax, 0x10
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov esi, dword [ebp + 0xc]
mov eax, 2
call fcn.0042d7e0
test eax, eax
je 0x4343d2
mov ecx, dword [ebp + 8]
mov edx, esi
mov eax, dword [edx + 4]
mov dword [ecx + 0x1c8], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.down_pre
mov esi, ebx
mov ecx, 9
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42ea40
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 1
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov eax, dword [ebp + 8]
mov dword [eax + 0x1cc], 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.up_delay
mov esi, ebx
mov ecx, 9
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42ea83
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 1
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov eax, dword [ebp + 8]
mov dword [eax + 0x1d0], 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.up_restart
mov esi, ebx
mov ecx, 0xb
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42eac6
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 1
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov eax, dword [ebp + 8]
mov dword [eax + 0x1d4], 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.syslog
mov esi, ebx
mov ecx, 7
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42eb01
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 1
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
call fcn.00408ab0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.daemon
mov esi, ebx
mov ecx, 7
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42eb8e
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 1
xor edi, edi
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov eax, dword [ebp + 8]
cmp dword [eax + 0x1d8], edi
jne 0x42eb4d
mov edi, 1
mov dword [eax + 0x1d8], edi
call fcn.00408ab0
mov esi, dword [ebp + 0xc]
cmp dword [esi + 4], 0
je 0x4343d2
test edi, edi
jne 0x4343d2
push 0x40
call fcn.00408960
add esp, 4
test eax, eax
je 0x4343d2
mov eax, dword [esi + 4]
push eax
push str.WARNING:_Multiple___daemon_directives_specified__ignoring___daemon__s.__Note_that_initscripts_sometimes_add_their_own___daemon_directive._
push 0x40
call fcn.00408640
add esp, 0xc
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.inetd
mov esi, ebx
mov ecx, 6
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42ece7
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 1
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov eax, dword [ebp + 8]
cmp dword [eax + 0x1e0], 0
jne 0x4343d2
mov dword [esp + 0x10], 0
mov dword [eax + 0x1e0], 0xffffffff
mov ebx, 1
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + ebx*4]
test eax, eax
je 0x42ec59
mov edi, str.wait
mov esi, eax
mov ecx, 5
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42ec1c
mov eax, dword [ebp + 8]
cmp dword [eax + 0x1e0], 0xffffffff
jne 0x42ec8d
mov dword [eax + 0x1e0], 1
jmp 0x42ec59
mov edi, str.nowait
mov esi, eax
mov ecx, 7
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42ec4a
mov eax, dword [ebp + 8]
cmp dword [eax + 0x1e0], 0xffffffff
jne 0x42ecc7
mov dword [eax + 0x1e0], 2
jmp 0x42ec59
cmp dword [esp + 0x10], 0
jne 0x42ecd7
mov dword [esp + 0x10], eax
add ebx, 1
cmp ebx, 2
jle 0x42ebe8
mov eax, dword [ebp + 8]
cmp dword [eax + 0x1e0], 0xffffffff
jne 0x42ec77
mov dword [eax + 0x1e0], 1
mov dword [0x535e34], 0
call fcn.00408ab0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov esi, dword [ebp + 0x1c]
mov eax, esi
and eax, 0xf
cmp eax, dword [0x5426d0]
ja 0x4343d2
push esi
call fcn.00408960
add esp, 4
test eax, eax
je 0x4343d2
push str.when___inetd_is_used_with_two_parameters__one_of_them_must_be_wait_or_nowait_and_the_other_must_be_a_daemon_name_to_use_for_system_logging
push esi
call fcn.00408640
add esp, 8
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov esi, dword [ebp + 0x1c]
mov ecx, esi
and ecx, 0xf
cmp ecx, dword [0x5426d0]
jmp 0x42ec9b
mov esi, dword [ebp + 0x1c]
mov edx, esi
and edx, 0xf
cmp edx, dword [0x5426d0]
jmp 0x42ec9b
mov edi, 0x51538c
mov esi, ebx
mov ecx, 4
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42ed3f
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x42ed3f
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 1
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp + 8]
mov ebx, dword [ecx + 4]
xor eax, eax
mov dword [edx + 0x1e4], 1
call fcn.00408ad0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.suppress_timestamps
mov esi, ebx
mov ecx, 0x14
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42ed86
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
mov edi, 1
push ebx
mov eax, edi
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov eax, dword [ebp + 8]
mov dword [eax + 0x1e8], edi
mov dword [0x53c1e4], edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.log_append
mov esi, ebx
mov ecx, 0xb
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42ede1
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x42ede1
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 1
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp + 8]
mov ebx, dword [ecx + 4]
mov eax, 1
mov dword [edx + 0x1e4], 1
call fcn.00408ad0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.mlock
mov esi, ebx
mov ecx, 6
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42ee24
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 1
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov eax, dword [ebp + 8]
mov dword [eax + 0xe0], 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.verb
mov esi, ebx
mov ecx, 5
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42ee76
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x42ee76
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 0x800
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 4]
call fcn.0042c8f0
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x1f0], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.mute
mov esi, ebx
mov ecx, 5
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42eec8
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x42eec8
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 0x800
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 4]
call fcn.0042c8f0
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x1f4], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.errors_to_stderr
mov esi, ebx
mov ecx, 0x11
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42ef0c
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 0x800
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
call dword [sym.imp.MSVCR80.dll___iob_func]
add eax, 0x40
mov dword [0x53c1e8], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.status
mov esi, ebx
mov ecx, 7
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42ef6f
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x42ef6f
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 1
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov eax, dword [ebp + 0xc]
mov edx, dword [eax + 4]
mov eax, dword [eax + 8]
test eax, eax
mov esi, dword [ebp + 8]
mov dword [esi + 0x1fc], edx
je 0x4343d2
call fcn.0042c8f0
mov dword [esi + 0x204], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.status_version
mov esi, ebx
mov ecx, 0xf
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42f009
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x42f009
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 1
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 4]
push eax
call dword [sym.imp.MSVCR80.dll_atoi]
lea ecx, [eax - 1]
add esp, 4
cmp ecx, 2
ja 0x42efd2
mov edx, dword [ebp + 8]
mov dword [edx + 0x200], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, esi
and eax, 0xf
cmp eax, dword [0x5426d0]
ja 0x4343d2
push esi
call fcn.00408960
add esp, 4
test eax, eax
je 0x4343d2
push str.__status_version_must_be_1_to_3
push esi
call fcn.00408640
add esp, 8
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.remap_usr1
mov esi, ebx
mov ecx, 0xb
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42f0d4
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x42f0d4
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 1
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 4]
mov edi, str.SIGHUP
mov esi, eax
mov ecx, 7
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42f074
mov eax, dword [ebp + 8]
mov dword [eax + 0x1dc], 3
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.SIGTERM
mov esi, eax
mov ecx, 8
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42f09a
mov eax, dword [ebp + 8]
mov dword [eax + 0x1dc], 4
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov esi, dword [ebp + 0x1c]
mov ecx, esi
and ecx, 0xf
cmp ecx, dword [0x5426d0]
ja 0x4343d2
push esi
call fcn.00408960
add esp, 4
test eax, eax
je 0x4343d2
push str.__remap_usr1_parm_must_be_SIGHUP_or_SIGTERM
push esi
call fcn.00408640
add esp, 8
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.link_mtu
mov esi, ebx
mov ecx, 9
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
je 0x42f0f8
mov edi, str.udp_mtu
mov esi, ebx
mov ecx, 8
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42f143
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], 0
je 0x42f143
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 0x4000
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 4]
call fcn.0042c8f0
mov ecx, dword [ebp + 8]
mov dword [ecx + 0xc8], eax
mov dword [ecx + 0xd0], 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.tun_mtu
mov esi, ebx
mov ecx, 8
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42f19f
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x42f19f
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 0x4000
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 4]
call fcn.0042c8f0
mov ecx, dword [ebp + 8]
mov dword [ecx + 0xbc], eax
mov dword [ecx + 0xcc], 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.tun_mtu_extra
mov esi, ebx
mov ecx, 0xe
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42f1fb
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x42f1fb
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 0x4000
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 4]
call fcn.0042c8f0
mov ecx, dword [ebp + 8]
mov dword [ecx + 0xc0], eax
mov dword [ecx + 0xc4], 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.mtu_dynamic
mov esi, ebx
mov ecx, 0xc
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42f261
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 1
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov eax, esi
and eax, 0xf
cmp eax, dword [0x5426d0]
ja 0x4343d2
push esi
call fcn.00408960
add esp, 4
test eax, eax
je 0x4343d2
push str.__mtu_dynamic_has_been_replaced_by___fragment
push esi
call fcn.00408640
add esp, 8
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.fragment
mov esi, ebx
mov ecx, 9
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42f2b3
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x42f2b3
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 0x4000
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 4]
call fcn.0042c8f0
mov ecx, dword [ebp + 8]
mov dword [ecx + 0xdc], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.mtu_disc
mov esi, ebx
mov ecx, 9
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42f31b
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x42f31b
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 0x4000
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
push 0x10
call fcn.00408960
add esp, 4
test eax, eax
je 0x42f307
push str.__mtu_disc_is_not_supported_on_this_OS
push 0x10
call fcn.00408640
add esp, 8
mov edx, dword [ebp + 8]
mov dword [edx + 0xd4], 0xffffffff
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.mtu_test
mov esi, ebx
mov ecx, 9
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42f35e
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 1
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov eax, dword [ebp + 8]
mov dword [eax + 0xd8], 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.nice
mov esi, ebx
mov ecx, 5
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42f3b5
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x42f3b5
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 0x8000
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 4]
push eax
call dword [sym.imp.MSVCR80.dll_atoi]
mov ecx, dword [ebp + 8]
add esp, 4
mov dword [ecx + 0x1ec], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.rcvbuf
mov esi, ebx
mov ecx, 7
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42f407
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x42f407
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 0x2000000
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 4]
call fcn.0042c8f0
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x210], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.sndbuf
mov esi, ebx
mov ecx, 7
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42f459
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x42f459
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 0x2000000
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 4]
call fcn.0042c8f0
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x214], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.socket_flags
mov esi, ebx
mov ecx, 0xd
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42f4fc
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 0x4000000
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov ebx, 1
mov eax, dword [ebp + 0xc]
mov esi, dword [eax + ebx*4]
test esi, esi
je 0x4343d2
mov edi, str.TCP_NODELAY
mov ecx, 0xc
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42f4bb
mov eax, dword [ebp + 8]
or dword [eax + 0x218], 2
jmp 0x42f4ed
mov esi, dword [ebp + 0x1c]
mov eax, esi
and eax, 0xf
cmp eax, dword [0x5426d0]
ja 0x42f4ed
push esi
call fcn.00408960
add esp, 4
test eax, eax
je 0x42f4ed
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx + ebx*4]
push edx
push str.unknown_socket_flag:__s
push esi
call fcn.00408640
add esp, 0xc
add ebx, 1
cmp ebx, 0x10
jl 0x42f491
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.txqueuelen
mov esi, ebx
mov ecx, 0xb
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42f56a
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x42f56a
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 1
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov edx, esi
and edx, 0xf
cmp edx, dword [0x5426d0]
ja 0x4343d2
push esi
call fcn.00408960
add esp, 4
test eax, eax
je 0x4343d2
push str.__txqueuelen_not_supported_on_this_OS
push esi
call fcn.00408640
add esp, 8
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.shaper
mov esi, ebx
mov ecx, 7
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42f612
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x42f612
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 0x40
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 4]
push eax
call dword [sym.imp.MSVCR80.dll_atoi]
lea ecx, [eax - 0x64]
add esp, 4
cmp ecx, 0x5f5e09c
ja 0x42f5d4
mov edx, dword [ebp + 8]
mov dword [edx + 0xb8], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, esi
and eax, 0xf
cmp eax, dword [0x5426d0]
ja 0x4343d2
push esi
call fcn.00408960
add esp, 4
test eax, eax
je 0x4343d2
push 0x5f5e100
push 0x64
push str.Bad_shaper_value__must_be_between__d_and__d
push esi
call fcn.00408640
add esp, 0x10
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.port
mov esi, ebx
mov ecx, 5
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42f6be
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x42f6be
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 0x8000001
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov edi, dword [ebp + 0xc]
mov edx, dword [edi + 4]
push edx
call dword [sym.imp.MSVCR80.dll_atoi]
lea ecx, [eax - 1]
add esp, 4
cmp ecx, 0xfffe
jbe 0x42f6a7
mov edx, esi
and edx, 0xf
cmp edx, dword [0x5426d0]
ja 0x4343d2
push esi
call fcn.00408960
add esp, 4
test eax, eax
je 0x4343d2
mov eax, dword [edi + 4]
push eax
push str.Bad_port_number:__s
push esi
call fcn.00408640
add esp, 0xc
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x44], 1
mov dword [ecx + 0x40], eax
mov dword [ecx + 0x38], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.lport
mov esi, ebx
mov ecx, 6
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42f76b
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x42f76b
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 0x8000001
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov edi, dword [ebp + 0xc]
mov edx, dword [edi + 4]
push edx
call dword [sym.imp.MSVCR80.dll_atoi]
lea ecx, [eax - 1]
add esp, 4
cmp ecx, 0xfffe
jbe 0x42f753
mov edx, esi
and edx, 0xf
cmp edx, dword [0x5426d0]
ja 0x4343d2
push esi
call fcn.00408960
add esp, 4
test eax, eax
je 0x4343d2
mov eax, dword [edi + 4]
push eax
push str.Bad_local_port_number:__s
push esi
call fcn.00408640
add esp, 0xc
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp + 8]
mov edx, 1
mov dword [ecx + 0x3c], edx
mov dword [ecx + 0x44], edx
mov dword [ecx + 0x38], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.rport
mov esi, ebx
mov ecx, 6
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42f814
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x42f814
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 0x8000001
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov edi, dword [ebp + 0xc]
mov edx, dword [edi + 4]
push edx
call dword [sym.imp.MSVCR80.dll_atoi]
lea ecx, [eax - 1]
add esp, 4
cmp ecx, 0xfffe
jbe 0x42f800
mov edx, esi
and edx, 0xf
cmp edx, dword [0x5426d0]
ja 0x4343d2
push esi
call fcn.00408960
add esp, 4
test eax, eax
je 0x4343d2
mov eax, dword [edi + 4]
push eax
push str.Bad_remote_port_number:__s
push esi
call fcn.00408640
add esp, 0xc
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x44], 1
mov dword [ecx + 0x40], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.bind
mov esi, ebx
mov ecx, 5
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42f854
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 0x8000001
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov eax, dword [ebp + 8]
mov dword [eax + 0x54], 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.nobind
mov esi, ebx
mov ecx, 7
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42f894
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 0x8000001
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov eax, dword [ebp + 8]
mov dword [eax + 0x58], 0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.fast_io
mov esi, ebx
mov ecx, 8
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42f8d7
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 1
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov eax, dword [ebp + 8]
mov dword [eax + 0x208], 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.inactive
mov esi, ebx
mov ecx, 9
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42f93f
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x42f93f
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 0x80
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov esi, dword [ebp + 0xc]
mov eax, dword [esi + 4]
call fcn.0042c8f0
mov edi, dword [ebp + 8]
mov dword [edi + 0xec], eax
mov eax, dword [esi + 8]
test eax, eax
je 0x4343d2
call fcn.0042c8f0
mov dword [edi + 0xf0], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.proto
mov esi, ebx
mov ecx, 6
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42f9df
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x42f9df
mov edi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov esi, edi
mov eax, 0x8000001
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov ebx, dword [ebp + 0xc]
mov esi, dword [ebx + 4]
call fcn.00442290
test eax, eax
jge 0x42f9d2
mov edx, edi
and edx, 0xf
cmp edx, dword [0x5426d0]
ja 0x4343d2
push edi
call fcn.00408960
add esp, 4
test eax, eax
je 0x4343d2
lea eax, [esp + 0x18]
call fcn.004422f0
push eax
mov eax, dword [ebx + 4]
push eax
push str.Bad_protocol:__s.__Allowed_protocols_with___proto_option:__s
push edi
call fcn.00408640
add esp, 0x10
jmp 0x4343b6
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x34], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.auto_proxy
mov esi, ebx
mov ecx, 0xb
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42fa5e
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 1
mov dword [esp + 0x18], edx
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov esi, dword [ebp + 8]
lea eax, [esp + 0x10]
push esi
push eax
call fcn.0043a210
mov dword [esi + 0x88], eax
mov esi, dword [esp + 0x18]
add esp, 8
test esi, esi
je 0x4343d2
push 0x40
call fcn.00408960
add esp, 4
test eax, eax
je 0x4343d2
push esi
push str.PROXY:__s
push 0x40
call fcn.00408640
add esp, 0xc
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.show_proxy_settings
mov esi, ebx
mov ecx, 0x14
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42fbc4
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov ebx, 1
mov eax, ebx
mov dword [esp + 0x18], edx
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov eax, dword [ebp + 8]
push eax
lea ecx, [esp + 0x14]
push ecx
call fcn.0043a210
mov edi, eax
add esp, 8
test edi, edi
je 0x42fb87
cmp dword [0x5426d0], ebx
jb 0x42fb87
push 0x1001
call fcn.00408960
add esp, 4
test eax, eax
je 0x42faed
mov eax, dword [edi]
test eax, eax
jne 0x42fada
mov eax, str._NULL_
push eax
push str.HTTP_Server:__s
push 0x1001
call fcn.00408640
add esp, 0xc
cmp dword [0x5426d0], ebx
jb 0x42fb87
push 0x1001
call fcn.00408960
add esp, 4
test eax, eax
je 0x42fb20
mov edx, dword [edi + 4]
push edx
push str.HTTP_Port:__d
push 0x1001
call fcn.00408640
add esp, 0xc
cmp dword [0x5426d0], ebx
jb 0x42fb87
push 0x1001
call fcn.00408960
add esp, 4
test eax, eax
je 0x42fb58
mov eax, dword [edi + 8]
test eax, eax
jne 0x42fb45
mov eax, str._NULL_
push eax
push str.SOCKS_Server:__s
push 0x1001
call fcn.00408640
add esp, 0xc
cmp dword [0x5426d0], ebx
jb 0x42fb87
push 0x1001
call fcn.00408960
add esp, 4
test eax, eax
je 0x42fb87
mov eax, dword [edi + 0xc]
push eax
push str.SOCKS_Port:__d
push 0x1001
call fcn.00408640
add esp, 0xc
mov edi, dword [esp + 0x10]
test edi, edi
je 0x42fbb8
mov ecx, esi
and ecx, 0xf
cmp ecx, dword [0x5426d0]
ja 0x42fbb8
push esi
call fcn.00408960
add esp, 4
test eax, eax
je 0x42fbb8
push edi
push str.Proxy_error:__s
push esi
call fcn.00408640
add esp, 0xc
call fcn.0043a170
push 0
call fcn.00408eb0
mov edi, str.http_proxy
mov esi, ebx
mov ecx, 0xb
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42fcfc
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x42fcfc
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 0x8000001
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov edi, dword [ebp + 0xc]
mov eax, dword [edi + 8]
test eax, eax
jne 0x42fc44
mov edx, esi
and edx, 0xf
cmp edx, dword [0x5426d0]
ja 0x4343d2
push esi
call fcn.00408960
add esp, 4
test eax, eax
je 0x4343d2
push str.http_proxy_port_number_not_defined
push esi
call fcn.00408640
add esp, 8
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push eax
call dword [sym.imp.MSVCR80.dll_atoi]
mov ebx, eax
lea eax, [ebx - 1]
add esp, 4
cmp eax, 0xfffe
jbe 0x42fc95
mov ecx, esi
and ecx, 0xf
cmp ecx, dword [0x5426d0]
ja 0x4343d2
push esi
call fcn.00408960
add esp, 4
test eax, eax
je 0x4343d2
mov edx, dword [edi + 8]
push edx
push str.Bad_http_proxy_port_number:__s
push esi
call fcn.00408640
add esp, 0xc
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov esi, dword [ebp + 8]
call fcn.00429770
mov edx, dword [edi + 0xc]
test edx, edx
mov ecx, dword [edi + 4]
mov dword [eax], ecx
mov dword [eax + 4], ebx
je 0x42fcee
mov edi, str.auto
mov esi, edx
mov ecx, 5
xor ebx, ebx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42fccc
mov dword [eax + 0x10], 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov dword [eax + 0x18], edx
mov edx, dword [ebp + 0xc]
mov ecx, dword [edx + 0x10]
test ecx, ecx
mov dword [eax + 0x14], str.basic
je 0x4343d2
mov dword [eax + 0x14], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov dword [eax + 0x14], str.none
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.http_proxy_retry
mov esi, ebx
mov ecx, 0x11
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42fd41
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 0x8000001
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov esi, dword [ebp + 8]
call fcn.00429770
mov dword [eax + 8], 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.http_proxy_timeout
mov esi, ebx
mov ecx, 0x13
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42fd97
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x42fd97
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 0x8000001
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov esi, dword [ebp + 8]
call fcn.00429770
mov edx, dword [ebp + 0xc]
mov esi, eax
mov eax, dword [edx + 4]
call fcn.0042c8f0
mov dword [esi + 0xc], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.http_proxy_option
mov esi, ebx
mov ecx, 0x12
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42fe74
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x42fe74
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 0x8000001
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov esi, dword [ebp + 8]
call fcn.00429770
mov ebx, dword [ebp + 0xc]
mov edx, dword [ebx + 4]
mov dword [esp + 0x10], eax
mov edi, str.VERSION
mov esi, edx
mov ecx, 8
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x42fe0f
mov eax, dword [ebx + 8]
test eax, eax
je 0x42fe0f
mov ecx, dword [esp + 0x10]
mov dword [ecx + 0x1c], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov esi, edx
mov edi, str.AGENT
mov ecx, 6
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42fe36
mov eax, dword [ebx + 8]
test eax, eax
je 0x42fe36
mov ecx, dword [esp + 0x10]
mov dword [ecx + 0x20], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov esi, dword [ebp + 0x1c]
mov edx, esi
and edx, 0xf
cmp edx, dword [0x5426d0]
ja 0x4343d2
push esi
call fcn.00408960
add esp, 4
test eax, eax
je 0x4343d2
mov eax, dword [ebx + 4]
push eax
push str.Bad_http_proxy_option_or_missing_parameter:__s
push esi
call fcn.00408640
add esp, 0xc
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.socks_proxy
mov esi, ebx
mov ecx, 0xc
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42ff37
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x42ff37
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 0x8000001
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov edi, dword [ebp + 0xc]
mov eax, dword [edi + 8]
test eax, eax
je 0x42ff20
push eax
call dword [sym.imp.MSVCR80.dll_atoi]
lea edx, [eax - 1]
add esp, 4
cmp edx, 0xfffe
jbe 0x42ff0d
mov eax, esi
and eax, 0xf
cmp eax, dword [0x5426d0]
ja 0x4343d2
push esi
call fcn.00408960
add esp, 4
test eax, eax
je 0x4343d2
mov ecx, dword [edi + 8]
push ecx
push str.Bad_socks_proxy_port_number:__s
push esi
call fcn.00408640
add esp, 0xc
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp + 8]
mov edx, dword [edi + 4]
mov dword [ecx + 0x78], eax
mov dword [ecx + 0x74], edx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp + 8]
mov edx, dword [edi + 4]
mov dword [ecx + 0x78], 0x438
mov dword [ecx + 0x74], edx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.socks_proxy_retry
mov esi, ebx
mov ecx, 0x12
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42ff77
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 0x8000001
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov eax, dword [ebp + 8]
mov dword [eax + 0x7c], 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.keepalive
mov esi, ebx
mov ecx, 0xa
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x42ffe4
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x42ffe4
cmp dword [ecx + 8], edx
je 0x42ffe4
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 1
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov edi, dword [ebp + 0xc]
mov eax, dword [edi + 4]
mov esi, dword [sym.imp.MSVCR80.dll_atoi]
push eax
call esi
mov ecx, dword [edi + 8]
mov ebx, dword [ebp + 8]
add esp, 4
push ecx
mov dword [ebx + 0xe4], eax
call esi
add esp, 4
mov dword [ebx + 0xe8], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.ping
mov esi, ebx
mov ecx, 5
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x430036
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x430036
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 0x80
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 4]
call fcn.0042c8f0
mov ecx, dword [ebp + 8]
mov dword [ecx + 0xf4], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.ping_exit
mov esi, ebx
mov ecx, 0xa
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x430092
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x430092
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 0x80
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 4]
call fcn.0042c8f0
mov ecx, dword [ebp + 8]
mov dword [ecx + 0xf8], eax
mov dword [ecx + 0x104], 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.ping_restart
mov esi, ebx
mov ecx, 0xd
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x4300ee
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x4300ee
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 0x80
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 4]
call fcn.0042c8f0
mov ecx, dword [ebp + 8]
mov dword [ecx + 0xf8], eax
mov dword [ecx + 0x104], 2
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.ping_timer_rem
mov esi, ebx
mov ecx, 0xf
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x430131
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 0x80
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov eax, dword [ebp + 8]
mov dword [eax + 0xfc], 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.explicit_exit_notify
mov esi, ebx
mov ecx, 0x15
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x430193
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 0x80000
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + 4]
test eax, eax
je 0x43017f
call fcn.0042c8f0
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x108], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
mov dword [edx + 0x108], 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.persist_tun
mov esi, ebx
mov ecx, 0xc
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x4301d6
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 0x100
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov eax, dword [ebp + 8]
mov dword [eax + 0x10c], 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.persist_key
mov esi, ebx
mov ecx, 0xc
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x430219
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 0x100
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov eax, dword [ebp + 8]
mov dword [eax + 0x118], 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.persist_local_ip
mov esi, ebx
mov ecx, 0x11
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x43025c
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 0x200
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov eax, dword [ebp + 8]
mov dword [eax + 0x110], 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.persist_remote_ip
mov esi, ebx
mov ecx, 0x12
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x43029f
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 0x200
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov eax, dword [ebp + 8]
mov dword [eax + 0x114], 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.route
mov esi, ebx
mov ecx, 6
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x43042a
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x43042a
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov ebx, dword [ebp + 0x1c]
mov esi, ebx
mov eax, 4
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov esi, dword [ebp + 8]
call fcn.00427050
cmp dword [esp + 0x1c], 0
mov edi, dword [ebp + 0xc]
je 0x430402
mov edx, dword [esi + 0x248]
mov esi, dword [edi + 4]
push edx
call fcn.0043f900
add esp, 4
test eax, eax
jne 0x430353
mov eax, dword [edi + 4]
call fcn.0043c7d0
test eax, eax
jne 0x430353
mov eax, ebx
and eax, 0xf
cmp eax, dword [0x5426d0]
ja 0x4343d2
push ebx
call fcn.00408960
add esp, 4
test eax, eax
je 0x4343d2
mov ecx, dword [edi + 4]
push ecx
push str.route_parameter_network_IP__s_must_be_a_valid_address
push ebx
call fcn.00408640
add esp, 0xc
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [edi + 8]
test eax, eax
je 0x43039e
call fcn.0043f840
test eax, eax
jne 0x43039e
mov edx, ebx
and edx, 0xf
cmp edx, dword [0x5426d0]
ja 0x4343d2
push ebx
call fcn.00408960
add esp, 4
test eax, eax
je 0x4343d2
mov eax, dword [edi + 8]
push eax
push str.route_parameter_netmask__s_must_be_an_IP_address
push ebx
call fcn.00408640
add esp, 0xc
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov esi, dword [edi + 0xc]
test esi, esi
je 0x430402
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x248]
push edx
call fcn.0043f900
add esp, 4
test eax, eax
jne 0x430402
mov eax, dword [edi + 0xc]
call fcn.0043c7d0
test eax, eax
jne 0x430402
mov eax, ebx
and eax, 0xf
cmp eax, dword [0x5426d0]
ja 0x4343d2
push ebx
call fcn.00408960
add esp, 4
test eax, eax
je 0x4343d2
mov ecx, dword [edi + 0xc]
push ecx
push str.route_parameter_gateway__s_must_be_a_valid_address
push ebx
call fcn.00408640
add esp, 0xc
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [edi + 0x10]
mov eax, dword [edi + 0xc]
mov ecx, dword [edi + 8]
push edx
mov edx, dword [edi + 4]
push eax
mov eax, dword [ebp + 8]
mov esi, dword [eax + 0x23c]
push ecx
push edx
call fcn.0043ca20
add esp, 0x10
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.max_routes
mov esi, ebx
mov ecx, 0xb
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x4304c3
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x4304c3
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 1
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 4]
push eax
call dword [sym.imp.MSVCR80.dll_atoi]
add esp, 4
cmp eax, 0x5f5e100
ja 0x43048c
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x238], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, esi
and edx, 0xf
cmp edx, dword [0x5426d0]
ja 0x4343d2
push esi
call fcn.00408960
add esp, 4
test eax, eax
je 0x4343d2
push str.__max_routes_parameter_is_out_of_range
push esi
call fcn.00408640
add esp, 8
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.route_gateway
mov esi, ebx
mov ecx, 0xe
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x4305a0
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x4305a0
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 0x400000
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov ebx, dword [ebp + 0xc]
mov eax, dword [ebx + 4]
mov edi, str.dhcp
mov esi, eax
mov ecx, 5
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x43052e
mov eax, dword [ebp + 8]
mov dword [eax + 0x244], 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, dword [ebp + 8]
mov ecx, dword [edi + 0x248]
push ecx
mov esi, eax
call fcn.0043f900
add esp, 4
test eax, eax
jne 0x430590
mov eax, dword [ebx + 4]
call fcn.0043c7d0
test eax, eax
jne 0x430590
mov esi, dword [ebp + 0x1c]
mov edx, esi
and edx, 0xf
cmp edx, dword [0x5426d0]
ja 0x4343d2
push esi
call fcn.00408960
add esp, 4
test eax, eax
je 0x4343d2
mov eax, dword [ebx + 4]
push eax
push str.route_gateway_parm__s_must_be_a_valid_address
push esi
call fcn.00408640
add esp, 0xc
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebx + 4]
mov dword [edi + 0x220], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.route_metric
mov esi, ebx
mov ecx, 0xd
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x4305f2
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x4305f2
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 4
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 4]
call fcn.0042c8f0
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x224], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.route_delay
mov esi, ebx
mov ecx, 0xc
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x430671
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 0x400000
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov edi, dword [ebp + 0xc]
mov eax, dword [edi + 4]
test eax, eax
mov esi, dword [ebp + 8]
mov dword [esi + 0x234], 1
je 0x430660
call fcn.0042c8f0
mov dword [esi + 0x22c], eax
mov eax, dword [edi + 8]
test eax, eax
je 0x4343d2
call fcn.0042c8f0
mov dword [esi + 0x230], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov dword [esi + 0x22c], 0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.route_up
mov esi, ebx
mov ecx, 9
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x4306d4
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x4306d4
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov ebx, dword [ebp + 0x1c]
mov esi, ebx
mov eax, 0x10
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov esi, dword [ebp + 0xc]
mov eax, 2
call fcn.0042d7e0
test eax, eax
je 0x4343d2
mov ecx, dword [ebp + 8]
mov edx, esi
mov eax, dword [edx + 4]
mov dword [ecx + 0x21c], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.route_noexec
mov esi, ebx
mov ecx, 0xd
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x430717
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 0x10
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov eax, dword [ebp + 8]
mov dword [eax + 0x228], 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.route_nopull
mov esi, ebx
mov ecx, 0xd
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x43075a
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 1
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov eax, dword [ebp + 8]
mov dword [eax + 0x240], 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.allow_pull_fqdn
mov esi, ebx
mov ecx, 0x10
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x43079d
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 1
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov eax, dword [ebp + 8]
mov dword [eax + 0x248], 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.redirect_gateway
mov esi, ebx
mov ecx, 0x11
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
je 0x434113
mov edi, str.redirect_private
mov esi, ebx
mov ecx, 0x11
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
je 0x434113
mov edi, str.remote_random_hostname
mov esi, ebx
mov ecx, 0x17
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x430809
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 1
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov eax, dword [ebp + 8]
or dword [eax + 0x218], 8
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.setenv
mov esi, ebx
mov ecx, 7
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x43091e
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x43091e
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 1
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov edx, dword [ebp + 0xc]
mov ebx, dword [edx + 4]
mov edi, str.REMOTE_RANDOM_HOSTNAME
mov esi, ebx
mov ecx, 0x17
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
je 0x4307f8
mov edi, str.GENERIC_CONFIG
mov esi, ebx
mov ecx, 0xf
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x4308ac
mov esi, dword [ebp + 0x1c]
mov ecx, esi
and ecx, 0xf
cmp ecx, dword [0x5426d0]
ja 0x4343d2
push esi
call fcn.00408960
add esp, 4
test eax, eax
je 0x4343d2
push str.this_is_a_generic_configuration_and_cannot_directly_be_used
push esi
call fcn.00408640
add esp, 8
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.SERVER_POLL_TIMEOUT
mov esi, ebx
mov ecx, 0x14
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x4308c9
mov eax, dword [edx + 8]
test eax, eax
jne 0x431cc3
mov edi, str.FORWARD_COMPATIBLE
mov esi, ebx
mov ecx, 0x13
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x4308fc
mov esi, dword [edx + 8]
test esi, esi
je 0x4308fc
mov edi, 0x511290
mov ecx, 2
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x4308fc
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x10], 1
mov ecx, dword [edx + 8]
test ecx, ecx
jne 0x430908
mov ecx, 0x5118be
mov edx, dword [ebp + 0x28]
push ecx
push edx
mov eax, ebx
call fcn.0041a7f0
add esp, 8
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.setenv_safe
mov esi, ebx
mov ecx, 0xc
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x43097d
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x43097d
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 0x20
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 8]
test eax, eax
jne 0x430964
mov eax, 0x5118be
mov edi, dword [ebp + 0x28]
push eax
mov eax, edx
mov ecx, dword [eax + 4]
push ecx
call fcn.0041a6d0
add esp, 8
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.script_security
mov esi, ebx
mov ecx, 0x10
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x430a70
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x430a70
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 1
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov esi, dword [ebp + 0xc]
mov edx, dword [esi + 4]
push edx
call dword [sym.imp.MSVCR80.dll_atoi]
mov dword [0x535e30], eax
mov eax, dword [esi + 8]
add esp, 4
test eax, eax
je 0x430a5f
mov edi, str.execve
mov esi, eax
mov ecx, 7
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x4309fb
mov dword [0x5424e8], edx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov esi, eax
mov edi, 0x51c07c
mov ecx, 7
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x430a1e
mov dword [0x5424e8], 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov esi, dword [ebp + 0x1c]
mov ecx, esi
and ecx, 0xf
cmp ecx, dword [0x5426d0]
ja 0x4343d2
push esi
call fcn.00408960
add esp, 4
test eax, eax
je 0x4343d2
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 8]
push eax
push str.unknown___script_security_method:__s
push esi
call fcn.00408640
add esp, 0xc
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov dword [0x5424e8], 0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.mssfix
mov esi, ebx
mov ecx, 7
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x430ad2
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 1
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + 4]
test eax, eax
je 0x430abe
call fcn.0042c8f0
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x11c], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
mov dword [edx + 0x120], 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.disable_occ
mov esi, ebx
mov ecx, 0xc
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x430b15
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 1
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov eax, dword [ebp + 8]
mov dword [eax + 0x24c], 0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.server
mov esi, ebx
mov ecx, 7
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x430c60
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x430c60
cmp dword [ecx + 8], edx
je 0x430c60
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 1
mov dword [esp + 0x20], edx
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov edi, dword [ebp + 0xc]
mov edx, dword [edi + 4]
push 0x40
lea esi, [esp + 0x1c]
call fcn.00425880
mov edx, dword [edi + 8]
add esp, 4
push 0x40
mov ebx, eax
call fcn.00425880
add esp, 4
cmp dword [esp + 0x18], 0
jne 0x430c25
test ebx, ebx
je 0x430c25
test eax, eax
je 0x430c25
mov ecx, dword [ebp + 8]
mov esi, dword [edi + 0xc]
test esi, esi
mov dword [ecx + 0x27c], 1
mov dword [ecx + 0x280], ebx
mov dword [ecx + 0x284], eax
je 0x4343d2
mov edi, str.nopool
mov ecx, 7
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x430be4
mov eax, dword [ebp + 8]
or dword [eax + 0x288], 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov esi, dword [ebp + 0x1c]
mov ecx, esi
and ecx, 0xf
cmp ecx, dword [0x5426d0]
ja 0x4343d2
push esi
call fcn.00408960
add esp, 4
test eax, eax
je 0x4343d2
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 0xc]
push eax
push str.error_parsing___server:__s_is_not_a_recognized_flag
push esi
call fcn.00408640
add esp, 0xc
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp + 0x1c]
and ecx, 0xf
cmp ecx, dword [0x5426d0]
ja 0x4343d2
mov esi, dword [ebp + 0x1c]
push esi
call fcn.00408960
add esp, 4
test eax, eax
je 0x4343d2
push str.error_parsing___server_parameters
push esi
call fcn.00408640
add esp, 8
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.server_bridge
mov esi, ebx
mov ecx, 0xe
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x430d88
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x430d88
cmp dword [ecx + 8], edx
je 0x430d88
cmp dword [ecx + 0xc], edx
je 0x430d88
cmp dword [ecx + 0x10], edx
je 0x430d88
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 1
mov dword [esp + 0x1c], edx
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov edi, dword [ebp + 0xc]
mov edx, dword [edi + 4]
push 0x40
lea esi, [esp + 0x18]
call fcn.00425880
mov edx, dword [edi + 8]
add esp, 4
push 0x40
mov ebx, eax
call fcn.00425880
mov edx, dword [edi + 0xc]
add esp, 4
push 0x40
mov dword [esp + 0x14], eax
call fcn.00425880
mov edx, dword [edi + 0x10]
add esp, 4
push 0x40
mov dword [esp + 0x20], eax
call fcn.00425880
add esp, 4
cmp dword [esp + 0x14], 0
jne 0x430d4e
test ebx, ebx
je 0x430d4e
mov esi, dword [esp + 0x10]
test esi, esi
je 0x430d4e
mov edx, dword [esp + 0x1c]
test edx, edx
je 0x430d4e
test eax, eax
je 0x430d4e
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x290], 1
mov dword [ecx + 0x294], ebx
mov dword [ecx + 0x298], esi
mov dword [ecx + 0x29c], edx
mov dword [ecx + 0x2a0], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov esi, dword [ebp + 0x1c]
mov eax, esi
and eax, 0xf
cmp eax, dword [0x5426d0]
ja 0x4343d2
push esi
call fcn.00408960
add esp, 4
test eax, eax
je 0x4343d2
push str.error_parsing___server_bridge_parameters
push esi
call fcn.00408640
add esp, 8
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.server_bridge
mov esi, ebx
mov ecx, 0xe
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x430dec
mov ecx, dword [ebp + 0xc]
mov esi, dword [ecx + 4]
test esi, esi
je 0x430dec
mov edi, str.nogw
mov ecx, 5
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x430dec
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 1
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov eax, dword [ebp + 8]
mov dword [eax + 0x28c], 1
or dword [eax + 0x288], 4
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.server_bridge
mov esi, ebx
mov ecx, 0xe
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x430e37
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
jne 0x430e37
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 1
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov edx, dword [ebp + 8]
mov dword [edx + 0x28c], 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.push
mov esi, ebx
mov ecx, 5
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x430e9c
mov edi, dword [ebp + 0xc]
add edi, 4
cmp dword [edi], edx
je 0x430e9c
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 0x10000
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov esi, dword [ebp + 8]
push esi
mov edx, edi
call fcn.0041b9d0
add esp, 4
push 0
push esi
call fcn.00403470
mov ebx, eax
mov eax, dword [ebp + 0x1c]
add esp, 8
mov edi, esi
call fcn.0043a940
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.push_reset
mov esi, ebx
mov ecx, 0xb
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x430ee3
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 0x20000
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov ecx, dword [ebp + 8]
xor eax, eax
mov dword [ecx + 0x2a4], eax
mov dword [ecx + 0x2a8], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.ifconfig_pool
mov esi, ebx
mov ecx, 0xe
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x430ffc
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x430ffc
cmp dword [ecx + 8], edx
je 0x430ffc
mov esi, dword [ebp + 0x1c]
xor ecx, ecx
push eax
mov dword [esp + 0x18], ecx
mov dword [esp + 0x14], ecx
mov ecx, dword [ebp + 0x24]
push ebx
mov eax, 1
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov ebx, dword [ebp + 0xc]
mov edx, dword [ebx + 4]
push 0x40
lea esi, [esp + 0x18]
call fcn.00425880
mov edx, dword [ebx + 8]
add esp, 4
push 0x40
mov edi, eax
call fcn.00425880
mov edx, dword [ebx + 0xc]
add esp, 4
test edx, edx
mov dword [esp + 0x1c], eax
je 0x430f71
push 0x40
call fcn.00425880
add esp, 4
mov dword [esp + 0x10], eax
cmp dword [esp + 0x14], 0
je 0x430fb2
mov esi, dword [ebp + 0x1c]
mov eax, esi
and eax, 0xf
cmp eax, dword [0x5426d0]
ja 0x4343d2
mov esi, dword [esp + 0x1c]
mov ecx, dword [ebp + 0x1c]
mov eax, esi
mov ebx, edi
call fcn.00437f00
test eax, eax
je 0x4343d2
mov edi, str.ifconfig_pool_persist
mov esi, ebx
mov ecx, 0x16
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x43105f
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x43105f
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 1
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov eax, dword [ebp + 0xc]
mov edx, dword [eax + 4]
mov eax, dword [eax + 8]
test eax, eax
mov esi, dword [ebp + 8]
mov dword [esi + 0x2bc], edx
je 0x4343d2
call fcn.0042c8f0
mov dword [esi + 0x2c0], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.ifconfig_pool_linear
mov esi, ebx
mov ecx, 0x15
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x4310a2
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 1
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov eax, dword [ebp + 8]
mov dword [eax + 0xa4], 2
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.hash_size
mov esi, ebx
mov ecx, 0xa
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x431161
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x431161
cmp dword [ecx + 8], edx
je 0x431161
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 1
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov edi, str.connect_freq
mov esi, ebx
mov ecx, 0xd
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x43121e
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x43121e
cmp dword [ecx + 8], edx
je 0x43121e
mov edi, str.max_clients
mov esi, ebx
mov ecx, 0xc
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x4312b4
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 4], edx
je 0x4312b4
mov edi, str.max_routes_per_client
mov esi, ebx
mov ecx, 0x16
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x431315
call fcn.0042c8f0
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x344], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov esi, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
push eax
push ebx
mov eax, 4
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343d2
mov ebx, dword [ebp + 8]
mov esi, ebx
call fcn.00427050
mov eax, dword [ebp + 0xc]
mov esi, dword [eax]
mov edi, str.redirect_gateway
mov ecx, 0x11
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x434158
mov eax, dword [ebx + 0x23c]
or dword [eax], 0x20
mov dword [esp + 0x14], 1
mov eax, dword [ebp + 0xc]
mov ecx, dword [esp + 0x14]
mov eax, dword [eax + ecx*4]
test eax, eax
je 0x434215
mov edi, str.local
mov esi, eax
mov ecx, 6
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x43418f
mov eax, dword [ebx + 0x23c]
or dword [eax], 2
jmp 0x434201
mov edi, str.autolocal
mov esi, eax
mov ecx, 0xa
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x4341ac
mov eax, dword [ebx + 0x23c]
or dword [eax], 0x40
jmp 0x434201
mov edi, str.def1
mov esi, eax
mov ecx, 5
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x4341c9
mov eax, dword [ebx + 0x23c]
or dword [eax], 4
jmp 0x434201
mov edi, str.bypass_dhcp
mov esi, eax
mov ecx, 0xc
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x4341e6
mov eax, dword [ebx + 0x23c]
or dword [eax], 8
jmp 0x434201
mov esi, eax
mov edi, str.bypass_dns
mov ecx, 0xb
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x434225
mov eax, dword [ebx + 0x23c]
or dword [eax], 0x10
mov eax, dword [esp + 0x14]
add eax, 1
cmp eax, 0x10
mov dword [esp + 0x14], eax
jl 0x434160
mov ebx, dword [ebx + 0x23c]
or dword [ebx], 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov esi, dword [ebp + 0x1c]
mov ecx, esi
and ecx, 0xf
cmp ecx, dword [0x5426d0]
ja 0x4343d2
push esi
call fcn.00408960
add esp, 4
test eax, eax
je 0x4343d2
mov eax, dword [ebp + 0xc]
mov edx, dword [esp + 0x14]
mov ecx, dword [eax + edx*4]
mov edx, dword [eax]
push ecx
push edx
push str.unknown____s_flag:__s
push esi
call fcn.00408640
add esp, 0x10
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
lea eax, [esp + 0x18]
push eax
mov esi, 0x100
lea edi, [esp + 0x34]
call fcn.00402dc0
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov esi, dword [ebp + 0x1c]
mov dword [esp + 0x24], ecx
mov ecx, dword [eax + 8]
mov dword [esp + 0x28], edx
mov edx, dword [eax + 0xc]
mov eax, dword [ebp + 0x20]
mov dword [esp + 0x2c], ecx
mov ecx, dword [ebp + 0xc]
add esp, 4
mov dword [esp + 0x2c], edx
mov edx, dword [ecx]
mov ecx, dword [ebp + 0x24]
push eax
push edx
mov eax, 0x100000
mov ebx, 1
call fcn.0042d790
add esp, 8
test eax, eax
je 0x4343b6
mov edi, ebx
mov eax, dword [ebp + 0xc]
cmp dword [eax + edi*4], 0
je 0x43430d
cmp edi, 1
jle 0x4342eb
push 0x510330
lea esi, [esp + 0x24]
call fcn.00402ff0
add esp, 4
and ebx, eax
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx + edi*4]
push edx
push 0x5103a4
lea esi, [esp + 0x28]
call fcn.00402ff0
add edi, 1
add esp, 8
and ebx, eax
cmp edi, 0x10
jl 0x4342ca
test ebx, ebx
je 0x434399
cmp dword [0x5426d0], 1
mov esi, dword [esp + 0x2c]
mov ebx, dword [esp + 0x28]
mov edi, dword [esp + 0x24]
jb 0x434369
push 1
call fcn.00408960
add esp, 4
test eax, eax
je 0x434369
cmp dword [esp + 0x1c], 0
mov ecx, str.ECHO_PULL
jne 0x434349
mov ecx, str.ECHO
test esi, esi
je 0x434356
test ebx, ebx
jl 0x434356
lea eax, [edi + esi]
jmp 0x434358
xor eax, eax
push eax
push ecx
push str._s:_s
push 1
call fcn.00408640
add esp, 0x10
cmp dword [0x5426b0], 0
je 0x4343b6
test esi, esi
je 0x43438a
test ebx, ebx
jl 0x43438a
mov ecx, dword [esp + 0x1c]
lea eax, [edi + esi]
push ecx
push eax
call fcn.004181d0
jmp 0x4343b3
mov ecx, dword [esp + 0x1c]
xor eax, eax
push ecx
push eax
call fcn.004181d0
jmp 0x4343b3
push 0x40
call fcn.00408960
add esp, 4
test eax, eax
je 0x4343b6
push str.echo_parameter_option_overflow
push 0x40
call fcn.00408640
add esp, 8
mov eax, dword [esp + 0x18]
test eax, eax
je 0x4343d2
mov edi, dword [sym.imp.MSVCR80.dll_free]
mov esi, dword [eax]
push eax
call edi
add esp, 4
test esi, esi
mov eax, esi
jne 0x4343c4
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret