Function at 0x45a7f0
Capabilities:
Encode data using xor
Encrypt data using twofish

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
push ebx
xor eax, eax
push esi
lea ebx, [ebx]
mov bl, byte [eax + 0x5118e8]
mov cl, bl
and cl, 2
neg cl
sbb cl, cl
and cl, 0xb4
mov dl, bl
and dl, 1
mov byte [ebp - 3], dl
neg dl
sbb dl, dl
and dl, 0x5a
mov byte [ebp - 1], dl
mov dl, bl
shr dl, 2
xor dl, byte [ebp - 1]
xor dl, cl
xor dl, bl
mov byte [ebp - 8], dl
mov dl, bl
shr dl, 1
xor dl, bl
mov bl, byte [ebp - 3]
shr dl, 1
neg bl
sbb bl, bl
and bl, 0xb4
xor dl, bl
xor dl, byte [ebp - 1]
mov bl, byte [eax + 0x5119e8]
xor dl, cl
xor dl, byte [eax + 0x5118e8]
mov cl, bl
and cl, 2
neg cl
sbb cl, cl
and cl, 0xb4
mov byte [ebp - 2], cl
mov cl, bl
and cl, 1
mov byte [ebp - 3], cl
neg cl
sbb cl, cl
and cl, 0x5a
mov byte [ebp - 1], cl
mov cl, bl
shr cl, 2
xor cl, byte [ebp - 1]
xor cl, byte [ebp - 2]
xor cl, bl
mov byte [ebp - 7], cl
mov cl, bl
shr cl, 1
xor cl, bl
mov bl, byte [ebp - 3]
shr cl, 1
neg bl
sbb bl, bl
and bl, 0xb4
xor cl, bl
xor cl, byte [ebp - 1]
mov bl, byte [eax + 0x5119e8]
xor cl, byte [ebp - 2]
mov byte [ebp - 0xc], bl
xor cl, bl
movzx ebx, byte [ebp - 7]
mov byte [ebp - 0xb], bl
movzx ebx, byte [ebp - 8]
mov byte [ebp - 0xa], cl
mov byte [ebp - 9], cl
mov esi, dword [ebp - 0xc]
mov byte [ebp - 0xa], bl
mov bl, byte [eax + 0x5118e8]
mov byte [ebp - 9], bl
movzx ebx, byte [ebp - 7]
mov byte [ebp - 0xc], dl
mov byte [ebp - 0xb], dl
mov dword [eax*4 + 0x516018], esi
mov esi, dword [ebp - 0xc]
mov dword [eax*4 + 0x516418], esi
mov byte [ebp - 0xc], bl
mov bl, byte [eax + 0x5119e8]
mov byte [ebp - 0xb], cl
mov byte [ebp - 9], cl
mov byte [ebp - 0xa], bl
mov ecx, dword [ebp - 0xc]
mov bl, byte [ebp - 8]
mov dword [eax*4 + 0x516818], ecx
mov cl, byte [eax + 0x5118e8]
mov byte [ebp - 0xb], cl
mov cl, byte [eax + 0x5118e9]
mov byte [ebp - 0xa], dl
mov byte [ebp - 0xc], bl
mov byte [ebp - 9], bl
mov edx, dword [ebp - 0xc]
mov dword [eax*4 + 0x516c18], edx
mov dl, cl
and dl, 2
neg dl
sbb dl, dl
and dl, 0xb4
mov byte [ebp - 2], dl
mov dl, cl
and dl, 1
mov byte [ebp - 3], dl
neg dl
sbb dl, dl
and dl, 0x5a
mov bl, byte [ebp - 3]
mov byte [ebp - 1], dl
mov dl, cl
shr dl, 2
xor dl, byte [ebp - 1]
xor dl, byte [ebp - 2]
xor dl, cl
mov byte [ebp - 8], dl
mov dl, cl
shr dl, 1
xor dl, cl
shr dl, 1
neg bl
sbb bl, bl
and bl, 0xb4
xor dl, bl
xor dl, byte [ebp - 1]
mov bl, byte [eax + 0x5119e9]
xor dl, byte [ebp - 2]
xor dl, cl
mov cl, bl
and cl, 2
neg cl
sbb cl, cl
and cl, 0xb4
mov byte [ebp - 2], cl
mov cl, bl
and cl, 1
mov byte [ebp - 3], cl
neg cl
sbb cl, cl
and cl, 0x5a
mov byte [ebp - 1], cl
mov cl, bl
shr cl, 2
xor cl, byte [ebp - 1]
xor cl, byte [ebp - 2]
xor cl, bl
mov byte [ebp - 7], cl
mov cl, bl
shr cl, 1
xor cl, bl
mov bl, byte [ebp - 3]
shr cl, 1
neg bl
sbb bl, bl
and bl, 0xb4
xor cl, bl
xor cl, byte [ebp - 1]
mov bl, byte [eax + 0x5119e9]
xor cl, byte [ebp - 2]
mov byte [ebp - 0xc], bl
xor cl, bl
movzx ebx, byte [ebp - 7]
mov byte [ebp - 0xa], cl
mov byte [ebp - 9], cl
mov byte [ebp - 0xb], bl
mov esi, dword [ebp - 0xc]
movzx ebx, byte [ebp - 8]
mov byte [ebp - 0xc], dl
mov byte [ebp - 0xb], dl
mov byte [ebp - 0xa], bl
mov bl, byte [eax + 0x5118e9]
mov byte [ebp - 9], bl
movzx ebx, byte [ebp - 7]
mov dword [eax*4 + 0x51601c], esi
mov esi, dword [ebp - 0xc]
mov byte [ebp - 0xb], cl
mov byte [ebp - 9], cl
mov byte [ebp - 0xc], bl
mov bl, byte [eax + 0x5119e9]
mov byte [ebp - 0xa], bl
mov ecx, dword [ebp - 0xc]
mov bl, byte [ebp - 8]
mov byte [ebp - 0xa], dl
mov dword [eax*4 + 0x51681c], ecx
mov cl, byte [eax + 0x5118e9]
mov byte [ebp - 0xb], cl
mov cl, byte [eax + 0x5118ea]
mov byte [ebp - 0xc], bl
mov byte [ebp - 9], bl
mov edx, dword [ebp - 0xc]
mov dword [eax*4 + 0x516c1c], edx
mov dl, cl
and dl, 2
neg dl
sbb dl, dl
and dl, 0xb4
mov byte [ebp - 2], dl
mov dl, cl
and dl, 1
mov byte [ebp - 3], dl
neg dl
sbb dl, dl
and dl, 0x5a
mov bl, byte [ebp - 3]
mov byte [ebp - 1], dl
mov dl, cl
shr dl, 2
xor dl, byte [ebp - 1]
mov dword [eax*4 + 0x51641c], esi
xor dl, byte [ebp - 2]
xor dl, cl
mov byte [ebp - 8], dl
mov dl, cl
shr dl, 1
xor dl, cl
shr dl, 1
neg bl
sbb bl, bl
and bl, 0xb4
xor dl, bl
xor dl, byte [ebp - 1]
mov bl, byte [eax + 0x5119ea]
xor dl, byte [ebp - 2]
xor dl, cl
mov cl, bl
and cl, 2
neg cl
sbb cl, cl
and cl, 0xb4
mov byte [ebp - 2], cl
mov cl, bl
and cl, 1
mov byte [ebp - 3], cl
neg cl
sbb cl, cl
and cl, 0x5a
mov byte [ebp - 1], cl
mov cl, bl
shr cl, 2
xor cl, byte [ebp - 1]
xor cl, byte [ebp - 2]
xor cl, bl
mov byte [ebp - 7], cl
mov cl, bl
shr cl, 1
xor cl, bl
mov bl, byte [ebp - 3]
shr cl, 1
neg bl
sbb bl, bl
and bl, 0xb4
xor cl, bl
xor cl, byte [ebp - 1]
mov bl, byte [eax + 0x5119ea]
xor cl, byte [ebp - 2]
mov byte [ebp - 0xc], bl
xor cl, bl
movzx ebx, byte [ebp - 7]
mov byte [ebp - 0xb], bl
movzx ebx, byte [ebp - 8]
mov byte [ebp - 0xa], cl
mov byte [ebp - 9], cl
mov esi, dword [ebp - 0xc]
mov byte [ebp - 0xc], dl
mov byte [ebp - 0xb], dl
mov byte [ebp - 0xa], bl
mov bl, byte [eax + 0x5118ea]
mov byte [ebp - 9], bl
movzx ebx, byte [ebp - 7]
mov dword [eax*4 + 0x516020], esi
mov esi, dword [ebp - 0xc]
mov byte [ebp - 0xc], bl
mov bl, byte [eax + 0x5119ea]
mov byte [ebp - 0xb], cl
mov byte [ebp - 0xa], bl
mov bl, byte [ebp - 8]
mov byte [ebp - 9], cl
mov ecx, dword [ebp - 0xc]
mov byte [ebp - 0xa], dl
mov dword [eax*4 + 0x516820], ecx
mov cl, byte [eax + 0x5118ea]
mov byte [ebp - 0xc], bl
mov byte [ebp - 0xb], cl
mov cl, byte [eax + 0x5118eb]
mov byte [ebp - 9], bl
mov edx, dword [ebp - 0xc]
mov dword [eax*4 + 0x516c20], edx
mov dl, cl
and dl, 2
neg dl
sbb dl, dl
and dl, 0xb4
mov byte [ebp - 2], dl
mov dl, cl
and dl, 1
mov byte [ebp - 3], dl
neg dl
sbb dl, dl
and dl, 0x5a
mov bl, byte [ebp - 3]
mov byte [ebp - 1], dl
mov dl, cl
shr dl, 2
xor dl, byte [ebp - 1]
mov dword [eax*4 + 0x516420], esi
xor dl, byte [ebp - 2]
xor dl, cl
mov byte [ebp - 8], dl
mov dl, cl
shr dl, 1
xor dl, cl
shr dl, 1
neg bl
sbb bl, bl
and bl, 0xb4
xor dl, bl
xor dl, byte [ebp - 1]
mov bl, byte [eax + 0x5119eb]
xor dl, byte [ebp - 2]
xor dl, cl
mov cl, bl
and cl, 2
neg cl
sbb cl, cl
and cl, 0xb4
mov byte [ebp - 2], cl
mov cl, bl
and cl, 1
mov byte [ebp - 3], cl
neg cl
sbb cl, cl
and cl, 0x5a
mov byte [ebp - 1], cl
mov cl, bl
shr cl, 2
xor cl, byte [ebp - 1]
xor cl, byte [ebp - 2]
xor cl, bl
mov byte [ebp - 7], cl
mov cl, bl
shr cl, 1
xor cl, bl
mov bl, byte [ebp - 3]
shr cl, 1
neg bl
sbb bl, bl
and bl, 0xb4
xor cl, bl
xor cl, byte [ebp - 1]
mov bl, byte [eax + 0x5119eb]
xor cl, byte [ebp - 2]
mov byte [ebp - 0xc], bl
xor cl, bl
movzx ebx, byte [ebp - 7]
mov byte [ebp - 0xb], bl
movzx ebx, byte [ebp - 8]
mov byte [ebp - 0xa], cl
mov byte [ebp - 9], cl
mov esi, dword [ebp - 0xc]
mov byte [ebp - 0xa], bl
mov bl, byte [eax + 0x5118eb]
mov byte [ebp - 9], bl
movzx ebx, byte [ebp - 7]
mov byte [ebp - 0xc], dl
mov byte [ebp - 0xb], dl
mov dword [eax*4 + 0x516024], esi
mov esi, dword [ebp - 0xc]
mov byte [ebp - 0xc], bl
mov bl, byte [eax + 0x5119eb]
mov byte [ebp - 0xb], cl
mov byte [ebp - 0xa], bl
mov bl, byte [ebp - 8]
mov byte [ebp - 9], cl
mov ecx, dword [ebp - 0xc]
mov dword [eax*4 + 0x516824], ecx
mov cl, byte [eax + 0x5118eb]
mov byte [ebp - 0xc], bl
mov byte [ebp - 0xb], cl
mov byte [ebp - 0xa], dl
mov byte [ebp - 9], bl
mov edx, dword [ebp - 0xc]
mov dword [eax*4 + 0x516424], esi
mov dword [eax*4 + 0x516c24], edx
add eax, 4
cmp eax, 0x100
jl 0x45a800
pop esi
mov dword [0x511ae8], 0
pop ebx
mov esp, ebp
pop ebp
ret