Function at 0x14008f640
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rcx
push rbp
push rbx
mov r9, r9
nop
mov qword [rsp - 8], rsi
sub rsp, 8
nop
mov qword [rsp - 8], rdi
sub rsp, 8
push r12
mov qword [rsp], r12
nop
sub rsp, 8
mov qword [rsp], r13
nop
mov qword [rsp - 8], r14
sub rsp, 8
nop
push 0x3d8baa1a
mov qword [rsp], r15
lea rbp, [rsp - 0x138]
sub rsp, 0x238
xchg r10, r10
mov r8, rdx
mov rdi, rcx
xor edx, edx
xchg rcx, rcx
lea ebx, [rdx + 1]
mov ecx, edx
mov eax, 0x6d0c0157
sub eax, 0x3ad8a394
sub eax, 0x2a2ceb49
xor eax, 0x70616bde
sub eax, 0x3a90117d
rol eax, cl
lea rcx, [0x140001b00]
mov dword [rsp - 0x34], 0x590c7f67
xor al, byte [rdx + rcx]
mov byte [rsp + rdx + 0x10], al
add rdx, rbx
cmp rdx, 0x211
mov dword [rsp - 0xc], ebp
jb 0x14008f6a1
xor dl, dl
lea r11, [rsp + 0x10]
xor r12b, r12b
mov dword [rsp - 0x28], edi
mov byte [rsp + 4], dl
xor eax, eax
mov dword [rsp], r12d
xchg r13, rdi
mov r9, r13
xchg rdi, r13
mov r10b, 0x30
sub r10b, 0x18
add r10b, 0x1e
xor r10b, 0x26
mov rdi, r8
lea ecx, [rax + 0x25]
mov r9, r9
rep stosb byte [rdi], al
lea esi, [rax + 4]
movzx edi, byte [r9]
add r9, rbx
mov dword [rsp - 0x44], 0x64c41a72
mov ecx, edi
cmp edi, 0x65
ja 0x14008f78d
mov r13, r13
neg ecx
add ecx, 0x26
neg ecx
cmp ecx, 0x3f
ja 0x14008f838
movabs rax, 0xc00000002622c205
sub rax, 0x2026d344
add rax, 0x5d7f0506
sub rax, 0x6279f2c6
bt rax, rcx
mov r9, r9
jae 0x14008f838
mov byte [r8 + 3], dil
mov al, 0x56
sub al, 0x22
xor al, 0x40
sub al, 0x34
jmp 0x14008f828
sub ecx, 0x66
mov r13, r13
je 0x14008f814
sub ecx, ebx
je 0x14008f800
xchg rdx, rdx
sub ecx, 0x89
je 0x14008f7ec
sub ecx, 2
je 0x14008f7d9
mov dword [rsp - 0x34], 0x744864f4
cmp ecx, ebx
jne 0x14008f838
mov byte [r8 + 1], dil
mov al, sil
mov dword [rsp - 0x44], esp
jmp 0x14008f828
mov byte [r8 + 1], dil
mov al, 0x35
add al, 0x22
sub al, 0xb
xor al, 0x1d
sub al, 0x4f
jmp 0x14008f828
mov byte [r8 + 2], dil
xchg rsp, rsp
mov al, 0x50
xor al, 0x31
add al, 0xb
sub al, 0x4c
jmp 0x14008f828
mov byte [r8 + 5], dil
mov r15, r15
mov al, 0x48
xor al, 0x1a
sub al, 0x2d
xor al, 0x35
jmp 0x14008f828
mov byte [r8 + 4], dil
mov dword [rsp - 0x1c], 0x40c08ba4
mov al, 9
add al, 0x19
sub al, 0xc
xor al, 0x1e
or dl, al
add r10b, 0xff
jne 0x14008f726
mov dword [rsp - 0xc], ecx
movzx eax, dl
mov ecx, ebx
movzx r10d, dl
shl r10d, 3
shl r10d, 0xc
shl r10d, 8
test dl, dl
mov dword [r8 + 0x21], r10d
mov r8, r8
cmovne ecx, eax
mov al, dil
and al, 0xf0
cmp al, 0x40
mov dword [rsp - 0x38], 0x5e9d3d18
jne 0x14008f901
bts r10d, 0x1e
mov al, dil
xchg r9, r9
shr al, 1
shr al, 2
and al, bl
mov dword [r8 + 0x21], r10d
mov dword [rsp - 0xc], ebp
mov byte [r8 + 7], al
je 0x14008f8ab
mov al, byte [r9]
and al, 0xf8
mov rsp, rsp
movzx r12d, r12b
cmp al, 0xb8
cmove r12d, ebx
mov dword [rsp], r12d
mov rbx, rbx
mov al, dil
shr al, 1
shr al, 1
and al, bl
mov dword [rsp - 0x28], 0x26125ca9
mov byte [r8 + 8], al
mov al, dil
shr al, 1
xchg rdx, rdx
and dil, bl
and al, bl
mov byte [r8 + 0xa], dil
mov byte [r8 + 9], al
mov dword [rsp - 0x38], ecx
mov dil, byte [r9]
add r9, rbx
mov al, dil
mov rcx, rcx
and al, 0xf0
cmp al, 0x40
jne 0x14008f901
xchg r14, r14
mov byte [rbp + 0x198], dil
mov sil, cl
jmp 0x14008f9a2
mov byte [r8 + 0xb], dil
mov sil, cl
mov rcx, rcx
cmp dil, 0xf
jne 0x14008f931
mov dil, byte [r9]
mov dword [rsp - 0x1c], 0x33d678b9
lea r11, [rsp + 0x5a]
mov byte [r8 + 0xc], dil
add r9, rbx
jmp 0x14008f96a
cmp dil, 0xa0
jb 0x14008f96a
cmp dil, 0xa3
mov dword [rsp - 0x1c], ebp
ja 0x14008f96a
add r12b, bl
mov dword [rsp], r12d
mov dword [rsp - 0x2c], ebp
test cl, 0x10
je 0x14008f966
or sil, 8
jmp 0x14008f96a
and sil, 0xf7
movzx edx, dil
mov eax, edx
mov dword [rsp - 0x38], esi
mov byte [rbp + 0x198], dil
shr rax, 1
shr rax, 1
and edx, 3
movzx eax, byte [rax + r11]
add rax, r11
mov dword [rsp - 0x34], 0x4f6dfa16
mov r14b, byte [rdx + rax]
cmp r14b, 0xff
jne 0x14008f9db
or r10d, 0x3000
xchg rcx, rcx
movzx eax, dil
and eax, 0xfffffffd
mov dword [r8 + 0x21], r10d
xor r14b, r14b
mov dword [rsp - 0x20], 0x3592d54
cmp al, 0x24
jne 0x14008f9db
mov r14b, bl
mov dword [rsp - 0x38], esp
mov r13b, dil
xor bl, bl
jmp 0x14008fa05
xor bl, bl
mov r13b, dil
test r14b, r14b
mov dword [rsp - 0x34], ebp
jns 0x14008fa05
movzx eax, r14b
and eax, 0x7f
movzx r14d, word [rax + r11]
mov dword [rsp - 0x34], ebx
movzx ebx, r14w
shr bx, 8
mov r15b, byte [r8 + 0xc]
mov dword [rsp - 0x28], 0x5ec0f16f
mov r11d, r10d
test r15b, r15b
je 0x14008fa60
movzx edx, dil
xchg r8, r8
mov eax, edx
and edx, 3
shr rax, 1
shr rax, 1
movzx ecx, byte [rbp + rax + 0x4c]
mov dword [rsp - 0x40], 0x36e187b2
lea rax, [rbp + 0x4c]
add rax, rdx
test byte [rax + rcx], sil
mov dword [rsp - 0x44], edx
je 0x14008fa60
or r11d, 0x3000
mov dword [r8 + 0x21], r11d
mov dword [rsp - 0x24], edi
test r14b, 1
je 0x140090078
or r11d, 1
mov dword [rsp - 0x18], 0x6f69e88b
mov dword [r8 + 0x21], r11d
mov edi, r11d
mov r12b, byte [r9]
mov dl, r12b
mov dword [rsp - 0x14], esp
mov byte [r8 + 0xd], r12b
mov cl, r12b
shr dl, 5
shr dl, 1
and cl, 7
shr r12b, 2
shr r12b, 1
and r12b, 7
mov byte [rbp + 0x190], dl
xchg rsi, rsi
mov byte [r8 + 0xe], dl
mov byte [rbp + 0x188], cl
mov byte [r8 + 0x10], cl
mov byte [r8 + 0xf], r12b
xchg r11, r11
test bl, bl
je 0x14008faf2
mov cl, r12b
movzx eax, bl
mov dword [rsp - 0x38], 0x32ed8c57
shl eax, cl
mov cl, byte [rbp + 0x188]
test al, al
jns 0x14008faf2
xchg r12, r12
or edi, 0x3000
mov dword [r8 + 0x21], edi
mov r10b, byte [rbp + 0x198]
mov dword [rsp - 0x30], ebp
mov eax, edi
test r15b, r15b
jne 0x14008fb87
cmp r10b, 0xd9
mov dword [rsp - 0x1c], edx
jb 0x14008fb87
cmp r10b, 0xdf
ja 0x14008fb87
mov dword [rsp - 0x40], 0x21bc5b68
lea eax, [r10 + 0x27]
movzx r10d, al
cmp dl, 3
mov dword [rsp - 0x38], esi
jne 0x14008fb5a
movzx eax, r12b
lea rdx, [rbp + 0x14]
xchg r13, r13
add rdx, rax
mov r10b, byte [rdx + r10*8]
mov dl, byte [rbp + 0x190]
jmp 0x14008fb65
mov r10b, byte [rbp + r10 + 0xd]
mov cl, r12b
xchg rsi, rsi
shl r10b, cl
mov eax, edi
test r10b, r10b
mov r10b, byte [rbp + 0x198]
mov dword [rsp - 0x30], ebp
jns 0x14008fb87
or eax, 0x3000
mov dword [r8 + 0x21], eax
test sil, 0x20
mov r13, r13
je 0x14008fc4b
cmp dl, 3
jne 0x14008fbb3
or eax, 0x9000
mov dword [rsp - 0x3c], 0x760e1fad
mov dword [r8 + 0x21], eax
jmp 0x14008fc4b
mov dl, r10b
test r15b, r15b
xchg rsi, rsi
jne 0x14008fbc5
and dl, 0xfe
test r15b, r15b
xchg rbp, rbp
lea rax, [rbp + 0xe8]
lea rdi, [rbp + 0xd6]
cmovne rdi, rax
mov r14, r14
lea rcx, [rbp + 0xbe]
lea rax, [rbp + 0xd6]
cmovne rcx, rax
xchg r14, r14
jmp 0x14008fc11
cmp byte [rcx], dl
je 0x14008fc27
nop
add rcx, 0x23033012
sub rcx, 0x23033010
cmp rcx, rdi
mov dword [rsp - 0x10], 0x7dbd609b
jne 0x14008fbfa
jmp 0x14008fc43
movzx eax, byte [rcx + 1]
xchg rsi, rsi
mov cl, r12b
shl eax, cl
test al, al
mov dword [rsp - 0x34], 0x7699ffd4
jns 0x14008fc4b
or dword [r8 + 0x21], 0x9000
movzx ecx, r13b
mov r9, r9
mov bl, 0x66
xor bl, 0x33
xor bl, 0x73
sub bl, 0xf
sub bl, 0x12
mov edx, ecx
test r15b, r15b
je 0x14008fd05
mov r12, r12
sub edx, 0x20
je 0x14008fcbd
sub edx, 1
je 0x14008fc99
mov rcx, rcx
sub edx, 1
je 0x14008fcbd
cmp edx, 1
jne 0x14008fd1e
mov dword [rsp - 0x34], ecx
lea eax, [r12 - 4]
mov r11b, 0x49
xor r11b, 0x67
add r11b, 0xe
sub r11b, 0x39
cmp al, 1
ja 0x14008fe60
mov rsp, rsp
jmp 0x14008fe55
mov ecx, 0x5108e944
xor ecx, 0xb7d9004
xor ecx, 0x195ad6c0
sub ecx, 0x9d9bc2e
xor ecx, 0x3955f356
mov r11b, 0x7b
sub r11b, 0x12
sub r11b, 0x4c
sub r11b, 0x1a
cmp r12b, cl
ja 0x14008fe55
mov dword [rsp - 0x2c], edx
cmp r12b, 1
jne 0x14008fe60
jmp 0x14008fe55
sub edx, 0x8c
je 0x14008fe41
cmp edx, 2
mov dword [rsp - 0x34], edi
je 0x14008fe28
mov r11b, byte [rbp + 0x190]
cmp r11b, 3
xchg r12, r12
jne 0x14008fdcd
test r15b, r15b
je 0x14008fd69
lea rdx, [rbp + 0x121]
xchg r14, r14
lea rax, [rbp + 0xf7]
lea rcx, [rbp + 0xf7]
cmp rax, rdx
mov dword [rsp - 0x30], 0x6bbabdb9
je 0x14008fe60
jmp 0x14008fd7b
lea rdx, [rbp + 0xf7]
lea rcx, [rbp + 0xe8]
mov dword [rsp - 0x2c], edi
cmp byte [rcx], r10b
je 0x14008fd9e
add rcx, 3
mov dword [rsp - 0x30], 0x11bd6806
cmp rcx, rdx
jne 0x14008fd7b
jmp 0x14008fe60
test byte [rcx + 1], sil
mov dword [rsp - 0x18], 0x1cbd480b
je 0x14008fe60
movzx eax, byte [rcx + 2]
mov cl, r12b
mov r11, r11
shl eax, cl
test al, al
jns 0x14008fe55
mov dword [rsp - 0x24], edi
jmp 0x14008fe60
test r15b, r15b
je 0x14008fe60
mov r14, r14
sub ecx, 0x50
je 0x14008fe10
sub ecx, 0x75
mov r15, r15
je 0x14008fe55
sub ecx, 0x11
je 0x14008fe1f
xchg rdi, rdi
sub ecx, 1
je 0x14008fe10
cmp ecx, 0x20
mov dword [rsp - 0x38], ecx
jne 0x14008fe60
test sil, 9
jne 0x14008fe55
jmp 0x14008fe60
test sil, 6
jmp 0x14008fe14
mov r11b, byte [rbp + 0x190]
xchg rsp, rsp
cmp r12b, 1
je 0x14008fe55
jmp 0x14008fe4c
mov r11b, byte [rbp + 0x190]
mov dword [rsp - 0x40], edi
cmp r12b, bl
jbe 0x14008fe60
or dword [r8 + 0x21], 0x11000
mov rcx, rcx
mov dl, byte [r9 + 1]
add r9, 2
cmp r12b, 1
ja 0x14008fe9c
mov r14, r14
cmp r10b, 0xf6
jne 0x14008fe8b
or r14b, 2
mov rbx, rbx
jmp 0x14008fe9c
cmp r10b, 0xf7
xchg rdx, rdx
jne 0x14008fe9c
or r14b, 0x10
mov al, byte [rbp + 0x188]
movzx ecx, r11b
mov dword [rsp - 0x30], 0x6ea141c4
test r11b, r11b
je 0x14008ff3a
sub ecx, 1
mov rdx, rdx
je 0x14008ff0f
cmp ecx, 1
pushf
mov ecx, 0x3cb7f9de
add ecx, 0x3fc73048
xor ecx, 0x8b98817
sub ecx, 0x74c6a22d
popf
jne 0x14008ff99
mov dil, 4
add dil, 0x5e
sub dil, 9
sub dil, 0x25
sub dil, 0x32
test sil, 0x10
jne 0x14008ff9d
mov dil, cl
xchg rbx, rbx
jmp 0x14008ff9d
mov dil, 0x71
sub dil, 0x50
add dil, 0x1e
xor dil, 0x3e
mov ecx, 0x5a45f97d
add ecx, 0x15037c2c
sub ecx, 0x20dad7a1
xor ecx, 0x4e6e9e0c
jmp 0x14008ff9d
mov ecx, 0x5c05b7e6
xor ecx, 0x4a162646
add ecx, 0x2655de62
xor ecx, 0x689ab1c4
xor ecx, 0x54f3c1c2
test sil, 0x10
je 0x14008ff83
cmp al, 6
mov dword [rsp - 0x30], 0x2465e881
setne dil
dec dil
and dil, 2
mov dword [rsp - 0x10], 0x1a46134a
jmp 0x14008ff9d
mov edi, dword [rsp + 4]
cmp al, bl
mov dword [rsp - 0x1c], edx
movzx edi, dil
cmove edi, ecx
jmp 0x14008ff9d
mov edi, dword [rsp + 4]
cmp r11b, 3
xchg r11, r11
je 0x140090000
cmp al, cl
jne 0x140090000
mov dword [rsp - 0x3c], esi
or dword [r8 + 0x21], 2
mov al, dl
shr al, 6
inc r9
xchg r12, r12
mov byte [r8 + 0x12], al
mov al, dl
shr al, 3
mov dword [rsp - 0x28], ebx
and al, 7
mov byte [r8 + 0x11], dl
and dl, 7
xchg rbx, rbx
mov byte [r8 + 0x13], al
mov byte [r8 + 0x14], dl
cmp dl, bl
jne 0x140090000
xchg rbp, rbp
test r11b, 1
movzx edi, dil
cmove edi, ecx
xchg r13, r13
dec r9
movzx ecx, dil
sub ecx, 1
mov r11, r11
je 0x140090056
sub ecx, 1
je 0x14009003e
mov r8, r8
cmp ecx, 2
jne 0x140090065
bts dword [r8 + 0x21], 8
mov eax, dword [r9]
mov dword [rsp - 0x40], ebx
mov dword [r8 + 0x1d], eax
jmp 0x140090065
bts dword [r8 + 0x21], 7
movzx eax, word [r9]
mov word [r8 + 0x1d], ax
mov dword [rsp - 0x38], edi
jmp 0x140090065
or dword [r8 + 0x21], 0x40
mov r15, r15
mov al, byte [r9]
mov byte [r8 + 0x1d], al
mov r12d, dword [rsp]
movzx eax, dil
xchg r15, r15
add r9, rax
jmp 0x140090095
test sil, 0x20
je 0x140090095
mov dword [rsp - 0x18], 0x15ed9f0d
or r11d, 0x9000
mov dword [r8 + 0x21], r11d
test r14b, 0x10
mov dword [rsp - 0x28], 0x8f33a75
je 0x140090125
test r14b, 0x40
je 0x140090102
test sil, 8
mov r12, r12
je 0x1400900e0
or dword [r8 + 0x21], 0x208
movzx eax, word [r9]
mov dword [rsp - 0x2c], 0x5e259638
add r9, 2
mov word [r8 + 0x15], ax
jmp 0x140090224
mov ecx, 0xf544d61
add ecx, 0x5ce1ba3f
sub ecx, 0x1a997f3e
sub ecx, 0x113c14bc
xor ecx, 0x406073a2
jmp 0x140090197
test r12b, r12b
xchg r10, r10
je 0x1400901b6
or dword [r8 + 0x21], 0x20
xchg r12, rax
mov r12, qword [r9]
xchg r12, rax
add r9, 8
mov qword [r8 + 0x15], rax
xchg rsp, rsp
mov ecx, 0x3985da80
sub ecx, 0xa606d32
xor ecx, 0x11211026
sub ecx, 0x3e047d64
test cl, r14b
je 0x14009016a
mov dword [rsp - 0x3c], esp
or dword [r8 + 0x21], 8
movzx eax, word [r9]
nop
sub r9, 0x332b0ef5
add r9, 0x332b0ef7
mov word [r8 + 0x15], ax
mov dword [rsp - 0x40], ecx
test r14b, 2
je 0x140090185
or dword [r8 + 0x21], ecx
mov rdx, rdx
mov al, byte [r9]
inc r9
mov byte [r8 + 0x15], al
test r14b, 0x40
mov dword [rsp - 0x44], 0x6708f28
je 0x1400901fd
or dword [r8 + 0x21], 0x210
mov eax, dword [r9]
add r9, rcx
mov dword [rsp - 0x38], 0x1ac43ee4
mov dword [r8 + 0x15], eax
jmp 0x140090224
mov ecx, 0x33217279
add ecx, 0x1f296fff
sub ecx, 0x2f2e730f
sub ecx, 0x1bbc56c4
sub ecx, 0x76018a1
test sil, 8
mov dword [rsp - 0x30], 0x190c7d0a
jne 0x140090149
or dword [r8 + 0x21], 0x10
mov eax, dword [r9]
add r9, rcx
mov dword [rsp - 0x30], edi
mov dword [r8 + 0x15], eax
jmp 0x14009013c
test r14b, 0x20
je 0x140090224
mov dword [rsp - 0x24], 0x46c5f6f0
or dword [r8 + 0x21], 0x204
mov al, byte [r9]
inc r9
mov byte [r8 + 0x15], al
xchg r9, r9
sub r9b, byte [rbp + 0x180]
mov byte [r8], r9b
cmp r9b, 0xf
mov r9, r9
jbe 0x140090266
or dword [r8 + 0x21], 0x5000
mov r9b, 6
add r9b, 0x1a
add r9b, 0xc
xor r9b, 0x48
sub r9b, 0x55
mov byte [r8], 0x19
add byte [r8], 0x30
sub byte [r8], 0x3a
add byte [r8], 0
xor eax, eax
lea rdi, [rsp + 0x10]
xchg rbp, rbp
mov ecx, 0x2197af51
add ecx, 0x39921dce
sub ecx, 0x4a82cb7a
xor ecx, 0x10a703b4
rep stosb byte [rdi], al
movzx eax, r9b
xchg r12, r12
sub rsp, 0xfffffffffffffdc8
nop
add rsp, 8
mov r15, qword [rsp - 8]
pop r14
mov r14, r14
pop r13
nop
mov r12, qword [rsp]
add rsp, 8
nop
add rsp, 8
mov rdi, qword [rsp - 8]
nop
add rsp, 8
mov rsi, qword [rsp - 8]
nop
mov rbx, qword [rsp]
add rsp, 8
nop
mov rbp, qword [rsp]
add rsp, 8
ret