Function at 0x140094aa0
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0x80
lea rbp, [rsp + 0x80]
mov qword [rbp - 0x28], r8
mov qword [rbp - 0x58], rdx
mov qword [rbp - 0x50], rcx
mov qword [rbp - 0x48], rcx
mov eax, 0x10
mov qword [rbp - 0x40], rax
call fcn.1401ffc50
sub rsp, rax
mov rax, qword [rbp - 0x40]
mov rcx, rsp
mov qword [rbp - 0x38], rcx
call fcn.1401ffc50
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x30], rax
sub rsp, 0x20
call fcn.140092b48
mov r8, qword [rbp - 0x28]
add rsp, 0x20
mov qword [rbp - 0x20], rax
xor eax, eax
test r8, r8
cmovg rax, r8
mov qword [rbp - 0x18], rax
xor eax, eax
mov rcx, rax
mov qword [rbp - 0x10], rcx
mov qword [rbp - 8], rax
mov rcx, qword [rbp - 0x18]
mov rdx, qword [rbp - 0x10]
mov rax, qword [rbp - 8]
mov qword [rbp - 0x68], rax
mov qword [rbp - 0x60], rdx
cmp rax, rcx
je 0x140094bb8
mov rax, qword [rbp - 0x68]
mov r9, qword [rbp - 0x60]
mov rcx, qword [rbp - 0x58]
mov rdx, rax
shl rdx, 4
add rcx, rdx
mov r8, qword [rcx]
mov rcx, r8
add rcx, r9
mov rdx, rcx
xor rdx, r9
mov r10, rcx
xor r10, r8
xor r10, 0xffffffffffffffff
mov r9, r8
and r9, r10
shl r9, 1
sub r9, r8
mov r8, rcx
sub r8, r9
and rdx, r8
mov r8, 0xffffffffffffffff
xor r8, 1
xor r9d, r9d
sub r9, 1
sub r8, r9
sub rax, r8
cmp rdx, 0
mov qword [rbp - 0x10], rcx
mov qword [rbp - 8], rax
jge 0x140094b1a
sub rsp, 0x20
call fcn.140007f57
add rsp, 0x20
jmp 0x140094db8
mov rax, qword [rbp - 0x60]
cmp rax, 0
jge 0x140094c0a
mov rcx, qword [rbp - 0x60]
movabs rdx, 0x7941b7d4d8a05155
movabs rax, 0x7941b7d4d8a05155
xor rdx, rax
movabs r8, 0x16e2bf922d9de1ee
movabs rax, 0x691d406dd2621e11
xor r8, rax
sub rsp, 0x20
call fcn.14000dc65
add rsp, 0x20
jmp 0x140094db8
mov rdx, qword [rbp - 0x60]
mov rcx, qword [rbp - 0x50]
sub rsp, 0x20
call fcn.14001b8a0
mov rax, qword [rbp - 0x38]
add rsp, 0x20
mov qword [rax], 0
xor eax, eax
mov qword [rbp - 0x70], rax
mov rax, qword [rbp - 0x70]
mov qword [rbp - 0x78], rax
mov r8d, dword [0x140204838]
mov eax, dword [0x14020483c]
mov ecx, 0x56c6963f
xor ecx, 0xfbfd2663
xor eax, ecx
add r8d, 0x636248c3
sub r8d, eax
mov eax, 0xfb8619eb
xor eax, 0x98e45128
sub r8d, eax
mov eax, r8d
and eax, 0xee605fc0
shl eax, 1
mov ecx, 0xdb6559ee
xor ecx, 0x3505062e
xor r8d, ecx
add r8d, eax
mov ecx, r8d
xor ecx, 0xffffffff
mov eax, 0xcdd30426
xor eax, 0xa7423fdc
and eax, ecx
mov edx, 0x1a0b475f
xor edx, 0x709a7ca5
mov ecx, 0x50a8c1f1
xor ecx, 0xaf573e0e
xor edx, ecx
and r8d, edx
mov ecx, 0x5edcfafd
xor ecx, 0xbd4a68e7
mov r9d, 0x234f257f
xor r9d, 0xdcb0da80
xor ecx, r9d
mov r9d, 0x85bd01ab
xor r9d, 0xef2c3a51
and ecx, r9d
and edx, 0xe396921a
or eax, r8d
or ecx, edx
xor eax, ecx
mov ecx, 0x4249696f
xor edx, edx
div ecx
cmp eax, 0x79f2f919
ja 0x140094dc1
mov r8, qword [rbp - 0x18]
mov eax, dword [0x140204840]
imul eax, dword [0x140204844]
mov ecx, 0xaba03390
xor ecx, 0xaba03390
mov edx, 0xddcd46cc
xor edx, 0x95225f9c
sub ecx, edx
sub eax, ecx
mov ecx, 0x8083567d
xor edx, edx
div ecx
mov rdx, qword [rbp - 0x78]
and eax, 0xfd95d66a
mov ecx, 0x56f978f4
xor ecx, 0x5aeb8159
cmp rdx, r8
sete dl
mov byte [rbp - 0x79], dl
cmp eax, ecx
jae 0x140094cfe
mov al, byte [rbp - 0x79]
test al, 1
jne 0x140094db8
jmp 0x140094d67
mov r9, qword [rbp - 0x78]
mov r8, qword [rbp - 0x30]
mov rdx, qword [rbp - 0x38]
mov rcx, qword [rbp - 0x50]
mov rax, qword [rbp - 0x58]
shl r9, 4
add rax, r9
mov r9, qword [rax]
mov qword [r8], r9
mov rax, qword [rax + 8]
mov qword [r8 + 8], rax
sub rsp, 0x20
call fcn.1400930f0
mov rcx, qword [rbp - 0x20]
mov rax, qword [rbp - 0x78]
add rsp, 0x20
mov cl, byte [rcx]
add rax, 1
cmp cl, 0
mov qword [rbp - 0x70], rax
xchg r8d, eax
je 0x140094c30
mov rax, qword [rbp - 0x48]
mov rsp, rbp
pop rbp
ret
loopne 0x140094db0
sub edi, ebx
jmp 0x140094cfe