Function at 0x14003dc00
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x98
mov qword [rsp + 0x28], r9
mov qword [rsp + 0x20], r8
mov rbp, rdx
mov r9, qword [rsp + 0x140]
mov rdx, qword [rsp + 0x120]
mov rax, qword [rsp + 0x100]
mov qword [rsp + 0x50], rcx
mov r10, qword [rcx]
mov r13, qword [rax]
mov eax, r13d
mov ecx, r10d
add rcx, rcx
imul rcx, rax
add r10, r13
add r10, rcx
mov r9, qword [r9]
xor r9, r10
rol r9, 0x20
mov r12, qword [rdx]
mov eax, r9d
mov ecx, r12d
add rcx, rcx
imul rcx, rax
add r12, r9
add r12, rcx
xor r13, r12
rol r13, 0x28
mov rdx, qword [rsp + 0x108]
mov eax, r13d
mov ecx, r10d
add rcx, rcx
imul rcx, rax
add r10, r13
add r10, rcx
mov rax, r10
mov qword [rsp + 0x40], r10
xor r9, r10
rol r9, 0x30
mov ecx, r9d
mov eax, r12d
add rax, rax
imul rax, rcx
mov r10, qword [rbp]
mov ecx, r10d
add rcx, rcx
mov r11, qword [rdx]
mov edx, r11d
imul rcx, rdx
mov qword [rsp + 0x18], r11
add r10, r11
add r10, rcx
mov qword [rsp + 0x48], r9
add r12, r9
mov rcx, qword [rsp + 0x148]
mov r9, qword [rcx]
mov qword [rsp], r10
xor r9, r10
rol r9, 0x20
add r12, rax
mov rax, qword [rsp + 0x128]
mov rax, qword [rax]
mov qword [rsp + 0x10], rax
mov eax, dword [0x141dc5908]
xor edx, edx
div dword [0x141dc590c]
xor r13, r12
imul ecx, eax, 0xfe0f2636
mov r14, qword [rsp + 0x158]
mov rsi, qword [rsp + 0x150]
mov rdi, qword [rsp + 0x138]
mov rbx, qword [rsp + 0x118]
mov qword [rsp + 0x38], r9
mov r10d, r9d
cmp ecx, 0x920e0174
jne 0x14003dffc
mov rcx, qword [rsp + 0x10]
lea rdx, [rcx + rcx]
movabs r8, 0x1fffffffe
and rdx, r8
imul rdx, r10
mov r11, qword [rsp + 0x38]
add rcx, r11
add rdx, rcx
mov r9, rdx
xor r9, qword [rsp + 0x18]
rol r9, 0x28
mov qword [rsp + 8], r10
mov r10d, r9d
mov rax, qword [rsp]
lea rcx, [rax + rax]
and rcx, r8
imul rcx, r10
add rcx, r9
add rcx, rax
mov r15, rcx
xor r15, r11
rol r15, 0x30
mov r10d, r15d
lea r11, [rdx + rdx]
and r11, r8
imul r11, r10
add r15, rdx
add r15, r11
xor r15, r9
rol r15, 1
mov rax, qword [rsp + 0x20]
mov r9, qword [rax]
mov rax, qword [rsp + 0x110]
mov rdx, qword [rax]
mov r10d, edx
lea r11, [r9 + r9]
and r11, r8
imul r11, r10
add r9, rdx
add r9, r11
mov r11, qword [rsi]
xor r11, r9
rol r11, 0x20
mov rax, qword [rsp + 0x130]
mov r10, qword [rax]
mov esi, r11d
lea rdi, [r10 + r10]
and rdi, r8
imul rdi, rsi
add r10, r11
add r10, rdi
xor rdx, r10
rol rdx, 0x28
mov esi, edx
lea rdi, [r9 + r9]
and rdi, r8
imul rdi, rsi
add r9, rdx
add r9, rdi
xor r9, r11
rol r9, 0x30
mov r11d, r9d
lea rsi, [r10 + r10]
and rsi, r8
imul rsi, r11
add r9, r10
add r9, rsi
xor rdx, r9
mov r10, qword [rsp + 0x28]
mov rsi, qword [r10]
mov r11, qword [rbx]
mov r10d, r11d
lea rdi, [rsi + rsi]
and rdi, r8
imul rdi, r10
add rsi, r11
add rsi, rdi
mov rdi, qword [r14]
xor rdi, rsi
rol rdi, 0x20
mov rax, qword [rsp + 0x138]
mov r10, qword [rax]
mov ebx, edi
lea r14, [r10 + r10]
and r14, r8
imul r14, rbx
add r10, rdi
add r10, r14
xor r11, r10
rol r11, 0x28
mov ebx, r11d
lea r14, [rsi + rsi]
and r14, r8
imul r14, rbx
add r11, rsi
add r11, r14
xor r11, rdi
rol r11, 0x30
mov ebx, r11d
lea rdi, [r10 + r10]
and rdi, r8
add r10, r11
mov r14d, r15d
mov rax, qword [rsp + 0x40]
lea rsi, [rax + rax]
and rsi, r8
imul rsi, r14
add rsi, r15
add rsi, rax
xor r11, rsi
rol r11, 0x20
imul rdi, rbx
mov ebx, r11d
lea r14, [r9 + r9]
and r14, r8
imul r14, rbx
add r9, r11
add r9, r14
xor r15, r9
rol r15, 0x28
mov ebx, r15d
lea r14, [rsi + rsi]
and r14, r8
imul r14, rbx
add rsi, r15
add rsi, r14
mov r14, qword [rsp + 0x50]
mov qword [r14], rsi
mov r14, qword [rsp + 0x158]
xor rsi, r11
rol rsi, 0x30
add r10, rdi
mov r11d, esi
lea rdi, [r9 + r9]
and rdi, r8
imul rdi, r11
rol rdx, 1
mov qword [r14], rsi
add rsi, r9
add rsi, rdi
mov rax, qword [rsp + 0x130]
mov qword [rax], rsi
xor rsi, r15
rol rsi, 1
mov r11d, edx
lea r9, [rcx + rcx]
and r9, r8
imul r9, r11
add rcx, rdx
add rcx, r9
mov rdi, rcx
xor rdi, qword [rsp + 0x48]
rol rdi, 0x20
mov rax, qword [rsp + 0x108]
mov qword [rax], rsi
mov r9d, edi
lea r11, [r10 + r10]
and r11, r8
imul r11, r9
add r10, rdi
add r10, r11
xor rdx, r10
rol rdx, 0x28
mov r9d, edx
lea r11, [rcx + rcx]
and r11, r8
imul r11, r9
add rcx, rdx
add rcx, r11
mov qword [rbp], rcx
xor rcx, rdi
mov rdi, qword [rsp + 0x140]
rol rcx, 0x30
mov r11d, ecx
lea r9, [r10 + r10]
and r9, r8
imul r9, r11
mov qword [rdi], rcx
mov rdi, qword [rsp + 0x138]
add rcx, r10
mov r10, qword [rsp + 8]
mov rax, qword [rsp + 0x110]
add rcx, r9
mov qword [rdi], rcx
xor rcx, rdx
rol rcx, 1
mov qword [rax], rcx
rol r13, 1
mov qword [rsp + 0x70], r13
mov r9, qword [rsp + 0x10]
lea rcx, [r9 + r9]
movabs rax, 0x1fffffffe
and rcx, rax
imul r10, rcx
add r9, qword [rsp + 0x38]
add r9, r10
mov rdx, qword [rsp + 0x18]
xor rdx, r9
rol rdx, 0x28
mov rcx, qword [rsp]
lea r10, [rcx + rcx]
and r10, rax
mov qword [rsp + 0x88], r10
mov qword [rsp + 0x18], rdx
add rcx, rdx
mov qword [rsp], rcx
mov qword [rsp + 0x10], r9
lea rcx, [r9 + r9]
and rcx, rax
mov qword [rsp + 0x80], rcx
mov rcx, qword [rsp + 0x40]
add rcx, rcx
and rcx, rax
mov qword [rsp + 0x78], rcx
mov qword [rsp + 0x68], r12
lea rcx, [r12 + r12]
and rcx, rax
mov qword [rsp + 0x60], rcx
mov r9, qword [rsp + 0x130]
mov qword [rsp + 0x90], rbp
nop word cs:[rax + rax]
mov rcx, qword [rsp + 0x18]
mov eax, ecx
imul rax, qword [rsp + 0x88]
add rax, qword [rsp]
mov rdx, rax
mov r12, rax
xor rdx, qword [rsp + 0x38]
rol rdx, 0x30
mov r15d, edx
imul r15, qword [rsp + 0x80]
mov rax, qword [rsp + 0x10]
mov qword [rsp + 8], rdx
add rax, rdx
add r15, rax
mov qword [rsp + 0x58], r15
xor r15, rcx
rol r15, 1
mov rax, qword [rsp + 0x20]
mov rsi, qword [rax]
mov rax, qword [rsp + 0x110]
mov r10, qword [rax]
mov ecx, r10d
lea rdx, [rsi + rsi]
movabs r8, 0x1fffffffe
and rdx, r8
mov rbx, r8
imul rdx, rcx
add rsi, r10
add rsi, rdx
mov rax, qword [rsp + 0x150]
mov r8, qword [rax]
xor r8, rsi
rol r8, 0x20
mov rbp, qword [r9]
mov ecx, r8d
lea r11, [rbp*2]
and r11, rbx
imul r11, rcx
add rbp, r8
add rbp, r11
xor r10, rbp
rol r10, 0x28
mov ecx, r10d
lea r11, [rsi + rsi]
and r11, rbx
mov r9, rbx
imul r11, rcx
add rsi, r10
add rsi, r11
mov qword [rsp + 0x30], rsi
xor r8, rsi
rol r8, 0x30
mov ecx, r8d
lea r11, [rbp*2]
and r11, rbx
imul r11, rcx
add rbp, r8
add rbp, r11
xor r10, rbp
rol r10, 1
mov rax, qword [rsp + 0x28]
mov r14, qword [rax]
mov rax, qword [rsp + 0x118]
mov r11, qword [rax]
mov ecx, r11d
lea rsi, [r14 + r14]
and rsi, rbx
imul rsi, rcx
add r14, r11
add r14, rsi
mov rax, qword [rsp + 0x158]
mov rsi, qword [rax]
xor rsi, r14
rol rsi, 0x20
mov r13, qword [rdi]
mov ecx, esi
lea rdi, [r13*2]
and rdi, rbx
imul rdi, rcx
add r13, rsi
add r13, rdi
xor r11, r13
rol r11, 0x28
mov ecx, r11d
lea rdi, [r14 + r14]
and rdi, rbx
imul rdi, rcx
add r14, r11
add r14, rdi
xor rsi, r14
rol rsi, 0x30
mov ecx, esi
lea rdi, [r13*2]
and rdi, rbx
imul rdi, rcx
add r13, rsi
mov ebx, r15d
imul rbx, qword [rsp + 0x78]
mov rax, qword [rsp + 0x40]
add rbx, r15
add rbx, rax
xor rsi, rbx
rol rsi, 0x20
add r13, rdi
mov ecx, esi
lea rdi, [rbp*2]
and rdi, r9
imul rdi, rcx
add rbp, rsi
add rbp, rdi
xor r15, rbp
rol r15, 0x28
mov ecx, r15d
lea rdi, [rbx + rbx]
and rdi, r9
imul rdi, rcx
add rbx, r15
add rbx, rdi
xor rsi, rbx
rol rsi, 0x30
mov ecx, r10d
mov rdx, r12
add r12, r12
and r12, r9
imul r12, rcx
lea rdi, [rbp*2]
and rdi, r9
add rdx, r10
add rdx, r12
mov rcx, rdx
xor rcx, qword [rsp + 0x48]
rol rcx, 0x20
mov r12d, esi
imul rdi, r12
lea r12, [r13*2]
mov rax, r9
and r12, r9
mov r9d, ecx
imul r12, r9
add r12, r13
add r12, rcx
xor r10, r12
rol r10, 0x28
lea r9, [rdx + rdx]
and r9, rax
mov eax, r10d
imul r9, rax
add rdx, r10
add rdx, r9
add rbp, rsi
xor rcx, rdx
rol rcx, 0x30
add rbp, rdi
mov rdi, qword [rsp + 0x140]
lea rax, [r12 + r12]
movabs r9, 0x1fffffffe
and rax, r9
mov r9d, ecx
imul rax, r9
mov r9, qword [rsp + 0x130]
add r12, rcx
add r12, rax
mov rax, qword [rsp + 0x50]
mov qword [rax], rbx
mov rax, qword [rsp + 0x158]
mov qword [rax], rsi
xor r15, rbp
rol r15, 1
mov qword [r9], rbp
mov rbp, qword [rsp + 0x90]
mov rax, qword [rsp + 0x108]
mov qword [rax], r15
mov qword [rbp], rdx
mov qword [rdi], rcx
mov rdi, qword [rsp + 0x138]
xor r10, r12
mov qword [rdi], r12
rol r10, 1
mov rax, qword [rsp + 0x110]
mov qword [rax], r10
mov eax, dword [0x141dc5910]
xor eax, dword [0x141dc5914]
imul eax, eax, 0x1558fd60
or eax, 0xdb99a946
xor eax, 0xe33d8918
cmp eax, 0x815a4d3b
ja 0x14003e0a0
xor r13, r11
rol r13, 1
mov eax, r13d
mov r10, qword [rsp + 0x30]
lea rcx, [r10 + r10]
movabs r9, 0x1fffffffe
and rcx, r9
imul rcx, rax
add r10, r13
add r10, rcx
mov r9, qword [rsp + 8]
xor r9, r10
rol r9, 0x20
mov eax, r9d
imul rax, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x68]
mov qword [rsp + 8], r9
add rcx, r9
add rcx, rax
xor r13, rcx
rol r13, 0x28
mov qword [rsp + 0x30], r10
lea rdx, [r10 + r10]
mov eax, r13d
mov qword [rsp], rax
xor eax, eax
test al, al
mov rbx, qword [rsp + 0x120]
mov r15, qword [rsp + 0x100]
mov r12, qword [rsp + 0x70]
jne 0x14003e545
mov r10, rdx
movabs rbp, 0x1fffffffe
and r10, rbp
imul r10, qword [rsp]
mov rax, qword [rsp + 0x30]
add rax, r13
add r10, rax
mov rax, qword [rsp + 0x20]
mov qword [rax], r10
xor r10, qword [rsp + 8]
rol r10, 0x30
mov eax, r10d
lea r9, [rcx + rcx]
and r9, rbp
imul r9, rax
mov eax, r12d
lea r11, [r14 + r14]
and r11, rbp
imul r11, rax
add r11, r14
add r11, r12
mov rax, r11
xor rax, r8
rol rax, 0x20
mov esi, eax
mov rbx, qword [rsp + 0x58]
lea rdi, [rbx + rbx]
and rdi, rbp
imul rdi, rsi
add rdi, rax
add rdi, rbx
mov rsi, rdi
xor rsi, r12
rol rsi, 0x28
mov ebx, esi
lea r15, [r11 + r11]
and r15, rbp
imul r15, rbx
add r11, rsi
add r11, r15
xor rax, r11
rol rax, 0x30
add r9, r10
add r9, rcx
mov ebx, eax
lea r15, [rdi + rdi]
and r15, rbp
imul r15, rbx
mov rbx, qword [rsp + 0x120]
add rdi, rax
add rdi, r15
mov r15, qword [rsp + 0x100]
mov qword [rbx], r9
xor r9, r13
rol r9, 1
mov rbp, qword [rsp + 0x148]
mov qword [rbp], r10
mov r10, qword [rsp + 0x118]
mov qword [r10], r9
mov r9, qword [rsp + 0x28]
mov qword [r9], r11
mov r9, qword [rsp + 0x150]
mov qword [r9], rax
xor rsi, rdi
mov rax, qword [rsp + 0x128]
mov qword [rax], rdi
rol rsi, 1
mov qword [r15], rsi
mov eax, dword [0x141dc5918]
imul eax, dword [0x141dc591c]
xor eax, 0x461254cd
and eax, 0xc7f375fd
add eax, 0xbf749b93
cmp eax, 0x61ddc07e
jbe 0x14003e649
mov rax, rdx
movabs rbp, 0x1fffffffe
and rax, rbp
imul rax, qword [rsp]
mov r9, qword [rsp + 0x30]
add r9, r13
add rax, r9
mov r9, rdx
mov rdx, qword [rsp + 0x20]
mov qword [rdx], rax
mov rdx, r9
xor rax, qword [rsp + 8]
rol rax, 0x30
mov r9, qword [rsp + 0x148]
mov qword [r9], rax
mov r9d, eax
lea r10, [rcx + rcx]
and r10, rbp
imul r10, r9
add rax, rcx
add rax, r10
mov qword [rbx], rax
xor rax, r13
rol rax, 1
mov r9, qword [rsp + 0x118]
mov qword [r9], rax
mov eax, r12d
lea r10, [r14 + r14]
and r10, rbp
imul r10, rax
add r10, r14
add r10, r12
mov rdi, r10
xor rdi, r8
rol rdi, 0x20
mov eax, edi
mov r9, qword [rsp + 0x58]
lea r11, [r9 + r9]
and r11, rbp
imul r11, rax
add r11, rdi
add r11, r9
mov rsi, r11
xor rsi, r12
rol rsi, 0x28
mov eax, esi
lea r9, [r10 + r10]
and r9, rbp
imul r9, rax
add r10, rsi
add r10, r9
mov rax, qword [rsp + 0x28]
mov qword [rax], r10
xor r10, rdi
rol r10, 0x30
mov eax, r10d
lea r9, [r11 + r11]
and r9, rbp
imul r9, rax
mov rax, qword [rsp + 0x150]
mov qword [rax], r10
add r10, r11
add r10, r9
mov rax, qword [rsp + 0x128]
mov qword [rax], r10
xor r10, rsi
rol r10, 1
mov qword [r15], r10
jmp 0x14003e415
add rsp, 0x98
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret