Function at 0x100186e0
Capabilities:
Get hostname

Disassembly:
sub esp, 8
push ebx
push ebp
xor ebp, ebp
or ebx, 0xffffffff
cmp dword [esi], ebx
push edi
mov dword [esp + 0x10], ebp
mov dword [esp + 0xc], ebp
jne 0x100186f9
mov dword [esi], ebp
cmp dword [esi + 4], ebx
jne 0x10018705
mov dword [esi + 4], 0x1388
cmp dword [esi + 8], ebx
jne 0x10018711
mov dword [esi + 8], 4
cmp dword [esi + 0xc], ebx
jne 0x1001871d
mov dword [esi + 0xc], 1
cmp dword [esi + 0x10], ebx
jne 0x10018725
mov dword [esi + 0x10], ebp
cmp dword [esi + 0x14], ebx
mov edi, dword [sym.imp.WS2_32.dll_htons]
jne 0x1001873a
push 0x35
call edi
movzx eax, ax
mov dword [esi + 0x14], eax
cmp dword [esi + 0x18], ebx
jne 0x10018749
push 0x35
call edi
movzx ecx, ax
mov dword [esi + 0x18], ecx
cmp dword [esi + 0x38], ebx
jne 0x10018755
mov dword [esi + 0x38], 0x500
cmp dword [esi + 0x78], ebx
jne 0x1001879a
push 0x58
call dword [0x10138fd4]
add esp, 4
cmp eax, ebp
mov dword [esi + 0x74], eax
je 0x1001887d
push 0x7f000001
mov dword [eax], 2
call dword [sym.imp.WS2_32.dll_htonl]
mov edx, dword [esi + 0x74]
mov dword [edx + 4], eax
mov eax, dword [esi + 0x74]
mov dword [eax + 0x14], ebp
mov ecx, dword [esi + 0x74]
mov dword [ecx + 0x18], ebp
mov dword [esi + 0x78], 1
cmp dword [esi + 0x28], ebx
jne 0x10018856
mov edi, 0x40
push edi
mov ebx, edi
mov dword [esi + 0x28], ebp
call dword [0x10138fd4]
add esp, 4
cmp eax, ebp
mov dword [esp + 0x10], eax
je 0x1001887d
mov ebp, dword [sym.imp.WS2_32.dll_gethostname]
lea esp, [esp]
push edi
push eax
call ebp
cmp eax, 0xffffffff
jne 0x10018803
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
cmp eax, 0x271e
jne 0x10018807
mov edx, dword [esp + 0x10]
add ebx, ebx
push ebx
push edx
add edi, edi
call dword [0x10138fd8]
add esp, 8
test eax, eax
je 0x1001887b
mov dword [esp + 0x10], eax
jmp 0x100187d0
test eax, eax
je 0x1001880e
mov eax, dword [esp + 0x10]
mov byte [eax], 0
mov ecx, dword [esp + 0x10]
push 0x2e
push ecx
call fcn.10022420
mov edi, eax
add esp, 8
test edi, edi
je 0x10018851
push 4
call dword [0x10138fd4]
add esp, 4
test eax, eax
mov dword [esi + 0x24], eax
je 0x1001887b
lea ebx, [edi + 1]
call fcn.1001a810
mov edx, dword [esi + 0x24]
mov dword [edx], eax
mov eax, dword [esi + 0x24]
cmp dword [eax], 0
je 0x1001887b
mov dword [esi + 0x28], 1
or ebx, 0xffffffff
xor ebp, ebp
cmp dword [esi + 0x30], ebx
jne 0x10018861
mov dword [esi + 0x2c], ebp
mov dword [esi + 0x30], ebp
cmp dword [esi + 0x34], ebp
jne 0x100188f6
mov ebx, 0x1012a618
call fcn.1001a810
test eax, eax
mov dword [esi + 0x34], eax
jne 0x100188f4
xor ebp, ebp
mov eax, dword [esi + 0x74]
cmp eax, ebp
mov dword [esp + 0xc], 0xf
je 0x10018899
push eax
call dword [0x10138fdc]
add esp, 4
mov dword [esi + 0x74], ebp
mov eax, dword [esi + 0x24]
cmp eax, ebp
je 0x100188b0
cmp dword [eax], ebp
je 0x100188b0
mov ecx, dword [eax]
push ecx
call dword [0x10138fdc]
add esp, 4
mov eax, dword [esi + 0x24]
cmp eax, ebp
je 0x100188c4
push eax
call dword [0x10138fdc]
add esp, 4
mov dword [esi + 0x24], ebp
mov eax, dword [esi + 0x34]
cmp eax, ebp
je 0x100188d8
push eax
call dword [0x10138fdc]
add esp, 4
mov dword [esi + 0x34], ebp
mov eax, dword [esi + 0x91c0]
cmp eax, ebp
je 0x100188f6
push eax
call dword [0x10138fdc]
add esp, 4
mov dword [esi + 0x91c0], ebp
jmp 0x100188f6
xor ebp, ebp
mov eax, dword [esp + 0x10]
pop edi
cmp eax, ebp
pop ebp
pop ebx
je 0x1001890b
push eax
call dword [0x10138fdc]
add esp, 4
mov eax, dword [esp]
add esp, 8
ret