Function at 0x14007d380
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 eax, dword [0x14024ea18]
mov ecx, dword [0x14024ea1c]
mov edx, 0x351c2318
xor edx, 0x75cb28a0
xor ecx, edx
xor edx, edx
div ecx
mov ecx, eax
xor eax, eax
sub eax, 0x641954b0
sub ecx, eax
mov edx, 0xffffffff
xor edx, 0x83623353
mov eax, ecx
xor eax, edx
and eax, ecx
mov edx, 0xf410f8f8
xor edx, 0xbef0707
mov ecx, eax
xor ecx, edx
mov edx, 0x108fe4bd
xor edx, 0xbc1690c
and edx, ecx
mov r8d, 0xf85aa1db
xor r8d, 0xe3142c6a
mov ecx, 0x465023ba
xor ecx, 0xb9afdc45
xor r8d, ecx
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov r8d, 0x70461b4
xor r8d, 0x1c4aec05
mov edx, eax
and edx, r8d
or eax, 0x1b4e8db1
imul eax, edx
add eax, ecx
mov ecx, 0xcddef422
xor ecx, 0xd41e7ab3
cmp eax, ecx
je 0x14007d679
mov eax, dword [0x14024ea20]
mov edx, dword [0x14024ea24]
mov ecx, eax
xor ecx, edx
not edx
and eax, edx
add eax, eax
sub eax, ecx
mov ecx, 0xdefe1e55
imul rax, rcx
shr rax, 0x3f
add eax, 0xe6260ed1
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
mov cl, byte [rcx]
mov dl, 0x76
xor dl, 0x76
cmp cl, dl
sete cl
mov byte [rbp - 0x19], cl
cmp eax, 0xd16bf8b3
je 0x14007d43d
mov cl, byte [rbp - 0x19]
mov al, 1
test cl, 1
mov byte [rbp - 0x41], al
jne 0x14007d4f5
jmp 0x14007d54d
mov rdx, qword [rbp - 0x18]
mov rcx, qword [rbp - 0x28]
sub rsp, 0x20
call fcn.14007d34f
mov rcx, qword [rbp - 0x38]
add rsp, 0x20
mov al, 1
cmp byte [rcx], 0
mov byte [rbp - 0x41], al
jne 0x14007d54d
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, 0x6d
xor cl, 0x6d
cmp al, cl
jne 0x14007d670
mov eax, dword [0x14024ea28]
mov ecx, dword [0x14024ea2c]
mov edx, 0xa46c7a09
xor edx, 0x87b7a336
xor ecx, edx
and eax, ecx
and eax, 0xb98acb
mov ecx, 0xffffffff
xor ecx, 0xfcd9dcba
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
xor eax, 0xffffffff
mov edx, 0xbcda65cd
xor edx, 0xad06e6dc
mov ecx, 0x7d722395
xor ecx, 0x828ddc6a
xor edx, ecx
mov ecx, 0x8c7b1c2b
xor ecx, 0xcadaba5d
mov r8d, 0x794ab143
xor r8d, 0x86b54ebc
xor ecx, r8d
or eax, edx
or ecx, 0x46a1a676
xor eax, 0xffffffff
and eax, ecx
cmp eax, 0x6cc43076
jae 0x14007d682
mov rdx, qword [rbp - 0x38]
mov r8b, byte [rbp - 0x42]
mov eax, dword [0x14024ea30]
mov r10d, dword [0x14024ea34]
mov r11d, r10d
xor r11d, 0xffffffff
mov r9d, eax
and r9d, r11d
mov ecx, eax
or ecx, r11d
xor ecx, 0xffffffff
imul ecx, r9d
mov r9d, eax
and r9d, r10d
or eax, r10d
imul eax, r9d
add eax, ecx
add eax, 0xa0f3d261
imul eax, eax, 0x9931ec57
mov ecx, 0x66740202
xor ecx, 0x5e1ac197
xor eax, ecx
mov ecx, 0xdbc3c7b
xor ecx, 0x5c3709ac
mov byte [rdx], r8b
cmp eax, ecx
ja 0x14007d682
jmp 0x14007d670
mov rax, qword [rbp - 8]
mov rsp, rbp
pop rbp
ret
iretd
movsb byte [rdi], byte [rsi]
invalid