Function at 0x1402ee530
Capabilities:
Encode data using xor

Disassembly:
push rsi
mov eax, dword [0x140495184]
cmp eax, 0x26
jg 0x1402ee542
mov al, 1
test al, al
jne 0x1402ee581
mov eax, 0x27f7a550
lea r8, [fcn.1402ee530]
add r8d, r8d
add r8d, 0x1d40
mov r9d, r8d
not r9d
nop
mov r10d, dword [0x140480e90]
add r10d, eax
mov r11d, r8d
xor r11d, r10d
xor r10d, r9d
and r10d, r9d
or r10d, r11d
cmp r10d, 0xffffffff
jne 0x1402ee560
jmp 0x1402ee53c
test ecx, ecx
je 0x1402ee64a
test edx, edx
je 0x1402ee6f1
movzx eax, byte [0x14047fef3]
cmp al, 0xf6
je 0x1402ee7d7
xor ecx, ecx
mov dl, 0x73
lea rax, [fcn.1402ee530]
lea r8d, [rax + rax]
add r8d, 0x1dc0
nop word cs:[rax + rax]
test cl, cl
jne 0x1402ee5f0
mov al, 0x1b
lock cmpxchg byte [0x14047fef3], dl
sete r9b
cmp dword [0x140480e90], 0xd8085ab1
jne 0x1402ee5f0
test r9b, r9b
jne 0x1402ee787
cmp al, 0xf6
jne 0x1402ee5c0
jmp 0x1402ee7d7
movzx r9d, byte [0x140480e94]
lea eax, [r9 + 0x46]
add r9b, 0x9e
lock cmpxchg byte [0x14047fef3], r9b
mov eax, dword [0x140480e90]
lea r9d, [rax + 0x27f7a550]
mov r10d, r9d
not r10d
mov r11d, r9d
xor r11d, r10d
and r11d, r8d
xor r11d, r10d
mov esi, r11d
not esi
xor r11d, r9d
and esi, r10d
or esi, r11d
not esi
add eax, 0x27f7a54f
cmp esi, eax
jne 0x1402ee5c0
jmp 0x1402ee5c4
test edx, edx
je 0x1402ee70f
movzx eax, byte [0x14047fba5]
cmp al, 0x77
je 0x1402ee822
mov cl, 0x30
mov edx, 0x27f7a54f
mov r8b, 1
nop dword [rax + rax]
mov eax, dword [0x140495180]
mov r9d, dword [0x140480e90]
neg r9d
add r9d, eax
add r9d, 0x27f7a550
imul r9d, eax
test r9b, 1
jne 0x1402ee6e0
mov al, 0x97
lock cmpxchg byte [0x14047fba5], cl
sete r9b
mov r10d, dword [0x140495180]
lea r11d, [r10 - 1]
imul r11d, r10d
and r11d, 1
mov r10d, dword [0x140480e90]
add r10d, edx
cmp r11d, r10d
jne 0x1402ee6e0
test r9b, r9b
jne 0x1402ee7e0
cmp al, 0x77
jne 0x1402ee670
jmp 0x1402ee822
mov al, 0x97
lock cmpxchg byte [0x14047fba5], cl
test r8b, r8b
je 0x1402ee670
jmp 0x1402ee694
mov eax, dword [0x140495184]
mov ecx, 0x27f7a56f
add ecx, dword [0x140480e90]
cmp eax, ecx
jge 0x1402ee8b0
jmp 0x1402ee89b
movzx eax, byte [0x14047fe9e]
cmp al, 0x32
je 0x1402ee892
xor ecx, ecx
test cl, cl
jne 0x1402ee770
nop word cs:[rax + rax]
movzx edx, byte [0x140480e94]
lea eax, [rdx - 0x22]
add dl, 0xa
lock cmpxchg byte [0x14047fe9e], dl
sete dl
mov r8d, dword [0x140495184]
cmp r8d, 0x36
jg 0x1402ee770
test dl, dl
jne 0x1402ee82b
cmp al, 0x32
jne 0x1402ee720
jmp 0x1402ee892
movzx edx, byte [0x140480e94]
lea eax, [rdx - 0x22]
add dl, 0xa
lock cmpxchg byte [0x14047fe9e], dl
jmp 0x1402ee730
xor eax, eax
lea rcx, [0x14047fed0]
lea rdx, [0x140390580]
nop word [rax + rax]
movzx r8d, byte [rax + rcx]
movzx r9d, byte [rax + rdx]
not r8b
mov r10d, r8d
and r10b, r9b
or r8b, r9b
not r8b
or r8b, r10b
mov byte [rax + rcx], r8b
lea r8d, [rax + 1]
cmp r8d, 0x22
jg 0x1402ee7cf
inc rax
jmp 0x1402ee7a0
mov al, 0xf6
xchg byte [0x14047fef3], al
lea rax, [0x14047fed0]
pop rsi
ret
xor eax, eax
lea rcx, [0x14047fba0]
lea rdx, [0x140390250]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
lea r8d, [rax + 1]
cmp r8d, 4
jg 0x1402ee808
inc rax
jmp 0x1402ee7f0
movzx eax, byte [0x140480e94]
add al, 0xbc
mov ecx, eax
xor cl, 0xe6
and al, 0x66
add al, al
add al, cl
xchg byte [0x14047fba5], al
lea rax, [0x14047fba0]
pop rsi
ret
xor eax, eax
lea rcx, [0x14047fe90]
lea rdx, [0x140390540]
nop dword [rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
lea r8d, [rax + 1]
cmp r8d, 0xd
jg 0x1402ee858
inc rax
jmp 0x1402ee840
mov eax, dword [0x140495184]
cmp eax, 0x43
jge 0x1402ee870
mov al, 1
test al, al
jne 0x1402ee883
nop dword [rax]
mov eax, dword [0x140495180]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
jne 0x1402ee870
jmp 0x1402ee863
movzx eax, byte [0x140480e94]
add al, 0x5d
xchg byte [0x14047fe9e], al
lea rax, [0x14047fe90]
pop rsi
ret
movzx eax, byte [0x14048005b]
mov ecx, dword [0x140495184]
cmp ecx, 0x41
jl 0x1402ee8e2
nop dword [rax]
movzx eax, byte [0x14048005b]
mov eax, dword [0x140495180]
mov ecx, dword [0x140480e90]
lea edx, [rcx + rax]
imul edx, eax
and edx, 1
mov eax, ecx
xor eax, 0x27f7a54f
and ecx, 0x27f7a54f
lea eax, [rax + rcx*2]
cmp edx, eax
jne 0x1402ee8b0
jmp 0x1402ee89b
cmp al, 0x34
je 0x1402ee9f0
mov cl, 0x19
mov edx, 0x27f7a57b
mov r8b, 1
jmp 0x1402ee908
cmp al, 0x34
je 0x1402ee9f0
mov al, 0x92
lock cmpxchg byte [0x14048005b], cl
je 0x1402ee947
mov r9d, dword [0x140495184]
mov r10d, dword [0x140480e90]
add r10d, edx
cmp r9d, r10d
jge 0x1402ee940
nop word [rax + rax]
test r8b, r8b
jne 0x1402ee900
nop word cs:[rax + rax]
test r8b, r8b
je 0x1402ee940
jmp 0x1402ee930
mov eax, dword [0x140495184]
cmp eax, 0x18
jg 0x1402ee958
mov al, 1
test al, al
jne 0x1402ee966
mov al, 1
nop word [rax + rax]
test al, al
je 0x1402ee960
jmp 0x1402ee952
xor eax, eax
lea rcx, [0x140480050]
lea rdx, [0x140390700]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
mov r9d, r8d
xor r9b, r8b
not r9b
and r9b, byte [rax + rcx]
xor r9b, r8b
mov byte [rax + rcx], r9b
lea r8d, [rax + 1]
cmp r8d, 0xa
jg 0x1402ee9a8
inc rax
jmp 0x1402ee980
lea rax, [fcn.1402ee530]
add eax, eax
add eax, 0x1640
mov ecx, eax
not ecx
nop word [rax + rax]
test ecx, eax
jne 0x1402ee9c0
mov eax, dword [0x140495184]
nop word [rax + rax]
cmp dword [0x140480e90], 0xd8085ab1
jne 0x1402ee9d0
mov al, 0x34
xchg byte [0x14048005b], al
nop word cs:[rax + rax]
mov eax, dword [0x140495180]
mov ecx, dword [0x140480e90]
neg ecx
add ecx, eax
add ecx, 0x52420a48
imul ecx, eax
test cl, 1
jne 0x1402ee9f0
lea rax, [0x140480050]
pop rsi
ret