Function at 0x14000d640
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x440]
sub rsp, 0x540
mov rax, qword [0x1401b26d0]
xor rax, rsp
mov qword [rbp + 0x430], rax
mov rbx, r9
mov qword [rsp + 0x50], r8
mov r12, rdx
mov r13, rcx
xor esi, esi
mov rdx, r9
cmp qword [r9 + 0x18], 8
jb 0x14000d68d
mov rdx, qword [r9]
xorps xmm0, xmm0
movups xmmword [rbp + 0x58], xmm0
mov qword [rbp + 0x68], rsi
mov qword [rbp + 0x70], rsi
mov r8, qword [r9 + 0x10]
lea rcx, [rbp + 0x58]
call fcn.140018520
nop
lea rcx, [rbp + 0x58]
cmp qword [rbp + 0x70], 8
cmovae rcx, qword [rbp + 0x58]
mov r9d, 0xffffffff
mov r8d, 3
lea rdx, [rbp + 0x1c0]
call fcn.14012f00c
mov r8d, eax
test eax, eax
jne 0x14000d712
mov edx, dword [rbp + 0x1d0]
bt edx, 0xa
jae 0x14000d704
mov eax, dword [rbp + 0x1d4]
cmp eax, 0xa000000c
jne 0x14000d6f6
lea eax, [r8 + 4]
jmp 0x14000d734
cmp eax, 0xa0000003
jne 0x14000d704
mov eax, 0xa
jmp 0x14000d734
movzx eax, dl
and eax, 0x10
or eax, 0x20
shr eax, 4
jmp 0x14000d734
mov dword [rbp - 0x6c], 0xffff
sub eax, 2
je 0x14000d72f
sub eax, 1
je 0x14000d72f
sub eax, 0x32
je 0x14000d72f
cmp eax, 0x46
mov eax, esi
jne 0x14000d734
mov eax, 1
mov dword [rsp + 0x60], r8d
lea rcx, [0x1401b3330]
mov qword [rsp + 0x68], rcx
movaps xmm0, xmmword [rsp + 0x60]
movdqa xmmword [rbp - 0x60], xmm0
test eax, eax
je 0x14000d9cf
cmp eax, 1
setne dil
mov rdx, qword [rbp + 0x70]
cmp rdx, 8
jb 0x14000d79e
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000d799
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000df7b
call fcn.140130b60
test dil, dil
je 0x14000df3b
mov r8, qword [rbx + 0x10]
cmp qword [rbx + 0x18], 8
jb 0x14000d7b5
mov rbx, qword [rbx]
xorps xmm0, xmm0
movups xmmword [rbp + 0xd8], xmm0
mov qword [rbp + 0xe8], rsi
mov qword [rbp + 0xf0], rsi
mov rdx, rbx
lea rcx, [rbp + 0xd8]
call fcn.140018520
nop
lea rdx, [rbp + 0xd8]
lea rcx, [rsp + 0x40]
call fcn.140003660
nop
mov rdx, qword [rbp + 0xf0]
cmp rdx, 8
jb 0x14000d835
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0xd8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000d830
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000df81
call fcn.140130b60
mov rbx, qword [rsp + 0x48]
test rbx, rbx
je 0x14000d848
lock inc dword [rbx + 8]
mov rbx, qword [rsp + 0x48]
movaps xmm0, xmmword [rsp + 0x40]
movdqa xmmword [rsp + 0x30], xmm0
test rbx, rbx
je 0x14000d861
lock inc dword [rbx + 8]
mov rbx, qword [rsp + 0x48]
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x50], xmm1
mov r15, 0xffffffffffffffff
test rbx, rbx
je 0x14000d8a1
mov eax, r15d
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x14000d8a1
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, r15d
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x14000d8a1
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 8]
nop
mov r14, qword [rsp + 0x30]
test r14, r14
je 0x14000deca
lea rdx, [r14 + 0x20]
lea rcx, [rbp + 0xb8]
call fcn.140015fb0
nop
mov dword [rbp + 0x10], 0x6a0028
mov dword [rbp + 0x14], 0x640062
xor eax, eax
mov word [rbp + 0x18], ax
mov rax, rsi
nop word [rax + rax]
xor word [rbp + rax*2 + 0x10], 6
inc rax
cmp rax, 4
jb 0x14000d8e0
mov word [rbp + 0x18], si
lea rdx, [rbp + 0x10]
lea rax, [rbp + 0x10]
mov r8, r15
nop
inc r8
cmp word [rax + r8*2], 0
jne 0x14000d900
xorps xmm0, xmm0
movups xmmword [rbp + 0x78], xmm0
mov qword [rbp + 0x88], rsi
mov qword [rbp + 0x90], rsi
lea rcx, [rbp + 0x78]
call fcn.140018520
nop
lea rcx, [rbp + 0xb8]
cmp qword [rbp + 0xd0], 8
cmovae rcx, qword [rbp + 0xb8]
mov rax, qword [rbp + 0xc8]
lea rdx, [rcx + rax*2]
mov rbx, rdx
call fcn.1400022b0
cmp rax, rdx
je 0x14000d99c
nop dword [rax]
movzx ecx, word [rax]
cmp cx, 0x5c
je 0x14000d96f
cmp cx, 0x2f
jne 0x14000d978
add rax, 2
cmp rax, rdx
jne 0x14000d960
cmp rax, rdx
je 0x14000d99c
nop dword [rax]
lea r8, [rbx - 2]
movzx ecx, word [r8]
cmp cx, 0x5c
je 0x14000d99c
cmp cx, 0x2f
je 0x14000d99c
mov rbx, r8
cmp rax, r8
jne 0x14000d980
mov r8d, 0x3a
mov rcx, rbx
call fcn.1401300d0
cmp rbx, rax
je 0x14000d9ff
lea rdx, [rax - 2]
cmp rbx, rdx
je 0x14000d9ff
cmp word [rdx], 0x2e
jne 0x14000d9e0
lea rcx, [rdx - 2]
cmp rbx, rcx
jne 0x14000da02
cmp word [rcx], 0x2e
jne 0x14000da02
jmp 0x14000d9ff
xor dil, dil
test r8d, r8d
jne 0x14000df6d
jmp 0x14000d75e
sub rdx, 2
cmp rbx, rdx
je 0x14000d9ff
nop dword [rax]
cmp word [rdx], 0x2e
je 0x14000da02
sub rdx, 2
cmp rbx, rdx
jne 0x14000d9f0
mov rdx, rax
sub rax, rdx
sar rax, 1
xorps xmm0, xmm0
movups xmmword [rbp + 0x98], xmm0
mov qword [rbp + 0xa8], rsi
mov qword [rbp + 0xb0], rsi
mov r8, rax
lea rcx, [rbp + 0x98]
call fcn.140018520
lea rax, [rbp + 0x78]
mov rbx, qword [rbp + 0x78]
mov rdi, qword [rbp + 0x90]
cmp rdi, 8
cmovae rax, rbx
mov qword [rsp + 0x70], rax
mov rax, qword [rbp + 0x88]
mov qword [rsp + 0x78], rax
movaps xmm0, xmmword [rsp + 0x70]
movdqa xmmword [rbp - 0x40], xmm0
lea rdx, [rbp - 0x40]
lea rcx, [rbp + 0x98]
call fcn.1400026d0
mov esi, eax
mov rdx, qword [rbp + 0xb0]
cmp rdx, 8
jb 0x14000dac4
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x98]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000dab4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000df87
call fcn.140130b60
mov rdi, qword [rbp + 0x90]
mov rbx, qword [rbp + 0x78]
xor eax, eax
mov qword [rbp + 0xa8], rax
mov qword [rbp + 0xb0], 7
mov word [rbp + 0x98], ax
cmp rdi, 8
jb 0x14000db1a
lea rdx, [rdi*2 + 2]
mov rax, rbx
cmp rdx, 0x1000
jb 0x14000db12
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000df8d
mov rcx, rbx
call fcn.140130b60
test esi, esi
jne 0x14000ddd6
mov dword [rbp], 0x63726761
mov dword [rbp + 4], 0x766e7628
xor eax, eax
mov byte [rbp + 8], al
xor esi, esi
nop word [rax + rax]
xor byte [rbp + rax], 6
inc rax
cmp rax, 8
jb 0x14000db40
mov byte [rbp + 8], sil
xorps xmm0, xmm0
movups xmmword [rbp + 0xf8], xmm0
mov qword [rbp + 0x108], rsi
mov qword [rbp + 0x110], rsi
lea rax, [rbp]
mov r8, r15
inc r8
cmp byte [rax + r8], sil
jne 0x14000db71
lea rdx, [rbp]
lea rcx, [rbp + 0xf8]
call fcn.1400189d0
nop
lea rdx, [rbp + 0xf8]
lea rcx, [rbp + 0x140]
call fcn.1400161a0
nop
mov rdx, qword [rsp + 0x50]
lea rcx, [rbp + 0x160]
call fcn.1400161a0
xorps xmm0, xmm0
movups xmmword [rbp + 0x180], xmm0
mov qword [rbp + 0x190], rsi
mov qword [rbp + 0x198], 0xf
mov byte [rbp + 0x180], 0
movups xmmword [rbp + 0x1a0], xmm0
mov qword [rbp + 0x1b0], rsi
mov qword [rbp + 0x1b8], 0xf
mov byte [rbp + 0x1a0], 0
mov rdx, qword [rbp + 0x110]
cmp rdx, 0x10
jb 0x14000dc34
inc rdx
mov rcx, qword [rbp + 0xf8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000dc2f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000df99
call fcn.140130b60
lea rax, [rbp + 0xb8]
cmp qword [rbp + 0xd0], 8
cmovae rax, qword [rbp + 0xb8]
mov qword [rbp - 0x80], rax
mov rax, qword [rbp + 0xc8]
mov qword [rbp - 0x78], rax
call fcn.14012ed40
movaps xmm0, xmmword [rbp - 0x80]
movdqa xmmword [rbp - 0x30], xmm0
lea r8, [rbp - 0x30]
mov edx, eax
lea rcx, [rbp + 0x118]
call fcn.140019d50
nop
lea rax, [rbp + 0x180]
cmp rax, r12
je 0x14000dca7
mov rdx, r12
cmp qword [r12 + 0x18], 0x10
jb 0x14000dc96
mov rdx, qword [r12]
mov r8, qword [r12 + 0x10]
lea rcx, [rbp + 0x180]
call fcn.140017010
lea rdx, [rbp + 0x118]
cmp qword [rbp + 0x130], 0x10
cmovae rdx, qword [rbp + 0x118]
mov r8, qword [rbp + 0x128]
lea rcx, [rbp + 0x1a0]
call fcn.140017010
nop
mov rdx, qword [rbp + 0x130]
cmp rdx, 0x10
jb 0x14000dd13
inc rdx
mov rcx, qword [rbp + 0x118]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000dd0e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000df93
call fcn.140130b60
xorps xmm0, xmm0
movups xmmword [rbp + 0x20], xmm0
mov qword [rbp + 0x30], rsi
mov qword [rbp + 0x38], 0xf
mov byte [rbp + 0x20], 0
lea r8, [rbp + 0x20]
lea rdx, [rbp + 0x140]
mov rcx, r13
call fcn.1400c6030
lea rdx, [rbp + 0x20]
cmp qword [rbp + 0x38], 0x10
cmovae rdx, qword [rbp + 0x20]
movdqa xmm0, xmmword [0x140195a00]
movdqu xmmword [rbp + 0x40], xmm0
mov word [rbp + 0x50], 0xc
mov rax, rsi
xor byte [rbp + rax + 0x40], 6
inc rax
cmp rax, 0x11
jb 0x14000dd61
mov byte [rbp + 0x51], 0
lea rcx, [rbp + 0x40]
call fcn.1400013d0
nop
mov rdx, qword [rbp + 0x38]
cmp rdx, 0x10
jb 0x14000ddb8
inc rdx
mov rcx, qword [rbp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000ddb3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000df99
call fcn.140130b60
mov qword [rbp + 0x30], rsi
mov qword [rbp + 0x38], 0xf
mov byte [rbp + 0x20], 0
lea rcx, [rbp + 0x140]
call fcn.14000dfb0
jmp 0x14000ddd8
xor esi, esi
mov rdx, qword [rbp + 0xd0]
cmp rdx, 8
jb 0x14000de20
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0xb8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000de19
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000df9f
call fcn.140130b60
nop
lea rdx, [rbp + 0x1e0]
mov rcx, qword [r14 + 0x40]
call fcn.14012ef58
cmp eax, 0x12
je 0x14000de77
test eax, eax
jne 0x14000df65
cmp word [rbp + 0x20c], 0x2e
jne 0x14000de63
movzx eax, word [rbp + 0x20e]
test ax, ax
je 0x14000de20
cmp ax, 0x2e
jne 0x14000de63
cmp word [rbp + 0x210], 0
je 0x14000de20
lea rdx, [rbp + 0x1e0]
mov rcx, r14
call fcn.140003400
jmp 0x14000d8a6
mov r14, rsi
mov qword [rsp + 0x30], rsi
mov rbx, qword [rsp + 0x38]
mov qword [rsp + 0x38], rsi
test rbx, rbx
je 0x14000d8a6
mov eax, r15d
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x14000d8a1
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, r15d
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x14000d8a1
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 8]
jmp 0x14000d8a1
mov rcx, qword [rsp + 0x38]
test rcx, rcx
je 0x14000df07
mov eax, r15d
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x14000df07
mov rbx, qword [rsp + 0x38]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, r15d
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x14000df07
mov rcx, qword [rsp + 0x38]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rbx, qword [rsp + 0x48]
test rbx, rbx
je 0x14000df3b
mov eax, r15d
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x14000df3b
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
lock xadd dword [rbx + 0xc], r15d
cmp r15d, 1
jne 0x14000df3b
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 8]
mov rcx, qword [rbp + 0x430]
xor rcx, rsp
call fcn.140130b40
mov rbx, qword [rsp + 0x598]
add rsp, 0x540
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov edx, eax
call fcn.140003080
nop
lea r8, [rbp + 0x58]
lea rdx, [rbp - 0x60]
call fcn.1400031e0
nop
call fcn.140146458
nop
call fcn.140146458
nop
call fcn.140146458
nop
call fcn.140146458
nop
call fcn.140146458
int3
call fcn.140146458
nop
call fcn.140146458
int3