Function at 0x1400cb040
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xd8
mov rsi, r9
mov rdi, r8
mov r13, rdx
mov r14, rcx
mov r9, qword [rsp + 0x178]
mov r15, qword [rsp + 0x168]
mov rax, qword [0x14039fd98]
xor rax, rsp
mov qword [rsp + 0xd0], rax
movzx ebp, byte [rcx + 0x271]
and bpl, 1
neg bpl
and bpl, byte [rcx + 0x26d]
cmp qword [rcx], 0
je 0x1400cb0d4
lea rcx, [r14 + 8]
lea rdx, [rsp + 0x98]
mov r8, r15
call fcn.1400650c0
test eax, eax
jne 0x1400cb0dc
mov dword [rsp + 0x20], 0x144
lea r9, str..._.._third_party_boringssl_src_ssl_ssl_aead_ctx.cc
xor edi, edi
mov ecx, reloc.WS2_32.dll_recv
xor edx, edx
mov r8d, 0xc8
jmp 0x1400cb13f
mov qword [rsp + 0x98], r9
mov r12, qword [rsp + 0x160]
lea rbx, [r12 + r15]
cmp r12, rdi
je 0x1400cb0fb
cmp rbx, rdi
jbe 0x1400cb0fb
lea rax, [rdi + r15]
cmp rax, r12
ja 0x1400cb121
cmp rbx, r13
jbe 0x1400cb10c
movzx eax, bpl
add rax, r13
cmp rax, r12
ja 0x1400cb121
cmp rbx, rsi
jbe 0x1400cb16a
mov rax, qword [rsp + 0x98]
add rax, rsi
cmp rax, r12
jbe 0x1400cb16a
mov dword [rsp + 0x20], 0x14a
lea r9, str..._.._third_party_boringssl_src_ssl_ssl_aead_ctx.cc
xor edi, edi
mov ecx, reloc.WS2_32.dll_recv
xor edx, edx
mov r8d, 0xbd
call fcn.1400490c0
mov rcx, qword [rsp + 0xd0]
xor rcx, rsp
call fcn.140265fe0
mov eax, edi
add rsp, 0xd8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rbp, qword [rsp + 0x170]
cmp qword [r14], 0
je 0x1400cb1ed
mov rdx, qword [rsp + 0x150]
movzx r9d, byte [r14 + 0x271]
test r9b, 0x10
jne 0x1400cb224
movzx eax, word [rsp + 0x148]
movzx ecx, byte [rsp + 0x140]
mov r8, qword [rdx]
mov qword [rsp + 0xc0], r8
mov byte [rsp + 0xc8], cl
mov byte [rsp + 0xc9], ah
mov byte [rsp + 0xca], al
lea rcx, [rsp + 0xc0]
mov r10d, ntohs
test r9b, 8
jne 0x1400cb233
mov eax, r15d
rol ax, 8
mov word [rsp + 0xcb], ax
mov r10d, reloc.WS2_32.dll_listen
jmp 0x1400cb233
test r15, r15
je 0x1400cb200
mov rcx, rdi
mov rdx, r12
mov r8, r15
call fcn.1402689f0
mov dil, 1
mov r8, qword [rsp + 0x178]
test r8, r8
je 0x1400cb144
mov rcx, rsi
mov rdx, rbp
call fcn.1402689f0
jmp 0x1400cb144
mov rax, qword [rsp + 0x158]
mov rcx, qword [rax]
mov r10, qword [rax + 8]
movzx r8d, byte [r14 + 0x26c]
test r9b, 4
mov qword [rsp + 0x88], rcx
mov qword [rsp + 0x80], r10
jne 0x1400cb274
test r8, r8
je 0x1400cb2a5
lea rdx, [r14 + 0x260]
lea rcx, [rsp + 0xa0]
mov qword [rsp + 0x78], r8
mov ebp, r9d
call fcn.1402689f0
jmp 0x1400cb298
movzx eax, byte [r14 + 0x26d]
sub r8, rax
je 0x1400cb2a5
lea rcx, [rsp + 0xa0]
xor edx, edx
mov qword [rsp + 0x78], r8
mov ebp, r9d
call fcn.140268830
mov rdx, qword [rsp + 0x150]
mov r9d, ebp
jmp 0x1400cb2ac
xor eax, eax
mov qword [rsp + 0x78], rax
movzx ebp, byte [r14 + 0x26d]
movzx r8d, bpl
test r9b, 2
jne 0x1400cb2e5
test bpl, bpl
je 0x1400cb317
mov rax, qword [rsp + 0x78]
lea rcx, [rsp + rax]
add rcx, 0xa0
mov byte [rsp + 0x77], r9b
call fcn.1402689f0
movzx r9d, byte [rsp + 0x77]
jmp 0x1400cb319
mov rax, qword [rsp + 0x78]
lea rcx, [rsp + rax]
add rcx, 0xa0
mov rdx, r8
call fcn.140063500
test eax, eax
je 0x1400cb3b9
movzx ebp, byte [r14 + 0x26d]
movzx r9d, byte [r14 + 0x271]
jmp 0x1400cb319
xor ebp, ebp
movzx r8d, bpl
test r9b, 1
jne 0x1400cb332
mov rbx, qword [rsp + 0x170]
mov rbp, qword [rsp + 0x78]
jmp 0x1400cb388
cmp rbx, r13
mov rbx, qword [rsp + 0x170]
mov rbp, qword [rsp + 0x78]
jbe 0x1400cb35a
lea rax, [r8 + r13]
cmp rax, r12
jbe 0x1400cb35a
mov dword [rsp + 0x20], 0x178
jmp 0x1400cb129
test r8, r8
je 0x1400cb388
movzx eax, byte [r14 + 0x26c]
lea rdx, [rsp + rax]
add rdx, 0xa0
mov rcx, r13
mov r13, r8
call fcn.1402689f0
mov r8, r13
movzx r9d, byte [r14 + 0x271]
add rbp, r8
test r9b, 4
mov r9, qword [rsp + 0x178]
je 0x1400cb5a8
movzx eax, byte [r14 + 0x26c]
test rax, rax
je 0x1400cb5a8
cmp al, 8
jae 0x1400cb3c0
xor ecx, ecx
jmp 0x1400cb590
xor edi, edi
jmp 0x1400cb144
cmp al, 0x20
jae 0x1400cb3cb
xor ecx, ecx
jmp 0x1400cb561
mov ecx, eax
movups xmm0, xmmword [r14 + 0x260]
movups xmm1, xmmword [r14 + 0x270]
xorps xmm0, xmmword [rsp + 0xa0]
xorps xmm1, xmmword [rsp + 0xb0]
and ecx, 0xffffffe0
movaps xmmword [rsp + 0xa0], xmm0
movaps xmmword [rsp + 0xb0], xmm1
cmp rcx, 0x20
je 0x1400cb558
movups xmm0, xmmword [r14 + 0x280]
movups xmm1, xmmword [r14 + 0x290]
xorps xmm0, xmmword [rsp + 0xc0]
xorps xmm1, xmmword [rsp + 0xd0]
movaps xmmword [rsp + 0xc0], xmm0
movaps xmmword [rsp + 0xd0], xmm1
cmp ecx, 0x40
je 0x1400cb558
movups xmm0, xmmword [r14 + 0x2a0]
movups xmm1, xmmword [r14 + 0x2b0]
xorps xmm0, xmmword [rsp + 0xe0]
xorps xmm1, xmmword [rsp + 0xf0]
movaps xmmword [rsp + 0xe0], xmm0
movaps xmmword [rsp + 0xf0], xmm1
cmp ecx, 0x60
je 0x1400cb558
movups xmm0, xmmword [r14 + 0x2c0]
movups xmm1, xmmword [r14 + 0x2d0]
xorps xmm0, xmmword [rsp + 0x100]
xorps xmm1, xmmword [rsp + 0x110]
movaps xmmword [rsp + 0x100], xmm0
movaps xmmword [rsp + 0x110], xmm1
cmp ecx, 0x80
je 0x1400cb558
movups xmm0, xmmword [r14 + 0x2e0]
movups xmm1, xmmword [r14 + 0x2f0]
xorps xmm0, xmmword [rsp + 0x120]
xorps xmm1, xmmword [rsp + 0x130]
movaps xmmword [rsp + 0x120], xmm0
movaps xmmword [rsp + 0x130], xmm1
cmp ecx, 0xa0
je 0x1400cb558
movups xmm0, xmmword [r14 + 0x300]
movups xmm1, xmmword [r14 + 0x310]
xorps xmm0, xmmword [rsp + 0x140]
xorps xmm1, xmmword [rsp + 0x150]
movaps xmmword [rsp + 0x140], xmm0
movaps xmmword [rsp + 0x150], xmm1
cmp ecx, 0xc0
je 0x1400cb558
movups xmm0, xmmword [r14 + 0x320]
movups xmm1, xmmword [r14 + 0x330]
xorps xmm0, xmmword [rsp + 0x160]
xorps xmm1, xmmword [rsp + 0x170]
movaps xmmword [rsp + 0x160], xmm0
movaps xmmword [rsp + 0x170], xmm1
cmp rcx, rax
je 0x1400cb5a8
test al, 0x18
je 0x1400cb590
mov rdx, rcx
mov ecx, eax
and ecx, 0xfffffff8
mov r8, qword [r14 + rdx + 0x260]
xor qword [rsp + rdx + 0xa0], r8
add rdx, 8
cmp rcx, rdx
jne 0x1400cb569
cmp rcx, rax
je 0x1400cb5a8
nop word [rax + rax]
movzx edx, byte [r14 + rcx + 0x260]
xor byte [rsp + rcx + 0xa0], dl
inc rcx
cmp rax, rcx
jne 0x1400cb590
mov rax, qword [rsp + 0x98]
add r14, 8
mov rcx, qword [rsp + 0x80]
mov qword [rsp + 0x60], rcx
mov rcx, qword [rsp + 0x88]
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x50], r9
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x40], r15
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x30], rbp
lea rcx, [rsp + 0xa0]
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x90]
mov rcx, r14
mov rdx, rdi
mov r8, rsi
call fcn.140064d50
test eax, eax
setne dil
jmp 0x1400cb144