Function at 0x10113b49
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x28
mov eax, dword [0x10331c40]
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.0x101139c0
jmp dword [eax*4 + 0x10113c74]
lea eax, [ebp - 0x1c]
mov ecx, 0x1032ffd8
push eax
call fcn.10054100
cmp dword [ebp - 8], 0xf
lea ecx, [ebp - 0x1c]
cmova ecx, dword [ebp - 0x1c]
push ecx
mov ecx, esi
call fcn.100493a0
lea ecx, [ebp - 0x1c]
call fcn.10049830
mov eax, esi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.101556c2
mov esp, ebp
pop ebp
ret
lea eax, [ebp - 0x1c]
mov ecx, 0x1032ffe8
push eax
call fcn.10054100
cmp dword [ebp - 8], 0xf
lea eax, [ebp - 0x1c]
mov ecx, esi
cmova eax, dword [ebp - 0x1c]
push eax
call fcn.100493a0
lea ecx, [ebp - 0x1c]
call fcn.10049830
mov eax, esi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.101556c2
mov esp, ebp
pop ebp
ret
lea eax, [ebp - 0x1c]
mov ecx, 0x1032fff8
push eax
call fcn.10061b30
jmp 0x10113a0f
lea eax, [ebp - 0x1c]
mov ecx, 0x10330010
push eax
call fcn.100543b0
jmp 0x10113a0f
lea eax, [ebp - 0x1c]
mov ecx, 0x10330028
push eax
call fcn.10055900
jmp 0x10113a0f
lea eax, [ebp - 0x1c]
mov ecx, 0x10330040
push eax
call fcn.10054240
jmp 0x10113a0f
lea eax, [ebp - 0x1c]
mov ecx, 0x10330050
push eax
call fcn.10055900
jmp 0x10113a0f
lea eax, [ebp - 0x1c]
mov ecx, 0x10330068
push eax
call fcn.10055830
jmp 0x10113a0f
lea eax, [ebp - 0x1c]
mov ecx, 0x10330080
push eax
call fcn.10055900
jmp 0x10113a0f
lea eax, [ebp - 0x1c]
mov ecx, 0x10330098
push eax
call fcn.10054a70
jmp 0x10113a0f
lea eax, [ebp - 0x1c]
mov ecx, 0x103300b0
push eax
call fcn.10055830
jmp 0x10113a0f
lea eax, [ebp - 0x1c]
mov ecx, 0x103300c8
push eax
call fcn.10054a70
jmp 0x10113a0f
lea eax, [ebp - 0x1c]
mov ecx, 0x103300e0
push eax
call fcn.10055830
jmp 0x10113a0f
lea eax, [ebp - 0x1c]
mov ecx, 0x103300f8
push eax
call fcn.10054a70
jmp 0x10113a0f
lea eax, [ebp - 0x1c]
mov ecx, 0x10330110
push eax
call fcn.10055830
jmp 0x10113a0f
lea eax, [ebp - 0x1c]
mov ecx, 0x10330128
push eax
call fcn.10055b70
jmp 0x10113a0f
lea eax, [ebp - 0x1c]
mov ecx, 0x10330148
push eax
call fcn.100559d0
jmp 0x10113a0f
cmp byte [0x10330160], 0
push ebx
push edi
je 0x10113bb1
cmp byte [0x10330161], 0
jne 0x10113bf2
mov byte [0x10330161], 1
xor edi, edi
nop word [eax + eax]
xor edx, edx
mov ebx, edi
xor edx, dword [0x1033017c]
xor ebx, dword [0x10330178]
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 + 0x10330162], al
inc edi
cmp edi, 0x10
jb 0x10113b70
jmp 0x10113bf2
xor edi, edi
xor edx, edx
mov ebx, edi
xor edx, dword [0x1033017c]
xor ebx, dword [0x10330178]
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 + 0x10330162], al
inc edi
cmp edi, 0x10
jb 0x10113bb3
lea eax, [ebp - 0x1d]
push eax
push 0x10330171
push 0x10330162
lea ecx, [ebp - 0x1c]
call fcn.10054040
cmp dword [ebp - 8], 0xf
lea eax, [ebp - 0x1c]
mov ecx, esi
cmova eax, dword [ebp - 0x1c]
push eax
call fcn.100493a0
lea ecx, [ebp - 0x1c]
call fcn.10049830
pop edi
pop ebx
mov eax, esi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.101556c2
mov esp, ebp
pop ebp
ret
lea eax, [ebp - 0x1c]
mov ecx, 0x10330180
push eax
call fcn.10055aa0
jmp 0x10113a0f
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.101556c2
mov esp, ebp
pop ebp
ret