Function at 0x100e1239
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x28
mov eax, dword [0x1029e280]
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.0x100e10b0
jmp dword [eax*4 + 0x100e1364]
lea eax, [ebp - 0x1c]
mov ecx, 0x10298640
push eax
call fcn.1004f550
cmp dword [ebp - 8], 0xf
lea ecx, [ebp - 0x1c]
cmova ecx, dword [ebp - 0x1c]
push ecx
mov ecx, esi
call fcn.100447d0
lea ecx, [ebp - 0x1c]
call fcn.10044c60
mov eax, esi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10116d02
mov esp, ebp
pop ebp
ret
lea eax, [ebp - 0x1c]
mov ecx, 0x10298650
push eax
call fcn.1004f550
cmp dword [ebp - 8], 0xf
lea eax, [ebp - 0x1c]
mov ecx, esi
cmova eax, dword [ebp - 0x1c]
push eax
call fcn.100447d0
lea ecx, [ebp - 0x1c]
call fcn.10044c60
mov eax, esi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10116d02
mov esp, ebp
pop ebp
ret
lea eax, [ebp - 0x1c]
mov ecx, 0x10298660
push eax
call fcn.1005b990
jmp 0x100e10ff
lea eax, [ebp - 0x1c]
mov ecx, 0x10298678
push eax
call fcn.1004f800
jmp 0x100e10ff
lea eax, [ebp - 0x1c]
mov ecx, 0x10298690
push eax
call fcn.10050d50
jmp 0x100e10ff
lea eax, [ebp - 0x1c]
mov ecx, 0x102986a8
push eax
call fcn.1004f690
jmp 0x100e10ff
lea eax, [ebp - 0x1c]
mov ecx, 0x102986b8
push eax
call fcn.10050d50
jmp 0x100e10ff
lea eax, [ebp - 0x1c]
mov ecx, 0x102986d0
push eax
call fcn.10050c80
jmp 0x100e10ff
lea eax, [ebp - 0x1c]
mov ecx, 0x102986e8
push eax
call fcn.10050d50
jmp 0x100e10ff
lea eax, [ebp - 0x1c]
mov ecx, 0x10298700
push eax
call fcn.1004fec0
jmp 0x100e10ff
lea eax, [ebp - 0x1c]
mov ecx, 0x10298718
push eax
call fcn.10050c80
jmp 0x100e10ff
lea eax, [ebp - 0x1c]
mov ecx, 0x10298730
push eax
call fcn.1004fec0
jmp 0x100e10ff
lea eax, [ebp - 0x1c]
mov ecx, 0x10298748
push eax
call fcn.10050c80
jmp 0x100e10ff
lea eax, [ebp - 0x1c]
mov ecx, 0x10298760
push eax
call fcn.1004fec0
jmp 0x100e10ff
lea eax, [ebp - 0x1c]
mov ecx, 0x10298778
push eax
call fcn.10050c80
jmp 0x100e10ff
lea eax, [ebp - 0x1c]
mov ecx, 0x10298790
push eax
call fcn.10050fc0
jmp 0x100e10ff
lea eax, [ebp - 0x1c]
mov ecx, 0x102987b0
push eax
call fcn.10050e20
jmp 0x100e10ff
cmp byte [0x102987c8], 0
push ebx
push edi
je 0x100e12a1
cmp byte [0x102987c9], 0
jne 0x100e12e2
mov byte [0x102987c9], 1
xor edi, edi
nop word [eax + eax]
xor edx, edx
mov ebx, edi
xor edx, dword [0x102987e4]
xor ebx, dword [0x102987e0]
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 + 0x102987ca], al
inc edi
cmp edi, 0x10
jb 0x100e1260
jmp 0x100e12e2
xor edi, edi
xor edx, edx
mov ebx, edi
xor edx, dword [0x102987e4]
xor ebx, dword [0x102987e0]
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 + 0x102987ca], al
inc edi
cmp edi, 0x10
jb 0x100e12a3
lea eax, [ebp - 0x1d]
push eax
push 0x102987d9
push 0x102987ca
lea ecx, [ebp - 0x1c]
call fcn.1004f490
cmp dword [ebp - 8], 0xf
lea eax, [ebp - 0x1c]
mov ecx, esi
cmova eax, dword [ebp - 0x1c]
push eax
call fcn.100447d0
lea ecx, [ebp - 0x1c]
call fcn.10044c60
pop edi
pop ebx
mov eax, esi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10116d02
mov esp, ebp
pop ebp
ret
lea eax, [ebp - 0x1c]
mov ecx, 0x102987e8
push eax
call fcn.10050ef0
jmp 0x100e10ff
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.10116d02
mov esp, ebp
pop ebp
ret