Function at 0x6255c4
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffff8
push ebx
push esi
mov ebx, edx
mov ecx, eax
mov esi, 0x639140
cmp ebx, 8
jb 0x6257ba
movzx eax, byte [ecx]
xor edx, edx
xor eax, dword [ebp + 8]
xor edx, dword [ebp + 0xc]
and eax, 0xff
xor edx, edx
mov edx, dword [esi + eax*8 + 4]
mov eax, dword [esi + eax*8]
push edx
push eax
mov eax, dword [ebp + 8]
mov edx, dword [ebp + 0xc]
shrd eax, edx, 8
shr edx, 8
xor eax, dword [esp]
xor edx, dword [esp + 4]
add esp, 8
mov dword [ebp + 8], eax
mov dword [ebp + 0xc], edx
inc ecx
movzx eax, byte [ecx]
xor edx, edx
xor eax, dword [ebp + 8]
xor edx, dword [ebp + 0xc]
and eax, 0xff
xor edx, edx
mov edx, dword [esi + eax*8 + 4]
mov eax, dword [esi + eax*8]
push edx
push eax
mov eax, dword [ebp + 8]
mov edx, dword [ebp + 0xc]
shrd eax, edx, 8
shr edx, 8
xor eax, dword [esp]
xor edx, dword [esp + 4]
add esp, 8
mov dword [ebp + 8], eax
mov dword [ebp + 0xc], edx
inc ecx
movzx eax, byte [ecx]
xor edx, edx
xor eax, dword [ebp + 8]
xor edx, dword [ebp + 0xc]
and eax, 0xff
xor edx, edx
mov edx, dword [esi + eax*8 + 4]
mov eax, dword [esi + eax*8]
push edx
push eax
mov eax, dword [ebp + 8]
mov edx, dword [ebp + 0xc]
shrd eax, edx, 8
shr edx, 8
xor eax, dword [esp]
xor edx, dword [esp + 4]
add esp, 8
mov dword [ebp + 8], eax
mov dword [ebp + 0xc], edx
inc ecx
movzx eax, byte [ecx]
xor edx, edx
xor eax, dword [ebp + 8]
xor edx, dword [ebp + 0xc]
and eax, 0xff
xor edx, edx
mov edx, dword [esi + eax*8 + 4]
mov eax, dword [esi + eax*8]
push edx
push eax
mov eax, dword [ebp + 8]
mov edx, dword [ebp + 0xc]
shrd eax, edx, 8
shr edx, 8
xor eax, dword [esp]
xor edx, dword [esp + 4]
add esp, 8
mov dword [ebp + 8], eax
mov dword [ebp + 0xc], edx
inc ecx
movzx eax, byte [ecx]
xor edx, edx
xor eax, dword [ebp + 8]
xor edx, dword [ebp + 0xc]
and eax, 0xff
xor edx, edx
mov edx, dword [esi + eax*8 + 4]
mov eax, dword [esi + eax*8]
push edx
push eax
mov eax, dword [ebp + 8]
mov edx, dword [ebp + 0xc]
shrd eax, edx, 8
shr edx, 8
xor eax, dword [esp]
xor edx, dword [esp + 4]
add esp, 8
mov dword [ebp + 8], eax
mov dword [ebp + 0xc], edx
inc ecx
movzx eax, byte [ecx]
xor edx, edx
xor eax, dword [ebp + 8]
xor edx, dword [ebp + 0xc]
and eax, 0xff
xor edx, edx
mov edx, dword [esi + eax*8 + 4]
mov eax, dword [esi + eax*8]
push edx
push eax
mov eax, dword [ebp + 8]
mov edx, dword [ebp + 0xc]
shrd eax, edx, 8
shr edx, 8
xor eax, dword [esp]
xor edx, dword [esp + 4]
add esp, 8
mov dword [ebp + 8], eax
mov dword [ebp + 0xc], edx
inc ecx
movzx eax, byte [ecx]
xor edx, edx
xor eax, dword [ebp + 8]
xor edx, dword [ebp + 0xc]
and eax, 0xff
xor edx, edx
mov edx, dword [esi + eax*8 + 4]
mov eax, dword [esi + eax*8]
push edx
push eax
mov eax, dword [ebp + 8]
mov edx, dword [ebp + 0xc]
shrd eax, edx, 8
shr edx, 8
xor eax, dword [esp]
xor edx, dword [esp + 4]
add esp, 8
mov dword [ebp + 8], eax
mov dword [ebp + 0xc], edx
inc ecx
movzx eax, byte [ecx]
xor edx, edx
xor eax, dword [ebp + 8]
xor edx, dword [ebp + 0xc]
and eax, 0xff
xor edx, edx
mov edx, dword [esi + eax*8 + 4]
mov eax, dword [esi + eax*8]
push edx
push eax
mov eax, dword [ebp + 8]
mov edx, dword [ebp + 0xc]
shrd eax, edx, 8
shr edx, 8
xor eax, dword [esp]
xor edx, dword [esp + 4]
add esp, 8
mov dword [ebp + 8], eax
mov dword [ebp + 0xc], edx
inc ecx
sub ebx, 8
cmp ebx, 8
jae 0x6255de
test ebx, ebx
jbe 0x6257fd
movzx eax, byte [ecx]
xor edx, edx
xor eax, dword [ebp + 8]
xor edx, dword [ebp + 0xc]
and eax, 0xff
xor edx, edx
mov edx, dword [esi + eax*8 + 4]
mov eax, dword [esi + eax*8]
push edx
push eax
mov eax, dword [ebp + 8]
mov edx, dword [ebp + 0xc]
shrd eax, edx, 8
shr edx, 8
xor eax, dword [esp]
xor edx, dword [esp + 4]
add esp, 8
mov dword [ebp + 8], eax
mov dword [ebp + 0xc], edx
inc ecx
dec ebx
test ebx, ebx
ja 0x6257be
mov eax, dword [ebp + 8]
mov dword [ebp - 8], eax
mov eax, dword [ebp + 0xc]
mov dword [ebp - 4], eax
mov eax, dword [ebp - 8]
mov edx, dword [ebp - 4]
pop esi
pop ebx
pop ecx
pop ecx
pop ebp
ret 8