Function at 0x14031b0e0
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x68
mov rbx, rcx
mov rbp, qword [rsp + 0xd0]
mov rax, qword [0x140418038]
xor rax, rsp
test rbp, rbp
cmove rbp, r9
mov qword [rsp + 0x60], rax
mov rcx, qword [rcx + 8]
movsxd rax, dword [rcx + 8]
test rax, rax
je 0x14031b1b8
mov r12, r9
mov r15, rdx
mov r13d, dword [rsp + 0xd8]
mov edi, dword [r9 + 4]
mov rdx, qword [rcx]
xor r10d, r10d
xor r9d, r9d
or r9, qword [rdx + r10*8]
inc r10
cmp rax, r10
jne 0x14031b13d
test r9, r9
je 0x14031b1b8
mov qword [rsp + 0x38], r8
call fcn.1401483b0
add eax, 7
mov r14d, eax
and r14d, 7
mov rcx, qword [rbx]
mov rdx, qword [rcx + 0x20]
test rdx, rdx
je 0x14031b23f
mov rcx, rbx
mov rax, rdx
call qword [case.0x1402bbc90.0]
mov esi, eax
test r14d, r14d
jne 0x14031b18f
mov byte [r15], 0
inc r15
dec rsi
lea rax, [rdi + 2]
cmp rsi, rax
jae 0x14031b205
mov dword [rsp + 0x20], 0x26e
lea r9, str....._third_party_boringssl_srccrypto_fipsmodule_rsapadding.c
xor esi, esi
mov ecx, 4
xor edx, edx
mov r8d, 0x72
jmp 0x14031b1d6
mov dword [rsp + 0x20], 0x261
lea r9, str....._third_party_boringssl_srccrypto_fipsmodule_rsapadding.c
xor esi, esi
mov ecx, 4
xor edx, edx
mov r8d, pe_nt_image_headers64
call fcn.1403497b0
xor ebx, ebx
mov rcx, rbx
call fcn.140212f50
mov rcx, qword [rsp + 0x60]
xor rcx, rsp
call fcn.140242430
mov eax, esi
add rsp, 0x68
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov qword [rsp + 0x28], r15
mov r15, rdi
cmp r13d, 0xffffffff
je 0x14031b223
cmp r13d, 0xfffffffe
jne 0x14031b274
mov r15, rsi
sub r15, rdi
add r15, 0xfffffffffffffffe
mov r13, rsi
sub r13, rdi
lea rax, [r13 - 2]
cmp rax, r15
jae 0x14031b247
mov dword [rsp + 0x20], 0x283
jmp 0x14031b1a0
shr eax, 3
jmp 0x14031b17e
test r15, r15
je 0x14031b282
mov rcx, r15
call fcn.140212f10
test rax, rax
je 0x14031b433
mov rbx, rax
lea r8, [0x1403c2410]
mov rcx, rax
mov rdx, r15
call fcn.1403130b0
jmp 0x14031b284
test r13d, r13d
js 0x14031b3da
mov r15d, r13d
jmp 0x14031b223
xor ebx, ebx
xorps xmm0, xmm0
lea rcx, [rsp + 0x40]
movaps xmmword [rcx + 0x10], xmm0
movaps xmmword [rcx], xmm0
mov rdx, r12
call fcn.14014a990
test eax, eax
je 0x14031b3fd
mov rax, qword [rsp + 0x28]
add rax, r13
dec rax
mov qword [rsp + 0x30], rax
dec r13
lea r12, [rsp + 0x40]
mov rax, qword [r12]
mov rax, qword [rax + 0x18]
lea rdx, [0x1403c24b1]
mov r8d, 8
mov rcx, r12
call qword [case.0x1402bbc90.0]
mov rax, qword [r12]
mov rax, qword [rax + 0x18]
mov rcx, r12
mov rdx, qword [rsp + 0x38]
mov r8, rdi
call qword [case.0x1402bbc90.0]
mov rax, qword [r12]
mov rax, qword [rax + 0x18]
mov rcx, r12
mov rdx, rbx
mov r8, r15
call qword [case.0x1402bbc90.0]
mov rax, qword [r12]
mov rax, qword [rax + 0x20]
mov rcx, r12
mov rdx, qword [rsp + 0x30]
call qword [case.0x1402bbc90.0]
mov rax, qword [r12]
mov rcx, qword [r12 + 8]
mov edx, dword [rax + 0x2c]
call fcn.140212f90
mov rcx, qword [r12 + 8]
call fcn.140212f50
mov rax, qword [r12 + 0x18]
test rax, rax
je 0x14031b352
mov rax, qword [rax]
mov rcx, qword [rsp + 0x50]
call qword [case.0x1402bbc90.0]
xorps xmm0, xmm0
movaps xmmword [rsp + 0x50], xmm0
movaps xmmword [rsp + 0x40], xmm0
mov qword [rsp + 0x20], rbp
mov r12, qword [rsp + 0x28]
mov rcx, r12
mov rdx, r13
mov r8, qword [rsp + 0x30]
mov r9, rdi
call fcn.14014d6d0
test eax, eax
je 0x14031b42c
add rdi, r15
mov rax, rsi
sub rax, rdi
xor byte [rax + r12 - 2], 1
test r15, r15
je 0x14031b3b3
mov rcx, qword [rsp + 0x28]
add rax, rcx
dec rax
xor ecx, ecx
mov dl, byte [rbx + rcx]
xor byte [rax + rcx], dl
inc rcx
cmp r15, rcx
jne 0x14031b3a5
test r14d, r14d
mov rdx, qword [rsp + 0x28]
je 0x14031b3cb
mov cl, 8
sub cl, r14b
mov eax, 0xff
shr eax, cl
and byte [rdx], al
mov byte [rsi + rdx - 1], ILCreateFromPathW
mov esi, 1
jmp 0x14031b1dd
mov dword [rsp + 0x20], 0x27c
lea r9, str....._third_party_boringssl_srccrypto_fipsmodule_rsapadding.c
xor esi, esi
mov ecx, 4
xor edx, edx
mov r8d, 0x8a
jmp 0x14031b1d6
mov rcx, qword [rsp + 0x48]
call fcn.140212f50
mov rax, qword [rsp + 0x58]
test rax, rax
je 0x14031b41f
mov rax, qword [rax]
mov rcx, qword [rsp + 0x50]
call qword [case.0x1402bbc90.0]
xorps xmm0, xmm0
movaps xmmword [rsp + 0x50], xmm0
movaps xmmword [rsp + 0x40], xmm0
xor esi, esi
jmp 0x14031b1dd
mov dword [rsp + 0x20], 0x28a
lea r9, str....._third_party_boringssl_srccrypto_fipsmodule_rsapadding.c
xor esi, esi
mov ecx, 4
xor edx, edx
mov r8d, 0x41
jmp 0x14031b1d6