Function at 0x1400c9d00
Capabilities:
Encode data using xor
Hash data using sha256

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xc8
mov r15, r9
mov rbx, r8
mov r13, rdx
mov rdi, rcx
mov eax, dword [rsp + 0x138]
mov rcx, qword [0x140163028]
xor rcx, rsp
mov qword [rsp + 0xc0], rcx
movaps xmm0, xmmword [0x140141df0]
movaps xmmword [rsp + 0xb0], xmm0
movaps xmmword [rsp + 0xa0], xmm0
movaps xmmword [rsp + 0x90], xmm0
movaps xmmword [rsp + 0x80], xmm0
xorps xmm0, xmm0
movaps xmmword [rsp + 0x60], xmm0
movaps xmmword [rsp + 0x70], xmm0
test r9, r9
cmove r15, r8
mov r14d, dword [r8 + 4]
cmp eax, 0xfffffffe
je 0x1400c9de5
mov esi, r14d
cmp eax, 0xffffffff
je 0x1400c9de7
mov esi, eax
cmp eax, 0xfffffffd
jg 0x1400c9de7
mov dword [rsp + 0x20], 0x202
lea r9, str..._.._third_party_boringssl_src_crypto_fipsmodule_rsa_padding.c
xor edi, edi
mov ecx, 4
xor edx, edx
mov r8d, 0x8a
call fcn.140048380
mov rax, qword [rsp + 0x78]
test rax, rax
je 0x1400c9dbf
mov rcx, qword [rsp + 0x70]
call qword [rax]
mov rcx, qword [rsp + 0xc0]
xor rcx, rsp
call fcn.140107cc0
mov eax, edi
add rsp, 0xc8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov esi, eax
mov rbp, qword [rdi + 8]
mov rcx, rbp
call fcn.140049270
mov r12d, eax
dec r12d
and r12d, 7
mov rax, qword [rdi]
mov rax, qword [rax + 0x20]
test rax, rax
je 0x1400c9f98
mov rcx, rdi
call rax
mov rdi, qword [rsp + 0x130]
movzx edx, byte [rdi]
mov ecx, r12d
shr edx, cl
test dl, dl
je 0x1400c9e49
mov dword [rsp + 0x20], 0x209
lea r9, str..._.._third_party_boringssl_src_crypto_fipsmodule_rsa_padding.c
xor edi, edi
mov ecx, 4
xor edx, edx
mov r8d, 0x7a
jmp 0x1400c9da9
lea rbp, [rdi + 1]
xor r8d, r8d
test r12d, r12d
cmovne rbp, rdi
sete r8b
mov edi, eax
sub edi, r8d
lea edx, [r14 + 2]
cmp edi, edx
jl 0x1400c9f52
lea edx, [rsi + r14]
add edx, 2
cmp edi, edx
jl 0x1400c9f52
movsxd rdx, edi
cmp byte [rdx + rbp - 1], 0xbc
jne 0x1400c9f75
mov qword [rsp + 0x38], rax
mov eax, r14d
not eax
mov dword [rsp + 0x50], eax
add edi, eax
cmp edi, 0xfffffff7
ja 0x1400ca2c5
neg r8d
movsxd rax, edi
lea rdx, [rax + rbp]
mov qword [rsp + 0x58], rdx
mov qword [rsp + 0x48], rax
lea rdx, [rax + 8]
mov rcx, qword [0x140166328]
mov qword [rsp + 0x40], rdi
mov dword [rsp + 0x54], r8d
mov qword [rsp + 0x30], rcx
mov rdi, rdx
xor r8d, r8d
call qword [rcx]
test rax, rax
jne 0x1400c9eea
cmp byte [0x140169410], 0
jne 0x1400ca2ad
test rax, rax
je 0x1400ca2c5
mov rdx, qword [rsp + 0x48]
mov qword [rax], rdx
mov qword [rsp + 0x30], rax
add rax, 8
mov qword [rsp + 0x20], r15
mov r15, rax
mov rcx, rax
mov r8, qword [rsp + 0x58]
mov r9, r14
call fcn.1400c9530
test eax, eax
je 0x1400c9fab
mov r9, qword [rsp + 0x40]
test r9d, r9d
mov rdi, qword [rsp + 0x30]
jle 0x1400ca001
mov ecx, r9d
lea rdx, [rcx - 1]
mov r8d, r9d
and r8d, 3
cmp rdx, 3
jae 0x1400c9fb2
xor edx, edx
jmp 0x1400c9fe0
mov dword [rsp + 0x20], 0x212
lea r9, str..._.._third_party_boringssl_src_crypto_fipsmodule_rsa_padding.c
xor edi, edi
mov ecx, 4
xor edx, edx
mov r8d, 0x71
jmp 0x1400c9da9
mov dword [rsp + 0x20], 0x216
lea r9, str..._.._third_party_boringssl_src_crypto_fipsmodule_rsa_padding.c
xor edi, edi
mov ecx, 4
xor edx, edx
mov r8d, 0x7f
jmp 0x1400c9da9
mov rcx, rbp
call fcn.140049270
add eax, 7
shr eax, 3
jmp 0x1400c9e12
xor edi, edi
jmp 0x1400ca09a
and ecx, 0xfffffffc
xor edx, edx
mov al, byte [rbp + rdx]
xor byte [rdi + rdx + 8], al
mov al, byte [rbp + rdx + 1]
xor byte [rdi + rdx + 9], al
mov al, byte [rbp + rdx + 2]
xor byte [rdi + rdx + 0xa], al
mov al, byte [rbp + rdx + 3]
xor byte [rdi + rdx + 0xb], al
add rdx, 4
cmp rcx, rdx
jne 0x1400c9fb7
test r8, r8
je 0x1400ca001
lea rcx, [rdx + rdi]
add rcx, 8
add rbp, rdx
xor edx, edx
mov al, byte [rbp + rdx]
xor byte [rcx + rdx], al
inc rdx
cmp r8, rdx
jne 0x1400c9ff2
test r12d, r12d
je 0x1400ca015
mov cl, 8
sub cl, r12b
mov eax, 0xff
shr eax, cl
and byte [r15], al
lea eax, [r9 - 1]
cdqe
xor r12d, r12d
mov rdx, r12
mov cl, byte [r15 + r12]
inc r12
cmp rdx, rax
jge 0x1400ca031
test cl, cl
je 0x1400ca01e
cmp cl, 1
jne 0x1400ca077
test esi, esi
js 0x1400ca0f9
mov eax, dword [rsp + 0x54]
add eax, dword [rsp + 0x38]
sub eax, esi
mov ecx, dword [rsp + 0x50]
add ecx, eax
cmp ecx, r12d
je 0x1400ca0f9
mov dword [rsp + 0x20], 0x231
lea r9, str..._.._third_party_boringssl_src_crypto_fipsmodule_rsa_padding.c
xor edi, edi
mov ecx, 4
xor edx, edx
mov r8d, 0x8a
jmp 0x1400ca095
mov dword [rsp + 0x20], 0x22d
lea r9, str..._.._third_party_boringssl_src_crypto_fipsmodule_rsa_padding.c
xor edi, edi
mov ecx, 4
xor edx, edx
mov r8d, 0x8b
call fcn.140048380
mov rsi, qword [rsp + 0x30]
mov r8, qword [rsi]
add r8, 8
mov rcx, rsi
xor edx, edx
call fcn.14010a410
mov rcx, qword [0x140166328]
mov rdx, rsi
xor r8d, r8d
call qword [rcx + 0x28]
mov rsi, qword [rsp + 0x68]
test rsi, rsi
je 0x1400c9dae
mov r8, qword [rsi - 8]
add rsi, 0xfffffffffffffff8
add r8, 8
mov rcx, rsi
xor edx, edx
call fcn.14010a410
mov rcx, qword [0x140166328]
mov rdx, rsi
xor r8d, r8d
call qword [rcx + 0x28]
jmp 0x1400c9dae
mov qword [rsp + 0x48], r15
cmp qword [rsp + 0x60], rbx
je 0x1400ca16d
mov eax, dword [rbx + 0x2c]
mov qword [rsp + 0x38], rax
lea rbp, [rax + 8]
mov rsi, qword [0x140166328]
mov rcx, rsi
mov rdi, rbp
mov rdx, rbp
xor r8d, r8d
call qword [rsi]
mov r15, rax
test rax, rax
jne 0x1400ca13b
cmp byte [0x140169410], 0
jne 0x1400ca2e8
test r15, r15
mov r9, qword [rsp + 0x40]
je 0x1400ca2fb
mov rax, qword [rsp + 0x38]
mov qword [r15], rax
add r15, 8
mov rsi, qword [rsp + 0x68]
test rsi, rsi
jne 0x1400ca271
mov qword [rsp + 0x68], r15
mov qword [rsp + 0x60], rbx
mov esi, r9d
sub rsi, r12
mov rax, qword [rbx + 0x10]
lea rcx, [0x140101c10]
cmp rax, rcx
mov rbx, qword [rsp + 0x48]
jne 0x1400ca2a1
mov rax, qword [rsp + 0x68]
xorps xmm0, xmm0
movups xmmword [rax + 0x5c], xmm0
movups xmmword [rax + 0x50], xmm0
movups xmmword [rax + 0x40], xmm0
movups xmmword [rax + 0x30], xmm0
movups xmmword [rax + 0x20], xmm0
movaps xmm0, xmmword [0x14014c770]
movups xmmword [rax], xmm0
movaps xmm0, xmmword [0x14014c780]
movups xmmword [rax + 0x10], xmm0
mov dword [rax + 0x6c], 0x20
lea rdi, [rsp + 0x60]
mov rax, qword [rdi]
lea rdx, [0x14014ddf1]
mov r8d, 8
mov rcx, rdi
call qword [rax + 0x18]
mov rax, qword [rdi]
mov rcx, rdi
mov rdx, r13
mov r8, r14
call qword [rax + 0x18]
movsxd r8, esi
add rbx, r12
mov rax, qword [rdi]
mov rcx, rdi
mov rdx, rbx
call qword [rax + 0x18]
mov rax, qword [rdi]
lea rdx, [rsp + 0x80]
mov rcx, rdi
call qword [rax + 0x20]
mov rax, qword [rdi]
mov rcx, qword [rdi + 8]
mov r8d, dword [rax + 0x2c]
xor edx, edx
call fcn.14010a410
mov edi, 1
test r14d, r14d
je 0x1400ca09a
lea rcx, [rsp + 0x80]
mov rdx, qword [rsp + 0x58]
mov r8, r14
call fcn.140109f00
test eax, eax
je 0x1400ca09a
mov dword [rsp + 0x20], 0x23c
lea r9, str..._.._third_party_boringssl_src_crypto_fipsmodule_rsa_padding.c
xor edi, edi
mov ecx, 4
xor edx, edx
mov r8d, 0x69
jmp 0x1400ca095
mov r8, qword [rsi - 8]
add rsi, 0xfffffffffffffff8
add r8, 8
mov rcx, rsi
xor edx, edx
call fcn.14010a410
mov rcx, qword [0x140166328]
mov rdx, rsi
xor r8d, r8d
call qword [rcx + 0x28]
mov r9, qword [rsp + 0x40]
jmp 0x1400ca163
lea rcx, [rsp + 0x60]
call rax
jmp 0x1400ca1c4
mov rcx, rdi
call fcn.1400236b0
mov rdx, rdi
test al, al
mov rcx, qword [rsp + 0x30]
jne 0x1400c9ed0
mov dword [rsp + 0x20], 0x21d
lea r9, str..._.._third_party_boringssl_src_crypto_fipsmodule_rsa_padding.c
xor edi, edi
mov ecx, 4
xor edx, edx
mov r8d, 0x41
jmp 0x1400c9da9
mov rbp, rdi
mov rcx, rdi
call fcn.1400236b0
test al, al
jne 0x1400ca118
mov dword [rsp + 0x20], 0xc4
lea r9, str..._.._third_party_boringssl_src_crypto_fipsmodule_digest_digest.c
xor edi, edi
mov ecx, 0x1d
xor edx, edx
mov r8d, 0x41
jmp 0x1400ca095