Function at 0x14004c540
Capabilities:
Get hostname

Disassembly:
mov r11, rsp
push rbp
push rsi
lea rbp, [r11 - 0xb8]
sub rsp, 0x1a8
mov rax, qword [0x140177698]
xor rax, rsp
mov qword [rbp + 0x80], rax
mov rax, qword [rcx]
mov qword [r11 + 0x10], rbx
mov qword [r11 + 0x18], rdi
mov rdi, rcx
mov qword [r11 - 0x18], r13
xor r13b, r13b
mov byte [rax + 0x1998], 0
mov rax, qword [rcx]
mov qword [r11 - 0x28], r15
xor r15d, r15d
mov qword [rsp + 0x38], r15
mov byte [rsp + 0x30], r13b
mov qword [rax + 0x48], 0x7fffffff
mov byte [rsp + 0x20], r13b
mov byte [rsp + 0x21], r13b
call fcn.14004d3b0
mov rcx, rdi
call fcn.14004ca20
lea r8, [rsp + 0x28]
mov byte [rbp - 0x80], r13b
lea rdx, [rbp - 0x80]
mov dword [rsp + 0x28], 0x100
lea ecx, [r15 + 5]
call qword [sym.imp.KERNEL32.dll_GetComputerNameExA]
test eax, eax
jne 0x14004c5ea
call qword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
je 0x14004c5f0
call qword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jne 0x14004c5f0
cmp byte [rbp - 0x80], r15b
jne 0x14004c606
movsd xmm0, qword [str.My_Computer]
mov eax, dword [0x14014f5d8]
movsd qword [rbp - 0x80], xmm0
mov dword [rbp - 0x78], eax
mov byte [rbp + 0x7f], r15b
lea rax, [rbp - 0x80]
mov rcx, 0xffffffffffffffff
inc rcx
cmp byte [rax + rcx], r15b
jne 0x14004c615
mov eax, 0x3f
lea rdx, [rbp - 0x80]
cmp rcx, rax
cmovb rax, rcx
lea rcx, [rsp + 0x41]
movzx r8d, al
mov byte [rsp + 0x40], r8b
call sub.VCRUNTIME140.dll_memcpy
lea rdx, [rdi + 0x2a68]
lea rcx, [rsp + 0x40]
call fcn.140051e10
cmp byte [rdi + 0x2a68], r15b
jne 0x14004c66e
lea rdx, str.My_Computer
lea rcx, [rdi + 0x2a68]
call fcn.1400548f0
mov rcx, rdi
call fcn.140048f40
cmp qword [0x1401afed8], r15
jne 0x14004c6c8
lea rcx, str.Iphlpapi
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov qword [0x1401afed8], rax
test rax, rax
je 0x14004c6c8
lea rdx, str.GetAdaptersAddresses
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1401afee0], rax
test rax, rax
jne 0x14004c6d1
mov rcx, qword [0x1401afed8]
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov qword [0x1401afed8], r15
cmp qword [0x1401afee0], r15
je 0x14004c6eb
lea rcx, [rsp + 0x38]
call fcn.14004dd50
mov esi, eax
test eax, eax
jne 0x14004c6eb
mov rax, qword [rsp + 0x38]
test rax, rax
jne 0x14004c6fc
lea rcx, [rsp + 0x38]
call fcn.14004d9c0
mov esi, eax
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0x1d8], r12
mov qword [rsp + 0x198], r14
test esi, esi
jne 0x14004c9b2
mov r14, qword [rdi]
mov r12, r15
add r14, 0x19a0
mov rbx, rax
test rax, rax
je 0x14004c805
nop dword [rax]
mov rax, qword [rbx + 0x18]
test rax, rax
je 0x14004c7f4
cmp word [rax], 2
jne 0x14004c7f4
mov ecx, dword [rbx + 0x10]
mov eax, ecx
and eax, 0x11
cmp al, 0x11
jne 0x14004c7f4
test cl, 4
je 0x14004c76e
test r15, r15
mov rax, rbx
cmovne rax, r15
mov r15, rax
jmp 0x14004c7f4
lea r8, [rsp + 0x28]
mov rdx, rbx
mov rcx, rdi
call fcn.14004c1a0
mov esi, eax
test eax, eax
jne 0x14004c9b2
mov rdx, qword [rsp + 0x28]
mov eax, 1
movzx r13d, r13b
cmp byte [rdx + 0x3df7], 1
cmove r13d, eax
cmp dword [rbx + 0x40], r12d
je 0x14004c7b8
mov rcx, qword [rdi]
mov rax, qword [rbx + 0x48]
cmp rax, qword [rcx + 0x48]
jge 0x14004c7b8
mov qword [rcx + 0x48], rax
cmp byte [rsp + 0x20], r12b
jne 0x14004c7e1
mov rcx, qword [rdi]
movups xmm0, xmmword [rdx + 0x3d88]
mov byte [rsp + 0x20], 1
movups xmmword [rcx + 0x19b4], xmm0
mov eax, dword [rdx + 0x3d98]
mov dword [rcx + 0x19c4], eax
mov qword [r14], rdx
lea r14, [rdx + 0x3e08]
mov rax, qword [rdi]
inc dword [rax + 0x199c]
mov rbx, qword [rbx]
test rbx, rbx
jne 0x14004c730
mov rax, qword [rsp + 0x38]
cmp dword [reloc.WS2_32.dll_accept], r12d
je 0x14004c8dc
mov rbx, rax
test rax, rax
je 0x14004c8dc
nop
mov rax, qword [rbx + 0x18]
test rax, rax
je 0x14004c8d0
cmp word [rax], 0x17
jne 0x14004c8d0
mov ecx, dword [rbx + 0x10]
mov eax, ecx
and eax, 0x11
cmp al, 0x11
jne 0x14004c8d0
test cl, 4
je 0x14004c85b
test r12, r12
mov rax, rbx
cmovne rax, r12
mov r12, rax
jmp 0x14004c8d0
lea r8, [rsp + 0x28]
mov rdx, rbx
mov rcx, rdi
call fcn.14004c1a0
mov esi, eax
test eax, eax
jne 0x14004c9b2
mov eax, dword [rsp + 0x30]
mov ecx, 1
mov rdx, qword [rsp + 0x28]
movzx eax, al
cmp byte [rdx + 0x3df7], 1
cmove eax, ecx
mov dword [rsp + 0x30], eax
cmp byte [rsp + 0x21], sil
jne 0x14004c8bd
mov rcx, qword [rdi]
movups xmm0, xmmword [rdx + 0x3d88]
mov byte [rsp + 0x21], 1
movups xmmword [rcx + 0x3cec], xmm0
mov eax, dword [rdx + 0x3d98]
mov dword [rcx + 0x3cfc], eax
mov qword [r14], rdx
lea r14, [rdx + 0x3e08]
mov rax, qword [rdi]
inc dword [rax + 0x199c]
mov rbx, qword [rbx]
test rbx, rbx
jne 0x14004c820
test r13b, r13b
jne 0x14004c948
test r15, r15
je 0x14004c948
lea r8, [rsp + 0x28]
mov rdx, r15
mov rcx, rdi
call fcn.14004c1a0
mov esi, eax
test eax, eax
jne 0x14004c9b2
mov rax, qword [rdi]
mov r8, qword [rsp + 0x28]
mov byte [rax + 0x1998], 1
cmp byte [rsp + 0x20], sil
jne 0x14004c935
mov rcx, qword [rdi]
movups xmm0, xmmword [r8 + 0x8c]
movups xmmword [rcx + 0x19b4], xmm0
mov eax, dword [r8 + 0x9c]
mov dword [rcx + 0x19c4], eax
mov qword [r14], r8
lea r14, [r8 + 0x3e08]
mov rax, qword [rdi]
inc dword [rax + 0x199c]
cmp byte [rsp + 0x30], 0
jne 0x14004c9a8
test r12, r12
je 0x14004c9a8
lea r8, [rsp + 0x28]
mov rdx, r12
mov rcx, rdi
call fcn.14004c1a0
mov esi, eax
test eax, eax
jne 0x14004c9b2
cmp dword [reloc.WS2_32.dll_accept], eax
mov r8, qword [rsp + 0x28]
je 0x14004c99c
cmp byte [rsp + 0x21], al
jne 0x14004c99c
mov rdx, qword [rdi]
movups xmm0, xmmword [r8 + 0x8c]
movups xmmword [rdx + 0x3cec], xmm0
mov eax, dword [r8 + 0x9c]
mov dword [rdx + 0x3cfc], eax
mov qword [r14], r8
mov rax, qword [rdi]
inc dword [rax + 0x199c]
mov rcx, rdi
call fcn.14004ae40
jmp 0x14004c9ba
mov rcx, rdi
call fcn.14004d3b0
mov rcx, qword [rsp + 0x38]
mov r15, qword [rsp + 0x190]
mov r14, qword [rsp + 0x198]
mov r13, qword [rsp + 0x1a0]
mov r12, qword [rsp + 0x1d8]
mov rdi, qword [rsp + 0x1d0]
mov rbx, qword [rsp + 0x1c8]
test rcx, rcx
je 0x14004c9f9
call fcn.14004d900
mov eax, esi
mov rcx, qword [rbp + 0x80]
xor rcx, rsp
call fcn.14006a270
add rsp, 0x1a8
pop rsi
pop rbp
ret