Function at 0x14014cb30
Capabilities:
Encode data using xor
Encrypt data using aes
Reference aes constants
Resolve function by parsing pe exports

Disassembly:
push rbp
mov rbp, rsp
push r15
push r14
push r13
push r12
push rdi
push rsi
push rbx
and rsp, 0xfffffffffffffff0
sub rsp, 0x90
mov qword [rbp + 0x18], rdx
mov qword [rbp + 0x28], r9
test rcx, rcx
je 0x14014d890
test rdx, rdx
je 0x14014d8a0
mov rbx, r8
mov eax, 4
and ebx, 0xf
mov qword [rsp + 0x88], rbx
jne 0x14014cbd0
cmp qword [rbp + 0x30], 0
je 0x14014d8b0
mov rax, qword [rbp + 0x30]
sub r8, 0x20
mov rdx, qword [rax]
mov qword [rax], r8
test r9, r9
je 0x14014d880
mov eax, 9
cmp r8, rdx
ja 0x14014cbd0
cmp qword [rcx], 0xf
mov rsi, rcx
mov eax, 7
jbe 0x14014cbd0
mov rax, qword [rbp + 0x18]
mov eax, dword [rax]
cmp dword [0x140250fe0], eax
jne 0x14014cbcb
mov rax, qword [rbp + 0x18]
cmp byte [rax + 4], 1
je 0x14014cbe8
mov eax, 0xa
lea rsp, [rbp - 0x38]
pop rbx
pop rsi
pop rdi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
cmp byte [rax + 5], 2
jne 0x14014cbcb
movzx ebx, word [rax + 6]
cmp bx, 3
sete al
test bx, bx
sete dl
or al, dl
jne 0x14014cbcb
test ebx, 0xfffc
jne 0x14014cbcb
mov rax, qword [rbp + 0x18]
movzx eax, byte [rax + 8]
mov byte [rsp + 0x3d], al
test al, 0xfe
jne 0x14014cbcb
mov rax, qword [rbp + 0x18]
mov rcx, r9
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x30], rax
mov rax, qword [rbp + 0x18]
mov rax, qword [rax + 0x18]
mov qword [rsp + 0x28], rax
mov rax, qword [rbp + 0x18]
lea rdx, [rax + 0x20]
call sub.msvcrt.dll_memcpy
mov rax, qword [rbp + 0x30]
mov rax, qword [rax]
test rax, rax
je 0x14014d64f
and ebx, 2
mov r13, qword [rbp + 0x28]
mov qword [rbp + 0x10], rsi
xor edx, edx
mov word [rsp + 0x3e], bx
lea r14, [0x1402cb380]
mov r15, r13
nop dword [rax]
cmp word [rsp + 0x3e], 0
je 0x14014d8c0
mov rcx, qword [rsp + 0x88]
test rcx, rcx
je 0x14014d8f0
mov rdi, qword [rbp + 0x18]
mov rdi, qword [rdi + rcx + 0x10]
mov qword [rsp + 0x30], rdi
mov rdi, qword [rbp + 0x18]
mov rbx, qword [rdi + rcx + 0x18]
mov qword [rsp + 0x28], rbx
test edx, edx
jne 0x14014d900
sub rax, qword [rsp + 0x88]
cmp rax, 0xf
jbe 0x14014d900
mov rax, qword [rbp + 0x10]
mov rdi, qword [rbp + 0x10]
mov rax, qword [rax + 0x120]
mov rbx, rdi
shl rax, 4
movzx eax, byte [rax + rdi + 0x20]
xor byte [r15], al
mov rax, qword [rdi + 0x120]
shl rax, 4
movzx eax, byte [rax + rdi + 0x21]
xor byte [r15 + 1], al
mov rax, qword [rdi + 0x120]
shl rax, 4
movzx eax, byte [rax + rdi + 0x22]
xor byte [r15 + 2], al
mov rax, qword [rdi + 0x120]
shl rax, 4
movzx eax, byte [rax + rdi + 0x23]
xor byte [r15 + 3], al
lea rax, [r15 + 4]
mov qword [rsp + 0x58], rax
mov rax, qword [rdi + 0x120]
shl rax, 4
movzx eax, byte [rax + rdi + 0x24]
xor byte [r15 + 4], al
mov rax, qword [rdi + 0x120]
shl rax, 4
movzx eax, byte [rax + rdi + 0x25]
xor byte [r15 + 5], al
mov rax, qword [rdi + 0x120]
shl rax, 4
movzx eax, byte [rax + rdi + 0x26]
xor byte [r15 + 6], al
mov rax, qword [rdi + 0x120]
shl rax, 4
movzx eax, byte [rax + rdi + 0x27]
xor byte [r15 + 7], al
lea rax, [r15 + 8]
mov qword [rsp + 0x40], rax
mov rax, qword [rdi + 0x120]
shl rax, 4
movzx eax, byte [rax + rdi + 0x28]
xor byte [r15 + 8], al
mov rax, qword [rdi + 0x120]
shl rax, 4
movzx eax, byte [rax + rdi + 0x29]
xor byte [r15 + 9], al
mov rax, qword [rdi + 0x120]
shl rax, 4
movzx eax, byte [rax + rdi + 0x2a]
xor byte [r15 + 0xa], al
mov rax, qword [rdi + 0x120]
shl rax, 4
movzx eax, byte [rax + rdi + 0x2b]
xor byte [r15 + 0xb], al
lea rax, [r15 + 0xc]
mov qword [rsp + 0x48], rax
mov rax, qword [rdi + 0x120]
shl rax, 4
movzx eax, byte [rax + rdi + 0x2c]
xor byte [r15 + 0xc], al
mov rax, qword [rdi + 0x120]
shl rax, 4
movzx eax, byte [rax + rdi + 0x2d]
xor byte [r15 + 0xd], al
mov rax, qword [rdi + 0x120]
shl rax, 4
movzx eax, byte [rax + rdi + 0x2e]
xor byte [r15 + 0xe], al
mov rax, qword [rdi + 0x120]
mov qword [rsp + 0x70], rax
shl rax, 4
movzx eax, byte [rax + rdi + 0x2f]
xor al, byte [r15 + 0xf]
mov byte [rsp + 0x70], al
mov byte [r15 + 0xf], al
mov rax, qword [rdi + 0x120]
mov rdi, rax
sub rdi, 2
mov qword [rsp + 0x50], rdi
je 0x14014d278
shl rax, 4
add rax, rbx
mov r12, rax
movzx eax, byte [r15 + 5]
movzx edi, byte [r15]
movzx esi, byte [r15 + 0xd]
movzx ebx, byte [r15 + 0xa]
mov byte [rsp + 0x83], al
movzx eax, byte [r15 + 9]
movzx r11d, byte [r15 + 7]
movzx r10d, byte [r15 + 4]
movzx r9d, byte [r15 + 1]
movzx r8d, byte [r15 + 0xe]
mov byte [rsp + 0x68], al
movzx eax, byte [r15 + 6]
movzx ecx, byte [r15 + 0xb]
movzx edx, byte [r15 + 8]
movzx r13d, byte [r15 + 2]
mov byte [rsp + 0x60], al
movzx eax, byte [r15 + 3]
mov byte [rsp + 0x82], r13b
movzx r13d, byte [r15 + 0xc]
mov byte [rsp + 0x80], al
mov rax, rdi
and edi, 0xf0
and eax, 0xf
add rdi, r14
movzx edi, byte [rdi + rax]
mov byte [rsp + 0x87], dil
mov rdi, rsi
and esi, 0xf0
add rsi, r14
and edi, 0xf
movzx edi, byte [rsi + rdi]
mov rsi, rbx
and ebx, 0xf0
add rbx, r14
and esi, 0xf
movzx esi, byte [rbx + rsi]
mov byte [rsp + 0x86], sil
mov rsi, r11
and r11d, 0xf0
and esi, 0xf
add r11, r14
movzx ebx, byte [r11 + rsi]
mov r11, r10
and r10d, 0xf0
and r11d, 0xf
add r10, r14
movzx r10d, byte [r10 + r11]
mov byte [rsp + 0x85], bl
mov byte [rsp + 0x84], r10b
mov r10, r9
and r9d, 0xf0
add r9, r14
and r10d, 0xf
movzx r10d, byte [r9 + r10]
mov r9, r8
and r8d, 0xf0
add r8, r14
and r9d, 0xf
movzx r9d, byte [r8 + r9]
mov r8, rcx
and ecx, 0xf0
add rcx, r14
and r8d, 0xf
movzx r8d, byte [rcx + r8]
mov rcx, rdx
and edx, 0xf0
add rdx, r14
and ecx, 0xf
movzx ecx, byte [rdx + rcx]
movzx ebx, byte [rsp + 0x83]
movzx r11d, byte [rsp + 0x82]
mov rsi, rbx
mov rdx, rbx
movzx ebx, byte [rsp + 0x68]
mov byte [rsp + 0x68], dil
and esi, 0xf0
and edx, 0xf
mov rax, rsi
mov rsi, r11
and r11d, 0xf0
add rax, r14
and esi, 0xf
movzx edx, byte [rax + rdx]
mov byte [rsp + 0x83], dl
mov rdx, r11
add rdx, r14
movzx r11d, byte [rdx + rsi]
mov byte [rsp + 0x82], r11b
movzx r11d, byte [rsp + 0x70]
mov rsi, r11
and esi, 0xf
mov rax, rsi
mov rsi, r11
mov r11, r13
and r13d, 0xf0
and esi, 0xf0
and r11d, 0xf
mov rdx, rsi
add rdx, r14
movzx esi, byte [rdx + rax]
mov rdx, r13
movzx eax, r9b
add rdx, r14
movzx r13d, byte [rdx + r11]
mov rdx, rbx
mov r11, rbx
movzx ebx, byte [rsp + 0x60]
and edx, 0xf0
and r11d, 0xf
mov byte [rsp + 0x81], sil
add rdx, r14
movzx esi, byte [rdx + r11]
mov r11, rbx
and ebx, 0xf0
mov rdx, rbx
and r11d, 0xf
add rdx, r14
movzx ebx, byte [rdx + r11]
movzx edx, byte [rsp + 0x80]
mov r11, rdx
and edx, 0xf0
add rdx, r14
and r11d, 0xf
movzx r11d, byte [rdx + r11]
movzx edx, r8b
shl rdx, 8
or rdx, rax
movzx eax, r10b
shl rdx, 8
or rdx, rax
movzx eax, byte [rsp + 0x84]
shl rdx, 8
or rdx, rax
movzx eax, byte [rsp + 0x85]
shl rdx, 8
or rdx, rax
movzx eax, byte [rsp + 0x86]
shl rdx, 8
or rdx, rax
movzx eax, dil
movzx edi, byte [rsp + 0x87]
shl rdx, 8
or rdx, rax
movzx eax, r11b
mov qword [rsp + 0x60], rdi
movzx edi, bl
shl rax, 8
shl rdx, 8
or rax, rdi
movzx edi, sil
shl rax, 8
or rax, rdi
movzx edi, r13b
or rdx, qword [rsp + 0x60]
shl rax, 8
mov qword [rsp + 0x70], rdx
or rax, rdi
movzx edi, byte [rsp + 0x81]
shl rax, 8
or rax, rdi
movzx edi, byte [rsp + 0x82]
shl rax, 8
or rax, rdi
movzx edi, byte [rsp + 0x83]
shl rax, 8
or rax, rdi
movzx edi, cl
shl rax, 8
mov rdx, rax
or rdx, rdi
mov qword [rsp + 0x78], rdx
movdqa xmm0, xmmword [rsp + 0x70]
movups xmmword [r15], xmm0
movzx eax, byte [rsp + 0x87]
xor al, byte [r12 + 0x10]
mov byte [r15], al
movzx eax, byte [rsp + 0x68]
xor al, byte [r12 + 0x11]
mov byte [r15 + 1], al
movzx eax, byte [rsp + 0x86]
xor al, byte [r12 + 0x12]
mov byte [r15 + 2], al
movzx eax, byte [rsp + 0x85]
xor al, byte [r12 + 0x13]
mov byte [r15 + 3], al
movzx eax, byte [rsp + 0x84]
xor al, byte [r12 + 0x14]
mov byte [r15 + 4], al
xor r10b, byte [r12 + 0x15]
mov byte [r15 + 5], r10b
xor r9b, byte [r12 + 0x16]
mov byte [r15 + 6], r9b
xor r8b, byte [r12 + 0x17]
mov byte [r15 + 7], r8b
xor cl, byte [r12 + 0x18]
mov byte [r15 + 8], cl
movzx eax, byte [rsp + 0x83]
mov rcx, r15
xor al, byte [r12 + 0x19]
mov byte [r15 + 9], al
movzx eax, byte [rsp + 0x82]
xor al, byte [r12 + 0x1a]
mov byte [r15 + 0xa], al
movzx eax, byte [rsp + 0x81]
xor al, byte [r12 + 0x1b]
mov byte [r15 + 0xb], al
movzx eax, byte [r12 + 0x1c]
xor eax, r13d
mov byte [r15 + 0xc], al
xor sil, byte [r12 + 0x1d]
mov byte [r15 + 0xd], sil
xor bl, byte [r12 + 0x1e]
mov byte [r15 + 0xe], bl
xor r11b, byte [r12 + 0x1f]
mov byte [r15 + 0xf], r11b
call fcn.14014e970
mov rcx, qword [rsp + 0x58]
call fcn.14014e970
mov rcx, qword [rsp + 0x40]
call fcn.14014e970
mov rcx, qword [rsp + 0x48]
call fcn.14014e970
sub r12, 0x10
sub qword [rsp + 0x50], 1
movzx eax, byte [r15 + 0xf]
mov byte [rsp + 0x70], al
jne 0x14014ce60
movzx esi, byte [r15 + 0xc]
movzx ebx, byte [r15]
movzx r11d, byte [r15 + 0xd]
movzx r10d, byte [r15 + 0xa]
mov byte [rsp + 0x82], sil
movzx esi, byte [r15 + 9]
movzx r9d, byte [r15 + 7]
movzx r8d, byte [r15 + 4]
mov byte [rsp + 0x81], sil
movzx esi, byte [r15 + 6]
movzx ecx, byte [r15 + 1]
movzx edx, byte [r15 + 0xe]
movzx eax, byte [r15 + 0xb]
movzx edi, byte [r15 + 8]
mov byte [rsp + 0x68], sil
movzx esi, byte [r15 + 3]
movzx r12d, byte [r15 + 5]
movzx r13d, byte [r15 + 2]
mov byte [rsp + 0x60], sil
mov rsi, rbx
and ebx, 0xf0
add rbx, r14
and esi, 0xf
movzx esi, byte [rbx + rsi]
mov rbx, r11
and r11d, 0xf0
add r11, r14
and ebx, 0xf
movzx ebx, byte [r11 + rbx]
mov r11, r10
and r10d, 0xf0
add r10, r14
and r11d, 0xf
movzx r11d, byte [r10 + r11]
mov r10, r9
and r9d, 0xf0
add r9, r14
and r10d, 0xf
movzx r10d, byte [r9 + r10]
mov r9, r8
and r8d, 0xf0
add r8, r14
and r9d, 0xf
movzx r9d, byte [r8 + r9]
mov r8, rcx
and ecx, 0xf0
mov byte [rsp + 0x87], r10b
and r8d, 0xf
add rcx, r14
movzx ecx, byte [rcx + r8]
mov byte [rsp + 0x86], cl
mov rcx, rdx
and edx, 0xf0
and ecx, 0xf
add rdx, r14
movzx edx, byte [rdx + rcx]
mov rcx, rax
and eax, 0xf0
and ecx, 0xf
add rax, r14
movzx r8d, byte [rax + rcx]
mov rcx, rdi
and edi, 0xf0
mov byte [rsp + 0x85], dl
and ecx, 0xf
lea rdx, [r14 + rdi]
movzx edi, byte [rdx + rcx]
mov rcx, r12
and r12d, 0xf0
mov byte [rsp + 0x84], r8b
and ecx, 0xf
lea rdx, [r14 + r12]
movzx r12d, byte [rdx + rcx]
movzx r10d, byte [rsp + 0x70]
mov rcx, r13
and r13d, 0xf0
movzx r8d, byte [rsp + 0x81]
and ecx, 0xf
lea rdx, [r14 + r13]
mov byte [rsp + 0x81], r9b
movzx r13d, byte [rdx + rcx]
mov rcx, r10
and ecx, 0xf
mov rax, rcx
mov rcx, r10
movzx r10d, byte [rsp + 0x82]
and ecx, 0xf0
mov rdx, rcx
add rdx, r14
movzx ecx, byte [rdx + rax]
mov rax, r10
and r10d, 0xf0
mov rdx, r10
and eax, 0xf
add rdx, r14
mov byte [rsp + 0x83], cl
movzx r10d, byte [rdx + rax]
mov rdx, r8
mov rax, r8
movzx r8d, byte [rsp + 0x68]
and edx, 0xf0
and eax, 0xf
add rdx, r14
mov byte [rsp + 0x82], r10b
movzx r10d, byte [rdx + rax]
mov rax, r8
and r8d, 0xf0
mov rdx, r8
and eax, 0xf
add rdx, r14
movzx r8d, byte [rdx + rax]
movzx edx, byte [rsp + 0x60]
mov rax, rdx
and edx, 0xf0
and eax, 0xf
add rdx, r14
movzx ecx, byte [rdx + rax]
movzx edx, byte [rsp + 0x84]
movzx eax, byte [rsp + 0x85]
shl rdx, 8
or rdx, rax
movzx eax, byte [rsp + 0x86]
shl rdx, 8
or rdx, rax
movzx eax, r9b
movzx r9d, sil
shl rdx, 8
mov qword [rsp + 0x68], r9
movzx r9d, r8b
or rdx, rax
movzx eax, byte [rsp + 0x87]
shl rdx, 8
or rdx, rax
movzx eax, r11b
shl rdx, 8
or rdx, rax
movzx eax, bl
shl rdx, 8
or rdx, rax
movzx eax, cl
shl rax, 8
shl rdx, 8
or rax, r9
movzx r9d, r10b
shl rax, 8
or rax, r9
movzx r9d, byte [rsp + 0x82]
shl rax, 8
or rax, r9
movzx r9d, byte [rsp + 0x83]
shl rax, 8
or rdx, qword [rsp + 0x68]
or rax, r9
movzx r9d, r13b
mov qword [rsp + 0x70], rdx
shl rax, 8
or rax, r9
movzx r9d, r12b
shl rax, 8
or rax, r9
movzx r9d, dil
shl rax, 8
mov rdx, rax
or rdx, r9
mov qword [rsp + 0x78], rdx
mov rdx, qword [rbp + 0x10]
movdqa xmm1, xmmword [rsp + 0x70]
movups xmmword [r15], xmm1
xor sil, byte [rdx + 0x30]
mov byte [r15], sil
xor bl, byte [rdx + 0x31]
mov byte [r15 + 1], bl
xor r11b, byte [rdx + 0x32]
mov byte [r15 + 2], r11b
movzx eax, byte [rsp + 0x87]
xor al, byte [rdx + 0x33]
mov byte [r15 + 3], al
movzx eax, byte [rsp + 0x81]
xor al, byte [rdx + 0x34]
mov byte [r15 + 4], al
movzx eax, byte [rsp + 0x86]
xor al, byte [rdx + 0x35]
mov byte [r15 + 5], al
movzx eax, byte [rsp + 0x85]
xor al, byte [rdx + 0x36]
mov byte [r15 + 6], al
movzx eax, byte [rsp + 0x84]
xor al, byte [rdx + 0x37]
mov byte [r15 + 7], al
xor dil, byte [rdx + 0x38]
mov byte [r15 + 8], dil
xor r12b, byte [rdx + 0x39]
mov byte [r15 + 9], r12b
xor r13b, byte [rdx + 0x3a]
mov byte [r15 + 0xa], r13b
movzx eax, byte [rsp + 0x83]
xor al, byte [rdx + 0x3b]
mov byte [r15 + 0xb], al
movzx eax, byte [rsp + 0x82]
xor al, byte [rdx + 0x3c]
mov byte [r15 + 0xc], al
movzx eax, byte [rdx + 0x3d]
xor eax, r10d
mov byte [r15 + 0xd], al
xor r8b, byte [rdx + 0x3e]
mov byte [r15 + 0xe], r8b
xor cl, byte [rdx + 0x3f]
xor edx, edx
cmp word [rsp + 0x3e], 0
mov byte [r15 + 0xf], cl
jne 0x14014d905
mov rax, qword [rbp + 0x30]
mov rax, qword [rax]
add qword [rsp + 0x88], 0x10
add r15, 0x10
mov rcx, qword [rsp + 0x88]
cmp rcx, rax
jb 0x14014cc78
cmp byte [rsp + 0x3d], 0
je 0x14014d880
mov rdi, qword [rbp + 0x28]
movzx edx, byte [rdi + rax - 1]
lea rcx, [rdx - 1]
cmp rcx, 0xe
ja 0x14014cbcb
cmp rdx, 1
je 0x14014d84b
movzx r8d, byte [rdi + rax - 2]
cmp rcx, r8
je 0x14014d9e6
cmp rdx, 2
je 0x14014cbcb
xor ecx, ecx
mov rsi, rdi
movzx r8d, byte [rsi + rax - 3]
lea r9, [rdx - 2]
cmp r9, r8
je 0x14014d9d7
cmp rdx, 3
je 0x14014cbcb
xor ecx, ecx
movzx r8d, byte [rsi + rax - 4]
lea r9, [rdx - 3]
mov rdi, rsi
cmp r9, r8
je 0x14014da0c
cmp rdx, 4
je 0x14014cbcb
xor ecx, ecx
movzx r8d, byte [rdi + rax - 5]
lea r9, [rdx - 4]
mov rsi, rdi
cmp r9, r8
je 0x14014d9fd
cmp rdx, 5
je 0x14014cbcb
xor ecx, ecx
movzx r8d, byte [rsi + rax - 6]
lea r9, [rdx - 5]
cmp r9, r8
je 0x14014da1b
xor ecx, ecx
cmp rdx, 6
je 0x14014cbcb
mov rsi, qword [rbp + 0x28]
lea r9, [rdx - 6]
movzx r8d, byte [rsi + rax - 7]
cmp r9, r8
je 0x14014da2a
xor ecx, ecx
cmp rdx, 7
je 0x14014cbcb
mov rdi, qword [rbp + 0x28]
lea r9, [rdx - 7]
movzx r8d, byte [rdi + rax - 8]
cmp r9, r8
je 0x14014da48
xor ecx, ecx
cmp rdx, 8
je 0x14014cbcb
mov rsi, qword [rbp + 0x28]
lea r9, [rdx - 8]
movzx r8d, byte [rsi + rax - 9]
cmp r9, r8
je 0x14014da39
xor ecx, ecx
cmp rdx, 9
je 0x14014cbcb
mov rdi, qword [rbp + 0x28]
lea r8, [rdx - 9]
movzx r9d, byte [rdi + rax - 0xa]
cmp r9, r8
je 0x14014da57
xor ecx, ecx
cmp rdx, 0xa
je 0x14014cbcb
mov rsi, qword [rbp + 0x28]
lea r9, [rdx - 0xa]
movzx r8d, byte [rsi + rax - 0xb]
cmp r9, r8
je 0x14014da66
xor ecx, ecx
cmp rdx, 0xb
je 0x14014cbcb
mov rdi, qword [rbp + 0x28]
lea r9, [rdx - 0xb]
movzx r8d, byte [rdi + rax - 0xc]
cmp r9, r8
je 0x14014da97
xor ecx, ecx
cmp rdx, 0xc
je 0x14014cbcb
mov rbx, qword [rbp + 0x28]
lea r9, [rdx - 0xc]
movzx r8d, byte [rbx + rax - 0xd]
cmp r9, r8
je 0x14014da88
xor ecx, ecx
cmp rdx, 0xd
je 0x14014cbcb
mov rsi, qword [rbp + 0x28]
xor r8d, r8d
cmp rdx, 0xe
setne r8b
movzx r9d, byte [rsi + rax - 0xe]
add r8, 1
cmp r8, r9
jne 0x14014cbcb
cmp rdx, 0xf
jne 0x14014d843
cmp byte [rsi + rax - 0xf], 1
jne 0x14014cbcb
test ecx, ecx
je 0x14014cbcb
sub rax, rdx
add rax, qword [rbp + 0x28]
cmp edx, 8
jae 0x14014d9aa
test dl, 4
jne 0x14014da75
test edx, edx
je 0x14014d874
mov byte [rax], 0
test dl, 2
jne 0x14014daa6
mov rax, qword [rbp + 0x30]
sub qword [rax], rdx
nop dword [rax + rax]
xor eax, eax
jmp 0x14014cbd0
mov eax, 2
jmp 0x14014cbd0
mov eax, 3
jmp 0x14014cbd0
mov eax, 6
jmp 0x14014cbd0
test edx, edx
jne 0x14014d631
mov rdx, rax
sub rdx, qword [rsp + 0x88]
cmp rdx, 0xf
ja 0x14014cccb
mov edx, 1
jmp 0x14014d631
test edx, edx
jne 0x14014d900
cmp rax, 0xf
ja 0x14014cccb
nop
mov edx, 1
mov rbx, qword [rsp + 0x30]
xor byte [r15], bl
movzx eax, bh
xor byte [r15 + 1], al
mov rax, rbx
shr rax, 0x10
xor byte [r15 + 2], al
mov rax, rbx
shr rax, 0x18
xor byte [r15 + 3], al
mov rax, rbx
shr rax, 0x20
xor byte [r15 + 4], al
mov rax, rbx
shr rax, 0x28
xor byte [r15 + 5], al
mov rax, rbx
shr rax, 0x30
xor byte [r15 + 6], al
mov rax, rbx
mov rbx, qword [rsp + 0x28]
shr rax, 0x38
xor byte [r15 + 7], al
movzx eax, bh
xor byte [r15 + 9], al
mov rax, rbx
shr rax, 0x10
xor byte [r15 + 0xa], al
mov rax, rbx
shr rax, 0x18
xor byte [r15 + 0xb], al
mov rax, rbx
shr rax, 0x20
xor byte [r15 + 0xc], al
mov rax, rbx
shr rax, 0x28
xor byte [r15 + 0xd], al
mov rax, rbx
xor byte [r15 + 8], bl
shr rax, 0x30
shr rbx, 0x38
xor byte [r15 + 0xe], al
xor byte [r15 + 0xf], bl
jmp 0x14014d62a
lea rdi, [rax + 8]
mov qword [rax], 0
mov qword [rdx + rax - 8], 0
and rdi, 0xfffffffffffffff8
sub rax, rdi
mov rcx, rax
xor eax, eax
add ecx, edx
shr ecx, 3
rep stosq qword [rdi], rax
jmp 0x14014d874
cmp rdx, 3
je 0x14014d843
jmp 0x14014d6b8
cmp rdx, 2
je 0x14014d84b
mov ecx, 1
mov rsi, rdi
jmp 0x14014d699
cmp rdx, 5
je 0x14014d843
jmp 0x14014d6fc
cmp rdx, 4
je 0x14014d843
jmp 0x14014d6da
cmp rdx, 6
jne 0x14014d71b
jmp 0x14014d843
cmp rdx, 7
jne 0x14014d73e
jmp 0x14014d843
cmp rdx, 9
jne 0x14014d784
jmp 0x14014d843
cmp rdx, 8
jne 0x14014d761
jmp 0x14014d843
cmp rdx, 0xa
jne 0x14014d7a7
jmp 0x14014d843
cmp rdx, 0xb
jne 0x14014d7ca
jmp 0x14014d843
mov dword [rax], 0
mov dword [rdx + rax - 4], 0
jmp 0x14014d874
cmp rdx, 0xd
jne 0x14014d810
jmp 0x14014d843
cmp rdx, 0xc
jne 0x14014d7ed
jmp 0x14014d843
mov word [rdx + rax - 2], 0
jmp 0x14014d874