Function at 0x140002c98
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rdx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x2070]
mov eax, 0x2170
call fcn.140004ef0
sub rsp, rax
mov r12d, ecx
mov dword [rsp + 0x20], 0xab288b78
mov dword [rsp + 0x24], 0x6a365911
mov dword [rsp + 0x28], 0xc53e8852
mov rax, qword gs:[0x58]
mov rbx, qword [rax]
mov ecx, 0x334
mov eax, dword [rcx + rbx]
mov edi, 0x460
mov r15d, 1
test r15b, al
jne 0x140002d2c
or eax, r15d
mov dword [rcx + rbx], eax
mov byte [rdi + rbx + 0xc], r15b
movsd xmm0, qword [rsp + 0x20]
movsd qword [rdi + rbx], xmm0
mov eax, dword [rsp + 0x28]
mov dword [rdi + rbx + 8], eax
lea rcx, [0x140005e70]
call fcn.14000452c
nop
lea r14, [rbx + rdi]
xor edi, edi
movabs r13, 0x9592b41c54dfb37
cmp byte [r14 + 0xc], dil
je 0x140002d65
mov r8d, edi
mov cl, r8b
and cl, 7
shl cl, 3
mov rdx, r13
shr rdx, cl
xor byte [r14 + r8], dl
add r8, r15
cmp r8, 0xc
jb 0x140002d45
mov byte [r14 + 0xc], dil
mov dword [rsp + 0x20], 0xab3f9e5c
mov dword [rsp + 0x24], 0x3b6a4724
mov ecx, 0x3d8
mov eax, dword [rcx + rbx]
mov esi, 0x150
test r15b, al
jne 0x140002dac
or eax, r15d
mov dword [rcx + rbx], eax
mov word [rsi + rbx + 8], 0x137
movsd xmm0, qword [rsp + 0x20]
movsd qword [rsi + rbx], xmm0
lea rcx, [0x140005e74]
call fcn.14000452c
nop
lea r10, [rbx + rsi]
cmp byte [r10 + 9], dil
je 0x140002dd9
mov r9, rdi
mov cl, r9b
and cl, 7
shl cl, 3
mov r8, r13
shr r8, cl
xor byte [r10 + r9], r8b
add r9, r15
cmp r9, 9
jb 0x140002db9
mov byte [r10 + 9], dil
mov rcx, r10
call qword [0x1400091b0]
mov rdx, r14
mov rcx, rax
call qword [0x1400091b8]
mov r13, rax
movdqa xmm0, xmmword [0x140006440]
mov word [rsp + 0x58], 0x4e46
mov rax, qword gs:[0x58]
mov rsi, qword [rax]
mov eax, 0x1bc
mov ecx, dword [rax + rsi]
mov ebx, 0x528
test r15b, cl
jne 0x140002e73
or ecx, r15d
mov dword [rax + rsi], ecx
lea rcx, [rbx + rsi]
mov byte [rcx + 0x13], r15b
lea rax, [rcx + 0x12]
lea rdx, [rsp + 0x5a]
cmp rcx, rdx
ja 0x140002e56
lea rdx, [rsp + 0x48]
cmp rax, rdx
jb 0x140002e56
movups xmmword [rcx], xmm0
movzx eax, word [rsp + 0x58]
mov word [rcx + 0x10], ax
mov byte [rcx + 0x12], 0x7f
jmp 0x140002e66
movups xmmword [rcx], xmm0
movzx eax, word [rsp + 0x58]
mov word [rcx + 0x10], ax
mov byte [rcx + 0x12], 0x7f
lea rcx, [0x140005e68]
call fcn.14000452c
nop
lea r14, [rsi + rbx]
movabs r11, 0x8d8f017d7d7f3d23
cmp byte [r14 + 0x13], dil
je 0x140002eaa
mov r8, rdi
mov cl, r8b
and cl, 7
shl cl, 3
mov rdx, r11
shr rdx, cl
xor byte [r14 + r8], dl
add r8, r15
cmp r8, 0x13
jb 0x140002e8a
mov byte [r14 + 0x13], dil
mov dword [rbp + 0x20c8], 0xd1e4e53
mov word [rbp + 0x20cc], 0x114
mov rax, qword gs:[0x58]
mov rsi, qword [rax]
mov ecx, 0x1fc
mov eax, dword [rcx + rsi]
mov ebx, 0x208
test r15b, al
jne 0x140002f12
or eax, r15d
mov dword [rcx + rsi], eax
mov byte [rbx + rsi + 6], r15b
mov eax, dword [rbp + 0x20c8]
mov dword [rbx + rsi], eax
movzx eax, word [rbp + 0x20cc]
mov word [rbx + rsi + 4], ax
lea rcx, [0x140005e6c]
call fcn.14000452c
nop
movabs r11, 0x8d8f017d7d7f3d23
lea r10, [rsi + rbx]
cmp byte [r10 + 6], dil
je 0x140002f3f
mov r9, rdi
mov cl, r9b
and cl, 7
shl cl, 3
mov r8, r11
shr r8, cl
xor byte [r9 + r10], r8b
add r9, r15
cmp r9, 6
jb 0x140002f1f
mov byte [r10 + 6], dil
mov rcx, r10
call qword [0x1400091b0]
mov rdx, r14
mov rcx, rax
call qword [0x1400091b8]
mov r15, rax
movdqa xmm0, xmmword [0x140006430]
mov dword [rsp + 0x40], 0x4a572eae
mov rax, qword gs:[0x58]
mov rsi, qword [rax]
mov ecx, 0x2c8
mov eax, dword [rcx + rsi]
mov ebx, 0x5a8
test al, 1
jne 0x140002fd5
or eax, 1
mov dword [rcx + rsi], eax
lea rcx, [rbx + rsi]
mov byte [rcx + 0x15], 1
lea rax, [rcx + 0x14]
lea rdx, [rsp + 0x44]
cmp rcx, rdx
ja 0x140002fba
lea rdx, [rsp + 0x30]
cmp rax, rdx
jb 0x140002fba
movups xmmword [rcx], xmm0
mov eax, dword [rsp + 0x40]
mov dword [rcx + 0x10], eax
mov byte [rcx + 0x14], 0x4f
jmp 0x140002fc8
movups xmmword [rcx], xmm0
mov eax, dword [rsp + 0x40]
mov dword [rcx + 0x10], eax
mov byte [rcx + 0x14], 0x4f
lea rcx, [0x140005e60]
call fcn.14000452c
nop
lea r14, [rsi + rbx]
movabs r11, 0xb129a74f0b2f6bcb
cmp byte [r14 + 0x15], dil
je 0x14000300c
mov r8, rdi
mov cl, r8b
and cl, 7
shl cl, 3
mov rdx, r11
shr rdx, cl
xor byte [r8 + r14], dl
inc r8
cmp r8, 0x15
jb 0x140002fec
mov byte [r14 + 0x15], dil
mov dword [rbp + 0x20c8], 0x7b4e18bb
mov word [rbp + 0x20cc], 0xa726
mov rax, qword gs:[0x58]
mov rsi, qword [rax]
mov ecx, 0x2fc
mov eax, dword [rcx + rsi]
mov ebx, 0x200
test al, 1
jne 0x140003073
or eax, 1
mov dword [rcx + rsi], eax
mov byte [rbx + rsi + 6], 1
mov eax, dword [rbp + 0x20c8]
mov dword [rbx + rsi], eax
movzx eax, word [rbp + 0x20cc]
mov word [rbx + rsi + 4], ax
lea rcx, [0x140005e64]
call fcn.14000452c
nop
movabs r11, 0xb129a74f0b2f6bcb
lea r10, [rsi + rbx]
cmp byte [r10 + 6], dil
je 0x1400030a0
mov r9, rdi
mov cl, r9b
and cl, 7
shl cl, 3
mov r8, r11
shr r8, cl
xor byte [r9 + r10], r8b
inc r9
cmp r9, 6
jb 0x140003080
mov byte [r10 + 6], dil
mov rcx, r10
call qword [0x1400091b0]
mov rdx, r14
mov rcx, rax
call qword [0x1400091b8]
mov r14, rax
mov qword [rbp + 0x20c8], rdi
mov r8d, r12d
xor edx, edx
mov ecx, 0x410
call r13
mov rbx, rax
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rbp + 0x20c8], rbx
mov qword [rsp + 0x20], rdi
lea rcx, [rsp + 0x20]
call fcn.140001370
test rbx, rbx
je 0x140003179
lea r9, [rbp + 0x20c0]
mov r8d, 0x2000
lea rdx, [rbp + 0x70]
mov rcx, rbx
call r15
test eax, eax
je 0x140003179
mov rsi, rdi
mov eax, dword [rbp + 0x20c0]
test rax, 0xfffffffffffffff8
jbe 0x140003179
mov r15, qword [rbp + 0x20b8]
mov r9d, 0x104
lea r8, [rsp + 0x60]
mov rdx, qword [rbp + rsi*8 + 0x70]
mov rcx, rbx
call r14
test eax, eax
je 0x140003155
mov rdx, r15
lea rcx, [rsp + 0x60]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strcmp]
test eax, eax
je 0x140003169
inc rsi
mov eax, dword [rbp + 0x20c0]
shr rax, 3
cmp rsi, rax
jb 0x140003129
jmp 0x140003179
mov rdx, qword [rbp + rsi*8 + 0x70]
mov ecx, r12d
call fcn.1400021ac
mov dil, 1
lea rcx, [rbp + 0x20c8]
call fcn.140001370
mov al, dil
mov rbx, qword [rsp + 0x21b0]
add rsp, 0x2170
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret