Function at 0x140218ac0
Capabilities:
Encode data using xor

Disassembly:
test ecx, ecx
je 0x140218b0c
test edx, edx
je 0x140218b5c
test r8d, r8d
je 0x140218b9c
test r9d, r9d
je 0x140218c19
movzx eax, byte [0x140484753]
cmp al, 0xf4
je 0x140218b04
mov cl, 0x93
nop dword [rax + rax]
mov al, 0x9f
lock cmpxchg byte [0x140484753], cl
je 0x140218d99
cmp al, 0xf4
jne 0x140218af0
lea rax, [0x140484750]
ret
test edx, edx
je 0x140218bdc
test r8d, r8d
je 0x140218c4c
test r9d, r9d
je 0x140218cc9
movzx eax, byte [0x140484a0d]
cmp al, 0xc8
je 0x140218b54
mov cl, 0xfb
nop word cs:[rax + rax]
mov al, 0xef
lock cmpxchg byte [0x140484a0d], cl
je 0x140218e69
cmp al, 0xc8
jne 0x140218b40
lea rax, [0x140484a00]
ret
test r8d, r8d
je 0x140218c89
test r9d, r9d
je 0x140218cf9
movzx eax, byte [0x140484863]
cmp al, 0x2a
je 0x140218b94
mov cl, 0xbb
nop dword [rax + rax]
mov al, 0xdd
lock cmpxchg byte [0x140484863], cl
je 0x140218ea1
cmp al, 0x2a
jne 0x140218b80
lea rax, [0x140484860]
ret
test r9d, r9d
je 0x140218d29
movzx eax, byte [0x14048497d]
cmp al, 0xf8
je 0x140218bd4
mov cl, 0x5a
nop word cs:[rax + rax]
mov al, 0x3e
lock cmpxchg byte [0x14048497d], cl
je 0x140218ee1
cmp al, 0xf8
jne 0x140218bc0
lea rax, [0x140484970]
ret
test r8d, r8d
je 0x140218d59
test r9d, r9d
je 0x140218dd1
movzx eax, byte [0x14048484c]
cmp al, 0x51
je 0x140218fb9
mov cl, 0x35
nop
mov al, 0x24
lock cmpxchg byte [0x14048484c], cl
je 0x140218f8b
cmp al, 0x51
jne 0x140218c00
jmp 0x140218fb9
movzx eax, byte [0x1404848bf]
cmp al, 0x3f
je 0x140218c44
mov cl, 0x1a
nop word cs:[rax + rax]
mov al, 0x57
lock cmpxchg byte [0x1404848bf], cl
je 0x140218f21
cmp al, 0x3f
jne 0x140218c30
lea rax, [0x1404848b0]
ret
test r9d, r9d
je 0x140218e09
movzx eax, byte [0x140484828]
cmp al, 0x70
je 0x140218ff9
mov cl, 0x12
nop word cs:[rax + rax]
mov al, 0xd5
lock cmpxchg byte [0x140484828], cl
je 0x140218fc1
cmp al, 0x70
jne 0x140218c70
jmp 0x140218ff9
test r9d, r9d
je 0x140218e39
movzx eax, byte [0x1404847e5]
cmp al, 0x31
je 0x140219039
mov cl, 0x54
nop word cs:[rax + rax]
mov al, 0xe4
lock cmpxchg byte [0x1404847e5], cl
je 0x140219001
cmp al, 0x31
jne 0x140218cb0
jmp 0x140219039
movzx eax, byte [0x140484a58]
cmp al, 0x1c
je 0x140219079
mov cl, 0x29
nop word [rax + rax]
mov al, 0xa1
lock cmpxchg byte [0x140484a58], cl
je 0x140219041
cmp al, 0x1c
jne 0x140218ce0
jmp 0x140219079
movzx eax, byte [0x1404847c0]
cmp al, 0x61
je 0x1402190b9
mov cl, 0x47
nop word [rax + rax]
mov al, 0x88
lock cmpxchg byte [0x1404847c0], cl
je 0x140219081
cmp al, 0x61
jne 0x140218d10
jmp 0x1402190b9
movzx eax, byte [0x14048493c]
cmp al, 0x2f
je 0x1402190f9
mov cl, 0x24
nop word [rax + rax]
mov al, 0x6d
lock cmpxchg byte [0x14048493c], cl
je 0x1402190c1
cmp al, 0x2f
jne 0x140218d40
jmp 0x1402190f9
test r9d, r9d
je 0x140218f61
movzx eax, byte [0x1404849c5]
cmp al, 0x66
je 0x140219139
mov cl, 0xc0
nop word cs:[rax + rax]
mov al, 0x5b
lock cmpxchg byte [0x1404849c5], cl
je 0x140219101
cmp al, 0x66
jne 0x140218d80
jmp 0x140219139
xor eax, eax
lea rcx, [0x140484750]
lea rdx, [0x140399920]
nop dword [rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 3
jl 0x140218db0
mov al, 0xf4
xchg byte [0x140484753], al
lea rax, [0x140484750]
ret
movzx eax, byte [0x14048479c]
cmp al, 0xe0
je 0x140219179
mov cl, 0xe1
nop word cs:[rax + rax]
mov al, 0xd3
lock cmpxchg byte [0x14048479c], cl
je 0x140219141
cmp al, 0xe0
jne 0x140218df0
jmp 0x140219179
movzx eax, byte [0x1404849ad]
cmp al, 0xfd
je 0x1402191b9
mov cl, 0x2d
nop word [rax + rax]
mov al, 0x79
lock cmpxchg byte [0x1404849ad], cl
je 0x140219181
cmp al, 0xfd
jne 0x140218e20
jmp 0x1402191b9
movzx eax, byte [0x140484785]
cmp al, 0xa
je 0x1402191f9
mov cl, 0xd3
nop word [rax + rax]
mov al, 0xe5
lock cmpxchg byte [0x140484785], cl
je 0x1402191c1
cmp al, 0xa
jne 0x140218e50
jmp 0x1402191f9
xor eax, eax
lea rcx, [0x140484a00]
lea rdx, [0x140399bc0]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x140218e80
mov al, 0xc8
xchg byte [0x140484a0d], al
lea rax, [0x140484a00]
ret
xor eax, eax
lea rcx, [0x140484860]
lea rdx, [0x140399a20]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 3
jl 0x140218ec0
mov al, 0x2a
xchg byte [0x140484863], al
lea rax, [0x140484860]
ret
xor eax, eax
lea rcx, [0x140484970]
lea rdx, [0x140399b30]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x140218f00
mov al, 0xf8
xchg byte [0x14048497d], al
lea rax, [0x140484970]
ret
xor eax, eax
lea rcx, [0x1404848b0]
lea rdx, [0x140399a70]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xf
jl 0x140218f40
mov al, 0x3f
xchg byte [0x1404848bf], al
lea rax, [0x1404848b0]
ret
movzx eax, byte [0x140484a7d]
cmp al, 0x24
je 0x14021922a
mov cl, 0xeb
mov al, 8
lock cmpxchg byte [0x140484a7d], cl
je 0x140219201
cmp al, 0x24
jne 0x140218f72
jmp 0x14021922a
xor eax, eax
lea rcx, [0x140484830]
lea rdx, [0x1403999f0]
nop dword [rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x1c
jl 0x140218fa0
mov al, 0x51
xchg byte [0x14048484c], al
lea rax, [0x140484830]
ret
xor eax, eax
lea rcx, [0x140484810]
lea rdx, [0x1403999d0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x18
jl 0x140218fe0
mov al, 0x70
xchg byte [0x140484828], al
lea rax, [0x140484810]
ret
xor eax, eax
lea rcx, [0x1404847d0]
lea rdx, [0x140399990]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x15
jl 0x140219020
mov al, 0x31
xchg byte [0x1404847e5], al
lea rax, [0x1404847d0]
ret
xor eax, eax
lea rcx, [0x140484a40]
lea rdx, [0x140399c00]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x18
jl 0x140219060
mov al, 0x1c
xchg byte [0x140484a58], al
lea rax, [0x140484a40]
ret
xor eax, eax
lea rcx, [0x1404847b0]
lea rdx, [0x140399980]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x10
jl 0x1402190a0
mov al, 0x61
xchg byte [0x1404847c0], al
lea rax, [0x1404847b0]
ret
xor eax, eax
lea rcx, [0x140484930]
lea rdx, [0x140399af0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xc
jl 0x1402190e0
mov al, 0x2f
xchg byte [0x14048493c], al
lea rax, [0x140484930]
ret
xor eax, eax
lea rcx, [0x1404849b0]
lea rdx, [0x140399b70]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x15
jl 0x140219120
mov al, 0x66
xchg byte [0x1404849c5], al
lea rax, [0x1404849b0]
ret
xor eax, eax
lea rcx, [0x140484790]
lea rdx, [0x140399960]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xc
jl 0x140219160
mov al, pe_nt_image_headers64
xchg byte [0x14048479c], al
lea rax, [0x140484790]
ret
xor eax, eax
lea rcx, [0x1404849a0]
lea rdx, [0x140399b60]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x1402191a0
mov al, 0xfd
xchg byte [0x1404849ad], al
lea rax, [0x1404849a0]
ret
xor eax, eax
lea rcx, [0x140484780]
lea rdx, [0x140399950]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 5
jl 0x1402191e0
mov al, 0xa
xchg byte [0x140484785], al
lea rax, [0x140484780]
ret
xor eax, eax
lea rcx, [0x140484a70]
lea rdx, [0x140399c30]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x140219211
mov al, 0x24
xchg byte [0x140484a7d], al
lea rax, [0x140484a70]
ret