Function at 0x14005fc90
Capabilities:
Encode data using xor

Disassembly:
push r14
push rsi
push rdi
push rbx
sub rsp, 0x28
mov rax, rdx
movsxd rdx, dword [rdx + 8]
test rdx, rdx
je 0x14005fd4b
mov r8, qword [rax]
cmp edx, 4
jae 0x14005fcb9
xor r9d, r9d
xor r10d, r10d
jmp 0x14005fd10
mov r9, rdx
and r9, 0xfffffffffffffffc
pxor xmm0, xmm0
xor r10d, r10d
pxor xmm1, xmm1
nop dword [rax + rax]
movdqu xmm2, xmmword [r8 + r10*8]
por xmm0, xmm2
movdqu xmm2, xmmword [r8 + r10*8 + 0x10]
por xmm1, xmm2
add r10, 4
cmp r9, r10
jne 0x14005fcd0
por xmm1, xmm0
pshufd xmm0, xmm1, 0xee
por xmm0, xmm1
movq r10, xmm0
cmp r9, rdx
je 0x14005fd1c
nop word cs:[rax + rax]
or r10, qword [r8 + r9*8]
inc r9
cmp rdx, r9
jne 0x14005fd10
test r10, r10
je 0x14005fd4b
test edx, edx
jle 0x14005fd2b
test byte [r8], 1
jne 0x14005fd7a
mov dword [rsp + 0x20], 0xa8
lea r9, str..._.._third_party_boringssl_src_crypto_fipsmodule_bn_montgomery.c
xor esi, esi
mov ecx, 3
xor edx, edx
mov r8d, 0x68
jmp 0x14005fd69
mov dword [rsp + 0x20], 0xa4
lea r9, str..._.._third_party_boringssl_src_crypto_fipsmodule_bn_montgomery.c
xor esi, esi
mov ecx, 3
xor edx, edx
mov r8d, 0x69
call fcn.14004adc0
mov eax, esi
add rsp, 0x28
pop rbx
pop rdi
pop rsi
pop r14
ret
cmp dword [rax + 0x10], 0
je 0x14005fda0
mov dword [rsp + 0x20], 0xac
lea r9, str..._.._third_party_boringssl_src_crypto_fipsmodule_bn_montgomery.c
xor esi, esi
mov ecx, 3
xor edx, edx
mov r8d, WSASetLastError
jmp 0x14005fd69
cmp edx, 0x401
jb 0x14005fe54
lea r10, [rdx - 0x400]
cmp r10, 4
jae 0x14005fdc3
mov r9d, 0x400
xor esi, esi
jmp 0x14005fe20
mov r11, r10
and r11, 0xfffffffffffffffc
lea r9, [r11 + 0x400]
pxor xmm0, xmm0
xor esi, esi
pxor xmm1, xmm1
nop dword [rax + rax]
movdqu xmm2, xmmword [r8 + rsi*8 + 0x2000]
por xmm0, xmm2
movdqu xmm2, xmmword [r8 + rsi*8 + 0x2010]
por xmm1, xmm2
add rsi, 4
cmp r11, rsi
jne 0x14005fde0
por xmm1, xmm0
pshufd xmm0, xmm1, 0xee
por xmm0, xmm1
movq rsi, xmm0
cmp r10, r11
je 0x14005fe2c
nop dword [rax]
or rsi, qword [r8 + r9*8]
inc r9
cmp rdx, r9
jne 0x14005fe20
test rsi, rsi
je 0x14005fe54
mov dword [rsp + 0x20], 0xb0
lea r9, str..._.._third_party_boringssl_src_crypto_fipsmodule_bn_montgomery.c
xor esi, esi
mov ecx, 3
xor edx, edx
mov r8d, 0x66
jmp 0x14005fd69
lea rsi, [rcx + 0x18]
cmp rsi, rax
je 0x14005fe92
mov rbx, rax
mov rdi, rcx
mov rcx, rsi
call fcn.140053ff0
test eax, eax
je 0x14005fe97
mov rdx, rbx
movsxd r8, dword [rbx + 8]
test r8, r8
je 0x14005feba
shl r8, 3
mov rcx, qword [rsi]
mov rdx, qword [rdx]
call fcn.1402695f0
mov rdx, rbx
mov eax, dword [rbx + 8]
jmp 0x14005febc
mov eax, dword [rcx + 0x20]
jmp 0x14005fec8
mov dword [rsp + 0x20], 0xb6
lea r9, str..._.._third_party_boringssl_src_crypto_fipsmodule_bn_montgomery.c
xor esi, esi
mov ecx, 3
xor edx, edx
mov r8d, 0x44
jmp 0x14005fd69
xor eax, eax
mov rcx, rdi
mov dword [rdi + 0x20], eax
mov edx, dword [rdx + 0x10]
mov dword [rdi + 0x28], edx
mov edx, eax
mov r8d, eax
sar r8d, 0x1f
and r8d, eax
inc eax
mov r9, rdx
nop dword [rax]
test r9d, r9d
jle 0x14005fefb
mov r10, qword [rsi]
dec eax
cmp qword [r10 + r9*8 - 8], 0
lea r9, [r9 - 1]
je 0x14005fee0
mov dword [rcx + 0x20], eax
jmp 0x14005ff0a
mov dword [rcx + 0x20], r8d
test edx, edx
js 0x14005ff0a
mov dword [rcx + 0x28], 0
mov rax, qword [rsi]
mov rax, qword [rax]
mov r11d, 1
mov r8d, 0x40
xor edx, edx
movabs r9, 0x8000000000000000
movabs r10, 0x4000000000000000
nop word cs:[rax + rax]
mov esi, r11d
and esi, 1
neg rsi
mov rdi, rax
and rdi, rsi
mov rbx, rdi
xor rbx, r11
shr rbx, 1
and rdi, r11
add rdi, rbx
mov ebx, edi
and ebx, 1
neg rbx
mov r11, rax
and r11, rbx
mov r14, r11
xor r14, rdi
shr r14, 1
and r11, rdi
add r11, r14
and rbx, r9
shr rdx, 2
and rsi, r10
or rdx, rsi
or rdx, rbx
add r8, 0xfffffffffffffffe
jne 0x14005ff40
mov qword [rcx + 0x30], rdx
mov qword [rcx + 0x38], 0
mov esi, 1
jmp 0x14005fd6e