Function at 0x140023dd0
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rbx
push rsi
push rdi
lea rbp, [rsp - 0x3f]
sub rsp, 0x98
mov byte [rbp + 0x67], 0x50
mov byte [rbp + 0x68], 0x47
mov byte [rbp + 0x69], 0x69
mov byte [rbp + 0x6a], 0x70
mov byte [rbp + 0x6b], 0x80
mov byte [rbp + 0x6c], 0
movzx eax, byte [rbp + 0x67]
xor esi, esi
mov ecx, esi
movzx eax, byte [rbp + rcx + 0x67]
sub al, 0xd
mov byte [rbp + rcx + 0x67], al
inc rcx
cmp rcx, 5
jb 0x140023e01
mov qword [rbp - 0x11], rsi
mov qword [rbp - 1], rsi
mov qword [rbp + 7], 0xf
mov byte [rbp - 0x11], sil
lea rax, [rbp + 0x67]
mov rbx, 0xffffffffffffffff
mov r8, rbx
inc r8
cmp byte [rax + r8], sil
jne 0x140023e37
lea rdx, [rbp + 0x67]
lea rcx, [rbp - 0x11]
call fcn.1400078f0
nop
lea rcx, [rbp - 0x11]
cmp qword [rbp + 7], 0x10
cmovae rcx, qword [rbp - 0x11]
call qword [0x1400c8080]
cmp eax, 0xffffffff
je 0x140023e70
test al, 0x10
je 0x140023e70
mov dil, 1
jmp 0x140023e73
xor dil, dil
mov rdx, qword [rbp + 7]
cmp rdx, 0x10
jb 0x140023eae
inc rdx
mov rcx, qword [rbp - 0x11]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140023ea9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400240be
call fcn.140054b54
mov qword [rbp - 1], rsi
mov qword [rbp + 7], 0xf
mov byte [rbp - 0x11], 0
test dil, dil
je 0x1400240b2
mov dword [0x1400c7fec], 1
call qword [sym.imp.KERNEL32.dll_AllocConsole]
mov qword [rbp - 0x39], rsi
mov dword [rbp + 0x77], 0x74
mov eax, dword [rbp + 0x77]
xor al, 0x77
mov byte [rbp + 0x7b], al
xor eax, eax
mov byte [rbp + 0x7c], al
movzx eax, byte [rbp + 0x7b]
movzx eax, byte [rbp + 0x7b]
mov ecx, dword [rbp + 0x77]
xor cl, al
mov byte [rbp + 0x7b], cl
mov byte [rbp + 0x7c], 0
mov dword [rbp - 0x29], 0x54
mov eax, dword [rbp - 0x29]
xor al, 0x43
mov byte [rbp - 0x25], al
mov eax, dword [rbp - 0x29]
inc al
xor al, 0x4f
mov byte [rbp - 0x24], al
mov eax, dword [rbp - 0x29]
add al, 2
xor al, 0x4e
mov byte [rbp - 0x23], al
mov eax, dword [rbp - 0x29]
add al, 3
xor al, 0x4f
mov byte [rbp - 0x22], al
mov eax, dword [rbp - 0x29]
add al, 4
xor al, 0x55
mov byte [rbp - 0x21], al
mov eax, dword [rbp - 0x29]
add al, 5
xor al, 0x54
mov byte [rbp - 0x20], al
mov eax, dword [rbp - 0x29]
add al, 6
xor al, 0x24
mov byte [rbp - 0x1f], al
xor eax, eax
mov byte [rbp - 0x1e], al
movzx eax, byte [rbp - 0x25]
mov r8, rsi
nop word [rax + rax]
movzx eax, byte [rbp + r8 - 0x25]
mov edx, dword [rbp - 0x29]
add dl, r8b
xor dl, al
mov byte [rbp + r8 - 0x25], dl
inc r8
cmp r8, 7
jb 0x140023f60
mov byte [rbp - 0x1e], 0
mov ecx, 1
call fcn.14005d710
mov r9, rax
lea r8, [rbp + 0x7b]
lea rdx, [rbp - 0x25]
lea rcx, [rbp - 0x39]
call fcn.140061544
mov dword [rbp + 0x7f], 0x3a
mov byte [rbp + 0x83], 0x48
xor eax, eax
mov byte [rbp + 0x84], al
movzx eax, byte [rbp + 0x83]
movzx eax, byte [rbp + 0x83]
mov ecx, dword [rbp + 0x7f]
xor cl, al
mov byte [rbp + 0x83], cl
mov byte [rbp + 0x84], 0
mov dword [rbp - 0x1d], 0x60
mov byte [rbp - 0x19], 0x23
mov byte [rbp - 0x18], 0x2f
mov byte [rbp - 0x17], 0x2e
mov byte [rbp - 0x16], 0x29
mov byte [rbp - 0x15], 0x2e
mov byte [rbp - 0x14], 0x44
xor eax, eax
mov byte [rbp - 0x13], al
movzx eax, byte [rbp - 0x19]
mov rdx, rsi
nop
movzx eax, byte [rbp + rdx - 0x19]
mov ecx, dword [rbp - 0x1d]
xor cl, al
mov byte [rbp + rdx - 0x19], cl
inc rdx
cmp rdx, 6
jb 0x140024000
mov byte [rbp - 0x13], 0
xor ecx, ecx
call fcn.14005d710
mov r9, rax
lea r8, [rbp + 0x83]
lea rdx, [rbp - 0x19]
lea rcx, [rbp - 0x39]
call fcn.140061544
mov byte [rbp + 0x6f], 0x45
mov byte [rbp + 0x70], 0x46
mov byte [rbp + 0x71], 0x43
mov byte [rbp + 0x72], 0x56
mov byte [rbp + 0x73], 0x48
mov byte [rbp + 0x74], 0
movzx eax, byte [rbp + 0x6f]
mov rcx, rsi
nop dword [rax + rax]
movzx eax, byte [rbp + rcx + 0x6f]
dec al
mov byte [rbp + rcx + 0x6f], al
inc rcx
cmp rcx, 5
jb 0x140024060
mov qword [rbp + 0xf], rsi
mov qword [rbp + 0x1f], rsi
mov qword [rbp + 0x27], 0xf
lea rax, [rbp + 0x6f]
nop dword [rax + rax]
inc rbx
cmp byte [rax + rbx], 0
jne 0x140024090
mov r8, rbx
lea rdx, [rbp + 0x6f]
lea rcx, [rbp + 0xf]
call fcn.1400078f0
lea rcx, [rbp + 0xf]
call fcn.14001b970
add rsp, 0x98
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.14005afd0
int3