Function at 0x140056ec0
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 [0x140125058]
xor rcx, rsp
mov qword [rsp + 0xb0], rcx
xorps xmm0, xmm0
movaps xmmword [rsp + 0x60], xmm0
movaps xmmword [rsp + 0x50], xmm0
test r9, r9
cmove rbx, r8
mov ecx, dword [r8 + 4]
cmp eax, 0xfffffffe
je 0x140056f48
mov r12d, ecx
cmp eax, 0xffffffff
je 0x140056f4b
mov r12d, eax
cmp eax, 0xfffffffd
jg 0x140056f4b
mov dword [rsp + 0x20], 0x202
lea r9, str..._.._third_party_boringssl_src_crypto_fipsmodule_rsa_padding.c
xor ebx, ebx
mov ecx, 4
xor edx, edx
mov r8d, 0x8a
jmp 0x140057157
mov r12d, eax
mov qword [rsp + 0x30], rcx
mov r15, qword [rsp + 0x120]
mov rdi, qword [rsi + 8]
mov rcx, rdi
call fcn.140048040
mov ebp, eax
dec ebp
and ebp, 7
mov rax, qword [rsi]
mov rax, qword [rax + 0x20]
test rax, rax
je 0x140056f81
mov rcx, rsi
call rax
mov rsi, rax
jmp 0x140056f91
mov rcx, rdi
call fcn.140048040
mov esi, eax
add esi, 7
shr esi, 3
movzx eax, byte [r15]
mov edx, 0xff
mov ecx, ebp
shl edx, cl
test edx, eax
je 0x140056fc5
mov dword [rsp + 0x20], 0x209
lea r9, str..._.._third_party_boringssl_src_crypto_fipsmodule_rsa_padding.c
xor ebx, ebx
mov ecx, 4
xor edx, edx
mov r8d, 0x7a
jmp 0x140057157
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 rcx, qword [rsp + 0x30]
lea eax, [rcx + 2]
cmp r15d, eax
jl 0x1400570f9
mov rdx, rcx
mov rax, qword [rsp + 0x40]
lea eax, [rcx + rax]
add eax, 2
cmp r15d, eax
jl 0x1400570f9
movsxd rax, r15d
cmp byte [r12 + rax - 1], 0xbc
jne 0x140057119
mov eax, edx
not eax
add r15d, eax
movsxd rcx, r15d
mov qword [rsp + 0x38], rcx
call fcn.14005e4d0
test rax, rax
je 0x140057139
mov rdi, rax
mov rdx, qword [rsp + 0x38]
lea r8, [r12 + rdx]
mov qword [rsp + 0x20], rbx
mov rcx, rax
mov qword [rsp + 0x38], r8
mov r9, qword [rsp + 0x30]
call fcn.140056a60
test eax, eax
je 0x140057292
test r15d, r15d
jle 0x14005707e
mov eax, r15d
xor ecx, ecx
mov dl, byte [r12 + rcx]
xor byte [rdi + rcx], dl
inc rcx
cmp rax, rcx
jne 0x14005706f
test ebp, ebp
je 0x140057090
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 0x1400570b0
test cl, cl
je 0x1400570a0
cmp cl, 1
jne 0x1400571a7
test edx, edx
js 0x1400571cc
lea eax, [r14 + rsi]
add eax, 0xffffffff
sub eax, edx
sub eax, dword [rsp + 0x30]
cmp eax, ebx
je 0x1400571cc
mov dword [rsp + 0x20], 0x231
lea r9, str..._.._third_party_boringssl_src_crypto_fipsmodule_rsa_padding.c
xor ebx, ebx
mov ecx, 4
xor edx, edx
mov r8d, 0x8a
jmp 0x1400571c5
mov dword [rsp + 0x20], 0x212
lea r9, str..._.._third_party_boringssl_src_crypto_fipsmodule_rsa_padding.c
xor ebx, ebx
mov ecx, 4
xor edx, edx
mov r8d, 0x71
jmp 0x140057157
mov dword [rsp + 0x20], 0x216
lea r9, str..._.._third_party_boringssl_src_crypto_fipsmodule_rsa_padding.c
xor ebx, ebx
mov ecx, 4
xor edx, edx
mov r8d, 0x7f
jmp 0x140057157
mov dword [rsp + 0x20], 0x21d
lea r9, str..._.._third_party_boringssl_src_crypto_fipsmodule_rsa_padding.c
xor ebx, ebx
mov ecx, 4
xor edx, edx
mov r8d, 0x41
call fcn.14007f830
xor edi, edi
mov rcx, rdi
call fcn.14005e500
mov rcx, qword [rsp + 0x58]
call fcn.14005e500
mov rax, qword [rsp + 0x68]
test rax, rax
je 0x140057181
mov rcx, qword [rsp + 0x60]
call qword [rax]
mov rcx, qword [rsp + 0xb0]
xor rcx, rsp
call fcn.1400a6c00
mov eax, ebx
add rsp, 0xb8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov dword [rsp + 0x20], 0x22d
lea r9, str..._.._third_party_boringssl_src_crypto_fipsmodule_rsa_padding.c
xor ebx, ebx
mov ecx, 4
xor edx, edx
mov r8d, 0x8b
call fcn.14007f830
jmp 0x14005715e
lea rcx, [rsp + 0x50]
mov rdx, r13
call fcn.140050880
test eax, eax
je 0x140057292
mov ebp, r15d
sub rbp, rbx
lea rsi, [rsp + 0x50]
mov rax, qword [rsi]
lea rdx, [0x1400fc241]
mov r8d, 8
mov rcx, rsi
call qword [rax + 0x18]
mov rax, qword [rsi]
mov rcx, rsi
mov rdx, qword [rsp + 0x48]
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.14005e550
mov ebx, 1
test r14d, r14d
je 0x14005715e
lea rcx, [rsp + 0x70]
mov rdx, qword [rsp + 0x38]
mov r8, r14
call fcn.1400ca490
test eax, eax
je 0x14005715e
mov dword [rsp + 0x20], 0x23c
lea r9, str..._.._third_party_boringssl_src_crypto_fipsmodule_rsa_padding.c
xor ebx, ebx
mov ecx, 4
xor edx, edx
mov r8d, 0x69
jmp 0x1400571c5
xor ebx, ebx
jmp 0x14005715e