Function at 0x42b4f0
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x64
movss xmm0, dword [0x46e418]
push ebx
push esi
mov esi, dword [0x59d350]
push edi
mov dword [ebp - 4], esi
comiss xmm0, dword [esi + 0x427c]
ja 0x42b893
cmp dword [esi + 0x4278], 0
jne 0x42b557
movaps xmm0, xmmword [0x46f770]
xor ecx, ecx
movups xmmword [ebp - 0x60], xmm0
mov dword [ebp - 0x50], 0x5f584267
mov byte [ebp - 0x4c], 0
mov al, byte [ebp - 0x60]
xor byte [ebp + ecx - 0x5f], al
inc ecx
cmp ecx, 0x13
jb 0x42b538
lea ecx, [ebp - 0x5f]
mov byte [ebp - 0x4c], 0
call fcn.0041f330
mov dword [esi + 0x4278], eax
mov eax, dword [esi + 0x40e0]
mov dword [ebp - 0x40], 0x7f7fffff
mov dword [ebp - 0x3c], 0x7f7fffff
mov dword [ebp - 0x28], 2
mov ecx, dword [eax]
lea eax, [ebp - 0x28]
push eax
movss xmm2, dword [ecx + 0x10]
movss xmm1, dword [ecx + 0x14]
mulss xmm1, dword [0x46e41c]
or dword [esi + 0x3fec], 0x10
mulss xmm2, dword [0x46e41c]
mov dword [esi + 0x403c], 0
movss dword [ebp - 0x44], xmm1
mov dword [esi + 0x4040], 0
movss dword [ebp - 0x48], xmm2
movups xmm0, xmmword [ebp - 0x48]
movups xmmword [esi + 0x402c], xmm0
movss xmm1, dword [ecx + 0x14]
movss xmm2, dword [ecx + 0x10]
mulss xmm1, dword [0x46e434]
mulss xmm2, dword [0x46e434]
addss xmm1, dword [ecx + 0xc]
addss xmm2, dword [ecx + 8]
or dword [esi + 0x3fec], 1
lea ecx, [esi + 0x4080]
mov dword [esi + 0x4008], 0x3f000000
movss dword [esi + 0x4004], xmm1
mov dword [esi + 0x400c], 0x3f000000
movss dword [esi + 0x4000], xmm2
mov dword [esi + 0x3ff0], 1
mov byte [esi + 0x4028], 1
movss xmm0, dword [esi + 0x385c]
movss xmm1, dword [esi + 0x385c]
addss xmm0, xmm0
movss dword [ebp - 0x24], xmm1
movss dword [ebp - 8], xmm0
movss xmm0, dword [esi + 0x3860]
addss xmm0, xmm0
movss dword [ebp - 0xc], xmm0
movss xmm0, dword [esi + 0x3860]
movss dword [ebp - 0x20], xmm0
call fcn.00437bf0
movss xmm0, dword [ebp - 8]
xor ecx, ecx
movss dword [esi + 0x385c], xmm0
movss xmm0, dword [ebp - 0xc]
movss dword [esi + 0x3860], xmm0
movaps xmm0, xmmword [0x46fde0]
movups xmmword [ebp - 0x60], xmm0
mov dword [ebp - 0x50], 0x67607a5f
mov byte [ebp - 0x4c], 0
nop dword [eax + eax]
mov al, byte [ebp - 0x60]
xor byte [ebp + ecx - 0x5f], al
inc ecx
cmp ecx, 0x13
jb 0x42b6a0
push 0xc1347
xor edx, edx
mov byte [ebp - 0x4c], 0
lea ecx, [ebp - 0x5f]
call fcn.00421ef0
mov ebx, dword [esi + 0x3ec8]
add esp, 4
sub ebx, 1
js 0x42b884
nop dword [eax]
nop word [eax + eax]
mov eax, dword [esi + 0x3ed0]
mov esi, dword [eax + ebx*4]
cmp byte [esi + 0xc4], 0
je 0x42b878
cmp esi, dword [esi + 0x324]
jne 0x42b878
mov edi, dword [esi + 8]
test edi, 0x80000
jne 0x42b878
mov ecx, dword [esi]
mov eax, ecx
cmp ecx, 0xffffffff
jae 0x42b73e
nop word [eax + eax]
mov dl, byte [eax]
test dl, dl
je 0x42b736
cmp dl, 0x23
jne 0x42b730
cmp byte [eax + 1], dl
je 0x42b736
inc eax
cmp eax, 0xffffffff
jb 0x42b720
cmp ecx, eax
jne 0x42b850
test edi, 0x4000000
je 0x42b760
mov dword [ebp - 0x1c], 0x6f502835
lea ecx, [ebp - 0x1b]
mov dword [ebp - 0x18], 0x29707570
mov byte [ebp - 0x14], 0
jmp 0x42b850
test edi, 0x400
je 0x42b7f6
mov dl, 0x51
mov dword [ebp - 0x48], 0x1c727251
mov dword [ebp - 0x44], 0x1c3f3830
xor eax, eax
mov dword [ebp - 0x40], 0x13243f34
mov word [ebp - 0x3c], 0x2330
mov byte [ebp - 0x3a], 0
nop
xor byte [ebp + eax - 0x47], dl
inc eax
cmp eax, 0xd
jae 0x42b79f
mov dl, byte [ebp - 0x48]
jmp 0x42b790
mov byte [ebp - 0x3a], 0
lea eax, [ebp - 0x47]
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x42b7c6
test dl, dl
je 0x42b7c2
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x42b7c6
add ecx, 2
add eax, 2
test dl, dl
jne 0x42b7a6
xor eax, eax
jmp 0x42b7cb
sbb eax, eax
or eax, 1
test eax, eax
jne 0x42b7f6
movaps xmm0, xmmword [0x46fe70]
xor ecx, ecx
movups xmmword [ebp - 0x5c], xmm0
mov byte [ebp - 0x4c], al
nop
mov al, byte [ebp - 0x5c]
xor byte [ebp + ecx - 0x5b], al
inc ecx
cmp ecx, 0xf
jb 0x42b7e0
mov byte [ebp - 0x4c], 0
lea ecx, [ebp - 0x5b]
jmp 0x42b850
cmp dword [esi + 0x38c], 0
je 0x42b838
mov cl, 0x28
mov dword [ebp - 0x38], 0x476c0028
mov dword [ebp - 0x34], 0x4608434b
xor eax, eax
mov dword [ebp - 0x30], 0x14d4c47
mov byte [ebp - 0x2c], 0
nop dword [eax]
xor byte [ebp + eax - 0x37], cl
inc eax
cmp eax, 0xb
jae 0x42b82f
mov cl, byte [ebp - 0x38]
jmp 0x42b820
mov byte [ebp - 0x2c], 0
lea ecx, [ebp - 0x37]
jmp 0x42b850
mov dword [ebp - 0x28], 0x6e55286e
lea ecx, [ebp - 0x27]
mov dword [ebp - 0x24], 0x6c746974
mov dword [ebp - 0x20], 0x296465
lea eax, [ebp - 0x10]
mov dword [ebp - 0x10], 0
push eax
mov eax, dword [ebp - 4]
push 0
mov dword [ebp - 0xc], 0
cmp dword [eax + 0x4270], esi
sete dl
call fcn.00457a80
add esp, 8
sub ebx, 1
mov esi, dword [ebp - 4]
jns 0x42b6e0
call fcn.00424e40
mov ecx, 1
call fcn.004188e0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret