Function at 0x58ee50
Capabilities:
Contain obfuscated stackstrings

Disassembly:
mov eax, 0x98
call fcn.00693bc0
sub rsp, rax
mov rax, qword [0x0072f1d0]
mov qword [rsp + 0x70], rax
cmp dword [rcx], 0x300
mov qword [rsp + 0xb8], rbx
mov qword [rsp + 0x90], rbp
mov qword [rsp + 0x88], rsi
mov rbx, r8
mov rbp, rdx
mov rsi, rcx
jne 0x58eeaa
mov rcx, qword [rcx + 0x80]
cmp dword [rcx + 0x49c], 0
jne 0x58eeaa
mov rax, rdx
jmp 0x58f362
mov qword [rsp + 0x80], rdi
lea rdi, [rdx + 2]
cmp rdi, rbx
jae 0x58ef4a
cmp dword [rsi + 0xa8], 0
jne 0x58eefe
cmp dword [rsi + 0x1d0], 1
jne 0x58eefe
mov rax, qword [rsi + 0x130]
cmp qword [rax + 0x108], 0
je 0x58eefe
mov eax, ebx
sub eax, edi
cmp eax, 4
js 0x58ef4a
mov byte [rdi], 0
mov byte [rdi + 1], 0
mov byte [rdi + 2], 0
mov byte [rdi + 3], 0
add rdi, 4
mov rax, qword [rsi + 0x80]
cmp dword [rax + 0x49c], 0
je 0x58efaa
lea r8, [rsp + 0x30]
xor r9d, r9d
xor edx, edx
mov rcx, rsi
call fcn.0059f2b0
test eax, eax
jne 0x58ef51
mov dword [rsp + 0x20], 0x2dc
lea r9, [0x00737bf8]
mov ecx, reloc.WS2_32.dll_sendto
mov edx, 0x116
lea r8d, [rcx + 0x30]
call fcn.005ad900
xor eax, eax
jmp 0x58f35a
movsxd r9, dword [rsp + 0x30]
mov rcx, rbx
sub rcx, r9
sub rcx, rdi
cmp rcx, 4
js 0x58ef4a
mov byte [rdi], 0xff
mov byte [rdi + 1], 1
mov eax, r9d
sar eax, 8
mov byte [rdi + 3], r9b
add rdi, 4
mov byte [rdi - 2], al
lea r8, [rsp + 0x30]
mov rcx, rsi
mov rdx, rdi
call fcn.0059f2b0
test eax, eax
jne 0x58efa2
mov dword [rsp + 0x20], 0x2e7
lea r9, [0x00737c08]
jmp 0x58ef37
movsxd rax, dword [rsp + 0x30]
add rdi, rax
cmp qword [rsi + 0x208], 0
je 0x58f03d
mov eax, ebx
sub eax, edi
sub eax, 5
js 0x58ef4a
mov rcx, qword [rsi + 0x200]
cmp rcx, rax
ja 0x58ef4a
cmp rcx, 0xff
jbe 0x58efee
mov dword [rsp + 0x20], 0x2f8
lea r9, [0x00737c18]
jmp 0x58ef37
mov byte [rdi], 0
mov byte [rdi + 1], reloc.WS2_32.dll_inet_addr
mov rax, qword [rsi + 0x200]
inc rax
add rdi, 5
shr rax, 8
mov rcx, rdi
mov byte [rdi - 3], al
movzx eax, byte [rsi + 0x200]
inc al
mov byte [rdi - 2], al
movzx eax, byte [rsi + 0x200]
mov byte [rdi - 1], al
mov r8, qword [rsi + 0x200]
mov rdx, qword [rsi + 0x208]
call sub.msvcrt.dll_memcpy
add rdi, qword [rsi + 0x200]
cmp dword [rsi + 0x1fc], 0
je 0x58f07e
xor r9d, r9d
xor r8d, r8d
mov rcx, rsi
lea edx, [r9 + 0x20]
call fcn.00575660
bt eax, 0xe
jb 0x58f07e
mov eax, ebx
sub eax, edi
cmp eax, 4
js 0x58ef4a
mov byte [rdi], 0
mov byte [rdi + 1], reloc.WLDAP32.dll_Ordinal_35
mov byte [rdi + 2], 0
mov byte [rdi + 3], 0
add rdi, 4
cmp dword [rsi + 0x1d8], 0
je 0x58f0a7
mov eax, ebx
sub eax, edi
cmp eax, 4
js 0x58ef4a
mov byte [rdi], 0
mov byte [rdi + 1], 5
mov byte [rdi + 2], 0
mov byte [rdi + 3], 0
add rdi, 4
mov rax, qword [rsi + 8]
cmp dword [rax], 0xfeff
jne 0x58f12f
cmp qword [rsi + 0x278], 0
je 0x58f12f
lea r8, [rsp + 0x34]
xor r9d, r9d
xor edx, edx
mov rcx, rsi
call fcn.0059ee30
movsxd r9, dword [rsp + 0x34]
mov rcx, rbx
sub rcx, r9
sub rcx, rdi
cmp rcx, 4
js 0x58ef4a
mov byte [rdi], 0
mov byte [rdi + 1], recvfrom
mov eax, r9d
sar eax, 8
mov byte [rdi + 3], r9b
add rdi, 4
mov byte [rdi - 2], al
lea r8, [rsp + 0x34]
mov rcx, rsi
mov rdx, rdi
call fcn.0059ee30
test eax, eax
je 0x58f127
mov dword [rsp + 0x20], 0x336
lea r9, [0x00737c28]
jmp 0x58ef37
movsxd rax, dword [rsp + 0x34]
add rdi, rax
mov rax, qword [rsi + 0x80]
mov rcx, qword [rax + 0x3a0]
mov eax, dword [rcx + 0x10]
movzx eax, ax
cmp eax, 0x80
je 0x58f155
cmp eax, 0x81
jne 0x58f263
xor r9d, r9d
xor r8d, r8d
mov rcx, rsi
lea edx, [r9 + 0x20]
call fcn.00575660
bt eax, 0x1f
jae 0x58f263
mov rax, rbx
mov byte [rsp + 0x48], 0xfd
mov byte [rsp + 0x49], 0xe8
sub rax, rdi
mov byte [rsp + 0x4a], 0
mov byte [rsp + 0x4b], reloc.WLDAP32.dll_Ordinal_32
cmp rax, 0x24
mov byte [rsp + 0x4c], gethostbyaddr
mov byte [rsp + 0x4d], reloc.WLDAP32.dll_Ordinal_30
mov byte [rsp + 0x4e], gethostbyaddr
mov byte [rsp + 0x4f], 8
mov byte [rsp + 0x50], 6
mov byte [rsp + 0x51], 6
mov byte [rsp + 0x52], Ordinal_46
mov byte [rsp + 0x53], 0x85
mov byte [rsp + 0x54], 3
mov byte [rsp + 0x55], 2
mov byte [rsp + 0x56], 2
mov byte [rsp + 0x57], 9
mov byte [rsp + 0x58], gethostbyaddr
mov byte [rsp + 0x59], 8
mov byte [rsp + 0x5a], 6
mov byte [rsp + 0x5b], 6
mov byte [rsp + 0x5c], Ordinal_46
mov byte [rsp + 0x5d], 0x85
mov byte [rsp + 0x5e], 3
mov byte [rsp + 0x5f], 2
mov byte [rsp + 0x60], 2
mov byte [rsp + 0x61], reloc.WS2_32.dll_shutdown
mov byte [rsp + 0x62], gethostbyaddr
mov byte [rsp + 0x63], 8
mov byte [rsp + 0x64], 6
mov byte [rsp + 0x65], 6
mov byte [rsp + 0x66], Ordinal_46
mov byte [rsp + 0x67], 0x85
mov byte [rsp + 0x68], 3
mov byte [rsp + 0x69], 2
mov byte [rsp + 0x6a], 2
mov byte [rsp + 0x6b], reloc.WS2_32.dll_socket
jl 0x58ef4a
lea rcx, [rsp + 0x48]
add rdi, 0x24
mov rax, qword [rcx]
mov qword [rdi - 0x24], rax
mov rax, qword [rcx + 8]
mov qword [rdi - 0x1c], rax
mov rax, qword [rcx + 0x10]
mov qword [rdi - 0x14], rax
mov rax, qword [rcx + 0x18]
mov qword [rdi - 0xc], rax
mov eax, dword [rcx + 0x20]
mov dword [rdi - 4], eax
test byte [rsi + 0x280], 1
je 0x58f2a6
mov rax, rbx
sub rax, rdi
cmp rax, 5
js 0x58ef4a
mov byte [rdi], 0
mov byte [rdi + 1], reloc.WS2_32.dll_ntohs
mov byte [rdi + 2], 0
mov byte [rdi + 3], 1
test byte [rsi + 0x280], 4
je 0x58f29e
mov byte [rdi + 4], 2
add rdi, 5
jmp 0x58f2a6
mov byte [rdi + 4], 1
add rdi, 5
mov rcx, qword [rsi + 0x80]
mov eax, dword [rcx + 0x4a0]
mov dword [rcx + 0x4a0], 0
test eax, eax
je 0x58f33e
mov rax, qword [rsi + 0x170]
cmp qword [rax + 0x2a0], 0
je 0x58f33e
mov r9, qword [rax + 0x2a8]
lea r8, [rsp + 0x38]
lea rdx, [rsp + 0x40]
mov rcx, rsi
call qword [rax + 0x2a0]
test eax, eax
jne 0x58f33e
mov ecx, dword [rsp + 0x38]
sub ebx, edi
sub ebx, ecx
cmp ebx, 4
js 0x58ef4a
mov rdx, qword [rsp + 0x40]
mov byte [rdi], reloc.WS2_32.dll_gethostbyaddr
mov byte [rdi + 1], reloc.WS2_32.dll_WSACleanup
mov eax, ecx
mov byte [rdi + 3], cl
mov rbx, rcx
shr eax, 8
mov r8, rcx
add rdi, 4
mov byte [rdi - 2], al
mov rcx, rdi
call sub.msvcrt.dll_memcpy
mov rax, qword [rsi + 0x80]
add rdi, rbx
mov dword [rax + 0x4a0], 1
mov eax, edi
sub eax, ebp
sub eax, 2
jne 0x58f34c
mov rax, rbp
jmp 0x58f35a
mov ecx, eax
mov byte [rbp + 1], al
mov rax, rdi
sar ecx, 8
mov byte [rbp], cl
mov rdi, qword [rsp + 0x80]
mov rsi, qword [rsp + 0x88]
mov rbp, qword [rsp + 0x90]
mov rbx, qword [rsp + 0xb8]
mov rcx, qword [rsp + 0x70]
call fcn.00693b90
add rsp, 0x98
ret