Function at 0x14004eb10
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x68
mov qword [rsp + 0x48], rcx
call fcn.14004c253
mov rcx, qword [rsp + 0x48]
mov qword [rsp + 0x50], rax
add rcx, 8
mov qword [rsp + 0x58], rcx
xor eax, eax
mov qword [rsp + 0x60], rax
mov rdx, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x48]
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x38], rax
mov rcx, qword [rcx]
mov rdx, qword [rdx]
mov qword [rsp + 0x40], rdx
cmp rax, rcx
jge 0x14004edd2
mov rcx, qword [rsp + 0x38]
mov rax, qword [rsp + 0x40]
add rax, 8
imul rcx, rcx, 0x18
add rax, rcx
add rax, 0x10
mov rcx, qword [rax]
call fcn.14004be94
test al, 1
jne 0x14004eb8e
jmp 0x14004ec83
mov eax, dword [0x1401dd510]
xor edx, edx
div dword [0x1401dd514]
imul eax, eax, 0xbe641ce8
mov ecx, 0x622ef854
xor ecx, 0xf00f4cca
xor eax, ecx
sub eax, 0xd898a1f8
cmp eax, 0x7f507235
je 0x14004edf6
mov rcx, qword [rsp + 0x38]
mov eax, dword [0x1401dd518]
mov edx, dword [0x1401dd51c]
xor edx, 0xd6e1f2cd
add eax, edx
mov r8d, 0x71bd3e61
xor edx, edx
div r8d
mov r8d, 0x8b103fe6
xor edx, edx
div r8d
mov edx, eax
mov rax, qword [rsp + 0x58]
or edx, 0x8bfda19c
mov dword [rsp + 0x30], edx
mov rax, qword [rax]
add rax, 8
imul rcx, rcx, 0x18
add rax, rcx
add rax, 0x10
mov rcx, qword [rax]
call fcn.14004ead1
mov rcx, qword [rsp + 0x50]
mov eax, dword [rsp + 0x30]
cmp byte [rcx], 0
sete cl
mov byte [rsp + 0x37], cl
cmp eax, 0x795a9d64
jbe 0x14004ebbf
mov al, byte [rsp + 0x37]
test al, 1
jne 0x14004ec48
jmp 0x14004edf0
mov rcx, qword [rsp + 0x38]
mov rax, qword [rsp + 0x58]
mov rax, qword [rax]
add rax, 8
imul rcx, rcx, 0x18
add rax, rcx
add rax, 0x10
mov rcx, qword [rax]
movabs rdx, 0xd022f5c68798ce14
movabs rax, 0xd022f5c68798ce1c
xor rdx, rax
call fcn.14000e330
mov eax, dword [0x1401dd520]
xor eax, 0xb0b305f4
imul eax, dword [0x1401dd524]
imul r11d, eax, 0xc87c933d
mov eax, 0xa6e51a5a
xor eax, 0x591ae5a5
mov ecx, r11d
xor ecx, eax
mov r8d, 0xffffffff
xor r8d, 0x987ad465
mov edx, 0xffffffff
xor edx, 0x9390018b
mov eax, ecx
and eax, 0x9390018b
and r11d, edx
mov r10d, 0x45382666
xor r10d, 0xd6a827ed
mov r9d, r8d
and r9d, r10d
mov r10d, 0xed155000
xor r10d, 0x756f8465
and r10d, edx
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
mov r8d, 0xf7e15952
xor r8d, 0x81ea6ad
xor ecx, r8d
or edx, 0x9390018b
and ecx, edx
or eax, ecx
mov ecx, 0xdc165172
xor edx, edx
div ecx
cmp eax, 0x6423cc14
jae 0x14004edff
mov rcx, qword [rsp + 0x38]
mov edx, dword [0x1401dd528]
mov r9d, dword [0x1401dd52c]
mov r8d, 0x2743a694
xor r8d, 0xd8bc596b
mov eax, edx
xor eax, r8d
mov r8d, r9d
and r8d, eax
mov r10d, r9d
xor r10d, 0xffffffff
mov eax, edx
and eax, r10d
imul eax, r8d
mov r8d, edx
and r8d, r9d
or edx, r9d
imul edx, r8d
add edx, eax
mov eax, 0xba76c2bd
xor eax, 0x2f760d91
or edx, eax
or edx, 0xe239689c
mov eax, edx
xor eax, 0xffffffff
xor edx, 0xffffffff
or eax, edx
mov edx, 0xffffffff
xor edx, 0xe50ad35c
mov r8d, 0xffffffff
xor r8d, 0xe50ad35c
or edx, r8d
and eax, edx
xor eax, 0xffffffff
add rcx, 1
mov qword [rsp + 0x28], rcx
cmp eax, 0xe85eb986
jbe 0x14004edff
mov rax, qword [rsp + 0x28]
mov qword [rsp + 0x60], rax
jmp 0x14004eb38
mov rax, qword [rsp + 0x40]
cmp rax, 0
je 0x14004edf0
mov rcx, qword [rsp + 0x40]
mov edx, 8
call fcn.14000e284
nop
add rsp, 0x68
ret
ja 0x14004ee4d
movsb byte [rdi], byte [rsi]
add cl, ch
sar ch, 0xff
jmp [rbp - 0x16793bee]
lodsd eax, dword [rsi]
adc al, ah
xchg cl, ch
and bh, bh
invalid
and al, 0x28
mov qword [rsp + 0x30], rax
call fcn.14004be94
test al, 1
jne 0x14004ee66
jmp 0x14004ee8d
mov rcx, qword [rsp + 0x28]
call fcn.14004ee08
mov rax, qword [rsp + 0x30]
cmp byte [rax], 0
jne 0x14004ee8d
mov rcx, qword [rsp + 0x28]
mov edx, 8
call fcn.14000e330
nop
add rsp, 0x38
ret