Function at 0x1400be820
Capabilities:
Check for software breakpoints

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x48
mov rsi, rcx
cmp word [rcx + 8], 0
je 0x1400be840
lea r15, [rsi + 8]
jmp 0x1400be849
mov r15d, 0x194
add r15, qword [rsi]
mov ebx, 4
cmp byte [rsi + 0xe990], 3
jne 0x1400be868
cmp byte [rsi + 0xe991], 3
jb 0x1400be868
movzx ebx, word [r15 + 2]
add ebx, 6
mov rax, qword [rsi + 0x14878]
test rax, rax
jne 0x1400be880
mov rax, qword [rsi]
mov rax, qword [rax + 0x40]
test rax, rax
je 0x1400be8df
xor r12d, r12d
mov ecx, 5
mov edx, 2
jmp 0x1400be89c
mov rax, qword [rax + 0x140]
test rax, rax
je 0x1400be8e2
mov r8, qword [rax + 0x18]
test r8, r8
je 0x1400be890
mov r8d, dword [r8 + 0x20b4]
cmp r8d, 0x100
mov r9d, 3
sbb r9d, 0xffffffff
cmp r8d, 0x10000
cmovae r9d, ecx
cmp r8d, 0x80
cmovb r9d, edx
add r12d, r9d
add r12d, r8d
add r12d, 2
jmp 0x1400be890
xor r12d, r12d
xor eax, eax
test byte [rsi + 0xeb0c], 0x18
jne 0x1400be97e
add ebx, r12d
lea edi, [rbx + 9]
test byte [rsi + 0xeb0a], 4
movzx eax, byte [rsi + 0xeabc]
jne 0x1400be920
test al, al
je 0x1400be969
movzx eax, byte [rsi + 0x6341]
lea ecx, [rbx + 0x6f]
test al, al
cmovne edi, ecx
test al, al
jne 0x1400be92f
jmp 0x1400be969
test al, al
je 0x1400be969
movzx eax, byte [rsi + 0x6341]
test al, al
je 0x1400be969
cmp byte [rsi + 0xe99d], 2
jne 0x1400be94e
movzx ecx, word [rsi + 0xe99a]
lea eax, [rcx + 8]
cmp byte [rsi + 0xe99c], 9
cmove eax, ecx
jmp 0x1400be967
movzx eax, word [rsi + 0xe996]
movzx ecx, word [rsi + 0xe998]
add ecx, eax
movzx eax, byte [rsi + 0xe9a1]
add eax, ecx
add edi, eax
or byte [rsi + 0xeb10], 8
mov rcx, rsi
mov edx, edi
call fcn.1400ac820
test eax, eax
je 0x1400be98f
add rsp, 0x48
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov dword [rsp + 0x44], edi
mov r13, qword [rsi + 0xe650]
mov ebp, dword [rsi + 0xe65c]
mov rdi, r13
add rdi, rbp
mov r8d, dword [rsi + 0xe658]
add rdi, r8
test r13, r13
je 0x1400be9f7
mov byte [rdi], reloc.WS2_32.dll_shutdown
movzx eax, byte [rsi + 0xe990]
mov byte [rdi + 1], al
movzx eax, word [rsi + 0xe990]
mov ecx, eax
shr ecx, 8
cmp al, 3
mov edx, 3
cmovne edx, ecx
cmp eax, 0x400
cmovb edx, ecx
mov byte [rdi + 2], dl
test byte [rsi + 0xeb0a], 4
jne 0x1400be9f7
lea eax, [rbx + 4]
rol ax, 8
mov word [rdi + 3], ax
mov byte [rdi + 5], recv
mov eax, ebx
shr eax, 0x10
mov byte [rdi + 6], al
mov byte [rdi + 7], bh
mov byte [rdi + 8], bl
mov byte [rdi + 9], 1
movzx eax, byte [rsi + 0xeb13]
cmp eax, 0xcc
je 0x1400bea22
cmp eax, 0xc0
jne 0x1400bea2d
mov al, 0x40
cmp byte [rsi + 0xe9a0], 3
je 0x1400bea2f
mov al, 1
mov byte [rdi + 0xa], al
mov r14d, reloc.WS2_32.dll_inet_addr
cmp byte [rsi + 0xe990], 3
jne 0x1400bea7b
cmp byte [rsi + 0xe991], 3
jb 0x1400bea7b
movzx eax, word [r15 + 2]
rol ax, 8
mov word [rdi + 0xb], ax
lea rcx, [rdi + 0xd]
lea rdx, [r15 + 0x130]
mov rbx, r8
movzx r8d, word [r15 + 2]
call fcn.14016e4a0
mov r8, rbx
movzx r14d, word [r15 + 2]
add r14d, 0xd
mov eax, r14d
rol r12w, 8
mov word [rdi + rax], r12w
add r14d, 2
mov rbx, qword [rsi + 0x14878]
test rbx, rbx
jne 0x1400beaa8
mov rax, qword [rsi]
mov rbx, qword [rax + 0x40]
test rbx, rbx
je 0x1400bebce
add rbp, r8
lea r15, [rbp + 2]
add r15, r13
mov r13d, 5
mov ebp, 2
jmp 0x1400beb0f
mov byte [rdi + r14 + 1], al
mov r8d, 2
add r14d, r8d
lea rcx, [rdi + r14]
lea rdx, [r12 + 0x1f68]
movsxd r8, dword [r12 + 0x20b4]
call fcn.14016e4a0
add r14d, dword [r12 + 0x20b4]
mov rbx, qword [rbx + 0x140]
test rbx, rbx
je 0x1400bebce
mov r12, qword [rbx + 0x18]
test r12, r12
je 0x1400beaff
mov eax, dword [r12 + 0x20b4]
cmp eax, 0x100
mov ecx, 3
sbb ecx, 0xffffffff
cmp eax, 0x10000
cmovae ecx, r13d
mov edx, r14d
cmp eax, 0x80
cmovb ecx, ebp
add ecx, eax
rol cx, 8
mov word [rdi + rdx], cx
add r14d, 2
mov eax, dword [r12 + 0x20b4]
mov byte [rdi + r14], gethostbyname
cmp eax, 0x7f
jbe 0x1400bead0
cmp eax, 0x100
mov cl, 2
sbb cl, 0
cmp eax, 0x10000
movzx edx, cl
mov ecx, 3
cmovae edx, ecx
mov ecx, edx
or cl, 0x80
mov byte [rdi + r14 + 1], cl
lea r9, [r15 + r14]
mov ecx, edx
neg cl
movzx r10d, cl
mov r8d, 1
nop dword [rax + rax]
movzx edx, dl
lea ecx, [rdx*8]
add cl, 0xf8
mov r11d, eax
shr r11d, cl
mov byte [r9 + r8 - 1], r11b
inc r8
dec dl
lea ecx, [r8 + r10]
cmp cl, 1
jne 0x1400beba0
inc r8d
jmp 0x1400beadb
cmp byte [rsi + 0xeabc], 0
je 0x1400bec1d
cmp byte [rsi + 0x6341], 0
je 0x1400bec1d
movzx eax, byte [rsi + 0xeb0a]
and al, 4
shr al, 2
movzx eax, al
lea ebx, [rax*8 + 5]
sub r14d, ebx
jle 0x1400becb2
mov r12d, r14d
cmp qword [0x143e27938], 0
je 0x1400becbc
mov rcx, r12
call fcn.14000f5d0
jmp 0x1400becc4
mov rcx, qword [rsi + 0x5b20]
test rcx, rcx
je 0x1400beca8
cmp byte [rsi + 0xe990], 3
jne 0x1400bed39
cmp byte [rsi + 0xe991], 3
jb 0x1400bed39
lea rbx, [rdi + 5]
lea ebp, [r14 - 5]
add rcx, 0x1b0
mov rdx, rbx
mov r8d, ebp
call fcn.14009b240
test eax, eax
jne 0x1400be97e
mov ecx, 0x230
add rcx, qword [rsi + 0x5b20]
mov rdx, rbx
mov r8d, ebp
call fcn.14009ba80
test eax, eax
jne 0x1400be97e
mov ecx, 0x310
add rcx, qword [rsi + 0x5b20]
mov rdx, rbx
mov r8d, ebp
call fcn.14009ba80
test eax, eax
jne 0x1400be97e
jmp 0x1400bed39
mov eax, 0xffffff53
jmp 0x1400be97e
mov eax, 0xffffff7c
jmp 0x1400be97e
mov rcx, r12
call fcn.14015a50c
mov r15, rax
test rax, rax
je 0x1400bed1b
mov edx, ebx
add rdx, rdi
mov rcx, r15
mov r8, r12
call fcn.14016e4a0
mov dword [rsp + 0x20], r14d
mov dword [rsp + 0x30], 1
mov dword [rsp + 0x28], reloc.WS2_32.dll_shutdown
mov rcx, rsi
mov rdx, rdi
mov r8d, dword [rsp + 0x44]
mov r9, r15
call fcn.1400a6d10
mov r14d, eax
cmp qword [0x143e27940], 0
je 0x1400bed25
mov rcx, r15
call fcn.14000f5f0
jmp 0x1400bed2d
mov eax, 0xffffff83
jmp 0x1400be97e
mov rcx, r15
call fcn.140159e80
mov eax, r14d
test r14d, r14d
js 0x1400be97e
cmp byte [rsi + 0xed61], 0
je 0x1400bedba
test r14d, r14d
jle 0x1400bedba
mov rax, qword [rsi + 0xed50]
test rax, rax
je 0x1400bedba
cmp byte [rsi + 0xeabc], 1
je 0x1400bedba
movzx ecx, byte [rsi + 0xe991]
mov r8d, ecx
shl r8d, 4
or r8d, ecx
and r8d, 0xf0f
movzx edx, byte [rsi + 0xe990]
mov ecx, edx
and ecx, 0xf
shl ecx, 8
add ecx, r8d
shl edx, 0xc
and edx, 0xf0000
or edx, ecx
mov rcx, qword [rsi + 0xed58]
mov r8d, r14d
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x20], r8
mov ecx, 1
mov r8d, reloc.WS2_32.dll_shutdown
mov r9, rdi
call rax
add dword [rsi + 0xe658], r14d
xor eax, eax
test byte [rsi + 0xeb0d], 4
jne 0x1400bedd4
mov rcx, rsi
call fcn.1400a73d0
and byte [rsi + 0xeb10], 0xf7
jmp 0x1400be97e