Function at 0x14003fb60
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xa8
mov r12, rdx
mov rdi, rcx
mov rsi, qword [rdi + 0x18]
cmp rsi, 0xffffffffffffffff
je 0x14003fbb9
mov r15, rdi
add r15, 8
mov r11, qword [rdi + 8]
mov rbx, r11
add rbx, 1
mov rax, rbx
shr rax, 3
imul r14, rax, 7
cmp r11, 8
cmovb r14, r11
mov rax, r14
shr rax, 1
cmp rsi, rax
jb 0x140040094
jmp 0x14003fc17
mov eax, dword [0x1400d5968]
or eax, dword [0x1400d596c]
add eax, 0x125f8ab6
imul eax, eax, 0xe9e4c932
add eax, 0xb6fcef1c
cmp eax, 0x664d63bd
jbe 0x140040494
jmp 0x14003fbe2
mov eax, dword [0x1400d5970]
or eax, dword [0x1400d5974]
imul esi, eax, 0x6390aba9
and esi, 0x6bc37ad0
and esi, 0xd2c55e70
mov ecx, 1
call fcn.14008f750
cmp esi, 0x8a948928
je 0x14003fbe2
jmp 0x140040480
mov rax, rsi
sub rax, r14
cmova r14, rsi
cmp r14, 7
jb 0x14003fc38
movabs rax, 0x1ffffffffffffffe
cmp r14, rax
ja 0x14003fc88
jmp 0x14003fc52
mov qword [rsp + 0x30], r12
mov r12d, 8
mov eax, 4
cmp r14, 3
cmovb r12, rax
jmp 0x14003fc97
mov qword [rsp + 0x30], r12
shl r14, 3
add r14, 8
mov ecx, 7
mov rax, r14
xor edx, edx
div rcx
add rax, 0xffffffffffffffff
bsr rcx, rax
xor rcx, 0x3f
mov r12, 0xffffffffffffffff
shr r12, cl
add r12, 1
jmp 0x14003fc97
mov ecx, 1
call fcn.14008f750
jmp 0x140040480
mov ecx, 0x38
mov rax, r12
mul rcx
mov r13, rax
seto al
cmp r13, 0xfffffffffffffff0
seta cl
or al, cl
test al, 1
jne 0x14003fce4
add r13, 0xf
and r13, 0xfffffffffffffff0
mov rbp, r12
add rbp, 0x10
mov rax, r13
add rax, rbp
setb al
jb 0x14003fce4
mov r14, r13
add r14, rbp
movabs rax, 0x7ffffffffffffff0
cmp r14, rax
jbe 0x14003fced
mov cl, 1
call fcn.14008f750
jmp 0x14003fd1f
mov qword [rsp + 0x28], r11
mov al, byte [0x1400d7030]
mov rcx, r14
mov edx, 0x10
call fcn.1400541c0
mov r8, rax
cmp r8, 0
jne 0x14003fd24
mov cl, 1
mov edx, 0x10
mov r8, r14
call fcn.14008f760
jmp 0x14003fd1f
jmp 0x140040480
mov qword [rsp + 0x20], rsi
mov eax, dword [0x1400d5978]
imul eax, dword [0x1400d597c]
mov ecx, 0xc3480e1c
xor edx, edx
div ecx
imul eax, eax, 0xe30217c1
and eax, 0x5c4bc1a
cmp eax, 0x86de64f
mov qword [rsp + 0x48], r8
ja 0x1400404ab
mov eax, dword [0x1400d5980]
add eax, dword [0x1400d5984]
imul esi, eax, 0xb1f79373
or esi, 0xc758421e
xor esi, 0x9e7f47c7
mov rcx, r12
add rcx, 0xffffffffffffffff
mov rax, r12
shr rax, 3
imul rax, rax, 7
cmp r12, 9
mov qword [rsp + 0x50], rcx
cmovb rax, rcx
mov qword [rsp + 0x58], rax
mov r14, r8
add r14, r13
mov rcx, r14
mov edx, 0xff
mov r8, rbp
call fcn.1400aed70
mov r8, qword [rsp + 0x48]
mov rcx, qword [rdi]
cmp qword [rsp + 0x20], 0
sete al
cmp esi, 0xee29bfa6
je 0x1400404ab
test al, 1
mov r10, qword [rsp + 0x28]
mov rax, qword [rsp + 0x58]
jne 0x14003ffaf
jmp 0x14003fde3
mov qword [rsp + 0x40], rdi
movaps xmm0, xmmword [rcx]
pmovmskb ebp, xmm0
xor bp, 0xffff
mov rdx, rcx
add rdx, 0xffffffffffffffc8
mov qword [rsp + 0x98], rdx
xor esi, esi
mov qword [rsp + 0x38], rcx
mov r13, rcx
mov rdi, qword [rsp + 0x20]
cmp bp, 0
je 0x14003fe1c
jmp 0x14003fea8
jmp 0x14003fe2a
xor bp, 0xffff
mov rsi, rcx
mov r13, rax
jmp 0x14003fea8
mov eax, dword [0x1400d5988]
and eax, dword [0x1400d598c]
imul eax, eax, 0x281184b9
or eax, 0xd98469d9
and eax, 0x66db6835
cmp eax, 0x78556f6b
je 0x1400404d4
jmp 0x14003fe53
mov r8d, dword [0x1400d5990]
mov eax, dword [0x1400d5994]
or r8d, eax
or r8d, 0xa31fda74
xor r8d, 0x69addd03
mov rax, r13
add rax, 0x10
movaps xmm0, xmmword [r13 + 0x10]
pmovmskb ebp, xmm0
mov rcx, rsi
add rcx, 0x10
cmp bp, 0xffff
sete dl
cmp r8d, 0x87ef07a8
jbe 0x14003fe53
test dl, 1
mov rsi, rcx
mov r13, rax
jne 0x14003fe2a
jmp 0x14003fe1e
tzcnt eax, ebp
mov ecx, ebp
dec ecx
and ecx, ebp
mov bp, cx
mov r12, rsi
add r12, rax
dec rdi
mov rax, r12
neg rax
imul rax, rax, 0x38
mov rdx, qword [rsp + 0x98]
add rdx, rax
mov rcx, qword [rsp + 0x30]
call fcn.1400466b0
mov rcx, rax
mov r10, qword [rsp + 0x50]
and rcx, r10
mov r11, r14
movups xmm0, xmmword [r11 + rcx]
pmovmskb edx, xmm0
cmp dx, 0
je 0x14003ff01
mov r8, qword [rsp + 0x38]
jmp 0x14003ff2e
xor r9d, r9d
xor r8d, r8d
jmp 0x14003ff09
add r8, 0x10
lea rcx, [r9 + rcx + 0x10]
and rcx, r10
movups xmm0, xmmword [r11 + rcx]
pmovmskb edx, xmm0
cmp dx, 0
mov r9, r8
je 0x14003ff09
mov r8, qword [rsp + 0x38]
jmp 0x14003ff2e
tzcnt edx, edx
movzx edx, dx
add rcx, rdx
and rcx, r10
cmp byte [r11 + rcx], 0xff
jle 0x14003ff51
movaps xmm0, xmmword [r11]
pmovmskb ecx, xmm0
tzcnt ecx, ecx
movzx ecx, cx
shr rax, 0x39
mov rdx, rcx
add rdx, 0xfffffffffffffff0
and rdx, r10
mov byte [r11 + rcx], al
mov byte [r11 + rdx + 0x10], al
xor r12, 0xffffffffffffffff
imul rax, r12, 0x38
mov rdx, r8
add rdx, rax
xor rcx, 0xffffffffffffffff
imul rax, rcx, 0x38
mov rcx, r11
add rcx, rax
mov r8d, 0x38
call fcn.1400ae6d0
cmp rdi, 0
mov r10, qword [rsp + 0x28]
mov rax, qword [rsp + 0x58]
jne 0x14003fe11
mov rdi, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x38]
jmp 0x14003ffaf
sub rax, qword [rsp + 0x20]
mov qword [rdi], r14
mov rdx, qword [rsp + 0x50]
mov qword [r15], rdx
mov qword [rdi + 0x10], rax
movabs rax, 0x8000000000000001
cmp r10, 0
je 0x140040480
mov eax, dword [0x1400d5998]
and eax, dword [0x1400d599c]
or eax, 0xc29d0960
sub eax, 0xeff76e7a
or eax, 0x6b6ed643
cmp eax, 0xc6994d39
je 0x1400404e1
mov r9d, dword [0x1400d59a0]
imul r9d, dword [0x1400d59a4]
or r9d, 0xb35da2ae
or r9d, 0x17ddab5e
add r9d, 0x23bd3b36
mov edx, 0x38
mov rax, rbx
mul rdx
mov r11, rax
seto al
add r11, 0xf
and r11, 0xfffffffffffffff0
mov rax, r10
add rax, 0x11
mov rdx, r11
add rdx, rax
cmp rdx, 0
sete r8b
cmp r9d, 0x242b4a8c
je 0x1400404e1
movabs rax, 0x8000000000000001
test r8b, 1
jne 0x140040480
jmp 0x140040072
xor eax, eax
sub rax, r11
add rcx, rax
mov r8d, 0x10
call fcn.1400541d0
movabs rax, 0x8000000000000001
jmp 0x140040480
mov r15, qword [rdi]
mov r8, rbx
shr r8, 4
mov rax, rbx
and rax, 0xf
cmp rax, 0
setne al
and al, 1
movzx eax, al
mov rcx, r8
add rcx, rax
cmp rcx, 0
je 0x140040108
add r8, rax
mov rdx, rcx
and rdx, 1
xor eax, eax
cmp r8, 1
je 0x1400400e5
movabs rax, 0x1ffffffffffffffe
and rcx, rax
xor eax, eax
xor r8d, r8d
jmp 0x140040115
jmp 0x1400400e5
cmp rdx, 0
je 0x140040108
movaps xmm0, xmmword [r15 + rax]
xorps xmm1, xmm1
pcmpgtb xmm1, xmm0
movaps xmm0, xmmword [0x1400b5760]
por xmm1, xmm0
movdqa xmmword [r15 + rax], xmm1
mov qword [rsp + 0x20], rsi
cmp rbx, 0x10
jb 0x14004016c
jmp 0x14004015d
mov r9, rax
or r9, 0x10
movaps xmm0, xmmword [r15 + rax]
xorps xmm1, xmm1
xorps xmm2, xmm2
pcmpgtb xmm2, xmm0
movaps xmm0, xmmword [0x1400b5760]
por xmm2, xmm0
movaps xmmword [r15 + rax], xmm2
add rax, 0x20
movaps xmm2, xmmword [r15 + r9]
pcmpgtb xmm1, xmm2
por xmm1, xmm0
movdqa xmmword [r15 + r9], xmm1
add r8, 2
cmp r8, rcx
je 0x1400400e3
jmp 0x140040115
mov rax, r15
add rax, rbx
movups xmm0, xmmword [r15]
movups xmmword [rax], xmm0
jmp 0x140040190
mov rcx, r15
add rcx, 0x10
mov rdx, r15
mov r8, rbx
mov rsi, r11
call fcn.1400ae6d0
mov r11, rsi
xor eax, eax
cmp r11, 0xffffffffffffffff
je 0x14004046d
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x40], rdi
mov rax, r15
add rax, 0xffffffffffffffc8
mov qword [rsp + 0xa0], rax
xor r13d, r13d
mov rbp, r13
imul rax, rbp, 0xffffffffffffffc8
mov rcx, rax
add rcx, 0xffffffffffffffc8
mov rsi, r15
add rsi, rcx
mov rdi, r15
add rdi, rax
add r13, 1
mov r12, r15
add r12, rbp
cmp byte [r15 + rbp], 0x80
jne 0x14004045a
mov qword [rsp + 0x28], r11
mov rax, rbp
xor rax, 0xffffffffffffffff
imul rax, rax, 0x38
mov rbx, r15
add rbx, rax
xor eax, eax
sub rax, rbp
imul rax, rax, 0x38
mov rdx, qword [rsp + 0xa0]
add rdx, rax
mov rax, rbx
add rax, 8
mov qword [rsp + 0x88], rax
mov rax, rbx
add rax, 0x10
mov qword [rsp + 0x80], rax
mov rax, rbx
add rax, 0x18
mov qword [rsp + 0x78], rax
mov rax, rbx
add rax, 0x20
mov qword [rsp + 0x70], rax
mov rax, rbx
add rax, 0x28
mov qword [rsp + 0x68], rax
mov rax, rbx
add rax, 0x30
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x90], rdx
jmp 0x140040269
jmp 0x14004025f
mov rdx, qword [rsp + 0x90]
jmp 0x140040269
mov rcx, qword [rsp + 0x30]
call fcn.1400466b0
mov rcx, rax
mov r11, qword [rsp + 0x28]
and rcx, r11
movups xmm0, xmmword [r15 + rcx]
pmovmskb r8d, xmm0
cmp r8w, 0
mov rdx, rcx
jne 0x1400402bf
xor r10d, r10d
mov rdx, rcx
xor r9d, r9d
jmp 0x14004029d
add r9, 0x10
lea rdx, [r10 + rdx + 0x10]
and rdx, r11
movups xmm0, xmmword [r15 + rdx]
pmovmskb r8d, xmm0
cmp r8w, 0
mov r10, r9
je 0x14004029d
jmp 0x1400402bf
tzcnt r8d, r8d
movzx r8d, r8w
add rdx, r8
and rdx, r11
cmp byte [r15 + rdx], 0xff
jle 0x1400402e4
movaps xmm0, xmmword [r15]
pmovmskb edx, xmm0
tzcnt edx, edx
movzx edx, dx
mov r8, rbp
sub r8, rcx
mov r9, rdx
sub r9, rcx
xor r9, r8
and r9, r11
cmp r9, 0x10
jb 0x1400403e4
mov rcx, rdx
xor rcx, 0xffffffffffffffff
imul r8, rcx, 0x38
mov rcx, r15
add rcx, r8
mov r8b, byte [r15 + rdx]
shr rax, 0x39
mov r9, rdx
add r9, 0xfffffffffffffff0
and r9, r11
mov byte [r15 + rdx], al
mov byte [r15 + r9 + 0x10], al
cmp r8b, 0xff
je 0x140040432
imul rax, rdx, 0xffffffffffffffc8
mov rdx, r15
add rdx, rax
cmp rsi, rdx
setb al
cmp rcx, rdi
setb dl
and al, dl
test al, 1
jne 0x140040354
jmp 0x14004035b
xor eax, eax
jmp 0x1400403fd
mov rax, qword [rbx]
mov rdx, qword [rcx]
mov qword [rbx], rdx
mov qword [rcx], rax
mov r8, qword [rsp + 0x88]
mov rax, qword [r8]
mov rdx, qword [rcx + 8]
mov qword [r8], rdx
mov qword [rcx + 8], rax
mov r8, qword [rsp + 0x80]
mov rax, qword [r8]
mov rdx, qword [rcx + 0x10]
mov qword [r8], rdx
mov qword [rcx + 0x10], rax
mov r8, qword [rsp + 0x78]
mov rax, qword [r8]
mov rdx, qword [rcx + 0x18]
mov qword [r8], rdx
mov qword [rcx + 0x18], rax
mov r8, qword [rsp + 0x70]
mov rax, qword [r8]
mov rdx, qword [rcx + 0x20]
mov qword [r8], rdx
mov qword [rcx + 0x20], rax
mov r8, qword [rsp + 0x68]
mov rax, qword [r8]
mov rdx, qword [rcx + 0x28]
mov qword [r8], rdx
mov qword [rcx + 0x28], rax
mov r8, qword [rsp + 0x60]
mov rax, qword [r8]
mov rdx, qword [rcx + 0x30]
mov qword [r8], rdx
mov qword [rcx + 0x30], rax
jmp 0x14004025f
shr rax, 0x39
mov rcx, rbp
add rcx, 0xfffffffffffffff0
and rcx, r11
mov byte [r12], al
mov byte [r15 + rcx + 0x10], al
jmp 0x14004045a
mov dl, byte [rbx + rax]
mov r8b, byte [rcx + rax]
mov byte [rbx + rax], r8b
mov byte [rcx + rax], dl
mov rdx, rax
or rdx, 1
mov r8b, byte [rbx + rdx]
mov r9b, byte [rcx + rdx]
mov byte [rbx + rdx], r9b
mov byte [rcx + rdx], r8b
add rax, 2
cmp rax, 0x38
je 0x14004025d
invalid
jmp 0x1400403fd
mov rax, rbp
add rax, 0xfffffffffffffff0
and rax, r11
mov byte [r12], 0xff
mov byte [r15 + rax + 0x10], 0xff
mov rdx, rbx
mov r8d, 0x38
call fcn.1400ae6d0
mov r11, qword [rsp + 0x28]
cmp rbp, r11
jne 0x1400401ac
mov rax, r14
mov rdi, qword [rsp + 0x40]
jmp 0x14004046d
sub rax, qword [rsp + 0x20]
mov qword [rdi + 0x10], rax
movabs rax, 0x8000000000000001
add rsp, 0xa8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
int1
movabs eax, dword [0x1b950ecf3734ebb]
add byte [rax], al
add al, ch
stosb byte [rdi], al
add al, 0
jmp 0x14003fbe0
jns 0x14004042e
mov esi, 0xf4d09416
fnsave dword [rcx - 0x56]
lea edi, [rcx + 0x4ce8014d]
mov ecx, eax
mov edx, 0xff
mov r8, rbp
call fcn.1400aed70
mov r8, qword [rsp + 0x48]
jmp 0x14003fd5a
xchg esi, eax
jrcxz 0x140040544
lea edx, [rcx + rbp*8 - 0x19]
mov bh, 0xe9
jo 0x1400404d8
push rsp
jmp 0x1b0edbcc5
invalid
adc eax, 0xe17efacb
sub byte [rdi - 0x4f016e3], cl
invalid
or dword [rax], eax