Function at 0x140081910
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 rbx, r9
mov r13, r8
mov r14, rdx
mov rsi, rcx
mov eax, dword [rsp + 0x128]
mov rcx, qword [0x140135388]
xor rcx, rsp
mov qword [rsp + 0xb0], rcx
xorps xmm0, xmm0
movaps xmmword [rsp + 0x50], xmm0
movaps xmmword [rsp + 0x60], xmm0
test r9, r9
cmove rbx, r8
mov ecx, dword [r8 + 4]
cmp eax, 0xfffffffe
je 0x140081998
mov r12d, ecx
cmp eax, 0xffffffff
je 0x14008199b
mov r12d, eax
cmp eax, 0xfffffffd
jg 0x14008199b
mov dword [rsp + 0x20], 0x202
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 0x140081b35
mov r12d, eax
mov qword [rsp + 0x30], rcx
mov r15, qword [rsp + 0x120]
mov rdi, qword [rsi + 8]
mov rcx, rdi
call fcn.140066380
mov ebp, eax
dec ebp
and ebp, 7
mov rax, qword [rsi]
mov rax, qword [rax + 0x20]
test rax, rax
je 0x1400819d1
mov rcx, rsi
call rax
mov rsi, rax
jmp 0x1400819e1
mov rcx, rdi
call fcn.140066380
mov esi, eax
add esi, 7
shr esi, 3
movzx eax, byte [r15]
mov ecx, ebp
shr eax, cl
test al, al
je 0x140081a10
mov dword [rsp + 0x20], 0x209
lea r9, str..._.._third_party_boringssl_src_crypto_fipsmodule_rsa_padding.c
xor esi, esi
mov ecx, 4
xor edx, edx
mov r8d, 0x7a
jmp 0x140081b35
mov qword [rsp + 0x40], r12
mov qword [rsp + 0x48], r14
lea r12, [r15 + 1]
xor r14d, r14d
test ebp, ebp
cmovne r12, r15
sete r14b
mov r15d, esi
sub r15d, r14d
mov rdx, qword [rsp + 0x30]
lea eax, [rdx + 2]
cmp r15d, eax
jl 0x140081ad7
mov rax, qword [rsp + 0x40]
add eax, edx
add eax, 2
cmp r15d, eax
jl 0x140081ad7
movsxd rax, r15d
cmp byte [rax + r12 - 1], 0xbc
jne 0x140081af7
mov eax, edx
not eax
mov dword [rsp + 0x3c], eax
add r15d, eax
movsxd rcx, r15d
mov qword [rsp + 0x28], rcx
call fcn.140090490
test rax, rax
je 0x140081b17
mov rdi, rax
mov rdx, qword [rsp + 0x28]
lea r8, [r12 + rdx]
mov qword [rsp + 0x20], rbx
mov rcx, rax
mov qword [rsp + 0x28], r8
mov r9, qword [rsp + 0x30]
call fcn.140081380
test eax, eax
je 0x140081b85
test r15d, r15d
jle 0x140081bd6
mov ecx, r15d
lea rdx, [rcx - 1]
mov eax, r15d
and eax, 3
cmp rdx, 3
jae 0x140081b89
xor edx, edx
jmp 0x140081bb9
mov dword [rsp + 0x20], 0x212
lea r9, str..._.._third_party_boringssl_src_crypto_fipsmodule_rsa_padding.c
xor esi, esi
mov ecx, 4
xor edx, edx
mov r8d, 0x71
jmp 0x140081b35
mov dword [rsp + 0x20], 0x216
lea r9, str..._.._third_party_boringssl_src_crypto_fipsmodule_rsa_padding.c
xor esi, esi
mov ecx, 4
xor edx, edx
mov r8d, 0x7f
jmp 0x140081b35
mov dword [rsp + 0x20], 0x21d
lea r9, str..._.._third_party_boringssl_src_crypto_fipsmodule_rsa_padding.c
xor esi, esi
mov ecx, 4
xor edx, edx
mov r8d, 0x41
call fcn.1400a8ab0
xor edi, edi
mov rcx, rdi
call fcn.1400904c0
mov rcx, qword [rsp + 0x58]
call fcn.1400904c0
mov rax, qword [rsp + 0x68]
test rax, rax
je 0x140081b5f
mov rcx, qword [rsp + 0x60]
call qword [rax]
mov rcx, qword [rsp + 0xb0]
xor rcx, rsp
call fcn.1400d8ee0
mov eax, esi
add rsp, 0xb8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
xor esi, esi
jmp 0x140081b3c
and ecx, 0xfffffffc
xor edx, edx
mov bl, byte [r12 + rdx]
xor byte [rdi + rdx], bl
mov bl, byte [r12 + rdx + 1]
xor byte [rdi + rdx + 1], bl
mov bl, byte [r12 + rdx + 2]
xor byte [rdi + rdx + 2], bl
mov bl, byte [r12 + rdx + 3]
xor byte [rdi + rdx + 3], bl
add rdx, 4
cmp rcx, rdx
jne 0x140081b8e
test rax, rax
je 0x140081bd6
lea rcx, [rdi + rdx]
add r12, rdx
xor edx, edx
mov bl, byte [r12 + rdx]
xor byte [rcx + rdx], bl
inc rdx
cmp rax, rdx
jne 0x140081bc7
test ebp, ebp
je 0x140081be8
mov cl, 8
sub cl, bpl
mov eax, 0xff
shr eax, cl
and byte [rdi], al
neg r14d
lea eax, [r15 - 1]
cdqe
xor ebx, ebx
mov rdx, qword [rsp + 0x40]
mov cl, byte [rdi + rbx]
cmp rbx, rax
lea rbx, [rbx + 1]
jge 0x140081c08
test cl, cl
je 0x140081bf8
cmp cl, 1
jne 0x140081c42
test edx, edx
js 0x140081c6a
add r14d, esi
sub r14d, edx
mov eax, dword [rsp + 0x3c]
add eax, r14d
cmp eax, ebx
je 0x140081c6a
mov dword [rsp + 0x20], 0x231
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 0x140081c60
mov dword [rsp + 0x20], 0x22d
lea r9, str..._.._third_party_boringssl_src_crypto_fipsmodule_rsa_padding.c
xor esi, esi
mov ecx, 4
xor edx, edx
mov r8d, 0x8b
call fcn.1400a8ab0
jmp 0x140081b3c
cmp qword [rsp + 0x50], r13
mov r14, qword [rsp + 0x48]
je 0x140081c9f
mov ecx, dword [r13 + 0x2c]
call fcn.140090490
test rax, rax
je 0x140081d55
mov rsi, rax
mov rcx, qword [rsp + 0x58]
call fcn.1400904c0
mov qword [rsp + 0x58], rsi
mov qword [rsp + 0x50], r13
mov ebp, r15d
sub rbp, rbx
lea rsi, [rsp + 0x50]
mov rcx, rsi
call qword [r13 + 0x10]
mov rax, qword [rsi]
lea rdx, [0x1401118c1]
mov r8d, 8
mov rcx, rsi
call qword [rax + 0x18]
mov rax, qword [rsi]
mov rcx, rsi
mov rdx, r14
mov r14, qword [rsp + 0x30]
mov r8, r14
call qword [rax + 0x18]
movsxd r8, ebp
mov rdx, rdi
add rdx, rbx
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + 0x18]
mov rax, qword [rsi]
lea rdx, [rsp + 0x70]
mov rcx, rsi
call qword [rax + 0x20]
mov rax, qword [rsi]
mov rcx, qword [rsi + 8]
mov edx, dword [rax + 0x2c]
call fcn.140090500
mov esi, 1
test r14d, r14d
je 0x140081b3c
lea rcx, [rsp + 0x70]
mov rdx, qword [rsp + 0x28]
mov r8, r14
call fcn.1400dbc80
test eax, eax
je 0x140081b3c
mov dword [rsp + 0x20], 0x23c
lea r9, str..._.._third_party_boringssl_src_crypto_fipsmodule_rsa_padding.c
xor esi, esi
mov ecx, 4
xor edx, edx
mov r8d, 0x69
jmp 0x140081c60
mov dword [rsp + 0x20], 0xc2
lea r9, str..._.._third_party_boringssl_src_crypto_fipsmodule_digest_digest.c
xor esi, esi
mov ecx, 0x1d
xor edx, edx
mov r8d, 0x41
jmp 0x140081c60