Function at 0x1400a3f10
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 [0x141dd5008]
xor edx, edx
div dword [0x141dd500c]
imul eax, eax, 0x27e701c4
add eax, 0x78618edc
and eax, 0xf9d5fe64
cmp eax, 0x8f5c7b06
jae 0x1400a3f60
mov eax, 0x20
call fcn.1400f1350
sub rsp, rax
mov eax, 0x20
call fcn.1400f1350
sub rsp, rax
nop
mov eax, dword [0x141dd5010]
xor edx, edx
div dword [0x141dd5014]
mov ecx, eax
or ecx, 0x763fee09
add ecx, 0x446f88b4
mov eax, 0x20
call fcn.1400f1350
sub rsp, rax
mov r14, rsp
mov eax, 0x20
call fcn.1400f1350
sub rsp, rax
mov rdi, rsp
cmp ecx, 0x35a02607
jb 0x1400a3f60
mov r15, qword [rsi + 8]
mov rbx, qword [rsi + 0x10]
sub rsp, 0x20
mov rcx, r15
mov rdx, rbx
call fcn.1400a3bd0
add rsp, 0x20
test rax, rax
je 0x1400a46e3
mov rcx, rax
mov r8, rdx
nop
mov eax, dword [0x141dd5018]
imul eax, dword [0x141dd501c]
or eax, 0x1a31008
and eax, 0x8fe7f398
cmp eax, 0xfe0f39cf
je 0x1400a3fd0
mov eax, dword [0x141dd5020]
xor edx, edx
div dword [0x141dd5024]
nop dword [rax]
mov eax, dword [0x141dd5028]
and eax, dword [0x141dd502c]
imul rax, rax, 0x583d6a5f
shr rax, 0x3e
imul eax, eax, 0xd7d0e5b1
shr eax, 3
imul rax, rax, 0x4d8080d
shr rax, 0x35
cmp eax, 0x2ac0c1a1
je 0x1400a4000
nop word cs:[rax + rax]
mov eax, dword [0x141dd5030]
xor edx, edx
div dword [0x141dd5034]
imul eax, eax, 0xa0ddee4
add eax, 0xa4a754a0
or eax, 0x3b1cf55c
cmp eax, 0xc7f3cb03
ja 0x1400a4040
cmp r8, 2
jne 0x1400a40bc
movzx r9d, word [rcx]
nop
mov eax, dword [0x141dd5038]
xor edx, edx
div dword [0x141dd503c]
imul rax, rax, 0x30980cab
shr rax, 0x3d
add eax, 0x37c6e7db
cmp eax, 0x98568b6
jb 0x1400a4070
movzx eax, r9w
cmp eax, 0x2e2e
jne 0x1400a40bc
mov eax, 2
xor edx, edx
test rcx, rcx
cmovne rdx, rcx
test rdx, rdx
jne 0x1400a4200
jmp 0x1400a46e3
mov eax, 0xeb5a2fdb
nop word cs:[rax + rax]
mov edx, dword [0x141dd5040]
sub edx, dword [0x141dd5044]
and edx, 0x732caf14
add edx, 0x6b67a52d
imul rdx, rax
shr rdx, 0x3e
cmp edx, 0xd36dcb37
je 0x1400a40d0
nop dword [rax + rax]
mov eax, dword [0x141dd5048]
xor edx, edx
div dword [0x141dd504c]
or eax, 0xebb3e9d4
add eax, 0x193608e5
cmp eax, 0x488e992f
ja 0x1400a4100
mov rdx, r8
nop word cs:[rax + rax]
test rdx, rdx
je 0x1400a418b
lea rax, [rdx - 1]
mov r9d, dword [0x141dd5050]
sub r9d, dword [0x141dd5054]
add r9d, 0x7be59c5d
and r9d, 0x1843420e
cmp r9d, 0xeb8f202e
ja 0x1400a4139
cmp byte [rcx + rdx - 1], 0x2e
mov rdx, rax
jne 0x1400a4130
test rax, rax
je 0x1400a41a4
lea r9, [rax + 1]
sub r8, r9
mov rdx, rcx
add rdx, r9
test rcx, rcx
cmovne rdx, rcx
test rdx, rdx
jne 0x1400a4200
jmp 0x1400a46e3
mov rdx, rcx
mov rax, r8
xor ecx, ecx
test rcx, rcx
cmovne rdx, rcx
test rdx, rdx
jne 0x1400a4200
jmp 0x1400a46e3
xor edx, edx
nop word cs:[rax + rax]
mov eax, dword [0x141dd5058]
add eax, dword [0x141dd505c]
imul r9, rax, 0x8b1612f
shr r9, 0x20
sub eax, r9d
shr eax, 1
add eax, r9d
shr eax, 0x1f
or eax, 0xbc76a474
cmp eax, 0xbeda610e
je 0x1400a41b0
mov rax, r8
test rcx, rcx
cmovne rdx, rcx
test rdx, rdx
je 0x1400a46e3
nop word cs:[rax + rax]
mov r9d, dword [0x141dd5060]
and r9d, dword [0x141dd5064]
imul r10d, r9d, 0x510858de
test rcx, rcx
mov r9, rax
cmove r9, r8
cmp r10d, 0xe2b89b1d
je 0x1400a4200
mov ecx, 0x9b3de4e3
add rdx, r9
mov rax, rdx
sub rax, r15
nop word cs:[rax + rax]
mov r8d, dword [0x141dd5068]
or r8d, dword [0x141dd506c]
xor r8d, 0x4b4fce89
imul r8, rcx
shr r8, 0x3f
imul r8d, r8d, 0xfd874e44
cmp r8d, 0xa199d2d3
je 0x1400a4240
cmp rdx, r15
je 0x1400a4385
nop word cs:[rax + rax]
mov ecx, dword [0x141dd5070]
mov edx, dword [0x141dd5074]
add ecx, edx
add ecx, 0x59c56bf7
xor ecx, 0x92026404
and ecx, 0xfef27684
cmp ecx, 0x66526112
ja 0x1400a4280
cmp rbx, rax
jbe 0x1400a4355
nop word cs:[rax + rax]
mov ecx, dword [0x141dd5088]
or ecx, dword [0x141dd508c]
or ecx, 0x1e27f44c
imul ecx, ecx, 0x40e05b78
cmp ecx, 0x1fd545b0
je 0x1400a42c0
movzx ecx, byte [r15 + rax]
nop word cs:[rax + rax]
mov edx, dword [0x141dd5090]
and edx, dword [0x141dd5094]
imul edx, edx, 0x42b6f3a8
add edx, 0x99d78700
or edx, 0xac83ad9b
cmp edx, 0x8b193a16
jb 0x1400a42f0
nop word cs:[rax + rax]
mov edx, dword [0x141dd5098]
add edx, dword [0x141dd509c]
imul edx, edx, 0xe931e61d
add edx, 0x198ebdf3
imul rdx, rdx, 0x4a9174b9
shr rdx, 0x3e
cmp edx, 0x209f45fd
ja 0x1400a4320
cmp cl, 0xbf
jg 0x1400a4360
jmp 0x1400a4777
jne 0x1400a4777
nop dword [rax + rax]
mov ecx, dword [0x141dd50a0]
and ecx, dword [0x141dd50a4]
imul ecx, ecx, 0xafccf732
xor ecx, 0x82c8b450
cmp ecx, 0x683ee3eb
jb 0x1400a4360
cmp rbx, rax
jb 0x1400a43f0
mov ecx, dword [0x141dd5078]
imul ecx, dword [0x141dd507c]
imul rdx, rcx, 0x24e3be5
shr rdx, 0x20
sub ecx, edx
shr ecx, 1
add ecx, edx
shr ecx, 0x1e
and ecx, 0xfffffffe
imul ecx, ecx, 0x3d6d758c
cmp ecx, 0x694e39c0
jbe 0x1400a43c0
mov qword [rsi + 0x10], rax
nop dword [rax + rax]
mov ecx, dword [0x141dd5080]
xor ecx, dword [0x141dd5084]
add ecx, 0x695fa6f7
or ecx, 0x5ab3955
imul ecx, ecx, 0xb4a43363
mov qword [rsi + 0x10], rax
cmp ecx, 0xe2107ed7
jae 0x1400a43c0
mov rbx, rax
nop dword [rax]
mov eax, dword [0x141dd50c0]
xor eax, dword [0x141dd50c4]
imul eax, eax, 0xead5c5
add eax, 0x171d3df5
and eax, 0x1b343839
cmp eax, 0xc5129bd7
ja 0x1400a43f0
mov rcx, qword [rsi]
mov rax, rcx
sub rax, rbx
cmp rax, 3
ja 0x1400a468b
nop word cs:[rax + rax]
mov eax, dword [0x141dd50c8]
xor eax, dword [0x141dd50cc]
add eax, 0x61206b38
and eax, 0x4302107c
cmp eax, 0x513e7af6
ja 0x1400a4430
nop dword [rax]
mov eax, dword [0x141dd50d0]
xor edx, edx
div dword [0x141dd50d4]
xor eax, 0x1001148
and eax, 0x14c1568
cmp eax, 0x2077ed0
je 0x1400a4450
cmp rbx, 0xfffffffffffffffb
ja 0x1400a471d
mov eax, 0xb30a4b2b
add rbx, 4
nop word cs:[rax + rax]
mov edx, dword [0x141dd50d8]
xor edx, dword [0x141dd50dc]
imul edx, edx, 0xb2b26a40
or edx, 0xeec0f59e
imul rdx, rax
shr rdx, 0x39
cmp edx, 0xa20ef80
je 0x1400a4490
nop dword [rax + rax]
mov eax, dword [0x141dd50e0]
sub eax, dword [0x141dd50e4]
and eax, 0xfcab44dc
imul eax, eax, 0x940590fd
and eax, 0x858c2a04
cmp eax, 0xb97210c2
je 0x1400a44c0
nop word cs:[rax + rax]
mov eax, dword [0x141dd50e8]
xor eax, dword [0x141dd50ec]
cmp eax, 0x4716cc91
je 0x1400a44f0
test rbx, rbx
js 0x1400a471d
nop dword [rax]
mov eax, dword [0x141dd50f0]
or eax, dword [0x141dd50f4]
add eax, 0x971963ab
imul rax, rax, 0x5a120991
shr rax, 0x3d
xor eax, 0x699c17df
cmp eax, 0x1c9fc155
jb 0x1400a4510
test rcx, rcx
je 0x1400a454c
mov qword [r14], r15
mov qword [r14 + 0x10], rcx
mov r15d, 1
jmp 0x1400a454f
xor r15d, r15d
mov eax, dword [0x141dd50f8]
mov ecx, dword [0x141dd50fc]
add eax, ecx
add eax, 0x8e5adbeb
and eax, 0x82b98b7d
imul eax, eax, 0x112c09f
cmp eax, 0xa6f1b49b
jae 0x1400a45a0
mov qword [r14 + 8], r15
sub rsp, 0x20
mov edx, 1
mov rcx, rdi
mov r8, rbx
mov r9, r14
call fcn.1400c39d0
add rsp, 0x20
nop word cs:[rax + rax]
mov eax, dword [0x141dd5100]
and eax, dword [str.__c]
and eax, 0x1144d4ca
imul r12d, eax, 0x385e9c7c
mov qword [r14 + 8], r15
sub rsp, 0x20
mov edx, 1
mov rcx, rdi
mov r8, rbx
mov r9, r14
call fcn.1400c39d0
add rsp, 0x20
cmp r12d, 0x86395d6f
je 0x1400a45a0
cmp qword [rdi], 0
jne 0x1400a4700
nop word [rax + rax]
mov eax, dword [0x141dd5110]
xor eax, dword [0x141dd5114]
imul eax, eax, 0x4b5ae00c
add eax, 0xe4a9d610
and eax, 0x110bd260
cmp eax, 0x1633112c
je 0x1400a45f0
mov rax, qword [rdi + 8]
mov ecx, dword [0x141dd5118]
or ecx, dword [0x141dd511c]
imul ecx, ecx, 0xac8fd93c
and ecx, 0xeadb4b98
add ecx, 0xaf908f8c
cmp ecx, 0xa6689def
jbe 0x1400a4650
mov qword [rsi + 8], rax
mov qword [rsi], rbx
nop word cs:[rax + rax]
mov ecx, dword [0x141dd5120]
add ecx, dword [str.E_tD5i]
xor ecx, 0xd9c00846
and ecx, 0xf9c61a66
imul rdx, rcx, 0x28f40031
shr rdx, 0x20
sub ecx, edx
shr ecx, 1
add ecx, edx
shr ecx, 0x1f
mov qword [rsi + 8], rax
mov qword [rsi], rbx
cmp ecx, 0xc6f48bc7
je 0x1400a4650
sub rsp, 0x20
lea rdx, [0x141dbb6fb]
mov r8d, 1
mov rcx, rsi
call fcn.140094760
lea rdx, [0x141dbb978]
mov r8d, 3
mov rcx, rsi
call fcn.140094760
add rsp, 0x20
nop dword [rax]
mov eax, dword [0x141dd5138]
add eax, dword [0x141dd513c]
imul eax, eax, 0xb65062fd
add eax, 0x3463690f
and eax, 0xc7578ad7
cmp eax, 0xc61a27
jae 0x1400a46c0
mov rsp, rbp
pop rbx
pop rdi
pop rsi
pop r12
pop r14
pop r15
pop rbp
ret
mov eax, dword [0x141dd5108]
and eax, dword [0x141dd510c]
or eax, 0x1e7e2d60
add eax, 0xac138ab4
cmp eax, 0x9a9b2231
jae 0x1400a4700
mov eax, dword [0x141dd5128]
sub eax, dword [0x141dd512c]
xor eax, 0x52d4e0d3
imul eax, eax, 0x8559d0ce
and eax, 0x67f29b08
cmp eax, 0x736f3e82
jbe 0x1400a4750
ud2
mov eax, dword [0x141dd5130]
sub eax, dword [0x141dd5134]
imul eax, eax, 0x5bd460ae
or eax, 0x15500000
and eax, 0x557aca88
ud2
mov eax, dword [0x141dd50a8]
imul eax, dword [0x141dd50ac]
add eax, 0x189e7290
or eax, 0xbf360bd4
and eax, 0xffffdbde
cmp eax, 0x8811795d
jae 0x1400a47a0
ud2
mov eax, dword [0x141dd50b0]
and eax, dword [0x141dd50b4]
and eax, 0x6214c183
imul eax, eax, 0x30c4cfb2
ud2