Function at 0x1401d4f10
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rsi
sub rsp, 0x68
lea rbp, [rsp + 0x60]
mov qword [rbp - 0x18], rcx
mov eax, 0x10
call fcn.14024abd0
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x28], rax
sub rsp, 0x20
call fcn.1401d7e87
add rsp, 0x20
mov qword [rbp - 8], rax
add rax, 0x50
mov qword [rbp - 0x20], rax
mov edx, 8
sub rsp, 0x20
mov rcx, rdx
call fcn.140012610
mov rcx, qword [rbp - 0x18]
add rsp, 0x20
mov qword [rbp - 0x10], rax
sub rsp, 0x20
call fcn.1401c4ab0
mov rcx, qword [rbp - 8]
add rsp, 0x20
mov al, 1
cmp byte [rcx + 0x50], 0
mov byte [rbp + 7], al
jne 0x1401d537c
mov rcx, qword [rbp - 0x18]
sub rsp, 0x20
call fcn.1401d1b70
mov rcx, qword [rbp - 0x20]
add rsp, 0x20
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 7], al
jne 0x1401d537c
mov rax, qword [rbp - 0x18]
mov rax, qword [rax]
cmp byte [rax + 0x29], 0
je 0x1401d5373
mov ecx, 0x30
mov edx, 8
sub rsp, 0x20
call fcn.14001b860
add rsp, 0x20
mov qword [rbp - 0x38], rax
mov qword [rax], 0
mov ecx, 0x79b549b4
xor ecx, 0x79b549b6
mov dword [rax + 8], ecx
mov cx, 0xe77f
xor cx, 0xeb8e
sub rsp, 0x20
call fcn.140063c67
mov rcx, qword [rbp - 0x20]
add rsp, 0x20
mov qword [rbp - 0x30], rax
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 7], al
jne 0x1401d537c
mov rax, qword [rbp - 0x30]
add rax, 0xffffffff80000000
movabs rcx, 0x46089f0c64252996
movabs rdx, 0xb9f760f364252996
xor rcx, rdx
cmp rax, rcx
jae 0x1401d5127
mov ecx, dword [0x140257b50]
xor ecx, 0xdab27d2b
mov edx, dword [0x140257b54]
mov eax, 0xd4762772
xor eax, 0x2b89d88d
mov r8d, ecx
xor r8d, eax
mov eax, edx
and eax, r8d
mov r8d, 0x52f1e2ec
xor r8d, 0xad0e1d13
xor edx, r8d
and ecx, edx
or eax, ecx
mov ecx, 0xde333b8
xor edx, edx
div ecx
mov ecx, 0x9d200c35
xor edx, edx
div ecx
sub eax, 0x83bdf5ec
sub eax, 0x147916db
mov ecx, 0x5c848bc0
xor ecx, 0xdf397e2c
add eax, ecx
mov ecx, 0x40ac87bd
xor ecx, 0x46de12b0
cmp eax, ecx
je 0x1401d553f
mov rcx, qword [rbp - 0x30]
mov eax, dword [0x140257b58]
mov edx, dword [0x140257b5c]
xor edx, 0x2fcd9e6f
mov r8d, 0x8fb82e35
xor r8d, 0x65625a5e
add eax, r8d
add eax, edx
sub eax, 0xeada746b
add eax, 0xff0f4812
imul eax, eax, 0xb2414c08
add eax, 0x1e635733
mov dword [rbp - 0x3c], eax
mov rdx, 0xffffffff80000000
mov r8d, 0x7fffffff
sub rsp, 0x20
call fcn.14000d792
mov eax, dword [rbp - 0x3c]
add rsp, 0x20
cmp eax, 0x5e496e08
jb 0x1401d50ba
jmp 0x1401d5373
mov ecx, dword [0x140257b60]
or ecx, dword [0x140257b64]
mov eax, ecx
xor eax, 0xffffffff
mov edx, ecx
xor edx, 0xffffffff
and eax, edx
mov edx, 0x67cc5569
xor edx, 0x6397be4
mov r8d, 0xe6588fd2
xor r8d, 0x19a7702d
xor edx, r8d
mov r8d, 0xa66e6066
xor r8d, 0xc79b4eeb
mov r9d, 0x9ab64c0a
xor r9d, 0x6549b3f5
xor r8d, r9d
and edx, r8d
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
mov edx, 0xb5ebd5b9
xor edx, 0x4a142a46
xor ecx, edx
mov edx, 0xffffffff
xor edx, 0x61f52e8d
and ecx, edx
mov edx, 0x7a79a607
xor edx, 0x858659f8
xor eax, edx
xor ecx, 0xffffffff
and eax, ecx
imul eax, eax, 0xf853a1f
mov edx, 0xffffffff
xor edx, 0xcc0beee9
mov ecx, eax
and ecx, edx
mov r8d, 0xaceba854
xor r8d, 0x60e046bd
mov edx, eax
xor edx, r8d
add eax, edx
sub eax, ecx
mov ecx, 0x5783a15f
xor ecx, 0x3c23f089
cmp eax, ecx
je 0x1401d5548
mov rax, qword [rbp - 0x38]
mov rcx, qword [rbp - 0x28]
mov rdx, qword [rbp - 0x10]
mov r8, qword [rbp - 0x30]
mov r9d, dword [0x140257b68]
and r9d, dword [0x140257b6c]
mov r10d, 0x51623d16
xor r10d, 0x5c3d871b
or r9d, r10d
mov esi, 0x2fbaaa8a
xor esi, 0xf54d9c91
mov r10d, 0x1b882f90
xor r10d, 0xe477d06f
xor esi, r10d
mov r11d, r9d
and r11d, esi
mov r10d, r9d
or r10d, esi
xor r10d, 0xffffffff
imul r10d, r11d
mov esi, 0x3ff03686
xor esi, 0xe507009d
mov r11d, r9d
and r11d, esi
or r9d, 0xdaf7361b
imul r9d, r11d
add r9d, r10d
mov r11d, 0x15ac230e
xor r11d, 0xea53dcf1
mov r10d, r9d
xor r10d, r11d
mov r11d, 0x602b32ef
xor r11d, 0x4d83e8f5
and r11d, r10d
mov esi, 0xac617eb
xor esi, 0x276ecdf1
mov r10d, 0xc3771b1b
xor r10d, 0x3c88e4e4
xor esi, r10d
mov r10d, r9d
and r10d, esi
imul r10d, r11d
mov r11d, r9d
and r11d, 0x2da8da1a
mov esi, 0x10dc2639
xor esi, 0x3d74fc23
or r9d, esi
imul r9d, r11d
add r9d, r10d
mov dword [rbp - 0x44], r9d
mov r9d, 0xad50d6d5
xor r9d, 0xe33625a5
mov dword [rbp - 0x48], r9d
mov dword [rax + 0xc], r8d
sub rsp, 0x20
call fcn.1400784d0
mov r9, qword [rbp - 0x28]
mov r8, qword [rbp - 0x38]
mov rdx, qword [rbp - 0x20]
mov ecx, dword [rbp - 0x48]
mov eax, dword [rbp - 0x44]
add rsp, 0x20
mov r10, qword [r9]
mov qword [r8 + 0x10], r10
mov r9, qword [r9 + 8]
mov qword [r8 + 0x18], r9
cmp byte [rdx], 0
sete dl
mov byte [rbp - 0x3d], dl
cmp eax, ecx
ja 0x1401d51ec
mov cl, byte [rbp - 0x3d]
mov al, 1
test cl, 1
mov byte [rbp + 7], al
jne 0x1401d533d
jmp 0x1401d537c
mov rdx, qword [rbp - 0x38]
mov rax, qword [rbp - 0x18]
mov rcx, qword [0x140263f78]
mov qword [rdx + 0x20], rcx
mov rcx, qword [0x140263f80]
mov qword [rdx + 0x28], rcx
mov rax, qword [rax]
mov rcx, qword [rax + 0x20]
add rcx, 8
sub rsp, 0x20
call fcn.140025ed0
add rsp, 0x20
mov rax, qword [rbp - 0x20]
mov al, byte [rax]
mov byte [rbp + 7], al
mov rax, qword [rbp - 0x20]
mov rcx, qword [rbp - 0x10]
mov dl, byte [rbp + 7]
mov byte [rbp - 0x49], dl
mov dl, 0x66
xor dl, 0x66
mov byte [rax], dl
sub rsp, 0x20
call fcn.1401c41c0
mov rax, qword [rbp - 0x20]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401d53c1
mov al, byte [rbp - 0x49]
mov rdx, qword [rbp - 0x20]
mov cl, 0x96
xor cl, 0x96
mov byte [rdx], al
cmp al, cl
je 0x1401d5447
sub rsp, 0x20
call fcn.1401d1b2b
add rsp, 0x20
mov rax, qword [rax]
mov qword [rbp - 0x58], rax
mov ax, word [rax + 0x12]
mov cx, 0x6c85
xor cx, 0x6c84
cmp ax, cx
jle 0x1401d5447
mov rax, qword [rbp - 0x58]
mov rax, qword [rax + 0x18]
mov eax, dword [rax + 8]
mov ecx, 0xde9b002d
xor ecx, 0x1be9224c
cmp eax, ecx
jne 0x1401d5447
mov rax, qword [rbp - 0x20]
mov byte [rax], 0
sub rsp, 0x20
call fcn.1401d1b3d
add rsp, 0x20
mov rcx, rax
sub rsp, 0x20
call fcn.140099ce0
mov rax, qword [rbp - 0x20]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401d5447
sub rsp, 0x20
call fcn.1401d1a30
add rsp, 0x20
mov eax, dword [0x140257b70]
xor eax, 0xb9c297d3
add eax, dword [0x140257b74]
mov edx, eax
xor edx, 0xffffffff
and edx, 0x9a7c7887
mov r8d, 0xffffffff
xor r8d, 0x9a7c7887
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x9a7c7887
or eax, 0x9a7c7887
imul eax, edx
add eax, ecx
or eax, 0x26c83502
or eax, eax
xor eax, 0xffffffff
mov ecx, 0x32b33637
xor ecx, 0x5f1fc06b
mov edx, 0x595ba7fb
xor edx, 0x34f751a7
or ecx, edx
xor ecx, 0xffffffff
mov edx, 0x9b909a8a
xor edx, 0x646f6575
xor eax, edx
mov edx, 0x625428a8
xor edx, 0x9dabd757
xor ecx, edx
and eax, ecx
cmp eax, 0x950e9775
ja 0x1401d5551
mov eax, dword [0x140257b78]
mov ecx, 0xb6201e67
xor ecx, 0x26d12a36
xor eax, ecx
mov ecx, dword [0x140257b7c]
xor ecx, 0x60281d3d
or eax, ecx
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, 0xa6d38e5c
add eax, ecx
xor eax, 0xa7d2eddf
or eax, eax
xor eax, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0x4e2aa926
mov edx, 0xffffffff
xor edx, 0x4e2aa926
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
cmp eax, 0xe8029faa
je 0x1401d5551
lea rsp, [rbp + 8]
pop rsi
pop rbp
ret
invalid
adc al, 0x24
cmp eax, 0xfc9be9a4
invalid
add al, 7
push rdx
mov edx, 0xffff7ce9
jmp qword [rsi + 0xf]