Function at 0x180061df0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x70
movaps xmmword [rsp + 0x60], xmm6
mov rdi, rcx
movabs r13, 0x804c5c17b8b96c63
mov qword [rbp - 0x50], r13
movabs rbx, 0x6f9a7952f11eb083
mov qword [rbp - 0x48], rbx
movabs r14, 0xea232e47ddca0d21
mov qword [rbp - 0x30], r14
movabs r15, 0x6f9a1c3e986ad3e6
mov qword [rbp - 0x28], r15
movdqa xmm0, xmmword [rbp - 0x50]
pxor xmm0, xmmword [rbp - 0x30]
movdqa xmmword [rbp - 0x50], xmm0
call fcn.18005f040
mov edx, 0x84222325
mov r9d, edx
movzx ecx, byte [rax]
test cl, cl
je 0x180061e8a
movsx ecx, cl
xor ecx, r9d
imul r9d, ecx, 0x1b3
lea rax, [rax + 1]
movzx ecx, byte [rax]
test cl, cl
jne 0x180061e72
lea rcx, [rbp - 0x50]
mov r8, qword [rbp - 0x50]
test r8b, r8b
je 0x180061ebb
nop word [rax + rax]
movsx eax, r8b
xor eax, edx
imul edx, eax, 0x1b3
lea rcx, [rcx + 1]
movzx eax, byte [rcx]
movzx r8d, al
test al, al
jne 0x180061ea0
cmp r9d, edx
jne 0x1800622c8
mov rcx, rdi
call fcn.180069610
test al, al
jne 0x1800622c8
mov rcx, rdi
call fcn.18008a3f0
movaps xmm6, xmm0
mov rcx, rdi
call fcn.180061550
comiss xmm0, xmm6
ja 0x1800622c8
mov dl, 1
mov rcx, rdi
call fcn.180088d40
mov rcx, rdi
call fcn.180071400
movabs rcx, 0x895a6d34b9af684f
movabs rdx, 0x6f9a1c3e986ab68a
xor esi, esi
movabs r12, 0x7ffffffdfffe
test al, al
je 0x180062019
mov eax, dword [0x180115d78]
test al, 1
jne 0x180061fec
or eax, 1
mov dword [0x180115d78], eax
mov qword [rbp - 0x30], rcx
mov qword [rbp - 0x28], rdx
mov qword [rbp - 0x40], r14
mov qword [rbp - 0x38], r15
movdqa xmm0, xmmword [rbp - 0x30]
pxor xmm0, xmmword [rbp - 0x40]
movdqa xmmword [rbp - 0x30], xmm0
mov qword [rbp - 0x50], r13
mov qword [rbp - 0x48], rbx
mov qword [rbp - 0x40], r14
mov qword [rbp - 0x38], r15
movdqa xmm0, xmmword [rbp - 0x50]
pxor xmm0, xmmword [rbp - 0x40]
movdqa xmmword [rbp - 0x50], xmm0
mov qword [rbp - 0x40], r14
mov qword [rbp - 0x38], r15
mov qword [rbp - 0x20], r14
mov qword [rbp - 0x18], r15
movdqa xmm0, xmmword [rbp - 0x40]
pxor xmm0, xmmword [rbp - 0x20]
movdqa xmmword [rbp - 0x40], xmm0
lea rdx, [rbp - 0x50]
lea rcx, [rbp - 0x40]
call fcn.1800d3930
mov rdx, qword [0x180114f28]
cmp rax, rdx
jbe 0x180061fc3
add rdx, qword [0x180114f30]
cmp rax, rdx
jb 0x180061fd4
lea rcx, [rax - 0x10000]
cmp rcx, r12
jbe 0x180061fd4
mov rax, rsi
jmp 0x180061fe3
mov r8b, 1
lea rdx, [rbp - 0x30]
mov rcx, rax
call fcn.1800d3a50
mov qword [0x180115d70], rax
jmp 0x180061ff3
mov rax, qword [0x180115d70]
test rax, rax
je 0x180062019
lea rdx, [rax + rdi]
mov byte [rbp + 0x38], 0
mov r8d, 1
lea rcx, [rbp + 0x38]
call fcn.1800e9b20
cmp byte [rbp + 0x38], 0
jne 0x1800621ba
mov rcx, rdi
call fcn.180069610
test al, al
jne 0x1800622c8
mov eax, dword [0x180115d98]
test al, 1
jne 0x1800620ff
or eax, 1
mov dword [0x180115d98], eax
movabs rax, 0x83574f2ab2be7840
mov qword [rbp - 0x50], rax
movabs rax, 0x6f9a1c3e986ad385
mov qword [rbp - 0x48], rax
mov qword [rbp - 0x20], r14
mov qword [rbp - 0x18], r15
movdqa xmm0, xmmword [rbp - 0x50]
pxor xmm0, xmmword [rbp - 0x20]
movdqa xmmword [rbp - 0x50], xmm0
mov qword [rbp - 0x30], r13
mov qword [rbp - 0x28], rbx
mov qword [rbp - 0x20], r14
mov qword [rbp - 0x18], r15
movdqa xmm0, xmmword [rbp - 0x30]
pxor xmm0, xmmword [rbp - 0x20]
movdqa xmmword [rbp - 0x30], xmm0
mov qword [rbp - 0x40], r14
mov qword [rbp - 0x38], r15
mov qword [rbp - 0x20], r14
mov qword [rbp - 0x18], r15
movdqa xmm0, xmmword [rbp - 0x40]
pxor xmm0, xmmword [rbp - 0x20]
movdqa xmmword [rbp - 0x40], xmm0
lea rdx, [rbp - 0x30]
lea rcx, [rbp - 0x40]
call fcn.1800d3930
mov rdx, qword [0x180114f28]
cmp rax, rdx
jbe 0x1800620d6
add rdx, qword [0x180114f30]
cmp rax, rdx
jb 0x1800620e7
lea rcx, [rax - 0x10000]
cmp rcx, r12
jbe 0x1800620e7
mov rax, rsi
jmp 0x1800620f6
mov r8b, 1
lea rdx, [rbp - 0x50]
mov rcx, rax
call fcn.1800d3a50
mov qword [0x180115d90], rax
jmp 0x180062106
mov rax, qword [0x180115d90]
test rax, rax
je 0x180062128
lea rdx, [rax + rdi]
mov byte [rbp + 0x38], 0
mov r8d, 1
lea rcx, [rbp + 0x38]
call fcn.1800e9b20
cmp byte [rbp + 0x38], 0
jne 0x180062132
xor edx, edx
mov rcx, rdi
call fcn.180088d40
mov rcx, rdi
call fcn.18007d130
mov rcx, rax
call fcn.1800611f0
test eax, eax
jle 0x1800622c8
lea r8, [0x1800f9b38]
xor edx, edx
mov rcx, rdi
call fcn.180082320
mov rcx, rdi
call fcn.18007d130
mov rbx, rax
mov rcx, rdi
call fcn.18007d130
mov rcx, rax
call fcn.1800611f0
dec eax
mov dword [rbp + 0x38], eax
lea rcx, [rbx + 0x1c]
mov r8d, 4
lea rdx, [rbp + 0x38]
call fcn.1800e9b20
mov rcx, rdi
call fcn.180070320
mov rcx, rdi
call fcn.18008b910
mov rcx, rdi
call fcn.1800895d0
mov rcx, rdi
call fcn.180061990
mov rcx, rdi
call fcn.180071400
test al, al
jne 0x1800621c7
mov rcx, rdi
call fcn.18005dc70
jmp 0x1800622c8
mov eax, dword [0x180115f38]
test al, 1
jne 0x1800622a5
or eax, 1
mov dword [0x180115f38], eax
movabs rax, 0x895a6d34b9af684f
mov qword [rbp - 0x50], rax
movabs rax, 0x6f9a1c3e986ab68a
mov qword [rbp - 0x48], rax
mov qword [rbp - 0x20], r14
mov qword [rbp - 0x18], r15
movdqa xmm0, xmmword [rbp - 0x50]
pxor xmm0, xmmword [rbp - 0x20]
movdqa xmmword [rbp - 0x50], xmm0
mov qword [rbp - 0x30], r13
movabs rax, 0x6f9a7952f11eb083
mov qword [rbp - 0x28], rax
mov qword [rbp - 0x20], r14
mov qword [rbp - 0x18], r15
movdqa xmm0, xmmword [rbp - 0x30]
pxor xmm0, xmmword [rbp - 0x20]
movdqa xmmword [rbp - 0x30], xmm0
mov qword [rbp - 0x40], r14
mov qword [rbp - 0x38], r15
mov qword [rbp - 0x20], r14
mov qword [rbp - 0x18], r15
movdqa xmm0, xmmword [rbp - 0x40]
pxor xmm0, xmmword [rbp - 0x20]
movdqa xmmword [rbp - 0x40], xmm0
lea rdx, [rbp - 0x30]
lea rcx, [rbp - 0x40]
call fcn.1800d3930
mov rdx, qword [0x180114f28]
cmp rax, rdx
jbe 0x18006227e
add rdx, qword [0x180114f30]
cmp rax, rdx
jb 0x18006228a
lea rcx, [rax - 0x10000]
cmp rcx, r12
ja 0x18006229c
mov r8b, 1
lea rdx, [rbp - 0x50]
mov rcx, rax
call fcn.1800d3a50
mov rsi, rax
mov qword [0x180115f30], rsi
jmp 0x1800622ac
mov rsi, qword [0x180115f30]
test rsi, rsi
je 0x1800622c8
mov byte [rbp + 0x38], 1
lea rcx, [rsi + rdi]
mov r8d, 1
lea rdx, [rbp + 0x38]
call fcn.1800e9b20
lea r11, [rsp + 0x70]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
movaps xmm6, xmmword [rsp + 0x60]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret