Function at 0x45b92f
Capabilities:
Get hostname
Resolve dns

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x88
mov r14d, dword [rcx + 4]
mov rsi, rcx
mov rbx, rdx
mov dword [rsp + 0xe0], r8d
call sym.sigar_wsa_init
test eax, eax
mov r15d, eax
jne 0x45bdb2
mov eax, dword [rsp + 0xe0]
mov rcx, rbx
lea edx, [rax - 1]
call qword [sym.imp.WS2_32.dll_gethostname]
test eax, eax
mov r15d, eax
je 0x45b9b2
mov rbx, qword [sym.imp.msvcrt.dll__errno]
call rbx
mov edx, dword [rax]
mov rcx, rsi
call sym.mettle.exe_sigar_strerror
lea r8, str._fqdn__gethostname_failed:__s
mov r9, rax
mov edx, 1
mov rcx, rsi
call sym.mettle.exe_sigar_log_printf
call rbx
mov r15d, dword [rax]
jmp 0x45bdb2
cmp r14d, 3
jle 0x45b9cf
lea r8, str._fqdn__gethostname___s
mov r9, rbx
mov edx, 4
mov rcx, rsi
call sym.mettle.exe_sigar_log_printf
mov rcx, rbx
call qword [sym.imp.WS2_32.dll_gethostbyname]
test rax, rax
mov rbp, rax
jne 0x45ba2b
cmp r14d, 3
jle 0x45ba12
call qword [sym.imp.msvcrt.dll__errno]
mov edx, dword [rax]
mov rcx, rsi
call sym.mettle.exe_sigar_strerror
lea r8, str._fqdn__gethostbyname__s__failed:__s
mov qword [rsp + 0x20], rax
mov r9, rbx
mov edx, 4
mov rcx, rsi
call sym.mettle.exe_sigar_log_printf
test rbx, rbx
jne 0x45bd4f
mov rdx, rbx
mov rcx, rsi
call sym.fqdn_ip_get
jmp 0x45bdb2
mov r12, qword [rax]
test r12, r12
je 0x45ba8f
mov edx, 0x2e
mov rcx, r12
call sym.strchr
test rax, rax
je 0x45ba8f
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, rbx
repne scasb al, byte [rdi]
mov rdx, rbx
not rcx
mov r8, rcx
mov rcx, r12
dec r8
call sym.strncmp
test eax, eax
jne 0x45ba8f
movsxd rbp, dword [rsp + 0xe0]
mov rdx, r12
mov rcx, rbx
mov r8, rbp
call sym.strncpy
mov byte [rbx + rbp - 1], 0
lea r8, str._fqdn__resolved_using_gethostbyname.h_name
jmp 0x45bb70
lea r8, str._fqdn__unresolved_using_gethostbyname.h_name
mov edx, 4
mov rcx, rsi
xor r12d, r12d
call sym.mettle.exe_sigar_log_printf
cmp qword [rbp + 8], 0
jne 0x45bb07
lea r8, str._fqdn__unresolved_using_gethostbyname.h_aliases
mov edx, 4
mov rcx, rsi
call sym.mettle.exe_sigar_log_printf
cmp qword [rbp + 0x18], 0
je 0x45bbc7
mov qword [rsp + 0x38], 0
jmp 0x45bbb5
cmp r14d, 3
jle 0x45bb04
mov eax, dword [rsp + 0x30]
lea r8, str._fqdn__gethostbyname__s_.alias__d__s
mov qword [rsp + 0x28], r13
mov r9, rbx
mov edx, 4
mov rcx, rsi
mov dword [rsp + 0x20], eax
call sym.mettle.exe_sigar_log_printf
inc r12
mov rax, qword [rbp + 8]
mov dword [rsp + 0x30], r12d
mov r13, qword [rax + r12*8]
test r13, r13
je 0x45baad
mov edx, 0x2e
mov rcx, r13
call sym.strchr
test rax, rax
je 0x45bada
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, rbx
repne scasb al, byte [rdi]
mov rdx, rbx
not rcx
mov r8, rcx
mov rcx, r13
dec r8
call sym.strncmp
test eax, eax
jne 0x45bada
movsxd rbp, dword [rsp + 0xe0]
mov rdx, r13
mov rcx, rbx
mov r8, rbp
call sym.strncpy
lea r8, str._fqdn__resolved_using_gethostbyname.h_aliases
mov byte [rbx + rbp - 1], 0
mov edx, 4
mov rcx, rsi
xor r15d, r15d
call sym.mettle.exe_sigar_log
jmp 0x45bdb2
movsx edx, word [rbp + 0x12]
movsx r8d, word [rbp + 0x10]
mov rcx, r13
call qword [sym.imp.WS2_32.dll_gethostbyaddr]
test rax, rax
mov r12, rax
jne 0x45bbe0
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
cmp r14d, 3
jg 0x45bd66
add qword [rsp + 0x38], 8
mov rax, qword [rbp + 0x18]
mov rdi, qword [rsp + 0x38]
mov r13, qword [rax + rdi]
test r13, r13
jne 0x45bb85
lea r8, str._fqdn__unresolved_using_gethostbyname.h_addr_list
mov edx, 4
mov rcx, rsi
call sym.mettle.exe_sigar_log
jmp 0x45ba12
cmp r14d, 3
jle 0x45bbf7
mov edx, dword [r13]
lea r8, [rsp + 0x52]
mov rcx, rsi
call sym.sigar_inet_ntoa
mov r13, qword [r12]
test r13, r13
je 0x45bc5c
mov edx, 0x2e
mov rcx, r13
call sym.strchr
test rax, rax
je 0x45bc5c
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, rbx
repne scasb al, byte [rdi]
mov rdx, rbx
not rcx
mov r8, rcx
mov rcx, r13
dec r8
call sym.strncmp
test eax, eax
jne 0x45bc5c
movsxd rbp, dword [rsp + 0xe0]
mov rdx, r13
mov rcx, rbx
mov r8, rbp
call sym.strncpy
mov byte [rbx + rbp - 1], 0
lea r8, str._fqdn__resolved_using_gethostbyaddr.h_name
jmp 0x45bd40
cmp r14d, 3
jle 0x45bc80
lea r9, [rsp + 0x52]
lea r8, str._fqdn__gethostbyaddr__s__s
mov qword [rsp + 0x20], r13
mov edx, 4
mov rcx, rsi
call sym.mettle.exe_sigar_log_printf
lea rax, [rsp + 0x52]
mov qword [rsp + 0x30], 0
mov qword [rsp + 0x48], rax
jmp 0x45bcc6
cmp r14d, 3
jle 0x45bcc1
mov eax, dword [rsp + 0x44]
mov r9, qword [rsp + 0x48]
lea r8, str._fqdn__gethostbyaddr__s_.alias__d__s
mov qword [rsp + 0x28], r13
mov edx, 4
mov rcx, rsi
mov dword [rsp + 0x20], eax
call sym.mettle.exe_sigar_log_printf
inc qword [rsp + 0x30]
mov eax, dword [rsp + 0x30]
mov rdi, qword [rsp + 0x30]
mov dword [rsp + 0x44], eax
mov rax, qword [r12 + 8]
mov r13, qword [rax + rdi*8]
test r13, r13
je 0x45bbaf
mov edx, 0x2e
mov rcx, r13
call sym.strchr
test rax, rax
je 0x45bc95
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, rbx
repne scasb al, byte [rdi]
mov rdx, rbx
not rcx
mov r8, rcx
mov rcx, r13
dec r8
call sym.strncmp
test eax, eax
jne 0x45bc95
movsxd rbp, dword [rsp + 0xe0]
mov rdx, r13
mov rcx, rbx
mov r8, rbp
call sym.strncpy
lea r8, str._fqdn__resolved_using_gethostbyaddr.h_aliases
mov byte [rbx + rbp - 1], 0
mov edx, 4
mov rcx, rsi
call sym.mettle.exe_sigar_log
jmp 0x45bdb2
mov edx, 0x2e
mov rcx, rbx
call sym.strchr
test rax, rax
jne 0x45bdb2
jmp 0x45ba1b
lea r9, [rsp + 0x52]
mov edx, dword [r13]
mov rcx, rsi
mov r8, r9
mov qword [rsp + 0x30], r9
call sym.sigar_inet_ntoa
call qword [sym.imp.msvcrt.dll__errno]
mov edx, dword [rax]
mov rcx, rsi
call sym.mettle.exe_sigar_strerror
mov r9, qword [rsp + 0x30]
lea r8, str._fqdn__gethostbyaddr__s__failed:__s
mov qword [rsp + 0x20], rax
mov edx, 4
mov rcx, rsi
call sym.mettle.exe_sigar_log_printf
jmp 0x45bbaf
mov eax, r15d
add rsp, 0x88
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret