Function at 0x14001ac50
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push r12
push r14
push r15
sub rsp, 0x190
mov r15, rcx
xor r12d, r12d
mov byte [rax - 0x128], 0x5f
mov byte [rax - 0x127], 0x55
mov byte [rax - 0x126], 0x78
mov byte [rax - 0x125], 0x71
mov byte [rax - 0x124], 0x77
mov byte [rax - 0x123], 0x6c
mov byte [rax - 0x122], 0x70
mov byte [rax - 0x121], 0x68
mov byte [rax - 0x120], 0x59
mov byte [rax - 0x11f], 0x64
mov byte [rax - 0x11e], 0x6f
mov byte [rax - 0x11d], 0x6c
mov byte [rax - 0x11c], 0x67
mov byte [rax - 0x11b], 0x64
mov byte [rax - 0x11a], 0x77
mov byte [rax - 0x119], 0x6c
mov byte [rax - 0x118], 0x72
mov byte [rax - 0x117], 0x71
mov byte [rax - 0x116], 0x31
mov byte [rax - 0x115], 0x68
mov byte [rax - 0x114], 0x7b
mov byte [rax - 0x113], 0x68
mov byte [rax - 0x112], r12b
movzx eax, byte [rax - 0x128]
mov ecx, r12d
nop dword [rax]
movzx eax, byte [rsp + rcx + 0x80]
sub al, 3
mov byte [rsp + rcx + 0x80], al
inc rcx
cmp rcx, 0x16
jb 0x14001ad20
lea rcx, [rsp + 0x130]
call fcn.1400108d0
mov r8, rax
mov rdx, qword [rax + 0x10]
lea rax, [rsp + 0x80]
mov rsi, 0xffffffffffffffff
mov rcx, rsi
inc rcx
cmp byte [rax + rcx], 0
jne 0x14001ad60
movabs r14, 0x7fffffffffffffff
mov rax, r14
sub rax, rdx
cmp rax, rcx
jb 0x14001b65d
mov r9, r8
cmp qword [r8 + 0x18], 0x10
jb 0x14001ad8f
mov r9, qword [r8]
mov qword [rsp + 0x30], rcx
lea rax, [rsp + 0x80]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdx
movzx edx, byte [rsp + 0x1b8]
lea rcx, [rsp + 0x98]
call fcn.14001c350
nop
mov rdi, qword [rsp + 0xa8]
lea rbx, [rsp + 0x98]
cmp qword [rsp + 0xb0], 0x10
cmovae rbx, qword [rsp + 0x98]
call fcn.1400bf5f0
mov qword [rsp + 0xe0], rbx
mov qword [rsp + 0xe8], rdi
lea r8, [rsp + 0xe0]
mov edx, eax
lea rcx, [rsp + 0x150]
call fcn.14001a030
nop
lea rcx, [rsp + 0x150]
call fcn.14001ab40
movzx ebx, al
mov rdx, qword [rsp + 0x168]
cmp rdx, 8
jb 0x14001ae63
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x150]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001ae5e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001b663
call fcn.1400e117c
movdqa xmm0, xmmword [0x1401534d0]
movdqu xmmword [rsp + 0x160], xmm0
mov word [rsp + 0x150], r12w
mov rdx, qword [rsp + 0xb0]
cmp rdx, 0x10
jb 0x14001aec0
inc rdx
mov rcx, qword [rsp + 0x98]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001aebb
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001b669
call fcn.1400e117c
movdqa xmm0, xmmword [0x1401534e0]
movdqu xmmword [rsp + 0xa8], xmm0
mov byte [rsp + 0x98], 0
mov rdx, qword [rsp + 0x148]
cmp rdx, 0x10
jb 0x14001af1c
inc rdx
mov rcx, qword [rsp + 0x130]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001af17
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001b66f
call fcn.1400e117c
movdqa xmm0, xmmword [0x1401534e0]
movdqu xmmword [rsp + 0x140], xmm0
mov byte [rsp + 0x130], 0
test bl, bl
jne 0x14001b32c
mov dword [rsp + 0x40], 0x25
mov eax, dword [rsp + 0x40]
xor al, 0x5c
mov byte [rsp + 0x44], al
mov eax, dword [rsp + 0x40]
inc al
xor al, 0x52
mov byte [rsp + 0x45], al
mov eax, dword [rsp + 0x40]
add al, 2
xor al, 0x75
mov byte [rsp + 0x46], al
mov eax, dword [rsp + 0x40]
add al, 3
xor al, 0x6e
mov byte [rsp + 0x47], al
mov eax, dword [rsp + 0x40]
add al, 4
xor al, 0x74
mov byte [rsp + 0x48], al
mov eax, dword [rsp + 0x40]
add al, 5
xor al, 0x69
mov byte [rsp + 0x49], al
mov eax, dword [rsp + 0x40]
add al, 6
xor al, 0x6d
mov byte [rsp + 0x4a], al
mov eax, dword [rsp + 0x40]
add al, 7
xor al, 0x65
mov byte [rsp + 0x4b], al
mov eax, dword [rsp + 0x40]
add al, 8
xor al, 0x56
mov byte [rsp + 0x4c], al
mov eax, dword [rsp + 0x40]
add al, 9
xor al, 0x61
mov byte [rsp + 0x4d], al
mov eax, dword [rsp + 0x40]
add al, 0xa
xor al, 0x6c
mov byte [rsp + 0x4e], al
mov eax, dword [rsp + 0x40]
add al, 0xb
xor al, 0x69
mov byte [rsp + 0x4f], al
mov eax, dword [rsp + 0x40]
add al, 0xc
xor al, 0x64
mov byte [rsp + 0x50], al
mov eax, dword [rsp + 0x40]
add al, 0xd
xor al, 0x61
mov byte [rsp + 0x51], al
mov eax, dword [rsp + 0x40]
add al, 0xe
xor al, 0x74
mov byte [rsp + 0x52], al
mov eax, dword [rsp + 0x40]
add al, 0xf
xor al, 0x69
mov byte [rsp + 0x53], al
mov eax, dword [rsp + 0x40]
add al, 0x10
xor al, 0x6f
mov byte [rsp + 0x54], al
mov eax, dword [rsp + 0x40]
add al, 0x11
xor al, 0x6e
mov byte [rsp + 0x55], al
mov eax, dword [rsp + 0x40]
add al, 0x12
xor al, 0x2e
mov byte [rsp + 0x56], al
mov eax, dword [rsp + 0x40]
add al, 0x13
xor al, 0x65
mov byte [rsp + 0x57], al
mov eax, dword [rsp + 0x40]
add al, 0x14
xor al, 0x78
mov byte [rsp + 0x58], al
mov eax, dword [rsp + 0x40]
add al, 0x15
xor al, 0x65
mov byte [rsp + 0x59], al
xor eax, eax
mov byte [rsp + 0x5a], al
movzx eax, byte [rsp + 0x44]
mov rdx, r12
nop dword [rax]
movzx eax, byte [rsp + rdx + 0x44]
mov ecx, dword [rsp + 0x40]
add cl, dl
xor cl, al
mov byte [rsp + rdx + 0x44], cl
inc rdx
cmp rdx, 0x16
jb 0x14001b060
mov byte [rsp + 0x5a], 0
lea rcx, [rsp + 0x130]
call fcn.1400108d0
nop
mov rcx, qword [rax + 0x10]
lea rdx, [rsp + 0x44]
inc rsi
cmp byte [rdx + rsi], 0
jne 0x14001b096
sub r14, rcx
cmp r14, rsi
jb 0x14001b675
mov r9, rax
cmp qword [rax + 0x18], 0x10
jb 0x14001b0b8
mov r9, qword [rax]
mov qword [rsp + 0x30], rsi
lea rdx, [rsp + 0x44]
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], rcx
mov r8, rax
movzx edx, byte [rsp + 0x1b8]
lea rcx, [rsp + 0xb8]
call fcn.14001c350
nop
mov rdi, qword [rsp + 0xc8]
lea rbx, [rsp + 0xb8]
cmp qword [rsp + 0xd0], 0x10
cmovae rbx, qword [rsp + 0xb8]
call fcn.1400bf5f0
mov qword [rsp + 0x110], rbx
mov qword [rsp + 0x118], rdi
lea r8, [rsp + 0x110]
mov edx, eax
lea rcx, [rsp + 0x98]
call fcn.14001a030
nop
mov rbx, qword [r15 + 0x10]
cmp qword [r15 + 0x18], 0x10
jb 0x14001b142
mov r15, qword [r15]
call fcn.1400bf5f0
mov qword [rsp + 0x100], r15
mov qword [rsp + 0x108], rbx
lea r8, [rsp + 0x100]
mov edx, eax
lea rcx, [rsp + 0xe0]
call fcn.14001a030
nop
lea rdx, [rsp + 0x98]
cmp qword [rsp + 0xb0], 8
cmovae rdx, qword [rsp + 0x98]
lea rcx, [rsp + 0xe0]
cmp qword [rsp + 0xf8], 8
cmovae rcx, qword [rsp + 0xe0]
xor r8d, r8d
call fcn.1400bf850
mov rbx, rax
shr rax, 0x20
test eax, eax
jne 0x14001b67b
mov rdx, qword [rsp + 0xf8]
cmp rdx, 8
jb 0x14001b202
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0xe0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001b1fd
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001b697
call fcn.1400e117c
movdqa xmm0, xmmword [0x1401534d0]
movdqu xmmword [rsp + 0xf0], xmm0
mov word [rsp + 0xe0], r12w
mov rdx, qword [rsp + 0xb0]
cmp rdx, 8
jb 0x14001b264
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x98]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001b25f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001b69d
call fcn.1400e117c
movdqa xmm0, xmmword [0x1401534d0]
movdqu xmmword [rsp + 0xa8], xmm0
mov word [rsp + 0x98], r12w
mov rdx, qword [rsp + 0xd0]
cmp rdx, 0x10
jb 0x14001b2c1
inc rdx
mov rcx, qword [rsp + 0xb8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001b2bc
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001b6a3
call fcn.1400e117c
movdqa xmm0, xmmword [0x1401534e0]
movdqu xmmword [rsp + 0xc8], xmm0
mov byte [rsp + 0xb8], 0
mov rdx, qword [rsp + 0x148]
cmp rdx, 0x10
jb 0x14001b31d
inc rdx
mov rcx, qword [rsp + 0x130]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001b318
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001b6a9
call fcn.1400e117c
test bl, bl
je 0x14001b63d
mov al, 1
jmp 0x14001b63f
mov dword [rsp + 0x60], 0x75
mov eax, dword [rsp + 0x60]
xor al, 0x5c
mov byte [rsp + 0x64], al
mov eax, dword [rsp + 0x60]
inc al
xor al, 0x52
mov byte [rsp + 0x65], al
mov eax, dword [rsp + 0x60]
add al, 2
xor al, 0x75
mov byte [rsp + 0x66], al
mov eax, dword [rsp + 0x60]
add al, 3
xor al, 0x6e
mov byte [rsp + 0x67], al
mov eax, dword [rsp + 0x60]
add al, 4
xor al, 0x74
mov byte [rsp + 0x68], al
mov eax, dword [rsp + 0x60]
add al, 5
xor al, 0x69
mov byte [rsp + 0x69], al
mov eax, dword [rsp + 0x60]
add al, 6
xor al, 0x6d
mov byte [rsp + 0x6a], al
mov eax, dword [rsp + 0x60]
add al, 7
xor al, 0x65
mov byte [rsp + 0x6b], al
mov eax, dword [rsp + 0x60]
add al, 8
xor al, 0x56
mov byte [rsp + 0x6c], al
mov eax, dword [rsp + 0x60]
add al, 9
xor al, 0x61
mov byte [rsp + 0x6d], al
mov eax, dword [rsp + 0x60]
add al, 0xa
xor al, 0x6c
mov byte [rsp + 0x6e], al
mov eax, dword [rsp + 0x60]
add al, 0xb
xor al, 0x69
mov byte [rsp + 0x6f], al
mov eax, dword [rsp + 0x60]
add al, 0xc
xor al, 0x64
mov byte [rsp + 0x70], al
mov eax, dword [rsp + 0x60]
add al, 0xd
xor al, 0x61
mov byte [rsp + 0x71], al
mov eax, dword [rsp + 0x60]
add al, 0xe
xor al, 0x74
mov byte [rsp + 0x72], al
mov eax, dword [rsp + 0x60]
add al, 0xf
xor al, 0x69
mov byte [rsp + 0x73], al
mov eax, dword [rsp + 0x60]
add al, 0x10
xor al, 0x6f
mov byte [rsp + 0x74], al
mov eax, dword [rsp + 0x60]
add al, 0x11
xor al, 0x6e
mov byte [rsp + 0x75], al
mov eax, dword [rsp + 0x60]
add al, 0x12
xor al, 0x2e
mov byte [rsp + 0x76], al
mov eax, dword [rsp + 0x60]
add al, 0x13
xor al, 0x65
mov byte [rsp + 0x77], al
mov eax, dword [rsp + 0x60]
add al, 0x14
xor al, 0x78
mov byte [rsp + 0x78], al
mov eax, dword [rsp + 0x60]
add al, 0x15
xor al, 0x65
mov byte [rsp + 0x79], al
xor eax, eax
mov byte [rsp + 0x7a], al
movzx eax, byte [rsp + 0x64]
mov rdx, r12
nop dword [rax + rax]
movzx eax, byte [rsp + rdx + 0x64]
mov ecx, dword [rsp + 0x60]
add cl, dl
xor cl, al
mov byte [rsp + rdx + 0x64], cl
inc rdx
cmp rdx, 0x16
jb 0x14001b450
mov byte [rsp + 0x7a], 0
lea rcx, [rsp + 0x170]
call fcn.1400108d0
nop
mov rcx, qword [rax + 0x10]
lea rdx, [rsp + 0x64]
inc rsi
cmp byte [rdx + rsi], 0
jne 0x14001b486
sub r14, rcx
cmp r14, rsi
jb 0x14001b6af
mov r9, rax
cmp qword [rax + 0x18], 0x10
jb 0x14001b4a8
mov r9, qword [rax]
mov qword [rsp + 0x30], rsi
lea rdx, [rsp + 0x64]
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], rcx
mov r8, rax
movzx edx, byte [rsp + 0x1b8]
lea rcx, [rsp + 0xb8]
call fcn.14001c350
nop
mov rdi, qword [rsp + 0xc8]
lea rbx, [rsp + 0xb8]
cmp qword [rsp + 0xd0], 0x10
cmovae rbx, qword [rsp + 0xb8]
call fcn.1400bf5f0
mov qword [rsp + 0x100], rbx
mov qword [rsp + 0x108], rdi
lea r8, [rsp + 0x100]
mov edx, eax
lea rcx, [rsp + 0x110]
call fcn.14001a030
nop
lea rcx, [rsp + 0x110]
call fcn.14001ab40
movzx ebx, al
mov rdx, qword [rsp + 0x128]
cmp rdx, 8
jb 0x14001b57c
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x110]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001b577
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001b6b5
call fcn.1400e117c
movdqa xmm0, xmmword [0x1401534d0]
movdqu xmmword [rsp + 0x120], xmm0
mov word [rsp + 0x110], r12w
mov rdx, qword [rsp + 0xd0]
cmp rdx, 0x10
jb 0x14001b5d9
inc rdx
mov rcx, qword [rsp + 0xb8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001b5d4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001b6bb
call fcn.1400e117c
movdqa xmm0, xmmword [0x1401534e0]
movdqu xmmword [rsp + 0xc8], xmm0
mov byte [rsp + 0xb8], 0
mov rdx, qword [rsp + 0x188]
cmp rdx, 0x10
jb 0x14001b635
inc rdx
mov rcx, qword [rsp + 0x170]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001b630
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001b6c1
call fcn.1400e117c
test bl, bl
je 0x14001b63d
mov al, 1
jmp 0x14001b63f
xor al, al
lea r11, [rsp + 0x190]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x30]
mov rdi, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop r12
ret
call fcn.140004f20
nop
call fcn.1400e82e4
nop
call fcn.1400e82e4
nop
call fcn.1400e82e4
nop
call fcn.140004f20
nop
shr rbx, 0x20
lea r9, [rsp + 0x98]
lea r8, [rsp + 0xe0]
mov edx, ebx
call fcn.14001aa60
nop
call fcn.1400e82e4
nop
call fcn.1400e82e4
nop
call fcn.1400e82e4
nop
call fcn.1400e82e4
nop
call fcn.140004f20
nop
call fcn.1400e82e4
nop
call fcn.1400e82e4
nop
call fcn.1400e82e4
int3