Function at 0x1400a01c0
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r12
push rsi
push rdi
push rbx
mov rbp, rsp
mov rsi, rcx
mov eax, dword [0x141dcea78]
xor edx, edx
div dword [0x141dcea7c]
imul rax, rax, 0x183d75e9
shr rax, 0x3c
imul eax, eax, 0xff9003da
add eax, 0x271168b
cmp eax, 0x6f36d646
jbe 0x1400a0220
mov eax, 0x20
call fcn.1400ed360
sub rsp, rax
mov eax, 0x20
call fcn.1400ed360
sub rsp, rax
nop word cs:[rax + rax]
mov ecx, dword [0x141dcea80]
sub ecx, dword [0x141dcea84]
or ecx, 0xf1b70454
add ecx, 0x999aa372
mov eax, 0x20
call fcn.1400ed360
sub rsp, rax
mov rdi, rsp
mov eax, 0x20
call fcn.1400ed360
sub rsp, rax
mov rbx, rsp
cmp ecx, 0xf9b84b12
ja 0x1400a0220
mov r15, qword [rsi + 8]
mov r14, qword [rsi + 0x10]
sub rsp, 0x20
mov rcx, r15
mov rdx, r14
call fcn.14009fda0
add rsp, 0x20
test rax, rax
je 0x1400a08c7
mov rcx, rax
mov r8, rdx
nop word [rax + rax]
mov eax, dword [0x141dcea88]
xor edx, edx
div dword [0x141dcea8c]
or eax, 0x2957907e
add eax, 0x70223f2f
cmp eax, 0xb919a923
ja 0x1400a0290
cmp r8, 2
jne 0x1400a0320
nop word cs:[rax + rax]
mov eax, dword [0x141dcea90]
sub eax, dword [0x141dcea94]
xor eax, 0x60290482
or eax, 0x94966a75
cmp eax, 0x5fc0aad5
jb 0x1400a02c0
movzx eax, word [rcx]
mov edx, dword [0x141dcea98]
sub edx, dword [0x141dcea9c]
imul edx, edx, 0xabe9f121
add edx, 0x800dc33a
cmp edx, 0x608726af
jb 0x1400a02e0
movzx eax, ax
cmp eax, 0x2e2e
jne 0x1400a0320
mov eax, 2
xor r9d, r9d
jmp 0x1400a03a0
mov eax, dword [0x141dceaa0]
xor edx, edx
div dword [0x141dceaa4]
or eax, 0x43508ec1
and eax, 0xc7558fc5
imul eax, eax, 0x11039bef
cmp eax, 0xccd3ac3b
ja 0x1400a0320
mov rax, r8
nop dword [rax + rax]
mov rdx, rax
mov eax, dword [0x141dceaa8]
add eax, dword [0x141dceaac]
imul eax, eax, 0x913d8848
cmp eax, 0x6e88a7bf
jb 0x1400a0353
test rdx, rdx
je 0x1400a038c
lea rax, [rdx - 1]
cmp byte [rcx + rdx - 1], 0x2e
jne 0x1400a0350
test rax, rax
je 0x1400a0396
sub r8, rdx
mov r9, rcx
add r9, rdx
jmp 0x1400a03a0
mov r9, rcx
mov rax, r8
xor ecx, ecx
jmp 0x1400a03a0
xor r9d, r9d
mov rax, r8
nop dword [rax]
mov r10d, dword [0x141dceab0]
imul r10d, dword [0x141dceab4]
add r10d, 0x83309289
xor r10d, 0x8127bba5
add r10d, 0x97f24c41
test rcx, rcx
mov rdx, rcx
cmove rdx, r9
cmp r10d, 0xfc96bc99
ja 0x1400a03a0
test rdx, rdx
je 0x1400a08c7
test rcx, rcx
cmove rax, r8
add rdx, rax
mov rax, rdx
sub rax, r15
mov ecx, dword [0x141dceab8]
imul ecx, dword [0x141dceabc]
xor ecx, 0x4c955
and ecx, 0x2186e955
add ecx, 0x702ae73f
cmp ecx, 0x4bc791e3
jb 0x1400a03f0
nop word [rax + rax]
mov ecx, dword [0x141dceac0]
xor ecx, dword [0x141dceac4]
or ecx, 0x809e4261
xor ecx, 0x249c4a02
or ecx, 0x5b61159c
cmp ecx, 0xfc32460c
je 0x1400a0420
cmp rdx, r15
je 0x1400a0524
nop
mov ecx, dword [0x141dceac8]
sub ecx, dword [0x141dceacc]
imul ecx, ecx, 0xc0c7b30e
add ecx, 0x4eb62533
and ecx, 0xc9f55d5b
cmp ecx, 0xf693568e
je 0x1400a0450
mov ecx, 0x8a6c5531
nop dword [rax + rax]
mov edx, dword [0x141dcead0]
xor edx, dword [0x141dcead4]
imul edx, edx, 0xc05fe4c4
imul rdx, rcx
shr rdx, 0x3d
and edx, 0xfffffffe
cmp edx, 0xa2361336
je 0x1400a0480
cmp r14, rax
jbe 0x1400a0548
mov ecx, 0xab60f333
nop word cs:[rax + rax]
mov edx, dword [0x141dceaf0]
and edx, dword [0x141dceaf4]
imul rdx, rcx
shr rdx, 0x3f
or edx, 0x462de718
cmp edx, 0x832b5c9a
ja 0x1400a04c0
movzx ecx, byte [r15 + rax]
nop word [rax + rax]
mov edx, dword [0x141dceaf8]
sub edx, dword [0x141dceafc]
or edx, 0x1a2d1a1b
add edx, 0x881779d6
or edx, 0xce73f721
cmp edx, 0x572ecf7
jb 0x1400a04f0
cmp cl, 0xbf
jle 0x1400a0559
cmp r14, rax
jb 0x1400a0613
mov ecx, dword [0x141dcead8]
or ecx, dword [0x141dceadc]
imul rcx, rcx, 0x45e7458b
shr rcx, 0x3d
cmp ecx, 0xf261166a
jne 0x1400a05bb
jmp 0x1400a05e0
xor ecx, ecx
nop word [rax + rax]
test cl, cl
jne 0x1400a0550
cmp r14, rax
je 0x1400a051b
xor eax, eax
test al, al
jne 0x1400a057e
mov eax, dword [0x141dceb00]
and eax, dword [0x141dceb04]
add eax, 0xab3d5038
xor eax, 0xb2a89609
ud2
ud2
mov ecx, dword [0x141dceae0]
imul ecx, dword [0x141dceae4]
add ecx, 0x55355e08
or ecx, 0x61f9d227
mov qword [rsi + 0x10], rax
cmp ecx, 0x7a648a9e
jae 0x1400a05f0
mov qword [rsi + 0x10], rax
jmp 0x1400a05bb
mov ecx, dword [0x141dceae8]
and ecx, dword [0x141dceaec]
or ecx, 0xa2a002
and ecx, 0x80e2e443
cmp ecx, 0x67364a4f
jae 0x1400a05f0
mov r14, rax
mov rax, qword [rsi]
mov rcx, rax
sub rcx, r14
cmp rcx, 3
ja 0x1400a075b
xor ecx, ecx
nop dword [rax + rax]
test cl, cl
jne 0x1400a0630
cmp r14, 0xfffffffffffffffb
ja 0x1400a0782
add r14, 4
js 0x1400a0782
mov ecx, 0xce9ee89f
nop dword [rax]
mov edx, dword [0x141dceb10]
sub edx, dword [0x141dceb14]
add edx, 0x467babbe
or edx, 0x195be856
imul rdx, rcx
shr rdx, 0x3f
cmp edx, 0x575ed866
ja 0x1400a0650
nop dword [rax + rax]
mov ecx, dword [0x141dceb18]
xor ecx, dword [0x141dceb1c]
add ecx, 0x97ebfc8
or ecx, 0xa7664fc0
cmp ecx, 0x6cd5e167
je 0x1400a0680
test rax, rax
je 0x1400a06bc
mov qword [rdi], r15
mov qword [rdi + 0x10], rax
xor eax, eax
nop
test al, al
jne 0x1400a06b0
mov r15d, 1
jmp 0x1400a06bf
xor r15d, r15d
mov eax, dword [0x141dceb20]
and eax, dword [0x141dceb24]
imul eax, eax, 0xc7288511
or eax, 0xad3d3bf7
cmp eax, 0xa1f7a4ea
je 0x1400a0729
mov r12d, dword [0x141dceb28]
imul r12d, dword [0x141dceb2c]
or r12d, 0xa4420022
and r12d, 0xa4c7a936
add r12d, 0x910b8556
mov qword [rdi + 8], r15
sub rsp, 0x20
mov edx, 1
mov rcx, rbx
mov r8, r14
mov r9, rdi
call fcn.1400bff80
add rsp, 0x20
cmp r12d, 0xc5dd3b12
jbe 0x1400a074a
mov qword [rdi + 8], r15
sub rsp, 0x20
mov edx, 1
mov rcx, rbx
mov r8, r14
mov r9, rdi
call fcn.1400bff80
add rsp, 0x20
jmp 0x1400a06dd
cmp qword [rbx], 0
jne 0x1400a0782
mov rax, qword [rbx + 8]
mov qword [rsi + 8], rax
mov qword [rsi], r14
mov eax, dword [0x141dceb40]
add eax, dword [0x141dceb44]
and eax, 0xf8f0abde
add eax, 0x7066a011
and eax, 0x9844e9c3
cmp eax, 0xb5f5b26c
jbe 0x1400a07e3
jmp 0x1400a0827
xor eax, eax
test al, al
je 0x1400a0790
ud2
mov eax, dword [0x141dceb30]
xor edx, edx
div dword [0x141dceb34]
imul rax, rax, 0x6415a4cb
shr rax, 0x3d
imul eax, eax, 0x66a5d7ec
ud2
mov eax, dword [0x141dceb48]
xor edx, edx
div dword [0x141dceb4c]
xor eax, 0x1ccc9f86
imul edi, eax, 0xf5036284
add edi, 0x96ef9b4c
sub rsp, 0x20
lea rdx, [0x141db64fb]
mov r8d, 1
mov rcx, rsi
call fcn.140090ae0
add rsp, 0x20
cmp edi, 0x66aae4b8
jae 0x1400a0846
sub rsp, 0x20
lea rdx, [0x141db64fb]
mov r8d, 1
mov rcx, rsi
call fcn.140090ae0
add rsp, 0x20
jmp 0x1400a07e3
mov eax, dword [0x141dceb50]
xor edx, edx
div dword [0x141dceb54]
and eax, 0xa5d5a2fc
imul eax, eax, 0x7f582aff
cmp eax, 0xbfa5a7b4
je 0x1400a08a8
mov eax, dword [0x141dceb58]
sub eax, dword [0x141dceb5c]
imul eax, eax, 0x3c77927a
xor eax, 0x10241140
imul edi, eax, 0xf9506ef9
sub rsp, 0x20
lea rdx, [0x141db6778]
mov r8d, 3
mov rcx, rsi
call fcn.140090ae0
add rsp, 0x20
cmp edi, 0x3f9cfc8b
ja 0x1400a08c7
sub rsp, 0x20
lea rdx, [0x141db6778]
mov r8d, 3
mov rcx, rsi
call fcn.140090ae0
add rsp, 0x20
jmp 0x1400a0866
mov rsp, rbp
pop rbx
pop rdi
pop rsi
pop r12
pop r14
pop r15
pop rbp
ret