Function at 0x632ed0
Capabilities:
Encode data using xor

Disassembly:
push esi
mov eax, dword [esp + 0xc]
mov esi, dword [esp + 8]
test ecx, ecx
je 0x632f29
test edx, edx
je 0x632f79
test esi, esi
je 0x632fb9
test eax, eax
je 0x633039
movzx eax, byte [0xb264d3]
cmp al, 5
je 0x6331db
mov cl, 0xe4
nop word cs:[eax + eax]
mov al, 0xd4
lock cmpxchg byte [0xb264d3], cl
je 0x6331b9
cmp al, 5
jne 0x632f10
jmp 0x6331db
test edx, edx
je 0x632ff9
test esi, esi
je 0x633069
test eax, eax
je 0x6330e9
movzx eax, byte [0xb2638f]
cmp al, 0xd6
je 0x63329b
mov cl, 0xc6
nop word cs:[eax + eax]
nop dword [eax]
mov al, 0x58
lock cmpxchg byte [0xb2638f], cl
je 0x633279
cmp al, 0xd6
jne 0x632f60
jmp 0x63329b
test esi, esi
je 0x6330a9
test eax, eax
je 0x633119
movzx eax, byte [0xb267db]
cmp al, 0x15
je 0x6332cb
mov cl, 0xa3
nop word [eax + eax]
mov al, 0xf1
lock cmpxchg byte [0xb267db], cl
je 0x6332a2
cmp al, 0x15
jne 0x632fa0
jmp 0x6332cb
test eax, eax
je 0x633149
movzx eax, byte [0xb265b5]
cmp al, 0x22
je 0x6332fb
mov cl, 0x78
nop word cs:[eax + eax]
nop dword [eax]
mov al, 0xc0
lock cmpxchg byte [0xb265b5], cl
je 0x6332d2
cmp al, 0x22
jne 0x632fe0
jmp 0x6332fb
test esi, esi
je 0x633179
test eax, eax
je 0x6331e2
movzx eax, byte [0xb26612]
cmp al, 0xba
je 0x63337b
mov cl, 0x46
nop word [eax + eax]
mov al, 0xb7
lock cmpxchg byte [0xb26612], cl
je 0x63335c
cmp al, 0xba
jne 0x633020
jmp 0x63337b
movzx eax, byte [0xb26759]
cmp al, 0x28
je 0x63332b
mov cl, 0x2f
nop word [eax + eax]
mov al, 0xb2
lock cmpxchg byte [0xb26759], cl
je 0x633302
cmp al, 0x28
jne 0x633050
jmp 0x63332b
test eax, eax
je 0x633219
movzx eax, byte [0xb262e3]
cmp al, 0x9f
je 0x6333ab
mov cl, 0xee
nop word cs:[eax + eax]
nop dword [eax]
mov al, 0x57
lock cmpxchg byte [0xb262e3], cl
je 0x633382
cmp al, 0x9f
jne 0x633090
jmp 0x6333ab
test eax, eax
je 0x633249
movzx eax, byte [0xb263b0]
cmp al, 0xb7
je 0x6333db
mov cl, 0xf5
nop word cs:[eax + eax]
nop dword [eax]
mov al, 0x24
lock cmpxchg byte [0xb263b0], cl
je 0x6333b2
cmp al, 0xb7
jne 0x6330d0
jmp 0x6333db
movzx eax, byte [0xb26331]
cmp al, 0x4f
je 0x63340b
mov cl, 0x97
nop word [eax + eax]
mov al, 0xa4
lock cmpxchg byte [0xb26331], cl
je 0x6333e2
cmp al, 0x4f
jne 0x633100
jmp 0x63340b
movzx eax, byte [0xb265d0]
cmp al, 0x64
je 0x63343b
mov cl, 0x5d
nop word [eax + eax]
mov al, 0x87
lock cmpxchg byte [0xb265d0], cl
je 0x633412
cmp al, 0x64
jne 0x633130
jmp 0x63343b
movzx eax, byte [0xb264a7]
cmp al, 0xea
je 0x63346b
mov cl, 0x6d
nop word [eax + eax]
mov al, 0x87
lock cmpxchg byte [0xb264a7], cl
je 0x633442
cmp al, 0xea
jne 0x633160
jmp 0x63346b
test eax, eax
je 0x633332
movzx eax, byte [0xb26214]
cmp al, 0x93
je 0x63349b
mov cl, 0xf5
nop word cs:[eax + eax]
nop dword [eax]
mov al, 0x25
lock cmpxchg byte [0xb26214], cl
je 0x633472
cmp al, 0x93
jne 0x6331a0
jmp 0x63349b
xor eax, eax
nop dword [eax + eax]
movzx ecx, byte [eax + 0xaade80]
xor byte [eax + 0xb264b0], cl
inc eax
cmp eax, 0x23
jl 0x6331c0
mov al, 5
xchg byte [0xb264d3], al
mov eax, 0xb264b0
pop esi
ret
movzx eax, byte [0xb2643a]
cmp al, 0x3e
je 0x6334cb
mov cl, 0x38
nop word cs:[eax + eax]
nop dword [eax]
mov al, 0xbf
lock cmpxchg byte [0xb2643a], cl
je 0x6334a2
cmp al, 0x3e
jne 0x633200
jmp 0x6334cb
movzx eax, byte [0xb2673c]
cmp al, 0x53
je 0x6334fb
mov cl, 0xec
nop word [eax + eax]
mov al, 0x21
lock cmpxchg byte [0xb2673c], cl
je 0x6334d2
cmp al, 0x53
jne 0x633230
jmp 0x6334fb
movzx eax, byte [0xb267c3]
cmp al, 0x24
je 0x63352b
mov cl, 0x17
nop word [eax + eax]
mov al, 0xe1
lock cmpxchg byte [0xb267c3], cl
je 0x633502
cmp al, 0x24
jne 0x633260
jmp 0x63352b
xor eax, eax
nop dword [eax + eax]
movzx ecx, byte [eax + 0xaadd50]
add byte [eax + 0xb26370], cl
inc eax
cmp eax, 0x1f
jl 0x633280
mov al, 0xd6
xchg byte [0xb2638f], al
mov eax, 0xb26370
pop esi
ret
xor eax, eax
nop word cs:[eax + eax]
nop
movzx ecx, byte [eax + 0xaae180]
xor byte [eax + 0xb267d0], cl
inc eax
cmp eax, 0xb
jl 0x6332b0
mov al, 0x15
xchg byte [0xb267db], al
mov eax, 0xb267d0
pop esi
ret
xor eax, eax
nop word cs:[eax + eax]
nop
movzx ecx, byte [eax + 0xaadf60]
xor byte [eax + 0xb265a0], cl
inc eax
cmp eax, 0x15
jl 0x6332e0
mov al, 0x22
xchg byte [0xb265b5], al
mov eax, 0xb265a0
pop esi
ret
xor eax, eax
nop word cs:[eax + eax]
nop
movzx ecx, byte [eax + 0xaae0f0]
add byte [eax + 0xb26740], cl
inc eax
cmp eax, 0x19
jl 0x633310
mov al, 0x28
xchg byte [0xb26759], al
mov eax, 0xb26740
pop esi
ret
movzx eax, byte [0xb26504]
cmp al, 0x79
je 0x63354f
mov cl, 0xe8
mov al, 0xe9
lock cmpxchg byte [0xb26504], cl
je 0x633532
cmp al, 0x79
jne 0x633343
jmp 0x63354f
xor eax, eax
nop
movzx ecx, byte [eax + 0xaadfb0]
xor byte [eax + 0xb26600], cl
inc eax
cmp eax, 0x12
jl 0x633360
mov al, 0xba
xchg byte [0xb26612], al
mov eax, 0xb26600
pop esi
ret
xor eax, eax
nop word cs:[eax + eax]
nop
movzx ecx, byte [eax + 0xaadca0]
xor byte [eax + 0xb262c0], cl
inc eax
cmp eax, 0x23
jl 0x633390
mov al, 0x9f
xchg byte [0xb262e3], al
mov eax, 0xb262c0
pop esi
ret
xor eax, eax
nop word cs:[eax + eax]
nop
movzx ecx, byte [eax + 0xaadd70]
xor byte [eax + 0xb26390], cl
inc eax
cmp eax, 0x20
jl 0x6333c0
mov al, 0xb7
xchg byte [0xb263b0], al
mov eax, 0xb26390
pop esi
ret
xor eax, eax
nop word cs:[eax + eax]
nop
movzx ecx, byte [eax + 0xaadcf0]
add byte [eax + 0xb26310], cl
inc eax
cmp eax, 0x21
jl 0x6333f0
mov al, 0x4f
xchg byte [0xb26331], al
mov eax, 0xb26310
pop esi
ret
xor eax, eax
nop word cs:[eax + eax]
nop
movzx ecx, byte [eax + 0xaadf80]
xor byte [eax + 0xb265c0], cl
inc eax
cmp eax, 0x10
jl 0x633420
mov al, 0x64
xchg byte [0xb265d0], al
mov eax, 0xb265c0
pop esi
ret
xor eax, eax
nop word cs:[eax + eax]
nop
movzx ecx, byte [eax + 0xaade50]
add byte [eax + 0xb26480], cl
inc eax
cmp eax, 0x27
jl 0x633450
mov al, 0xea
xchg byte [0xb264a7], al
mov eax, 0xb26480
pop esi
ret
xor eax, eax
nop word cs:[eax + eax]
nop
movzx ecx, byte [eax + 0xaadbe0]
add byte [eax + 0xb261f0], cl
inc eax
cmp eax, 0x24
jl 0x633480
mov al, 0x93
xchg byte [0xb26214], al
mov eax, 0xb261f0
pop esi
ret
xor eax, eax
nop word cs:[eax + eax]
nop
movzx ecx, byte [eax + 0xaaddf0]
add byte [eax + 0xb26420], cl
inc eax
cmp eax, 0x1a
jl 0x6334b0
mov al, 0x3e
xchg byte [0xb2643a], al
mov eax, 0xb26420
pop esi
ret
xor eax, eax
nop word cs:[eax + eax]
nop
movzx ecx, byte [eax + 0xaae0e0]
xor byte [eax + 0xb26730], cl
inc eax
cmp eax, 0xc
jl 0x6334e0
mov al, 0x53
xchg byte [0xb2673c], al
mov eax, 0xb26730
pop esi
ret
xor eax, eax
nop word cs:[eax + eax]
nop
movzx ecx, byte [eax + 0xaae150]
add byte [eax + 0xb267a0], cl
inc eax
cmp eax, 0x23
jl 0x633510
mov al, 0x24
xchg byte [0xb267c3], al
mov eax, 0xb267a0
pop esi
ret
xor eax, eax
movzx ecx, byte [eax + 0xaadeb0]
add byte [eax + 0xb264e0], cl
inc eax
cmp eax, 0x24
jl 0x633534
mov al, 0x79
xchg byte [0xb26504], al
mov eax, 0xb264e0
pop esi
ret