Function at 0x47bdf0
Capabilities:
Encode data using xor
Hash data with crc32

Disassembly:
push rbx
sub rsp, 0x20
movaps xmmword [rsp], xmm6
movaps xmmword [rsp + 0x10], xmm7
lea rax, [rcx + 0x78]
mov qword [rcx + 0x40], 0
shr rax, 2
mov byte [rcx + 0x23], 0
neg rax
mov qword [rcx + 0x28], 0
and eax, 3
mov dword [rcx + 0x3c], 0x20
mov byte [rcx + 0x21], 1
mov dword [rcx + 0x5c], 4
mov byte [rcx + 0x22], 0
je 0x47c205
cmp eax, 1
mov dword [rcx + 0x78], 0
je 0x47c240
cmp eax, 3
mov dword [rcx + 0x7c], 0x77073096
jne 0x47c230
mov dword [rcx + 0x80], 0xee0e612c
mov ebx, 0xfd
mov r9d, 3
mov r10d, 0x100
mov edx, eax
mov r8d, 0x3f
sub r10d, eax
mov r11d, 0xfc
lea rdx, [rcx + rdx*4 + 0x78]
movd xmm6, r9d
xor eax, eax
pxor xmm2, xmm2
movdqa xmm4, xmmword [0x0080f590]
pshufd xmm5, xmm6, 0
paddd xmm5, xmmword [0x0080f570]
movdqa xmm6, xmmword [0x0080f580]
movdqa xmm3, xmmword [0x0080f5a0]
nop dword [rax]
movdqa xmm0, xmm5
movdqa xmm1, xmm2
movdqa xmm7, xmm2
pand xmm0, xmm4
psubd xmm1, xmm0
add eax, 1
add rdx, 0x10
movdqa xmm0, xmm1
movdqa xmm1, xmm5
paddd xmm5, xmm6
psrld xmm1, 1
pand xmm0, xmm3
pxor xmm0, xmm1
movdqa xmm1, xmm0
psrld xmm0, 1
pand xmm1, xmm4
psubd xmm7, xmm1
movdqa xmm1, xmm7
movdqa xmm7, xmm2
pand xmm1, xmm3
pxor xmm1, xmm0
movdqa xmm0, xmm1
psrld xmm1, 1
pand xmm0, xmm4
psubd xmm7, xmm0
movdqa xmm0, xmm7
movdqa xmm7, xmm2
pand xmm0, xmm3
pxor xmm0, xmm1
movdqa xmm1, xmm0
psrld xmm0, 1
pand xmm1, xmm4
psubd xmm7, xmm1
movdqa xmm1, xmm7
movdqa xmm7, xmm2
pand xmm1, xmm3
pxor xmm1, xmm0
movdqa xmm0, xmm1
psrld xmm1, 1
pand xmm0, xmm4
psubd xmm7, xmm0
movdqa xmm0, xmm7
movdqa xmm7, xmm2
pand xmm0, xmm3
pxor xmm0, xmm1
movdqa xmm1, xmm0
psrld xmm0, 1
pand xmm1, xmm4
psubd xmm7, xmm1
movdqa xmm1, xmm7
movdqa xmm7, xmm2
pand xmm1, xmm3
pxor xmm1, xmm0
movdqa xmm0, xmm1
psrld xmm1, 1
pand xmm0, xmm4
psubd xmm7, xmm0
movdqa xmm0, xmm7
movdqa xmm7, xmm2
pand xmm0, xmm3
pxor xmm0, xmm1
movdqa xmm1, xmm0
psrld xmm0, 1
pand xmm1, xmm4
psubd xmm7, xmm1
movdqa xmm1, xmm7
pand xmm1, xmm3
pxor xmm0, xmm1
movaps xmmword [rdx - 0x10], xmm0
cmp eax, r8d
jb 0x47bec0
lea edx, [r11 + r9]
sub ebx, r11d
cmp r11d, r10d
je 0x47c1f6
mov eax, edx
mov r9d, edx
mov r10d, edx
and eax, 1
shr r9d, 1
neg eax
and eax, 0xedb88320
xor eax, r9d
mov r9d, eax
and eax, 1
neg eax
shr r9d, 1
and eax, 0xedb88320
xor eax, r9d
mov r9d, eax
and eax, 1
neg eax
shr r9d, 1
and eax, 0xedb88320
xor eax, r9d
mov r9d, eax
and eax, 1
neg eax
shr r9d, 1
and eax, 0xedb88320
xor r9d, eax
mov eax, r9d
and r9d, 1
neg r9d
shr eax, 1
and r9d, 0xedb88320
xor eax, r9d
mov r9d, eax
and eax, 1
neg eax
shr r9d, 1
and eax, 0xedb88320
xor r9d, eax
mov eax, r9d
and r9d, 1
shr eax, 1
neg r9d
and r9d, 0xedb88320
xor eax, r9d
mov r9d, eax
and eax, 1
neg eax
shr r9d, 1
and eax, 0xedb88320
xor eax, r9d
cmp ebx, 1
mov dword [rcx + r10*4 + 0x78], eax
lea r9d, [rdx + 1]
je 0x47c1f6
mov eax, r9d
mov r10d, r9d
and eax, 1
shr r10d, 1
neg eax
and eax, 0xedb88320
xor eax, r10d
mov r10d, eax
and eax, 1
neg eax
shr r10d, 1
and eax, 0xedb88320
xor r10d, eax
mov eax, r10d
and r10d, 1
neg r10d
shr eax, 1
and r10d, 0xedb88320
xor eax, r10d
mov r10d, eax
and eax, 1
neg eax
shr r10d, 1
and eax, 0xedb88320
xor r10d, eax
mov eax, r10d
and r10d, 1
neg r10d
shr eax, 1
and r10d, 0xedb88320
xor eax, r10d
mov r10d, eax
and eax, 1
neg eax
shr r10d, 1
and eax, 0xedb88320
xor r10d, eax
mov eax, r10d
and r10d, 1
shr eax, 1
neg r10d
add edx, 2
and r10d, 0xedb88320
xor eax, r10d
mov r10d, eax
and eax, 1
neg eax
shr r10d, 1
and eax, 0xedb88320
xor eax, r10d
cmp ebx, 2
mov dword [rcx + r9*4 + 0x78], eax
je 0x47c1f6
mov eax, edx
and eax, 1
neg eax
and eax, 0xedb88320
xor eax, 0x7f
mov r8d, eax
and eax, 1
neg eax
shr r8d, 1
and eax, 0xedb88320
xor eax, r8d
mov r8d, eax
and eax, 1
neg eax
shr r8d, 1
and eax, 0xedb88320
xor eax, r8d
mov r8d, eax
and eax, 1
neg eax
shr r8d, 1
and eax, 0xedb88320
xor eax, r8d
mov r8d, eax
and eax, 1
neg eax
shr r8d, 1
and eax, 0xedb88320
xor eax, r8d
mov r8d, eax
and eax, 1
neg eax
shr r8d, 1
and eax, 0xedb88320
xor eax, r8d
mov r8d, eax
and eax, 1
neg eax
shr r8d, 1
and eax, 0xedb88320
xor eax, r8d
mov r8d, eax
and eax, 1
neg eax
shr r8d, 1
and eax, 0xedb88320
xor eax, r8d
mov dword [rcx + rdx*4 + 0x78], eax
movaps xmm6, xmmword [rsp]
movaps xmm7, xmmword [rsp + 0x10]
add rsp, 0x20
pop rbx
ret
xor r9d, r9d
mov ebx, 0x100
xor edx, edx
mov r10d, 0x100
mov r8d, 0x40
mov r11d, 0x100
jmp 0x47be88
mov ebx, 0xfe
mov r9d, 2
jmp 0x47be71
mov ebx, 0xff
mov r9d, 1
jmp 0x47be71