Function at 0x14033c560
Capabilities:
Encode data using xor

Disassembly:
push rsi
push rdi
push rbp
push rbx
test ecx, ecx
je 0x14033c608
mov eax, 0x61ee141d
xor ecx, ecx
nop word cs:[rax + rax]
mov r8d, dword [0x140578540]
lea r9d, [r8 - 1]
imul r9d, r8d
test r9b, 1
jne 0x14033c599
test cl, cl
je 0x14033c5b0
mov r8d, dword [0x140578540]
lea r9d, [r8 - 1]
imul r9d, r8d
test r9b, 1
jne 0x14033c580
jmp 0x14033c595
add eax, dword [0x1405548f0]
cmp edx, eax
jne 0x14033c653
movzx eax, byte [0x140554325]
cmp al, 0xf4
je 0x14033c7a2
mov cl, 0xef
xor edx, edx
nop word cs:[rax + rax]
mov al, 0x9f
lock cmpxchg byte [0x140554325], cl
je 0x14033c739
test dl, dl
mov r8d, dword [0x140578544]
cmp r8d, 0x1e
jg 0x14033c5f2
cmp al, 0xf4
jne 0x14033c5e0
jmp 0x14033c7a2
test edx, edx
je 0x14033c71f
movzx eax, byte [0x1405543c9]
cmp al, 0xe2
je 0x14033c9db
mov cl, 0xa5
nop word cs:[rax + rax]
mov al, 0x5b
lock cmpxchg byte [0x1405543c9], cl
je 0x14033c757
movzx edx, byte [0x140554900]
add dl, 0x77
cmp al, dl
jne 0x14033c630
jmp 0x14033c9db
movzx eax, byte [0x140554300]
nop word [rax + rax]
cmp al, 0xe8
je 0x14033cae5
movzx ecx, byte [0x140554900]
lea eax, [rcx - 0x5d]
add cl, 0x56
lock cmpxchg byte [0x140554300], cl
jne 0x14033c660
xor eax, eax
lea rcx, [0x1405542f0]
lea rdx, [0x14045bc60]
nop
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
lea r8d, [rax + 1]
cmp r8d, 0xf
jg 0x14033c6b0
inc rax
jmp 0x14033c690
mov eax, dword [0x140578540]
mov ecx, dword [0x1405548f0]
mov edx, eax
sub edx, ecx
add edx, 0x9e11ebe2
imul edx, eax
and edx, 1
add ecx, 0x61ee141d
cmp edx, ecx
je 0x14033c6e1
mov eax, dword [0x140578544]
cmp eax, 0x43
jge 0x14033c6b0
mov eax, dword [0x140578544]
cmp eax, 0x24
jg 0x14033c6d6
mov eax, dword [0x1405548f0]
lea ecx, [rax + 0x61ee141e]
lea rdx, [fcn.14033c560]
add edx, edx
add edx, 0x19c0
xor ecx, edx
not ecx
and ecx, edx
add eax, 0x61ee141d
cmp ecx, eax
jne 0x14033cad0
jmp 0x14033cab6
mov eax, dword [0x140578540]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
jne 0x14033c800
jmp 0x14033c7ec
mov eax, dword [0x140578544]
mov ecx, 0x61ee1469
add ecx, dword [0x1405548f0]
cmp eax, ecx
jge 0x14033ca10
jmp 0x14033ca00
xor eax, eax
lea rcx, [0x1405543c0]
lea rdx, [0x14045bd20]
nop word [rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
lea r8d, [rax + 1]
cmp r8d, 8
jg 0x14033c788
inc rax
jmp 0x14033c770
mov eax, dword [0x140578540]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
jne 0x14033c9ea
jmp 0x14033c9e4
mov eax, dword [0x140578540]
nop dword [rax + rax]
mov eax, dword [0x140578540]
mov ecx, dword [0x1405548f0]
mov edx, eax
sub edx, ecx
add edx, 0xd3e4961a
imul edx, eax
and edx, 1
mov eax, ecx
xor eax, 0x61ee141d
and ecx, 0x61ee141d
lea eax, [rax + rcx*2]
cmp edx, eax
jne 0x14033c7b0
lea rax, [0x140554310]
jmp 0x14033c9d6
movzx eax, byte [0x140554363]
mov ecx, dword [0x140578544]
cmp ecx, 0x33
jl 0x14033c833
nop
movzx eax, byte [0x140554363]
mov ecx, dword [0x140578540]
mov r8d, dword [0x1405548f0]
mov eax, ecx
sub eax, r8d
add eax, 0x9e11ebe2
imul eax, ecx
add r8d, 0x61ee141f
xor edx, edx
div r8d
test edx, edx
jne 0x14033c800
jmp 0x14033c7ec
cmp al, 0xc2
je 0x14033c860
mov cl, 0x4e
nop dword [rax]
mov al, 0x88
lock cmpxchg byte [0x140554363], cl
je 0x14033c87d
movzx edx, byte [0x140554900]
add dl, 0x57
cmp al, dl
jne 0x14033c840
nop word [rax + rax]
mov eax, dword [0x140578540]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
jne 0x14033c860
lea rax, [0x140554350]
jmp 0x14033c9d6
xor eax, eax
lea rdx, [0x140554350]
lea r8, [0x14045bcb0]
mov r9d, 0x61ee1430
lea rcx, [fcn.14033c560]
lea r10d, [rcx + rcx]
add r10d, 0x2580
mov r11d, r10d
not r11d
jmp 0x14033c8bf
inc eax
mov ecx, dword [0x1405548f0]
add ecx, r9d
cmp eax, ecx
jge 0x14033c929
mov ecx, dword [0x140578544]
movsxd rsi, eax
cmp ecx, 0x25
jg 0x14033c8e0
nop dword [rax]
movzx ecx, byte [rsi + r8]
add byte [rsi + rdx], cl
test r11d, r10d
je 0x14033c8b0
nop dword [rax]
movzx ebx, byte [rsi + rdx]
movzx ecx, byte [rsi + r8]
mov edi, ebx
shl dil, cl
mov ecx, ebx
neg cl
mov ebp, ecx
xor bpl, dil
and cl, dil
add cl, cl
add bpl, bl
add bpl, cl
mov byte [rsi + rdx], bpl
mov ecx, dword [0x140578544]
mov edi, dword [0x1405548f0]
mov ebx, edi
xor ebx, 0x61ee1459
and edi, 0x61ee1459
lea edi, [rbx + rdi*2]
cmp ecx, edi
jge 0x14033c8e0
jmp 0x14033c8d0
mov ecx, 0x61ee1438
nop
mov eax, dword [0x140578544]
mov edx, dword [0x1405548f0]
add edx, ecx
cmp eax, edx
jl 0x14033c992
nop word cs:[rax + rax]
mov edx, dword [0x140578540]
mov r8d, dword [0x1405548f0]
mov eax, edx
sub eax, r8d
add eax, 0x9e11ebe2
imul eax, edx
mov edx, r8d
xor edx, 0x61ee141f
mov r9d, r8d
and r9d, 0x61ee141f
lea r9d, [rdx + r9*2]
xor edx, edx
div r9d
add r8d, 0x61ee141d
cmp edx, r8d
jne 0x14033c930
mov eax, dword [0x140578544]
cmp eax, 0x47
jg 0x14033c950
xor eax, eax
nop
mov ecx, dword [0x140578544]
cmp ecx, 0x3b
jg 0x14033c9bb
mov cl, 0xc2
xchg byte [0x140554363], cl
test al, al
je 0x14033c860
mov cl, 0xc2
xchg byte [0x140554363], cl
mov ecx, dword [0x140578540]
lea edx, [rcx - 1]
imul edx, ecx
test dl, 1
jne 0x14033c9a0
jmp 0x14033c9ab
pop rbx
pop rbp
pop rdi
pop rsi
ret
lea rax, [0x1405543c0]
jmp 0x14033c9d6
mov al, 1
test al, al
jne 0x14033c9f6
mov al, 1
nop dword [rax]
test al, al
je 0x14033c9f0
jmp 0x14033c9e4
mov al, 0xe2
xchg byte [0x1405543c9], al
jmp 0x14033c9db
mov eax, dword [0x140578544]
cmp eax, 0x50
jl 0x14033ca1d
nop dword [rax + rax]
mov eax, dword [0x140578544]
cmp eax, 0x2d
jge 0x14033ca10
jmp 0x14033ca00
xor ecx, ecx
mov edx, 0xffffffff
lea r8, [0x140554310]
lea r9, [0x14045bc70]
mov r10d, 0x61ee145c
xor r11d, r11d
xor esi, esi
test cl, cl
jne 0x14033ca81
nop word cs:[rax + rax]
movzx eax, byte [rsi + r9]
xor byte [rsi + r8], al
mov eax, dword [0x140578544]
mov edi, dword [0x1405548f0]
add edi, r10d
cmp eax, edi
jge 0x14033ca81
lea eax, [rsi + 1]
cmp eax, 0x14
jg 0x14033caa9
inc rsi
dec r11d
add edx, 2
test cl, cl
je 0x14033ca50
movzx eax, byte [rsi + r8]
movzx ebx, byte [rsi + r9]
sub al, bl
mul bl
sub bl, al
sub al, bl
mul bl
mov edi, ebx
xor dil, bl
not dil
and dil, al
xor dil, bl
mov byte [rsi + r8], dil
jmp 0x14033ca50
mov al, 0xf4
xchg byte [0x140554325], al
jmp 0x14033c7a2
mov al, 0xe8
xchg byte [0x140554300], al
mov al, 1
test al, al
jne 0x14033cae5
nop word cs:[rax + rax]
mov al, 0xe8
xchg byte [0x140554300], al
mov eax, dword [0x140578544]
cmp eax, 0x31
jge 0x14033cad0
jmp 0x14033cab6
lea rax, [0x1405542f0]
jmp 0x14033c9d6