Function at 0x1401a5b30
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x78
mov qword [rsp + 0x60], rdx
mov qword [rsp + 0x58], rcx
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
call fcn.14000efc9
mov rcx, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x60]
add rax, 0x60
mov qword [rsp + 0x68], rax
mov rax, qword [rcx]
mov qword [rsp + 0x70], rax
cmp rdx, 0
je 0x1401a5d33
mov rax, qword [rsp + 0x60]
mov rcx, rax
add rcx, 0xfffffffffffffff0
mov qword [rsp + 0x48], rcx
mov rcx, qword [rax - 0x10]
xor eax, eax
mov edx, eax
sub rdx, rcx
xor eax, eax
sub rax, 0x10
add rdx, rax
xor eax, eax
sub rax, rdx
mov qword [rsp + 0x50], rax
mov rdx, rcx
xor rdx, 0xffffffffffffffff
and rdx, 0xffffffffffffffff
mov r8, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
and rcx, r8
or rdx, rcx
xor rax, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
mov rcx, 0xffffffffffffffff
movabs r8, 0xfff26587bbb83258
xor rcx, r8
or rax, rdx
movabs rdx, 0xfff26587bbb83258
or rcx, rdx
xor rax, 0xffffffffffffffff
and rax, rcx
movabs rcx, 0x59a859e7bafec2f9
movabs rdx, 0x59a859e7bafec2f9
xor rcx, rdx
cmp rax, rcx
jge 0x1401a5c19
call fcn.14000f24b
jmp 0x1401a5d33
mov eax, dword [0x14027d848]
mov ecx, dword [0x14027d84c]
xor ecx, 0xffffffff
mov edx, 0x2328580
xor edx, 0x2328580
mov r8d, 0xf3ac5d58
xor r8d, 0xf3ac5d59
sub edx, r8d
sub ecx, edx
sub eax, ecx
mov ecx, 0x68cc3de4
xor ecx, 0xda4cf421
sub eax, ecx
mov edx, eax
xor edx, 0x91b9be5a
xor edx, 0xffffffff
and edx, 0x91b9be5a
mov ecx, 0x9a2e37
xor ecx, 0x9a2e35
imul ecx, edx
sub ecx, 0x91b9be5a
sub eax, ecx
add eax, 0x1d5403a7
sub eax, 0xba4a4d21
mov ecx, 0x9d5939d2
xor ecx, 0x800d3a75
sub eax, ecx
cmp eax, 0x374de54
je 0x1401a5f81
mov rcx, qword [rsp + 0x48]
mov eax, dword [0x14027d850]
imul eax, dword [0x14027d854]
imul eax, eax, 0xd4fc88d6
mov r8d, 0xfe6f419a
xor edx, edx
div r8d
mov rdx, qword [rsp + 0x50]
mov r10d, eax
mov r8d, r10d
xor r8d, 0xffffffff
mov eax, 0xd0a25c65
xor eax, 0xd0ead5dc
and eax, r8d
mov r9d, 0xffffffff
xor r9d, 0x4889b9
and r10d, r9d
mov r8d, 0x489a1a43
xor r8d, 0x7d4ff9c6
mov r11d, 0x374bf34b
xor r11d, 0xc8b40cb4
xor r8d, r11d
and r8d, 0x4889b9
and r9d, 0x35d5e385
or eax, r10d
or r8d, r9d
xor eax, r8d
mov qword [rcx], rdx
cmp eax, 0x9c09e8f6
ja 0x1401a5c9d
jmp 0x1401a5d33
mov ecx, dword [0x14027d858]
xor ecx, 0xb587d0da
mov r8d, dword [0x14027d85c]
mov eax, ecx
xor eax, 0xffffffff
mov edx, r8d
and edx, eax
mov eax, 0xdd17e657
xor eax, 0x22e819a8
mov r9d, r8d
xor r9d, eax
mov eax, ecx
and eax, r9d
imul eax, edx
mov edx, ecx
and edx, r8d
or ecx, r8d
imul ecx, edx
add ecx, eax
xor ecx, 0x4a691b37
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0xffffffff
xor ecx, 0xe9130f0e
mov edx, 0xffffffff
xor edx, 0xe9130f0e
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0xd487c925
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0xd487c925
mov r8d, 0xc4811196
xor r8d, 0x1006d8b3
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, 0x938e005c
xor ecx, 0x1d73b8d9
cmp eax, ecx
je 0x1401a5f8a
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x60]
mov edx, dword [0x14027d860]
add edx, dword [0x14027d864]
add edx, 0x9a749707
xor edx, 0x2f05f5da
xor r8d, r8d
sub r8d, 0x8555b4a
sub edx, r8d
mov dword [rsp + 0x40], edx
mov qword [rax], rcx
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
call fcn.14000efc9
mov rcx, qword [rsp + 0x70]
mov eax, dword [rsp + 0x40]
cmp rcx, 0
sete cl
mov byte [rsp + 0x47], cl
cmp eax, 0x5fa79cc7
je 0x1401a5def
mov al, byte [rsp + 0x47]
test al, 1
jne 0x1401a5f7b
jmp 0x1401a5e63
mov rax, qword [rsp + 0x70]
mov rcx, rax
add rcx, 0xfffffffffffffff0
mov qword [rsp + 0x30], rcx
mov rax, qword [rax - 0x10]
mov qword [rsp + 0x38], rax
movabs rcx, 0x24483096ceb232fe
movabs rdx, 0x24483096ceb232ee
xor rcx, rdx
cmp rax, rcx
jb 0x1401a5f38
mov rdx, qword [rsp + 0x38]
mov rax, rdx
add rax, 0xfffffffffffffff0
mov qword [rsp + 0x28], rax
mov rcx, rax
and rcx, rcx
xor rcx, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
mov r8, rdx
xor r8, 0xffffffffffffffff
or rcx, r8
mov r8, rdx
xor r8, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
or r8, rdx
mov rdx, rax
and rdx, r8
xor rdx, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
or rcx, rdx
cmp rcx, 0
setl cl
cmp rax, 0xffffffffffffffff
setg al
and al, cl
test al, 1
jne 0x1401a5f06
jmp 0x1401a5f10
call fcn.14000f24b
jmp 0x1401a5f7b
mov rdx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x28]
mov qword [rdx], rax
xor eax, eax
mov cl, al
xor cl, 0
and cl, 1
lea r8, [0x14027d128]
call fcn.1400200e0
jmp 0x1401a5f7b
mov rdx, qword [rsp + 0x30]
mov ecx, 1
lea r8, [0x14027d128]
call fcn.1400200e0
mov rcx, qword [rsp + 0x70]
call fcn.1401a41d0
mov rax, qword [rsp + 0x68]
mov al, byte [rax]
mov cl, 0xbd
xor cl, 0xbd
cmp al, cl
jne 0x1401a5f7b
mov rcx, qword [rsp + 0x70]
mov edx, 8
call fcn.14001d294
nop
add rsp, 0x78
ret
in al, dx
out dx, eax
mov ecx, ebp
adc edi, ebp
invalid
cld
xchg ebx, ebx
jmp 0x1401a5def