Function at 0x10054610
Capabilities:
Get hostname

Disassembly:
push ebx
push ebp
push edi
mov edi, dword [esp + 0x10]
xor ebx, ebx
cmp dword [edi], 0xffffffff
jne 0x10054620
mov dword [edi], ebx
cmp dword [edi + 4], 0xffffffff
jne 0x1005462d
mov dword [edi + 4], 0x1388
cmp dword [edi + 8], 0xffffffff
jne 0x1005463a
mov dword [edi + 8], 4
cmp dword [edi + 0xc], 0xffffffff
jne 0x10054647
mov dword [edi + 0xc], 1
cmp dword [edi + 0x10], 0xffffffff
jne 0x10054650
mov dword [edi + 0x10], ebx
cmp dword [edi + 0x14], 0xffffffff
push esi
mov esi, dword [sym.imp.WS2_32.dll_htons]
jne 0x10054667
push 0x35
call esi
movzx eax, ax
mov dword [edi + 0x14], eax
cmp dword [edi + 0x18], 0xffffffff
jne 0x10054677
push 0x35
call esi
movzx eax, ax
mov dword [edi + 0x18], eax
cmp dword [edi + 0x38], 0xffffffff
jne 0x10054684
mov dword [edi + 0x38], 0x500
cmp dword [edi + 0x78], 0xffffffff
jne 0x100546ca
push 0x58
call dword [0x100d1434]
add esp, 4
mov dword [edi + 0x74], eax
test eax, eax
je 0x100547a6
push 0x7f000001
mov dword [eax], 2
call dword [sym.imp.WS2_32.dll_htonl]
mov ecx, dword [edi + 0x74]
mov dword [ecx + 4], eax
mov eax, dword [edi + 0x74]
mov dword [eax + 0x14], ebx
mov eax, dword [edi + 0x74]
mov dword [eax + 0x18], ebx
mov dword [edi + 0x78], 1
cmp dword [edi + 0x28], 0xffffffff
jne 0x10054770
mov esi, 0x40
mov dword [edi + 0x28], ebx
push esi
mov ebp, esi
call dword [0x100d1434]
mov ebx, eax
add esp, 4
test ebx, ebx
je 0x100547a6
push esi
push ebx
call dword [sym.imp.WS2_32.dll_gethostname]
cmp eax, 0xffffffff
jne 0x10054727
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
cmp eax, 0x271e
jne 0x1005472b
add ebp, ebp
add esi, esi
push ebp
push ebx
call dword [0x100d1438]
add esp, 8
test eax, eax
je 0x100547a6
mov ebx, eax
jmp 0x100546f2
test eax, eax
je 0x1005472e
mov byte [ebx], 0
push 0x2e
push ebx
call fcn.10060230
mov ebp, eax
add esp, 8
test ebp, ebp
je 0x10054770
push 4
call dword [0x100d1434]
add esp, 4
mov dword [edi + 0x24], eax
test eax, eax
je 0x100547a6
mov esi, eax
lea eax, [ebp + 1]
push eax
call fcn.10059cd0
mov dword [esi], eax
add esp, 4
mov eax, dword [edi + 0x24]
cmp dword [eax], 0
je 0x100547a6
mov dword [edi + 0x28], 1
cmp dword [edi + 0x30], 0xffffffff
jne 0x10054784
mov dword [edi + 0x2c], 0
mov dword [edi + 0x30], 0
cmp dword [edi + 0x34], 0
jne 0x1005482a
push 0x100c4918
call fcn.10059cd0
add esp, 4
mov dword [edi + 0x34], eax
test eax, eax
jne 0x1005482a
mov eax, dword [edi + 0x74]
test eax, eax
je 0x100547be
push eax
call dword [0x100d143c]
add esp, 4
mov dword [edi + 0x74], 0
mov eax, dword [edi + 0x24]
test eax, eax
je 0x100547ed
mov ecx, dword [eax]
test ecx, ecx
je 0x100547d8
push ecx
call dword [0x100d143c]
mov eax, dword [edi + 0x24]
add esp, 4
test eax, eax
je 0x100547ed
push eax
call dword [0x100d143c]
add esp, 4
mov dword [edi + 0x24], 0
mov eax, dword [edi + 0x34]
test eax, eax
je 0x10054805
push eax
call dword [0x100d143c]
add esp, 4
mov dword [edi + 0x34], 0
mov eax, dword [edi + 0x91c0]
mov ebp, 0xf
test eax, eax
je 0x1005482c
push eax
call dword [0x100d143c]
add esp, 4
mov dword [edi + 0x91c0], 0
jmp 0x1005482c
xor ebp, ebp
pop esi
test ebx, ebx
je 0x1005483b
push ebx
call dword [0x100d143c]
add esp, 4
pop edi
mov eax, ebp
pop ebp
pop ebx
ret