Function at 0x201f7020
Capabilities:
Encode data using xor

Disassembly:
test ecx, ecx
je 0x201f706c
test edx, edx
je 0x201f70bc
test r8d, r8d
je 0x201f70fc
test r9d, r9d
je 0x201f7179
movzx eax, byte [0x20467fc0]
cmp al, 0x48
je 0x201f7064
mov cl, 0x14
nop dword [rax + rax]
mov al, 0x33
lock cmpxchg byte [0x20467fc0], cl
je 0x201f72f9
cmp al, 0x48
jne 0x201f7050
lea rax, [0x20467fb0]
ret
test edx, edx
je 0x201f713c
test r8d, r8d
je 0x201f71ac
test r9d, r9d
je 0x201f7229
movzx eax, byte [0x204680fd]
cmp al, 8
je 0x201f70b4
mov cl, 0x8e
nop word cs:[rax + rax]
mov al, 0x6d
lock cmpxchg byte [0x204680fd], cl
je 0x201f73c9
cmp al, 8
jne 0x201f70a0
lea rax, [0x204680f0]
ret
test r8d, r8d
je 0x201f71e9
test r9d, r9d
je 0x201f7259
movzx eax, byte [0x20468033]
cmp al, 0x5f
je 0x201f70f4
mov cl, 0xdc
nop dword [rax + rax]
mov al, 0xd1
lock cmpxchg byte [0x20468033], cl
je 0x201f7401
cmp al, 0x5f
jne 0x201f70e0
lea rax, [0x20468010]
ret
test r9d, r9d
je 0x201f7289
movzx eax, byte [0x2046813c]
cmp al, 0x78
je 0x201f7134
mov cl, 0xa7
nop word cs:[rax + rax]
mov al, 0x3c
lock cmpxchg byte [0x2046813c], cl
je 0x201f7441
cmp al, 0x78
jne 0x201f7120
lea rax, [0x20468130]
ret
test r8d, r8d
je 0x201f72b9
test r9d, r9d
je 0x201f7331
movzx eax, byte [0x204680a2]
cmp al, 0x54
je 0x201f7519
mov cl, 0x26
nop
mov al, 0xe1
lock cmpxchg byte [0x204680a2], cl
je 0x201f74eb
cmp al, 0x54
jne 0x201f7160
jmp 0x201f7519
movzx eax, byte [0x20467f60]
cmp al, 0x9b
je 0x201f71a4
mov cl, 0x62
nop word cs:[rax + rax]
mov al, 0x6f
lock cmpxchg byte [0x20467f60], cl
je 0x201f7481
cmp al, 0x9b
jne 0x201f7190
lea rax, [0x20467f50]
ret
test r9d, r9d
je 0x201f7369
movzx eax, byte [0x20468092]
cmp al, 0x5a
je 0x201f7559
mov cl, 0x88
nop word cs:[rax + rax]
mov al, 0xca
lock cmpxchg byte [0x20468092], cl
je 0x201f7521
cmp al, 0x5a
jne 0x201f71d0
jmp 0x201f7559
test r9d, r9d
je 0x201f7399
movzx eax, byte [0x204680e3]
cmp al, 0x9f
je 0x201f7599
mov cl, 0xbf
nop word cs:[rax + rax]
mov al, 0x9e
lock cmpxchg byte [0x204680e3], cl
je 0x201f7561
cmp al, 0x9f
jne 0x201f7210
jmp 0x201f7599
movzx eax, byte [0x20468003]
cmp al, 0xbf
je 0x201f75d9
mov cl, 0x3f
nop word [rax + rax]
mov al, 0xd6
lock cmpxchg byte [0x20468003], cl
je 0x201f75a1
cmp al, 0xbf
jne 0x201f7240
jmp 0x201f75d9
movzx eax, byte [0x20468086]
cmp al, 0xe1
je 0x201f7619
mov cl, 0x3c
nop word [rax + rax]
mov al, 0xdc
lock cmpxchg byte [0x20468086], cl
je 0x201f75e1
cmp al, 0xe1
jne 0x201f7270
jmp 0x201f7619
movzx eax, byte [0x2046818d]
cmp al, 0xf0
je 0x201f7659
mov cl, 0xd4
nop word [rax + rax]
mov al, 0x37
lock cmpxchg byte [0x2046818d], cl
je 0x201f7621
cmp al, 0xf0
jne 0x201f72a0
jmp 0x201f7659
test r9d, r9d
je 0x201f74c1
movzx eax, byte [0x2046817f]
cmp al, 0x5d
je 0x201f7699
mov cl, 0xc8
nop word cs:[rax + rax]
mov al, 0xfd
lock cmpxchg byte [0x2046817f], cl
je 0x201f7661
cmp al, 0x5d
jne 0x201f72e0
jmp 0x201f7699
xor eax, eax
lea rcx, [0x20467fb0]
lea rdx, [0x2037d360]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x10
jl 0x201f7310
mov al, 0x48
xchg byte [0x20467fc0], al
lea rax, [0x20467fb0]
ret
movzx eax, byte [0x2046804b]
cmp al, 0xdf
je 0x201f76d9
mov cl, 0xb5
nop word cs:[rax + rax]
mov al, 0xb2
lock cmpxchg byte [0x2046804b], cl
je 0x201f76a1
cmp al, 0xdf
jne 0x201f7350
jmp 0x201f76d9
movzx eax, byte [0x20468202]
cmp al, 0x22
je 0x201f7719
mov cl, 0x4d
nop word [rax + rax]
mov al, 0x3a
lock cmpxchg byte [0x20468202], cl
je 0x201f76e1
cmp al, 0x22
jne 0x201f7380
jmp 0x201f7719
movzx eax, byte [0x2046805f]
cmp al, 0x8f
je 0x201f7759
mov cl, 0x40
nop word [rax + rax]
mov al, 0xaa
lock cmpxchg byte [0x2046805f], cl
je 0x201f7721
cmp al, 0x8f
jne 0x201f73b0
jmp 0x201f7759
xor eax, eax
lea rcx, [0x204680f0]
lea rdx, [0x2037d490]
nop dword [rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x201f73e0
mov al, 8
xchg byte [0x204680fd], al
lea rax, [0x204680f0]
ret
xor eax, eax
lea rcx, [0x20468010]
lea rdx, [0x2037d3b0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x23
jl 0x201f7420
mov al, 0x5f
xchg byte [0x20468033], al
lea rax, [0x20468010]
ret
xor eax, eax
lea rcx, [0x20468130]
lea rdx, [0x2037d4d0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xc
jl 0x201f7460
mov al, 0x78
xchg byte [0x2046813c], al
lea rax, [0x20468130]
ret
xor eax, eax
lea rcx, [0x20467f50]
lea rdx, [0x2037d310]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x10
jl 0x201f74a0
mov al, 0x9b
xchg byte [0x20467f60], al
lea rax, [0x20467f50]
ret
movzx eax, byte [0x2046812d]
cmp al, 0xc
je 0x201f778a
mov cl, 0x83
mov al, 0x8a
lock cmpxchg byte [0x2046812d], cl
je 0x201f7761
cmp al, 0xc
jne 0x201f74d2
jmp 0x201f778a
xor eax, eax
lea rcx, [0x204680a0]
lea rdx, [0x2037d440]
nop dword [rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 2
jl 0x201f7500
mov al, 0x54
xchg byte [0x204680a2], al
lea rax, [0x204680a0]
ret
xor eax, eax
lea rcx, [0x20468090]
lea rdx, [0x2037d430]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 2
jl 0x201f7540
mov al, 0x5a
xchg byte [0x20468092], al
lea rax, [0x20468090]
ret
xor eax, eax
lea rcx, [0x204680d0]
lea rdx, [0x2037d470]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x13
jl 0x201f7580
mov al, 0x9f
xchg byte [0x204680e3], al
lea rax, [0x204680d0]
ret
xor eax, eax
lea rcx, [0x20468000]
lea rdx, [0x2037d3a0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 3
jl 0x201f75c0
mov al, 0xbf
xchg byte [0x20468003], al
lea rax, [0x20468000]
ret
xor eax, eax
lea rcx, [0x20468060]
lea rdx, [0x2037d400]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x26
jl 0x201f7600
mov al, 0xe1
xchg byte [0x20468086], al
lea rax, [0x20468060]
ret
xor eax, eax
lea rcx, [0x20468180]
lea rdx, [0x2037d520]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x201f7640
mov al, 0xf0
xchg byte [0x2046818d], al
lea rax, [0x20468180]
ret
xor eax, eax
lea rcx, [0x20468170]
lea rdx, [0x2037d510]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xf
jl 0x201f7680
mov al, 0x5d
xchg byte [0x2046817f], al
lea rax, [0x20468170]
ret
xor eax, eax
lea rcx, [0x20468040]
lea rdx, [0x2037d3e0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xb
jl 0x201f76c0
mov al, 0xdf
xchg byte [0x2046804b], al
lea rax, [0x20468040]
ret
xor eax, eax
lea rcx, [0x204681f0]
lea rdx, [0x2037d590]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x12
jl 0x201f7700
mov al, 0x22
xchg byte [0x20468202], al
lea rax, [0x204681f0]
ret
xor eax, eax
lea rcx, [0x20468050]
lea rdx, [0x2037d3f0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xf
jl 0x201f7740
mov al, 0x8f
xchg byte [0x2046805f], al
lea rax, [0x20468050]
ret
xor eax, eax
lea rcx, [0x20468120]
lea rdx, [0x2037d4c0]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x201f7771
mov al, 0xc
xchg byte [0x2046812d], al
lea rax, [0x20468120]
ret