Function at 0x14001177c
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r12
push r13
push r14
push r15
sub rsp, 0x1d0
lea rbp, [rsp + 0x20]
mov qword [rbp + 0x1e8], rbx
mov qword [rbp + 0x1f0], rsi
mov qword [rbp + 0x1f8], rdi
mov rax, qword [0x1405fa008]
xor rax, rbp
mov qword [rbp + 0x1a8], rax
mov r14d, dword [rcx + 0x20]
mov esi, 0xfffffff
mov al, byte [rcx + 4]
mov r12, rcx
mov edx, dword [rcx]
and r14d, esi
mov edi, dword [rcx + 0x18]
and edx, esi
mov rbx, qword [rcx + 0x10]
and edi, esi
mov qword [rbp + 0x40], rcx
lea rcx, [0x140000000]
mov r13d, r14d
add r13, rcx
mov byte [rbp], al
call fcn.14000df14
mov ecx, edi
mov r15, rax
mov qword [rbp + 0x58], rax
mov edi, 8
mov qword [rbp + 0x30], rcx
test rcx, rcx
je 0x1400389a0
and ecx, 7
mov dword [rbp + 0x10], ecx
je 0x140011ca2
movzx r9d, bx
mov rax, rbx
shr rax, 0x10
mov r10, rbx
movzx r11d, ax
mov edi, r14d
shr r10, 0x20
not edi
mov eax, r14d
movzx edx, r10w
sub eax, r11d
mov qword [rbp + 0xd8], rbx
xor eax, r10d
mov qword [rbp + 0x78], rbx
xor edi, eax
mov qword [rbp + 0x158], rbx
mov eax, edi
mov qword [rbp + 0x88], rbx
ror eax, 0x10
mov esi, r10d
xor esi, edi
mov qword [rbp + 0x118], rbx
ror esi, 0x10
mov ecx, ebx
imul esi, r9d
mov qword [rbp + 0x98], rbx
mov qword [rbp + 0x198], rbx
mov qword [rbp + 0xa8], rbx
mov qword [rbp + 0x128], rbx
add esi, eax
mov qword [rbp + 0xb8], rbx
xor esi, r14d
mov qword [rbp + 0x168], rbx
sub ecx, esi
mov qword [rbp + 0xc8], rbx
ror ecx, 0xa
mov rax, rbx
shr rax, 0x30
imul ecx, eax
mov r8d, eax
mov eax, esi
mov qword [rbp + 0x138], rbx
ror eax, 0x15
mov qword [rbp + 0x68], rbx
mov qword [rbp + 0x188], rbx
xor ecx, eax
mov qword [rbp + 0xe8], rbx
xor edi, ecx
mov qword [rbp + 0x148], rbx
mov eax, edi
mov qword [rbp + 0xf8], rbx
ror eax, 0xc
xor eax, edx
imul eax, r9d
xor esi, eax
mov eax, esi
sub eax, r10d
sub eax, r11d
xor edi, eax
mov ecx, edi
mov eax, edi
sub ecx, r11d
shr eax, 0xf
imul ecx, r9d
sub ecx, eax
xor esi, ecx
mov ecx, edx
xor ecx, esi
mov eax, esi
rol ecx, 7
imul ecx, r8d
ror eax, 0x1b
sub ecx, eax
xor edi, ecx
mov eax, edi
ror eax, 7
lea ecx, [rbx + rdi]
ror ecx, 0xc
imul ecx, edx
add ecx, eax
xor esi, ecx
xor r10d, ebx
mov qword [rbp + 0x178], rbx
xor r10d, esi
mov qword [rbp + 0x108], rbx
xor edi, r10d
xor ecx, ecx
movsxd r10, dword [rbp + 0x10]
xor r11d, edi
rol r11d, 2
mov eax, edi
imul r11d, r9d
mov rdx, r10
ror eax, 0xd
mov r9, r10
mov dword [rbp + 8], edi
mov r8, r13
mov qword [rbp + 0x18], rcx
add r11d, eax
xor esi, r11d
mov dword [rbp + 0xc], esi
test r10d, r10d
je 0x1400119a7
lea rcx, [rbp + 0x18]
sub rcx, r13
mov al, byte [r8]
mov byte [rcx + r8], al
inc r8
sub r9, 1
jne 0x14001198d
mov esi, dword [rbp + 0xc]
mov edi, dword [rbp + 8]
mov rcx, qword [rbp + 0x18]
xor esi, dword [rbp + 0x1c]
lea r8, [rbp + 8]
xor edi, ecx
mov dword [rbp + 0xc], esi
mov eax, 8
mov dword [rbp + 8], edi
mov qword [rbp + 0x20], rcx
lea r8, [r8 + r10]
sub rax, rdx
je 0x1400119db
mov byte [r8], 0
inc r8
sub rax, 1
jne 0x1400119c8
mov esi, dword [rbp + 0xc]
mov edi, dword [rbp + 8]
lea r8, [rbp + 8]
test r10d, r10d
je 0x140011a04
lea rax, [rbp + 8]
mov r9, r15
sub r9, rax
mov al, byte [r8]
mov byte [r9 + r8], al
inc r8
sub rdx, 1
jne 0x1400119ee
mov esi, dword [rbp + 0xc]
mov edi, dword [rbp + 8]
movsxd rax, r10d
add rax, r15
mov qword [rbp + 0x38], rax
mov rax, qword [rbp + 0x30]
mov r14, rax
shr r14, 3
test r14, r14
je 0x140011bfd
mov r12, qword [rbp + 0x38]
mov r9, rbx
shr r9, 0x30
mov rax, rbx
shr rax, 0x20
mov r8, rbx
shr r8, 0x10
movzx r10d, bx
sub r13, r15
mov r15, rax
mov qword [rbp + 0x70], rbx
mov qword [rbp + 0x80], rbx
mov qword [rbp + 0x90], rbx
mov qword [rbp + 0xa0], rbx
mov qword [rbp + 0xb0], rbx
mov qword [rbp + 0xc0], rbx
mov qword [rbp + 0xd0], rbx
mov qword [rbp + 0xe0], rbx
mov qword [rbp + 0xf0], rbx
mov qword [rbp + 0x100], rbx
mov qword [rbp + 0x110], rbx
mov qword [rbp + 0x120], rbx
mov qword [rbp + 0x130], rbx
mov qword [rbp + 0x140], rbx
mov qword [rbp + 0x48], r9
mov qword [rbp + 0x150], rbx
mov qword [rbp + 0x160], rbx
mov qword [rbp + 0x170], rbx
mov qword [rbp + 0x180], rbx
mov qword [rbp + 0x18], rax
mov qword [rbp + 0x190], rbx
mov qword [rbp + 0x1a0], rbx
mov qword [rbp + 0x28], r8
mov dword [rbp + 0x10], r10d
mov rax, qword [r13 + r12]
movzx r11d, r8w
xor edi, eax
mov rdx, rax
shr rcx, 0x20
shr rdx, 0x20
mov r8d, r15d
xor esi, edx
mov qword [rbp + 0x18], rax
mov edx, esi
sub edx, r11d
xor edx, r15d
xor edi, edx
xor r8d, edi
mov edx, edi
ror edx, 0x10
ror r8d, 0x10
imul r8d, r10d
movzx r10d, r9w
movzx r9d, r15w
add r8d, edx
xor esi, r8d
mov r8d, ebx
sub r8d, esi
mov edx, esi
ror edx, 0x15
ror r8d, 0xa
imul r8d, r10d
xor r8d, edx
xor edi, r8d
mov edx, edi
ror edx, 0xc
xor edx, r9d
imul edx, dword [rbp + 0x10]
xor esi, edx
mov edx, esi
sub edx, r15d
sub edx, r11d
xor edi, edx
mov r8d, edi
mov edx, edi
sub r8d, r11d
shr edx, 0xf
imul r8d, dword [rbp + 0x10]
sub r8d, edx
xor esi, r8d
mov r8d, r9d
xor r8d, esi
mov edx, esi
ror edx, 0x1b
rol r8d, 7
imul r8d, r10d
mov r10d, dword [rbp + 0x10]
sub r8d, edx
xor edi, r8d
mov edx, edi
ror edx, 7
lea r8d, [rbx + rdi]
ror r8d, 0xc
imul r8d, r9d
add r8d, edx
mov edx, r15d
xor edx, ebx
xor esi, r8d
xor edx, esi
xor edi, edx
xor r11d, edi
mov edx, edi
xor edi, dword [rbp + 0x20]
rol r11d, 2
imul r11d, r10d
ror edx, 0xd
mov dword [r12], edi
lea r12, [r12 + 8]
mov qword [rbp + 0x20], rax
add r11d, edx
xor esi, r11d
xor esi, ecx
mov rcx, rax
mov dword [r12 - 4], esi
sub r14, 1
mov r9, qword [rbp + 0x48]
mov r8, qword [rbp + 0x28]
jne 0x140011ade
mov r15, qword [rbp + 0x58]
mov r12, qword [rbp + 0x40]
mov rax, qword [rbp + 0x30]
mov dword [rbp + 8], edi
mov dword [rbp + 0xc], esi
mov cl, byte [rax + r15 - 1]
mov edi, 8
mov esi, 0xfffffff
cmp cl, byte [rbp]
jne 0x1400389a8
mov ecx, dword [r12 + 0x1c]
test esi, ecx
je 0x140011c43
lea rax, [0x140000000]
and rcx, rsi
mov qword [rbp + 0x28], rax
lea rdx, [rbp + 0x28]
add rcx, r15
mov al, byte [rdx]
inc rdx
mov byte [rcx], al
inc rcx
sub rdi, 1
jne 0x140011c33
mov ecx, dword [r12 + 8]
test esi, ecx
jne 0x1400389b3
and qword [rbp + 0x60], 0
lea r9, [rbp + 0x50]
and qword [rbp + 0x50], 0
lea r8, [rbp + 0x60]
mov rdx, r15
call fcn.14000dcc0
mov rax, r15
mov rcx, qword [rbp + 0x1a8]
xor rcx, rbp
call fcn.14001af10
mov rbx, qword [rbp + 0x1e8]
mov rsi, qword [rbp + 0x1f0]
mov rdi, qword [rbp + 0x1f8]
lea rsp, [rbp + 0x1b0]
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
mov r10d, dword [rbp + 0x10]
xor edi, edi
mov dword [rbp + 0x24], r14d
xor esi, esi
not r14d
mov qword [rbp + 8], rdi
mov dword [rbp + 0x20], r14d
mov rcx, qword [rbp + 0x20]
jmp 0x140011a04
mov cl, byte [rbp]
jmp 0x140011c0c
call fcn.140108d08
nop
jmp 0x140011c15
and rcx, rsi
lea rax, [rcx + 0xf]
cmp rax, rcx
ja 0x1400389c9
movabs rax, 0xffffffffffffff0
and rax, 0xfffffffffffffff0
call fcn.14001bab0
sub rsp, rax
jmp 0x140011c50