Function at 0x140168f30
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.1402563f0
sub rsp, rax
mov rax, qword [0x1403bb2d8]
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.1400b2570
mov qword [rsp + 0x30], rax
test rax, rax
je 0x14016936f
test r13, r13
mov rcx, rsi
cmove r13, rsi
call fcn.1400c6d30
movsxd r14, eax
test eax, eax
js 0x14016904a
mov esi, dword [rsp + 0x118]
cmp esi, 0xffffffff
jne 0x140169017
mov esi, r14d
mov rcx, qword [rbx + 0x28]
call fcn.14011add0
mov rcx, rbx
lea r15d, [rax - 1]
and r15d, 7
call fcn.140198580
mov ecx, r15d
mov edx, 0xff
mov r11d, eax
shl edx, cl
test byte [rdi], dl
je 0x140169054
call fcn.1400baf40
lea r8, str.RSA_verify_PKCS1_PSS_mgf1
lea rcx, str.crypto_rsa_rsa_pss.c
mov edx, 0x4c
call fcn.1400bafb0
xor r8d, r8d
mov edx, 0x85
lea ecx, [r8 + 4]
call fcn.1400bb200
mov rsi, qword [rsp + 0x30]
jmp 0x140169372
cmp esi, 0xfffffffd
jge 0x140168fb5
call fcn.1400baf40
lea r8, str.RSA_verify_PKCS1_PSS_mgf1
lea rcx, str.crypto_rsa_rsa_pss.c
mov edx, 0x45
call fcn.1400bafb0
xor r8d, r8d
mov edx, 0x88
lea ecx, [r8 + 4]
call fcn.1400bb200
mov rsi, qword [rsp + 0x30]
jmp 0x140169372
test r15d, r15d
jne 0x14016905f
inc rdi
dec r11d
lea eax, [r14 + 2]
cmp r11d, eax
jge 0x14016909e
call fcn.1400baf40
lea r8, str.RSA_verify_PKCS1_PSS_mgf1
lea rcx, str.crypto_rsa_rsa_pss.c
mov edx, 0x54
call fcn.1400bafb0
xor r8d, r8d
lea edx, [r8 + 0x6d]
lea ecx, [rdx - 0x69]
call fcn.1400bb200
mov rsi, qword [rsp + 0x30]
jmp 0x140169372
mov ecx, r11d
sub ecx, r14d
cmp esi, 0xfffffffd
jne 0x1401690ee
lea esi, [rcx - 2]
movsxd rax, r11d
cmp byte [rax + rdi - 1], 0xbc
je 0x14016912b
call fcn.1400baf40
lea r8, str.RSA_verify_PKCS1_PSS_mgf1
lea rcx, str.crypto_rsa_rsa_pss.c
mov edx, 0x5e
call fcn.1400bafb0
xor r8d, r8d
mov edx, 0x86
lea ecx, [r8 + 4]
call fcn.1400bb200
mov rsi, qword [rsp + 0x30]
jmp 0x140169372
lea eax, [rcx - 2]
cmp esi, eax
jle 0x1401690ac
call fcn.1400baf40
lea r8, str.RSA_verify_PKCS1_PSS_mgf1
lea rcx, str.crypto_rsa_rsa_pss.c
mov edx, 0x5a
call fcn.1400bafb0
xor r8d, r8d
lea edx, [r8 + 0x6d]
lea ecx, [rdx - 0x69]
call fcn.1400bb200
mov rsi, qword [rsp + 0x30]
jmp 0x140169372
lea r12d, [rcx - 1]
lea rdx, str.crypto_rsa_rsa_pss.c
mov r8d, 0x63
movsxd rbx, r12d
mov rcx, rbx
lea rax, [rbx + rdi]
mov qword [rsp + 0x38], rax
call fcn.1400b4570
mov rbp, rax
test rax, rax
jne 0x14016918d
call fcn.1400baf40
lea r8, str.RSA_verify_PKCS1_PSS_mgf1
lea edx, [rbp + 0x65]
lea rcx, str.crypto_rsa_rsa_pss.c
call fcn.1400bafb0
lea ecx, [rbp + 4]
xor r8d, r8d
mov edx, 0xc0100
call fcn.1400bb200
mov rsi, qword [rsp + 0x30]
jmp 0x140169372
mov r8, qword [rsp + 0x38]
mov r9d, r14d
mov edx, r12d
mov rcx, rax
mov qword [rsp + 0x20], r13
call fcn.1401c1230
test eax, eax
js 0x14016904a
test r12d, r12d
jle 0x1401691cf
mov rcx, rbp
sub rdi, rbp
nop dword [rax + rax]
movzx eax, byte [rdi + rcx]
inc rcx
xor byte [rcx - 1], al
dec rbx
jne 0x1401691c0
test r15d, r15d
je 0x1401691e6
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 0x14016920e
lea ecx, [r12 - 1]
mov rax, rbp
nop dword [rax]
cmp ebx, ecx
jge 0x14016920e
inc rax
inc ebx
cmp byte [rax], r13b
je 0x140169200
movsxd rax, ebx
inc ebx
cmp byte [rax + rbp], 1
je 0x140169251
call fcn.1400baf40
lea r8, str.RSA_verify_PKCS1_PSS_mgf1
lea rcx, str.crypto_rsa_rsa_pss.c
mov edx, reloc.WS2_32.dll_WSASetLastError
call fcn.1400bafb0
xor r8d, r8d
mov edx, 0x87
lea ecx, [r8 + 4]
call fcn.1400bb200
mov rsi, qword [rsp + 0x30]
jmp 0x140169375
cmp esi, 0xfffffffe
je 0x1401692a3
mov edi, r12d
sub edi, ebx
cmp edi, esi
je 0x1401692a3
call fcn.1400baf40
lea r8, str.RSA_verify_PKCS1_PSS_mgf1
lea rcx, str.crypto_rsa_rsa_pss.c
mov edx, reloc.WS2_32.dll_WSACleanup
call fcn.1400bafb0
lea r8, str.expected:__d_retrieved:__d
mov r9d, esi
mov edx, 0x88
mov ecx, 4
mov dword [rsp + 0x20], edi
call fcn.1400bb200
mov rsi, qword [rsp + 0x30]
jmp 0x140169375
mov rsi, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x40]
xor r8d, r8d
mov rcx, rsi
call fcn.1400b4410
test eax, eax
je 0x140169375
lea rdx, [0x140321060]
mov r8d, 8
mov rcx, rsi
call fcn.1400b25a0
test eax, eax
je 0x140169375
mov rdx, qword [rsp + 0x48]
mov r8, r14
mov rcx, rsi
call fcn.1400b25a0
test eax, eax
je 0x140169375
sub r12d, ebx
je 0x14016930f
movsxd rdx, ebx
movsxd r8, r12d
mov rcx, rsi
add rdx, rbp
call fcn.1400b25a0
test eax, eax
je 0x140169375
lea rdx, [rsp + 0x50]
xor r8d, r8d
mov rcx, rsi
call fcn.1400b26c0
test eax, eax
je 0x140169375
mov rdx, qword [rsp + 0x38]
lea rcx, [rsp + 0x50]
mov r8, r14
call fcn.140256960
test eax, eax
je 0x140169367
call fcn.1400baf40
lea r8, str.RSA_verify_PKCS1_PSS_mgf1
lea rcx, str.crypto_rsa_rsa_pss.c
mov edx, 0x84
call fcn.1400bafb0
xor r8d, r8d
lea edx, [r8 + 0x68]
lea ecx, [rdx - 0x64]
call fcn.1400bb200
jmp 0x140169375
mov r13d, 1
jmp 0x140169375
mov rsi, rax
xor r13d, r13d
lea rdx, str.crypto_rsa_rsa_pss.c
mov r8d, 0x8b
mov rcx, rbp
call fcn.1400b4640
mov rcx, rsi
call fcn.1400b30e0
mov eax, r13d
mov rcx, qword [rsp + 0x90]
xor rcx, rsp
call fcn.140254fb0
add rsp, 0xa8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret