Function at 0x1800e36e0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x20], rbp
push rsi
push rdi
push r13
push r14
push r15
sub rsp, 0x20
mov rax, qword [rcx + 0x10]
mov rsi, r8
mov r13d, edx
mov rdi, rcx
mov rbp, rax
test rax, rax
jns 0x1800e3709
neg rbp
xor r14d, r14d
test rax, rax
mov r15d, r14d
sets r15b
test r15d, r15d
je 0x1800e3752
mov rcx, rbp
call sym.extension.dll__PyLong_New
mov r10, rax
test rax, rax
jne 0x1800e373d
mov rbp, qword [rsp + 0x68]
add rsp, 0x20
pop r15
pop r14
pop r13
pop rdi
pop rsi
ret
lea rdx, [rdi + 0x18]
lea rcx, [rax + 0x18]
mov r8, rbp
call fcn.1800e36a0
mov rdi, r10
jmp 0x1800e3755
inc qword [rcx]
mov rax, qword [rsi + 0x10]
mov qword [rsp + 0x58], rbx
mov qword [rsp + 0x60], r12
mov rbx, rax
test rax, rax
jns 0x1800e376e
neg rbx
test rax, rax
mov r12d, r14d
sets r12b
test r12d, r12d
je 0x1800e37bc
mov rcx, rbx
call sym.extension.dll__PyLong_New
mov r10, rax
test rax, rax
jne 0x1800e37a7
dec qword [rdi]
jne 0x1800e3850
mov rax, qword [rdi + 8]
mov rcx, rdi
call qword [rax + 0x30]
xor eax, eax
jmp 0x1800e39c9
lea rdx, [rsi + 0x18]
lea rcx, [rax + 0x18]
mov r8, rbx
call fcn.1800e36a0
mov rsi, r10
jmp 0x1800e37bf
inc qword [rsi]
cmp rbp, rbx
jge 0x1800e37df
mov rax, rdi
mov rdi, rsi
mov rsi, rax
mov rax, rbp
mov rbp, rbx
mov rbx, rax
mov eax, r15d
mov r15d, r12d
mov r12d, eax
cmp r13d, 0x26
je 0x1800e3808
cmp r13d, 0x5e
je 0x1800e3800
cmp r13d, 0x7c
jne 0x1800e386d
mov ecx, r12d
or ecx, r15d
test r12d, r12d
cmovne rbp, rbx
jmp 0x1800e381b
mov ecx, r12d
xor ecx, r15d
jmp 0x1800e381b
mov ecx, r12d
mov rax, rbx
and ecx, r15d
test r12d, r12d
cmovne rax, rbp
mov rbp, rax
mov dword [rsp + 0x50], ecx
movsxd rcx, ecx
add rcx, rbp
call sym.extension.dll__PyLong_New
mov r15, rax
test rax, rax
jne 0x1800e3857
dec qword [rdi]
jne 0x1800e3841
mov rax, qword [rdi + 8]
mov rcx, rdi
call qword [rax + 0x30]
dec qword [rsi]
jne 0x1800e3850
mov rax, qword [rsi + 8]
mov rcx, rsi
call qword [rax + 0x30]
xor eax, eax
jmp 0x1800e39c9
cmp r13d, 0x26
je 0x1800e3927
cmp r13d, 0x5e
je 0x1800e38b9
cmp r13d, 0x7c
je 0x1800e3879
call sym.extension.dll_PyErr_BadArgument
xor eax, eax
jmp 0x1800e39c9
test rbx, rbx
jle 0x1800e3954
mov rdx, rdi
mov r8, rax
lea rcx, [rsi + 0x18]
sub rdx, rsi
sub r8, rsi
mov r14, rbx
nop word [rax + rax]
mov eax, dword [rdx + rcx]
lea rcx, [rcx + 4]
or eax, dword [rcx - 4]
mov dword [r8 + rcx - 4], eax
dec rbx
jne 0x1800e38a0
jmp 0x1800e3954
test rbx, rbx
jle 0x1800e38e5
mov rdx, rdi
mov r8, rax
lea rcx, [rsi + 0x18]
sub rdx, rsi
sub r8, rsi
mov r14, rbx
mov eax, dword [rcx + rdx]
lea rcx, [rcx + 4]
xor eax, dword [rcx - 4]
mov dword [rcx + r8 - 4], eax
dec rbx
jne 0x1800e38d1
test r12d, r12d
je 0x1800e3954
cmp r14, rbp
jge 0x1800e3978
lea rcx, [r14 + 6]
mov r8, rdi
mov rdx, rbp
sub r8, r15
lea rcx, [r15 + rcx*4]
sub rdx, r14
nop word [rax + rax]
mov eax, dword [r8 + rcx]
lea rcx, [rcx + 4]
xor eax, 0x3fffffff
mov dword [rcx - 4], eax
dec rdx
jne 0x1800e3910
jmp 0x1800e3978
test rbx, rbx
jle 0x1800e3954
mov rdx, rdi
mov r8, rax
lea rcx, [rsi + 0x18]
sub rdx, rsi
sub r8, rsi
mov r14, rbx
nop
mov eax, dword [rcx + rdx]
lea rcx, [rcx + 4]
and eax, dword [rcx - 4]
mov dword [rcx + r8 - 4], eax
dec rbx
jne 0x1800e3940
cmp r14, rbp
jge 0x1800e3978
lea rdx, [r14 + 6]
lea rcx, [r14 + 6]
mov r8, rbp
sub r8, r14
lea rdx, [rdi + rdx*4]
lea rcx, [r15 + rcx*4]
shl r8, 2
call fcn.180230800
cmp dword [rsp + 0x50], 0
je 0x1800e39a3
mov rax, qword [r15 + 0x10]
lea rcx, [r15 + 0x18]
lea r8, [rbp + 1]
neg rax
mov rdx, rcx
mov qword [r15 + 0x10], rax
mov dword [r15 + rbp*4 + 0x18], 0x3fffffff
call fcn.1800e36a0
dec qword [rdi]
jne 0x1800e39b2
mov rax, qword [rdi + 8]
mov rcx, rdi
call qword [rax + 0x30]
dec qword [rsi]
jne 0x1800e39c1
mov rax, qword [rsi + 8]
mov rcx, rsi
call qword [rax + 0x30]
mov rcx, r15
call fcn.1800e0100
mov rbx, qword [rsp + 0x58]
mov r12, qword [rsp + 0x60]
mov rbp, qword [rsp + 0x68]
add rsp, 0x20
pop r15
pop r14
pop r13
pop rdi
pop rsi
ret