Function at 0x14009e370
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xb8
mov r15, r9
mov rbx, r8
mov rbp, rdx
mov eax, dword [rsp + 0x128]
mov rdx, qword [0x140165040]
xor rdx, rsp
mov qword [rsp + 0xb0], rdx
test r9, r9
cmove r15, r8
xorps xmm0, xmm0
movaps xmmword [rsp + 0x60], xmm0
movaps xmmword [rsp + 0x50], xmm0
mov r14d, dword [r8 + 4]
cmp eax, 0xfffffffe
je 0x14009e3f4
mov edi, r14d
cmp eax, 0xffffffff
je 0x14009e3f6
mov edi, eax
cmp eax, 0xfffffffd
jg 0x14009e3f6
mov dword [rsp + 0x20], 0xe9
lea r9, str....._third_party_boringssl_srccrypto_fipsmodule_rsapadding.c
xor ebp, ebp
mov ecx, 4
xor edx, edx
mov r8d, 0x8a
jmp 0x14009e552
mov edi, eax
mov rsi, qword [rsp + 0x120]
mov rax, qword [rcx + 8]
mov r8d, dword [rax + 8]
mov edx, r8d
sar edx, 0x1f
and edx, r8d
lea r9d, [r8 + 1]
mov r10, r8
nop word cs:[rax + rax]
test r10d, r10d
jle 0x14009e439
mov r11, qword [rax]
dec r9d
cmp qword [r11 + r10*8 - 8], 0
lea r10, [r10 - 1]
je 0x14009e420
jmp 0x14009e44e
mov r13d, 7
test r8d, r8d
jns 0x14009e4d2
mov r11, qword [rax]
mov r9d, edx
movsxd rax, r9d
mov rdx, qword [r11 + rax*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 r9, r8
shr r9, 4
xor edx, edx
cmp r8, 0x10
cmovb r9, r8
setae dl
shl edx, 2
mov r8, r9
shr r8, 2
xor r10d, r10d
cmp r9, 4
cmovb r8, r9
setae r10b
xor r9d, r9d
cmp r8, 2
setae r9b
sub edx, eax
lea r13d, [rdx + r10*2]
add r13d, r9d
and r13d, 7
call fcn.14009e810
movzx edx, byte [rsi]
mov ecx, r13d
shr edx, cl
test edx, edx
je 0x14009e503
mov dword [rsp + 0x20], 0xf0
lea r9, str....._third_party_boringssl_srccrypto_fipsmodule_rsapadding.c
xor ebp, ebp
mov ecx, 4
xor edx, edx
mov r8d, 0x7a
jmp 0x14009e552
mov dword [rsp + 0x2c], edi
mov edx, eax
xor edi, edi
test r13d, r13d
sete dil
mov r12, rdx
sub r12, rdi
lea rax, [r14 + 2]
cmp r12, rax
jb 0x14009e534
mov ecx, dword [rsp + 0x2c]
mov r8d, ecx
test ecx, ecx
js 0x14009e5aa
add rax, r8
cmp r12, rax
jae 0x14009e5aa
mov dword [rsp + 0x20], 0xfa
lea r9, str....._third_party_boringssl_srccrypto_fipsmodule_rsapadding.c
xor ebp, ebp
mov ecx, 4
xor edx, edx
mov r8d, 0x71
call fcn.1400bacd0
xor r14d, r14d
mov rcx, r14
call fcn.1400ae2a0
mov rcx, qword [rsp + 0x58]
call fcn.1400ae2a0
mov rax, qword [rsp + 0x68]
test rax, rax
je 0x14009e584
mov rax, qword [rax]
mov rcx, qword [rsp + 0x60]
call qword [0x140191008]
mov rcx, qword [rsp + 0xb0]
xor rcx, rsp
call fcn.1400fb950
mov eax, ebp
add rsp, 0xb8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
add rsi, rdi
cmp byte [rsi + r12 - 1], 0xbc
jne 0x14009e6b4
mov qword [rsp + 0x40], r8
mov qword [rsp + 0x38], rdx
mov qword [rsp + 0x48], rbp
mov rax, r14
not rax
add r12, rax
mov rcx, r12
call fcn.1400ae130
xor ebp, ebp
test rax, rax
je 0x14009e557
mov r9, r14
mov r14, rax
lea r8, [rsi + r12]
mov qword [rsp + 0x20], r15
mov rcx, rax
mov rdx, r12
mov qword [rsp + 0x30], r8
mov r15, r9
call fcn.14009e190
test eax, eax
je 0x14009e55a
test r12, r12
je 0x14009e630
xor eax, eax
nop word cs:[rax + rax]
movzx ecx, byte [rsi + rax]
xor byte [r14 + rax], cl
inc rax
cmp rax, r12
jb 0x14009e620
test r13d, r13d
mov rbp, qword [rsp + 0x48]
mov r8, qword [rsp + 0x40]
je 0x14009e64e
mov cl, 8
sub cl, r13b
mov eax, 0xff
shr eax, cl
and byte [r14], al
neg rdi
lea rax, [r12 - 1]
xor ecx, ecx
nop dword [rax + rax]
movzx edx, byte [r14 + rcx]
lea rsi, [rcx + 1]
test dl, dl
jne 0x14009e675
cmp rcx, rax
mov rcx, rsi
jb 0x14009e660
cmp dl, 1
jne 0x14009e6d7
cmp dword [rsp + 0x2c], 0
js 0x14009e6ff
add rdi, qword [rsp + 0x38]
not r8
add r8, rdi
sub r8, r15
cmp r8, rsi
je 0x14009e6ff
mov dword [rsp + 0x20], 0x11f
lea r9, str....._third_party_boringssl_srccrypto_fipsmodule_rsapadding.c
xor ebp, ebp
mov ecx, 4
xor edx, edx
mov r8d, 0x8a
jmp 0x14009e6f5
mov dword [rsp + 0x20], 0xfe
lea r9, str....._third_party_boringssl_srccrypto_fipsmodule_rsapadding.c
xor ebp, ebp
mov ecx, 4
xor edx, edx
mov r8d, 0x7f
jmp 0x14009e552
mov dword [rsp + 0x20], 0x119
lea r9, str....._third_party_boringssl_srccrypto_fipsmodule_rsapadding.c
xor ebp, ebp
mov ecx, 4
xor edx, edx
mov r8d, 0x8b
call fcn.1400bacd0
jmp 0x14009e55a
movaps xmm0, xmmword [0x14013ab10]
movaps xmmword [rsp + 0xa0], xmm0
movaps xmmword [rsp + 0x90], xmm0
movaps xmmword [rsp + 0x80], xmm0
movaps xmmword [rsp + 0x70], xmm0
lea rcx, [rsp + 0x50]
mov rdx, rbx
call fcn.14008f720
test eax, eax
je 0x14009e808
sub r12, rsi
mov rax, qword [rsp + 0x50]
mov rax, qword [rax + 0x18]
lea rdx, [0x14014f0f0]
lea rbx, [rsp + 0x50]
mov r8d, 8
mov rcx, rbx
call qword [0x140191008]
mov rax, qword [rsp + 0x50]
mov rax, qword [rax + 0x18]
mov rcx, rbx
mov rdx, rbp
mov rdi, r15
mov r8, r15
call qword [0x140191008]
mov rdx, r14
add rdx, rsi
mov rax, qword [rsp + 0x50]
mov rax, qword [rax + 0x18]
mov rcx, rbx
mov r8, r12
call qword [0x140191008]
mov rax, qword [rsp + 0x50]
mov rax, qword [rax + 0x20]
lea rdx, [rsp + 0x70]
mov rcx, rbx
call qword [0x140191008]
mov rax, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x58]
mov edx, dword [rax + 0x2c]
call fcn.1400ae2e0
mov ebp, 1
test edi, edi
je 0x14009e55a
lea rcx, [rsp + 0x70]
mov rdx, qword [rsp + 0x30]
mov r8, rdi
call fcn.14012d8b0
test eax, eax
je 0x14009e55a
mov dword [rsp + 0x20], 0x12b
lea r9, str....._third_party_boringssl_srccrypto_fipsmodule_rsapadding.c
xor ebp, ebp
mov ecx, 4
xor edx, edx
mov r8d, 0x69
jmp 0x14009e6f5
xor ebp, ebp
jmp 0x14009e55a