Function at 0x20132290
Capabilities:
Encode data using xor

Disassembly:
test ecx, ecx
je 0x201322dc
test edx, edx
je 0x2013232c
test r8d, r8d
je 0x2013236c
test r9d, r9d
je 0x201323e9
movzx eax, byte [0x20450225]
cmp al, 0xed
je 0x201322d4
mov cl, 0xf1
nop dword [rax + rax]
mov al, 0x1c
lock cmpxchg byte [0x20450225], cl
je 0x20132569
cmp al, 0xed
jne 0x201322c0
lea rax, [0x20450220]
ret
test edx, edx
je 0x201323ac
test r8d, r8d
je 0x2013241c
test r9d, r9d
je 0x20132499
movzx eax, byte [0x2045021c]
cmp al, 0x7a
je 0x20132324
mov cl, 0x44
nop word cs:[rax + rax]
mov al, 0x2a
lock cmpxchg byte [0x2045021c], cl
je 0x20132639
cmp al, 0x7a
jne 0x20132310
lea rax, [0x20450200]
ret
test r8d, r8d
je 0x20132459
test r9d, r9d
je 0x201324c9
movzx eax, byte [0x20450182]
cmp al, 0x99
je 0x20132364
mov cl, 0xa5
nop dword [rax + rax]
mov al, 0xcd
lock cmpxchg byte [0x20450182], cl
je 0x20132671
cmp al, 0x99
jne 0x20132350
lea rax, [0x20450170]
ret
test r9d, r9d
je 0x201324f9
movzx eax, byte [0x2045028f]
cmp al, 0x92
je 0x201323a4
mov cl, 0x8c
nop word cs:[rax + rax]
mov al, 0x9a
lock cmpxchg byte [0x2045028f], cl
je 0x201326b1
cmp al, 0x92
jne 0x20132390
lea rax, [0x20450280]
ret
test r8d, r8d
je 0x20132529
test r9d, r9d
je 0x201325a1
movzx eax, byte [0x2045032d]
cmp al, 0x7e
je 0x20132789
mov cl, 0xc9
nop
mov al, 0xd4
lock cmpxchg byte [0x2045032d], cl
je 0x2013275b
cmp al, 0x7e
jne 0x201323d0
jmp 0x20132789
movzx eax, byte [0x204502fd]
cmp al, 0x9e
je 0x20132414
mov cl, 0xb
nop word cs:[rax + rax]
mov al, 0x68
lock cmpxchg byte [0x204502fd], cl
je 0x201326f1
cmp al, 0x9e
jne 0x20132400
lea rax, [0x204502f0]
ret
test r9d, r9d
je 0x201325d9
movzx eax, byte [0x204501de]
cmp al, 3
je 0x201327c9
mov cl, 0xf8
nop word cs:[rax + rax]
mov al, 0x9c
lock cmpxchg byte [0x204501de], cl
je 0x20132791
cmp al, 3
jne 0x20132440
jmp 0x201327c9
test r9d, r9d
je 0x20132609
movzx eax, byte [0x20450233]
cmp al, 0xa3
je 0x20132809
mov cl, 0x62
nop word cs:[rax + rax]
mov al, 0xc1
lock cmpxchg byte [0x20450233], cl
je 0x201327d1
cmp al, 0xa3
jne 0x20132480
jmp 0x20132809
movzx eax, byte [0x20450165]
cmp al, 0x7c
je 0x20132849
mov cl, 0x44
nop word [rax + rax]
mov al, 0xb4
lock cmpxchg byte [0x20450165], cl
je 0x20132811
cmp al, 0x7c
jne 0x201324b0
jmp 0x20132849
movzx eax, byte [0x204502c2]
cmp al, 0x9b
je 0x20132889
mov cl, 0xdc
nop word [rax + rax]
mov al, 0x6e
lock cmpxchg byte [0x204502c2], cl
je 0x20132851
cmp al, 0x9b
jne 0x201324e0
jmp 0x20132889
movzx eax, byte [0x204502b6]
cmp al, 0x50
je 0x201328c9
mov cl, 0x53
nop word [rax + rax]
mov al, 0xb8
lock cmpxchg byte [0x204502b6], cl
je 0x20132891
cmp al, 0x50
jne 0x20132510
jmp 0x201328c9
test r9d, r9d
je 0x20132731
movzx eax, byte [0x204501a1]
cmp al, 0xee
je 0x20132909
mov cl, 0xf2
nop word cs:[rax + rax]
mov al, 0x12
lock cmpxchg byte [0x204501a1], cl
je 0x201328d1
cmp al, 0xee
jne 0x20132550
jmp 0x20132909
xor eax, eax
lea rcx, [0x20450220]
lea rdx, [0x203735e0]
nop dword [rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 5
jl 0x20132580
mov al, 0xed
xchg byte [0x20450225], al
lea rax, [0x20450220]
ret
movzx eax, byte [0x20450346]
cmp al, 0xf6
je 0x20132949
mov cl, 0x88
nop word cs:[rax + rax]
mov al, 0x3a
lock cmpxchg byte [0x20450346], cl
je 0x20132911
cmp al, 0xf6
jne 0x201325c0
jmp 0x20132949
movzx eax, byte [0x20450313]
cmp al, 0xd3
je 0x20132989
mov cl, 0x9f
nop word [rax + rax]
mov al, 0xb4
lock cmpxchg byte [0x20450313], cl
je 0x20132951
cmp al, 0xd3
jne 0x201325f0
jmp 0x20132989
movzx eax, byte [0x20450263]
cmp al, 0xb2
je 0x201329c9
mov cl, 0x2f
nop word [rax + rax]
mov al, 0xf8
lock cmpxchg byte [0x20450263], cl
je 0x20132991
cmp al, 0xb2
jne 0x20132620
jmp 0x201329c9
xor eax, eax
lea rcx, [0x20450200]
lea rdx, [0x203735c0]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x1c
jl 0x20132650
mov al, 0x7a
xchg byte [0x2045021c], al
lea rax, [0x20450200]
ret
xor eax, eax
lea rcx, [0x20450170]
lea rdx, [0x20373550]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x12
jl 0x20132690
mov al, 0x99
xchg byte [0x20450182], al
lea rax, [0x20450170]
ret
xor eax, eax
lea rcx, [0x20450280]
lea rdx, [0x20373640]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xf
jl 0x201326d0
mov al, 0x92
xchg byte [0x2045028f], al
lea rax, [0x20450280]
ret
xor eax, eax
lea rcx, [0x204502f0]
lea rdx, [0x203736b0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x20132710
mov al, 0x9e
xchg byte [0x204502fd], al
lea rax, [0x204502f0]
ret
movzx eax, byte [0x204501c0]
cmp al, 0xd5
je 0x201329fa
mov cl, 0xac
mov al, 0x48
lock cmpxchg byte [0x204501c0], cl
je 0x201329d1
cmp al, 0xd5
jne 0x20132742
jmp 0x201329fa
xor eax, eax
lea rcx, [0x20450320]
lea rdx, [0x203736e0]
nop dword [rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x20132770
mov al, 0x7e
xchg byte [0x2045032d], al
lea rax, [0x20450320]
ret
xor eax, eax
lea rcx, [0x204501d0]
lea rdx, [0x203735a0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xe
jl 0x201327b0
mov al, 3
xchg byte [0x204501de], al
lea rax, [0x204501d0]
ret
xor eax, eax
lea rcx, [0x20450230]
lea rdx, [0x203735f0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 3
jl 0x201327f0
mov al, 0xa3
xchg byte [0x20450233], al
lea rax, [0x20450230]
ret
xor eax, eax
lea rcx, [0x20450150]
lea rdx, [0x20373530]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x15
jl 0x20132830
mov al, 0x7c
xchg byte [0x20450165], al
lea rax, [0x20450150]
ret
xor eax, eax
lea rcx, [0x204502c0]
lea rdx, [0x20373680]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 2
jl 0x20132870
mov al, 0x9b
xchg byte [0x204502c2], al
lea rax, [0x204502c0]
ret
xor eax, eax
lea rcx, [0x20450290]
lea rdx, [0x20373650]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x26
jl 0x201328b0
mov al, 0x50
xchg byte [0x204502b6], al
lea rax, [0x20450290]
ret
xor eax, eax
lea rcx, [0x20450190]
lea rdx, [0x20373570]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x11
jl 0x201328f0
mov al, 0xee
xchg byte [0x204501a1], al
lea rax, [0x20450190]
ret
xor eax, eax
lea rcx, [0x20450330]
lea rdx, [0x203736f0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x16
jl 0x20132930
mov al, 0xf6
xchg byte [0x20450346], al
lea rax, [0x20450330]
ret
xor eax, eax
lea rcx, [0x20450300]
lea rdx, [0x203736c0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x13
jl 0x20132970
mov al, 0xd3
xchg byte [0x20450313], al
lea rax, [0x20450300]
ret
xor eax, eax
lea rcx, [0x20450240]
lea rdx, [0x20373600]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x23
jl 0x201329b0
mov al, 0xb2
xchg byte [0x20450263], al
lea rax, [0x20450240]
ret
xor eax, eax
lea rcx, [0x204501b0]
lea rdx, [0x20373590]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x10
jl 0x201329e1
mov al, 0xd5
xchg byte [0x204501c0], al
lea rax, [0x204501b0]
ret