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

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r14
push r15
sub rsp, 0x98
mov rax, qword [0x1402e0068]
xor rax, rsp
mov qword [rsp + 0x78], rax
movzx r15d, byte [rcx + 1]
mov r14, rcx
movzx ecx, word [rcx + 2]
mov edi, r9d
mov rsi, r8
mov qword [rsp + 0x30], r8
mov rbp, rdx
call qword [sym.imp.WS2_32.dll_ntohs]
movzx ebx, ax
test r15b, 4
je 0x1400a3b67
movzx ecx, word [r14 + 0xc]
call qword [sym.imp.WS2_32.dll_ntohs]
movzx r11d, ax
movzx eax, bx
sub rax, 0x10
cmp r11, rax
jbe 0x1400a3e9b
add edi, 0xfffffff0
mov ebx, 1
mov dword [rsp + 0x48], edi
jne 0x1400a3b8d
test bl, r15b
je 0x1400a3de1
mov eax, ebx
lock xadd dword [0x1402e8454], eax
jmp 0x1400a3de1
mov ecx, edi
mov qword [rsp + 0x40], rcx
cmp rcx, 0xc
jae 0x1400a3ba9
mov eax, ebx
lock xadd dword [0x1402e8458], eax
jmp 0x1400a3de1
mov qword [rsp + 0x88], r13
mov r13d, reloc.WS2_32.dll_inet_ntoa
cmp edi, r13d
jbe 0x1400a3dd9
mov qword [rsp + 0x90], r12
nop dword [rax + rax]
mov edi, r13d
lea rax, [rdi + 4]
cmp rax, rcx
ja 0x1400a3d91
movzx r12d, byte [rdi + r14 + 0x10]
movzx ecx, word [rdi + r14 + 0x12]
mov byte [rsp + 0x50], r12b
call qword [sym.imp.WS2_32.dll_ntohs]
movzx esi, ax
cmp esi, 4
jb 0x1400a3dcc
test r12b, r12b
jne 0x1400a3ca0
cmp byte [rbp + 0x722], r12b
jne 0x1400a3dc5
cmp esi, 0x10
jbe 0x1400a3dbe
cmp esi, 0x2f
jae 0x1400a3c36
mov eax, ebx
lock xadd dword [0x1402e845c], eax
jmp 0x1400a3d60
lea rax, [rdi + 0x2f]
cmp rax, qword [rsp + 0x40]
ja 0x1400a3db7
mov rax, qword [rdi + r14 + 0x20]
lea rcx, [rsp + 0x51]
mov qword [rcx], rax
mov rax, qword [rdi + r14 + 0x28]
mov qword [rcx + 8], rax
mov rax, qword [rdi + r14 + 0x30]
mov qword [rcx + 0x10], rax
mov eax, dword [rdi + r14 + 0x38]
mov dword [rcx + 0x18], eax
movzx eax, word [rdi + r14 + 0x3c]
mov word [rcx + 0x1c], ax
movzx eax, byte [rdi + r14 + 0x3e]
mov byte [rcx + 0x1e], al
mov eax, dword [rdi + r14 + 0x14]
mov dword [rsp + 0x70], eax
test bl, r15b
je 0x1400a3d46
mov eax, ebx
lock xadd dword [0x1402e844c], eax
jmp 0x1400a3d46
cmp r12b, 0x40
jne 0x1400a3d37
cmp byte [rbp + 0x722], 0
je 0x1400a3db0
cmp esi, 0x14
jbe 0x1400a3da9
cmp esi, 0x33
jae 0x1400a3cd4
mov eax, ebx
lock xadd dword [0x1402e845c], eax
jmp 0x1400a3d60
lea rax, [rdi + 0x33]
cmp rax, qword [rsp + 0x40]
ja 0x1400a3da2
mov rax, qword [rdi + r14 + 0x24]
lea rcx, [rsp + 0x51]
mov qword [rcx], rax
mov rax, qword [rdi + r14 + 0x2c]
mov qword [rcx + 8], rax
mov rax, qword [rdi + r14 + 0x34]
mov qword [rcx + 0x10], rax
mov eax, dword [rdi + r14 + 0x3c]
mov dword [rcx + 0x18], eax
movzx eax, word [rdi + r14 + 0x40]
mov word [rcx + 0x1c], ax
movzx eax, byte [rdi + r14 + 0x42]
mov byte [rcx + 0x1e], al
mov eax, dword [rdi + r14 + 0x14]
mov dword [rsp + 0x70], eax
test bl, r15b
je 0x1400a3d46
mov eax, ebx
lock xadd dword [0x1402e844c], eax
jmp 0x1400a3d46
test bl, r15b
je 0x1400a3d46
mov eax, ebx
lock xadd dword [0x1402e8450], eax
mov r8, qword [rsp + 0x30]
lea rdx, [rsp + 0x50]
movzx r9d, r15b
mov rcx, rbp
call fcn.1400a1220
test eax, eax
jne 0x1400a3d80
mov rcx, qword [rsp + 0x40]
lea eax, [rsi + 3]
and eax, 0xfffffffc
add r13d, eax
cmp r13d, dword [rsp + 0x48]
jb 0x1400a3bd0
mov rsi, qword [rsp + 0x30]
jmp 0x1400a3dd1
mov eax, ebx
lock xadd dword [0x1402e8460], eax
mov rsi, qword [rsp + 0x30]
jmp 0x1400a3dd1
mov eax, ebx
lock xadd dword [0x1402e8458], eax
mov rsi, qword [rsp + 0x30]
jmp 0x1400a3dd1
mov rsi, qword [rsp + 0x30]
jmp 0x1400a3dd1
mov rsi, qword [rsp + 0x30]
jmp 0x1400a3dd1
mov rsi, qword [rsp + 0x30]
jmp 0x1400a3dd1
mov rsi, qword [rsp + 0x30]
jmp 0x1400a3dd1
mov rsi, qword [rsp + 0x30]
jmp 0x1400a3dd1
mov rsi, qword [rsp + 0x30]
jmp 0x1400a3dd1
mov rsi, qword [rsp + 0x30]
mov r12, qword [rsp + 0x90]
mov r13, qword [rsp + 0x88]
and r15b, bl
jne 0x1400a3e5e
lock xadd dword [0x1402e8448], ebx
mov ecx, dword [r14 + 4]
call qword [sym.imp.WS2_32.dll_ntohl]
mov ecx, dword [r14 + 8]
mov dword [rsp + 0x38], eax
call qword [sym.imp.WS2_32.dll_ntohl]
mov ecx, dword [rsp + 0x38]
mov dword [rsp + 0x3c], eax
test ecx, ecx
je 0x1400a3e66
test eax, eax
je 0x1400a3e66
cmp ecx, eax
jbe 0x1400a3e54
sub ecx, eax
je 0x1400a3e54
mov eax, dword [rbp + 0x5cc]
xor edx, edx
cmp ecx, eax
jbe 0x1400a3e34
sub ecx, eax
mov dword [rbp + 0x584], ecx
jmp 0x1400a3e3a
mov dword [rbp + 0x584], edx
mov rax, qword [rbp + 8]
mov ecx, dword [rax + 0x1d8]
cmp dword [rbp + 0x584], ecx
jae 0x1400a3e66
mov dword [rbp + 0x584], edx
jmp 0x1400a3e66
xor edx, edx
mov dword [rbp + 0x584], edx
jmp 0x1400a3e66
lock xadd dword [0x1402e8444], ebx
test r15b, r15b
je 0x1400a3e9b
cmp byte [rbp + 0x731], 0
jne 0x1400a3e9b
cmp byte [rbp + 0x70c], 0
je 0x1400a3e9b
lea rax, [rsp + 0x3c]
lea r9, [rsp + 0x38]
mov r8, r14
mov rdx, rsi
mov rcx, rbp
mov qword [rsp + 0x20], rax
call qword [rbp + 0x448]
mov rcx, qword [rsp + 0x78]
xor rcx, rsp
call fcn.1401e6720
add rsp, 0x98
pop r15
pop r14
pop rdi
pop rsi
pop rbp
pop rbx
ret