Function at 0x4b20f0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 0x10], rdx
mov r11, rsp
sub rsp, 0x68
mov eax, dword [rdx + 0x1a8]
mov qword [r11 + 0x18], rbx
mov qword [r11 + 0x20], rbp
mov rbx, rcx
mov qword [r11 - 8], rsi
mov rsi, qword [rcx]
mov ecx, dword [rdx + 0x50]
mov dword [rsp + 0x70], eax
mov eax, dword [rdx + 0x5c]
mov qword [r11 - 0x10], rdi
mov qword [r11 - 0x20], r13
mov r13d, dword [rdx + 0x54]
test eax, eax
mov dword [rsp + 0x20], ecx
mov qword [r11 - 0x28], r14
mov r14, rdx
mov qword [r11 - 0x30], r15
mov r15d, dword [rdx + 0x1e8]
mov edx, 1
cmove eax, edx
mov rdx, qword [rbx + 8]
add r13d, ecx
mov dword [rsp + 0x24], eax
movsxd rax, dword [rbx + 0x3c]
lea rcx, [rax + rax*2]
movsxd rax, dword [r14 + 0x60]
lea rdi, [rdx + rcx*8]
lea rcx, [rax + rax*2]
lea rbp, [rdx + rcx*8]
lea rdx, [r11 + 8]
mov rcx, rbx
call fcn.004b1e10
cmp byte [r14 + 0x20], 0
je 0x4b218b
cmp byte [r14 + 0x21], 0
je 0x4b218b
mov al, 1
jmp 0x4b218d
xor eax, eax
and dword [rbx + 0x8c], 0xffffff7f
and eax, 1
shl eax, 7
or dword [rbx + 0x8c], eax
cmp byte [r14 + 0x1f2], 0
je 0x4b21b9
mov eax, 0xa
cmp r13d, eax
cmovl r13d, eax
mov r8, rbp
xor edx, edx
mov rcx, rdi
sub r8, rdi
call sub.msvcrt.dll_memset
mov r14d, dword [rsp + 0x24]
mov r11b, dil
and r11d, 7
mov qword [rsp + 0x50], r12
add rdi, r11
and dword [rbx + 0x8c], 0xffffffdf
mov rcx, qword [rbx + 0x10]
xor r12d, r12d
test rcx, rcx
jne 0x4b2212
mov edx, r13d
imul edx, edx, 0x38
add edx, 7
and edx, 0xfffffff8
movsxd r8, edx
add r8, rdi
cmp r8, rbp
ja 0x4b220f
mov rcx, rdi
mov rdi, r8
jmp 0x4b2212
mov r12d, edx
mov qword [rbx + 0x10], rcx
mov rcx, qword [rbx + 0x68]
test rcx, rcx
jne 0x4b2241
mov edx, r15d
imul edx, edx, 0x38
add edx, 7
and edx, 0xfffffff8
movsxd r8, edx
add r8, rdi
cmp r8, rbp
ja 0x4b223e
mov rcx, rdi
mov rdi, r8
jmp 0x4b2241
add r12d, edx
mov rdx, qword [rbx + 0x18]
mov qword [rbx + 0x68], rcx
test rdx, rdx
jne 0x4b2272
mov eax, dword [rsp + 0x70]
lea ecx, [rax*8 + 7]
and ecx, 0xfffffff8
movsxd r8, ecx
add r8, rdi
cmp r8, rbp
ja 0x4b226f
mov rdx, rdi
mov rdi, r8
jmp 0x4b2272
add r12d, ecx
mov qword [rbx + 0x18], rdx
mov rdx, qword [rbx + 0x70]
test rdx, rdx
jne 0x4b22a0
lea ecx, [r15*8 + 7]
and ecx, 0xfffffff8
movsxd r8, ecx
add r8, rdi
cmp r8, rbp
ja 0x4b229d
mov rdx, rdi
mov rdi, r8
jmp 0x4b22a0
add r12d, ecx
mov qword [rbx + 0x70], rdx
mov rdx, qword [rbx + 0x60]
test rdx, rdx
jne 0x4b22d1
mov eax, dword [rsp + 0x20]
lea ecx, [rax*8 + 7]
and ecx, 0xfffffff8
movsxd r8, ecx
add r8, rdi
cmp r8, rbp
ja 0x4b22ce
mov rdx, rdi
mov rdi, r8
jmp 0x4b22d1
add r12d, ecx
mov qword [rbx + 0x60], rdx
mov rdx, qword [rbx + 0x118]
test rdx, rdx
jne 0x4b22fb
lea ecx, [r14 + 7]
and ecx, 0xfffffff8
movsxd rax, ecx
add rax, rdi
cmp rax, rbp
ja 0x4b22f8
mov rdx, rdi
jmp 0x4b22fb
add r12d, ecx
test r12d, r12d
mov qword [rbx + 0x118], rdx
je 0x4b2418
test rsi, rsi
movsxd rbp, r12d
je 0x4b233b
cmp byte [rsi + 0x50], 0
je 0x4b2320
xor edi, edi
jmp 0x4b2411
cmp byte [rsi + 0x14a], 0
je 0x4b233b
movzx eax, word [rsi + 0x148]
cmp rbp, rax
jbe 0x4b2391
inc dword [rsi + 0x158]
test r12d, r12d
je 0x4b23e3
cmp rbp, 0x7fffff00
jae 0x4b23e3
cmp dword [reloc.WS2_32.dll_accept], 0
je 0x4b23d1
mov rcx, qword [0x00772b88]
test rcx, rcx
je 0x4b236c
call qword [0x0072d0f8]
lea rdx, [rsp + 0x28]
mov ecx, ebp
call fcn.0043a720
mov rcx, qword [0x00772b88]
test rcx, rcx
je 0x4b23ec
call qword [0x0072d108]
mov rdi, qword [rsp + 0x28]
jmp 0x4b23f1
mov rdi, qword [rsi + 0x160]
test rdi, rdi
jne 0x4b23a5
inc dword [rsi + 0x15c]
jmp 0x4b233b
mov rax, qword [rdi]
inc dword [rsi + 0x14c]
inc dword [rsi + 0x154]
mov qword [rsi + 0x160], rax
mov eax, dword [rsi + 0x14c]
cmp eax, dword [rsi + 0x150]
jle 0x4b23ff
mov dword [rsi + 0x150], eax
jmp 0x4b23ff
mov ecx, ebp
call qword [0x0072d098]
mov rdi, rax
mov qword [rsp + 0x28], rax
jmp 0x4b23f1
xor edi, edi
mov qword [rsp + 0x28], rdi
jmp 0x4b23f6
mov rdi, qword [rsp + 0x28]
test rdi, rdi
jne 0x4b23ff
test rsi, rsi
je 0x4b23ff
mov byte [rsi + 0x50], 1
test rdi, rdi
je 0x4b2411
mov r8, rbp
xor edx, edx
mov rcx, rdi
call sub.msvcrt.dll_memset
mov qword [rbx + 0xe8], rdi
mov rdi, qword [rbx + 0xe8]
movsxd rbp, r12d
add rbp, rdi
test r12d, r12d
je 0x4b2434
cmp byte [rsi + 0x50], 0
je 0x4b21e4
cmp qword [rbx + 0x68], 0
mov eax, dword [rsp + 0x20]
mov r12, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x58]
mov rbp, qword [rsp + 0x88]
mov dword [rbx + 0x40], eax
mov eax, r14d
mov dword [rbx + 0x110], r14d
mov r14, qword [rsp + 0x78]
je 0x4b248f
test r15d, r15d
mov word [rbx + 0x78], r15w
jle 0x4b248f
xor ecx, ecx
mov rdx, r15
mov rax, qword [rbx + 0x68]
add rcx, 0x38
dec rdx
mov word [rcx + rax - 0x30], 1
mov rax, qword [rbx + 0x68]
mov qword [rcx + rax - 0x10], rsi
jne 0x4b2472
mov rcx, qword [rbx + 0x70]
mov r15, qword [rsp + 0x38]
test rcx, rcx
je 0x4b24d5
movsx rax, word [r14 + 0x1ec]
mov word [rbx + 0x7a], ax
mov rdx, qword [r14 + 0x208]
mov r8, rax
shl r8, 3
call sub.msvcrt.dll_memcpy
movsxd r8, dword [r14 + 0x1ec]
mov rcx, qword [r14 + 0x208]
shl r8, 3
xor edx, edx
call sub.msvcrt.dll_memset
mov rax, qword [rbx + 0x10]
test rax, rax
je 0x4b251d
add rax, 0xffffffffffffffc8
movsxd rdx, r13d
mov dword [rbx + 0x38], r13d
cmp rdx, 1
mov qword [rbx + 0x10], rax
jl 0x4b251d
mov ecx, reloc.WS2_32.dll_getservbyport
nop
nop
mov rax, qword [rbx + 0x10]
add rcx, 0x38
dec rdx
mov word [rcx + rax - 0x30], 0x80
mov rax, qword [rbx + 0x10]
mov qword [rcx + rax - 0x10], rsi
jne 0x4b2500
mov al, byte [r14 + 0x1f2]
mov r13, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x60]
xor eax, dword [rbx + 0x8c]
mov r14, qword [rsp + 0x40]
mov dword [rbx + 0x80], 0xffffffff
and eax, 3
mov byte [rbx + 0x8a], 2
mov dword [rbx + 0x44], 0xbdf20da3
xor dword [rbx + 0x8c], eax
xor eax, eax
mov dword [rbx + 0x7c], 1
mov dword [rbx + 0x84], eax
mov dword [rbx + 0x90], eax
mov dword [rbx + 0x9c], eax
mov qword [rbx + 0xc8], rax
mov byte [rbx + 0x8b], 0xff
mov rbx, qword [rsp + 0x80]
add rsp, 0x68
ret