Function at 0x180102a50
Capabilities:
Encode data using xor

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov eax, 0xa8
call fcn.18017e6d0
sub rsp, rax
mov rax, qword [0x1802658e0]
xor rax, rsp
mov qword [rsp + 0x90], rax
mov rdi, qword [rsp + 0x110]
mov r13, r9
mov rsi, r8
mov qword [rsp + 0x40], r8
mov qword [rsp + 0x48], rdx
mov rbx, rcx
xor ebp, ebp
call fcn.18005d310
mov qword [rsp + 0x30], rax
test rax, rax
je 0x180102db7
test r13, r13
mov rcx, rsi
cmove r13, rsi
call fcn.180056860
movsxd r14, eax
test eax, eax
js 0x180102b4e
mov esi, dword [rsp + 0x118]
cmp esi, 0xffffffff
jne 0x180102b29
mov esi, r14d
mov rcx, qword [rbx + 0x18]
call fcn.18006fd10
mov rcx, rbx
lea r15d, [rax - 1]
and r15d, 7
call fcn.180066b40
mov ecx, r15d
mov edx, 0xff
mov r11d, eax
shl edx, cl
test byte [rdi], dl
je 0x180102b58
mov edx, 0x7e
lea r9, str.crypto_rsa_rsa_pss.c
mov dword [rsp + 0x20], 0x46
lea ecx, [rdx - 0x7a]
lea r8d, [rdx + 7]
call fcn.1800493f0
mov rsi, qword [rsp + 0x30]
jmp 0x180102dba
cmp esi, 0xfffffffd
jge 0x180102ad5
mov edx, 0x7e
lea r9, str.crypto_rsa_rsa_pss.c
mov dword [rsp + 0x20], 0x3f
lea ecx, [rdx - 0x7a]
lea r8d, [rdx + 0xa]
call fcn.1800493f0
mov rsi, qword [rsp + 0x30]
jmp 0x180102dba
test r15d, r15d
jne 0x180102b63
inc rdi
dec r11d
lea eax, [r14 + 2]
cmp r11d, eax
jge 0x180102b98
mov dword [rsp + 0x20], 0x4e
mov r8d, WSASetLastError
mov edx, 0x7e
lea r9, str.crypto_rsa_rsa_pss.c
lea ecx, [rdx - 0x7a]
call fcn.1800493f0
mov rsi, qword [rsp + 0x30]
jmp 0x180102dba
mov ecx, r11d
sub ecx, r14d
cmp esi, 0xfffffffd
jne 0x180102bc0
lea esi, [rcx - 2]
movsxd rax, r11d
cmp byte [rax + rdi - 1], 0xbc
je 0x180102bd1
mov dword [rsp + 0x20], 0x58
mov r8d, 0x86
jmp 0x180102b7a
lea eax, [rcx - 2]
cmp esi, eax
jle 0x180102ba6
mov dword [rsp + 0x20], 0x54
jmp 0x180102b74
lea r12d, [rcx - 1]
lea rdx, str.crypto_rsa_rsa_pss.c
mov r8d, 0x5d
movsxd rbx, r12d
mov rcx, rbx
lea rax, [rbx + rdi]
mov qword [rsp + 0x38], rax
call fcn.180054d90
mov rbp, rax
test rax, rax
jne 0x180102c0f
mov dword [rsp + 0x20], 0x5f
lea r8d, [rax + 0x41]
jmp 0x180102b7a
mov r8, qword [rsp + 0x38]
mov r9d, r14d
mov edx, r12d
mov rcx, rax
mov qword [rsp + 0x20], r13
call fcn.1800e9170
test eax, eax
js 0x180102b4e
test r12d, r12d
jle 0x180102c4f
mov rcx, rbp
sub rdi, rbp
nop word [rax + rax]
movzx eax, byte [rdi + rcx]
inc rcx
xor byte [rcx - 1], al
dec rbx
jne 0x180102c40
test r15d, r15d
je 0x180102c66
mov ecx, 8
mov eax, 0xff
sub ecx, r15d
sar eax, cl
and byte [rbp], al
xor r13d, r13d
mov ebx, r13d
cmp byte [rbp], bl
jne 0x180102c8e
lea ecx, [r12 - 1]
mov rax, rbp
nop dword [rax]
cmp ebx, ecx
jge 0x180102c8e
inc rax
inc ebx
cmp byte [rax], r13b
je 0x180102c80
movsxd rax, ebx
inc ebx
cmp byte [rax + rbp], 1
je 0x180102cc3
mov edx, 0x7e
lea r9, str.crypto_rsa_rsa_pss.c
mov dword [rsp + 0x20], WSASetLastError
lea ecx, [rdx - 0x7a]
lea r8d, [rdx + 9]
call fcn.1800493f0
mov rsi, qword [rsp + 0x30]
jmp 0x180102dbd
cmp esi, 0xfffffffe
je 0x180102cfb
mov eax, r12d
sub eax, ebx
cmp eax, esi
je 0x180102cfb
mov edx, 0x7e
lea r9, str.crypto_rsa_rsa_pss.c
mov dword [rsp + 0x20], WSASetLastError
lea ecx, [rdx - 0x7a]
lea r8d, [rdx + 0xa]
call fcn.1800493f0
mov rsi, qword [rsp + 0x30]
jmp 0x180102dbd
mov rsi, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x40]
xor r8d, r8d
mov rcx, rsi
call fcn.18005d380
test eax, eax
je 0x180102dbd
lea rdx, [0x18020a058]
mov r8d, 8
mov rcx, rsi
call fcn.18005d5f0
test eax, eax
je 0x180102dbd
mov rdx, qword [rsp + 0x48]
mov r8, r14
mov rcx, rsi
call fcn.18005d5f0
test eax, eax
je 0x180102dbd
sub r12d, ebx
je 0x180102d63
movsxd rdx, ebx
movsxd r8, r12d
mov rcx, rsi
add rdx, rbp
call fcn.18005d5f0
test eax, eax
je 0x180102dbd
lea rdx, [rsp + 0x50]
xor r8d, r8d
mov rcx, rsi
call fcn.18005d620
test eax, eax
je 0x180102dbd
mov rdx, qword [rsp + 0x38]
lea rcx, [rsp + 0x50]
mov r8, r14
call fcn.18017e7c0
test eax, eax
je 0x180102daf
mov edx, 0x7e
lea r9, str.crypto_rsa_rsa_pss.c
mov dword [rsp + 0x20], 0x7c
lea ecx, [rdx - 0x7a]
lea r8d, [rdx - 0x16]
call fcn.1800493f0
jmp 0x180102dbd
mov r13d, 1
jmp 0x180102dbd
mov rsi, rax
xor r13d, r13d
lea rdx, str.crypto_rsa_rsa_pss.c
mov r8d, 0x83
mov rcx, rbp
call fcn.180054e60
mov rcx, rsi
call fcn.18005d340
mov eax, r13d
mov rcx, qword [rsp + 0x90]
xor rcx, rsp
call fcn.180179370
add rsp, 0xa8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret