Function at 0x140048a30
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0xa8
mov qword [rsp + 0x80], r8
mov qword [rsp + 0x88], rdx
mov qword [rsp + 0x90], rcx
mov rcx, qword [r8]
mov qword [rsp + 0x98], rcx
xor eax, eax
cmp rcx, 0
mov byte [rsp + 0xa7], al
jle 0x140048e1d
mov rax, qword [rsp + 0x88]
mov rcx, qword [rsp + 0x80]
mov rdx, qword [rsp + 0x90]
movabs r9, 0xb00e10f9d2ba74a1
movabs r8, 0x4ff1ef062d458b5e
xor r9, r8
mov r8, rax
xor r8, r9
mov qword [rsp + 0x58], r8
add rdx, 8
mov qword [rsp + 0x60], rdx
add rcx, 8
mov qword [rsp + 0x68], rcx
movabs rcx, 0xbd06f73bcc986f1c
movabs rdx, 0xbd06f73bcc986f1c
xor rcx, rdx
cmp rax, rcx
setl al
mov byte [rsp + 0x77], al
xor eax, eax
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0x98]
mov rcx, qword [rsp + 0x78]
mov qword [rsp + 0x48], rcx
cmp rcx, rax
mov qword [rsp + 0x50], rax
je 0x140048e03
mov eax, dword [0x140252340]
mov ecx, dword [0x140252344]
mov edx, 0x25a4103c
xor edx, 0x39607c0f
sub eax, edx
sub eax, ecx
mov ecx, 0x8c334a74
xor ecx, 0x90f72647
add eax, ecx
mov ecx, 0x97af4740
xor edx, edx
div ecx
mov ecx, eax
mov edx, 0x1f594c9c
xor edx, 0x366eb402
mov eax, 0xa231c6e9
xor eax, 0x5dce3916
xor edx, eax
mov eax, ecx
xor eax, edx
and eax, ecx
mov ecx, 0xf0817c3d
xor ecx, 0x7a9c15f3
or eax, ecx
mov ecx, 0xb2ee492f
xor ecx, 0x81c36b09
cmp eax, ecx
jbe 0x140048e31
mov rcx, qword [rsp + 0x48]
mov r9, qword [rsp + 0x88]
mov eax, dword [0x140252348]
mov r8d, dword [0x14025234c]
mov edx, 0x9b72f1de
xor edx, 0x6e3d46f9
xor r8d, edx
xor edx, edx
div r8d
xor eax, 0xcd132ecd
mov r8d, 0x3011bf3c
xor edx, edx
div r8d
mov rdx, qword [rsp + 0x58]
imul eax, eax, 0xadcfc21e
xor r8d, r8d
sub r8, r9
sub rcx, r8
mov qword [rsp + 0x38], rcx
and rcx, rdx
cmp rcx, 0
setl cl
mov byte [rsp + 0x47], cl
cmp eax, 0x6554018f
jbe 0x140048b71
mov al, byte [rsp + 0x47]
test al, 1
jne 0x140048bf1
jmp 0x140048c04
call fcn.140007e9d
xor eax, eax
mov byte [rsp + 0xa7], al
jmp 0x140048e1d
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x38]
mov rdx, qword [rsp + 0x90]
mov rdx, qword [rdx]
mov qword [rsp + 0x30], rdx
cmp rcx, rdx
mov qword [rsp + 0x50], rax
jge 0x140048e03
mov al, byte [rsp + 0x77]
test al, 1
jne 0x140048c3d
jmp 0x140048c5e
mov rcx, qword [rsp + 0x38]
mov rdx, qword [rsp + 0x30]
add rdx, 0xffffffffffffffff
call fcn.140013507
xor eax, eax
mov byte [rsp + 0xa7], al
jmp 0x140048e1d
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x98]
cmp rax, rcx
jl 0x140048cd1
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x98]
movabs rax, 0xaf73764b4c5e996c
movabs r8, 0xaf73764b4c5e996c
xor rax, r8
sub rax, rdx
xor edx, edx
sub rdx, 0xffffffffffffffff
add rax, rdx
movabs rdx, 0xfc3d9662736cd0fa
movabs r8, 0xfc3d9662736cd0fa
xor rdx, r8
sub rdx, rax
call fcn.140013507
xor eax, eax
mov byte [rsp + 0xa7], al
jmp 0x140048e1d
mov rax, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x68]
mov r8, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x60]
mov rcx, qword [rcx]
mov cl, byte [rcx + r8 + 8]
mov rdx, qword [rdx]
cmp cl, byte [rdx + rax + 8]
mov qword [rsp + 0x50], rax
jne 0x140048e03
mov eax, dword [0x140252350]
xor eax, 0x5ee6fdd3
xor edx, edx
div dword [0x140252354]
add eax, 0xc29ea8e
mov r8d, 0x306a9837
xor r8d, 0x508058c8
mov ecx, 0x3adca86f
xor ecx, 0xc5235790
xor r8d, ecx
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
mov r8d, 0x1adb3579
xor r8d, 0xe524ca86
xor ecx, r8d
imul ecx, edx
mov r8d, 0xf6703a4d
xor r8d, 0x969afab2
mov edx, eax
and edx, r8d
or eax, 0x60eac0ff
imul eax, edx
add eax, ecx
xor eax, 0xe36a6a66
cmp eax, 0x6dab5cdd
jbe 0x140048e3a
mov rcx, qword [rsp + 0x48]
mov eax, dword [0x140252358]
mov r8d, dword [0x14025235c]
mov edx, 0x4cc43464
xor edx, 0x778e8d86
xor r8d, edx
mov edx, eax
xor edx, r8d
mov r9d, 0x5583993b
xor r9d, 0xaa7c66c4
xor edx, r9d
or eax, r8d
and eax, edx
sub eax, 0xe2fc6ae9
sub eax, 0xb95dc211
mov r8d, 0x52d2d7a8
xor edx, edx
div r8d
movabs rdx, 0xf2b1e9bdfea8411d
movabs r8, 0xf2b1e9bdfea8411c
xor rdx, r8
add rcx, rdx
mov qword [rsp + 0x28], rcx
cmp eax, 0x966f9cdd
jae 0x140048e3a
mov rax, qword [rsp + 0x28]
mov qword [rsp + 0x78], rax
jmp 0x140048ae1
mov rcx, qword [rsp + 0x98]
mov rax, qword [rsp + 0x50]
cmp rax, rcx
sete al
mov byte [rsp + 0xa7], al
mov al, byte [rsp + 0xa7]
and al, 1
movzx eax, al
add rsp, 0xa8
ret
in al, dx
mov dl, 0x9e
add ch, cl
invalid
paddusw mm0, qword [rax - 0xc]
jmp 0x140048d7b