Function at 0x480aa0
Capabilities:
Encode data using xor

Disassembly:
push ebx
push esi
push edi
add esp, 0xffffffc4
mov dword [esp + 4], edx
mov dword [esp], eax
mov eax, dword [esp]
mov eax, dword [eax + 0x44]
mov dword [esp + 8], eax
mov edx, dword [esp]
mov edx, dword [edx + 0x48]
mov dword [esp + 0x10], edx
mov ecx, dword [esp]
mov ecx, dword [ecx + 0x4c]
mov dword [esp + 0x18], ecx
mov ebx, dword [esp]
mov ebx, dword [ebx + 0x50]
mov dword [esp + 0x20], ebx
mov ebx, dword [esp]
mov ebx, dword [ebx + 0x54]
mov dword [esp + 0x28], ebx
mov ebx, dword [esp]
mov dword [esp + 0xc], eax
mov eax, dword [esp]
mov dword [esp + 0x14], edx
mov eax, dword [esp]
mov dword [esp + 0x1c], ecx
mov eax, dword [esp]
mov eax, dword [eax + 0x50]
mov dword [esp + 0x24], eax
mov eax, dword [esp]
mov eax, dword [eax + 0x54]
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], 0x10
mov dword [esp + 0x34], 0x4f9694
mov edx, 0x4f9734
mov eax, 0x4f96e4
mov esi, 0x4f9784
mov ecx, dword [esp + 0x34]
movzx ecx, byte [ecx]
mov ebx, dword [esp + 4]
mov ebx, dword [ebx + ecx*4]
mov ecx, dword [esp + 0x10]
xor ecx, dword [esp + 0x18]
xor ecx, dword [esp + 0x20]
add ecx, dword [esp + 8]
add ebx, ecx
add ebx, dword [0x4f966c]
xor ecx, ecx
mov cl, byte [edx]
push ecx
mov ecx, 0x20
pop edi
sub ecx, edi
mov edi, ebx
shr edi, cl
mov cl, byte [edx]
shl ebx, cl
or edi, ebx
add edi, dword [esp + 0x28]
mov ebx, edi
mov ecx, dword [esp + 0x28]
mov dword [esp + 8], ecx
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x28], ecx
mov ecx, dword [esp + 0x18]
shl ecx, 0xa
mov edi, dword [esp + 0x18]
shr edi, 0x16
or ecx, edi
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x18], ecx
mov dword [esp + 0x10], ebx
xor ecx, ecx
mov cl, byte [eax]
mov ebx, dword [esp + 4]
mov ebx, dword [ebx + ecx*4]
mov ecx, dword [esp + 0x24]
not ecx
or ecx, dword [esp + 0x1c]
xor ecx, dword [esp + 0x14]
add ecx, dword [esp + 0xc]
add ebx, ecx
add ebx, dword [0x4f9680]
xor ecx, ecx
mov cl, byte [esi]
push ecx
mov ecx, 0x20
pop edi
sub ecx, edi
mov edi, ebx
shr edi, cl
mov cl, byte [esi]
shl ebx, cl
or edi, ebx
add edi, dword [esp + 0x2c]
mov ebx, edi
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x2c], ecx
mov ecx, dword [esp + 0x1c]
shl ecx, 0xa
mov edi, dword [esp + 0x1c]
shr edi, 0x16
or ecx, edi
mov dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x14], ebx
inc esi
inc eax
inc edx
inc dword [esp + 0x34]
dec dword [esp + 0x30]
jne 0x480b27
mov dword [esp + 0x30], 0x10
mov edx, 0x4f96a4
mov dword [esp + 0x38], 0x4f9744
mov esi, 0x4f96f4
mov eax, 0x4f9794
mov ebx, dword [esp + 0x10]
and ebx, dword [esp + 0x18]
mov ecx, dword [esp + 0x10]
not ecx
and ecx, dword [esp + 0x20]
or ebx, ecx
add ebx, dword [esp + 8]
xor ecx, ecx
mov cl, byte [edx]
mov edi, dword [esp + 4]
add ebx, dword [edi + ecx*4]
add ebx, dword [0x4f9670]
mov ecx, dword [esp + 0x38]
movzx ecx, byte [ecx]
push ecx
mov ecx, 0x20
pop edi
sub ecx, edi
mov edi, ebx
shr edi, cl
mov ecx, dword [esp + 0x38]
mov cl, byte [ecx]
shl ebx, cl
or edi, ebx
add edi, dword [esp + 0x28]
mov ebx, edi
mov ecx, dword [esp + 0x28]
mov dword [esp + 8], ecx
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x28], ecx
mov ecx, dword [esp + 0x18]
shl ecx, 0xa
mov edi, dword [esp + 0x18]
shr edi, 0x16
or ecx, edi
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x18], ecx
mov dword [esp + 0x10], ebx
mov ebx, dword [esp + 0x14]
and ebx, dword [esp + 0x24]
mov ecx, dword [esp + 0x24]
not ecx
and ecx, dword [esp + 0x1c]
or ebx, ecx
add ebx, dword [esp + 0xc]
xor ecx, ecx
mov cl, byte [esi]
mov edi, dword [esp + 4]
add ebx, dword [edi + ecx*4]
add ebx, dword [0x4f9684]
xor ecx, ecx
mov cl, byte [eax]
push ecx
mov ecx, 0x20
pop edi
sub ecx, edi
mov edi, ebx
shr edi, cl
mov cl, byte [eax]
shl ebx, cl
or edi, ebx
add edi, dword [esp + 0x2c]
mov ebx, edi
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x2c], ecx
mov ecx, dword [esp + 0x1c]
shl ecx, 0xa
mov edi, dword [esp + 0x1c]
shr edi, 0x16
or ecx, edi
mov dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x14], ebx
inc eax
inc esi
inc dword [esp + 0x38]
inc edx
dec dword [esp + 0x30]
jne 0x480c3c
mov dword [esp + 0x30], 0x10
mov eax, 0x4f96b4
mov esi, 0x4f9754
mov dword [esp + 0x38], 0x4f9704
mov edx, 0x4f97a4
xor ecx, ecx
mov cl, byte [eax]
mov ebx, dword [esp + 4]
mov ebx, dword [ebx + ecx*4]
mov ecx, dword [esp + 0x18]
not ecx
or ecx, dword [esp + 0x10]
xor ecx, dword [esp + 0x20]
add ecx, dword [esp + 8]
add ebx, ecx
add ebx, dword [0x4f9674]
xor ecx, ecx
mov cl, byte [esi]
push ecx
mov ecx, 0x20
pop edi
sub ecx, edi
mov edi, ebx
shr edi, cl
mov cl, byte [esi]
shl ebx, cl
or edi, ebx
add edi, dword [esp + 0x28]
mov ebx, edi
mov ecx, dword [esp + 0x28]
mov dword [esp + 8], ecx
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x28], ecx
mov ecx, dword [esp + 0x18]
shl ecx, 0xa
mov edi, dword [esp + 0x18]
shr edi, 0x16
or ecx, edi
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x18], ecx
mov dword [esp + 0x10], ebx
mov ecx, dword [esp + 0x38]
movzx ecx, byte [ecx]
mov ebx, dword [esp + 4]
mov ebx, dword [ebx + ecx*4]
mov ecx, dword [esp + 0x1c]
not ecx
or ecx, dword [esp + 0x14]
xor ecx, dword [esp + 0x24]
add ecx, dword [esp + 0xc]
add ebx, ecx
add ebx, dword [0x4f9688]
xor ecx, ecx
mov cl, byte [edx]
push ecx
mov ecx, 0x20
pop edi
sub ecx, edi
mov edi, ebx
shr edi, cl
mov cl, byte [edx]
shl ebx, cl
or edi, ebx
add edi, dword [esp + 0x2c]
mov ebx, edi
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x2c], ecx
mov ecx, dword [esp + 0x1c]
shl ecx, 0xa
mov edi, dword [esp + 0x1c]
shr edi, 0x16
or ecx, edi
mov dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x14], ebx
inc edx
inc dword [esp + 0x38]
inc esi
inc eax
dec dword [esp + 0x30]
jne 0x480d5f
mov dword [esp + 0x30], 0x10
mov edx, 0x4f96c4
mov dword [esp + 0x38], 0x4f9764
mov esi, 0x4f9714
mov eax, 0x4f97b4
mov ebx, dword [esp + 0x10]
and ebx, dword [esp + 0x20]
mov ecx, dword [esp + 0x20]
not ecx
and ecx, dword [esp + 0x18]
or ebx, ecx
add ebx, dword [esp + 8]
xor ecx, ecx
mov cl, byte [edx]
mov edi, dword [esp + 4]
add ebx, dword [edi + ecx*4]
add ebx, dword [0x4f9678]
mov ecx, dword [esp + 0x38]
movzx ecx, byte [ecx]
push ecx
mov ecx, 0x20
pop edi
sub ecx, edi
mov edi, ebx
shr edi, cl
mov ecx, dword [esp + 0x38]
mov cl, byte [ecx]
shl ebx, cl
or edi, ebx
add edi, dword [esp + 0x28]
mov ebx, edi
mov ecx, dword [esp + 0x28]
mov dword [esp + 8], ecx
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x28], ecx
mov ecx, dword [esp + 0x18]
shl ecx, 0xa
mov edi, dword [esp + 0x18]
shr edi, 0x16
or ecx, edi
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x18], ecx
mov dword [esp + 0x10], ebx
mov ebx, dword [esp + 0x14]
and ebx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
not ecx
and ecx, dword [esp + 0x24]
or ebx, ecx
add ebx, dword [esp + 0xc]
xor ecx, ecx
mov cl, byte [esi]
mov edi, dword [esp + 4]
add ebx, dword [edi + ecx*4]
add ebx, dword [0x4f968c]
xor ecx, ecx
mov cl, byte [eax]
push ecx
mov ecx, 0x20
pop edi
sub ecx, edi
mov edi, ebx
shr edi, cl
mov cl, byte [eax]
shl ebx, cl
or edi, ebx
add edi, dword [esp + 0x2c]
mov ebx, edi
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x2c], ecx
mov ecx, dword [esp + 0x1c]
shl ecx, 0xa
mov edi, dword [esp + 0x1c]
shr edi, 0x16
or ecx, edi
mov dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x14], ebx
inc eax
inc esi
inc dword [esp + 0x38]
inc edx
dec dword [esp + 0x30]
jne 0x480e76
mov dword [esp + 0x30], 0x10
mov eax, 0x4f96d4
mov esi, 0x4f9774
mov dword [esp + 0x38], 0x4f9724
mov edx, 0x4f97c4
xor ecx, ecx
mov cl, byte [eax]
mov ebx, dword [esp + 4]
mov ebx, dword [ebx + ecx*4]
mov ecx, dword [esp + 0x20]
not ecx
or ecx, dword [esp + 0x18]
xor ecx, dword [esp + 0x10]
add ecx, dword [esp + 8]
add ebx, ecx
add ebx, dword [0x4f967c]
xor ecx, ecx
mov cl, byte [esi]
push ecx
mov ecx, 0x20
pop edi
sub ecx, edi
mov edi, ebx
shr edi, cl
mov cl, byte [esi]
shl ebx, cl
or edi, ebx
add edi, dword [esp + 0x28]
mov ebx, edi
mov ecx, dword [esp + 0x28]
mov dword [esp + 8], ecx
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x28], ecx
mov ecx, dword [esp + 0x18]
shl ecx, 0xa
mov edi, dword [esp + 0x18]
shr edi, 0x16
or ecx, edi
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x18], ecx
mov dword [esp + 0x10], ebx
mov ecx, dword [esp + 0x38]
movzx ecx, byte [ecx]
mov ebx, dword [esp + 4]
mov ebx, dword [ebx + ecx*4]
mov ecx, dword [esp + 0x14]
xor ecx, dword [esp + 0x1c]
xor ecx, dword [esp + 0x24]
add ecx, dword [esp + 0xc]
add ebx, ecx
add ebx, dword [0x4f9690]
xor ecx, ecx
mov cl, byte [edx]
push ecx
mov ecx, 0x20
pop edi
sub ecx, edi
mov edi, ebx
shr edi, cl
mov cl, byte [edx]
shl ebx, cl
or edi, ebx
add edi, dword [esp + 0x2c]
mov ebx, edi
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x2c], ecx
mov ecx, dword [esp + 0x1c]
shl ecx, 0xa
mov edi, dword [esp + 0x1c]
shr edi, 0x16
or ecx, edi
mov dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x14], ebx
inc edx
inc dword [esp + 0x38]
inc esi
inc eax
dec dword [esp + 0x30]
jne 0x480f99
mov ebx, dword [esp]
mov ebx, dword [ebx + 0x48]
add ebx, dword [esp + 0x18]
add ebx, dword [esp + 0x24]
mov eax, dword [esp]
mov eax, dword [eax + 0x4c]
add eax, dword [esp + 0x20]
add eax, dword [esp + 0x2c]
mov edx, dword [esp]
mov dword [edx + 0x48], eax
mov eax, dword [esp]
mov eax, dword [eax + 0x50]
add eax, dword [esp + 0x28]
add eax, dword [esp + 0xc]
mov edx, dword [esp]
mov dword [edx + 0x4c], eax
mov eax, dword [esp]
mov eax, dword [eax + 0x54]
add eax, dword [esp + 8]
add eax, dword [esp + 0x14]
mov edx, dword [esp]
mov dword [edx + 0x50], eax
mov eax, dword [esp]
mov eax, dword [eax + 0x44]
add eax, dword [esp + 0x10]
add eax, dword [esp + 0x1c]
mov edx, dword [esp]
mov dword [edx + 0x54], eax
mov eax, dword [esp]
mov dword [eax + 0x44], ebx
add esp, 0x3c
pop edi
pop esi
pop ebx
ret