Function at 0x10004bd5c
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x48
mov r14, rdx
mov r13, rcx
mov rcx, qword [rcx + 0x10]
lea rsi, [rcx + 1]
mov qword [rsp + 0x20], rsi
mov rdx, rsi
mov eax, 0x62ea7b0c
mov eax, 0xfffffff
mov r11, 0xfffffffffffff000
mov r8d, dword [rsi + 8]
mov r10d, dword [rsi + 4]
lea r12, [0x100000000]
mov rcx, r12
and qword [rsp + 0xa0], 0
and r10, rax
and r8, rax
add r10, r12
mov rax, qword [0x100037580]
sub rcx, rax
mov qword [rsp + 0x28], rcx
jne 0x10004be32
xor r9d, r9d
test r8, r8
je 0x10004c0e4
mov edx, dword [rsp + 0xa0]
mov ebp, 0x7a98383d
mov ecx, dword [rsp + 0xa4]
movzx eax, byte [r9 + r10]
inc r9
add eax, ebp
add edx, eax
add eax, ecx
imul eax, eax, 0x7a98383d
ror eax, 0x16
mov ecx, eax
imul ecx, ecx, 0xf276
rol ecx, 0xd
ror eax, 0xd
xor ecx, eax
add edx, ecx
cmp r9, r8
jb 0x10004bdf1
mov dword [rsp + 0xa4], ecx
mov dword [rsp + 0xa0], edx
jmp 0x10004c0e4
movsxd rdx, dword [0x10000003c]
lea rax, [r10 + r8]
mov qword [rsp + 0x38], rax
lea rax, [0x1000000b0]
add rdx, rax
mov eax, r10d
sub eax, r12d
lea rsi, [rax + r8]
mov r15, rsi
mov r8d, dword [rdx]
mov ebx, eax
mov r9d, eax
and r9, r11
add r8, r12
and r15, r11
mov r12d, dword [rdx + 4]
sub rbx, r9
sub rsi, r15
add r12, r8
mov qword [rsp + 0x30], rsi
jmp 0x10004be8d
mov eax, dword [r8]
cmp rax, r9
jae 0x10004be92
mov eax, dword [r8 + 4]
add r8, rax
cmp r8, r12
jne 0x10004be7e
xor r11d, r11d
cmp r8, r12
je 0x10004becc
mov eax, dword [r8]
cmp rax, r9
jne 0x10004becc
mov ecx, dword [r8 + 4]
sub rcx, 8
shr rcx, 1
je 0x10004becc
lea rdx, [r8 + 8]
movzx eax, word [rdx]
and eax, 0xfff
cmp rax, rbx
jae 0x10004becc
inc r11
add rdx, 2
cmp r11, rcx
jne 0x10004beb3
mov r9d, dword [rsp + 0xa4]
mov edi, dword [rsp + 0xa0]
lea r13, [0x100000000]
mov ebp, 0x7a98383d
mov r14, qword [rsp + 0x28]
cmp r8, r12
je 0x10004c072
mov eax, dword [r8]
cmp rax, r15
ja 0x10004c072
mov ecx, dword [r8 + 4]
lea rax, [rcx - 8]
shr rax, 1
cmp r11, rax
jne 0x10004bf2e
add r8, rcx
cmp r8, r12
je 0x10004c072
mov eax, dword [r8]
cmp rax, r15
ja 0x10004c072
xor r11d, r11d
jmp 0x10004bf01
mov eax, dword [r8]
cmp rax, r15
jne 0x10004bf4a
movzx eax, word [r8 + r11*2 + 8]
and eax, 0xfff
cmp rax, rsi
jae 0x10004c072
mov ecx, 0xf000
mov rax, r11
inc r11
test word [r8 + rax*2 + 8], cx
je 0x10004beec
movzx ecx, word [r8 + rax*2 + 8]
xor ebx, ebx
mov esi, ecx
and esi, 0xfff
add esi, dword [r8]
add rsi, r13
mov rdx, rsi
sub rdx, r10
je 0x10004bfbe
movzx eax, byte [rbx + r10]
inc rbx
add eax, ebp
add edi, eax
add eax, r9d
imul eax, eax, 0x7a98383d
ror eax, 0x16
mov r9d, eax
imul r9d, r9d, 0xf276
rol r9d, 0xd
ror eax, 0xd
xor r9d, eax
add edi, r9d
cmp rbx, rdx
jb 0x10004bf7b
mov dword [rsp + 0xa4], r9d
mov dword [rsp + 0xa0], edi
mov rax, qword [rsi]
mov qword [rsp + 0xa8], rax
shr ecx, 0xc
cmp ecx, 3
je 0x10004bfdd
sub ecx, 0xa
neg ecx
sbb edx, edx
add edx, 3
jmp 0x10004bfe2
mov edx, 2
mov r10, r14
neg r10
sub edx, 2
je 0x10004c00a
cmp edx, 1
je 0x10004bff8
or rcx, 0xffffffffffffffff
jmp 0x10004c017
mov ecx, 8
add rax, r10
mov qword [rsp + 0xa8], rax
jmp 0x10004c017
add dword [rsp + 0xa8], r10d
mov ecx, 4
xor edx, edx
test rcx, rcx
je 0x10004c064
movzx eax, byte [rsp + rdx + 0xa8]
inc rdx
add eax, ebp
add edi, eax
add eax, r9d
imul eax, eax, 0x7a98383d
ror eax, 0x16
mov r9d, eax
imul r9d, r9d, 0xf276
rol r9d, 0xd
ror eax, 0xd
xor r9d, eax
add edi, r9d
cmp rdx, rcx
jb 0x10004c01e
mov dword [rsp + 0xa4], r9d
mov dword [rsp + 0xa0], edi
lea r10, [rcx + rsi]
mov rsi, qword [rsp + 0x30]
jmp 0x10004beec
xor ecx, ecx
mov rsi, qword [rsp + 0x38]
mov r14, qword [rsp + 0x98]
mov r13, qword [rsp + 0x90]
sub rsi, r10
je 0x10004c0d1
movzx eax, byte [rcx + r10]
inc rcx
add eax, ebp
add edi, eax
add eax, r9d
imul eax, eax, 0x7a98383d
ror eax, 0x16
mov r9d, eax
imul r9d, r9d, 0xf276
rol r9d, 0xd
ror eax, 0xd
xor r9d, eax
add edi, r9d
cmp rcx, rsi
jb 0x10004c08e
mov dword [rsp + 0xa4], r9d
mov dword [rsp + 0xa0], edi
mov r11, 0xfffffffffffff000
lea r12, [0x100000000]
mov rsi, qword [rsp + 0x20]
mov ebp, 0xfffffff
add qword [r13 + 0x10], 0x11
mov ecx, dword [rsi]
mov rax, qword [rsp + 0xa0]
and rcx, rbp
cmp rax, qword [rcx + r12]
je 0x10004c204
call fcn.1000de678
mov rbx, rax
lea rdi, [0x100046aec]
mov qword [r13 + 0x10], rdi
mov rcx, qword [0x100346e50]
lea r9, [r13 + 0x18]
and r9, 0xfffffffffffffff8
lea r10, [r9 + 0xfff]
and rbx, r11
and r10, r11
mov r11d, 0xffff
xor r8d, r8d
imul rcx, rcx, 0x343fd
shl r8, 0x10
shr r11, 0x10
add rcx, 0x269ec3
mov rax, rcx
shr rax, 0x10
movzx edx, ax
or r8, rdx
test r11, r11
jne 0x10004c13d
mov qword [0x100346e50], rcx
mov qword [r14 + 0x98], rbx
movabs rax, 0x8000800080008001
mul r8
shr rdx, 0xf
imul rdx, rdx, 0xffff
sub r8, rdx
inc r8
mov qword [r14 + 0xb0], r8
mov qword [rsp + 0x90], r11
jmp 0x10004c1b1
mov rax, qword [rsp + 0x90]
mov qword [r9], rax
add r9, 8
cmp r9, r10
jb 0x10004c1a2
mov qword [r13 + 0x10], rdi
movabs r8, 0xfffff15252420000
mov eax, dword [rsi + 0xc]
mov rdx, qword [r14 + 0xb0]
mov rcx, rdx
mov qword [r14 + 0x80], rdx
and rax, rbp
mov eax, dword [rax + r12]
xor rcx, r8
shl rcx, 0x10
xor rcx, rax
mov eax, dword [0x100348a40]
xor rcx, rax
xor rcx, rdx
and qword [r14 + 0xb0], 0
mov qword [r14 + 0xa0], rcx
add rsp, 0x48
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret