Function at 0x140002b40
Capabilities:
Encode data using xor
Hash data using fnv
Print debug messages

Disassembly:
push r14
sub rsp, 0x30
lea rcx, [0x1400042c0]
call fcn.140003320
mov r14, rax
test rax, rax
jne 0x140002b6e
lea rcx, [0x1400042d0]
add rsp, 0x30
pop r14
jmp qword [sym.imp.ntoskrnl.exe_DbgPrint]
movsxd rcx, dword [rax + 0x3c]
xor r10d, r10d
mov qword [rsp + 0x40], rbx
lea rbx, [r14 + 0x18]
mov qword [rsp + 0x48], rbp
add rbx, rcx
mov qword [rsp + 0x50], rsi
xor esi, esi
movzx eax, word [rcx + rax + 0x14]
movzx ebp, word [rcx + r14 + 6]
add rbx, rax
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], r15
test ebp, ebp
je 0x140002d1c
lea r15, [0x140004300]
cmp dword [rbx], 0x45474150
je 0x140002bca
cmp dword [rbx], 0x7865742e
jne 0x140002c3c
cmp byte [rbx + 4], 0x74
jne 0x140002c3c
mov edi, dword [rbx + 0xc]
mov rax, 0xffffffffffffffff
add rdi, r14
nop word [rax + rax]
inc rax
cmp byte [r15 + rax], 0
jne 0x140002be0
mov r11d, dword [rbx + 8]
sub r11d, eax
xor r9d, r9d
nop dword [rax]
nop dword [rax + rax]
mov r10d, r9d
lea rdx, [0x140004310]
add r10, rdi
mov al, 0x78
mov r8, r10
mov rcx, r15
sub r8, r15
cmp al, 0x78
jne 0x140002c29
movzx eax, byte [rdx]
cmp byte [r8 + rcx], al
jne 0x140002d08
movzx eax, byte [rcx + 1]
inc rcx
inc rdx
test al, al
jne 0x140002c18
test r10, r10
jne 0x140002c53
inc esi
add rbx, 0x28
cmp esi, ebp
jb 0x140002bb4
test r10, r10
je 0x140002d1c
movsxd rcx, dword [r10 + 3]
lea r8, [r10 + 7]
add r8, rcx
lea r9, [r10 + 0xa]
mov r10d, 3
movzx eax, byte [r8]
xor eax, 0x4b9ace2f
imul edx, eax, 0x1000193
add r9, rcx
nop word [rax + rax]
movzx eax, byte [r9 - 2]
lea r9, [r9 + 5]
xor eax, edx
imul ecx, eax, 0x1000193
movzx eax, byte [r9 - 6]
xor ecx, eax
movzx eax, byte [r9 - 5]
imul edx, ecx, 0x1000193
xor edx, eax
movzx eax, byte [r9 - 4]
imul ecx, edx, 0x1000193
xor ecx, eax
movzx eax, byte [r9 - 3]
imul edx, ecx, 0x1000193
xor edx, eax
imul edx, edx, 0x1000193
sub r10, 1
jne 0x140002c80
mov ecx, dword [0x140006348]
xor ecx, edx
lea edx, [r10 + 0x10]
nop word [rax + rax]
imul ecx, ecx, 0x41c64e6d
lea r8, [r8 + 1]
add ecx, 0x3039
mov eax, ecx
shr eax, 0x10
xor byte [r8 - 1], al
sub rdx, 1
jne 0x140002ce0
lea rcx, [0x140004320]
jmp 0x140002d23
inc r9d
cmp r9d, r11d
jbe 0x140002c00
xor r10d, r10d
jmp 0x140002c3c
lea rcx, [0x140004350]
call qword [sym.imp.ntoskrnl.exe_DbgPrint]
movsxd rcx, dword [r14 + 0x3c]
lea rbx, [r14 + 0x18]
add rbx, rcx
xor r10d, r10d
xor esi, esi
movzx eax, word [rcx + r14 + 0x14]
movzx ebp, word [rcx + r14 + 6]
add rbx, rax
test ebp, ebp
je 0x140002e0d
lea r15, [0x140004390]
cmp dword [rbx], 0x45474150
je 0x140002d6d
cmp dword [rbx], 0x7865742e
jne 0x140002dd9
cmp byte [rbx + 4], 0x74
jne 0x140002dd9
mov edi, dword [rbx + 0xc]
mov rax, 0xffffffffffffffff
add rdi, r14
nop word [rax + rax]
inc rax
cmp byte [r15 + rax], 0
jne 0x140002d80
mov r11d, dword [rbx + 8]
sub r11d, eax
xor r9d, r9d
nop dword [rax]
nop dword [rax + rax]
mov r10d, r9d
lea rdx, [0x1400043a0]
add r10, rdi
mov cl, 0x78
mov r8, r10
mov rax, r15
sub r8, r15
cmp cl, 0x78
jne 0x140002dc6
movzx ecx, byte [rdx]
cmp byte [r8 + rax], cl
jne 0x140002e00
movzx ecx, byte [rax + 1]
inc rax
inc rdx
test cl, cl
jne 0x140002db8
test r10, r10
jne 0x140002dec
inc esi
add rbx, 0x28
cmp esi, ebp
jb 0x140002d57
test r10, r10
je 0x140002e0d
movsxd rax, dword [r10 + 3]
xor ecx, ecx
mov qword [rax + r10 + 7], rcx
lea rcx, [0x1400043b0]
jmp 0x140002e14
inc r9d
cmp r9d, r11d
jbe 0x140002da0
xor r10d, r10d
jmp 0x140002dd9
lea rcx, [0x1400043e0]
mov rdi, qword [rsp + 0x28]
mov rsi, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x40]
mov r15, qword [rsp + 0x20]
add rsp, 0x30
pop r14
jmp qword [sym.imp.ntoskrnl.exe_DbgPrint]