Function at 0x1400a6620
Capabilities:
Encode data using xor

Disassembly:
push rsi
push rdi
sub rsp, 0x28
mov r8d, edx
test ecx, ecx
je 0x1400a66e2
lea rax, [fcn.1400a6620]
lea ecx, [rax + rax]
add ecx, 0x580
mov r9d, ecx
not r9d
nop word [rax + rax]
mov eax, dword [0x14053125c]
cmp eax, 0x18
jg 0x1400a6685
mov edx, dword [0x140531258]
mov r10d, dword [0x1404c5e68]
mov eax, edx
sub eax, r10d
add eax, 0x4591d043
imul eax, edx
add r10d, 0xba6e2fbe
xor edx, edx
div r10d
test edx, edx
je 0x1400a668c
test r9d, ecx
jne 0x1400a6650
jmp 0x1400a665b
test r8d, r8d
je 0x1400a6723
movzx eax, byte [0x1404c51c3]
nop dword [rax]
cmp al, 0x40
je 0x1400a6a65
movzx ecx, byte [0x1404c5e7c]
lea eax, [rcx + 0x13]
mov edx, ecx
xor dl, 0x67
and cl, 0x67
add cl, cl
add cl, dl
lock cmpxchg byte [0x1404c51c3], cl
jne 0x1400a66a0
mov eax, dword [0x140531258]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
jne 0x1400a696f
jmp 0x1400a6964
test r8d, r8d
je 0x1400a6763
movzx eax, byte [0x1404c50c5]
cmp al, 0x28
je 0x1400a692a
mov cl, 0xae
nop dword [rax + rax]
mov al, 0x4e
lock cmpxchg byte [0x1404c50c5], cl
je 0x1400a67b0
movzx edx, byte [0x1404c5e7c]
add dl, 0xc
cmp al, dl
jne 0x1400a6700
jmp 0x1400a692a
movzx eax, byte [0x1404c5324]
cmp al, 0x4d
je 0x1400a6846
mov cl, 0xfe
nop word cs:[rax + rax]
mov al, 0xcf
lock cmpxchg byte [0x1404c5324], cl
je 0x1400a67e8
movzx edx, byte [0x1404c5e7c]
add dl, 0x31
cmp al, dl
jne 0x1400a6740
jmp 0x1400a6846
movzx eax, byte [0x1404c521e]
cmp al, 0xef
je 0x1400a68a0
mov cl, 0x10
xor edx, edx
nop word cs:[rax + rax]
mov al, 0x77
lock cmpxchg byte [0x1404c521e], cl
je 0x1400a684f
test dl, dl
mov r8d, dword [0x140531258]
lea r9d, [r8 - 1]
imul r9d, r8d
test r9b, 1
jne 0x1400a6792
cmp al, 0xef
jne 0x1400a6780
jmp 0x1400a68a0
xor eax, eax
lea rcx, [0x1404c50b0]
lea rdx, [0x1403fe6c0]
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, 0x14
jg 0x1400a6828
inc rax
jmp 0x1400a67c0
xor eax, eax
lea rcx, [0x1404c5310]
lea rdx, [0x1403fe900]
nop dword [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, 0x13
jg 0x1400a6837
inc rax
jmp 0x1400a6800
xor eax, eax
test al, al
je 0x1400a6936
jmp 0x1400a693c
movzx eax, byte [0x1404c5e7c]
add al, 0x31
xchg byte [0x1404c5324], al
lea rax, [0x1404c5310]
jmp 0x1400a68a7
xor eax, eax
lea rcx, [0x1404c5210]
lea rdx, [0x1403fe800]
nop
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
lea r8d, [rax + 1]
cmp r8d, 0xd
jg 0x1400a6878
inc rax
jmp 0x1400a6860
mov eax, dword [0x1404c5e68]
lea ecx, [rax - 0x4591d043]
lea rdx, [fcn.1400a6620]
add edx, edx
add edx, 0x3880
and edx, ecx
add eax, 0xba6e2fbc
cmp edx, eax
jne 0x1400a68c0
jmp 0x1400a68ae
lea rax, [0x1404c5210]
add rsp, 0x28
pop rdi
pop rsi
ret
mov eax, dword [0x14053125c]
cmp eax, 0x4e
jl 0x1400a68d3
nop dword [rax]
mov eax, dword [0x140531258]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
jne 0x1400a68c0
jmp 0x1400a68ae
mov al, 0xef
xchg byte [0x1404c521e], al
jmp 0x1400a68a0
test dil, dil
je 0x1400a6917
mov ecx, 0x17
call fcn.14039c114
mov qword [0x140531248], rax
mov rcx, rsi
call fcn.1403bbdc0
mov al, 0x28
xchg byte [0x1404c50c5], al
mov eax, dword [0x140531258]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
jne 0x1400a68e0
mov al, 0x28
xchg byte [0x1404c50c5], al
mov eax, dword [0x14053125c]
cmp eax, 0xd
jg 0x1400a68e5
lea rax, [0x1404c50b0]
jmp 0x1400a68a7
mov al, 1
test al, al
jne 0x1400a6956
lea rax, [fcn.1400a6620]
add eax, eax
add eax, 0x1160
mov ecx, eax
not ecx
nop
test ecx, eax
jne 0x1400a6950
jmp 0x1400a6936
xor edi, edi
lea rsi, [0x1400a72d0]
jmp 0x1400a68e0
mov eax, dword [0x14053125c]
cmp eax, 0x3b
jl 0x1400a6986
mov al, 1
nop word cs:[rax + rax]
test al, al
je 0x1400a6980
jmp 0x1400a6964
xor r8d, r8d
lea rax, [0x1404c51c0]
lea rcx, [0x1403fe7c0]
mov edx, 0xba6e2fbd
nop dword [rax]
movsxd r8, r8d
movzx r9d, byte [r8 + rcx]
mov r10d, r9d
xor r10b, r9b
not r10b
and r10b, byte [r8 + rax]
xor r10b, r9b
mov byte [r8 + rax], r10b
mov r9d, dword [0x1404c5e68]
add r9d, edx
add r8d, 0xb3e66eb8
mov r10d, r8d
xor r10d, r9d
and r8d, r9d
lea r8d, [r10 + r8*2]
add r8d, 0x4c199148
cmp r8d, 3
jl 0x1400a69a0
mov eax, dword [0x140531258]
mov ecx, dword [0x1404c5e68]
not ecx
add ecx, eax
imul ecx, eax
jmp 0x1400a6a0c
mov eax, dword [0x140531258]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
jne 0x1400a6a00
mov eax, dword [0x140531258]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
mov eax, 0xba6e2fbc
add eax, dword [0x1404c5e68]
cmp ecx, eax
jne 0x1400a6a00
mov eax, dword [0x14053125c]
cmp eax, 0x4f
jg 0x1400a6a50
mov al, 0x40
xchg byte [0x1404c51c3], al
mov eax, dword [0x14053125c]
cmp eax, 0x19
jl 0x1400a6a65
nop dword [rax]
mov al, 0x40
xchg byte [0x1404c51c3], al
mov eax, dword [0x14053125c]
cmp eax, 0x25
jge 0x1400a6a50
jmp 0x1400a6a3a
lea rax, [0x1404c51c0]
jmp 0x1400a68a7