Function at 0x1400dfad0
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 [0x14019d010]
xor rax, rsp
mov qword [rbp + 0x80], rax
mov r15, rcx
mov qword [rbp - 0x60], rdx
xor esi, esi
mov r14d, esi
mov dword [rbp - 0x68], esi
mov r12, qword [rdx]
mov rax, qword [rdx + 8]
mov qword [rbp - 0x70], rax
cmp r12, rax
je 0x1400e054b
lea rdi, [0x1401798a8]
movsd xmm9, qword [0x140180668]
movsd xmm8, qword [0x1401805e0]
mov r13d, 6
lea ebx, [r13 + 9]
mov rdx, r12
lea rcx, [rbp + 0x40]
call fcn.1400d8fd0
mov rdx, rax
mov r10d, esi
mov r9, rsi
cmp qword [rax + 0x10], 0
jbe 0x1400dfbaf
nop word [rax + rax]
mov rcx, qword [0x1401a1248]
movzx r8d, word [rcx + 0x80]
mov rax, rdx
cmp qword [rdx + 0x18], 0x10
jb 0x1400dfb9c
mov rax, qword [rdx]
xor byte [r9 + rax], r8b
inc r10d
inc r9
movsxd rax, r10d
cmp rax, qword [rdx + 0x10]
jb 0x1400dfb80
xorps xmm0, xmm0
movups xmmword [rbp - 0x58], xmm0
mov qword [rbp - 0x48], rsi
mov qword [rbp - 0x40], rsi
movups xmm0, xmmword [rdx]
movups xmmword [rbp - 0x58], xmm0
movups xmm1, xmmword [rdx + 0x10]
movups xmmword [rbp - 0x48], xmm1
mov qword [rdx + 0x10], rsi
mov qword [rdx + 0x18], rbx
mov byte [rdx], 0
mov rcx, rdx
call fcn.1400d93d0
nop
lea rcx, [rbp - 0x58]
cmp qword [rbp - 0x40], 0x10
cmovae rcx, qword [rbp - 0x58]
xor r9d, r9d
mov r8d, r13d
lea rdx, [rbp - 0x78]
call fcn.1400cd120
nop
lea rcx, [rbp - 0x58]
call fcn.1400d93d0
call fcn.1400e05a0
mov rbx, rax
mov rcx, rax
call fcn.1400e33a0
mov qword [rsp + 0x30], rsi
lea rax, [rbp - 0x68]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rsi
xor r9d, r9d
lea r8d, [r9 - 1]
mov rdx, rbx
mov r13, qword [rbp - 0x78]
mov rcx, r13
call fcn.14008ada0
test eax, eax
jne 0x1400e0533
mov rcx, qword [rbp - 0x68]
call fcn.140039470
cmp eax, 0x64
jne 0x1400e0533
nop dword [rax + 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 - 0x68]
test rbx, rbx
je 0x1400dfced
mov rax, rbx
mov rcx, qword [rbx]
mov rcx, qword [rcx + 0x18]
test rcx, rcx
je 0x1400dfcb6
call qword [0x14019e080]
mov rcx, qword [rbx + 0xa0]
test rcx, rcx
je 0x1400dfcd9
mov eax, 3
cmp ax, word [rbx + 0xc0]
jae 0x1400dfcd9
add rcx, 0xa8
jmp 0x1400dfcf0
mov rcx, qword [rbx]
mov dword [rcx + 0x50], 0x19
mov edx, 0x19
call fcn.14000a010
mov rcx, rdi
movzx eax, word [rcx + 0x14]
test al, 2
je 0x1400dfd03
cmp byte [rcx + 0x16], 1
jne 0x1400dfd03
mov edi, dword [rcx + 0x10]
jmp 0x1400dfd26
test al, 0x10
je 0x1400dfd15
mov edi, dword [rcx + 0x10]
bt ax, 0xa
jae 0x1400dfd26
add edi, dword [rcx]
jmp 0x1400dfd26
test al, 1
je 0x1400dfd1d
mov edi, esi
jmp 0x1400dfd26
mov dl, 1
call fcn.140032ed0
mov edi, eax
test rbx, rbx
je 0x1400dfd59
mov edx, dword [rbx + 0x34]
mov rcx, qword [rbx]
cmp byte [rcx + 0x67], 0
jne 0x1400dfd3f
test edx, edx
jne 0x1400dfd3f
mov eax, esi
jmp 0x1400dfd44
call fcn.140006ce0
mov dword [rbx + 0x34], eax
mov rax, qword [rbx]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x1400dfd59
call qword [0x14019e090]
movsxd rsi, edi
mov rbx, qword [rbp - 0x68]
test rbx, rbx
je 0x1400dfdb5
mov rax, rbx
mov rcx, qword [rbx]
mov rcx, qword [rcx + 0x18]
test rcx, rcx
je 0x1400dfd7a
call qword [0x14019e080]
mov rcx, qword [rbx + 0xa0]
test rcx, rcx
je 0x1400dfda1
mov eax, 3
cmp ax, word [rbx + 0xc0]
jae 0x1400dfda1
add rcx, 0xa8
jne 0x1400dfdbc
xor edi, edi
jmp 0x1400dfdf7
mov rcx, qword [rbx]
mov dword [rcx + 0x50], 0x19
mov edx, 0x19
call fcn.14000a010
lea rcx, [0x1401798a8]
movzx edx, word [rcx + 0x14]
movzx eax, dx
mov r8d, 0x202
and ax, r8w
cmp ax, r8w
jne 0x1400dfddf
cmp byte [rcx + 0x16], 1
jne 0x1400dfddf
mov rdi, qword [rcx + 8]
jmp 0x1400dfdf2
test dl, 1
je 0x1400dfde8
xor edi, edi
jmp 0x1400dfdf2
mov dl, 1
call fcn.1400327c0
mov rdi, rax
test rbx, rbx
je 0x1400dfe25
mov edx, dword [rbx + 0x34]
mov rcx, qword [rbx]
cmp byte [rcx + 0x67], 0
jne 0x1400dfe0b
test edx, edx
jne 0x1400dfe0b
xor eax, eax
jmp 0x1400dfe10
call fcn.140006ce0
mov dword [rbx + 0x34], eax
mov rax, qword [rbx]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x1400dfe25
call qword [0x14019e090]
xorps xmm0, xmm0
movups xmmword [rbp - 0x58], xmm0
xor eax, eax
mov qword [rbp - 0x48], rax
mov qword [rbp - 0x40], rax
mov r8, rsi
mov rdx, rdi
lea rcx, [rbp - 0x58]
call fcn.1400d9a90
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 - 0x48]
cmp rax, 3
jb 0x1400e058f
add rax, 0xfffffffffffffffd
mov r8d, 0xc
cmp rax, r8
cmovb r8, rax
lea rdx, [rbp - 0x58]
cmp qword [rbp - 0x40], 0x10
cmovae rdx, qword [rbp - 0x58]
add rdx, 3
lea rcx, [rbp + 0x40]
call fcn.1400d9a90
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 - 0x48]
cmp rax, 0xf
jb 0x1400e0589
add rax, 0xfffffffffffffff1
mov r8, 0xffffffffffffffff
cmp rax, r8
cmovb r8, rax
lea rdx, [rbp - 0x58]
cmp qword [rbp - 0x40], 0x10
cmovae rdx, qword [rbp - 0x58]
add rdx, 0xf
lea rcx, [rbp + 0x60]
call fcn.1400d9a90
or r14d, 2
mov rbx, qword [rbp - 0x68]
test rbx, rbx
je 0x1400dff27
mov rax, qword [rbx]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x1400dfefe
call qword [0x14019e080]
mov rcx, qword [rbx + 0xa0]
test rcx, rcx
je 0x1400dff13
cmp si, word [rbx + 0xc0]
jb 0x1400dff2e
mov rcx, qword [rbx]
mov dword [rcx + 0x50], 0x19
mov edx, 0x19
call fcn.14000a010
lea rcx, [0x1401798a8]
movzx edx, word [rcx + 0x14]
movzx eax, dx
mov r8d, 0x202
and ax, r8w
cmp ax, r8w
jne 0x1400dff51
cmp byte [rcx + 0x16], 1
jne 0x1400dff51
mov rax, qword [rcx + 8]
jmp 0x1400dff62
test dl, 1
je 0x1400dff5b
mov rax, rsi
jmp 0x1400dff62
mov dl, 1
call fcn.1400327c0
mov rdi, rax
test rbx, rbx
je 0x1400dff9e
mov edx, dword [rbx + 0x34]
mov rcx, qword [rbx]
cmp byte [rcx + 0x67], 0
jne 0x1400dff7e
test edx, edx
jne 0x1400dff7e
mov eax, esi
jmp 0x1400dff83
call fcn.140006ce0
mov dword [rbx + 0x34], eax
mov rax, qword [rbx]
mov rcx, qword [rax + 0x18]
mov rax, rdi
test rcx, rcx
je 0x1400dff9e
call qword [0x14019e090]
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 word [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x1400dffc0
mov rdx, rax
lea rcx, [rsp + 0x40]
call fcn.1400d9a90
mov r9d, esi
mov r8, rsi
cmp qword [rsp + 0x50], rsi
jbe 0x1400e0024
nop dword [rax]
nop dword [rax + rax]
mov rax, qword [0x1401a1248]
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 0x1400dfff0
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.1400d93d0
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.1400d93d0
mov rbx, qword [rbp - 0x68]
test rbx, rbx
je 0x1400e00c8
mov rax, rbx
mov rcx, qword [rbx]
mov rcx, qword [rcx + 0x18]
test rcx, rcx
je 0x1400e0094
call qword [0x14019e080]
mov rcx, qword [rbx + 0xa0]
test rcx, rcx
je 0x1400e00b4
mov eax, 1
cmp ax, word [rbx + 0xc0]
jae 0x1400e00b4
add rcx, 0x38
jmp 0x1400e00cf
mov rcx, qword [rbx]
mov dword [rcx + 0x50], 0x19
mov edx, 0x19
call fcn.14000a010
lea rcx, [0x1401798a8]
movzx eax, word [rcx + 0x14]
test al, 0x24
je 0x1400e00dc
mov rdi, qword [rcx]
jmp 0x1400e0129
test al, 8
je 0x1400e0111
movsd xmm0, qword [rcx]
comisd xmm9, xmm0
jbe 0x1400e00f7
movabs rdi, 0x8000000000000000
jmp 0x1400e0129
comisd xmm0, xmm8
jbe 0x1400e010a
movabs rdi, 0x7fffffffffffffff
jmp 0x1400e0129
cvttsd2si rdi, xmm0
jmp 0x1400e0129
test al, 0x12
je 0x1400e0126
cmp qword [rcx + 8], 0
je 0x1400e0126
call fcn.140031900
mov rdi, rax
jmp 0x1400e0129
mov rdi, rsi
test rbx, rbx
je 0x1400e015c
mov edx, dword [rbx + 0x34]
mov rcx, qword [rbx]
cmp byte [rcx + 0x67], 0
jne 0x1400e0142
test edx, edx
jne 0x1400e0142
mov eax, esi
jmp 0x1400e0147
call fcn.140006ce0
mov dword [rbx + 0x34], eax
mov rax, qword [rbx]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x1400e015c
call qword [0x14019e090]
mov dword [rbp + 0x30], edi
mov rbx, qword [rbp - 0x68]
test rbx, rbx
je 0x1400e01b1
mov rax, rbx
mov rcx, qword [rbx]
mov rcx, qword [rcx + 0x18]
test rcx, rcx
je 0x1400e017d
call qword [0x14019e080]
mov rcx, qword [rbx + 0xa0]
test rcx, rcx
je 0x1400e019d
mov eax, 2
cmp ax, word [rbx + 0xc0]
jae 0x1400e019d
add rcx, 0x70
jmp 0x1400e01b8
mov rcx, qword [rbx]
mov dword [rcx + 0x50], 0x19
mov edx, 0x19
call fcn.14000a010
lea rcx, [0x1401798a8]
movzx eax, word [rcx + 0x14]
test al, 0x24
je 0x1400e01c5
mov rdi, qword [rcx]
jmp 0x1400e0212
test al, 8
je 0x1400e01fa
movsd xmm0, qword [rcx]
comisd xmm9, xmm0
jbe 0x1400e01e0
movabs rdi, 0x8000000000000000
jmp 0x1400e0212
comisd xmm0, xmm8
jbe 0x1400e01f3
movabs rdi, 0x7fffffffffffffff
jmp 0x1400e0212
cvttsd2si rdi, xmm0
jmp 0x1400e0212
test al, 0x12
je 0x1400e020f
cmp qword [rcx + 8], 0
je 0x1400e020f
call fcn.140031900
mov rdi, rax
jmp 0x1400e0212
mov rdi, rsi
test rbx, rbx
je 0x1400e0245
mov edx, dword [rbx + 0x34]
mov rcx, qword [rbx]
cmp byte [rcx + 0x67], 0
jne 0x1400e022b
test edx, edx
jne 0x1400e022b
mov eax, esi
jmp 0x1400e0230
call fcn.140006ce0
mov dword [rbx + 0x34], eax
mov rax, qword [rbx]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x1400e0245
call qword [0x14019e090]
mov dword [rbp + 0x34], edi
mov rbx, qword [rbp - 0x68]
test rbx, rbx
je 0x1400e02a2
mov rax, rbx
mov rcx, qword [rbx]
mov rcx, qword [rcx + 0x18]
test rcx, rcx
je 0x1400e0266
call qword [0x14019e080]
mov rcx, qword [rbx + 0xa0]
test rcx, rcx
je 0x1400e028e
mov eax, 6
cmp ax, word [rbx + 0xc0]
jae 0x1400e028e
add rcx, 0x150
jne 0x1400e02a9
mov rdi, rsi
jmp 0x1400e02e5
mov rcx, qword [rbx]
mov dword [rcx + 0x50], 0x19
mov edx, 0x19
call fcn.14000a010
lea rcx, [0x1401798a8]
movzx edx, word [rcx + 0x14]
movzx eax, dx
mov r8d, 0x202
and ax, r8w
cmp ax, r8w
jne 0x1400e02cc
cmp byte [rcx + 0x16], 1
jne 0x1400e02cc
mov rdi, qword [rcx + 8]
jmp 0x1400e02e0
test dl, 1
je 0x1400e02d6
mov rdi, rsi
jmp 0x1400e02e0
mov dl, 1
call fcn.1400327c0
mov rdi, rax
test rbx, rbx
je 0x1400e0313
mov edx, dword [rbx + 0x34]
mov rcx, qword [rbx]
cmp byte [rcx + 0x67], 0
jne 0x1400e02f9
test edx, edx
jne 0x1400e02f9
mov eax, esi
jmp 0x1400e02fe
call fcn.140006ce0
mov dword [rbx + 0x34], eax
mov rax, qword [rbx]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x1400e0313
call qword [0x14019e090]
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 0x1400e0330
mov rdx, rdi
lea rcx, [rsp + 0x40]
call fcn.1400d9a90
mov r9d, esi
mov r8, rsi
cmp qword [rsp + 0x50], rsi
jbe 0x1400e0394
nop dword [rax]
nop dword [rax + rax]
mov rax, qword [0x1401a1248]
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 0x1400e0360
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.1400d93d0
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.1400d93d0
lea rax, [rbp + 0x40]
mov qword [rsp + 0x20], rax
mov r9, r15
lea r8, [rbp + 0x60]
lea rdx, [rsp + 0x40]
call fcn.1400de140
mov rdx, rax
mov r9d, esi
mov r8, rsi
cmp qword [rax + 0x10], rsi
jbe 0x1400e043f
nop
mov rcx, qword [0x1401a1248]
movzx r10d, word [rcx + 0x80]
mov rcx, rdx
cmp qword [rdx + 0x18], 0x10
jb 0x1400e042c
mov rcx, qword [rdx]
xor byte [rcx + r8], r10b
inc r9d
inc r8
movsxd rax, r9d
cmp rax, qword [rdx + 0x10]
jb 0x1400e0410
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.1400d93d0
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.1400d93d0
mov rbx, qword [r15 + 0x78]
cmp rbx, qword [r15 + 0x80]
je 0x1400e04d0
mov qword [rsp + 0x60], rbx
lea rdx, [rbp - 0x30]
mov rcx, rbx
call fcn.1400d8fd0
nop
lea rcx, [rbx + 0x20]
lea rdx, [rbp - 0x10]
call fcn.1400d8fd0
nop
lea rcx, [rbx + 0x40]
lea rdx, [rbp + 0x10]
call fcn.1400d8fd0
mov eax, dword [rbp + 0x30]
mov dword [rbx + 0x60], eax
mov eax, dword [rbp + 0x34]
mov dword [rbx + 0x64], eax
add qword [r15 + 0x78], 0x68
jmp 0x1400e04e1
lea r8, [rbp - 0x30]
mov rdx, rbx
lea rcx, [r15 + 0x70]
call fcn.1400eb960
nop
lea rcx, [rbp + 0x60]
call fcn.1400d93d0
nop
lea rcx, [rbp + 0x40]
call fcn.1400d93d0
nop
lea rcx, [rbp - 0x58]
call fcn.1400d93d0
nop
lea rcx, [rbp + 0x10]
call fcn.1400d93d0
lea rcx, [rbp - 0x10]
call fcn.1400d93d0
lea rcx, [rbp - 0x30]
call fcn.1400d93d0
mov rcx, qword [rbp - 0x68]
call fcn.140039470
cmp eax, 0x64
lea rdi, [0x1401798a8]
je 0x1400dfc60
xor edx, edx
mov rcx, r13
call fcn.1400ca590
add r12, 0x20
cmp r12, qword [rbp - 0x70]
jne 0x1400dfb4f
mov rcx, qword [rbp + 0x80]
xor rcx, rsp
call fcn.140105b00
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.1400e5350
nop
call fcn.1400e5350
int3