Function at 0x1000cbd0
Capabilities:
Get common file path

Disassembly:
sub esp, 0x258
mov eax, dword [esp + 0x260]
push ebx
mov ebx, dword [esp + 0x266]
push ebp
mov ebp, dword [esp + 0x269]
and eax, 0xff
and ebp, 0xff
and ebx, 0xff
push esi
cmp eax, 0xff
push edi
mov dword [esp + 0x24], ebp
mov dword [esp + 0x1c], ebx
jg case.default.0x1000cc29
je 0x1000d344
cmp eax, 6
ja case.default.0x1000cc29
mov esi, dword [esp + 0x26c]
jmp dword [eax*4 + 0x1000d358]
mov edi, dword [esp + 0x26c]
push edi
call fcn.10016060
mov esi, eax
add esp, 4
test esi, esi
jne 0x1000cc54
push edi
push str.unknown_network__s
call fcn.1000ab20
add esp, 8
or eax, 0xffffffff
test esi, esi
je 0x1000cc6d
test esi, 0xff000000
jne 0x1000cc6d
shl esi, 8
shl eax, 8
test esi, esi
jne 0x1000cc5b
push ebx
push ebp
push eax
push esi
call fcn.1000daf0
add esp, 0x10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x258
ret
cmp ebp, 1
jne 0x1000ce79
mov eax, dword [0x10032e88]
dec eax
cmp eax, 0x7a
ja case.0x1000cca4.7
xor ecx, ecx
mov cl, byte [eax + 0x1000d390]
jmp dword [ecx*4 + 0x1000d374]
mov edi, dword [esp + 0x26c]
push edi
call fcn.100163a0
mov esi, eax
add esp, 4
test esi, esi
jne 0x1000cccf
push edi
push str.unknown_ether_host__s
call fcn.1000ab20
add esp, 8
push ebx
push esi
call fcn.1000d410
push esi
mov edi, eax
call fcn.100168e9
add esp, 0xc
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x258
ret
mov edi, dword [esp + 0x26c]
push edi
call fcn.100163a0
mov esi, eax
add esp, 4
test esi, esi
jne 0x1000cd12
push edi
push str.unknown_FDDI_host__s
call fcn.1000ab20
add esp, 8
push ebx
push esi
call fcn.1000d4d0
push esi
mov edi, eax
call fcn.100168e9
add esp, 0xc
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x258
ret
mov edi, dword [esp + 0x26c]
push edi
call fcn.100163a0
mov esi, eax
add esp, 4
test esi, esi
jne 0x1000cd55
push edi
push str.unknown_token_ring_host__s
call fcn.1000ab20
add esp, 8
push ebx
push esi
call fcn.1000d580
push esi
mov edi, eax
call fcn.100168e9
add esp, 0xc
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x258
ret
mov edi, dword [esp + 0x26c]
push edi
call fcn.100163a0
mov esi, eax
add esp, 4
test esi, esi
jne 0x1000cd98
push edi
push str.unknown_802.11_host__s
call fcn.1000ab20
add esp, 8
push ebx
push esi
call fcn.1000d630
push esi
mov edi, eax
call fcn.100168e9
add esp, 0xc
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x258
ret
mov edi, dword [esp + 0x26c]
push edi
call fcn.100163a0
mov esi, eax
add esp, 4
test esi, esi
jne 0x1000cddb
push edi
push str.unknown_Fibre_Channel_host__s
call fcn.1000ab20
add esp, 8
push ebx
push esi
call fcn.1000da40
push esi
mov edi, eax
call fcn.100168e9
add esp, 0xc
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x258
ret
mov eax, dword [0x10032ed4]
test eax, eax
je case.0x1000cca4.7
push 0xff00
push 8
push 4
call fcn.1000c0d0
mov ebx, eax
push ebx
call fcn.1000b030
mov edi, dword [esp + 0x27c]
push edi
call fcn.100163a0
mov esi, eax
add esp, 0x14
test esi, esi
jne 0x1000ce3d
push edi
push str.unknown_ether_host__s
call fcn.1000ab20
add esp, 8
mov edx, dword [esp + 0x1c]
push edx
push esi
call fcn.1000d410
mov edi, eax
push edi
push ebx
call fcn.1000af60
push esi
call fcn.100168e9
add esp, 0x14
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x258
ret
push str.only_ethernet_FDDI_token_ring_802.11_ATM_LANE_Fibre_Channel_supports_link_level_host_name
call fcn.1000ab20
add esp, 4
jmp 0x1000d194
cmp ebp, 0xc
jne 0x1000cea8
mov eax, dword [esp + 0x26c]
push eax
call fcn.10016480
push ebx
push ebp
and eax, 0xffff
push 0
push eax
call fcn.1000daf0
add esp, 0x14
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x258
ret
mov edi, dword [esp + 0x26c]
or ecx, 0xffffffff
mov dword [esp + 0x44], ecx
push edi
mov dword [esp + 0x4c], ecx
mov dword [esp + 0x50], ecx
mov dword [esp + 0x54], ecx
call fcn.10015e40
mov esi, eax
add esp, 4
test esi, esi
mov dword [esp + 0x28], esi
jne 0x1000cee3
push edi
push str.unknown_host__s
call fcn.1000ab20
add esp, 8
mov eax, dword [0x10032e84]
mov dword [esp + 0x14], 0
cmp eax, 0xffffffff
mov dword [esp + 0x18], ebp
mov ebx, ebp
jne 0x1000cf0c
test ebp, ebp
jne 0x1000cf0c
mov ebx, 2
mov dword [esp + 0x18], 0x11
test esi, esi
je 0x1000cf83
mov eax, dword [esi + 4]
sub eax, 2
je 0x1000cf41
sub eax, 0x15
jne 0x1000cf7c
cmp dword [esp + 0x18], 2
je 0x1000cf7c
mov edx, dword [esp + 0x1c]
mov eax, dword [esi + 0x18]
mov ecx, dword [esp + 0x18]
push edx
lea edx, [esp + 0x48]
push ecx
add eax, 8
push edx
push eax
call fcn.1000e180
jmp 0x1000cf61
cmp ebx, 0x11
je 0x1000cf7c
mov eax, dword [esi + 0x18]
mov ecx, dword [esp + 0x1c]
push ecx
push ebx
mov edx, dword [eax + 4]
push 0xffffffffffffffff
push edx
call dword [sym.imp.WS2_32.dll_ntohl]
push eax
call fcn.1000daf0
mov edi, eax
mov eax, dword [esp + 0x24]
add esp, 0x10
test eax, eax
je 0x1000cf78
push edi
push eax
call fcn.1000afe0
add esp, 8
mov dword [esp + 0x14], edi
mov esi, dword [esi + 0x1c]
test esi, esi
jne 0x1000cf10
mov eax, dword [0x10032c2c]
test eax, eax
jne 0x1000d141
mov eax, dword [0x10032c28]
mov dword [esp + 0x2c], str.getaddrinfo
test eax, eax
mov dword [esp + 0x30], 0x100026b0
mov dword [esp + 0x34], str.getnameinfo
mov dword [esp + 0x38], 0x100033f0
mov dword [esp + 0x3c], str.freeaddrinfo
mov dword [esp + 0x40], 0x10002660
je 0x1000cfd3
mov eax, dword [0x1002d25c]
jmp 0x1000d13c
lea ecx, [esp + 0x160]
push 0x104
push ecx
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryA]
test eax, eax
je 0x1000d129
lea edi, [esp + 0x160]
or ecx, 0xffffffff
xor eax, eax
lea edx, [esp + 0x54]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
lea edx, [esp + 0x54]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, str.ws2_32
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov esi, edi
mov ebx, ecx
mov edi, edx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov ecx, ebx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, ebx
mov ebx, dword [sym.imp.KERNEL32.dll_LoadLibraryA]
and ecx, 3
lea eax, [esp + 0x54]
rep movsb byte es:[edi], byte [esi]
push eax
call ebx
mov ebp, dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov esi, eax
test esi, esi
je 0x1000d070
push str.getaddrinfo
push esi
call ebp
test eax, eax
jne 0x1000d0e8
push esi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
lea edi, [esp + 0x160]
or ecx, 0xffffffff
xor eax, eax
lea edx, [esp + 0x54]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
lea edx, [esp + 0x54]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, str.wship6
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov esi, edi
mov edi, edx
mov edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov ecx, edx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
lea eax, [esp + 0x54]
and ecx, 3
push eax
rep movsb byte es:[edi], byte [esi]
call ebx
mov esi, eax
test esi, esi
je 0x1000d129
push str.getaddrinfo
push esi
call ebp
test eax, eax
jne 0x1000d0e8
push esi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
jmp 0x1000d129
mov ecx, dword [0x100201f0]
xor ebx, ebx
test ecx, ecx
jle 0x1000d113
lea edi, [esp + 0x30]
mov ecx, dword [edi - 4]
push ecx
push esi
call ebp
test eax, eax
mov dword [edi], eax
je 0x1000d0df
mov ecx, dword [0x100201f0]
inc ebx
add edi, 8
cmp ebx, ecx
jl 0x1000d0f8
xor eax, eax
test ecx, ecx
jle 0x1000d129
mov edx, dword [esp + eax*8 + 0x30]
mov dword [eax*8 + 0x1002d24c], edx
inc eax
cmp eax, ecx
jl 0x1000d119
mov eax, dword [0x1002d25c]
mov ebp, dword [esp + 0x24]
mov dword [0x10032c28], 1
mov dword [0x10032c2c], eax
mov ecx, dword [esp + 0x28]
push ecx
call eax
mov esi, dword [esp + 0x14]
test esi, esi
jne 0x1000d174
test ebp, ebp
mov eax, 0x10032c30
je 0x1000d15e
mov eax, str._for_specified_address_family
mov edx, dword [esp + 0x26c]
push eax
push edx
push str.unknown_host__s_s
call fcn.1000ab20
add esp, 0xc
mov eax, esi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x258
ret
test ebp, ebp
je 0x1000d1a1
cmp ebp, 7
je 0x1000d1a1
cmp ebp, 6
je 0x1000d1a1
cmp ebp, 5
je 0x1000d1a1
push str.illegal_qualifier_of_port
call fcn.1000ab20
add esp, 4
mov esi, dword [esp + 0x26c]
lea eax, [esp + 0x10]
lea ecx, [esp + 0x20]
push eax
push ecx
push esi
call fcn.10016070
add esp, 0xc
test eax, eax
jne 0x1000d1cd
push esi
push str.unknown_port__s
call fcn.1000ab20
add esp, 8
cmp ebp, 7
jne 0x1000d212
mov eax, dword [esp + 0x10]
cmp eax, 6
jne 0x1000d1ee
push esi
push str.port__s_is_tcp
call fcn.1000ab20
add esp, 8
jmp 0x1000d28c
cmp eax, 0x84
jne 0x1000d208
push esi
push str.port__s_is_sctp
call fcn.1000ab20
add esp, 8
jmp 0x1000d28c
mov dword [esp + 0x10], 0x11
jmp 0x1000d28c
cmp ebp, 6
jne 0x1000d251
mov eax, dword [esp + 0x10]
cmp eax, 0x11
jne 0x1000d230
push esi
push str.port__s_is_udp
call fcn.1000ab20
add esp, 8
jmp 0x1000d28c
cmp eax, 0x84
jne 0x1000d247
push esi
push str.port__s_is_sctp
call fcn.1000ab20
add esp, 8
jmp 0x1000d28c
mov dword [esp + 0x10], 6
jmp 0x1000d28c
cmp ebp, 5
jne 0x1000d28c
mov eax, dword [esp + 0x10]
cmp eax, 0x11
jne 0x1000d26f
push esi
push str.port__s_is_udp
call fcn.1000ab20
add esp, 8
jmp 0x1000d28c
cmp eax, 6
jne 0x1000d284
push esi
push str.port__s_is_tcp
call fcn.10008980
add esp, 8
jmp 0x1000d28c
mov dword [esp + 0x10], 0x84
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0x20]
push ebx
push edx
push eax
call fcn.1000e550
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x2c]
add esp, 0xc
mov esi, eax
push esi
push ebx
push ecx
push edx
call fcn.1000e6a0
add esp, 0xc
push eax
call fcn.1000afe0
add esp, 8
mov eax, esi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x258
ret
push str.gateway_not_supported_in_this_configuration
call fcn.1000ab20
add esp, 4
push ebp
push esi
call fcn.1000e7f0
add esp, 8
mov dword [esp + 0x10], eax
test eax, eax
jl 0x1000d300
push ebx
push ebp
push eax
call fcn.1000c8e0
add esp, 0xc
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x258
ret
push esi
push str.unknown_protocol:__s
call fcn.1000ab20
add esp, 8
push ebp
push esi
call fcn.1000e7f0
add esp, 8
mov dword [esp + 0x10], eax
test eax, eax
jl 0x1000d336
push ebx
push ebp
push eax
call fcn.1000e990
add esp, 0xc
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x258
ret
push esi
push str.unknown_protocol:__s
call fcn.1000ab20
add esp, 8
push str.syntax_error_in_filter_expression
call fcn.1000ab20
add esp, 4
jmp fcn.10017779