Function at 0x14007f1e0
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x78
mov r13, rdx
mov rsi, qword [rsp + 0xe0]
mov rax, qword [0x1403acd78]
xor rax, rsp
test rsi, rsi
cmove rsi, r9
mov qword [rsp + 0x70], rax
mov rax, qword [rcx + 8]
movsxd rdx, dword [rax + 8]
test rdx, rdx
je 0x14007f38c
mov rbx, r9
mov r15, r8
mov rax, qword [rax]
cmp edx, 4
jae 0x14007f23b
xor r9d, r9d
xor r8d, r8d
jmp 0x14007f340
lea r10, [rdx - 4]
mov r9, r10
shr r9, 2
inc r9
mov r8d, r9d
and r8d, 3
cmp r10, 0xc
jae 0x14007f263
pxor xmm0, xmm0
xor r10d, r10d
pxor xmm1, xmm1
jmp 0x14007f2e1
and r9, 0xfffffffffffffffc
pxor xmm0, xmm0
xor r10d, r10d
pxor xmm1, xmm1
nop word cs:[rax + rax]
movdqu xmm2, xmmword [rax + r10*8]
por xmm2, xmm0
movdqu xmm0, xmmword [rax + r10*8 + 0x10]
por xmm0, xmm1
movdqu xmm1, xmmword [rax + r10*8 + 0x20]
movdqu xmm3, xmmword [rax + r10*8 + 0x30]
movdqu xmm4, xmmword [rax + r10*8 + 0x40]
por xmm4, xmm1
por xmm4, xmm2
movdqu xmm2, xmmword [rax + r10*8 + 0x50]
por xmm2, xmm3
por xmm2, xmm0
movdqu xmm0, xmmword [rax + r10*8 + 0x60]
por xmm0, xmm4
movdqu xmm1, xmmword [rax + r10*8 + 0x70]
por xmm1, xmm2
add r10, 0x10
add r9, 0xfffffffffffffffc
jne 0x14007f280
mov r9, rdx
and r9, 0xfffffffffffffffc
test r8, r8
je 0x14007f31e
lea r10, [rax + r10*8]
add r10, 0x10
shl r8, 5
xor r11d, r11d
nop dword [rax]
movdqu xmm2, xmmword [r10 + r11 - 0x10]
por xmm0, xmm2
movdqu xmm2, xmmword [r10 + r11]
por xmm1, xmm2
add r11, 0x20
cmp r8, r11
jne 0x14007f300
por xmm0, xmm1
pshufd xmm1, xmm0, 0xee
por xmm1, xmm0
movq r8, xmm1
cmp r9, rdx
je 0x14007f34c
nop word cs:[rax + rax]
or r8, qword [rax + r9*8]
inc r9
cmp rdx, r9
jne 0x14007f340
test r8, r8
je 0x14007f38c
mov r12d, dword [rbx + 4]
mov r8d, edx
mov ebp, dword [rsp + 0xe8]
mov edx, r8d
sar edx, 0x1f
and edx, r8d
mov r9, r8
nop dword [rax + rax]
test r9d, r9d
jle 0x14007f3af
lea r10, [r9 - 1]
cmp qword [rax + r9*8 - 8], 0
mov r9, r10
je 0x14007f370
inc r10d
mov edx, r10d
jmp 0x14007f3c7
mov dword [rsp + 0x20], 0x259
lea r9, str..._.._third_party_boringssl_src_crypto_fipsmodule_rsa_padding.c
xor esi, esi
mov ecx, 4
xor edx, edx
mov r8d, 0x78
jmp 0x14007f4db
test r8d, r8d
js 0x14007f3c7
call fcn.14007f0d0
mov edi, eax
mov ecx, 7
xor edx, edx
jmp 0x14007f46c
movsxd rdx, edx
mov rdx, qword [rax + rdx*8 - 8]
xor eax, eax
test rdx, rdx
sete al
mov r8, rdx
shr r8, 0x20
cmove r8, rdx
mov rdx, r8
shr rdx, 0x10
cmp r8, 0x10000
cmovb rdx, r8
mov r8, rdx
shr r8, 8
cmp rdx, 0x100
cmovb r8, rdx
mov rdx, r8
shr rdx, 4
xor r9d, r9d
cmp r8, 0x10
setae r9b
cmovb rdx, r8
shl r9d, 2
mov r8, rdx
shr r8, 2
xor r10d, r10d
cmp rdx, 4
setae r10b
cmovb r8, rdx
xor edx, edx
cmp r8, 2
setae dl
sub r9d, eax
lea r14d, [r9 + r10*2]
add r14d, edx
call fcn.14007f0d0
xor ecx, ecx
mov edi, eax
and r14d, 7
je 0x14007f45f
xor edx, edx
mov ecx, r14d
jmp 0x14007f46c
mov byte [r13], 0
inc r13
dec rdi
mov dl, 1
lea rax, [r12 + 2]
cmp rdi, rax
jae 0x14007f480
mov dword [rsp + 0x20], 0x266
jmp 0x14007f4c5
mov qword [rsp + 0x48], r15
mov r15, r12
cmp ebp, 0xffffffff
je 0x14007f4a9
cmp ebp, 0xfffffffe
jne 0x14007f49e
mov r15, rdi
sub r15, r12
add r15, 0xfffffffffffffffe
jmp 0x14007f4a9
test ebp, ebp
js 0x14007f74a
mov r15d, ebp
mov qword [rsp + 0x38], r13
mov r13, rdi
sub r13, r12
lea rax, [r13 - 2]
cmp rax, r15
jae 0x14007f50b
mov dword [rsp + 0x20], 0x27b
lea r9, str..._.._third_party_boringssl_src_crypto_fipsmodule_rsa_padding.c
xor esi, esi
mov ecx, 4
xor edx, edx
mov r8d, WSAStartup
call fcn.140049240
xor r14d, r14d
mov rcx, r14
call fcn.14009ea90
mov rcx, qword [rsp + 0x70]
xor rcx, rsp
call fcn.140279500
mov eax, esi
add rsp, 0x78
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov dword [rsp + 0x34], edx
mov dword [rsp + 0x30], ecx
test r15, r15
je 0x14007f540
mov rcx, r15
call fcn.14009ea60
test rax, rax
je 0x14007f76d
mov r14, rax
lea r8, [0x1402f3c50]
mov rcx, rax
mov rdx, r15
call fcn.1400667c0
jmp 0x14007f543
xor r14d, r14d
pxor xmm0, xmm0
movdqa xmmword [rsp + 0x60], xmm0
movdqa xmmword [rsp + 0x50], xmm0
test rbx, rbx
je 0x14007f57d
mov ecx, dword [rbx + 0x2c]
call fcn.14009ea60
test rax, rax
je 0x14007f797
mov rbp, rax
xor ecx, ecx
call fcn.14009ea90
mov qword [rsp + 0x58], rbp
mov qword [rsp + 0x50], rbx
mov qword [rsp + 0x40], rdi
mov rax, qword [rsp + 0x38]
lea rdi, [rax + r13]
dec rdi
dec r13
lea rbp, [rsp + 0x50]
mov rcx, rbp
call qword [rbx + reloc.WS2_32.dll_recv]
mov rax, qword [rsp + 0x50]
lea rdx, [0x1402f3cf1]
mov r8d, 8
mov rcx, rbp
call qword [rax + 0x18]
mov rax, qword [rsp + 0x50]
mov rcx, rbp
mov rdx, qword [rsp + 0x48]
mov r8, r12
call qword [rax + 0x18]
mov rax, qword [rsp + 0x50]
mov rcx, rbp
mov rdx, r14
mov r8, r15
call qword [rax + 0x18]
mov rax, qword [rsp + 0x50]
mov rcx, rbp
mov rdx, rdi
call qword [rax + 0x20]
mov rax, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x58]
mov edx, dword [rax + 0x2c]
call fcn.14009ead0
mov rcx, qword [rsp + 0x58]
call fcn.14009ea90
mov rax, qword [rsp + 0x68]
test rax, rax
je 0x14007f613
mov rcx, qword [rsp + 0x60]
call qword [rax]
pxor xmm0, xmm0
movdqa xmmword [rsp + 0x60], xmm0
movdqa xmmword [rsp + 0x50], xmm0
mov qword [rsp + 0x20], rsi
mov rsi, qword [rsp + 0x38]
mov rcx, rsi
mov rdx, r13
mov r8, rdi
mov r9, r12
call fcn.14007e350
test eax, eax
mov r10, qword [rsp + 0x40]
je 0x14007f790
lea rdx, [r15 + r12]
mov rcx, r10
sub rcx, rdx
xor byte [rcx + rsi - 2], 1
test r15, r15
je 0x14007f724
lea rax, [rcx + rsi]
add rax, 0xfffffffffffffffe
cmp r15, 8
jb 0x14007f69a
lea r8, [r10 - 1]
mov r9, r8
sub r9, rdx
add r9, rsi
lea rdx, [r14 + r15]
cmp r9, rdx
jae 0x14007f7d6
sub r8, r12
add r8, rsi
cmp r14, r8
jae 0x14007f7d6
xor ecx, ecx
mov rdx, rax
mov rax, rcx
not rax
add rax, r15
mov r8, r15
and r8, 3
je 0x14007f6d4
nop word cs:[rax + rax]
movzx r9d, byte [r14 + rcx]
xor byte [rdx + 1], r9b
inc rdx
inc rcx
dec r8
jne 0x14007f6c0
cmp rax, 3
jb 0x14007f724
sub r15, rcx
lea rax, [rcx + r14]
add rax, 3
xor ecx, ecx
nop word [rax + rax]
movzx r8d, byte [rax + rcx - 3]
xor byte [rdx + rcx + 1], r8b
movzx r8d, byte [rax + rcx - 2]
xor byte [rdx + rcx + 2], r8b
movzx r8d, byte [rax + rcx - 1]
xor byte [rdx + rcx + 3], r8b
movzx r8d, byte [rax + rcx]
xor byte [rdx + rcx + 4], r8b
add rcx, 4
cmp r15, rcx
jne 0x14007f6f0
cmp byte [rsp + 0x34], 0
jne 0x14007f73a
mov cl, 8
sub cl, byte [rsp + 0x30]
mov eax, 0xff
shr eax, cl
and byte [rsi], al
mov byte [r10 + rsi - 1], 0xbc
mov esi, 1
jmp 0x14007f4e3
mov dword [rsp + 0x20], 0x274
lea r9, str..._.._third_party_boringssl_src_crypto_fipsmodule_rsa_padding.c
xor esi, esi
mov ecx, 4
xor edx, edx
mov r8d, 0x8a
jmp 0x14007f4db
mov dword [rsp + 0x20], 0x282
lea r9, str..._.._third_party_boringssl_src_crypto_fipsmodule_rsa_padding.c
xor esi, esi
mov ecx, 4
xor edx, edx
mov r8d, 0x41
jmp 0x14007f4db
xor esi, esi
jmp 0x14007f4e3
mov dword [rsp + 0x20], 0xcd
lea r9, str..._.._third_party_boringssl_src_crypto_fipsmodule_digest_digest.c
xor esi, esi
mov ecx, 0x1d
xor edx, edx
mov r8d, 0x41
call fcn.140049240
xor ecx, ecx
call fcn.14009ea90
pxor xmm0, xmm0
movdqa xmmword [rsp + 0x60], xmm0
movdqa xmmword [rsp + 0x50], xmm0
jmp 0x14007f4e3
cmp r15, 0x20
jae 0x14007f7e3
xor ecx, ecx
jmp 0x14007f8b3
lea rdx, [r15 - 0x20]
mov r8, rdx
shr r8, 5
inc r8
cmp rdx, 0x20
jae 0x14007f7fb
xor edx, edx
jmp 0x14007f86a
mov r9, r8
and r9, 0xfffffffffffffffe
add rcx, rsi
add rcx, 0x2f
xor edx, edx
movdqu xmm0, xmmword [r14 + rdx]
movups xmm1, xmmword [r14 + rdx + 0x10]
movdqu xmm2, xmmword [rcx + rdx - 0x30]
pxor xmm2, xmm0
movups xmm0, xmmword [rcx + rdx - 0x20]
xorps xmm0, xmm1
movdqu xmm1, xmmword [rcx + rdx - 0x10]
movdqu xmm3, xmmword [rcx + rdx]
movdqu xmmword [rcx + rdx - 0x30], xmm2
movups xmmword [rcx + rdx - 0x20], xmm0
movdqu xmm0, xmmword [r14 + rdx + 0x20]
pxor xmm0, xmm1
movdqu xmm1, xmmword [r14 + rdx + 0x30]
pxor xmm1, xmm3
movdqu xmmword [rcx + rdx - 0x10], xmm0
movdqu xmmword [rcx + rdx], xmm1
add rdx, 0x40
add r9, 0xfffffffffffffffe
jne 0x14007f80b
mov rcx, r15
and rcx, 0xffffffffffffffe0
test r8b, 1
je 0x14007f8a4
movdqu xmm0, xmmword [r14 + rdx]
movdqu xmm1, xmmword [r14 + rdx + 0x10]
movdqu xmm2, xmmword [rax + rdx + 1]
pxor xmm2, xmm0
movdqu xmm0, xmmword [rax + rdx + 0x11]
pxor xmm0, xmm1
movdqu xmmword [rax + rdx + 1], xmm2
movdqu xmmword [rax + rdx + 0x11], xmm0
cmp r15, rcx
je 0x14007f724
test r15b, 0x18
je 0x14007f8e1
mov r8, rcx
mov rcx, r15
and rcx, 0xfffffffffffffff8
lea rdx, [rax + rcx]
mov r9, qword [r14 + r8]
xor qword [rax + r8 + 1], r9
add r8, 8
cmp rcx, r8
jne 0x14007f8c1
cmp r15, rcx
jne 0x14007f69f
jmp 0x14007f724
add rax, rcx
jmp 0x14007f69c