Function at 0x14048d4d0
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x48
mov r13d, r9d
mov r15d, dword [rsp + 0xb0]
test ecx, ecx
mov dword [rsp + 0x34], r9d
je 0x14048d535
test edx, edx
je 0x14048d599
movzx eax, byte [0x14067b02b]
cmp al, 7
je 0x14048d785
mov cl, 0x42
nop dword [rax]
mov al, 0x67
lock cmpxchg byte [0x14067b02b], cl
je 0x14048d6b6
mov edx, r15d
xor dl, 0xaa
add dl, byte [0x14067c4b4]
cmp al, dl
jne 0x14048d510
jmp 0x14048d785
mov eax, r13d
xor eax, 0x5ccba715
mov r8d, r15d
xor r8d, 0x954ee5cf
add r8d, dword [0x14067c4b0]
xor r8d, r15d
mov ecx, edx
mov edx, eax
call fcn.140178950
test al, 1
je 0x14048d5f1
movzx eax, byte [0x14067b512]
cmp al, 0x20
je 0x14048d90d
mov cl, 0xc6
nop word cs:[rax + rax]
mov al, 3
lock cmpxchg byte [0x14067b512], cl
je 0x14048d884
cmp al, 0x20
jne 0x14048d580
jmp 0x14048d90d
movzx eax, byte [0x14067aefd]
cmp al, 0x83
je 0x14048d878
mov sil, 0x3a
mov ebx, r13d
xor ebx, 0xe7a8926e
mov ebp, r15d
xor ebp, 0xf7088ed0
nop dword [rax]
mov al, 0x7e
lock cmpxchg byte [0x14067aefd], sil
mov r14d, eax
sete dl
mov ecx, eax
mov r8d, ebx
mov r9d, ebp
call fcn.140237bf0
test al, 1
jne 0x14048d791
cmp r14b, 0x83
jne 0x14048d5c0
jmp 0x14048d878
movzx eax, byte [0x14067ac88]
cmp al, 0x20
je 0x14048d9ab
mov ebx, r13d
xor ebx, 0x360a87f4
mov edi, r15d
xor edi, 0xcc63601d
mov eax, r15d
not eax
mov ecx, eax
and ecx, 0x7ffe1009
mov r12d, r15d
and r12d, 0x8001eff6
or r12d, ecx
and eax, 0x27c17789
mov ebp, r15d
and ebp, 0xd83e8876
or ebp, eax
nop dword [rax]
movzx ecx, byte [0x14067c4b4]
mov eax, r15d
xor al, 0x43
add al, cl
mov edx, r15d
xor dl, 0x12
add dl, cl
lock cmpxchg byte [0x14067ac88], dl
mov r14d, eax
sete dl
mov eax, dword [0x14067c4b0]
add eax, edi
mov r9d, eax
xor r9d, eax
not r9d
and r9d, r15d
xor r9d, eax
mov ecx, r14d
mov r8d, ebx
call fcn.140237bf0
test al, 1
jne 0x14048d919
mov eax, dword [0x14067c4b0]
add eax, r12d
mov edx, eax
xor edx, eax
not edx
and edx, r13d
xor edx, eax
mov ecx, r14d
mov r8d, ebp
call fcn.14048e9f0
test al, 1
je 0x14048d640
jmp 0x14048d9ab
xor eax, eax
xor r13d, 0xc90c302b
mov dword [rsp + 0x34], r13d
mov ebp, r15d
not ebp
mov ecx, ebp
and ecx, 0xea13c964
mov r13d, r15d
and r13d, 0x15ec369b
or r13d, ecx
mov edi, r15d
xor edi, 0x8f4ff3c0
mov ecx, ebp
and ecx, 0x70b00c3f
or edi, ecx
not edi
or edi, ecx
mov ebx, edi
not ebx
nop dword [rax]
movsxd r14, eax
lea r12, [0x14067b020]
movzx esi, byte [r14 + r12]
lea rax, [0x14055c4c0]
xor sil, byte [r14 + rax]
mov eax, dword [0x14067c4b0]
mov ecx, r13d
xor ecx, eax
and eax, r13d
lea r9d, [rcx + rax*2]
not r9d
mov eax, ebp
xor eax, r9d
and eax, ebp
and r9d, r15d
or r9d, eax
mov ecx, r14d
lea rdx, [rsp + 0x38]
mov r8d, dword [rsp + 0x34]
call fcn.1400a9970
mov rax, qword [rsp + 0x38]
mov byte [rax + r12], sil
mov eax, dword [0x14067c4b0]
mov ecx, edi
xor ecx, eax
not eax
and eax, ebx
or eax, ecx
not eax
lea eax, [rcx + rax*2]
mov ecx, r14d
xor ecx, eax
and r14d, eax
lea eax, [rcx + r14*2]
cmp eax, 0xb
jl 0x14048d700
mov al, 7
xchg byte [0x14067b02b], al
lea rax, [0x14067b020]
jmp 0x14048d9b2
xor ebx, ebx
mov eax, r15d
not eax
mov ecx, eax
and ecx, 0xea8d67de
mov edx, r15d
and edx, 0x15729821
or edx, ecx
mov dword [rsp + 0x44], edx
mov ecx, r13d
not ecx
and eax, 0x24b5edd1
mov ebp, r15d
xor ebp, 0x24b5edd1
and ebp, r15d
or ebp, eax
lea r14, [rsp + 0x38]
mov dword [rsp + 0x40], ecx
mov eax, ecx
and eax, 0x1d3dfc4c
mov edi, r13d
xor edi, 0xe2c203b3
or edi, eax
not edi
or edi, eax
mov r12d, r15d
xor r12d, 0x402f3195
mov esi, r13d
xor esi, 0xcb59043d
xor r15d, 0x8d361b6a
mov eax, dword [0x14067c4b0]
add eax, dword [rsp + 0x44]
mov r8d, dword [rsp + 0x40]
xor r8d, r13d
and r8d, eax
xor r8d, r13d
mov ecx, ebx
mov rdx, r14
mov r9d, ebp
call fcn.14048cc20
movzx r13d, byte [rsp + 0x38]
mov ecx, ebx
mov rdx, r14
mov r8d, edi
mov r9d, r12d
call fcn.1400a9970
mov rax, qword [rsp + 0x38]
lea rcx, [0x14055c3b0]
movzx edx, byte [rax + rcx]
mov dword [rsp + 0x28], r15d
mov dword [rsp + 0x20], esi
mov ecx, r13d
mov r13d, dword [rsp + 0x34]
mov r8d, ebx
mov r9, r14
call fcn.14048e950
mov ebx, dword [rsp + 0x38]
cmp ebx, 0xd
jl 0x14048d800
mov al, 0x83
xchg byte [0x14067aefd], al
lea rax, [0x14067aef0]
jmp 0x14048d9b2
xor r8d, r8d
lea rax, [0x14067b510]
lea rcx, [0x14055c970]
mov edx, r15d
xor edx, 0x70b00c3f
nop
movsxd r8, r8d
movzx r9d, byte [r8 + rcx]
add byte [r8 + rax], r9b
mov r9d, dword [0x14067c4b0]
add r9d, edx
mov r10d, r8d
xor r10d, r9d
not r8d
not r9d
and r9d, r8d
or r9d, r10d
not r9d
add r9d, r9d
mov r8d, r10d
xor r8d, r9d
and r9d, r10d
lea r8d, [r8 + r9*2]
cmp r8d, 2
jl 0x14048d8a0
xor r13d, 0x59f1dcd2
mov eax, r15d
not eax
and eax, 0xe4a3759
xor r15d, 0xf1b5c8a6
or r15d, eax
not r15d
or r15d, eax
mov ecx, r13d
mov edx, r15d
call fcn.14048d2a0
lea rax, [0x14067b510]
jmp 0x14048d9b2
xor ebx, ebx
mov ebp, r13d
xor ebp, 0x50052812
mov r14d, r15d
xor r14d, 0x8773f728
lea rdi, [rsp + 0x38]
mov esi, r15d
xor esi, 0xc254fb6d
xor r15d, 0xaccdad55
lea r12, [rsp + 0x33]
lea r13, [0x14067ac80]
nop
mov rcx, rbx
mov rdx, rdi
mov r8d, ebp
mov r9d, r14d
call fcn.14048f5a0
movzx edx, byte [rsp + 0x38]
mov eax, dword [0x14067c4b0]
add eax, esi
xor eax, dword [rsp + 0x34]
mov dword [rsp + 0x28], r15d
mov dword [rsp + 0x20], eax
mov ecx, ebx
mov r8, r12
mov r9, rdi
call fcn.14048d2e0
movzx eax, byte [rsp + 0x33]
mov rcx, qword [rsp + 0x38]
mov byte [rcx + r13], al
lea eax, [rbx + 1]
cmp eax, 7
jg 0x14048d9a3
inc rbx
jmp 0x14048d950
mov al, 0x20
xchg byte [0x14067ac88], al
lea rax, [0x14067ac80]
add rsp, 0x48
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret