Function at 0x401490
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x130
mov eax, dword [0x46b0a4]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
mov dword [ebp - 0x130], ecx
movups xmm0, xmmword [ecx + 0x20]
mov eax, dword [ecx]
mov edx, dword [ecx + 0x10]
mov dword [ebp - 0x12c], eax
mov dword [ebp - 0x108], eax
mov eax, dword [ecx + 4]
movups xmmword [ebp - 0x104], xmm0
mov dword [ebp - 0x118], eax
movups xmm0, xmmword [ecx + 0x30]
mov eax, dword [ecx + 8]
mov dword [ebp - 0x114], eax
mov eax, dword [ecx + 0xc]
movups xmmword [ebp - 0xf4], xmm0
mov dword [ebp - 0x10c], eax
movups xmm0, xmmword [ecx + 0x40]
mov eax, dword [ecx + 0x14]
mov dword [ebp - 0x120], eax
mov eax, dword [ecx + 0x18]
movups xmmword [ebp - 0xe4], xmm0
mov dword [ebp - 0x128], eax
mov ebx, 0x30
movups xmm0, xmmword [ecx + 0x50]
mov eax, dword [ecx + 0x1c]
mov dword [ebp - 0x110], eax
lea eax, [ebp - 0xcc]
mov dword [ebp - 0x124], edx
movups xmmword [ebp - 0xd4], xmm0
mov edx, dword [eax]
lea eax, [eax + 4]
mov esi, dword [eax - 0x38]
mov edi, edx
mov ecx, edx
ror edi, 0x13
ror ecx, 0x11
xor edi, ecx
shr edx, 0xa
xor edi, edx
mov ecx, esi
mov edx, esi
ror ecx, 7
ror edx, 0x12
xor edx, ecx
shr esi, 3
xor edx, esi
add edi, edx
add edi, dword [eax - 0x3c]
add edi, dword [eax - 0x18]
mov dword [eax + 4], edi
sub ebx, 1
jne 0x401530
mov ebx, dword [ebp - 0x108]
xor ecx, ecx
mov dword [ebp - 0x11c], ecx
nop dword [eax + eax]
mov edx, dword [ebp - 0x124]
mov esi, edx
ror esi, 0x19
mov eax, edx
ror eax, 0xb
xor esi, eax
mov edi, dword [ebp - 0x10c]
mov eax, edx
ror eax, 6
xor esi, eax
mov eax, dword [ebp - 0x120]
xor eax, dword [ebp - 0x128]
and eax, edx
mov edx, ebx
xor eax, dword [ebp - 0x128]
add esi, eax
ror edx, 0x16
add esi, dword [ecx + 0x460780]
mov eax, ebx
add esi, dword [ebp + ecx - 0x104]
add esi, dword [ebp - 0x110]
ror eax, 0xd
add edi, esi
xor edx, eax
mov ecx, dword [ebp - 0x118]
mov eax, ebx
mov dword [ebp - 0x110], edi
ror eax, 2
or ecx, ebx
xor edx, eax
and ecx, dword [ebp - 0x114]
add edx, esi
and ebx, dword [ebp - 0x118]
mov esi, edi
mov eax, edi
ror eax, 0xb
or ebx, ecx
ror esi, 0x19
add ebx, edx
xor esi, eax
mov dword [ebp - 0x10c], ebx
mov eax, edi
mov edx, ebx
ror eax, 6
xor esi, eax
ror edx, 0x16
mov eax, dword [ebp - 0x120]
xor eax, dword [ebp - 0x124]
and eax, edi
xor eax, dword [ebp - 0x120]
add esi, eax
mov eax, dword [ebp - 0x11c]
add esi, dword [ebp + eax - 0x100]
add esi, dword [eax + 0x460784]
mov eax, ebx
add esi, dword [ebp - 0x128]
add dword [ebp - 0x114], esi
mov ecx, dword [ebp - 0x114]
ror eax, 0xd
xor edx, eax
mov eax, ebx
ror eax, 2
xor edx, eax
mov eax, dword [ebp - 0x108]
mov edi, eax
add edx, esi
and eax, ebx
or edi, ebx
and edi, dword [ebp - 0x118]
mov esi, ecx
or edi, eax
ror esi, 0x19
mov eax, ecx
add edi, edx
ror eax, 0xb
xor esi, eax
mov eax, ecx
ror eax, 6
xor esi, eax
mov eax, dword [ebp - 0x110]
xor eax, dword [ebp - 0x124]
and eax, ecx
mov edx, edi
xor eax, dword [ebp - 0x124]
mov ecx, edi
add esi, eax
ror edx, 0x16
mov eax, dword [ebp - 0x11c]
or ecx, ebx
and ecx, dword [ebp - 0x108]
and ebx, edi
or ebx, ecx
add esi, dword [ebp + eax - 0xfc]
add esi, dword [eax + 0x460788]
mov eax, edi
add esi, dword [ebp - 0x120]
add dword [ebp - 0x118], esi
ror eax, 0xd
xor edx, eax
mov ecx, dword [ebp - 0x118]
mov eax, edi
ror eax, 2
xor edx, eax
mov eax, ecx
add edx, esi
ror eax, 0xb
mov esi, ecx
add ebx, edx
ror esi, 0x19
mov edx, ebx
xor esi, eax
ror edx, 0x16
mov eax, ecx
ror eax, 6
xor esi, eax
mov eax, dword [ebp - 0x110]
xor eax, dword [ebp - 0x114]
and eax, ecx
mov ecx, edi
xor eax, dword [ebp - 0x110]
or ecx, ebx
add esi, eax
and ecx, dword [ebp - 0x10c]
mov eax, dword [ebp - 0x11c]
add esi, dword [ebp + eax - 0xf8]
add esi, dword [eax + 0x46078c]
mov eax, ebx
add esi, dword [ebp - 0x124]
add dword [ebp - 0x108], esi
ror eax, 0xd
xor edx, eax
mov eax, ebx
ror eax, 2
xor edx, eax
mov eax, edi
and eax, ebx
add edx, esi
or ecx, eax
add ecx, edx
mov edx, dword [ebp - 0x108]
mov esi, edx
mov dword [ebp - 0x120], ecx
ror esi, 0x19
mov eax, edx
ror eax, 0xb
xor esi, eax
mov eax, edx
ror eax, 6
xor esi, eax
mov eax, dword [ebp - 0x114]
xor eax, dword [ebp - 0x118]
and eax, edx
mov edx, ecx
xor eax, dword [ebp - 0x114]
add esi, eax
mov eax, dword [ebp - 0x11c]
add esi, dword [ebp + eax - 0xf4]
add esi, dword [eax + 0x460790]
add esi, dword [ebp - 0x110]
mov eax, dword [ebp - 0x10c]
add eax, esi
mov dword [ebp - 0x110], eax
ror edx, 0x16
mov eax, ecx
ror eax, 0xd
xor edx, eax
mov eax, ecx
ror eax, 2
or ecx, ebx
xor edx, eax
and ecx, edi
mov eax, dword [ebp - 0x120]
add edx, esi
and eax, ebx
or eax, ecx
add eax, edx
mov edx, dword [ebp - 0x110]
mov dword [ebp - 0x10c], eax
mov esi, edx
ror esi, 0x19
mov eax, edx
ror eax, 0xb
xor esi, eax
mov ecx, dword [ebp - 0x10c]
mov eax, edx
ror eax, 6
xor esi, eax
mov eax, dword [ebp - 0x118]
xor eax, dword [ebp - 0x108]
and eax, edx
mov edx, ecx
xor eax, dword [ebp - 0x118]
add esi, eax
ror edx, 0x16
mov eax, dword [ebp - 0x11c]
add esi, dword [ebp + eax - 0xf0]
add esi, dword [eax + 0x460794]
add esi, dword [ebp - 0x114]
lea eax, [edi + esi]
mov edi, dword [ebp - 0x120]
mov dword [ebp - 0x128], eax
mov eax, ecx
ror eax, 0xd
xor edx, eax
mov eax, ecx
ror eax, 2
or ecx, edi
xor edx, eax
and ecx, ebx
mov eax, dword [ebp - 0x10c]
add edx, esi
and eax, edi
or eax, ecx
add eax, edx
mov edx, dword [ebp - 0x128]
mov dword [ebp - 0x114], eax
mov esi, edx
ror esi, 0x19
mov eax, edx
ror eax, 0xb
xor esi, eax
mov eax, edx
ror eax, 6
xor esi, eax
mov eax, dword [ebp - 0x108]
xor eax, dword [ebp - 0x110]
and eax, edx
xor eax, dword [ebp - 0x108]
add esi, eax
mov eax, dword [ebp - 0x11c]
add esi, dword [ebp + eax - 0xec]
add esi, dword [eax + 0x460798]
add esi, dword [ebp - 0x118]
lea eax, [ebx + esi]
mov ebx, dword [ebp - 0x114]
mov dword [ebp - 0x120], eax
mov edx, ebx
mov eax, ebx
ror edx, 0x16
ror eax, 0xd
xor edx, eax
mov eax, ebx
ror eax, 2
xor edx, eax
mov ecx, ebx
or ecx, dword [ebp - 0x10c]
add edx, esi
and ebx, dword [ebp - 0x10c]
and ecx, edi
or ebx, ecx
mov ecx, dword [ebp - 0x120]
mov esi, ecx
mov eax, ecx
ror eax, 0xb
add ebx, edx
ror esi, 0x19
mov edx, ebx
xor esi, eax
ror edx, 0x16
mov eax, ecx
mov dword [ebp - 0x118], ebx
ror eax, 6
xor esi, eax
mov eax, dword [ebp - 0x110]
xor eax, dword [ebp - 0x128]
and eax, ecx
xor eax, dword [ebp - 0x110]
add esi, eax
mov eax, dword [ebp - 0x11c]
add esi, dword [ebp + eax - 0xe8]
add esi, dword [eax + 0x46079c]
add esi, dword [ebp - 0x108]
lea eax, [edi + esi]
mov edi, dword [ebp - 0x114]
mov dword [ebp - 0x124], eax
mov ecx, edi
mov eax, ebx
or ecx, ebx
and ecx, dword [ebp - 0x10c]
ror eax, 0xd
xor edx, eax
mov eax, ebx
and ebx, edi
ror eax, 2
or ebx, ecx
xor edx, eax
mov ecx, dword [ebp - 0x11c]
add edx, esi
add ecx, 0x20
add ebx, edx
mov dword [ebp - 0x108], ebx
mov dword [ebp - 0x11c], ecx
cmp ecx, 0x100
jl 0x401580
mov ecx, dword [ebp - 0x130]
mov eax, dword [ebp - 0x12c]
mov edx, dword [ebp - 0x124]
add eax, ebx
mov dword [ecx], eax
mov eax, dword [ebp - 0x118]
add dword [ecx + 4], eax
mov eax, dword [ebp - 0x10c]
add dword [ecx + 0xc], eax
mov eax, dword [ebp - 0x120]
add dword [ecx + 0x14], eax
add dword [ecx + 8], edi
mov eax, dword [ebp - 0x128]
add dword [ecx + 0x18], eax
add dword [ecx + 0x10], edx
mov eax, dword [ebp - 0x110]
add dword [ecx + 0x1c], eax
xor eax, eax
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.00419373
mov esp, ebp
pop ebp
ret