Function at 0x14007ba90
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0x50
lea rbp, [rsp + 0x50]
mov qword [rbp - 0x18], rdx
mov qword [rbp - 0x10], rcx
mov qword [rbp - 8], rcx
mov edx, dword [0x14024e908]
mov r8d, dword [0x14024e90c]
xor r8d, 0x1e5dc651
mov r9d, r8d
xor r9d, 0xffffffff
mov ecx, edx
and ecx, r9d
mov eax, edx
or eax, r9d
xor eax, 0xffffffff
imul eax, ecx
mov ecx, edx
and ecx, r8d
or edx, r8d
imul edx, ecx
add edx, eax
and edx, 0xdd4aa216
add edx, 0xc26012f9
mov ecx, edx
xor ecx, 0xe2626c64
mov eax, 0xffffffff
xor eax, 0xe2626c64
and edx, eax
mov eax, 0xe58f58b9
xor eax, 0xe58f58bb
imul eax, edx
sub eax, ecx
mov ecx, 0x7af2ff0d
xor ecx, 0xc0b809c2
cmp eax, ecx
ja 0x14007bd8a
mov eax, dword [0x14024e910]
mov ecx, eax
xor ecx, 0x2d3ed69f
mov r9d, dword [0x14024e914]
mov r8d, r9d
xor r8d, 0x4c4dbff
xor eax, 0xd2c12960
mov edx, r8d
and edx, eax
xor r9d, 0xfb3b2400
mov eax, ecx
and eax, r9d
imul eax, edx
mov edx, ecx
and edx, r8d
or ecx, r8d
imul ecx, edx
add ecx, eax
mov eax, ecx
not eax
mov edx, ecx
and edx, 0xf7a2590d
and eax, 0x85da6f2
imul eax, edx
mov edx, ecx
and edx, 0x85da6f2
or ecx, 0x85da6f2
imul ecx, edx
add ecx, eax
or ecx, 0x730fc34d
mov edx, ecx
and edx, 0x505a77cd
add edx, edx
mov eax, ecx
neg edx
mov ecx, edx
lea eax, [rax + rcx + 0x505a77cd]
mov dword [rbp - 0x2c], eax
mov eax, 0x10
call fcn.14024abd0
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x40], rax
sub rsp, 0x20
call fcn.140067614
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp - 0x10]
mov qword [rbp - 0x38], rcx
mov qword [rax], 0
mov qword [rax + 8], 0
mov ecx, 8
sub rsp, 0x20
call fcn.1400678b4
mov rcx, qword [rbp - 0x38]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp - 0x2c]
mov qword [rbp - 0x28], rdx
cmp byte [rcx], 0
sete cl
mov byte [rbp - 0x19], cl
cmp eax, 0xe05ffa7d
ja 0x14007bd8a
mov cl, byte [rbp - 0x19]
mov al, 1
test cl, 1
mov byte [rbp - 0x41], al
jne 0x14007bc31
jmp 0x14007bc89
mov rdx, qword [rbp - 0x18]
mov rcx, qword [rbp - 0x28]
sub rsp, 0x20
call fcn.14007ba61
mov rcx, qword [rbp - 0x38]
add rsp, 0x20
mov al, 1
cmp byte [rcx], 0
mov byte [rbp - 0x41], al
jne 0x14007bc89
mov rdx, qword [rbp - 0x40]
mov rcx, qword [rbp - 0x10]
mov rax, qword [rbp - 0x28]
mov r8, qword [rax + 0x58]
mov qword [rdx], r8
mov rax, qword [rax + 0x60]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.140018a3d
mov rax, qword [rbp - 0x38]
add rsp, 0x20
mov al, byte [rax]
mov byte [rbp - 0x41], al
mov rax, qword [rbp - 0x38]
mov rcx, qword [rbp - 0x28]
mov dl, byte [rbp - 0x41]
mov byte [rbp - 0x42], dl
mov byte [rax], 0
sub rsp, 0x20
call fcn.1400672e0
mov rax, qword [rbp - 0x38]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x15
xor cl, 0x15
cmp al, cl
jne 0x14007bd81
mov eax, dword [0x14024e918]
add eax, dword [0x14024e91c]
mov edx, 0xffffffff
xor edx, 0xa4199996
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, 0xa4199996
add eax, edx
sub eax, ecx
mov ecx, 0x19c4874c
xor edx, edx
div ecx
xor eax, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0xc023e463
mov edx, 0xffffffff
xor edx, 0xaa9d699e
or eax, ecx
mov ecx, 0x4b018561
xor ecx, 0xe19cecff
or ecx, edx
mov edx, 0x3b07ffac
xor edx, 0xc4f80053
xor eax, edx
and eax, ecx
cmp eax, 0xa3276463
ja 0x14007bd93
mov rcx, qword [rbp - 0x38]
mov dl, byte [rbp - 0x42]
mov eax, dword [0x14024e920]
and eax, dword [0x14024e924]
mov r8d, 0x49bf4cca
xor r8d, 0x44a6a67
add eax, r8d
sub eax, 0x362a3859
sub eax, 0x4df526ad
imul eax, eax, 0x225c39ee
mov r8d, 0xfaeeaebb
xor r8d, 0x459c2e4c
xor eax, r8d
mov byte [rcx], dl
cmp eax, 0xb97d39c3
ja 0x14007bd2c
jmp 0x14007bd81
mov rax, qword [rbp - 8]
mov rsp, rbp
pop rbp
ret
invalid
invalid