Function at 0x14007d6c0
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0xc0
lea rbp, [rsp + 0x80]
mov qword [rbp - 0x70], rdx
mov qword [rbp - 0x30], rcx
mov eax, 0x10
mov qword [rbp - 0x48], rax
call fcn.14023fff0
sub rsp, rax
mov rax, qword [rbp - 0x48]
mov rcx, rsp
mov qword [rbp - 0x68], rcx
call fcn.14023fff0
sub rsp, rax
mov rax, qword [rbp - 0x48]
mov rcx, rsp
mov qword [rbp - 0x60], rcx
call fcn.14023fff0
sub rsp, rax
mov rax, qword [rbp - 0x48]
mov rcx, rsp
mov qword [rbp - 0x58], rcx
call fcn.14023fff0
sub rsp, rax
mov rax, qword [rbp - 0x48]
mov rcx, rsp
mov qword [rbp - 0x50], rcx
call fcn.14023fff0
sub rsp, rax
mov rax, qword [rbp - 0x48]
mov rcx, rsp
mov qword [rbp - 0x40], rcx
call fcn.14023fff0
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x38], rax
sub rsp, 0x20
call fcn.14006bc70
mov rcx, qword [rbp - 0x30]
add rsp, 0x20
mov qword [rbp - 0x28], rax
movabs rdx, 0x291f7cd4152b4049
movabs rax, 0x291f7cd4152b4045
xor rdx, rax
sub rsp, 0x20
call fcn.14006c623
mov rax, qword [rbp - 0x28]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x4b
xor cl, 0x4b
cmp al, cl
jne 0x14007dbdc
mov ecx, dword [0x140244d28]
xor ecx, 0x23dd932f
sub ecx, dword [0x140244d2c]
mov edx, 0xffffffff
xor edx, 0xc1194c51
mov eax, ecx
xor eax, edx
and eax, ecx
mov ecx, 0x5e02a10e
xor ecx, 0x777ee764
imul eax, ecx
xor eax, 0xbca559e5
cmp eax, 0x7e34dcf6
je 0x14007dbe2
mov rcx, qword [rbp - 0x30]
mov eax, dword [0x140244d30]
mov edx, dword [0x140244d34]
sub eax, 0x6974fd3e
sub eax, edx
add eax, 0x6974fd3e
mov edx, 0x91a35833
xor edx, 0x8c3eaede
or eax, edx
mov r8d, 0xb1cdced5
xor edx, edx
div r8d
mov rdx, qword [rbp - 0x68]
mov r8d, eax
mov rax, qword [rbp - 0x70]
xor r8d, 0x628ca2b4
mov dword [rbp - 0x78], r8d
mov r8d, 0x55caf78b
xor r8d, 0xd77b2be3
mov dword [rbp - 0x7c], r8d
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.14006df90
mov rdx, qword [rbp - 0x28]
mov ecx, dword [rbp - 0x7c]
mov eax, dword [rbp - 0x78]
add rsp, 0x20
cmp byte [rdx], 0
sete dl
mov byte [rbp - 0x71], dl
cmp eax, ecx
jae 0x14007d7dc
mov al, byte [rbp - 0x71]
test al, 1
jne 0x14007d87d
jmp 0x14007dbdc
mov rdx, qword [rbp - 0x60]
mov rcx, qword [rbp - 0x30]
mov rax, qword [rbp - 0x70]
mov r8, qword [rax + 0x10]
mov qword [rdx], r8
mov rax, qword [rax + 0x18]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.14006df90
mov rax, qword [rbp - 0x28]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14007dbdc
mov rcx, qword [rbp - 0x30]
mov rax, qword [rbp - 0x70]
mov rdx, qword [rax + 0x20]
mov qword [rbp + 0x30], rdx
mov rax, qword [rax + 0x28]
mov qword [rbp + 0x38], rax
lea rdx, [rbp + 0x30]
sub rsp, 0x20
call fcn.14006df90
mov rax, qword [rbp - 0x28]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14007dbdc
mov rdx, qword [rbp - 0x58]
mov rcx, qword [rbp - 0x30]
mov rax, qword [rbp - 0x70]
mov r8, qword [rax + 0x30]
mov qword [rdx], r8
mov rax, qword [rax + 0x38]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.14006df90
mov rax, qword [rbp - 0x28]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14007dbdc
mov rcx, qword [rbp - 0x30]
mov rax, qword [rbp - 0x70]
mov rdx, qword [rax + 0x40]
mov qword [rbp + 0x20], rdx
mov rax, qword [rax + 0x48]
mov qword [rbp + 0x28], rax
lea rdx, [rbp + 0x20]
sub rsp, 0x20
call fcn.14006df90
mov rax, qword [rbp - 0x28]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14007dbdc
mov rdx, qword [rbp - 0x50]
mov rcx, qword [rbp - 0x30]
mov rax, qword [rbp - 0x70]
mov r8, qword [rax + 0x50]
mov qword [rdx], r8
mov rax, qword [rax + 0x58]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.14006df90
mov rax, qword [rbp - 0x28]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14007dbdc
mov rcx, qword [rbp - 0x30]
mov rax, qword [rbp - 0x70]
mov rdx, qword [rax + 0x60]
mov qword [rbp + 0x10], rdx
mov rax, qword [rax + 0x68]
mov qword [rbp + 0x18], rax
lea rdx, [rbp + 0x10]
sub rsp, 0x20
call fcn.14006df90
mov rax, qword [rbp - 0x28]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14007dbdc
mov rcx, qword [rbp - 0x30]
mov rax, qword [rbp - 0x70]
mov rdx, qword [rax + 0x70]
mov qword [rbp], rdx
mov rax, qword [rax + 0x78]
mov qword [rbp + 8], rax
mov rdx, rbp
sub rsp, 0x20
call fcn.14006df90
mov rax, qword [rbp - 0x28]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14007dbdc
mov rdx, qword [rbp - 0x40]
mov rcx, qword [rbp - 0x30]
mov rax, qword [rbp - 0x70]
mov r8, qword [rax + 0x80]
mov qword [rdx], r8
mov rax, qword [rax + 0x88]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.14006df90
mov rax, qword [rbp - 0x28]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14007dbdc
mov rcx, qword [rbp - 0x30]
mov rax, qword [rbp - 0x70]
mov rdx, qword [rax + 0x90]
mov qword [rbp - 0x10], rdx
mov rax, qword [rax + 0x98]
mov qword [rbp - 8], rax
lea rdx, [rbp - 0x10]
sub rsp, 0x20
call fcn.14006df90
mov rax, qword [rbp - 0x28]
add rsp, 0x20
mov al, byte [rax]
mov cl, 6
xor cl, 6
cmp al, cl
jne 0x14007dbdc
mov rdx, qword [rbp - 0x38]
mov rcx, qword [rbp - 0x30]
mov rax, qword [rbp - 0x70]
mov r8, qword [rax + 0xa0]
mov qword [rdx], r8
mov rax, qword [rax + 0xa8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.14006df90
mov rax, qword [rbp - 0x28]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14007dbdc
mov eax, dword [0x140244d38]
xor edx, edx
div dword [0x140244d3c]
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0x1c164e07
mov edx, 0xffffffff
xor edx, 0x1c164e07
and eax, edx
sub eax, ecx
and eax, 0x3d86afc0
and eax, 0xde7759f5
cmp eax, 0x86ef769a
jae 0x14007dbeb
mov rcx, qword [rbp - 0x30]
mov rax, qword [rbp - 0x70]
mov edx, dword [0x140244d40]
mov r8d, dword [0x140244d44]
xor r8d, 0xc3d8b0c0
or edx, r8d
mov r9d, edx
xor r9d, 0xffffffff
and r9d, 0x65816542
mov r10d, 0xffffffff
xor r10d, 0x65816542
mov r8d, edx
and r8d, r10d
imul r8d, r9d
mov r10d, 0xe524ef2f
xor r10d, 0x80a58a6d
mov r9d, edx
and r9d, r10d
or edx, 0x65816542
imul edx, r9d
add edx, r8d
mov r10d, 0xffffffff
xor r10d, 0x7bdca97a
mov r9d, edx
and r9d, r10d
mov r8d, edx
or r8d, r10d
mov r10d, 0x46f7d3d4
xor r10d, 0xb9082c2b
xor r8d, r10d
imul r8d, r9d
mov r10d, 0x50a44622
xor r10d, 0x2b78ef58
mov r9d, edx
and r9d, r10d
or edx, 0x7bdca97a
imul edx, r9d
add edx, r8d
add edx, 0x9294ebdb
mov dword [rbp - 0x80], edx
mov rdx, qword [rax + 0xb0]
mov qword [rbp - 0x20], rdx
mov rax, qword [rax + 0xb8]
mov qword [rbp - 0x18], rax
lea rdx, [rbp - 0x20]
sub rsp, 0x20
call fcn.14006df90
mov eax, dword [rbp - 0x80]
add rsp, 0x20
cmp eax, 0x4d47bb33
ja 0x14007dae8
jmp 0x14007dbdc
lea rsp, [rbp + 0x40]
pop rbp
ret
hlt
xchg byte [rbp - 0x1c], al
in al, 0xe9
hlt