Function at 0x1400dd2f0
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0x90
lea rbp, [rsp + 0x80]
mov qword [rbp - 0x10], r8
mov qword [rbp - 8], rdx
mov qword [rbp], rcx
mov qword [rbp + 8], rcx
mov eax, dword [0x1401f7880]
mov ecx, dword [0x1401f7884]
sub eax, 0x46953545
add eax, ecx
add eax, 0x46953545
mov ecx, 0x2f81b282
xor edx, edx
div ecx
mov ecx, eax
mov eax, ecx
and eax, 0x529f53cf
mov edx, 0x8bfae58a
xor edx, 0x74051a75
xor eax, edx
mov edx, 0xad96857a
xor edx, 0xff09d6b5
add ecx, edx
add ecx, 1
add ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov edx, ecx
xor edx, 0xffffffff
and eax, edx
mov edx, 0xb8047fc9
or edx, 0xb8047fc9
mov r8d, 0xf3a0fe62
xor r8d, 0xc5f019d
xor edx, r8d
or eax, edx
mov edx, 0xd00e5802
xor edx, 0x2ff1a7fd
xor eax, edx
mov edx, 0x9957213b
xor edx, 0x66a8dec4
xor ecx, edx
mov edx, 0xffffffff
xor edx, 0xb8047fc9
and ecx, edx
or eax, ecx
mov ecx, 0xe1fb0eac
xor ecx, 0x1e04f153
xor eax, ecx
cmp eax, 0xe6c8f10b
je 0x1400dd745
mov eax, dword [0x1401f7888]
mov ecx, dword [0x1401f788c]
xor ecx, 0xccc4d805
xor edx, edx
div ecx
mov ecx, eax
and ecx, 0x513af08
mov edx, eax
xor edx, 0x1aec50f7
add eax, edx
sub eax, ecx
and eax, 0x11060159
mov dword [rbp - 0x24], eax
mov eax, 0x10
mov qword [rbp - 0x58], rax
call fcn.1401f0aa0
sub rsp, rax
mov rax, qword [rbp - 0x58]
mov rcx, rsp
mov qword [rbp - 0x60], rcx
call fcn.1401f0aa0
sub rsp, rax
mov rax, qword [rbp - 0x58]
mov rcx, rsp
mov qword [rbp - 0x38], rcx
call fcn.1401f0aa0
sub rsp, rax
mov rax, qword [rbp - 0x58]
mov rcx, rsp
mov qword [rbp - 0x40], rcx
call fcn.1401f0aa0
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x50], rax
mov eax, 0x20
call fcn.1401f0aa0
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x48], rax
sub rsp, 0x20
call fcn.1400dc29f
mov rcx, qword [rbp]
add rsp, 0x20
mov qword [rbp - 0x30], rax
movabs rdx, 0x71d494469c645a52
movabs rax, 0x71d494469c645a4a
xor rdx, rax
sub rsp, 0x20
call fcn.1400dc2ba
mov rcx, qword [rbp - 0x10]
mov rax, qword [rbp - 0x40]
add rsp, 0x20
mov rdx, qword [rcx]
mov qword [rax], rdx
mov rdx, qword [rcx + 8]
mov qword [rax + 8], rdx
sub rsp, 0x20
call fcn.140012dfb
mov rcx, qword [rbp - 8]
mov rdx, qword [rbp - 0x40]
add rsp, 0x20
mov r8d, 2
sub rsp, 0x20
call fcn.1400dccf0
mov rdx, qword [rbp - 0x38]
mov rcx, qword [rbp - 0x30]
add rsp, 0x20
mov r8, rax
mov eax, dword [rbp - 0x24]
mov qword [rbp - 0x20], r8
mov qword [rdx], r8
cmp byte [rcx], 0
sete cl
mov byte [rbp - 0x11], cl
cmp eax, 0x8fc337c6
je 0x1400dd3c3
mov al, byte [rbp - 0x11]
test al, 1
jne 0x1400dd50a
jmp 0x1400dd6e9
mov eax, dword [0x1401f7890]
mov ecx, dword [0x1401f7894]
xor ecx, 0x6165aa93
xor eax, ecx
add eax, 0x2fc41416
or eax, 0x3dc31c9
xor eax, 0x24d1d521
cmp eax, 0x10c42a4f
jb 0x1400dd74e
mov rdx, qword [rbp - 0x20]
mov eax, dword [0x1401f7898]
mov ecx, 0x8d562ec2
xor ecx, 0x1ba2430d
xor eax, ecx
mov r8d, dword [0x1401f789c]
mov ecx, r8d
and ecx, eax
xor ecx, 0xffffffff
add eax, r8d
add eax, 1
add eax, ecx
mov ecx, 0xeadfd113
xor ecx, 0x3481a3f1
imul eax, ecx
imul eax, eax, 0x43da8665
xor ecx, ecx
sub ecx, eax
mov eax, 0xaa9be420
xor eax, 0xaa9be420
mov r8d, 0x4cf04f80
xor r8d, 0x829435ed
sub eax, r8d
add ecx, eax
xor eax, eax
sub eax, ecx
mov ecx, 0xb69eaece
xor ecx, 0x4521c893
cmp rdx, 0
sete dl
mov byte [rbp - 0x61], dl
cmp eax, ecx
je 0x1400dd538
mov al, byte [rbp - 0x61]
test al, 1
jne 0x1400dd6d3
jmp 0x1400dd5cb
mov rcx, qword [rbp - 0x38]
sub rsp, 0x20
call fcn.1400dd757
add rsp, 0x20
mov rax, qword [rbp - 0x30]
cmp byte [rax], 0
jne 0x1400dd6e9
mov rcx, qword [rbp - 0x50]
mov rax, qword [rbp - 0x38]
mov rdx, qword [rax]
sub rsp, 0x20
call fcn.140008dc8
mov rcx, qword [rbp - 0x50]
mov rax, qword [rbp - 0x30]
add rsp, 0x20
mov rdx, qword [rcx]
mov qword [rbp - 0x78], rdx
mov rcx, qword [rcx + 8]
mov qword [rbp - 0x70], rcx
cmp byte [rax], 0
jne 0x1400dd6e9
mov rcx, qword [rbp - 0x48]
movabs rdx, 0x3b0c6d4e4faa20cd
movabs rax, 0x3b0c6d4e4faa20d5
xor rdx, rax
sub rsp, 0x20
call fcn.1400dc2ba
mov r8, qword [rbp - 0x78]
mov rax, qword [rbp - 0x70]
mov rdx, qword [rbp - 0x60]
mov rcx, qword [rbp - 0x48]
add rsp, 0x20
mov byte [rcx + 0x10], 1
mov qword [rdx], r8
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.140017ca0
mov rdx, qword [rbp - 0x48]
mov rcx, qword [rbp]
mov rax, qword [rbp - 0x30]
add rsp, 0x20
mov r8, qword [rdx]
mov qword [rcx], r8
mov r8, qword [rdx + 8]
mov qword [rcx + 8], r8
mov rdx, qword [rdx + 0x10]
mov qword [rcx + 0x10], rdx
cmp byte [rax], 0
jne 0x1400dd6e9
mov rcx, qword [rbp - 0x38]
sub rsp, 0x20
call fcn.1400dd757
add rsp, 0x20
mov rax, qword [rbp - 0x30]
cmp byte [rax], 0
jne 0x1400dd6e9
mov rax, qword [rbp - 0x38]
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.140021743
add rsp, 0x20
jmp 0x1400dd6e9
mov rcx, qword [rbp]
mov edx, 0x18
sub rsp, 0x20
call fcn.1400dc2ba
add rsp, 0x20
mov rax, qword [rbp - 0x10]
mov rax, qword [rax + 8]
mov qword [rbp - 0x80], rax
cmp rax, 0
je 0x1400dd73b
mov rax, qword [rbp - 0x80]
mov rax, qword [rax]
movabs rcx, 0x1ec5b84e87959b82
movabs rdx, 0x5ec5b84e87959b82
xor rcx, rdx
and rax, rcx
cmp rax, 0
jne 0x1400dd73b
invalid
mov rcx, qword [rbp - 0x80]
sub rsp, 0x20
call fcn.140011305
add rsp, 0x20
mov rax, qword [rbp + 8]
lea rsp, [rbp + 0x10]
pop rbp
ret
sbb byte [rax + 0x75], spl
jmp 0x1400dd3c3
je 0x1400dd718
insb byte [rdi], dx
mov dl, 0xe9
loope 0x1400dd752
jmp 0x1400dd538
invalid