Function at 0x47d5a0
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.0x47d5bb
jmp dword [eax*4 + 0x47d8e0]
xor eax, eax
mov dword [esp + 8], 4
lea ecx, [esp + 8]
mov dword [esp + 0xc], 0xc9c5c5e7
mov byte [esp + 0x10], 0xad
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], 0xc0dbdae8
mov dword [esp + 0x10], 0xc4cecdc4
mov dword [esp + 0x14], 0xb4ddddd8
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 [0x7e5e30]
xor eax, eax
mov dword [esp + 8], 0x10
lea ecx, [esp + 8]
mov byte [esp + 0x1c], 0xb9
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], 0xc3dfdfe8
mov dword [esp + 0x10], 0xc2cedade
lea ecx, [esp + 8]
mov dword [esp + 8], 9
mov dword [esp + 0x14], 0xb2c5
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], 0xc9c6c5e1
mov dword [esp + 0x10], 0xd5c8cffd
mov byte [esp + 0x14], 0xb1
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 [0x7e5340]
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], 0xdecadefa
mov dword [esp + 0x10], 0xc2cefed9
mov dword [esp + 0x14], 0xb3dfd0
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 [0x7e5350]
jmp 0x47d6ed
movaps xmm0, xmmword [0x7e5d30]
lea ecx, [esp + 8]
mov dword [esp + 8], 0x11
movups xmmword [esp + 0xc], xmm0
mov dword [esp + 0x1c], 0xbac0
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 [0x7e5e80]
lea ecx, [esp + 8]
mov dword [esp + 8], 0x11
movups xmmword [esp + 0xc], xmm0
mov dword [esp + 0x1c], 0xbad7
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 [0x7e5390]
jmp 0x47d6ed
mov dword [esp + 0xc], 0xe3ced2ec
mov dword [esp + 0x10], 0xd3cac4cf
jmp 0x47d67e
lea ecx, [esp + 8]
mov dword [esp + 8], 7
mov dword [esp + 0xc], 0xdeced9fc
mov dword [esp + 0x10], 0xb0dfdeec
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], 0xefcccffb
mov dword [esp + 0x10], 0xdececbc1
mov dword [esp + 0x14], 0xb3c0d4
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 [0x7e5e00]
jmp 0x47d639
mov dword [esp + 0xc], 0xdbc7cbe4
mov dword [esp + 0x10], 0xf6cadccc
mov dword [esp + 0x14], 0xb4d6ded8
jmp 0x47d612
mov eax, 9
mov dword [esp + 0xc], 0xc9cfc4dc
mov dword [esp + 8], eax
xor ecx, ecx
mov dword [esp + 0x10], 0xd5c1c7cb
mov dword [esp + 0x14], 0xb2d5
lea eax, [ecx - 0x57]
xor byte [esp + ecx + 0xc], al
inc ecx
mov eax, dword [esp + 8]
cmp ecx, eax
jb 0x47d890
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 0x47d8c0
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