Function at 0x1400099a0
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r12
push r13
push r14
push r15
sub rsp, 0x1f0
lea rbp, [rsp + 0x20]
mov qword [rbp + 0x208], rbx
mov qword [rbp + 0x210], rsi
mov qword [rbp + 0x218], rdi
mov rax, qword [0x1405f8008]
xor rax, rbp
mov qword [rbp + 0x1c0], rax
mov r15d, dword [rcx + 4]
lea r14, [0x140000000]
mov al, byte [rcx + 0x18]
mov esi, 0xfffffff
mov edx, dword [rcx + 0x20]
mov r13, rcx
mov edi, dword [rcx + 8]
and r15d, esi
mov rbx, qword [rcx + 0x10]
and edx, esi
mov qword [rbp + 0x58], rcx
and edi, esi
mov ecx, r15d
add rcx, r14
mov byte [rbp], al
mov qword [rbp + 0x40], rcx
call fcn.14000df34
mov ecx, edi
mov r12, rax
mov qword [rbp + 0x48], rax
mov edi, 8
mov qword [rbp + 0x30], rcx
test rcx, rcx
je 0x14003815e
and ecx, 7
mov dword [rbp + 0x10], ecx
je 0x140009f3d
movzx edx, bx
mov rdi, rbx
shr rdi, 0x20
mov rax, rbx
shr rax, 0x10
mov esi, r15d
movzx r11d, ax
not esi
movzx r9d, di
mov eax, r15d
ror eax, 0xf
mov ecx, r9d
xor ecx, r15d
mov qword [rbp + 0xe0], rbx
rol ecx, 5
imul ecx, r11d
mov qword [rbp + 0x90], rbx
mov qword [rbp + 0x170], rbx
mov qword [rbp + 0xa0], rbx
mov qword [rbp + 0x130], rbx
sub ecx, eax
mov qword [rbp + 0xb0], rbx
xor esi, ecx
mov qword [rbp + 0x1b0], rbx
mov rax, rbx
mov qword [rbp + 0xc0], rbx
shr rax, 0x30
mov r8d, eax
mov qword [rbp + 0x140], rbx
mov r10d, eax
mov qword [rbp + 0xd0], rbx
xor r10d, esi
mov qword [rbp + 0x180], rbx
rol r10d, 1
mov eax, esi
shr eax, 4
imul r10d, edx
mov qword [rbp + 0x80], rbx
mov qword [rbp + 0x150], rbx
mov qword [rbp + 0xf0], rbx
mov qword [rbp + 0x1a0], rbx
add r10d, eax
xor r10d, r15d
mov ecx, r10d
mov eax, r10d
sub ecx, ebx
ror eax, 4
ror ecx, 0xb
imul ecx, r8d
sub ecx, eax
xor esi, ecx
mov ecx, ebx
sub ecx, esi
mov eax, esi
ror ecx, 3
imul ecx, r9d
ror eax, 2
xor ecx, eax
xor r10d, ecx
mov eax, r10d
ror eax, 0xe
lea ecx, [r10 + rdi]
ror ecx, 0xf
imul ecx, r11d
sub ecx, eax
mov eax, r11d
xor esi, ecx
xor eax, esi
mov ecx, esi
ror ecx, 0xa
imul eax, edx
sub eax, ecx
xor r10d, eax
mov ecx, r10d
mov eax, r10d
sub ecx, ebx
ror eax, 0xb
ror ecx, 3
imul ecx, r8d
xor ecx, eax
xor esi, ecx
mov eax, esi
mov qword [rbp + 0x100], rbx
ror eax, 0x14
mov ecx, ebx
sub ecx, esi
mov qword [rbp + 0x160], rbx
ror ecx, 6
mov r14d, ebx
imul ecx, r9d
mov qword [rbp + 0x110], rbx
mov qword [rbp + 0x190], rbx
mov qword [rbp + 0x120], rbx
sub ecx, eax
xor r10d, ecx
mov ecx, edi
sub ecx, r10d
xor r14d, r10d
ror ecx, 0x13
mov eax, r10d
movsxd r10, dword [rbp + 0x10]
imul ecx, r11d
mov rdx, r10
ror eax, 7
mov r9, r10
add ecx, eax
mov rax, qword [rbp + 0x40]
xor esi, ecx
mov r8, rax
xor r14d, esi
mov dword [rbp + 8], esi
xor r14d, edi
xor ecx, ecx
mov dword [rbp + 0xc], r14d
mov qword [rbp + 0x20], rcx
test r10d, r10d
je 0x140009c07
lea rcx, [rbp + 0x20]
sub rcx, rax
mov al, byte [r8]
mov byte [rcx + r8], al
inc r8
sub r9, 1
jne 0x140009bec
mov r14d, dword [rbp + 0xc]
mov esi, dword [rbp + 8]
mov rcx, qword [rbp + 0x20]
xor r14d, dword [rbp + 0x24]
lea r8, [rbp + 8]
xor esi, ecx
mov dword [rbp + 0xc], r14d
mov edi, 8
mov dword [rbp + 8], esi
mov eax, edi
mov qword [rbp + 0x18], rcx
lea r8, [r8 + r10]
sub rax, rdx
je 0x140009c40
mov byte [r8], 0
inc r8
sub rax, 1
jne 0x140009c2c
mov r14d, dword [rbp + 0xc]
mov esi, dword [rbp + 8]
lea r8, [rbp + 8]
test r10d, r10d
je 0x140009c6a
lea rax, [rbp + 8]
mov r9, r12
sub r9, rax
mov al, byte [r8]
mov byte [r9 + r8], al
inc r8
sub rdx, 1
jne 0x140009c53
mov r14d, dword [rbp + 0xc]
mov esi, dword [rbp + 8]
mov r15, qword [rbp + 0x30]
movsxd rax, r10d
add rax, r12
mov qword [rbp + 0x50], rax
mov rax, r15
shr rax, 3
mov qword [rbp + 0x60], rax
test rax, rax
je 0x140009e9f
mov r13, qword [rbp + 0x40]
mov r8, rbx
mov r15, qword [rbp + 0x60]
mov r9, rbx
movzx eax, bx
mov dword [rbp + 0x10], eax
mov rax, rbx
shr rax, 0x30
shr r8, 0x10
shr r9, 0x20
sub r13, r12
mov qword [rbp + 0x88], rbx
mov r12, qword [rbp + 0x50]
mov qword [rbp + 0x98], rbx
mov qword [rbp + 0xa8], rbx
mov qword [rbp + 0xb8], rbx
mov qword [rbp + 0xc8], rbx
mov qword [rbp + 0xd8], rbx
mov qword [rbp + 0xe8], rbx
mov qword [rbp + 0xf8], rbx
mov qword [rbp + 0x108], rbx
mov qword [rbp + 0x118], rbx
mov qword [rbp + 0x128], rbx
mov qword [rbp + 0x138], rbx
mov qword [rbp + 0x148], rbx
mov qword [rbp + 0x158], rbx
mov qword [rbp + 0x70], rax
mov qword [rbp + 0x168], rbx
mov qword [rbp + 0x178], rbx
mov qword [rbp + 0x188], rbx
mov qword [rbp + 0x198], rbx
mov qword [rbp + 0x28], r8
mov qword [rbp + 0x1a8], rbx
mov qword [rbp + 0x1b8], rbx
mov qword [rbp + 0x38], r9
movzx r11d, r8w
mov rax, qword [r13 + r12]
movzx r10d, r9w
xor esi, eax
movzx r9d, word [rbp + 0x70]
mov r8d, r10d
mov rdx, rax
mov qword [rbp + 0x20], rax
shr rdx, 0x20
xor r14d, edx
xor r8d, r14d
mov edx, r14d
rol r8d, 5
imul r8d, r11d
ror edx, 0xf
sub r8d, edx
xor esi, r8d
mov r8d, r9d
xor r8d, esi
mov edx, esi
rol r8d, 1
imul r8d, dword [rbp + 0x10]
shr edx, 4
add r8d, edx
xor r14d, r8d
mov r8d, r14d
mov edx, r14d
sub r8d, ebx
ror edx, 4
ror r8d, 0xb
imul r8d, r9d
sub r8d, edx
xor esi, r8d
mov r8d, ebx
sub r8d, esi
mov edx, esi
ror r8d, 3
imul r8d, r10d
ror edx, 2
xor r8d, edx
xor r14d, r8d
mov r8, qword [rbp + 0x38]
add r8d, r14d
mov edx, r14d
ror r8d, 0xf
imul r8d, r11d
ror edx, 0xe
sub r8d, edx
mov edx, r11d
xor esi, r8d
xor edx, esi
mov r8d, esi
imul edx, dword [rbp + 0x10]
ror r8d, 0xa
sub edx, r8d
xor r14d, edx
mov r8d, r14d
mov edx, r14d
sub r8d, ebx
ror edx, 0xb
ror r8d, 3
imul r8d, r9d
mov r9, qword [rbp + 0x38]
xor r8d, edx
xor esi, r8d
mov r8d, ebx
sub r8d, esi
mov edx, esi
ror r8d, 6
imul r8d, r10d
ror edx, 0x14
sub r8d, edx
xor r14d, r8d
mov r8d, r9d
sub r8d, r14d
mov edx, r14d
ror r8d, 0x13
imul r8d, r11d
ror edx, 7
add r8d, edx
xor esi, r8d
mov r8, qword [rbp + 0x28]
xor r14d, ebx
xor r14d, esi
shr rcx, 0x20
xor esi, dword [rbp + 0x18]
xor r14d, r9d
xor r14d, ecx
mov dword [r12], esi
mov dword [r12 + 4], r14d
mov rcx, rax
add r12, rdi
mov qword [rbp + 0x18], rax
sub r15, 1
jne 0x140009d4e
mov r12, qword [rbp + 0x48]
mov r13, qword [rbp + 0x58]
mov r15, qword [rbp + 0x30]
mov dword [rbp + 8], esi
mov dword [rbp + 0xc], r14d
mov al, byte [r15 + r12 - 1]
lea r14, [0x140000000]
mov esi, 0xfffffff
cmp al, byte [rbp]
jne 0x140038166
mov ecx, dword [r13 + 0x1c]
test esi, ecx
je 0x140009edf
and rcx, rsi
mov qword [rbp + 0x28], r14
add rcx, r12
lea rdx, [rbp + 0x28]
mov al, byte [rdx]
inc rdx
mov byte [rcx], al
inc rcx
sub rdi, 1
jne 0x140009ecf
mov ecx, dword [r13]
test esi, ecx
jne 0x140038171
and qword [rbp + 0x78], 0
lea r9, [rbp + 0x68]
and qword [rbp + 0x68], 0
lea r8, [rbp + 0x78]
mov rdx, r12
call fcn.14000dce0
mov rax, r12
mov rcx, qword [rbp + 0x1c0]
xor rcx, rbp
call fcn.14001af80
mov rbx, qword [rbp + 0x208]
mov rsi, qword [rbp + 0x210]
mov rdi, qword [rbp + 0x218]
lea rsp, [rbp + 0x1d0]
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
mov r10d, dword [rbp + 0x10]
xor esi, esi
mov dword [rbp + 0x1c], r15d
xor r14d, r14d
not r15d
mov qword [rbp + 8], rsi
mov dword [rbp + 0x18], r15d
mov rcx, qword [rbp + 0x18]
jmp 0x140009c6a
mov al, byte [rbp]
jmp 0x140009eb0
call fcn.140108048
nop
jmp 0x140009eb9
and rcx, rsi
lea rax, [rcx + 0xf]
cmp rax, rcx
ja 0x140038187
movabs rax, 0xffffffffffffff0
and rax, 0xfffffffffffffff0
call fcn.14001bb20
sub rsp, rax
jmp 0x140009eeb