Function at 0x42d480
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x38
mov eax, dword [0x93bf44]
xor eax, esp
mov dword [esp + 0x34], eax
mov eax, dword [0x181cbec]
push esi
push edi
mov edi, ecx
mov edx, dword [edi + 4]
lea esi, [edi + 0x14]
mov dword [eax + 0x73c], edx
call fcn.005dae1b
mov dword [edi + 0xcb0], eax
test esi, esi
je 0x42d4be
mov dword [edi + 0xcb4], esi
mov ecx, edi
call fcn.005dae1b
movups xmm0, xmmword [str.zMTxPRMZ_]
mov dword [edi + 0x7f0], eax
xor esi, esi
mov dword [edi + 0xa28], eax
mov ax, word [0x8fece0]
movups xmmword [esp + 0x10], xmm0
mov word [esp + 0x20], ax
nop word [eax + eax]
mov eax, 0x4d4873ed
mov ecx, esi
imul esi
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x35
sub ecx, eax
add ecx, 0x38
xor word [esp + esi*2 + 0x10], cx
inc esi
cmp esi, 9
jl 0x42d4f0
lea eax, [esp + 0x10]
push eax
lea ecx, [edi + 0x14]
call fcn.005dfebc
movq xmm0, qword [0x8fecc0]
xor esi, esi
mov dword [edi + 0x75c], eax
mov eax, dword [0x8fecc8]
mov dword [esp + 0x18], eax
mov ax, word [0x8feccc]
movq qword [esp + 0x10], xmm0
mov word [esp + 0x1c], ax
nop dword [eax]
mov eax, 0x4d4873ed
mov ecx, esi
imul esi
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x35
sub ecx, eax
add ecx, 0x38
xor word [esp + esi*2 + 0x10], cx
inc esi
cmp esi, 7
jl 0x42d550
lea eax, [esp + 0x10]
push eax
lea ecx, [edi + 0x14]
call fcn.005dfebc
mov ecx, dword [edi + 0x75c]
mov dword [edi + 0x760], eax
test ecx, ecx
je 0x42d5e4
mov eax, dword [ecx]
xor esi, esi
mov eax, dword [eax + 0xcc]
mov dword [esp + 0xc], eax
mov eax, dword [str.KQ:]
mov dword [esp + 0x10], eax
mov ax, word [0x8feeb8]
mov word [esp + 0x14], ax
mov eax, 0x4d4873ed
imul esi
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, esi
imul eax, eax, 0x35
sub edx, eax
add edx, 0x38
xor word [esp + esi*2 + 0x10], dx
inc esi
cmp esi, 3
jl 0x42d5b5
lea eax, [esp + 0x10]
push eax
call dword [esp + 0x10]
mov esi, dword [edi + 0x760]
test esi, esi
je 0x42d6e3
cmp word [0x8feeb2], 0
mov eax, dword [esi]
mov eax, dword [eax + 0xcc]
mov dword [esp + 0xc], eax
mov eax, dword [str.8g6_S_]
mov dword [esp + 0x10], eax
mov eax, dword [0x8feeb0]
mov dword [esp + 0x14], eax
je 0x42d6d8
xor ecx, ecx
cmp dword [0x1816094], 2
jl 0x42d6b2
movups xmm3, xmmword [0x9036b0]
mov eax, 4
movaps xmm2, xmm3
movaps xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmmword [0x903750]
punpckldq xmm2, xmm3
pmuldq xmm2, xmmword [0x903750]
shufps xmm2, xmm0, 0xdd
movd xmm0, eax
mov eax, 0x1f
psrad xmm2, xmm0
movaps xmm1, xmm2
movd xmm0, eax
mov eax, str.8g6_S_
psrld xmm1, xmm0
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x9036e0]
psubd xmm3, xmm1
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
paddw xmm1, xmmword [0x903710]
movq xmm0, qword [eax]
pxor xmm1, xmm0
movq qword [esp + 0x10], xmm1
jmp 0x42d6d8
mov eax, 0x4d4873ed
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, ecx
imul eax, eax, 0x35
sub edx, eax
add edx, 0x38
xor word [esp + ecx*2 + 0x10], dx
inc ecx
cmp ecx, 4
jl 0x42d6b2
lea eax, [esp + 0x10]
mov ecx, esi
push eax
call dword [esp + 0x10]
mov ecx, dword [edi + 0xcb4]
push str.UINavigation
call fcn.005dfebc
mov ecx, dword [edi + 0xcb4]
mov esi, eax
push str.UIFavText
call fcn.005dfebc
test esi, esi
je 0x42d71b
test eax, eax
je 0x42d71b
mov eax, dword [esi]
mov ecx, esi
push 1
push 1
call dword [eax + 0x1d0]
lea ecx, [edi + 0xcb0]
call fcn.00478850
mov ecx, dword [edi + 4]
mov dword [edi + 0x7e8], 1
call fcn.0041b290
mov ecx, dword [esp + 0x3c]
pop edi
pop esi
xor ecx, esp
call fcn.005c22ca
mov esp, ebp
pop ebp
ret