Function at 0x140006234
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
mov qword [rax + 0x20], r12
push rbp
push r14
push r15
lea rbp, [rax - 0x68]
sub rsp, 0x150
mov r8d, dword [rdx]
xor r15d, r15d
mov rdi, rdx
mov rbx, rcx
test r8d, r8d
je 0x140006a99
sub r8d, 0x1e5
je 0x14000688b
sub r8d, 1
je 0x1400066b3
sub r8d, 1
je 0x1400064a5
cmp r8d, 1
jne 0x140006d0b
mov eax, dword [0x14009a3d0]
mov rsi, qword [rcx]
lea ecx, [r15 + 0x77]
mov dword [rsp + 0x40], 0x4400ba
mov dword [rsp + 0x44], 0xc9003f
test r8b, al
jne 0x1400062e8
or eax, r8d
mov word [0x14009a3e0], cx
mov dword [0x14009a3d0], eax
lea rcx, [0x14007daa0]
mov rax, qword [rsp + 0x40]
mov qword [0x14009a3d8], rax
mov byte [0x14009a3e2], r8b
call fcn.140054418
cmp byte [0x14009a3e2], r15b
lea r10, [0x14009a3d8]
je 0x140006330
mov r9, r15
mov r8d, 0xff
mov cl, r9b
movabs rdx, 0xd517ab779d7d13e5
and cl, 7
shl cl, 3
shr rdx, cl
and dx, r8w
xor word [r10 + r9*2], dx
inc r9
cmp r9, 5
jb 0x140006301
mov byte [0x14009a3e2], r15b
mov r9, qword [rbx + 8]
or rbx, 0xffffffffffffffff
mov rcx, qword [r9 + 0x10]
inc rbx
cmp word [r10 + rbx*2], r15w
jne 0x14000633c
movabs rax, 0x7ffffffffffffffe
sub rax, rcx
cmp rax, rbx
jb 0x140006d4b
cmp qword [r9 + 0x18], 7
jbe 0x140006366
mov r9, qword [r9]
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x28], r10
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x50]
call fcn.140007ea8
lea rdx, [rdi + 8]
xorps xmm0, xmm0
cmp qword [rdx + 0x18], 7
xorps xmm1, xmm1
mov r8, qword [rdx + 0x10]
movups xmmword [rsp + 0x70], xmm0
movdqu xmmword [rbp - 0x80], xmm1
jbe 0x1400063a1
mov rdx, qword [rdx]
lea rcx, [rsp + 0x70]
call fcn.140007c88
cmp qword [0x14009a420], 7
lea rdx, [0x14009a408]
mov r8, qword [0x14009a418]
lea rcx, [rbp - 0x70]
cmova rdx, qword [0x14009a408]
xorps xmm0, xmm0
xorps xmm1, xmm1
movups xmmword [rbp - 0x70], xmm0
movdqu xmmword [rbp - 0x60], xmm1
call fcn.140007c88
lea rdx, [rsp + 0x50]
lea rcx, [rbp - 0x18]
call fcn.140006df0
lea rdx, [rdi + 0x48]
mov rbx, rax
lea rcx, [rbp - 0x50]
call fcn.140006eb0
mov r8, rbx
mov rdx, rax
mov rcx, rsi
call fcn.140029948
mov rdx, qword [rbp - 0x58]
mov ebx, 0x1000
cmp rdx, 7
jbe 0x14000644e
mov rcx, qword [rbp - 0x70]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, rbx
jb 0x140006449
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140006d39
call fcn.140054430
mov rdx, qword [rbp - 0x78]
movdqa xmm0, xmmword [0x14008cff0]
mov word [rbp - 0x70], r15w
movdqu xmmword [rbp - 0x60], xmm0
cmp rdx, 7
jbe 0x140006cee
mov rcx, qword [rsp + 0x70]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, rbx
jb 0x140006ce9
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140006d39
jmp 0x140006ce9
mov eax, dword [0x14009a944]
mov rsi, qword [rcx]
mov ecx, 0x35
mov dword [rsp + 0x40], 0x900002
mov dword [rsp + 0x44], 0xdd0063
test al, 1
jne 0x1400064f6
or eax, 1
mov word [0x14009a3a8], cx
mov dword [0x14009a944], eax
lea rcx, [0x14007da80]
mov rax, qword [rsp + 0x40]
mov qword [0x14009a3a0], rax
mov byte [0x14009a3aa], 1
call fcn.140054418
cmp byte [0x14009a3aa], r15b
lea r10, [0x14009a3a0]
je 0x14000653e
mov r9, r15
mov r8d, 0xff
mov cl, r9b
movabs rdx, 0x7638735893bd55d
and cl, 7
shl cl, 3
shr rdx, cl
and dx, r8w
xor word [r10 + r9*2], dx
inc r9
cmp r9, 5
jb 0x14000650f
mov byte [0x14009a3aa], r15b
mov r9, qword [rbx + 8]
or rbx, 0xffffffffffffffff
mov rcx, qword [r9 + 0x10]
inc rbx
cmp word [r10 + rbx*2], r15w
jne 0x14000654a
movabs rax, 0x7ffffffffffffffe
sub rax, rcx
cmp rax, rbx
jb 0x140006d51
cmp qword [r9 + 0x18], 7
jbe 0x140006574
mov r9, qword [r9]
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x28], r10
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x50]
call fcn.140007ea8
lea rdx, [rdi + 8]
xorps xmm0, xmm0
cmp qword [rdx + 0x18], 7
xorps xmm1, xmm1
mov r8, qword [rdx + 0x10]
movups xmmword [rsp + 0x70], xmm0
movdqu xmmword [rbp - 0x80], xmm1
jbe 0x1400065af
mov rdx, qword [rdx]
lea rcx, [rsp + 0x70]
call fcn.140007c88
cmp qword [0x14009a420], 7
lea rdx, [0x14009a408]
mov r8, qword [0x14009a418]
lea rcx, [rbp - 0x70]
cmova rdx, qword [0x14009a408]
xorps xmm0, xmm0
xorps xmm1, xmm1
movups xmmword [rbp - 0x70], xmm0
movdqu xmmword [rbp - 0x60], xmm1
call fcn.140007c88
lea rdx, [rsp + 0x50]
lea rcx, [rbp - 0x18]
call fcn.140006df0
lea rdx, [rdi + 0x48]
mov rbx, rax
lea rcx, [rbp - 0x50]
call fcn.140006eb0
mov r8, rbx
mov rdx, rax
mov rcx, rsi
call fcn.140029948
mov rdx, qword [rbp - 0x58]
mov ebx, 0x1000
cmp rdx, 7
jbe 0x14000665c
mov rcx, qword [rbp - 0x70]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, rbx
jb 0x140006657
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140006d3f
call fcn.140054430
mov rdx, qword [rbp - 0x78]
movdqa xmm0, xmmword [0x14008cff0]
mov word [rbp - 0x70], r15w
movdqu xmmword [rbp - 0x60], xmm0
cmp rdx, 7
jbe 0x140006cee
mov rcx, qword [rsp + 0x70]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, rbx
jb 0x140006ce9
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140006d3f
jmp 0x140006ce9
mov eax, dword [0x14009a95c]
mov rsi, qword [rcx]
mov ecx, 0x7f
mov dword [rsp + 0x40], 0xf30094
mov dword [rsp + 0x44], 0x9f00c4
test al, 1
jne 0x140006704
or eax, 1
mov word [0x14009a398], cx
mov dword [0x14009a95c], eax
lea rcx, [0x14007da60]
mov rax, qword [rsp + 0x40]
mov qword [0x14009a390], rax
mov byte [0x14009a39a], 1
call fcn.140054418
cmp byte [0x14009a39a], r15b
lea r10, [0x14009a390]
je 0x14000674c
mov r9, r15
mov r8d, 0xff
mov cl, r9b
movabs rdx, 0x779d037fcf83bfcb
and cl, 7
shl cl, 3
shr rdx, cl
and dx, r8w
xor word [r10 + r9*2], dx
inc r9
cmp r9, 5
jb 0x14000671d
mov byte [0x14009a39a], r15b
mov r9, qword [rbx + 8]
or rbx, 0xffffffffffffffff
mov rcx, qword [r9 + 0x10]
inc rbx
cmp word [r10 + rbx*2], r15w
jne 0x140006758
movabs rax, 0x7ffffffffffffffe
sub rax, rcx
cmp rax, rbx
jb 0x140006d57
cmp qword [r9 + 0x18], 7
jbe 0x140006782
mov r9, qword [r9]
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x28], r10
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x50]
call fcn.140007ea8
lea rdx, [rdi + 8]
xorps xmm0, xmm0
cmp qword [rdx + 0x18], 7
xorps xmm1, xmm1
mov r8, qword [rdx + 0x10]
movups xmmword [rsp + 0x70], xmm0
movdqu xmmword [rbp - 0x80], xmm1
jbe 0x1400067bd
mov rdx, qword [rdx]
lea rcx, [rsp + 0x70]
call fcn.140007c88
cmp qword [0x14009a420], 7
lea rdx, [0x14009a408]
mov r8, qword [0x14009a418]
lea rcx, [rbp - 0x70]
cmova rdx, qword [0x14009a408]
xorps xmm0, xmm0
xorps xmm1, xmm1
movups xmmword [rbp - 0x70], xmm0
movdqu xmmword [rbp - 0x60], xmm1
call fcn.140007c88
lea rdx, [rsp + 0x50]
lea rcx, [rbp - 0x18]
call fcn.140006df0
lea rdx, [rdi + 0x48]
mov rbx, rax
lea rcx, [rbp - 0x50]
call fcn.140006eb0
mov r8, rbx
mov rdx, rax
mov rcx, rsi
call fcn.140029948
mov rdx, qword [rbp - 0x58]
cmp rdx, 7
jbe 0x14000686a
mov rcx, qword [rbp - 0x70]
lea rdx, [rdx*2 + 2]
mov ebx, 0x1000
mov rax, rcx
cmp rdx, rbx
jb 0x140006865
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140006d5d
call fcn.140054430
movdqa xmm0, xmmword [0x14008cff0]
lea rcx, [rsp + 0x70]
movdqu xmmword [rbp - 0x60], xmm0
mov word [rbp - 0x70], r15w
call fcn.140007a6c
jmp 0x140006d01
mov eax, dword [0x14009a940]
mov rsi, qword [rcx]
mov ecx, 0xb3
mov dword [rsp + 0x40], 0xb8004c
mov dword [rsp + 0x44], 0xa2000c
test al, 1
jne 0x1400068dc
or eax, 1
mov word [0x14009a968], cx
mov dword [0x14009a940], eax
lea rcx, [0x14007dac0]
mov rax, qword [rsp + 0x40]
mov qword [0x14009a960], rax
mov byte [0x14009a96a], 1
call fcn.140054418
cmp byte [0x14009a96a], r15b
lea r10, [0x14009a960]
je 0x140006924
mov r9, r15
mov r8d, 0xff
mov cl, r9b
movabs rdx, 0xa12f2bb3e943fb13
and cl, 7
shl cl, 3
shr rdx, cl
and dx, r8w
xor word [r10 + r9*2], dx
inc r9
cmp r9, 5
jb 0x1400068f5
mov byte [0x14009a96a], r15b
mov r9, qword [rbx + 8]
or rbx, 0xffffffffffffffff
mov rcx, qword [r9 + 0x10]
inc rbx
cmp word [r10 + rbx*2], r15w
jne 0x140006930
movabs rax, 0x7ffffffffffffffe
sub rax, rcx
cmp rax, rbx
jb 0x140006d63
cmp qword [r9 + 0x18], 7
jbe 0x14000695a
mov r9, qword [r9]
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x28], r10
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x50]
call fcn.140007ea8
lea rdx, [rdi + 8]
xorps xmm0, xmm0
cmp qword [rdx + 0x18], 7
xorps xmm1, xmm1
mov r8, qword [rdx + 0x10]
movups xmmword [rsp + 0x70], xmm0
movdqu xmmword [rbp - 0x80], xmm1
jbe 0x140006995
mov rdx, qword [rdx]
lea rcx, [rsp + 0x70]
call fcn.140007c88
cmp qword [0x14009a420], 7
lea rdx, [0x14009a408]
mov r8, qword [0x14009a418]
lea rcx, [rbp - 0x70]
cmova rdx, qword [0x14009a408]
xorps xmm0, xmm0
xorps xmm1, xmm1
movups xmmword [rbp - 0x70], xmm0
movdqu xmmword [rbp - 0x60], xmm1
call fcn.140007c88
lea rdx, [rsp + 0x50]
lea rcx, [rbp - 0x18]
call fcn.140006df0
lea rdx, [rdi + 0x48]
mov rbx, rax
lea rcx, [rbp - 0x50]
call fcn.140006eb0
mov r8, rbx
mov rdx, rax
mov rcx, rsi
call fcn.140029948
mov rdx, qword [rbp - 0x58]
mov ebx, 0x1000
cmp rdx, 7
jbe 0x140006a42
mov rcx, qword [rbp - 0x70]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, rbx
jb 0x140006a3d
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140006d45
call fcn.140054430
mov rdx, qword [rbp - 0x78]
movdqa xmm0, xmmword [0x14008cff0]
mov word [rbp - 0x70], r15w
movdqu xmmword [rbp - 0x60], xmm0
cmp rdx, 7
jbe 0x140006cee
mov rcx, qword [rsp + 0x70]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, rbx
jb 0x140006ce9
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140006d45
jmp 0x140006ce9
mov eax, dword [0x14009a954]
mov rsi, qword [rcx]
mov ecx, 0xa5
mov r14d, dword [rdx + 0x38]
mov dword [rsp + 0x40], 0xee0002
mov dword [rsp + 0x44], 0x86006a
test al, 1
jne 0x140006aee
or eax, 1
mov word [0x14009a950], cx
mov dword [0x14009a954], eax
lea rcx, [0x14007daec]
mov rax, qword [rsp + 0x40]
mov qword [0x14009a948], rax
mov byte [0x14009a952], 1
call fcn.140054418
cmp byte [0x14009a952], r15b
lea r10, [0x14009a948]
je 0x140006b36
mov r9, r15
mov r8d, 0xff
mov cl, r9b
movabs rdx, 0xdb63d3a5df2fa55d
and cl, 7
shl cl, 3
shr rdx, cl
and dx, r8w
xor word [r10 + r9*2], dx
inc r9
cmp r9, 5
jb 0x140006b07
mov byte [0x14009a952], r15b
mov r9, qword [rbx + 8]
or rbx, 0xffffffffffffffff
mov rcx, rbx
mov rdx, qword [r9 + 0x10]
inc rcx
cmp word [r10 + rcx*2], r15w
jne 0x140006b45
movabs rax, 0x7ffffffffffffffe
sub rax, rdx
cmp rax, rcx
jb 0x140006d69
cmp qword [r9 + 0x18], 7
jbe 0x140006b6f
mov r9, qword [r9]
mov qword [rsp + 0x30], rcx
lea rcx, [rsp + 0x50]
mov qword [rsp + 0x28], r10
mov qword [rsp + 0x20], rdx
call fcn.140007ea8
mov eax, dword [0x14009a388]
mov r12d, 0x5d
test al, 1
jne 0x140006bbc
or eax, 1
mov byte [0x14009a95a], 1
lea rcx, [0x14007dae0]
mov dword [0x14009a388], eax
mov word [0x14009a958], r12w
call fcn.140054418
cmp byte [0x14009a95a], r15b
je 0x140006bd4
xor word [0x14009a958], r12w
mov byte [0x14009a95a], r15b
xorps xmm0, xmm0
lea rdx, [0x14009a958]
xorps xmm1, xmm1
movups xmmword [rsp + 0x70], xmm0
movdqu xmmword [rbp - 0x80], xmm1
inc rbx
cmp word [rdx + rbx*2], r15w
jne 0x140006beb
mov r8, rbx
lea rcx, [rsp + 0x70]
call fcn.140007b80
cmp qword [0x14009a420], 7
lea rdx, [0x14009a408]
mov r8, qword [0x14009a418]
lea rcx, [rbp - 0x70]
cmova rdx, qword [0x14009a408]
xorps xmm0, xmm0
xorps xmm1, xmm1
movups xmmword [rbp - 0x70], xmm0
movdqu xmmword [rbp - 0x60], xmm1
call fcn.140007c88
lea rdx, [rsp + 0x50]
lea rcx, [rbp - 0x18]
call fcn.140006df0
lea rdx, [rdi + 0x28]
cmp qword [rdx + 0x18], 0xf
jbe 0x140006c54
mov rdx, qword [rdx]
mov r9d, r14d
mov r8, rax
mov rcx, rsi
call fcn.140028c14
mov rdx, qword [rbp - 0x58]
mov ebx, 0x1000
cmp rdx, 7
jbe 0x140006ca3
mov rcx, qword [rbp - 0x70]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, rbx
jb 0x140006c9e
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140006d33
call fcn.140054430
mov rdx, qword [rbp - 0x78]
movdqa xmm0, xmmword [0x14008cff0]
mov word [rbp - 0x70], r15w
movdqu xmmword [rbp - 0x60], xmm0
cmp rdx, 7
jbe 0x140006cee
mov rcx, qword [rsp + 0x70]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, rbx
jb 0x140006ce9
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140006d33
call fcn.140054430
movdqa xmm0, xmmword [0x14008cff0]
movdqu xmmword [rbp - 0x80], xmm0
mov word [rsp + 0x70], r15w
lea rcx, [rsp + 0x50]
call fcn.140007a6c
mov rcx, rdi
lea r11, [rsp + 0x150]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov r12, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rbp
jmp fcn.140006d70
call fcn.14005af0c
int3
call fcn.14005af0c
int3
call fcn.14005af0c
int3
call fcn.14005af0c
int3
call fcn.140005e1c
int3
call fcn.140005e1c
int3
call fcn.140005e1c
int3
call fcn.14005af0c
int3
call fcn.140005e1c
int3
call fcn.140005e1c
int3