Function at 0x1401261e0
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x88
mov rdi, qword [rsp + 0xf0]
mov qword [rsp + 0xd8], rdx
mov r12, rcx
mov r14, r8
mov rbx, r9
call fcn.140267250
mov r13, rax
test rax, rax
je 0x140126630
test rbx, rbx
mov rcx, r14
cmove rbx, r14
call fcn.1400e01a0
mov ebp, eax
test eax, eax
js 0x140126630
cmp dword [rsp + 0xf8], 0xffffffff
je 0x1401266a8
cmp dword [rsp + 0xf8], 0xfffffffc
jl 0x140126600
mov rcx, qword [r12 + 0x28]
mov r15d, 0xff
call fcn.1400abf50
mov rcx, r12
lea esi, [rax - 1]
call fcn.14034c200
and esi, 7
movzx edx, byte [rdi]
mov ecx, esi
shl r15d, cl
and r15d, edx
jne 0x1401266d8
test esi, esi
jne 0x14012628c
add rdi, 1
sub eax, 1
lea edx, [rbp + 1]
cmp edx, eax
jge 0x140126718
mov r11d, eax
sub r11d, ebp
cmp dword [rsp + 0xf8], 0xfffffffd
je 0x1401266b8
lea edx, [r11 - 1]
cmp edx, dword [rsp + 0xf8]
jle 0x140126750
cdqe
cmp byte [rdi + rax - 1], 0xbc
jne 0x140126670
lea r10d, [r11 - 1]
mov r8d, 0x64
mov dword [rsp + 0x3c], r11d
lea rdx, str.crypto_rsa_rsa_pss.c
movsxd rcx, r10d
mov dword [rsp + 0x38], r10d
lea rax, [rdi + rcx]
mov qword [rsp + 0x30], rax
call fcn.140095a80
mov r12, rax
test rax, rax
je 0x140126630
mov r10d, dword [rsp + 0x38]
mov qword [rsp + 0x20], rbx
mov r9d, ebp
mov rcx, rax
mov r8, qword [rsp + 0x30]
mov edx, r10d
call fcn.14034d390
test eax, eax
js 0x140126636
mov r10d, dword [rsp + 0x38]
mov r11d, dword [rsp + 0x3c]
test r10d, r10d
jle 0x1401264b8
lea eax, [r11 - 2]
cmp eax, 0xe
jbe 0x1401267e4
mov edx, r10d
xor eax, eax
shr edx, 4
shl rdx, 4
nop word [rax + rax]
movdqu xmm0, xmmword [r12 + rax]
movdqu xmm1, xmmword [rdi + rax]
pxor xmm0, xmm1
movups xmmword [r12 + rax], xmm0
add rax, 0x10
cmp rax, rdx
jne 0x140126358
mov eax, r10d
and eax, 0xfffffff0
test r10b, 0xf
je 0x1401264b8
movsxd rdx, eax
movzx ecx, byte [rdi + rdx]
xor byte [r12 + rdx], cl
lea edx, [rax + 1]
cmp edx, r10d
jge 0x1401264b8
movsxd rdx, edx
movzx ecx, byte [rdi + rdx]
xor byte [r12 + rdx], cl
lea edx, [rax + 2]
cmp r10d, edx
jle 0x1401264b8
movsxd rdx, edx
movzx ecx, byte [rdi + rdx]
xor byte [r12 + rdx], cl
lea edx, [rax + 3]
cmp r10d, edx
jle 0x1401264b8
movsxd rdx, edx
movzx ecx, byte [rdi + rdx]
xor byte [r12 + rdx], cl
lea edx, [rax + 4]
cmp r10d, edx
jle 0x1401264b8
movsxd rdx, edx
movzx ecx, byte [rdi + rdx]
xor byte [r12 + rdx], cl
lea edx, [rax + 5]
cmp r10d, edx
jle 0x1401264b8
movsxd rdx, edx
movzx ecx, byte [rdi + rdx]
xor byte [r12 + rdx], cl
lea edx, [rax + 6]
cmp r10d, edx
jle 0x1401264b8
movsxd rdx, edx
movzx ecx, byte [rdi + rdx]
xor byte [r12 + rdx], cl
lea edx, [rax + 7]
cmp r10d, edx
jle 0x1401264b8
movsxd rdx, edx
movzx ecx, byte [rdi + rdx]
xor byte [r12 + rdx], cl
lea edx, [rax + 8]
cmp r10d, edx
jle 0x1401264b8
movsxd rdx, edx
movzx ecx, byte [rdi + rdx]
xor byte [r12 + rdx], cl
lea edx, [rax + 9]
cmp r10d, edx
jle 0x1401264b8
movsxd rdx, edx
movzx ecx, byte [rdi + rdx]
xor byte [r12 + rdx], cl
lea edx, [rax + 0xa]
cmp r10d, edx
jle 0x1401264b8
movsxd rdx, edx
movzx ecx, byte [rdi + rdx]
xor byte [r12 + rdx], cl
lea edx, [rax + 0xb]
cmp r10d, edx
jle 0x1401264b8
movsxd rdx, edx
movzx ecx, byte [rdi + rdx]
xor byte [r12 + rdx], cl
lea edx, [rax + 0xc]
cmp r10d, edx
jle 0x1401264b8
movsxd rdx, edx
movzx ecx, byte [rdi + rdx]
xor byte [r12 + rdx], cl
lea edx, [rax + 0xd]
cmp r10d, edx
jle 0x1401264b8
movsxd rdx, edx
add eax, 0xe
movzx ecx, byte [rdi + rdx]
xor byte [r12 + rdx], cl
cmp r10d, eax
jle 0x1401264b8
cdqe
movzx edx, byte [rdi + rax]
xor byte [r12 + rax], dl
nop dword [rax]
movzx r8d, byte [r12]
test esi, esi
je 0x1401264d6
mov ecx, 8
mov eax, 0xff
sub ecx, esi
sar eax, cl
and r8d, eax
mov byte [r12], r8b
test r8b, r8b
jne 0x1401267eb
cmp r11d, 2
jle 0x140126768
lea edx, [r11 - 3]
mov eax, 1
add rdx, 2
jmp 0x14012650d
add rax, 1
cmp rax, rdx
je 0x140126768
movzx r8d, byte [r12 + rax]
mov ebx, eax
test r8b, r8b
je 0x140126500
add ebx, 1
cmp r8b, 1
jne 0x140126768
mov eax, dword [rsp + 0xf8]
and eax, 0xfffffffd
cmp eax, 0xfffffffc
je 0x140126547
mov esi, r10d
sub esi, ebx
cmp esi, dword [rsp + 0xf8]
jne 0x1401267a0
xor r8d, r8d
mov rdx, r14
mov rcx, r13
mov dword [rsp + 0x38], r10d
call fcn.140267380
test eax, eax
je 0x140126633
mov r8d, 8
lea rdx, [0x140598790]
mov rcx, r13
call fcn.140267390
test eax, eax
je 0x140126633
movsxd rsi, ebp
mov rdx, qword [rsp + 0xd8]
mov rcx, r13
mov r8, rsi
call fcn.140267390
test eax, eax
je 0x140126633
mov r10d, dword [rsp + 0x38]
cmp r10d, ebx
je 0x1401265bf
sub r10d, ebx
movsxd rdx, ebx
mov rcx, r13
add rdx, r12
movsxd r8, r10d
call fcn.140267390
test eax, eax
je 0x140126633
lea r14, [rsp + 0x40]
xor r8d, r8d
mov rcx, r13
mov rdx, r14
call fcn.1402688d0
test eax, eax
je 0x140126633
mov rdx, qword [rsp + 0x30]
mov r8, rsi
mov rcx, r14
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x1401267f5
mov r15d, 1
jmp 0x140126636
call fcn.1400bf100
lea r8, str.RSA_verify_PKCS1_PSS_mgf1
mov edx, 0x46
lea rcx, str.crypto_rsa_rsa_pss.c
call fcn.1400bf220
xor r8d, r8d
mov edx, 0x88
mov ecx, 4
call fcn.1400bf330
nop
xor r12d, r12d
xor r15d, r15d
mov r8d, 0x8c
lea rdx, str.crypto_rsa_rsa_pss.c
mov rcx, r12
call fcn.140095b40
mov rcx, r13
call fcn.140267270
mov eax, r15d
add rsp, 0x88
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
call fcn.1400bf100
lea r8, str.RSA_verify_PKCS1_PSS_mgf1
mov edx, 0x5f
xor r12d, r12d
lea rcx, str.crypto_rsa_rsa_pss.c
call fcn.1400bf220
xor r8d, r8d
mov edx, 0x86
mov ecx, 4
call fcn.1400bf330
jmp 0x140126636
mov dword [rsp + 0xf8], eax
jmp 0x140126252
cdqe
lea ecx, [r11 - 2]
cmp byte [rdi + rax - 1], 0xbc
mov dword [rsp + 0xf8], ecx
je 0x1401262c9
jmp 0x140126670
call fcn.1400bf100
mov edx, 0x4d
xor r12d, r12d
xor r15d, r15d
lea r8, str.RSA_verify_PKCS1_PSS_mgf1
lea rcx, str.crypto_rsa_rsa_pss.c
call fcn.1400bf220
xor r8d, r8d
mov edx, 0x85
mov ecx, 4
call fcn.1400bf330
jmp 0x140126636
call fcn.1400bf100
lea r8, str.RSA_verify_PKCS1_PSS_mgf1
mov edx, 0x55
lea rcx, str.crypto_rsa_rsa_pss.c
xor r12d, r12d
call fcn.1400bf220
xor r8d, r8d
mov edx, 0x6d
mov ecx, 4
call fcn.1400bf330
jmp 0x140126636
call fcn.1400bf100
lea r8, str.RSA_verify_PKCS1_PSS_mgf1
mov edx, 0x5b
jmp 0x140126729
call fcn.1400bf100
lea r8, str.RSA_verify_PKCS1_PSS_mgf1
mov edx, 0x6f
lea rcx, str.crypto_rsa_rsa_pss.c
call fcn.1400bf220
xor r8d, r8d
mov edx, 0x87
mov ecx, 4
call fcn.1400bf330
jmp 0x140126636
call fcn.1400bf100
lea r8, str.RSA_verify_PKCS1_PSS_mgf1
mov edx, 0x75
lea rcx, str.crypto_rsa_rsa_pss.c
call fcn.1400bf220
mov dword [rsp + 0x20], esi
mov edx, 0x88
mov r9d, dword [rsp + 0xf8]
lea r8, str.expected:__d_retrieved:__d
mov ecx, 4
call fcn.1400bf330
jmp 0x140126636
xor eax, eax
jmp 0x140126385
mov ebx, 1
jmp 0x14012651c
call fcn.1400bf100
lea r8, str.RSA_verify_PKCS1_PSS_mgf1
mov edx, 0x85
lea rcx, str.crypto_rsa_rsa_pss.c
call fcn.1400bf220
xor r8d, r8d
mov edx, 0x68
mov ecx, 4
call fcn.1400bf330
jmp 0x140126636