Function at 0x43eee0
Capabilities:
Encode data using xor

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
sub esp, 0x298
mov eax, dword [0x4af040]
xor eax, ebp
mov dword [ebp - 4], eax
movaps xmm0, xmmword [0x4aa1e0]
lea ecx, [ebp - 0x298]
push esi
push edi
movups xmmword [0x4b3e38], xmm0
call fcn.0042c7f0
lea ecx, [ebp - 0x220]
mov byte [ebp - 0x25c], 1
mov byte [ebp - 0x27c], 1
mov byte [ebp - 0x290], 0
call fcn.0042c7f0
lea ecx, [ebp - 0x1a8]
mov dword [ebp - 0x20c], 1
mov dword [ebp - 0x208], 1
mov byte [ebp - 0x204], 1
call fcn.0042c7f0
movaps xmm0, xmmword [0x4aa370]
mov eax, 0x1c
mov edx, dword [0x4af98c]
xor ecx, ecx
movups xmmword [ebp - 0xb0], xmm0
mov byte [ebp - 0x1a0], 1
movaps xmm0, xmmword [0x4aa120]
mov byte [ebp - 0x16c], 1
mov byte [ebp - 0x18c], 1
mov dword [ebp - 0x194], 2
mov dword [ebp - 0x190], 2
mov dword [ebp - 0x90], edx
mov dword [ebp - 0xb4], eax
movups xmmword [ebp - 0xa0], xmm0
lea eax, [ecx - 0x7f]
xor byte [ebp + ecx - 0xb0], al
inc ecx
mov eax, dword [ebp - 0xb4]
cmp ecx, eax
jb 0x43efc5
mov byte [ebp + eax - 0xb0], 0
mov eax, dword [edx + 0x94]
mov dword [ebp - 0x8c], eax
lea eax, [ebp - 0x84]
push ecx
push eax
lea ecx, [ebp - 0xb0]
mov dword [ebp - 0x84], 0
call fcn.00413500
add esp, 8
mov dword [ebp - 0x88], eax
test eax, eax
je 0x43f0e0
cmp byte [ebp - 0x1d8], 0
lea esi, [ebp - 0x220]
mov ecx, 0x1d
lea edi, [ebp - 0x80]
rep movsd dword es:[edi], dword [esi]
jne 0x43f0a2
lea ecx, [ebp - 0xb0]
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43f040
sub ecx, edx
lea eax, [ebp - 0xb0]
add eax, ecx
lea ecx, [ebp - 0xb0]
cmp eax, ecx
jbe 0x43f078
nop dword [eax + eax]
mov cl, byte [eax - 1]
cmp cl, 0x2f
je 0x43f078
cmp cl, 0x5c
je 0x43f078
dec eax
lea ecx, [ebp - 0xb0]
cmp eax, ecx
ja 0x43f060
movsd xmm0, qword [0x4a9fb8]
sub esp, 8
movsd qword [esp], xmm0
push eax
push str._s___.0fpx
lea eax, [ebp - 0x38]
push 0x28
push eax
call fcn.00413290
mov eax, dword [ebp - 0x88]
add esp, 0x18
mov ecx, 0x1d
lea esi, [ebp - 0x80]
lea edi, [ebp - 0x130]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebp - 0x8c]
mov dword [ebp - 0x130], eax
mov eax, dword [ebp - 0x84]
mov dword [ebp - 0x12c], eax
lea eax, [ebp - 0x130]
push eax
mov dword [ebp - 0x120], 0x41600000
call fcn.0042c880
mov eax, dword [0x4af98c]
lea esi, [ebp - 0x298]
mov ecx, 0x1d
lea edi, [ebp - 0x130]
rep movsd dword es:[edi], dword [esi]
lea ecx, [ebp - 0x130]
mov dword [ebp - 0x130], 0x476950
push ecx
mov ecx, dword [eax + 0x94]
mov dword [ebp - 0x12c], 0x317f8
mov dword [ebp - 0x120], 0x41800000
mov dword [ebp - 0x100], 0x4a90e4
call fcn.0042c880
movss xmm3, dword [0x4a9fe8]
lea eax, [ebp - 0x1a8]
push 0x4a90cc
push eax
push ecx
mov ecx, dword [ebp - 0x90]
push 0x4582b8
mov ecx, dword [ecx + 0x94]
call fcn.0042ca40
mov eax, dword [0x4af98c]
movaps xmm5, xmmword [0x4aa280]
movaps xmm4, xmmword [0x4aa240]
movaps xmm0, xmmword [0x4aa280]
movaps xmm2, xmmword [0x4aa1b0]
movaps xmm3, xmmword [0x4aa1d0]
movaps xmm1, xmmword [0x4aa270]
mov ecx, dword [ebp - 4]
mov dword [eax + 0x1518], 0x3f800000
xor ecx, ebp
mov dword [eax + 0x1524], 0x40a00000
mov dword [eax + 0x1550], 0x40800000
mov dword [eax + 0x1554], 0x40400000
mov dword [eax + 0x151c], 0x41000000
mov dword [eax + 0x1520], 0x41000000
mov dword [eax + 0x1568], 0x40800000
mov dword [eax + 0x156c], 0x40800000
mov dword [eax + 0x1560], 0x41000000
mov dword [eax + 0x1564], 0x40800000
mov dword [eax + 0x1580], 0x41500000
mov dword [eax + 0x1584], 0x41400000
mov dword [eax + 0x1534], 0x3f000000
mov dword [eax + 0x1538], 0x3f000000
mov dword [eax + 0x1598], 0x3f000000
mov dword [eax + 0x159c], 0x3f000000
mov dword [eax + 0x1558], 0x40a00000
movups xmmword [eax + 0x15c4], xmm0
pop edi
movups xmmword [eax + 0x15e4], xmm5
mov dword [eax + 0x1694], 0x3e0f5c29
mov dword [eax + 0x1698], 0x3e0f5c29
mov dword [eax + 0x169c], 0x3e0f5c29
mov dword [eax + 0x16a0], 0x3f800000
movaps xmm0, xmmword [0x4aa1c0]
movups xmmword [eax + 0x1634], xmm0
pop esi
movaps xmm0, xmmword [0x4aa250]
movups xmmword [eax + 0x16e4], xmm0
movups xmmword [eax + 0x16f4], xmm1
movups xmmword [eax + 0x1704], xmm4
movups xmmword [eax + 0x16a4], xmm2
movups xmmword [eax + 0x16b4], xmm1
movups xmmword [eax + 0x16c4], xmm3
movups xmmword [eax + 0x16d4], xmm4
movups xmmword [eax + 0x17d4], xmm2
movups xmmword [eax + 0x17e4], xmm3
movups xmmword [eax + 0x17f4], xmm4
movups xmmword [eax + 0x1714], xmm2
movups xmmword [eax + 0x1724], xmm3
movups xmmword [eax + 0x1734], xmm4
movups xmmword [eax + 0x1674], xmm5
call fcn.0043fbc2
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret