Function at 0x100dce69
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x28
mov eax, dword [0x10266a40]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0xc]
push esi
mov esi, dword [ebp + 8]
cmp eax, 0x12
ja case.default.0x100dcce0
jmp dword [eax*4 + 0x100dcf94]
lea eax, [ebp - 0x1c]
mov ecx, 0x10262240
push eax
call fcn.1004efe0
cmp dword [ebp - 8], 0xf
lea ecx, [ebp - 0x1c]
cmova ecx, dword [ebp - 0x1c]
push ecx
mov ecx, esi
call fcn.10044260
lea ecx, [ebp - 0x1c]
call fcn.100446f0
mov eax, esi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1010c1a2
mov esp, ebp
pop ebp
ret
lea eax, [ebp - 0x1c]
mov ecx, 0x10262250
push eax
call fcn.1004efe0
cmp dword [ebp - 8], 0xf
lea eax, [ebp - 0x1c]
mov ecx, esi
cmova eax, dword [ebp - 0x1c]
push eax
call fcn.10044260
lea ecx, [ebp - 0x1c]
call fcn.100446f0
mov eax, esi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1010c1a2
mov esp, ebp
pop ebp
ret
lea eax, [ebp - 0x1c]
mov ecx, 0x10262260
push eax
call fcn.1005b450
jmp 0x100dcd2f
lea eax, [ebp - 0x1c]
mov ecx, 0x10262278
push eax
call fcn.1004f290
jmp 0x100dcd2f
lea eax, [ebp - 0x1c]
mov ecx, 0x10262290
push eax
call fcn.100507e0
jmp 0x100dcd2f
lea eax, [ebp - 0x1c]
mov ecx, 0x102622a8
push eax
call fcn.1004f120
jmp 0x100dcd2f
lea eax, [ebp - 0x1c]
mov ecx, 0x102622b8
push eax
call fcn.100507e0
jmp 0x100dcd2f
lea eax, [ebp - 0x1c]
mov ecx, 0x102622d0
push eax
call fcn.10050710
jmp 0x100dcd2f
lea eax, [ebp - 0x1c]
mov ecx, 0x102622e8
push eax
call fcn.100507e0
jmp 0x100dcd2f
lea eax, [ebp - 0x1c]
mov ecx, 0x10262300
push eax
call fcn.1004f950
jmp 0x100dcd2f
lea eax, [ebp - 0x1c]
mov ecx, 0x10262318
push eax
call fcn.10050710
jmp 0x100dcd2f
lea eax, [ebp - 0x1c]
mov ecx, 0x10262330
push eax
call fcn.1004f950
jmp 0x100dcd2f
lea eax, [ebp - 0x1c]
mov ecx, 0x10262348
push eax
call fcn.10050710
jmp 0x100dcd2f
lea eax, [ebp - 0x1c]
mov ecx, 0x10262360
push eax
call fcn.1004f950
jmp 0x100dcd2f
lea eax, [ebp - 0x1c]
mov ecx, 0x10262378
push eax
call fcn.10050710
jmp 0x100dcd2f
lea eax, [ebp - 0x1c]
mov ecx, 0x10262390
push eax
call fcn.10050a50
jmp 0x100dcd2f
lea eax, [ebp - 0x1c]
mov ecx, 0x102623b0
push eax
call fcn.100508b0
jmp 0x100dcd2f
cmp byte [0x102623c8], 0
push ebx
push edi
je 0x100dced1
cmp byte [0x102623c9], 0
jne 0x100dcf12
mov byte [0x102623c9], 1
xor edi, edi
nop word [eax + eax]
xor edx, edx
mov ebx, edi
xor edx, dword [0x102623e4]
xor ebx, dword [0x102623e0]
xor edx, 0xd28f2c5
xor ebx, 0x1de26cd5
mov ecx, edx
mov eax, ebx
shld ecx, eax, 0xd
shl eax, 0xd
xor edx, ecx
xor ebx, eax
mov eax, ebx
shrd eax, edx, 7
xor al, bl
xor byte [edi + 0x102623ca], al
inc edi
cmp edi, 0x10
jb 0x100dce90
jmp 0x100dcf12
xor edi, edi
xor edx, edx
mov ebx, edi
xor edx, dword [0x102623e4]
xor ebx, dword [0x102623e0]
xor edx, 0xd28f2c5
xor ebx, 0x1de26cd5
mov ecx, edx
mov eax, ebx
shld ecx, eax, 0xd
shl eax, 0xd
xor edx, ecx
xor ebx, eax
mov eax, ebx
shrd eax, edx, 7
xor al, bl
xor byte [edi + 0x102623ca], al
inc edi
cmp edi, 0x10
jb 0x100dced3
lea eax, [ebp - 0x1d]
push eax
push 0x102623d9
push 0x102623ca
lea ecx, [ebp - 0x1c]
call fcn.1004ef20
cmp dword [ebp - 8], 0xf
lea eax, [ebp - 0x1c]
mov ecx, esi
cmova eax, dword [ebp - 0x1c]
push eax
call fcn.10044260
lea ecx, [ebp - 0x1c]
call fcn.100446f0
pop edi
pop ebx
mov eax, esi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1010c1a2
mov esp, ebp
pop ebp
ret
lea eax, [ebp - 0x1c]
mov ecx, 0x102623e8
push eax
call fcn.10050980
jmp 0x100dcd2f
mov ecx, dword [ebp - 4]
xorps xmm0, xmm0
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
mov eax, esi
mov dword [esi + 0x14], 0xf
xor ecx, ebp
mov byte [esi], 0
pop esi
call fcn.1010c1a2
mov esp, ebp
pop ebp
ret