Function at 0x2017db60
Capabilities:
Encode data using xor

Disassembly:
test ecx, ecx
je 0x2017dbac
test edx, edx
je 0x2017dbfc
test r8d, r8d
je 0x2017dc3c
test r9d, r9d
je 0x2017dcb9
movzx eax, byte [0x203c957f]
cmp al, 0xf
je 0x2017dba4
mov cl, 0xa7
nop dword [rax + rax]
mov al, 0xc4
lock cmpxchg byte [0x203c957f], cl
je 0x2017de39
cmp al, 0xf
jne 0x2017db90
lea rax, [0x203c9560]
ret
test edx, edx
je 0x2017dc7c
test r8d, r8d
je 0x2017dcec
test r9d, r9d
je 0x2017dd69
movzx eax, byte [0x203c9276]
cmp al, 0x70
je 0x2017dbf4
mov cl, 0x48
nop word cs:[rax + rax]
mov al, 0x6c
lock cmpxchg byte [0x203c9276], cl
je 0x2017df09
cmp al, 0x70
jne 0x2017dbe0
lea rax, [0x203c9250]
ret
test r8d, r8d
je 0x2017dd29
test r9d, r9d
je 0x2017dd99
movzx eax, byte [0x203c99fc]
cmp al, 0x61
je 0x2017dc34
mov cl, 0xb6
nop dword [rax + rax]
mov al, 0x9b
lock cmpxchg byte [0x203c99fc], cl
je 0x2017df41
cmp al, 0x61
jne 0x2017dc20
lea rax, [0x203c99f0]
ret
test r9d, r9d
je 0x2017ddc9
movzx eax, byte [0x203c9d5d]
cmp al, 0xda
je 0x2017dc74
mov cl, 0xb9
nop word cs:[rax + rax]
mov al, 0xec
lock cmpxchg byte [0x203c9d5d], cl
je 0x2017df81
cmp al, 0xda
jne 0x2017dc60
lea rax, [0x203c9d50]
ret
test r8d, r8d
je 0x2017ddf9
test r9d, r9d
je 0x2017de71
movzx eax, byte [0x203c9cfc]
cmp al, 0xb9
je 0x2017e059
xor ecx, ecx
nop
mov al, 0xcc
lock cmpxchg byte [0x203c9cfc], cl
je 0x2017e02b
cmp al, 0xb9
jne 0x2017dca0
jmp 0x2017e059
movzx eax, byte [0x203c9334]
cmp al, 0x93
je 0x2017dce4
mov cl, 0xf5
nop word cs:[rax + rax]
mov al, 0x25
lock cmpxchg byte [0x203c9334], cl
je 0x2017dfc1
cmp al, 0x93
jne 0x2017dcd0
lea rax, [0x203c9310]
ret
test r9d, r9d
je 0x2017dea9
movzx eax, byte [0x203c97ae]
cmp al, 0x79
je 0x2017e099
mov cl, 0xd1
nop word cs:[rax + rax]
mov al, 0x15
lock cmpxchg byte [0x203c97ae], cl
je 0x2017e061
cmp al, 0x79
jne 0x2017dd10
jmp 0x2017e099
test r9d, r9d
je 0x2017ded9
movzx eax, byte [0x203c97ee]
cmp al, 0x6d
je 0x2017e0d9
mov cl, 0x67
nop word cs:[rax + rax]
mov al, 0x83
lock cmpxchg byte [0x203c97ee], cl
je 0x2017e0a1
cmp al, 0x6d
jne 0x2017dd50
jmp 0x2017e0d9
movzx eax, byte [0x203c92d2]
cmp al, 0x27
je 0x2017e119
mov cl, 0x30
nop word [rax + rax]
mov al, 0x13
lock cmpxchg byte [0x203c92d2], cl
je 0x2017e0e1
cmp al, 0x27
jne 0x2017dd80
jmp 0x2017e119
movzx eax, byte [0x203c9aeb]
cmp al, 0x37
je 0x2017e159
mov cl, 0x4a
nop word [rax + rax]
mov al, 0xfe
lock cmpxchg byte [0x203c9aeb], cl
je 0x2017e121
cmp al, 0x37
jne 0x2017ddb0
jmp 0x2017e159
movzx eax, byte [0x203c9b2d]
cmp al, 0x61
je 0x2017e199
mov cl, 0xe2
nop word [rax + rax]
mov al, 0xb5
lock cmpxchg byte [0x203c9b2d], cl
je 0x2017e161
cmp al, 0x61
jne 0x2017dde0
jmp 0x2017e199
test r9d, r9d
je 0x2017e001
movzx eax, byte [0x203c9c41]
cmp al, 8
je 0x2017e219
mov cl, 0x3d
nop word cs:[rax + rax]
mov al, 0x2c
lock cmpxchg byte [0x203c9c41], cl
je 0x2017e1e1
cmp al, 8
jne 0x2017de20
jmp 0x2017e219
xor eax, eax
lea rcx, [0x203c9560]
lea rdx, [0x202fafd0]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x1f
jl 0x2017de50
mov al, 0xf
xchg byte [0x203c957f], al
lea rax, [0x203c9560]
ret
movzx eax, byte [0x203c96bd]
cmp al, 0xc1
je 0x2017e259
mov cl, 0x36
nop word cs:[rax + rax]
mov al, 0x85
lock cmpxchg byte [0x203c96bd], cl
je 0x2017e221
cmp al, 0xc1
jne 0x2017de90
jmp 0x2017e259
movzx eax, byte [0x203c9ded]
cmp al, 0xff
je 0x2017e1d9
mov cl, 0xd2
nop word [rax + rax]
mov al, 0x9b
lock cmpxchg byte [0x203c9ded], cl
je 0x2017e1a1
cmp al, 0xff
jne 0x2017dec0
jmp 0x2017e1d9
movzx eax, byte [0x203c92a4]
cmp al, 0xfd
je 0x2017e299
mov cl, 0x9e
nop word [rax + rax]
mov al, 0x40
lock cmpxchg byte [0x203c92a4], cl
je 0x2017e261
cmp al, 0xfd
jne 0x2017def0
jmp 0x2017e299
xor eax, eax
lea rcx, [0x203c9250]
lea rdx, [0x202face0]
nop dword [rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x26
jl 0x2017df20
mov al, 0x70
xchg byte [0x203c9276], al
lea rax, [0x203c9250]
ret
xor eax, eax
lea rcx, [0x203c99f0]
lea rdx, [0x202fb430]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xc
jl 0x2017df60
mov al, 0x61
xchg byte [0x203c99fc], al
lea rax, [0x203c99f0]
ret
xor eax, eax
lea rcx, [0x203c9d50]
lea rdx, [0x202fb790]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x2017dfa0
mov al, 0xda
xchg byte [0x203c9d5d], al
lea rax, [0x203c9d50]
ret
xor eax, eax
lea rcx, [0x203c9310]
lea rdx, [0x202fada0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x24
jl 0x2017dfe0
mov al, 0x93
xchg byte [0x203c9334], al
lea rax, [0x203c9310]
ret
movzx eax, byte [0x203c9c6f]
cmp al, 0x3a
je 0x2017e2ca
mov cl, 0xce
mov al, 0xa3
lock cmpxchg byte [0x203c9c6f], cl
je 0x2017e2a1
cmp al, 0x3a
jne 0x2017e012
jmp 0x2017e2ca
xor eax, eax
lea rcx, [0x203c9cf0]
lea rdx, [0x202fb730]
nop dword [rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xc
jl 0x2017e040
mov al, 0xb9
xchg byte [0x203c9cfc], al
lea rax, [0x203c9cf0]
ret
xor eax, eax
lea rcx, [0x203c97a0]
lea rdx, [0x202fb1f0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xe
jl 0x2017e080
mov al, 0x79
xchg byte [0x203c97ae], al
lea rax, [0x203c97a0]
ret
xor eax, eax
lea rcx, [0x203c97d0]
lea rdx, [0x202fb220]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x1e
jl 0x2017e0c0
mov al, 0x6d
xchg byte [0x203c97ee], al
lea rax, [0x203c97d0]
ret
xor eax, eax
lea rcx, [0x203c92b0]
lea rdx, [0x202fad40]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x22
jl 0x2017e100
mov al, 0x27
xchg byte [0x203c92d2], al
lea rax, [0x203c92b0]
ret
xor eax, eax
lea rcx, [0x203c9ad0]
lea rdx, [0x202fb510]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x1b
jl 0x2017e140
mov al, 0x37
xchg byte [0x203c9aeb], al
lea rax, [0x203c9ad0]
ret
xor eax, eax
lea rcx, [0x203c9b20]
lea rdx, [0x202fb560]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x2017e180
mov al, 0x61
xchg byte [0x203c9b2d], al
lea rax, [0x203c9b20]
ret
xor eax, eax
lea rcx, [0x203c9de0]
lea rdx, [0x202fb820]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x2017e1c0
mov al, 0xff
xchg byte [0x203c9ded], al
lea rax, [0x203c9de0]
ret
xor eax, eax
lea rcx, [0x203c9c30]
lea rdx, [0x202fb670]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x11
jl 0x2017e200
mov al, 8
xchg byte [0x203c9c41], al
lea rax, [0x203c9c30]
ret
xor eax, eax
lea rcx, [0x203c96b0]
lea rdx, [0x202fb110]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x2017e240
mov al, 0xc1
xchg byte [0x203c96bd], al
lea rax, [0x203c96b0]
ret
xor eax, eax
lea rcx, [0x203c9280]
lea rdx, [0x202fad10]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x24
jl 0x2017e280
mov al, 0xfd
xchg byte [0x203c92a4], al
lea rax, [0x203c9280]
ret
xor eax, eax
lea rcx, [0x203c9c60]
lea rdx, [0x202fb6a0]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xf
jl 0x2017e2b1
mov al, 0x3a
xchg byte [0x203c9c6f], al
lea rax, [0x203c9c60]
ret