Function at 0x1400589f0
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 0x140058a78
mov r12d, ecx
cmp eax, 0xffffffff
je 0x140058a7b
mov r12d, eax
cmp eax, 0xfffffffd
jg 0x140058a7b
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 0x140058c87
mov r12d, eax
mov qword [rsp + 0x30], rcx
mov r15, qword [rsp + 0x120]
mov rdi, qword [rsi + 8]
mov rcx, rdi
call fcn.140049b60
mov ebp, eax
dec ebp
and ebp, 7
mov rax, qword [rsi]
mov rax, qword [rax + 0x20]
test rax, rax
je 0x140058ab1
mov rcx, rsi
call rax
mov rsi, rax
jmp 0x140058ac1
mov rcx, rdi
call fcn.140049b60
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 0x140058af5
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 0x140058c87
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 0x140058c29
mov rdx, rcx
mov rax, qword [rsp + 0x40]
lea eax, [rcx + rax]
add eax, 2
cmp r15d, eax
jl 0x140058c29
movsxd rax, r15d
cmp byte [r12 + rax - 1], 0xbc
jne 0x140058c49
mov eax, edx
not eax
add r15d, eax
movsxd rcx, r15d
mov qword [rsp + 0x38], rcx
call fcn.140060000
test rax, rax
je 0x140058c69
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.140058590
test eax, eax
je 0x140058dc2
test r15d, r15d
jle 0x140058bae
mov eax, r15d
xor ecx, ecx
mov dl, byte [r12 + rcx]
xor byte [rdi + rcx], dl
inc rcx
cmp rax, rcx
jne 0x140058b9f
test ebp, ebp
je 0x140058bc0
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 0x140058be0
test cl, cl
je 0x140058bd0
cmp cl, 1
jne 0x140058cd7
test edx, edx
js 0x140058cfc
lea eax, [r14 + rsi]
add eax, 0xffffffff
sub eax, edx
sub eax, dword [rsp + 0x30]
cmp eax, ebx
je 0x140058cfc
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 0x140058cf5
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 0x140058c87
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 0x140058c87
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.1400819b0
xor edi, edi
mov rcx, rdi
call fcn.140060030
mov rcx, qword [rsp + 0x58]
call fcn.140060030
mov rax, qword [rsp + 0x68]
test rax, rax
je 0x140058cb1
mov rcx, qword [rsp + 0x60]
call qword [rax]
mov rcx, qword [rsp + 0xb0]
xor rcx, rsp
call fcn.1400a8dd0
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.1400819b0
jmp 0x140058c8e
lea rcx, [rsp + 0x50]
mov rdx, r13
call fcn.1400523b0
test eax, eax
je 0x140058dc2
mov ebp, r15d
sub rbp, rbx
lea rsi, [rsp + 0x50]
mov rax, qword [rsi]
lea rdx, [0x1400fc761]
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.140060080
mov ebx, 1
test r14d, r14d
je 0x140058c8e
lea rcx, [rsp + 0x70]
mov rdx, qword [rsp + 0x38]
mov r8, r14
call fcn.1400cc660
test eax, eax
je 0x140058c8e
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 0x140058cf5
xor ebx, ebx
jmp 0x140058c8e