Function at 0x14003c0d2
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x98
mov qword [rsp + 0x58], rdx
mov qword [rsp + 0x38], rcx
xorps xmm0, xmm0
movaps xmmword [rsp + 0x80], xmm0
movaps xmmword [rsp + 0x70], xmm0
movaps xmmword [rsp + 0x60], xmm0
xor eax, eax
lea rcx, [0x1400f0540]
movsxd rdx, dword [rax + rcx]
xor dword [rsp + rdx*4 + 0x60], 0x78c104ba
add rax, 4
cmp rax, 0x2c
jne 0x14003c10d
cmp qword [rsp + 0x38], 0
mov eax, 0x6b0c795f
mov ecx, 0x47eed8a
cmove ecx, eax
mov dword [rsp + 0x4c], ecx
mov eax, 0x775b11f8
xor ecx, ecx
mov qword [rsp + 0x50], rcx
mov ebp, 0x2fc64c87
lea r14, str._b_t_n_v
lea r13, [0x1400f041c]
lea r12, [0x1400f0510]
xor esi, esi
xor edi, edi
cmp eax, 0x5fcc2876
jle 0x14003c1c3
cmp eax, 0x771e161a
jle 0x14003c207
cmp eax, 0x771e161b
je 0x14003c29e
cmp eax, 0x7cbfe930
je 0x14003c2d8
cmp eax, 0x775b11f8
jne 0x14003c164
cmp byte [rsp + 0x50], 0
jne 0x14003c1b2
xor eax, eax
movsxd rcx, dword [rax + r12]
xor dword [rsp + rcx*4 + 0x60], 0x7a21c57f
add rax, 4
cmp rax, 0x28
jne 0x14003c19c
mov eax, dword [rsp + 0x60]
xor eax, dword [rsp + 0x4c]
mov cl, 1
mov qword [rsp + 0x50], rcx
jmp 0x14003c164
cmp eax, 0x23b1fc5e
jle 0x14003c22d
cmp eax, 0x23b1fc5f
je 0x14003c354
cmp eax, 0x2529ff56
je 0x14003c367
cmp eax, 0x5c59b6c3
jne 0x14003c164
mov rcx, qword [rsp + 0x40]
xor edx, edx
movabs r8, 0x7fffffffffffffff
call fcn.14001c234
mov eax, dword [rsp + 0x74]
jmp 0x14003c221
cmp eax, 0x5fcc2877
je 0x14003c37e
cmp eax, 0x69603052
jne 0x14003c3ae
mov eax, dword [rsp + 0x70]
mov ecx, 0x28158bd0
xor eax, ecx
jmp 0x14003c164
cmp eax, 0x13cd7de5
je 0x14003c396
cmp eax, 0x1b98f6ac
jne 0x14003c164
mov rcx, qword [rsp + 0x40]
call fcn.14003aaf6
mov rbx, rax
mov rcx, qword [rsp + 0x58]
call fcn.14003a418
mov ebp, eax
mov rcx, rbx
call fcn.14003a82a
mov ecx, dword [rsp + 0x34]
mov dword [rsp + 0x28], ecx
mov qword [rsp + 0x20], rax
xor r15d, r15d
mov ecx, 0xfde9
xor edx, edx
mov r8, qword [rsp + 0x38]
mov r9d, ebp
mov ebp, 0x2fc64c87
call qword [0x1401c6f98]
mov eax, dword [rsp + 0x78]
mov ecx, 0x44936b67
xor eax, ecx
jmp 0x14003c164
test dil, dil
jne 0x14003c2bb
xor eax, eax
movsxd rcx, dword [rax + r14]
xor dword [rsp + rcx*4 + 0x60], 0xe97711d
add rax, 4
cmp rax, 0x10
jne 0x14003c2a5
cmp r15d, 2
mov eax, 0x5d2ce9b2
mov ecx, 0x27c93e93
cmovl eax, ecx
xor eax, dword [rsp + 0x7c]
mov dil, 1
jmp 0x14003c164
mov rcx, qword [rsp + 0x58]
call fcn.14003a418
mov dword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
mov ecx, 0xfde9
xor edx, edx
mov r8, qword [rsp + 0x38]
mov r9d, eax
call qword [0x1401c6f98]
mov dword [rsp + 0x34], eax
movsxd rax, dword [rsp + 0x34]
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
test sil, sil
jne 0x14003c338
xor ecx, ecx
movsxd rdx, dword [rcx + r13]
xor dword [rsp + rdx*4 + 0x60], 0x316dbcb9
add rcx, 4
cmp rcx, 0xc
jne 0x14003c322
test rax, rax
mov eax, 0x6b80f197
mov ecx, 0x5eb97706
cmovs eax, ecx
xor eax, dword [rsp + 0x6c]
mov sil, 1
jmp 0x14003c164
mov eax, dword [rsp + 0x88]
mov ecx, 0x6e37efaa
xor eax, ecx
jmp 0x14003c164
test r15d, r15d
mov eax, 0x6e37efaa
cmove eax, ebp
xor eax, dword [rsp + 0x84]
jmp 0x14003c164
cmp r15d, 2
mov eax, 0x6e37efaa
cmove eax, ebp
xor eax, dword [rsp + 0x80]
jmp 0x14003c164
mov eax, dword [rsp + 0x68]
mov ecx, 0x75fed7de
xor eax, ecx
mov r15d, 2
xor ebx, ebx
jmp 0x14003c164
cmp eax, 0x62405f72
jne 0x14003c164
mov rax, rbx
add rsp, 0x98
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret