Function at 0x1401fe820
Capabilities:
Encode data using xor

Disassembly:
push rbx
test ecx, ecx
je 0x1401fe8cc
mov eax, 0xcb519eda
add eax, dword [0x140482910]
cmp edx, eax
jne 0x1401fe93c
movzx eax, byte [0x140481cd5]
cmp al, 0x8f
je 0x1401feb1d
mov cl, 0xe8
nop dword [rax]
mov eax, dword [0x1404bfcc0]
mov edx, dword [0x140482910]
mov r8d, eax
sub r8d, edx
inc r8d
imul r8d, eax
and r8d, 1
mov eax, edx
xor eax, 0x5010672c
and edx, 0x5010672c
lea eax, [rax + rdx*2]
add eax, 0x7b4137ae
cmp r8d, eax
jne 0x1401fe8c0
nop word [rax + rax]
mov al, 0x2b
lock cmpxchg byte [0x140481cd5], cl
sete dl
mov r8d, dword [0x1404bfcc4]
cmp r8d, 0x3c
jg 0x1401fe8c0
test dl, dl
jne 0x1401fe99e
cmp al, 0x8f
jne 0x1401fe850
jmp 0x1401feb1d
mov al, 0x2b
lock cmpxchg byte [0x140481cd5], cl
jmp 0x1401fe890
mov eax, dword [0x1404bfcc0]
mov ecx, dword [0x140482910]
add ecx, eax
dec ecx
imul ecx, eax
test cl, 1
nop word cs:[rax + rax]
mov eax, dword [0x1404bfcc4]
cmp eax, 0x62
jg 0x1401fe8f0
test edx, edx
je 0x1401fe989
xor eax, eax
mov cl, 1
nop word [rax + rax]
mov edx, dword [0x1404bfcc0]
lea r8d, [rdx + 1]
imul r8d, edx
test r8b, 1
jne 0x1401fe92f
movzx edx, byte [0x140481d22]
test al, al
je 0x1401fe965
movzx edx, byte [0x140481d22]
test cl, cl
je 0x1401fe910
jmp 0x1401fe924
movzx eax, byte [0x140481d89]
cmp al, 0xba
je 0x1401feb0c
mov cl, 0xa9
nop dword [rax]
mov al, 0xd7
lock cmpxchg byte [0x140481d89], cl
je 0x1401fe9cc
cmp al, 0xba
jne 0x1401fe950
jmp 0x1401feb0c
cmp dl, 0x91
je 0x1401febb2
mov cl, 0xd4
mov al, 0x22
lock cmpxchg byte [0x140481d22], cl
je 0x1401feb26
cmp al, 0x91
jne 0x1401fe970
jmp 0x1401febb2
cmp dword [0x140482910], 0x34ae6126
je 0x1401febbb
jmp 0x1401febc8
xor eax, eax
lea rcx, [0x140481cc0]
lea rdx, [0x140398fc0]
nop
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
lea r8d, [rax + 1]
cmp r8d, 0x14
jg 0x1401fea95
inc rax
jmp 0x1401fe9b0
xor r9d, r9d
lea rdx, [0x140481d80]
lea r8, [0x140399060]
jmp 0x1401fea10
mov eax, r9d
not eax
mov ecx, eax
and ecx, 1
mov r10d, r9d
and r10d, 0xfffffffe
or r10d, ecx
xor r9d, 1
and eax, 0x7ffffffe
or eax, r9d
not eax
lea r9d, [r10 + rax*2]
cmp r9d, 9
jge 0x1401feb04
mov eax, dword [0x1404bfcc0]
lea ecx, [rax - 1]
imul ecx, eax
movsxd r10, r9d
test cl, 1
jne 0x1401fea44
nop word cs:[rax + rax]
movzx eax, byte [r10 + r8]
add byte [r10 + rdx], al
mov eax, dword [0x1404bfcc4]
cmp eax, 0x52
jle 0x1401fe9e0
movzx eax, byte [r10 + rdx]
movzx r11d, byte [r10 + r8]
sub al, r11b
mul r11b
sub al, r11b
mul r11b
mov ecx, r11d
sub cl, al
mov eax, ecx
mul r11b
mov ecx, eax
xor cl, r11b
and r11b, al
add r11b, r11b
add r11b, cl
mov ecx, eax
xor cl, r11b
mov ebx, ecx
not bl
and bl, al
add bl, bl
movzx eax, byte [0x140482920]
add bl, cl
sub al, bl
add al, r11b
add al, 0x78
mov byte [r10 + rdx], al
jmp 0x1401fea30
mov eax, 0xcb519edb
lea rcx, [fcn.1401fe820]
add ecx, ecx
add ecx, 0x2600
mov edx, ecx
not edx
mov r8d, 0xcb519eea
nop word cs:[rax + rax]
mov r9d, dword [0x1404bfcc4]
cmp r9d, 0x5e
jg 0x1401feaec
mov r9d, dword [0x140482910]
add r9d, eax
mov r10d, ecx
xor r10d, r9d
not r9d
and r9d, edx
or r9d, r10d
cmp r9d, 0xffffffff
je 0x1401feb15
mov r9d, dword [0x1404bfcc4]
mov r10d, dword [0x140482910]
add r10d, r8d
cmp r9d, r10d
jge 0x1401feac0
jmp 0x1401feacd
mov al, 0xba
xchg byte [0x140481d89], al
lea rax, [0x140481d80]
pop rbx
ret
mov al, 0x8f
xchg byte [0x140481cd5], al
lea rax, [0x140481cc0]
pop rbx
ret
mov eax, dword [0x1404bfcc4]
nop dword [rax]
mov ecx, dword [0x1404bfcc0]
lea eax, [rcx - 1]
imul eax, ecx
mov ecx, dword [0x140482910]
mov edx, ecx
xor edx, 0x34ae6123
and edx, ecx
xor ecx, 0xcb519edc
add edx, edx
mov r8d, ecx
xor r8d, edx
and edx, ecx
lea ecx, [r8 + rdx*2]
xor edx, edx
div ecx
test edx, edx
jne 0x1401feb30
xor eax, eax
lea rcx, [0x140481d20]
lea rdx, [0x140399010]
nop dword [rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
lea r8d, [rax + 1]
cmp r8d, 1
jg 0x1401feb98
inc rax
jmp 0x1401feb80
mov eax, dword [0x1404bfcc0]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
jne 0x1401fec80
jmp 0x1401fec6b
lea rax, [0x140481d20]
pop rbx
ret
movzx eax, byte [0x140481dc3]
xor ecx, ecx
test cl, cl
je 0x1401febd1
movzx eax, byte [0x140481dc3]
jmp 0x1401febbb
cmp al, 0x42
je 0x1401fec09
mov cl, 0x3f
nop word [rax + rax]
mov al, 0x78
lock cmpxchg byte [0x140481dc3], cl
je 0x1401febf2
cmp al, 0x42
jne 0x1401febe0
jmp 0x1401fec09
mov eax, dword [0x1404bfcc4]
mov ecx, 0xcb519f19
add ecx, dword [0x140482910]
cmp eax, ecx
jl 0x1401fec12
jmp 0x1401fec18
lea rax, [0x140481da0]
pop rbx
ret
mov al, 1
test al, al
jne 0x1401fec26
mov al, 1
nop word [rax + rax]
test al, al
je 0x1401fec20
jmp 0x1401fec12
xor eax, eax
lea rcx, [0x140481da0]
lea rdx, [0x140399080]
mov r8d, 0xcb519efd
nop dword [rax]
movzx r9d, byte [rax + rdx]
xor byte [rax + rcx], r9b
lea r9d, [rax + 1]
mov r10d, dword [0x140482910]
add r10d, r8d
cmp r9d, r10d
jge 0x1401fec61
inc rax
jmp 0x1401fec40
mov al, 0x42
xchg byte [0x140481dc3], al
jmp 0x1401fec09
mov eax, dword [0x1404bfcc0]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
je 0x1401fec8d
nop dword [rax]
mov eax, dword [0x1404bfcc4]
cmp eax, 0x15
jge 0x1401fec80
jmp 0x1401fec6b
mov al, 0x91
xchg byte [0x140481d22], al
jmp 0x1401febb2