Function at 0x18007a020
Capabilities:
Check for software breakpoints

Disassembly:
mov rax, rsp
mov qword [rax + 8], rcx
sub rsp, 0x38
mov qword [rax + 0x20], rbx
mov qword [rax - 8], rbp
mov qword [rax - 0x10], rsi
mov qword [rax - 0x18], rdi
mov qword [rax - 0x20], r12
mov qword [rax - 0x30], r14
mov r9, rcx
xor r14b, r14b
mov qword [rsp], r15
xor r10b, r10b
xor r15b, r15b
mov rdi, rdx
mov ecx, 0x25
xor eax, eax
mov r8, rdx
rep stosb byte [rdi], al
lea r12, [0x1800d18b0]
mov dword [rsp + 0x50], r14d
mov dil, reloc.WS2_32.dll_recv
lea r11, [0x180000000]
nop dword [rax + rax]
movzx edx, byte [r9]
inc r9
lea eax, [rdx - 0x26]
cmp eax, 0xcd
ja case.0x18007a0a7.44
cdqe
movzx eax, byte [r11 + rax + 0x7a6d4]
mov ecx, dword [r11 + rax*4 + 0x7a6b8]
add rcx, r11
jmp rcx
mov byte [r8 + 1], dl
or r10b, 4
jmp 0x18007a0e3
mov byte [r8 + 1], dl
or r10b, 2
jmp 0x18007a0e3
mov byte [r8 + 2], dl
or r10b, 0x20
jmp 0x18007a0e3
mov byte [r8 + 3], dl
or r10b, 0x40
jmp 0x18007a0e3
mov byte [r8 + 4], dl
or r10b, 8
jmp 0x18007a0e3
mov byte [r8 + 5], dl
or r10b, 0x10
dec dil
jne 0x18007a080
movzx eax, r10b
movzx ebp, r10b
mov ebx, 1
shl eax, 0x17
test r10b, r10b
mov qword [rsp + 0x10], r13
mov dword [r8 + 0x21], eax
cmove ebp, ebx
movzx eax, dl
and al, 0xf0
cmp al, 0x40
jne 0x18007a171
or dword [r8 + 0x21], 0x40000000
movzx eax, dl
shr eax, 3
and eax, ebx
mov byte [r8 + 7], al
test al, al
je 0x18007a13d
movzx eax, byte [r9]
movzx r14d, r14b
and al, 0xf8
cmp al, 0xb8
cmove r14d, ebx
mov dword [rsp + 0x50], r14d
movzx eax, dl
inc r9
shr al, 2
and al, bl
mov byte [r8 + 8], al
movzx eax, dl
and dl, bl
shr al, 1
mov byte [r8 + 0xa], dl
and al, bl
mov byte [r8 + 9], al
movzx edx, byte [r9 - 1]
movzx eax, dl
and al, 0xf0
cmp al, 0x40
jne 0x18007a171
movzx r13d, dl
jmp 0x18007a1e4
mov byte [r8 + 0xb], dl
cmp dl, 0xf
jne 0x18007a18e
movzx edx, byte [r9]
inc r9
lea r12, [0x1800d18fa]
mov byte [r8 + 0xc], dl
jmp 0x18007a1ad
lea eax, [rdx + 0x60]
cmp al, 3
ja 0x18007a1ad
inc r14b
mov dword [rsp + 0x50], r14d
test bpl, 0x10
je 0x18007a1a9
or bpl, 8
jmp 0x18007a1ad
and bpl, 0xf7
movzx edi, dl
movzx eax, dl
movzx r13d, dl
shr rax, 2
mov r10d, edi
movzx r11d, byte [rax + r12]
mov eax, edi
and eax, 0x80000003
jge 0x18007a1d3
dec eax
or eax, 0xfffffffc
inc eax
movsxd rcx, eax
lea rax, [r12 + r11]
movzx esi, byte [rcx + rax]
cmp sil, 0xff
jne 0x18007a202
or dword [r8 + 0x21], 0x3000
movzx edi, dl
xor cl, cl
mov eax, edi
movzx esi, cl
mov r10d, edi
and eax, 0xfffffffd
cmp eax, 0x24
cmove esi, ebx
xor bl, bl
test sil, sil
jns 0x18007a21c
movzx eax, sil
and eax, 0x7f
movzx ebx, word [rax + r12]
movzx esi, bl
shr bx, 8
movzx r12d, byte [r8 + 0xc]
test r12b, r12b
je 0x18007a263
movzx eax, dl
lea rdx, [0x1800d18b0]
shr rax, 2
and edi, 0x80000003
movzx ecx, byte [rax + rdx + 0x13c]
jge 0x18007a24b
dec edi
or edi, 0xfffffffc
inc edi
movsxd rax, edi
add rcx, rax
test byte [rcx + rdx + 0x13c], bpl
je 0x18007a263
or dword [r8 + 0x21], 0x3000
test sil, 1
je 0x18007a5a2
or dword [r8 + 0x21], 1
movzx r11d, byte [r9]
mov edx, dword [r8 + 0x21]
movzx r14d, r11b
movzx edi, r11b
mov byte [r8 + 0xd], r11b
and dil, 7
shr r11b, 3
shr r14b, 6
and r11b, 7
mov byte [r8 + 0xe], r14b
mov byte [rsp + 0x48], dil
mov byte [r8 + 0x10], dil
mov byte [r8 + 0xf], r11b
test bl, bl
je 0x18007a2c2
movzx ecx, r11b
movzx eax, bl
shl eax, cl
test al, al
jns 0x18007a2c2
or edx, 0x3000
mov dword [r8 + 0x21], edx
test r12b, r12b
jne 0x18007a316
lea eax, [r13 + 0x27]
cmp al, 6
ja 0x18007a316
lea eax, [r13 + 0x27]
lea rbx, [0x1800d18b0]
cmp r14b, 3
jne 0x18007a2f9
movzx ecx, al
movzx eax, r11b
lea rdx, [rax + rcx*8]
movzx ecx, dil
movzx eax, byte [rdx + rbx + 0x104]
jmp 0x18007a308
movzx eax, al
movzx ecx, r11b
movzx eax, byte [rax + rbx + 0xfd]
shl al, cl
test al, al
jns 0x18007a316
or dword [r8 + 0x21], 0x3000
lea rdx, [0x1800d1a88]
test bpl, 0x20
je 0x18007a38a
cmp r14b, 3
jne 0x18007a333
or dword [r8 + 0x21], 0x9000
jmp 0x18007a38a
movzx ebx, r13b
test r12b, r12b
je 0x18007a348
lea rcx, [0x1800d1a76]
mov rdi, rdx
jmp 0x18007a360
movzx ebx, r13b
lea rcx, [0x1800d1a5e]
lea rdi, [0x1800d1a76]
and bl, 0xfe
nop dword [rax]
cmp byte [rcx], bl
je 0x18007a36f
add rcx, 2
cmp rcx, rdi
jne 0x18007a360
jmp 0x18007a37d
movzx eax, byte [rcx + 1]
movzx ecx, r11b
shl eax, cl
test al, al
jns 0x18007a385
or dword [r8 + 0x21], 0x9000
movzx edi, byte [rsp + 0x48]
mov ecx, r10d
test r12b, r12b
je 0x18007a3db
sub ecx, 0x20
je 0x18007a3bf
dec ecx
je 0x18007a3a3
dec ecx
je 0x18007a3bf
dec ecx
jne 0x18007a3f0
mov r14b, 3
cmp r11b, 4
je 0x18007a47b
cmp r11b, 5
jne 0x18007a483
jmp 0x18007a47b
mov r14b, 3
cmp r11b, 4
ja 0x18007a47b
cmp r11b, 1
jne 0x18007a483
jmp 0x18007a47b
sub ecx, 0x8c
je 0x18007a475
cmp ecx, 2
je 0x18007a46f
cmp r14b, 3
jne 0x18007a43d
test r12b, r12b
je 0x18007a40b
lea rdx, [0x1800d1a97]
lea rcx, [0x1800d1ac1]
jmp 0x18007a412
lea rcx, [0x1800d1a97]
movzx eax, byte [rdx]
inc rdx
cmp al, r13b
je 0x18007a428
add rdx, 2
cmp rdx, rcx
jne 0x18007a412
jmp 0x18007a483
test byte [rdx], bpl
je 0x18007a483
movzx eax, byte [rdx + 1]
movzx ecx, r11b
shl eax, cl
test al, al
jns 0x18007a47b
jmp 0x18007a483
test r12b, r12b
je 0x18007a483
sub r10d, 0x50
je 0x18007a45f
sub r10d, 0x75
je 0x18007a47b
sub r10d, 0x11
je 0x18007a467
dec r10d
je 0x18007a45f
cmp r10d, 0x20
jne 0x18007a483
test bpl, 9
jne 0x18007a47b
jmp 0x18007a483
test bpl, 6
jne 0x18007a47b
jmp 0x18007a483
cmp r11b, 1
je 0x18007a47b
cmp r11b, 5
jbe 0x18007a483
or dword [r8 + 0x21], 0x11000
movzx edx, byte [r9 + 1]
add r9, 2
cmp r11b, 1
ja 0x18007a4a8
cmp r13b, 0xf6
jne 0x18007a49e
or sil, 2
jmp 0x18007a4a8
cmp r13b, 0xf7
jne 0x18007a4a8
or sil, 0x10
movzx ecx, r14b
mov r10d, 4
test r14b, r14b
je 0x18007a4d3
dec ecx
je 0x18007a4ce
dec ecx
jne 0x18007a4f0
mov r15b, 2
test bpl, 0x10
jne 0x18007a4f0
movzx r15d, r10b
jmp 0x18007a4f0
mov r15b, 1
jmp 0x18007a4f0
test bpl, 0x10
je 0x18007a4e4
cmp dil, 6
jne 0x18007a4f0
mov r15b, 2
jmp 0x18007a4f0
movzx r15d, r15b
cmp dil, 5
cmove r15d, r10d
cmp r14b, 3
je 0x18007a537
cmp dil, r10b
jne 0x18007a537
or dword [r8 + 0x21], 2
movzx eax, dl
inc r9
shr al, 6
mov byte [r8 + 0x11], dl
mov byte [r8 + 0x12], al
movzx eax, dl
shr al, 3
and al, 7
mov byte [r8 + 0x13], al
movzx eax, dl
and eax, 7
mov byte [r8 + 0x14], al
cmp al, 5
jne 0x18007a537
test r14b, 1
movzx r15d, r15b
cmove r15d, r10d
movzx ecx, r15b
dec r9
dec ecx
je 0x18007a587
dec ecx
je 0x18007a568
cmp ecx, 2
jne 0x18007a594
or dword [r8 + 0x21], 0x100
mov eax, dword [r9]
mov r14d, dword [rsp + 0x50]
mov dword [r8 + 0x1d], eax
movzx eax, r15b
add r9, rax
jmp 0x18007a5b0
or dword [r8 + 0x21], 0x80
movzx eax, word [r9]
mov r14d, dword [rsp + 0x50]
mov word [r8 + 0x1d], ax
movzx eax, r15b
add r9, rax
jmp 0x18007a5b0
or dword [r8 + 0x21], 0x40
movzx eax, byte [r9]
mov byte [r8 + 0x1d], al
mov r14d, dword [rsp + 0x50]
movzx eax, r15b
add r9, rax
jmp 0x18007a5b0
test bpl, 0x20
je 0x18007a5b0
or dword [r8 + 0x21], 0x9000
mov r15, qword [rsp]
mov r13, qword [rsp + 0x10]
mov r12, qword [rsp + 0x18]
mov rdi, qword [rsp + 0x20]
mov rbx, qword [rsp + 0x58]
test sil, 0x10
je 0x18007a621
test sil, 0x40
je 0x18007a5f4
test bpl, 8
je 0x18007a655
or dword [r8 + 0x21], 0x208
movzx eax, word [r9]
add r9, 2
mov word [r8 + 0x15], ax
jmp 0x18007a683
test r14b, r14b
je 0x18007a60b
or dword [r8 + 0x21], 0x20
mov rax, qword [r9]
add r9, 8
mov qword [r8 + 0x15], rax
jmp 0x18007a621
test bpl, 8
jne 0x18007a627
or dword [r8 + 0x21], 0x10
mov eax, dword [r9]
add r9, 4
mov dword [r8 + 0x15], eax
test sil, 4
je 0x18007a639
or dword [r8 + 0x21], 8
movzx eax, word [r9]
add r9, 2
mov word [r8 + 0x15], ax
test sil, 2
je 0x18007a64f
or dword [r8 + 0x21], 4
movzx eax, byte [r9]
inc r9
mov byte [r8 + 0x15], al
test sil, 0x40
je 0x18007a66a
or dword [r8 + 0x21], 0x210
mov eax, dword [r9]
add r9, 4
mov dword [r8 + 0x15], eax
jmp 0x18007a683
test sil, 0x20
je 0x18007a683
or dword [r8 + 0x21], 0x204
movzx eax, byte [r9]
inc r9
mov byte [r8 + 0x15], al
sub r9b, byte [rsp + 0x40]
mov r14, qword [rsp + 8]
mov rsi, qword [rsp + 0x28]
mov rbp, qword [rsp + 0x30]
mov byte [r8], r9b
cmp r9b, 0xf
jbe 0x18007a6ac
or dword [r8 + 0x21], 0x5000
mov byte [r8], recv
movzx eax, byte [r8]
add rsp, 0x38
ret