Function at 0x47c8a0
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x1c
mov eax, dword [edx]
push esi
mov esi, ecx
mov dword [esp + 4], esi
cmp eax, 0xf
ja case.default.0x47c8bb
jmp dword [eax*4 + 0x47cbe0]
xor eax, eax
mov dword [esp + 8], 4
lea ecx, [esp + 8]
mov dword [esp + 0xc], 0xded4d6f6
mov byte [esp + 0x10], 0xbc
mov word [esp + 0x11], ax
mov byte [esp + 0x13], al
call fcn.004131e0
push eax
mov ecx, esi
call fcn.00406b50
mov eax, esi
pop esi
mov esp, ebp
pop ebp
ret
mov dword [esp + 0xc], 0xd7cac9f9
mov dword [esp + 0x10], 0xcbdfded5
mov dword [esp + 0x14], 0xc3acaea9
lea ecx, [esp + 8]
mov dword [esp + 8], 0xb
call fcn.004131e0
push eax
mov ecx, esi
call fcn.00406b50
mov eax, esi
pop esi
mov esp, ebp
pop ebp
ret
movaps xmm0, xmmword [0x7e3a40]
xor eax, eax
mov dword [esp + 8], 0x10
lea ecx, [esp + 8]
mov byte [esp + 0x1c], 0xc8
movups xmmword [esp + 0xc], xmm0
mov word [esp + 0x1d], ax
mov byte [esp + 0x1f], al
call fcn.004131e0
push eax
mov ecx, esi
call fcn.00406b50
mov eax, esi
pop esi
mov esp, ebp
pop ebp
ret
mov dword [esp + 0xc], 0xd4ceccf9
mov dword [esp + 0x10], 0xcddfc9cf
lea ecx, [esp + 8]
mov dword [esp + 8], 9
mov dword [esp + 0x14], 0xc1b4
call fcn.004131e0
push eax
mov ecx, esi
call fcn.00406b50
mov eax, esi
pop esi
mov esp, ebp
pop ebp
ret
xor eax, eax
mov dword [esp + 8], 8
lea ecx, [esp + 8]
mov dword [esp + 0xc], 0xded7d6f0
mov dword [esp + 0x10], 0xdad9dcec
mov byte [esp + 0x14], 0xc0
mov word [esp + 0x15], ax
mov byte [esp + 0x17], al
call fcn.004131e0
push eax
mov ecx, esi
call fcn.00406b50
mov eax, esi
pop esi
mov esp, ebp
pop ebp
ret
movaps xmm0, xmmword [0x7e3300]
lea ecx, [esp + 8]
mov dword [esp + 8], 0xc
movups xmmword [esp + 0xc], xmm0
call fcn.004131e0
push eax
mov ecx, esi
call fcn.00406b50
mov eax, esi
pop esi
mov esp, ebp
pop ebp
ret
lea ecx, [esp + 8]
mov dword [esp + 8], 0xa
mov dword [esp + 0xc], 0xc9dbcdeb
mov dword [esp + 0x10], 0xcddfedc8
mov dword [esp + 0x14], 0xc2aca1
call fcn.004131e0
push eax
mov ecx, esi
call fcn.00406b50
mov eax, esi
pop esi
mov esp, ebp
pop ebp
ret
movaps xmm0, xmmword [0x7e3310]
jmp 0x47c9ed
movaps xmm0, xmmword [0x7e3bc0]
lea ecx, [esp + 8]
mov dword [esp + 8], 0x11
movups xmmword [esp + 0xc], xmm0
mov dword [esp + 0x1c], 0xc9b1
call fcn.004131e0
push eax
mov ecx, esi
call fcn.00406b50
mov eax, esi
pop esi
mov esp, ebp
pop ebp
ret
movaps xmm0, xmmword [0x7e3a10]
lea ecx, [esp + 8]
mov dword [esp + 8], 0x11
movups xmmword [esp + 0xc], xmm0
mov dword [esp + 0x1c], 0xc9a6
call fcn.004131e0
push eax
mov ecx, esi
call fcn.00406b50
mov eax, esi
pop esi
mov esp, ebp
pop ebp
ret
movaps xmm0, xmmword [0x7e3260]
jmp 0x47c9ed
mov dword [esp + 0xc], 0xf4dfc1fd
mov dword [esp + 0x10], 0xdcdbd7de
jmp 0x47c97e
lea ecx, [esp + 8]
mov dword [esp + 8], 7
mov dword [esp + 0xc], 0xc9dfcaed
mov dword [esp + 0x10], 0xbfcecdfd
call fcn.004131e0
push eax
mov ecx, esi
call fcn.00406b50
mov eax, esi
pop esi
mov esp, ebp
pop ebp
ret
lea ecx, [esp + 8]
mov dword [esp + 8], 0xa
mov dword [esp + 0xc], 0xf8dddcea
mov dword [esp + 0x10], 0xd1dfd8d0
mov dword [esp + 0x14], 0xc2b3a5
call fcn.004131e0
push eax
mov ecx, esi
call fcn.00406b50
mov eax, esi
pop esi
mov esp, ebp
pop ebp
ret
movaps xmm0, xmmword [0x7e3a30]
jmp 0x47c939
mov dword [esp + 0xc], 0xccd6d8f5
mov dword [esp + 0x10], 0xf9dbcfdd
mov dword [esp + 0x14], 0xc3a7ada9
jmp 0x47c912
mov eax, 9
mov dword [esp + 0xc], 0xdeded7cd
mov dword [esp + 8], eax
xor ecx, ecx
mov dword [esp + 0x10], 0xdad0d4da
mov dword [esp + 0x14], 0xc1a4
lea eax, [ecx - 0x48]
xor byte [esp + ecx + 0xc], al
inc ecx
mov eax, dword [esp + 8]
cmp ecx, eax
jb 0x47cb90
mov byte [esp + eax + 0xc], 0
lea ecx, [esp + 0xc]
mov dword [esi + 0x10], 0
lea edx, [ecx + 1]
mov dword [esi + 0x14], 0xf
mov byte [esi], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x47cbc0
sub ecx, edx
lea eax, [esp + 0xc]
push ecx
push eax
mov ecx, esi
call fcn.00407ab0
mov eax, esi
pop esi
mov esp, ebp
pop ebp
ret