Function at 0x1400966d0
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x1e8
mov rax, qword [0x14018a040]
xor rax, rsp
mov qword [rsp + 0x1e0], rax
movzx eax, byte [rcx + 0x240]
movaps xmm0, xmmword [0x14015feb0]
movaps xmmword [rsp + 0x1d0], xmm0
test r9, r9
je 0x140096c68
cmp rax, qword [rsp + 0x268]
jne 0x140096c88
mov rsi, r9
mov r15, r8
mov rbx, rdx
mov r13, rcx
lea rax, [rcx + 8]
mov qword [rsp + 0x40], rax
lea rcx, [rsp + 0x50]
mov r8d, 0x180
xor edx, edx
call fcn.1400e6fe0
lea rdx, [r13 + 0x100]
lea r14, [rsp + 0xa0]
mov r8d, 0x120
mov rcx, r14
call fcn.1400e6940
mov r12, qword [r14 + 0x100]
xorps xmm0, xmm0
movaps xmmword [r14 - 0x50], xmm0
movaps xmmword [r14 - 0x20], xmm0
movaps xmmword [r14 - 0x10], xmm0
cmp rsi, 0xc
jne 0x140096bcc
mov eax, dword [r15 + 8]
mov dword [rsp + 0x58], eax
mov rax, qword [r15]
mov qword [rsp + 0x50], rax
mov byte [rsp + 0x5f], 1
mov esi, 2
lea rdx, [rsp + 0x70]
mov rax, qword [rdx + 0x140]
lea rdi, [rsp + 0x50]
mov rcx, rdi
mov r8, qword [rsp + 0x40]
call qword [0x14017da68]
bswap esi
mov dword [rdi + 0xc], esi
xor esi, esi
cmp qword [rdi + 0x38], 0
jne 0x140096ae2
mov r8, qword [rsp + 0x278]
mov rcx, qword [rsp + 0x80]
add rcx, r8
setb al
movabs rdx, 0x2000000000000000
cmp rcx, rdx
ja 0x140096ae2
test al, al
jne 0x140096ae2
mov r12, qword [rsp + 0x270]
mov rax, qword [rsp + 0x1a0]
mov r15, qword [rsp + 0x1a8]
mov qword [rsp + 0x80], rcx
mov edx, dword [rsp + 0x1c4]
test edx, edx
jne 0x140096b19
mov rdi, r8
mov rbp, rdi
and rbp, 0xfffffffffffffff0
jne 0x140096d00
test rdi, rdi
je 0x140096c61
xor eax, eax
mov cl, byte [r12 + rax]
xor byte [rsp + rax + 0x90], cl
inc rax
cmp rdi, rax
jne 0x14009684f
mov edx, edi
mov rdi, qword [rsp + 0x258]
mov r12, qword [rsp + 0x250]
mov dword [rsp + 0x1c4], edx
mov rbp, qword [r13 + 0x220]
test rbp, rbp
je 0x140096cd2
mov rax, qword [rsp + 0x88]
add rax, rdi
setb cl
movabs r8, 0xfffffffe0
cmp rax, r8
ja 0x140096ae2
test cl, cl
jne 0x140096ae2
mov r15, qword [rsp + 0x1a0]
mov rcx, qword [rsp + 0x1a8]
mov qword [rsp + 0x48], rcx
mov qword [rsp + 0x88], rax
test edx, edx
je 0x1400968f7
lea r13, [rsp + 0x90]
mov rcx, r13
mov rdx, r14
mov rax, r15
call qword [0x14017da68]
mov dword [r13 + 0x134], 0
mov eax, dword [rsp + 0x1c0]
test eax, eax
jne 0x140096b66
mov rsi, rdi
test byte [rsp + 0x1b8], 1
je 0x140096950
test rsi, rsi
je 0x140096950
lea rax, [rsp + 0x90]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], r14
lea rax, [rsp + 0x50]
mov qword [rsp + 0x20], rax
mov rcx, r12
mov rdx, rbx
mov r8, rsi
mov r9, qword [rsp + 0x40]
call fcn.14000d5e0
add r12, rax
add rbx, rax
sub rsi, rax
mov r14d, dword [rsp + 0x5c]
bswap r14d
cmp rsi, 0xc00
jae 0x140096d25
mov r15, rsi
and r15, 0xff0
je 0x1400969d1
mov r13, rsi
shr r13, 4
lea rdi, [rsp + 0x90]
mov rcx, rdi
lea rdx, [rsp + 0xa0]
mov r8, r12
mov r9, r15
mov rax, qword [rsp + 0x48]
call qword [0x14017da68]
lea rax, [rsp + 0x50]
mov qword [rsp + 0x20], rax
mov rcx, r12
mov rdx, rbx
mov r8, r13
mov r9, qword [rsp + 0x40]
mov rax, rbp
call qword [0x14017da68]
add r14d, r13d
mov eax, r14d
bswap eax
mov dword [rdi - 0x34], eax
add rbx, r15
add r12, r15
and esi, 0xf
test rsi, rsi
je 0x140096b12
lea rdx, [rsp + 0x60]
mov rax, qword [rdx + 0x150]
lea rdi, [rsp + 0x50]
mov rcx, rdi
mov r8, qword [rsp + 0x40]
call qword [0x14017da68]
inc r14d
bswap r14d
mov dword [rdi + 0xc], r14d
xor eax, eax
mov ecx, eax
mov dl, byte [r12 + rcx]
xor byte [rsp + rcx + 0x90], dl
xor dl, byte [rsp + rcx + 0x60]
mov byte [rbx + rcx], dl
inc rax
cmp rsi, rax
jne 0x140096a05
mov dword [rsp + 0x1c0], eax
mov r14, qword [rsp + 0x1a0]
or eax, dword [rsp + 0x1c4]
mov rdi, qword [rsp + 0x268]
lea r15, [rsp + 0xa0]
je 0x140096a5d
lea rcx, [rsp + 0x90]
mov rdx, r15
mov rax, r14
call qword [0x14017da68]
lea rsi, [rsp + 0x90]
mov rax, qword [rsi - 0x10]
shl rax, 3
bswap rax
mov rcx, qword [rsi - 8]
shl rcx, 3
bswap rcx
xor qword [rsi], rax
mov rbx, qword [rsp + 0x260]
xor qword [rsi + 8], rcx
mov rcx, rsi
mov rdx, r15
mov rax, r14
call qword [0x14017da68]
mov rax, qword [rsi - 0x20]
mov rcx, qword [rsi - 0x18]
xor qword [rsi], rax
xor qword [rsi + 8], rcx
test rdi, rdi
je 0x140096ac2
cmp rdi, 0x10
jb 0x140096cba
movaps xmm0, xmmword [rsi]
movaps xmmword [rsp + 0x1d0], xmm0
lea rcx, [rsp + 0x1d0]
mov rdx, rbx
mov r8, rdi
call fcn.14009b900
mov esi, 1
test eax, eax
jne 0x140096c92
mov rcx, qword [rsp + 0x1e0]
xor rcx, rsp
cmp rcx, qword [0x14018a040]
je 0x140096afc
call fcn.1400b64a0
int3
mov eax, esi
add rsp, 0x1e8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
xor eax, eax
jmp 0x140096a21
test r8, r8
je 0x140096864
lea rcx, [rsp + 0x90]
mov r9b, byte [r12]
mov r10d, edx
xor byte [rsp + r10 + 0x90], r9b
inc r12
lea rdi, [r8 - 1]
inc edx
and edx, 0xf
je 0x140096b50
cmp r8, 1
mov r8, rdi
jne 0x140096b2a
test edx, edx
jne 0x140096864
mov rdx, r14
call qword [0x14017da68]
jmp 0x140096837
test rdi, rdi
je 0x140096a21
lea rcx, [rsp + 0x90]
mov dl, byte [r12]
inc r12
mov r8d, eax
mov r9b, byte [rsp + r8 + 0x60]
xor r9b, dl
mov byte [rbx], r9b
xor byte [rsp + r8 + 0x90], dl
inc rbx
lea rsi, [rdi - 1]
inc eax
and eax, 0xf
je 0x140096bab
cmp rdi, 1
mov rdi, rsi
jne 0x140096b77
test eax, eax
jne 0x140096a21
lea r14, [rsp + 0xa0]
mov rdx, r14
mov rax, r15
call qword [0x14017da68]
jmp 0x140096909
cmp rsi, 0x10
jb 0x140096c0f
lea rbp, [rsp + 0x50]
mov rdi, rsi
mov rax, qword [r15]
xor qword [rsp + 0x50], rax
mov rax, qword [r15 + 8]
xor qword [rsp + 0x58], rax
mov rcx, rbp
mov rdx, r14
mov rax, r12
call qword [0x14017da68]
add r15, 0x10
add rdi, 0xfffffffffffffff0
cmp rdi, 0xf
ja 0x140096bda
test rdi, rdi
jne 0x140096c12
jmp 0x140096c35
mov rdi, rsi
xor eax, eax
mov cl, byte [r15 + rax]
xor byte [rsp + rax + 0x50], cl
inc rax
cmp rdi, rax
jne 0x140096c14
lea rcx, [rsp + 0x50]
mov rdx, r14
mov rax, r12
call qword [0x14017da68]
shl rsi, 3
bswap rsi
lea r15, [rsp + 0x50]
xor qword [r15 + 8], rsi
mov rcx, r15
mov rdx, r14
mov rax, r12
call qword [0x14017da68]
mov esi, dword [r15 + 0xc]
bswap esi
inc esi
jmp 0x1400967a3
xor edx, edx
jmp 0x140096864
mov dword [rsp + 0x20], 0x408
lea r9, str....._third_party_boringssl_srccrypto_fipsmoduleciphere_aes.c
xor esi, esi
mov ecx, 0x1e
xor edx, edx
mov r8d, 0x6f
jmp 0x140096cb0
mov dword [rsp + 0x20], 0x40d
jmp 0x140096c9a
mov dword [rsp + 0x20], 0x429
lea r9, str....._third_party_boringssl_srccrypto_fipsmoduleciphere_aes.c
xor esi, esi
mov ecx, 0x1e
xor edx, edx
mov r8d, 0x65
call fcn.1401378d0
jmp 0x140096ae2
lea rcx, [rsp + 0x1d0]
mov rdx, rsi
mov r8, rdi
call fcn.1400e6940
jmp 0x140096ac2
mov qword [rsp + 0x20], rdi
lea rcx, [rsp + 0x50]
mov rdx, qword [rsp + 0x40]
mov r8, r12
mov r9, rbx
call fcn.140126580
test eax, eax
je 0x140096ae2
mov eax, dword [rsp + 0x1c0]
jmp 0x140096a28
lea rcx, [rsp + 0x90]
mov rdx, r14
mov r8, r12
mov r9, rbp
mov rax, r15
call qword [0x14017da68]
add r12, rbp
and edi, 0xf
jmp 0x140096844
lea r15, [rsp + 0x90]
mov edi, 0xc00
mov r9d, 0xc00
mov rcx, r15
lea rdx, [rsp + 0xa0]
mov r8, r12
mov rax, qword [rsp + 0x48]
call qword [0x14017da68]
lea rax, [rsp + 0x50]
mov qword [rsp + 0x20], rax
mov r8d, 0xc0
mov rcx, r12
mov rdx, rbx
mov r9, qword [rsp + 0x40]
mov rax, rbp
call qword [0x14017da68]
add r14d, 0xc0
mov eax, r14d
bswap eax
mov dword [rsp + 0x5c], eax
add rbx, rdi
add r12, rdi
add rsi, 0xfffffffffffff400
cmp rsi, 0xbff
jbe 0x140096965
jmp 0x140096d32