Function at 0x14020f740
Capabilities:
Encode data using xor

Disassembly:
push rsi
push rdi
sub rsp, 0x28
test ecx, ecx
je 0x14020f799
test edx, edx
je 0x14020f7e9
test r8d, r8d
je 0x14020f829
test r9d, r9d
je 0x14020f8a9
movzx eax, byte [0x14045d78c]
cmp al, 0xc5
je 0x14020fa59
xor ecx, ecx
nop word cs:[rax + rax]
mov al, 0xda
lock cmpxchg byte [0x14045d78c], cl
je 0x14020fa29
cmp al, 0xc5
jne 0x14020f780
jmp 0x14020fa59
test edx, edx
je 0x14020f869
test r8d, r8d
je 0x14020f8d9
test r9d, r9d
je 0x14020f959
movzx eax, byte [0x14045d7cf]
cmp al, 0x3a
je 0x14020fb29
mov cl, 0x47
nop word cs:[rax + rax]
mov al, 0x1f
lock cmpxchg byte [0x14045d7cf], cl
je 0x14020faf9
cmp al, 0x3a
jne 0x14020f7d0
jmp 0x14020fb29
test r8d, r8d
je 0x14020f919
test r9d, r9d
je 0x14020f989
movzx eax, byte [0x14045d6d6]
cmp al, 0x44
je 0x14020fb69
mov cl, 0x25
nop dword [rax]
mov al, 0xbc
lock cmpxchg byte [0x14045d6d6], cl
je 0x14020fb35
cmp al, 0x44
jne 0x14020f810
jmp 0x14020fb69
test r9d, r9d
je 0x14020f9b9
movzx eax, byte [0x14045d4e6]
cmp al, 0x68
je 0x14020fba9
mov cl, 0xe4
nop word cs:[rax + rax]
mov al, 0x50
lock cmpxchg byte [0x14045d4e6], cl
je 0x14020fb75
cmp al, 0x68
jne 0x14020f850
jmp 0x14020fba9
test r8d, r8d
je 0x14020f9e9
test r9d, r9d
je 0x14020fa65
movzx eax, byte [0x14045d7bb]
cmp al, 0x1e
je 0x14020fc49
mov cl, 0xf4
nop dword [rax]
mov al, 0xf8
lock cmpxchg byte [0x14045d7bb], cl
je 0x14020fc1f
cmp al, 0x1e
jne 0x14020f890
jmp 0x14020fc49
movzx eax, byte [0x14045d7af]
cmp al, 0xfd
je 0x14020fbe9
mov cl, 0xbf
nop word [rax + rax]
mov al, 0x5a
lock cmpxchg byte [0x14045d7af], cl
je 0x14020fbb5
cmp al, 0xfd
jne 0x14020f8c0
jmp 0x14020fbe9
test r9d, r9d
je 0x14020fa99
movzx eax, byte [0x14045d75b]
cmp al, 0xbd
je 0x14020fc89
mov cl, 0xaa
nop word cs:[rax + rax]
mov al, 0xf7
lock cmpxchg byte [0x14045d75b], cl
je 0x14020fc55
cmp al, 0xbd
jne 0x14020f900
jmp 0x14020fc89
test r9d, r9d
je 0x14020fac9
movzx eax, byte [0x14045d5d9]
cmp al, 0x9e
je 0x14020fd29
mov esi, dword [rsp + 0x60]
mov cl, 0xa0
nop word [rax + rax]
mov al, 0x49
lock cmpxchg byte [0x14045d5d9], cl
je 0x14020fc95
cmp al, 0x9e
jne 0x14020f940
jmp 0x14020fd29
movzx eax, byte [0x14045d434]
cmp al, 0x80
je 0x14020fd69
mov cl, 0xb3
nop word [rax + rax]
mov al, 0xcc
lock cmpxchg byte [0x14045d434], cl
je 0x14020fd35
cmp al, 0x80
jne 0x14020f970
jmp 0x14020fd69
movzx eax, byte [0x14045d580]
cmp al, 0x46
je 0x14020fda9
mov cl, 0x1e
nop word [rax + rax]
mov al, 0x19
lock cmpxchg byte [0x14045d580], cl
je 0x14020fd75
cmp al, 0x46
jne 0x14020f9a0
jmp 0x14020fda9
movzx eax, byte [0x14045d45a]
cmp al, 0x7c
je 0x14020fde9
mov cl, 0xca
nop word [rax + rax]
mov al, 0xdf
lock cmpxchg byte [0x14045d45a], cl
je 0x14020fdb5
cmp al, 0x7c
jne 0x14020f9d0
jmp 0x14020fde9
test r9d, r9d
je 0x14020fbf5
movzx eax, byte [0x14045d74d]
cmp al, 0xd9
je 0x14020fe29
mov cl, 0xae
nop word cs:[rax + rax]
mov al, 0xe9
lock cmpxchg byte [0x14045d74d], cl
je 0x14020fdf5
cmp al, 0xd9
jne 0x14020fa10
jmp 0x14020fe29
xor eax, eax
lea rcx, [0x14045d780]
lea rdx, [0x140370320]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xc
jl 0x14020fa40
mov al, 0xc5
xchg byte [0x14045d78c], al
lea rax, [0x14045d780]
jmp 0x14020ff22
movzx eax, byte [0x14045d519]
cmp al, 0xf7
je 0x14020fe69
mov cl, 0xa4
nop word cs:[rax + rax]
mov al, 0xa7
lock cmpxchg byte [0x14045d519], cl
je 0x14020fe35
cmp al, 0xf7
jne 0x14020fa80
jmp 0x14020fe69
movzx eax, byte [0x14045d5f8]
cmp al, 0x24
je 0x14020fea9
mov cl, 0x2d
nop word [rax + rax]
mov al, 0x2b
lock cmpxchg byte [0x14045d5f8], cl
je 0x14020fe75
cmp al, 0x24
jne 0x14020fab0
jmp 0x14020fea9
movzx eax, byte [0x14045d5b6]
cmp al, 0xa4
je 0x14020fee9
mov cl, 0xbd
nop word [rax + rax]
mov al, 0x8c
lock cmpxchg byte [0x14045d5b6], cl
je 0x14020feb2
cmp al, 0xa4
jne 0x14020fae0
jmp 0x14020fee9
xor eax, eax
lea rcx, [0x14045d7c0]
lea rdx, [0x140370360]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xf
jl 0x14020fb10
mov al, 0x3a
xchg byte [0x14045d7cf], al
lea rax, [0x14045d7c0]
jmp 0x14020ff22
xor eax, eax
lea rcx, [0x14045d6b0]
lea rdx, [0x140370250]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x26
jl 0x14020fb50
mov al, 0x44
xchg byte [0x14045d6d6], al
lea rax, [0x14045d6b0]
jmp 0x14020ff22
xor eax, eax
lea rcx, [0x14045d4d0]
lea rdx, [0x140370060]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x16
jl 0x14020fb90
mov al, 0x68
xchg byte [0x14045d4e6], al
lea rax, [0x14045d4d0]
jmp 0x14020ff22
xor eax, eax
lea rcx, [0x14045d7a0]
lea rdx, [0x140370340]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xf
jl 0x14020fbd0
mov al, 0xfd
xchg byte [0x14045d7af], al
lea rax, [0x14045d7a0]
jmp 0x14020ff22
movzx eax, byte [0x14045d71b]
cmp al, 0x29
je 0x14020ff1b
mov cl, 0x75
mov al, 0x2a
lock cmpxchg byte [0x14045d71b], cl
je 0x14020fef2
cmp al, 0x29
jne 0x14020fc06
jmp 0x14020ff1b
xor eax, eax
lea rcx, [0x14045d7b0]
lea rdx, [0x140370350]
nop
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xb
jl 0x14020fc30
mov al, 0x1e
xchg byte [0x14045d7bb], al
lea rax, [0x14045d7b0]
jmp 0x14020ff22
xor eax, eax
lea rcx, [0x14045d750]
lea rdx, [0x1403702f0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xb
jl 0x14020fc70
mov al, 0xbd
xchg byte [0x14045d75b], al
lea rax, [0x14045d750]
jmp 0x14020ff22
cmp qword [0x140491da0], 0
jne 0x14020fcf4
mov r9d, esi
xor r9d, 0xfd0398de
mov ecx, 1
mov edx, 1
mov r8d, 4
call fcn.1400f9af0
mov rdi, rax
mov qword [0x140491da0], rax
xor esi, 0x245c1d0f
lea rcx, [0x14020f060]
mov edx, esi
call fcn.1400db710
xor eax, eax
lea rcx, [0x140370150]
movzx edx, byte [rax + rcx]
mov byte [rdi + rax], dl
inc rax
cmp eax, 2
jle 0x14020fce5
mov rax, qword [0x140491da0]
xor ecx, ecx
lea rdx, [0x140370160]
nop word cs:[rax + rax]
movzx r8d, byte [rcx + rdx]
xor byte [rax + rcx], r8b
inc rcx
cmp ecx, 3
jl 0x14020fd10
mov al, 0x9e
xchg byte [0x14045d5d9], al
mov rax, qword [0x140491da0]
jmp 0x14020ff22
xor eax, eax
lea rcx, [0x14045d430]
lea rdx, [0x14036ffc0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 4
jl 0x14020fd50
mov al, 0x80
xchg byte [0x14045d434], al
lea rax, [0x14045d430]
jmp 0x14020ff22
xor eax, eax
lea rcx, [0x14045d570]
lea rdx, [0x1403700f0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x10
jl 0x14020fd90
mov al, 0x46
xchg byte [0x14045d580], al
lea rax, [0x14045d570]
jmp 0x14020ff22
xor eax, eax
lea rcx, [0x14045d450]
lea rdx, [0x14036ffe0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xa
jl 0x14020fdd0
mov al, 0x7c
xchg byte [0x14045d45a], al
lea rax, [0x14045d450]
jmp 0x14020ff22
xor eax, eax
lea rcx, [0x14045d740]
lea rdx, [0x1403702e0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x14020fe10
mov al, 0xd9
xchg byte [0x14045d74d], al
lea rax, [0x14045d740]
jmp 0x14020ff22
xor eax, eax
lea rcx, [0x14045d510]
lea rdx, [0x1403700a0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 9
jl 0x14020fe50
mov al, 0xf7
xchg byte [0x14045d519], al
lea rax, [0x14045d510]
jmp 0x14020ff22
xor eax, eax
lea rcx, [0x14045d5f0]
lea rdx, [0x1403701a0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 8
jl 0x14020fe90
mov al, 0x24
xchg byte [0x14045d5f8], al
lea rax, [0x14045d5f0]
jmp 0x14020ff22
xor eax, eax
lea rcx, [0x14045d5b0]
lea rdx, [0x140370120]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 6
jl 0x14020fed0
mov al, 0xa4
xchg byte [0x14045d5b6], al
lea rax, [0x14045d5b0]
jmp 0x14020ff22
xor eax, eax
lea rcx, [0x14045d710]
lea rdx, [0x1403702b0]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xb
jl 0x14020ff02
mov al, 0x29
xchg byte [0x14045d71b], al
lea rax, [0x14045d710]
add rsp, 0x28
pop rdi
pop rsi
ret