Function at 0x1400dfff0
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x108]
sub rsp, 0x1d0
movaps xmmword [rax - 0x48], xmm6
movaps xmmword [rax - 0x58], xmm7
movaps xmmword [rax - 0x68], xmm8
movaps xmmword [rax - 0x78], xmm9
mov rax, qword [0x1401a4028]
xor rax, rsp
mov qword [rbp + 0x80], rax
mov rax, rdx
mov qword [rbp - 0x68], rdx
mov r13, rcx
mov qword [rbp - 0x58], rdx
xor esi, esi
mov r14d, esi
mov dword [rbp - 0x60], esi
mov r15, qword [rdx]
mov rdi, qword [rdx + 8]
mov qword [rbp - 0x70], rdi
cmp r15, rdi
je 0x1400e0aa9
movsd xmm9, qword [0x140184bd8]
movsd xmm8, qword [0x140184b50]
mov ebx, 0xf
lea r12, [0x1401a82b0]
mov rcx, r15
call fcn.140103ec0
test eax, eax
jne 0x1400e00ae
cmp r15, r12
je 0x1400e00ae
mov rdx, r12
cmp qword [0x1401a82c8], 0x10
cmovae rdx, qword [0x1401a82b0]
mov r8, qword [0x1401a82c0]
mov rcx, r15
call fcn.1400d9ac0
mov rdx, r15
lea rcx, [rbp + 0x40]
call fcn.1400d92a0
mov rdx, rax
mov r10d, esi
mov r9, rsi
cmp qword [rax + 0x10], 0
jbe 0x1400e00ff
nop word [rax + rax]
mov rcx, qword [0x1401a82a8]
movzx r8d, word [rcx + 0x80]
mov rax, rdx
cmp qword [rdx + 0x18], 0x10
jb 0x1400e00ec
mov rax, qword [rdx]
xor byte [r9 + rax], r8b
inc r10d
inc r9
movsxd rax, r10d
cmp rax, qword [rdx + 0x10]
jb 0x1400e00d0
xorps xmm0, xmm0
movups xmmword [rbp - 0x50], xmm0
mov qword [rbp - 0x40], rsi
mov qword [rbp - 0x38], rsi
movups xmm0, xmmword [rdx]
movups xmmword [rbp - 0x50], xmm0
movups xmm1, xmmword [rdx + 0x10]
movups xmmword [rbp - 0x40], xmm1
mov qword [rdx + 0x10], rsi
mov qword [rdx + 0x18], rbx
mov byte [rdx], 0
mov rcx, rdx
call fcn.1400d96a0
nop
lea rcx, [rbp - 0x50]
cmp qword [rbp - 0x38], 0x10
cmovae rcx, qword [rbp - 0x50]
xor r9d, r9d
lea r8d, [r9 + 0x41]
lea rdx, [rbp - 0x78]
call fcn.1400cd200
nop
lea rcx, [rbp - 0x50]
call fcn.1400d96a0
call fcn.1400e0b00
mov rbx, rax
mov rcx, rax
call fcn.1400e4190
mov qword [rsp + 0x30], rsi
lea rax, [rbp - 0x60]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rsi
xor r9d, r9d
lea r8d, [r9 - 1]
mov rdx, rbx
mov r12, qword [rbp - 0x78]
mov rcx, r12
call fcn.14008ae80
test eax, eax
jne 0x1400e0a89
mov rcx, qword [rbp - 0x60]
call fcn.140039550
cmp eax, 0x64
jne 0x1400e0a80
nop dword [rax]
xorps xmm0, xmm0
movups xmmword [rbp - 0x30], xmm0
mov qword [rbp - 0x20], rsi
mov eax, 0xf
mov qword [rbp - 0x18], rax
mov byte [rbp - 0x30], 0
movups xmmword [rbp - 0x10], xmm0
mov qword [rbp], rsi
mov qword [rbp + 8], rax
mov byte [rbp - 0x10], 0
movups xmmword [rbp + 0x10], xmm0
mov qword [rbp + 0x20], rsi
mov qword [rbp + 0x28], rax
mov byte [rbp + 0x10], 0
mov rbx, qword [rbp - 0x60]
test rbx, rbx
je 0x1400e023d
mov rax, rbx
mov rcx, qword [rbx]
mov rcx, qword [rcx + 0x18]
test rcx, rcx
je 0x1400e0206
call qword [0x1401a50e0]
mov rcx, qword [rbx + 0xa0]
test rcx, rcx
je 0x1400e0229
mov eax, 3
cmp ax, word [rbx + 0xc0]
jae 0x1400e0229
add rcx, 0xa8
jmp 0x1400e0244
mov rcx, qword [rbx]
mov dword [rcx + 0x50], 0x19
mov edx, 0x19
call fcn.14000a0f0
lea rcx, [0x14017dc28]
movzx eax, word [rcx + 0x14]
test al, 2
je 0x1400e0257
cmp byte [rcx + 0x16], 1
jne 0x1400e0257
mov edi, dword [rcx + 0x10]
jmp 0x1400e027a
test al, 0x10
je 0x1400e0269
mov edi, dword [rcx + 0x10]
bt ax, 0xa
jae 0x1400e027a
add edi, dword [rcx]
jmp 0x1400e027a
test al, 1
je 0x1400e0271
mov edi, esi
jmp 0x1400e027a
mov dl, 1
call fcn.140032fb0
mov edi, eax
test rbx, rbx
je 0x1400e02ad
mov edx, dword [rbx + 0x34]
mov rcx, qword [rbx]
cmp byte [rcx + 0x67], 0
jne 0x1400e0293
test edx, edx
jne 0x1400e0293
mov eax, esi
jmp 0x1400e0298
call fcn.140006dc0
mov dword [rbx + 0x34], eax
mov rax, qword [rbx]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x1400e02ad
call qword [0x1401a50f0]
movsxd rsi, edi
mov rbx, qword [rbp - 0x60]
test rbx, rbx
je 0x1400e0309
mov rax, rbx
mov rcx, qword [rbx]
mov rcx, qword [rcx + 0x18]
test rcx, rcx
je 0x1400e02ce
call qword [0x1401a50e0]
mov rcx, qword [rbx + 0xa0]
test rcx, rcx
je 0x1400e02f5
mov eax, 3
cmp ax, word [rbx + 0xc0]
jae 0x1400e02f5
add rcx, 0xa8
jne 0x1400e0310
xor edi, edi
jmp 0x1400e034b
mov rcx, qword [rbx]
mov dword [rcx + 0x50], 0x19
mov edx, 0x19
call fcn.14000a0f0
lea rcx, [0x14017dc28]
movzx edx, word [rcx + 0x14]
movzx eax, dx
mov r8d, 0x202
and ax, r8w
cmp ax, r8w
jne 0x1400e0333
cmp byte [rcx + 0x16], 1
jne 0x1400e0333
mov rdi, qword [rcx + 8]
jmp 0x1400e0346
test dl, 1
je 0x1400e033c
xor edi, edi
jmp 0x1400e0346
mov dl, 1
call fcn.1400328a0
mov rdi, rax
test rbx, rbx
je 0x1400e0379
mov edx, dword [rbx + 0x34]
mov rcx, qword [rbx]
cmp byte [rcx + 0x67], 0
jne 0x1400e035f
test edx, edx
jne 0x1400e035f
xor eax, eax
jmp 0x1400e0364
call fcn.140006dc0
mov dword [rbx + 0x34], eax
mov rax, qword [rbx]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x1400e0379
call qword [0x1401a50f0]
xorps xmm0, xmm0
movups xmmword [rbp - 0x50], xmm0
xor eax, eax
mov qword [rbp - 0x40], rax
mov qword [rbp - 0x38], rax
mov r8, rsi
mov rdx, rdi
lea rcx, [rbp - 0x50]
call fcn.1400d9d80
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x40], xmm0
xor esi, esi
mov qword [rbp + 0x50], rsi
mov qword [rbp + 0x58], rsi
mov rax, qword [rbp - 0x40]
cmp rax, 3
jb 0x1400e0af7
add rax, 0xfffffffffffffffd
mov r8d, 0xc
cmp rax, r8
cmovb r8, rax
lea rdx, [rbp - 0x50]
cmp qword [rbp - 0x38], 0x10
cmovae rdx, qword [rbp - 0x50]
add rdx, 3
lea rcx, [rbp + 0x40]
call fcn.1400d9d80
or r14d, 1
xorps xmm0, xmm0
movups xmmword [rbp + 0x60], xmm0
mov qword [rbp + 0x70], rsi
mov qword [rbp + 0x78], rsi
mov rax, qword [rbp - 0x40]
cmp rax, 0xf
jb 0x1400e0af1
add rax, 0xfffffffffffffff1
mov r8, 0xffffffffffffffff
cmp rax, r8
cmovb r8, rax
lea rdx, [rbp - 0x50]
cmp qword [rbp - 0x38], 0x10
cmovae rdx, qword [rbp - 0x50]
add rdx, 0xf
lea rcx, [rbp + 0x60]
call fcn.1400d9d80
or r14d, 2
mov rbx, qword [rbp - 0x60]
test rbx, rbx
je 0x1400e047b
mov rax, qword [rbx]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x1400e0452
call qword [0x1401a50e0]
mov rcx, qword [rbx + 0xa0]
test rcx, rcx
je 0x1400e0467
cmp si, word [rbx + 0xc0]
jb 0x1400e0482
mov rcx, qword [rbx]
mov dword [rcx + 0x50], 0x19
mov edx, 0x19
call fcn.14000a0f0
lea rcx, [0x14017dc28]
movzx edx, word [rcx + 0x14]
movzx eax, dx
mov r8d, 0x202
and ax, r8w
cmp ax, r8w
jne 0x1400e04a5
cmp byte [rcx + 0x16], 1
jne 0x1400e04a5
mov rax, qword [rcx + 8]
jmp 0x1400e04b6
test dl, 1
je 0x1400e04af
mov rax, rsi
jmp 0x1400e04b6
mov dl, 1
call fcn.1400328a0
mov rdi, rax
test rbx, rbx
je 0x1400e04f2
mov edx, dword [rbx + 0x34]
mov rcx, qword [rbx]
cmp byte [rcx + 0x67], 0
jne 0x1400e04d2
test edx, edx
jne 0x1400e04d2
mov eax, esi
jmp 0x1400e04d7
call fcn.140006dc0
mov dword [rbx + 0x34], eax
mov rax, qword [rbx]
mov rcx, qword [rax + 0x18]
mov rax, rdi
test rcx, rcx
je 0x1400e04f2
call qword [0x1401a50f0]
mov rax, rdi
xorps xmm0, xmm0
movups xmmword [rsp + 0x40], xmm0
mov qword [rsp + 0x50], rsi
mov qword [rsp + 0x58], rsi
mov r8, 0xffffffffffffffff
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x1400e0510
mov rdx, rax
lea rcx, [rsp + 0x40]
call fcn.1400d9d80
mov r9d, esi
mov r8, rsi
cmp qword [rsp + 0x50], rsi
jbe 0x1400e0574
nop dword [rax]
nop dword [rax + rax]
mov rax, qword [0x1401a82a8]
movzx ecx, word [rax + 0x80]
lea rdx, [rsp + 0x40]
cmp qword [rsp + 0x58], 0x10
cmovae rdx, qword [rsp + 0x40]
xor byte [rdx + r8], cl
inc r9d
lea r8, [r8 + 1]
movsxd rax, r9d
cmp rax, qword [rsp + 0x50]
jb 0x1400e0540
movups xmm6, xmmword [rsp + 0x40]
movups xmmword [rsp + 0x68], xmm6
movups xmm7, xmmword [rsp + 0x50]
movups xmmword [rsp + 0x78], xmm7
mov qword [rsp + 0x50], rsi
mov ebx, 0xf
mov qword [rsp + 0x58], rbx
mov byte [rsp + 0x40], 0
lea rcx, [rsp + 0x40]
call fcn.1400d96a0
movaps xmmword [rbp - 0x30], xmm6
movaps xmmword [rbp - 0x20], xmm7
mov qword [rsp + 0x78], rsi
mov qword [rbp - 0x80], rbx
mov byte [rsp + 0x68], 0
lea rcx, [rsp + 0x68]
call fcn.1400d96a0
mov rbx, qword [rbp - 0x60]
test rbx, rbx
je 0x1400e0618
mov rax, rbx
mov rcx, qword [rbx]
mov rcx, qword [rcx + 0x18]
test rcx, rcx
je 0x1400e05e4
call qword [0x1401a50e0]
mov rcx, qword [rbx + 0xa0]
test rcx, rcx
je 0x1400e0604
mov eax, 1
cmp ax, word [rbx + 0xc0]
jae 0x1400e0604
add rcx, 0x38
jmp 0x1400e061f
mov rcx, qword [rbx]
mov dword [rcx + 0x50], 0x19
mov edx, 0x19
call fcn.14000a0f0
lea rcx, [0x14017dc28]
movzx eax, word [rcx + 0x14]
test al, 0x24
je 0x1400e062c
mov rdi, qword [rcx]
jmp 0x1400e0679
test al, 8
je 0x1400e0661
movsd xmm0, qword [rcx]
comisd xmm9, xmm0
jbe 0x1400e0647
movabs rdi, 0x8000000000000000
jmp 0x1400e0679
comisd xmm0, xmm8
jbe 0x1400e065a
movabs rdi, 0x7fffffffffffffff
jmp 0x1400e0679
cvttsd2si rdi, xmm0
jmp 0x1400e0679
test al, 0x12
je 0x1400e0676
cmp qword [rcx + 8], 0
je 0x1400e0676
call fcn.1400319e0
mov rdi, rax
jmp 0x1400e0679
mov rdi, rsi
test rbx, rbx
je 0x1400e06ac
mov edx, dword [rbx + 0x34]
mov rcx, qword [rbx]
cmp byte [rcx + 0x67], 0
jne 0x1400e0692
test edx, edx
jne 0x1400e0692
mov eax, esi
jmp 0x1400e0697
call fcn.140006dc0
mov dword [rbx + 0x34], eax
mov rax, qword [rbx]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x1400e06ac
call qword [0x1401a50f0]
mov dword [rbp + 0x30], edi
mov rbx, qword [rbp - 0x60]
test rbx, rbx
je 0x1400e0701
mov rax, rbx
mov rcx, qword [rbx]
mov rcx, qword [rcx + 0x18]
test rcx, rcx
je 0x1400e06cd
call qword [0x1401a50e0]
mov rcx, qword [rbx + 0xa0]
test rcx, rcx
je 0x1400e06ed
mov eax, 2
cmp ax, word [rbx + 0xc0]
jae 0x1400e06ed
add rcx, 0x70
jmp 0x1400e0708
mov rcx, qword [rbx]
mov dword [rcx + 0x50], 0x19
mov edx, 0x19
call fcn.14000a0f0
lea rcx, [0x14017dc28]
movzx eax, word [rcx + 0x14]
test al, 0x24
je 0x1400e0715
mov rdi, qword [rcx]
jmp 0x1400e0762
test al, 8
je 0x1400e074a
movsd xmm0, qword [rcx]
comisd xmm9, xmm0
jbe 0x1400e0730
movabs rdi, 0x8000000000000000
jmp 0x1400e0762
comisd xmm0, xmm8
jbe 0x1400e0743
movabs rdi, 0x7fffffffffffffff
jmp 0x1400e0762
cvttsd2si rdi, xmm0
jmp 0x1400e0762
test al, 0x12
je 0x1400e075f
cmp qword [rcx + 8], 0
je 0x1400e075f
call fcn.1400319e0
mov rdi, rax
jmp 0x1400e0762
mov rdi, rsi
test rbx, rbx
je 0x1400e0795
mov edx, dword [rbx + 0x34]
mov rcx, qword [rbx]
cmp byte [rcx + 0x67], 0
jne 0x1400e077b
test edx, edx
jne 0x1400e077b
mov eax, esi
jmp 0x1400e0780
call fcn.140006dc0
mov dword [rbx + 0x34], eax
mov rax, qword [rbx]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x1400e0795
call qword [0x1401a50f0]
mov dword [rbp + 0x34], edi
mov rbx, qword [rbp - 0x60]
test rbx, rbx
je 0x1400e07f2
mov rax, rbx
mov rcx, qword [rbx]
mov rcx, qword [rcx + 0x18]
test rcx, rcx
je 0x1400e07b6
call qword [0x1401a50e0]
mov rcx, qword [rbx + 0xa0]
test rcx, rcx
je 0x1400e07de
mov eax, 6
cmp ax, word [rbx + 0xc0]
jae 0x1400e07de
add rcx, 0x150
jne 0x1400e07f9
mov rdi, rsi
jmp 0x1400e0835
mov rcx, qword [rbx]
mov dword [rcx + 0x50], 0x19
mov edx, 0x19
call fcn.14000a0f0
lea rcx, [0x14017dc28]
movzx edx, word [rcx + 0x14]
movzx eax, dx
mov r8d, 0x202
and ax, r8w
cmp ax, r8w
jne 0x1400e081c
cmp byte [rcx + 0x16], 1
jne 0x1400e081c
mov rdi, qword [rcx + 8]
jmp 0x1400e0830
test dl, 1
je 0x1400e0826
mov rdi, rsi
jmp 0x1400e0830
mov dl, 1
call fcn.1400328a0
mov rdi, rax
test rbx, rbx
je 0x1400e0863
mov edx, dword [rbx + 0x34]
mov rcx, qword [rbx]
cmp byte [rcx + 0x67], 0
jne 0x1400e0849
test edx, edx
jne 0x1400e0849
mov eax, esi
jmp 0x1400e084e
call fcn.140006dc0
mov dword [rbx + 0x34], eax
mov rax, qword [rbx]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x1400e0863
call qword [0x1401a50f0]
xorps xmm0, xmm0
movups xmmword [rsp + 0x40], xmm0
mov qword [rsp + 0x50], rsi
mov qword [rsp + 0x58], rsi
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rdi + r8], 0
jne 0x1400e0880
mov rdx, rdi
lea rcx, [rsp + 0x40]
call fcn.1400d9d80
mov r8d, esi
mov rdx, rsi
cmp qword [rsp + 0x50], rsi
jbe 0x1400e08e3
nop dword [rax]
nop dword [rax + rax]
mov rax, qword [0x1401a82a8]
movzx ecx, word [rax + 0x80]
lea rax, [rsp + 0x40]
cmp qword [rsp + 0x58], 0x10
cmovae rax, qword [rsp + 0x40]
xor byte [rdx + rax], cl
inc r8d
lea rdx, [rdx + 1]
movsxd rax, r8d
cmp rax, qword [rsp + 0x50]
jb 0x1400e08b0
movups xmm7, xmmword [rsp + 0x40]
movups xmmword [rsp + 0x68], xmm7
movups xmm6, xmmword [rsp + 0x50]
movups xmmword [rsp + 0x78], xmm6
mov qword [rsp + 0x50], rsi
mov ebx, 0xf
mov qword [rsp + 0x58], rbx
mov byte [rsp + 0x40], 0
lea rcx, [rsp + 0x40]
call fcn.1400d96a0
movaps xmmword [rbp + 0x10], xmm7
movaps xmmword [rbp + 0x20], xmm6
mov qword [rsp + 0x78], rsi
mov qword [rbp - 0x80], rbx
mov byte [rsp + 0x68], 0
lea rcx, [rsp + 0x68]
call fcn.1400d96a0
lea rax, [rbp + 0x40]
mov qword [rsp + 0x20], rax
mov r9, r13
lea r8, [rbp + 0x60]
lea rdx, [rsp + 0x40]
call fcn.1400de5a0
mov rdx, rax
mov r10d, esi
mov r9, rsi
cmp qword [rax + 0x10], rsi
jbe 0x1400e098f
nop
mov rcx, qword [0x1401a82a8]
movzx r8d, word [rcx + 0x80]
mov rax, rdx
cmp qword [rdx + 0x18], 0x10
jb 0x1400e097c
mov rax, qword [rdx]
xor byte [rax + r9], r8b
inc r10d
inc r9
movsxd rax, r10d
cmp rax, qword [rdx + 0x10]
jb 0x1400e0960
movups xmm6, xmmword [rdx]
movups xmmword [rsp + 0x68], xmm6
movups xmm7, xmmword [rdx + 0x10]
movups xmmword [rsp + 0x78], xmm7
mov qword [rdx + 0x10], rsi
mov qword [rdx + 0x18], rbx
mov byte [rdx], 0
mov rcx, rdx
call fcn.1400d96a0
movaps xmmword [rbp - 0x10], xmm6
movaps xmmword [rbp], xmm7
mov qword [rsp + 0x78], rsi
mov qword [rbp - 0x80], rbx
mov byte [rsp + 0x68], 0
lea rcx, [rsp + 0x68]
call fcn.1400d96a0
mov rbx, qword [r13 + 0x78]
cmp rbx, qword [r13 + 0x80]
je 0x1400e0a20
mov qword [rsp + 0x60], rbx
lea rdx, [rbp - 0x30]
mov rcx, rbx
call fcn.1400d92a0
nop
lea rcx, [rbx + 0x20]
lea rdx, [rbp - 0x10]
call fcn.1400d92a0
nop
lea rcx, [rbx + 0x40]
lea rdx, [rbp + 0x10]
call fcn.1400d92a0
mov eax, dword [rbp + 0x30]
mov dword [rbx + 0x60], eax
mov eax, dword [rbp + 0x34]
mov dword [rbx + 0x64], eax
add qword [r13 + 0x78], 0x68
jmp 0x1400e0a31
lea r8, [rbp - 0x30]
mov rdx, rbx
lea rcx, [r13 + 0x70]
call fcn.1400eca70
nop
lea rcx, [rbp + 0x60]
call fcn.1400d96a0
nop
lea rcx, [rbp + 0x40]
call fcn.1400d96a0
nop
lea rcx, [rbp - 0x50]
call fcn.1400d96a0
nop
lea rcx, [rbp + 0x10]
call fcn.1400d96a0
lea rcx, [rbp - 0x10]
call fcn.1400d96a0
lea rcx, [rbp - 0x30]
call fcn.1400d96a0
mov rcx, qword [rbp - 0x60]
call fcn.140039550
cmp eax, 0x64
je 0x1400e01b0
mov rdi, qword [rbp - 0x70]
mov rcx, qword [rbp - 0x60]
call fcn.140038580
call fcn.140104300
xor edx, edx
mov rcx, r12
call fcn.1400ca670
add r15, 0x20
cmp r15, rdi
jne 0x1400e006f
mov rax, qword [rbp - 0x68]
mov rcx, rax
call fcn.1400e5240
xor eax, eax
mov rcx, qword [rbp + 0x80]
xor rcx, rsp
call fcn.140106970
lea r11, [rsp + 0x1d0]
mov rbx, qword [r11 + 0x50]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.1400e6520
nop
call fcn.1400e6520
int3