Function at 0x201b0ba0
Capabilities:
Encode data using xor

Disassembly:
push rsi
push rdi
sub rsp, 0x38
test ecx, ecx
je 0x201b0bf9
test edx, edx
je 0x201b0c49
test r8d, r8d
je 0x201b0c89
test r9d, r9d
je 0x201b0d09
movzx eax, byte [0x2045f2ec]
cmp al, 0xa8
je 0x201b0eb9
mov cl, 0xae
nop word cs:[rax + rax]
mov al, 0xe6
lock cmpxchg byte [0x2045f2ec], cl
je 0x201b0e89
cmp al, 0xa8
jne 0x201b0be0
jmp 0x201b0eb9
test edx, edx
je 0x201b0cc9
test r8d, r8d
je 0x201b0d39
test r9d, r9d
je 0x201b0db9
movzx eax, byte [0x2045f344]
cmp al, 9
je 0x201b0f89
mov cl, 0xfc
nop word cs:[rax + rax]
mov al, 0xad
lock cmpxchg byte [0x2045f344], cl
je 0x201b0f59
cmp al, 9
jne 0x201b0c30
jmp 0x201b0f89
test r8d, r8d
je 0x201b0d79
test r9d, r9d
je 0x201b0de9
movzx eax, byte [0x2045f85d]
cmp al, 0x69
je 0x201b0fc9
mov cl, 0x55
nop dword [rax]
mov al, 0xc7
lock cmpxchg byte [0x2045f85d], cl
je 0x201b0f95
cmp al, 0x69
jne 0x201b0c70
jmp 0x201b0fc9
test r9d, r9d
je 0x201b0e19
movzx eax, byte [0x2045f790]
cmp al, 0x6f
je 0x201b1009
mov cl, 0x90
nop word cs:[rax + rax]
mov al, 0x15
lock cmpxchg byte [0x2045f790], cl
je 0x201b0fd5
cmp al, 0x6f
jne 0x201b0cb0
jmp 0x201b1009
test r8d, r8d
je 0x201b0e49
test r9d, r9d
je 0x201b0ec5
movzx eax, byte [0x2045f252]
cmp al, 0xef
je 0x201b10a9
mov cl, 0xc6
nop dword [rax]
mov al, 0x91
lock cmpxchg byte [0x2045f252], cl
je 0x201b107f
cmp al, 0xef
jne 0x201b0cf0
jmp 0x201b10a9
movzx eax, byte [0x2045f1c3]
cmp al, 0xc7
je 0x201b1049
mov cl, 0x2f
nop word [rax + rax]
mov al, 0x9b
lock cmpxchg byte [0x2045f1c3], cl
je 0x201b1015
cmp al, 0xc7
jne 0x201b0d20
jmp 0x201b1049
test r9d, r9d
je 0x201b0ef9
movzx eax, byte [0x2045ef9a]
cmp al, 0xeb
je 0x201b1149
mov cl, 0x98
nop word cs:[rax + rax]
mov al, 0xda
lock cmpxchg byte [0x2045ef9a], cl
je 0x201b10b5
cmp al, 0xeb
jne 0x201b0d60
jmp 0x201b1149
test r9d, r9d
je 0x201b0f29
movzx eax, byte [0x2045ef93]
cmp al, 0x46
je 0x201b1189
mov cl, 0xe7
nop word cs:[rax + rax]
mov al, 0x1a
lock cmpxchg byte [0x2045ef93], cl
je 0x201b1155
cmp al, 0x46
jne 0x201b0da0
jmp 0x201b1189
movzx eax, byte [0x2045f51d]
cmp al, 0x84
je 0x201b11c9
mov cl, 0xf6
nop word [rax + rax]
mov al, 0x8b
lock cmpxchg byte [0x2045f51d], cl
je 0x201b1195
cmp al, 0x84
jne 0x201b0dd0
jmp 0x201b11c9
movzx eax, byte [0x2045ee18]
cmp al, 0x69
je 0x201b1209
mov cl, 0x97
nop word [rax + rax]
mov al, 0x81
lock cmpxchg byte [0x2045ee18], cl
je 0x201b11d5
cmp al, 0x69
jne 0x201b0e00
jmp 0x201b1209
movzx eax, byte [0x2045edf6]
cmp al, 0xf7
je 0x201b1249
mov cl, 0x19
nop word [rax + rax]
mov al, 0xd7
lock cmpxchg byte [0x2045edf6], cl
je 0x201b1215
cmp al, 0xf7
jne 0x201b0e30
jmp 0x201b1249
test r9d, r9d
je 0x201b1055
movzx eax, byte [0x2045f4cd]
cmp al, 0x93
je 0x201b1289
mov cl, 0x90
nop word cs:[rax + rax]
mov al, 0x4c
lock cmpxchg byte [0x2045f4cd], cl
je 0x201b1255
cmp al, 0x93
jne 0x201b0e70
jmp 0x201b1289
xor eax, eax
lea rcx, [0x2045f2e0]
lea rdx, [0x20379260]
nop dword [rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xc
jl 0x201b0ea0
mov al, 0xa8
xchg byte [0x2045f2ec], al
lea rax, [0x2045f2e0]
jmp 0x201b1382
movzx eax, byte [0x2045f7f0]
cmp al, 1
je 0x201b12c9
mov cl, 0xa2
nop word cs:[rax + rax]
mov al, 0x8f
lock cmpxchg byte [0x2045f7f0], cl
je 0x201b1295
cmp al, 1
jne 0x201b0ee0
jmp 0x201b12c9
movzx eax, byte [0x2045f4bc]
cmp al, 0xd3
je 0x201b1309
mov cl, 0xec
nop word [rax + rax]
mov al, 0xc4
lock cmpxchg byte [0x2045f4bc], cl
je 0x201b12d5
cmp al, 0xd3
jne 0x201b0f10
jmp 0x201b1309
movzx eax, byte [0x2045ef54]
cmp al, 0xfb
je 0x201b1349
mov cl, 0x57
nop word [rax + rax]
mov al, 0x44
lock cmpxchg byte [0x2045ef54], cl
je 0x201b1312
cmp al, 0xfb
jne 0x201b0f40
jmp 0x201b1349
xor eax, eax
lea rcx, [0x2045f330]
lea rdx, [0x203792b0]
nop dword [rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x14
jl 0x201b0f70
mov al, 9
xchg byte [0x2045f344], al
lea rax, [0x2045f330]
jmp 0x201b1382
xor eax, eax
lea rcx, [0x2045f840]
lea rdx, [0x20379780]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x1d
jl 0x201b0fb0
mov al, 0x69
xchg byte [0x2045f85d], al
lea rax, [0x2045f840]
jmp 0x201b1382
xor eax, eax
lea rcx, [0x2045f780]
lea rdx, [0x203796f0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x10
jl 0x201b0ff0
mov al, 0x6f
xchg byte [0x2045f790], al
lea rax, [0x2045f780]
jmp 0x201b1382
xor eax, eax
lea rcx, [0x2045f1c0]
lea rdx, [0x20379140]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 3
jl 0x201b1030
mov al, 0xc7
xchg byte [0x2045f1c3], al
lea rax, [0x2045f1c0]
jmp 0x201b1382
movzx eax, byte [0x2045f46d]
cmp al, 0x21
je 0x201b137b
mov cl, 0x7e
mov al, 0x5a
lock cmpxchg byte [0x2045f46d], cl
je 0x201b1352
cmp al, 0x21
jne 0x201b1066
jmp 0x201b137b
xor eax, eax
lea rcx, [0x2045f250]
lea rdx, [0x203791d0]
nop
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 2
jl 0x201b1090
mov al, 0xef
xchg byte [0x2045f252], al
lea rax, [0x2045f250]
jmp 0x201b1382
cmp qword [0x204a2618], 0
jne 0x201b1115
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.201ad7b0
mov rsi, rax
mov qword [0x204a2618], rax
lea rcx, [0x201ad750]
mov edx, 0x8361c00d
call fcn.200ec9f0
lea rax, [0x20378eb0]
movzx ecx, byte [rdi + rax]
mov byte [rsi + rdi], cl
inc rdi
cmp edi, 7
jle 0x201b1106
mov rax, qword [0x204a2618]
xor ecx, ecx
lea rdx, [0x20378ec0]
nop word cs:[rax + rax]
movzx r8d, byte [rcx + rdx]
xor byte [rax + rcx], r8b
inc rcx
cmp ecx, 8
jl 0x201b1130
mov al, 0xeb
xchg byte [0x2045ef9a], al
mov rax, qword [0x204a2618]
jmp 0x201b1382
xor eax, eax
lea rcx, [0x2045ef80]
lea rdx, [0x20378d70]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x13
jl 0x201b1170
mov al, 0x46
xchg byte [0x2045ef93], al
lea rax, [0x2045ef80]
jmp 0x201b1382
xor eax, eax
lea rcx, [0x2045f510]
lea rdx, [0x20379480]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x201b11b0
mov al, 0x84
xchg byte [0x2045f51d], al
lea rax, [0x2045f510]
jmp 0x201b1382
xor eax, eax
lea rcx, [0x2045ee00]
lea rdx, [0x20378bb0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x18
jl 0x201b11f0
mov al, 0x69
xchg byte [0x2045ee18], al
lea rax, [0x2045ee00]
jmp 0x201b1382
xor eax, eax
lea rcx, [0x2045edf0]
lea rdx, [0x20378ba0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 6
jl 0x201b1230
mov al, 0xf7
xchg byte [0x2045edf6], al
lea rax, [0x2045edf0]
jmp 0x201b1382
xor eax, eax
lea rcx, [0x2045f4c0]
lea rdx, [0x20379430]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x201b1270
mov al, 0x93
xchg byte [0x2045f4cd], al
lea rax, [0x2045f4c0]
jmp 0x201b1382
xor eax, eax
lea rcx, [0x2045f7e0]
lea rdx, [0x20379730]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x10
jl 0x201b12b0
mov al, 1
xchg byte [0x2045f7f0], al
lea rax, [0x2045f7e0]
jmp 0x201b1382
xor eax, eax
lea rcx, [0x2045f4b0]
lea rdx, [0x20379420]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xc
jl 0x201b12f0
mov al, 0xd3
xchg byte [0x2045f4bc], al
lea rax, [0x2045f4b0]
jmp 0x201b1382
xor eax, eax
lea rcx, [0x2045ef40]
lea rdx, [0x20378d30]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x14
jl 0x201b1330
mov al, 0xfb
xchg byte [0x2045ef54], al
lea rax, [0x2045ef40]
jmp 0x201b1382
xor eax, eax
lea rcx, [0x2045f460]
lea rdx, [0x203793d0]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x201b1362
mov al, 0x21
xchg byte [0x2045f46d], al
lea rax, [0x2045f460]
add rsp, 0x38
pop rdi
pop rsi
ret