Function at 0x1401cdba0
Capabilities:
Encode data using xor

Disassembly:
push rsi
push rdi
sub rsp, 0x38
test ecx, ecx
je 0x1401cdbf9
test edx, edx
je 0x1401cdc49
test r8d, r8d
je 0x1401cdc89
test r9d, r9d
je 0x1401cdd09
movzx eax, byte [0x14047c2ec]
cmp al, 0xa8
je 0x1401cdeb9
mov cl, 0xae
nop word cs:[rax + rax]
mov al, 0xe6
lock cmpxchg byte [0x14047c2ec], cl
je 0x1401cde89
cmp al, 0xa8
jne 0x1401cdbe0
jmp 0x1401cdeb9
test edx, edx
je 0x1401cdcc9
test r8d, r8d
je 0x1401cdd39
test r9d, r9d
je 0x1401cddb9
movzx eax, byte [0x14047c344]
cmp al, 9
je 0x1401cdf89
mov cl, 0xfc
nop word cs:[rax + rax]
mov al, 0xad
lock cmpxchg byte [0x14047c344], cl
je 0x1401cdf59
cmp al, 9
jne 0x1401cdc30
jmp 0x1401cdf89
test r8d, r8d
je 0x1401cdd79
test r9d, r9d
je 0x1401cdde9
movzx eax, byte [0x14047c85d]
cmp al, 0x69
je 0x1401cdfc9
mov cl, 0x55
nop dword [rax]
mov al, 0xc7
lock cmpxchg byte [0x14047c85d], cl
je 0x1401cdf95
cmp al, 0x69
jne 0x1401cdc70
jmp 0x1401cdfc9
test r9d, r9d
je 0x1401cde19
movzx eax, byte [0x14047c790]
cmp al, 0x6f
je 0x1401ce009
mov cl, 0x90
nop word cs:[rax + rax]
mov al, 0x15
lock cmpxchg byte [0x14047c790], cl
je 0x1401cdfd5
cmp al, 0x6f
jne 0x1401cdcb0
jmp 0x1401ce009
test r8d, r8d
je 0x1401cde49
test r9d, r9d
je 0x1401cdec5
movzx eax, byte [0x14047c252]
cmp al, 0xef
je 0x1401ce0a9
mov cl, 0xc6
nop dword [rax]
mov al, 0x91
lock cmpxchg byte [0x14047c252], cl
je 0x1401ce07f
cmp al, 0xef
jne 0x1401cdcf0
jmp 0x1401ce0a9
movzx eax, byte [0x14047c1c3]
cmp al, 0xc7
je 0x1401ce049
mov cl, 0x2f
nop word [rax + rax]
mov al, 0x9b
lock cmpxchg byte [0x14047c1c3], cl
je 0x1401ce015
cmp al, 0xc7
jne 0x1401cdd20
jmp 0x1401ce049
test r9d, r9d
je 0x1401cdef9
movzx eax, byte [0x14047bf9a]
cmp al, 0xeb
je 0x1401ce149
mov cl, 0x98
nop word cs:[rax + rax]
mov al, 0xda
lock cmpxchg byte [0x14047bf9a], cl
je 0x1401ce0b5
cmp al, 0xeb
jne 0x1401cdd60
jmp 0x1401ce149
test r9d, r9d
je 0x1401cdf29
movzx eax, byte [0x14047bf93]
cmp al, 0x46
je 0x1401ce189
mov cl, 0xe7
nop word cs:[rax + rax]
mov al, 0x1a
lock cmpxchg byte [0x14047bf93], cl
je 0x1401ce155
cmp al, 0x46
jne 0x1401cdda0
jmp 0x1401ce189
movzx eax, byte [0x14047c51d]
cmp al, 0x84
je 0x1401ce1c9
mov cl, 0xf6
nop word [rax + rax]
mov al, 0x8b
lock cmpxchg byte [0x14047c51d], cl
je 0x1401ce195
cmp al, 0x84
jne 0x1401cddd0
jmp 0x1401ce1c9
movzx eax, byte [0x14047be18]
cmp al, 0x69
je 0x1401ce209
mov cl, 0x97
nop word [rax + rax]
mov al, 0x81
lock cmpxchg byte [0x14047be18], cl
je 0x1401ce1d5
cmp al, 0x69
jne 0x1401cde00
jmp 0x1401ce209
movzx eax, byte [0x14047bdf6]
cmp al, 0xf7
je 0x1401ce249
mov cl, 0x19
nop word [rax + rax]
mov al, 0xd7
lock cmpxchg byte [0x14047bdf6], cl
je 0x1401ce215
cmp al, 0xf7
jne 0x1401cde30
jmp 0x1401ce249
test r9d, r9d
je 0x1401ce055
movzx eax, byte [0x14047c4cd]
cmp al, 0x93
je 0x1401ce289
mov cl, 0x90
nop word cs:[rax + rax]
mov al, 0x4c
lock cmpxchg byte [0x14047c4cd], cl
je 0x1401ce255
cmp al, 0x93
jne 0x1401cde70
jmp 0x1401ce289
xor eax, eax
lea rcx, [0x14047c2e0]
lea rdx, [0x140396260]
nop dword [rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xc
jl 0x1401cdea0
mov al, 0xa8
xchg byte [0x14047c2ec], al
lea rax, [0x14047c2e0]
jmp 0x1401ce382
movzx eax, byte [0x14047c7f0]
cmp al, 1
je 0x1401ce2c9
mov cl, 0xa2
nop word cs:[rax + rax]
mov al, 0x8f
lock cmpxchg byte [0x14047c7f0], cl
je 0x1401ce295
cmp al, 1
jne 0x1401cdee0
jmp 0x1401ce2c9
movzx eax, byte [0x14047c4bc]
cmp al, 0xd3
je 0x1401ce309
mov cl, 0xec
nop word [rax + rax]
mov al, 0xc4
lock cmpxchg byte [0x14047c4bc], cl
je 0x1401ce2d5
cmp al, 0xd3
jne 0x1401cdf10
jmp 0x1401ce309
movzx eax, byte [0x14047bf54]
cmp al, 0xfb
je 0x1401ce349
mov cl, 0x57
nop word [rax + rax]
mov al, 0x44
lock cmpxchg byte [0x14047bf54], cl
je 0x1401ce312
cmp al, 0xfb
jne 0x1401cdf40
jmp 0x1401ce349
xor eax, eax
lea rcx, [0x14047c330]
lea rdx, [0x1403962b0]
nop dword [rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x14
jl 0x1401cdf70
mov al, 9
xchg byte [0x14047c344], al
lea rax, [0x14047c330]
jmp 0x1401ce382
xor eax, eax
lea rcx, [0x14047c840]
lea rdx, [0x140396780]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x1d
jl 0x1401cdfb0
mov al, 0x69
xchg byte [0x14047c85d], al
lea rax, [0x14047c840]
jmp 0x1401ce382
xor eax, eax
lea rcx, [0x14047c780]
lea rdx, [0x1403966f0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x10
jl 0x1401cdff0
mov al, 0x6f
xchg byte [0x14047c790], al
lea rax, [0x14047c780]
jmp 0x1401ce382
xor eax, eax
lea rcx, [0x14047c1c0]
lea rdx, [0x140396140]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 3
jl 0x1401ce030
mov al, 0xc7
xchg byte [0x14047c1c3], al
lea rax, [0x14047c1c0]
jmp 0x1401ce382
movzx eax, byte [0x14047c46d]
cmp al, 0x21
je 0x1401ce37b
mov cl, 0x7e
mov al, 0x5a
lock cmpxchg byte [0x14047c46d], cl
je 0x1401ce352
cmp al, 0x21
jne 0x1401ce066
jmp 0x1401ce37b
xor eax, eax
lea rcx, [0x14047c250]
lea rdx, [0x1403961d0]
nop
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 2
jl 0x1401ce090
mov al, 0xef
xchg byte [0x14047c252], al
lea rax, [0x14047c250]
jmp 0x1401ce382
cmp qword [0x1404bf618], 0
jne 0x1401ce115
mov dword [rsp + 0x28], 0x1f411150
mov qword [rsp + 0x20], 0
xor edi, edi
xor ecx, ecx
xor edx, edx
mov r8d, 9
xor r9d, r9d
call fcn.1401ca7b0
mov rsi, rax
mov qword [0x1404bf618], rax
lea rcx, [0x1401ca750]
mov edx, 0x8361c00d
call fcn.1401099f0
lea rax, [0x140395eb0]
movzx ecx, byte [rdi + rax]
mov byte [rsi + rdi], cl
inc rdi
cmp edi, 7
jle 0x1401ce106
mov rax, qword [0x1404bf618]
xor ecx, ecx
lea rdx, [0x140395ec0]
nop word cs:[rax + rax]
movzx r8d, byte [rcx + rdx]
xor byte [rax + rcx], r8b
inc rcx
cmp ecx, 8
jl 0x1401ce130
mov al, 0xeb
xchg byte [0x14047bf9a], al
mov rax, qword [0x1404bf618]
jmp 0x1401ce382
xor eax, eax
lea rcx, [0x14047bf80]
lea rdx, [0x140395d70]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x13
jl 0x1401ce170
mov al, 0x46
xchg byte [0x14047bf93], al
lea rax, [0x14047bf80]
jmp 0x1401ce382
xor eax, eax
lea rcx, [0x14047c510]
lea rdx, [0x140396480]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x1401ce1b0
mov al, 0x84
xchg byte [0x14047c51d], al
lea rax, [0x14047c510]
jmp 0x1401ce382
xor eax, eax
lea rcx, [0x14047be00]
lea rdx, [0x140395bb0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x18
jl 0x1401ce1f0
mov al, 0x69
xchg byte [0x14047be18], al
lea rax, [0x14047be00]
jmp 0x1401ce382
xor eax, eax
lea rcx, [0x14047bdf0]
lea rdx, [0x140395ba0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 6
jl 0x1401ce230
mov al, 0xf7
xchg byte [0x14047bdf6], al
lea rax, [0x14047bdf0]
jmp 0x1401ce382
xor eax, eax
lea rcx, [0x14047c4c0]
lea rdx, [0x140396430]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x1401ce270
mov al, 0x93
xchg byte [0x14047c4cd], al
lea rax, [0x14047c4c0]
jmp 0x1401ce382
xor eax, eax
lea rcx, [0x14047c7e0]
lea rdx, [0x140396730]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x10
jl 0x1401ce2b0
mov al, 1
xchg byte [0x14047c7f0], al
lea rax, [0x14047c7e0]
jmp 0x1401ce382
xor eax, eax
lea rcx, [0x14047c4b0]
lea rdx, [0x140396420]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xc
jl 0x1401ce2f0
mov al, 0xd3
xchg byte [0x14047c4bc], al
lea rax, [0x14047c4b0]
jmp 0x1401ce382
xor eax, eax
lea rcx, [0x14047bf40]
lea rdx, [0x140395d30]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x14
jl 0x1401ce330
mov al, 0xfb
xchg byte [0x14047bf54], al
lea rax, [0x14047bf40]
jmp 0x1401ce382
xor eax, eax
lea rcx, [0x14047c460]
lea rdx, [0x1403963d0]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x1401ce362
mov al, 0x21
xchg byte [0x14047c46d], al
lea rax, [0x14047c460]
add rsp, 0x38
pop rdi
pop rsi
ret