Function at 0x403440
Capabilities:
Encode data using xor

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0xc
mov ecx, dword [esp + 0x20]
mov eax, dword [ecx + 0xfec]
movzx esi, al
mov dword [esp + 8], eax
mov edx, dword [ecx + 0x44]
xor esi, dword [0x44f464]
mov dword [esp], 0
mov dword [esp + 4], edx
mov edx, esi
mov edi, esi
mov ebp, esi
mov ebx, esi
and edx, 1
shr edi, 5
shl ebp, 0x1d
shl ebx, 0x1b
neg edx
sar ebp, 0x1f
sar ebx, 0x1f
and edx, 0xedb8832
and ebp, 0x3b6e20c8
and ebx, 0xedb88320
xor edx, edi
mov edi, esi
xor ebx, ebp
mov ebp, esi
shl esi, 0x1a
shl edi, 0x1e
shl ebp, 0x1c
sar esi, 0x1f
sar edi, 0x1f
sar ebp, 0x1f
and esi, 0x3b6e20c8
and edi, 0x1db71064
and ebp, 0x76dc4190
xor edi, edx
shl edx, 0x1e
xor ebx, edi
shl edi, 0x1d
sar edx, 0x1f
sar edi, 0x1f
xor ebx, ebp
and edx, 0x76dc4190
and edi, 0xedb88320
shr ebx, 3
xor edi, esi
movzx esi, ah
shr eax, 0x10
xor edi, ebx
movzx eax, al
xor esi, edi
xor esi, edx
mov edx, esi
mov edi, esi
mov ebp, esi
mov ebx, esi
and edx, 1
shr edi, 5
shl ebp, 0x1d
shl ebx, 0x1b
neg edx
sar ebp, 0x1f
sar ebx, 0x1f
and edx, 0xedb8832
and ebp, 0x3b6e20c8
and ebx, 0xedb88320
xor edx, edi
mov edi, esi
xor ebx, ebp
mov ebp, esi
shl esi, 0x1a
shl edi, 0x1e
shl ebp, 0x1c
sar esi, 0x1f
sar edi, 0x1f
sar ebp, 0x1f
and esi, 0x3b6e20c8
and edi, 0x1db71064
and ebp, 0x76dc4190
xor edi, edx
shl edx, 0x1e
xor ebx, edi
shl edi, 0x1d
sar edx, 0x1f
sar edi, 0x1f
xor ebx, ebp
and edx, 0x76dc4190
movzx ebp, byte [esp + 7]
and edi, 0xedb88320
shr ebx, 3
xor edi, esi
xor edi, ebx
xor eax, edi
xor eax, edx
mov edx, eax
mov esi, eax
mov ebx, eax
mov edi, eax
and edx, 1
shr esi, 5
shl ebx, 0x1d
shl edi, 0x1b
neg edx
sar ebx, 0x1f
sar edi, 0x1f
and edx, 0xedb8832
and ebx, 0x3b6e20c8
and edi, 0xedb88320
xor edx, esi
mov esi, eax
xor edi, ebx
mov ebx, eax
shl eax, 0x1a
shl esi, 0x1e
shl ebx, 0x1c
sar eax, 0x1f
sar esi, 0x1f
sar ebx, 0x1f
and eax, 0x3b6e20c8
and esi, 0x1db71064
and ebx, 0x76dc4190
xor esi, edx
shl edx, 0x1e
xor edi, esi
shl esi, 0x1d
sar edx, 0x1f
sar esi, 0x1f
xor edi, ebx
and edx, 0x76dc4190
and esi, 0xedb88320
shr edi, 3
xor esi, eax
movzx eax, byte [esp + 0xb]
xor esi, edi
xor eax, esi
xor eax, edx
mov edx, eax
mov esi, eax
mov ebx, eax
mov edi, eax
and edx, 1
shr esi, 5
shl ebx, 0x1d
shl edi, 0x1b
neg edx
sar ebx, 0x1f
sar edi, 0x1f
and edx, 0xedb8832
and ebx, 0x3b6e20c8
and edi, 0xedb88320
xor edx, esi
mov esi, eax
xor edi, ebx
mov ebx, eax
shl eax, 0x1a
shl esi, 0x1e
shl ebx, 0x1c
sar eax, 0x1f
sar esi, 0x1f
sar ebx, 0x1f
and eax, 0x3b6e20c8
and esi, 0x1db71064
and ebx, 0x76dc4190
xor esi, edx
shl edx, 0x1e
xor edi, esi
shl esi, 0x1d
sar edx, 0x1f
sar esi, 0x1f
xor edi, ebx
and edx, 0x76dc4190
and esi, 0xedb88320
shr edi, 3
xor esi, eax
movzx eax, byte [esp + 4]
xor esi, edi
xor eax, esi
xor eax, edx
mov edx, eax
mov esi, eax
mov ebx, eax
mov edi, eax
and edx, 1
shr esi, 5
shl ebx, 0x1d
shl edi, 0x1b
neg edx
sar ebx, 0x1f
sar edi, 0x1f
and edx, 0xedb8832
and ebx, 0x3b6e20c8
and edi, 0xedb88320
xor edx, esi
mov esi, eax
xor edi, ebx
mov ebx, eax
shl eax, 0x1a
shl esi, 0x1e
shl ebx, 0x1c
sar eax, 0x1f
sar esi, 0x1f
sar ebx, 0x1f
and eax, 0x3b6e20c8
and esi, 0x1db71064
and ebx, 0x76dc4190
xor esi, edx
shl edx, 0x1e
xor edi, esi
shl esi, 0x1d
sar edx, 0x1f
sar esi, 0x1f
xor edi, ebx
and edx, 0x76dc4190
and esi, 0xedb88320
shr edi, 3
xor esi, eax
movzx eax, byte [esp + 5]
xor esi, edi
xor eax, esi
xor eax, edx
mov edx, eax
mov esi, eax
mov ebx, eax
mov edi, eax
and edx, 1
shr esi, 5
shl ebx, 0x1d
shl edi, 0x1b
neg edx
sar ebx, 0x1f
sar edi, 0x1f
and edx, 0xedb8832
and ebx, 0x3b6e20c8
and edi, 0xedb88320
xor edx, esi
mov esi, eax
xor edi, ebx
mov ebx, eax
shl eax, 0x1a
shl esi, 0x1e
shl ebx, 0x1c
sar eax, 0x1f
sar esi, 0x1f
sar ebx, 0x1f
and eax, 0x3b6e20c8
and esi, 0x1db71064
and ebx, 0x76dc4190
xor esi, edx
shl edx, 0x1e
xor edi, esi
shl esi, 0x1d
sar edx, 0x1f
sar esi, 0x1f
xor edi, ebx
and edx, 0x76dc4190
and esi, 0xedb88320
shr edi, 3
xor esi, eax
movzx eax, byte [esp + 6]
xor esi, edi
xor eax, esi
xor eax, edx
mov edx, eax
mov esi, eax
mov ebx, eax
mov edi, eax
and edx, 1
shr esi, 5
shl ebx, 0x1d
shl edi, 0x1e
neg edx
sar ebx, 0x1f
sar edi, 0x1f
and edx, 0xedb8832
and ebx, 0x3b6e20c8
and edi, 0x1db71064
xor edx, esi
mov esi, eax
shl esi, 0x1b
xor edi, edx
shl edx, 0x1e
sar esi, 0x1f
sar edx, 0x1f
and esi, 0xedb88320
and edx, 0x76dc4190
xor esi, ebx
mov ebx, eax
shl eax, 0x1a
shl ebx, 0x1c
xor esi, edi
shl edi, 0x1d
sar eax, 0x1f
sar ebx, 0x1f
sar edi, 0x1f
and eax, 0x3b6e20c8
and ebx, 0x76dc4190
and edi, 0xedb88320
xor esi, ebx
xor edi, eax
shr esi, 3
xor edi, esi
xor ebp, edi
xor ebp, edx
mov edx, ebp
mov eax, ebp
mov ebx, ebp
mov edi, ebp
and edx, 1
shr eax, 5
shl ebx, 0x1d
shl edi, 0x1b
neg edx
sar ebx, 0x1f
sar edi, 0x1f
and edx, 0xedb8832
and ebx, 0x3b6e20c8
and edi, 0xedb88320
xor edx, eax
mov eax, ebp
xor edi, ebx
mov ebx, ebp
shl ebp, 0x1a
shl eax, 0x1e
shl ebx, 0x1c
sar ebp, 0x1f
sar eax, 0x1f
sar ebx, 0x1f
and ebp, 0x3b6e20c8
and eax, 0x1db71064
and ebx, 0x76dc4190
xor eax, edx
shl edx, 0x1e
xor edi, eax
shl eax, 0x1d
sar edx, 0x1f
sar eax, 0x1f
xor edi, ebx
and edx, 0x76dc4190
and eax, 0xedb88320
shr edi, 3
xor eax, ebp
xor eax, edi
xor eax, edx
mov edx, 0xfffffe90
nop word cs:[eax + eax]
nop dword [eax]
movzx esi, byte [ecx + edx + 0x170]
xor esi, eax
mov edi, esi
mov eax, esi
mov ebp, esi
mov ebx, esi
and edi, 1
shr eax, 5
shl ebp, 0x1d
shl ebx, 0x1b
neg edi
sar ebp, 0x1f
sar ebx, 0x1f
and edi, 0xedb8832
and ebp, 0x3b6e20c8
and ebx, 0xedb88320
xor edi, eax
mov eax, esi
xor ebx, ebp
mov ebp, esi
shl esi, 0x1a
shl eax, 0x1e
shl ebp, 0x1c
sar esi, 0x1f
sar eax, 0x1f
sar ebp, 0x1f
and esi, 0x3b6e20c8
and eax, 0x1db71064
and ebp, 0x76dc4190
xor eax, edi
shl edi, 0x1e
xor ebx, eax
shl eax, 0x1d
sar edi, 0x1f
sar eax, 0x1f
xor ebx, ebp
and edi, 0x76dc4190
and eax, 0xedb88320
shr ebx, 3
xor eax, esi
xor eax, ebx
xor eax, edi
inc edx
jne 0x4038b0
movzx edx, byte [esp]
xor eax, edx
mov edx, eax
mov esi, eax
mov ebx, eax
mov edi, eax
mov ebp, eax
and edx, 1
shr esi, 5
shl ebx, 0x1d
shl edi, 0x1b
shl ebp, 0x1c
neg edx
sar ebx, 0x1f
sar edi, 0x1f
sar ebp, 0x1f
and edx, 0xedb8832
and ebx, 0x3b6e20c8
and edi, 0xedb88320
and ebp, 0x76dc4190
xor edx, esi
mov esi, eax
xor edi, ebx
shl eax, 0x1a
shl esi, 0x1e
sar eax, 0x1f
sar esi, 0x1f
and eax, 0x3b6e20c8
and esi, 0x1db71064
xor esi, edx
shl edx, 0x1e
xor edi, esi
shl esi, 0x1d
sar edx, 0x1f
sar esi, 0x1f
xor edi, ebp
and edx, 0x76dc4190
and esi, 0xedb88320
shr edi, 3
xor esi, eax
movzx eax, byte [esp + 1]
xor esi, edi
xor eax, esi
xor eax, edx
mov edx, eax
mov esi, eax
mov ebx, eax
mov edi, eax
mov ebp, eax
and edx, 1
shr esi, 5
shl ebx, 0x1d
shl edi, 0x1b
shl ebp, 0x1c
neg edx
sar ebx, 0x1f
sar edi, 0x1f
sar ebp, 0x1f
and edx, 0xedb8832
and ebx, 0x3b6e20c8
and edi, 0xedb88320
and ebp, 0x76dc4190
xor edx, esi
mov esi, eax
xor edi, ebx
shl eax, 0x1a
shl esi, 0x1e
sar eax, 0x1f
sar esi, 0x1f
and eax, 0x3b6e20c8
and esi, 0x1db71064
xor esi, edx
shl edx, 0x1e
xor edi, esi
shl esi, 0x1d
sar edx, 0x1f
sar esi, 0x1f
xor edi, ebp
and edx, 0x76dc4190
and esi, 0xedb88320
shr edi, 3
xor esi, eax
movzx eax, byte [esp + 2]
xor esi, edi
xor eax, esi
xor eax, edx
mov edx, eax
mov esi, eax
mov edi, eax
mov ebx, eax
mov ebp, eax
and edx, 1
shr esi, 5
shl edi, 0x1e
shl ebx, 0x1d
shl ebp, 0x1c
neg edx
sar edi, 0x1f
sar ebx, 0x1f
sar ebp, 0x1f
and edx, 0xedb8832
and edi, 0x1db71064
and ebx, 0x3b6e20c8
and ebp, 0x76dc4190
xor edx, esi
mov esi, eax
shl eax, 0x1a
shl esi, 0x1b
xor edi, edx
sar eax, 0x1f
shl edx, 0x1e
sar esi, 0x1f
and eax, 0x3b6e20c8
sar edx, 0x1f
and esi, 0xedb88320
and edx, 0x76dc4190
xor esi, ebx
xor esi, edi
shl edi, 0x1d
sar edi, 0x1f
xor esi, ebp
and edi, 0xedb88320
shr esi, 3
xor edi, eax
xor edi, esi
movzx esi, byte [esp + 3]
xor esi, edi
xor esi, edx
mov edx, esi
mov eax, esi
mov ebx, esi
mov edi, esi
mov ebp, esi
and edx, 1
shr eax, 5
shl ebx, 0x1d
shl edi, 0x1b
shl ebp, 0x1c
neg edx
sar ebx, 0x1f
sar edi, 0x1f
sar ebp, 0x1f
and edx, 0xedb8832
and ebx, 0x3b6e20c8
and edi, 0xedb88320
and ebp, 0x76dc4190
xor edx, eax
mov eax, esi
xor edi, ebx
shl esi, 0x1a
shl eax, 0x1e
sar esi, 0x1f
sar eax, 0x1f
and esi, 0x3b6e20c8
and eax, 0x1db71064
xor eax, edx
shl edx, 0x1e
xor edi, eax
shl eax, 0x1d
sar edx, 0x1f
sar eax, 0x1f
xor edi, ebp
and edx, 0x76dc4190
and eax, 0xedb88320
shr edi, 3
xor eax, esi
xor eax, edi
xor eax, edx
mov edx, 0xfffff174
nop
movzx esi, byte [ecx + edx + 0x1000]
xor esi, eax
mov edi, esi
mov eax, esi
mov ebp, esi
mov ebx, esi
and edi, 1
shr eax, 5
shl ebp, 0x1d
shl ebx, 0x1b
neg edi
sar ebp, 0x1f
sar ebx, 0x1f
and edi, 0xedb8832
and ebp, 0x3b6e20c8
and ebx, 0xedb88320
xor edi, eax
mov eax, esi
xor ebx, ebp
mov ebp, esi
shl esi, 0x1a
shl eax, 0x1e
shl ebp, 0x1c
sar esi, 0x1f
sar eax, 0x1f
sar ebp, 0x1f
and esi, 0x3b6e20c8
and eax, 0x1db71064
and ebp, 0x76dc4190
xor eax, edi
shl edi, 0x1e
xor ebx, eax
shl eax, 0x1d
sar edi, 0x1f
sar eax, 0x1f
xor ebx, ebp
and edi, 0x76dc4190
and eax, 0xedb88320
shr ebx, 3
xor eax, esi
xor eax, ebx
xor eax, edi
inc edx
jne 0x403b60
add esp, 0xc
pop esi
pop edi
pop ebx
pop ebp
ret