Function at 0x1801b39e0
Capabilities:
Get hostname
Send data
Send data on socket

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x50
mov rax, qword [0x18029e198]
xor rax, rsp
mov qword [rsp + 0x48], rax
xor r14d, r14d
mov dword [rsp + 0x30], r8d
mov r15, rdx
mov r13, rcx
call fcn.1801b3660
mov rbx, 0xffffffffffffffff
mov rdi, rbx
nop dword [rax + rax]
inc rdi
cmp byte [r15 + rdi], r14b
jne 0x1801b3a30
mov ecx, pe_nt_image_headers64
inc edi
xor ebp, ebp
call fcn.1801aecb0
mov rsi, rax
test rax, rax
je 0x1801b3a76
mov edx, pe_nt_image_headers64
mov rcx, rax
call sub.WS2_32.dll_gethostname
cmp eax, ebx
je 0x1801b3a6e
cmp byte [rsi + rbx + 1], bpl
lea rbx, [rbx + 1]
jne 0x1801b3a60
lea ebp, [rbx + 1]
mov rcx, rsi
call fcn.18010fbc0
lea r12d, [rdi + rbp]
mov r8d, 0x12c
lea edx, [r12 + 0x20]
mov ecx, reloc.WS2_32.dll_select
call fcn.1801aefd0
mov rsi, rax
test rax, rax
je 0x1801b3c33
xor eax, eax
xorps xmm0, xmm0
movups xmmword [rsi + 8], xmm0
mov qword [rsi + 0x18], rax
test r13, r13
je 0x1801b3b48
mov ebx, dword [r13]
mov eax, dword [0x18029ccf8]
and ebx, 1
and eax, 0xe00000
or ebx, eax
call fcn.1801b1cc0
mov ecx, dword [rsp + 0x30]
movzx eax, al
shl eax, 0x18
or ebx, eax
mov byte [rsi + 8], bl
mov eax, ebx
shr eax, 8
mov byte [rsi + 9], al
mov eax, ebx
shr eax, 0x10
mov byte [rsi + 0xa], al
shr ebx, 0x18
mov byte [rsi + 0xb], bl
movzx eax, byte [r13 + 4]
mov byte [rsi + 0xc], al
movzx eax, byte [r13 + 5]
mov byte [rsi + 0xd], al
movzx eax, byte [r13 + 6]
mov byte [rsi + 0xe], al
movzx eax, byte [r13 + 7]
mov byte [rsi + 0xf], al
movzx eax, byte [r13 + 8]
mov byte [rsi + 0x10], al
movzx eax, byte [r13 + 9]
mov byte [rsi + 0x11], al
movzx eax, byte [r13 + 0xa]
mov byte [rsi + 0x12], al
movzx eax, byte [r13 + 0xb]
mov byte [rsi + 0x13], al
mov eax, ecx
shr eax, 8
mov byte [rsi + 0x1d], al
mov eax, ecx
shr eax, 0x10
mov byte [rsi + 0x1c], cl
shr ecx, 0x18
mov byte [rsi + 0x1f], cl
mov byte [rsi + 0x1e], al
mov eax, edi
mov r8d, edi
shr eax, 8
lea rcx, [rsi + 0x20]
mov byte [rsi + 0x15], al
mov rdx, r15
mov eax, edi
mov byte [rsi + 0x14], dil
shr eax, 0x10
mov byte [rsi + 0x16], al
mov eax, edi
shr eax, 0x18
mov byte [rsi + 0x17], al
mov eax, ebp
shr eax, 8
mov byte [rsi + 0x19], al
mov eax, ebp
shr eax, 0x10
mov byte [rsi + 0x1a], al
mov eax, ebp
shr eax, 0x18
mov byte [rsi + 0x1b], al
mov byte [rsi + 0x18], bpl
call fcn.18020b840
lea rcx, [rdi + 0x20]
xor ebx, ebx
add rcx, rsi
jne 0x1801b3bac
mov ecx, ebp
call fcn.1801aecb0
mov rbx, rax
test rax, rax
je 0x1801b3bbb
mov rcx, rax
mov edx, ebp
call sub.WS2_32.dll_gethostname
mov rcx, rbx
call fcn.18010fbc0
mov rbx, qword [0x1802b4568]
test rbx, rbx
je 0x1801b3c33
mov edi, 2
nop dword [rax]
mov word [rsp + 0x38], di
mov eax, dword [rbx + 8]
test eax, eax
je 0x1801b3c26
movzx ecx, word [0x1802b1e80]
mov dword [rsp + 0x3c], eax
call sub.WS2_32.dll_htons
mov rcx, qword [0x18029cd90]
lea r8d, [r12 + 0x20]
mov word [rsp + 0x3a], ax
xor r9d, r9d
lea rax, [rsp + 0x38]
mov dword [rsp + 0x28], reloc.WS2_32.dll_recv
mov rdx, rsi
mov qword [rsp + 0x20], rax
call sub.WS2_32.dll_sendto
xor r14d, r14d
cmp eax, 0xffffffff
setne r14b
je 0x1801b3c2e
mov rbx, qword [rbx]
test rbx, rbx
jne 0x1801b3bd0
test r14d, r14d
jne 0x1801b3c50
cmp dword [0x18029ccf4], 0
jne 0x1801b3c50
mov dword [0x1802b1e50], 0
mov dword [0x18029ccf4], 0x61
mov rcx, rsi
call fcn.18010fbc0
mov eax, r14d
mov rcx, qword [rsp + 0x48]
xor rcx, rsp
call fcn.1801e68c0
lea r11, [rsp + 0x50]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret