Function at 0x1008c480
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100ca730
mov eax, dword fs:[0]
push eax
sub esp, 0x40
mov eax, dword [0x100f03c8]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
xor eax, eax
mov dword [ebp - 0x20], 0
xorps xmm0, xmm0
mov dword [ebp - 0x2c], eax
movq qword [ebp - 0x28], xmm0
xor esi, esi
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 4], esi
xor ebx, ebx
movq qword [ebp - 0x1c], xmm0
xor edi, edi
mov dword [ebp - 0x14], esi
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x14], eax
mov byte [ebp - 4], 1
mov eax, dword [0x10122d78]
test al, 1
jne 0x1008c562
or eax, 1
mov dword [0x10122d78], eax
mov eax, dword [0x1011c414]
mov ebx, dword [eax + 0x30]
test ebx, ebx
je 0x1008c55a
nop dword [eax]
mov esi, dword [ebx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
nop word [eax + eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x1008c520
xor edx, edx
test ecx, ecx
je 0x1008c54d
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1008c530
cmp edi, 0xe6a08fc9
je 0x1008c5fe
mov ebx, dword [ebx + 4]
test ebx, ebx
jne 0x1008c510
mov esi, dword [ebp - 0x24]
mov edi, dword [ebp - 0x18]
xor ebx, ebx
mov dword [0x10122d74], ebx
mov ecx, dword [0x1011c448]
mov eax, dword [ecx]
mov eax, dword [eax + 0x158]
call eax
mov ecx, dword [0x1011c448]
movzx ebx, ax
mov dword [ebp - 0x34], ebx
mov eax, dword [ecx]
mov eax, dword [eax + 0x160]
call eax
cmp bx, ax
je 0x1008c6c5
mov ecx, dword [0x1011c448]
push ebx
mov eax, dword [ecx]
mov eax, dword [eax + 0x164]
call eax
mov ebx, eax
mov dword [ebp - 0x2c], ebx
test ebx, ebx
je 0x1008c687
mov ecx, dword [ebx]
mov edx, dword [ecx + 4]
mov ecx, ebx
call edx
mov esi, eax
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1008c5c1
xor edx, edx
test ecx, ecx
je 0x1008c61e
nop
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1008c5d0
cmp edi, 0xbb2da711
jne 0x1008c61e
mov esi, dword [ebp - 0x24]
cmp dword [ebp - 0x40], esi
je 0x1008c609
mov dword [esi], ebx
add esi, 4
mov dword [ebp - 0x24], esi
jmp 0x1008c684
mov esi, dword [ebp - 0x24]
mov edi, dword [ebp - 0x18]
jmp 0x1008c55c
lea eax, [ebp - 0x2c]
push eax
push esi
lea ecx, [ebp - 0x28]
call fcn.10020800
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x40], eax
jmp 0x1008c681
mov eax, dword [ebx]
mov ecx, ebx
mov eax, dword [eax + 4]
call eax
mov esi, eax
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1008c630
xor edx, edx
test ecx, ecx
je 0x1008c681
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1008c640
cmp edi, 0xd402d032
jne 0x1008c681
mov edi, dword [ebp - 0x18]
cmp dword [ebp - 0x3c], edi
je 0x1008c66e
mov esi, dword [ebp - 0x24]
mov dword [edi], ebx
add edi, 4
mov dword [ebp - 0x18], edi
jmp 0x1008c687
lea eax, [ebp - 0x2c]
push eax
push edi
lea ecx, [ebp - 0x1c]
call fcn.10020800
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x3c], eax
mov esi, dword [ebp - 0x24]
mov edi, dword [ebp - 0x18]
mov ecx, dword [0x1011c448]
push dword [ebp - 0x34]
mov eax, dword [ecx]
mov eax, dword [eax + 0x15c]
call eax
mov ecx, dword [0x1011c448]
movzx ebx, ax
mov dword [ebp - 0x34], ebx
mov eax, dword [ecx]
mov eax, dword [eax + 0x160]
call eax
cmp bx, ax
jne 0x1008c591
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x30], eax
mov ecx, dword [0x1010f5ec]
mov edx, dword [0x1010f49c]
mov eax, dword [0x1010f530]
mov dword [ebp - 0x38], ecx
mov dword [ebp - 0x48], ecx
mov ecx, dword [0x1010f498]
mov dword [ebp - 0x34], eax
cmp ecx, edx
je 0x1008c700
nop dword [eax]
cmp dword [ecx], 0
je 0x1008c856
add ecx, 4
cmp ecx, edx
jne 0x1008c6f0
mov eax, dword [ebp - 0x2c]
mov ebx, esi
sub ebx, eax
xor ecx, ecx
add ebx, 3
shr ebx, 2
cmp eax, esi
mov esi, eax
cmova ebx, ecx
test ebx, ebx
je 0x1008c74e
xor edi, edi
nop dword [eax]
mov ecx, dword [esi]
sub esp, 0xc
mov eax, dword [ecx]
mov dword [esp + 8], 0x3f800000
mov dword [esp + 4], 0x3f800000
mov dword [esp], 0x3f800000
mov eax, dword [eax + 0x70]
call eax
inc edi
lea esi, [esi + 4]
cmp edi, ebx
jne 0x1008c720
mov edi, dword [ebp - 0x18]
mov ecx, dword [0x1011c51c]
mov eax, dword [ecx]
mov eax, dword [eax + 0x34]
call eax
cmp eax, 0xffffffff
je 0x1008c76f
mov ecx, dword [0x1011c51c]
push 0xffffffffffffffff
mov eax, dword [ecx]
mov eax, dword [eax + 0x40]
call eax
mov eax, dword [ebp - 0x30]
mov esi, edi
sub esi, eax
xor ecx, ecx
add esi, 3
xor ebx, ebx
shr esi, 2
cmp eax, edi
mov edi, eax
cmova esi, ecx
test esi, esi
je 0x1008c7be
nop dword [eax + eax]
mov ecx, dword [edi]
sub esp, 0xc
mov eax, dword [ecx]
mov dword [esp + 8], 0x3f800000
mov dword [esp + 4], 0x3f800000
mov dword [esp], 0x3f800000
mov eax, dword [eax + 0x70]
call eax
inc ebx
lea edi, [edi + 4]
cmp ebx, esi
jne 0x1008c790
mov eax, dword [ebp - 0x30]
movss xmm0, dword [0x1010f7d8]
xor edi, edi
mulss xmm0, dword [0x100e0a24]
mov ebx, eax
movss dword [ebp - 0x38], xmm0
test esi, esi
je 0x1008c7fc
nop dword [eax + eax]
mov ecx, dword [ebx]
push ecx
movss dword [esp], xmm0
mov eax, dword [ecx]
mov eax, dword [eax + 0x6c]
call eax
movss xmm0, dword [ebp - 0x38]
lea ebx, [ebx + 4]
inc edi
cmp edi, esi
jne 0x1008c7e0
mov ecx, dword [0x1011c51c]
mov eax, dword [ecx]
mov eax, dword [eax + 0x34]
call eax
test eax, eax
je 0x1008c81c
mov ecx, dword [0x1011c51c]
push 0
mov eax, dword [ecx]
mov eax, dword [eax + 0x40]
call eax
mov ecx, dword [ebp - 0x30]
test ecx, ecx
je 0x1008c9d5
mov edx, dword [ebp - 0x3c]
mov eax, ecx
sub edx, ecx
and edx, 0xfffffffc
cmp edx, 0x1000
jb 0x1008c9cb
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1008ca24
jmp 0x1008c9cb
cmp ecx, edx
je 0x1008c700
mov ecx, dword [ebp - 0x2c]
mov ebx, esi
movss xmm0, dword [0x100e0a18]
sub ebx, ecx
add ebx, 3
xor edx, edx
shr ebx, 2
cmp ecx, esi
mov esi, ecx
cmova ebx, edx
test ebx, ebx
je 0x1008c8f7
movzx ecx, byte [ebp - 0x32]
xor edi, edi
movd xmm1, ecx
movzx ecx, ah
movzx eax, al
cvtdq2ps xmm1, xmm1
movd xmm2, ecx
movd xmm3, eax
cvtdq2ps xmm2, xmm2
cvtdq2ps xmm3, xmm3
mulss xmm1, xmm0
mulss xmm2, xmm0
mulss xmm3, xmm0
movss dword [ebp - 0x34], xmm1
movss dword [ebp - 0x4c], xmm2
movss dword [ebp - 0x44], xmm3
mov ecx, dword [esi]
sub esp, 0xc
mov eax, dword [ecx]
movss dword [esp + 8], xmm1
movss dword [esp + 4], xmm2
movss dword [esp], xmm3
mov eax, dword [eax + 0x70]
call eax
movss xmm1, dword [ebp - 0x34]
lea esi, [esi + 4]
movss xmm2, dword [ebp - 0x4c]
inc edi
movss xmm3, dword [ebp - 0x44]
cmp edi, ebx
jne 0x1008c8c0
mov edi, dword [ebp - 0x18]
mov ecx, dword [0x1011c51c]
mov eax, dword [ecx]
mov eax, dword [eax + 0x34]
call eax
test eax, eax
je 0x1008c917
mov ecx, dword [0x1011c51c]
push 0
mov eax, dword [ecx]
mov eax, dword [eax + 0x40]
call eax
mov eax, dword [ebp - 0x30]
mov esi, edi
sub esi, eax
xor ecx, ecx
add esi, 3
xor ebx, ebx
shr esi, 2
cmp eax, edi
mov edi, eax
cmova esi, ecx
test esi, esi
je 0x1008c9b4
movzx eax, byte [ebp - 0x46]
movss xmm3, dword [0x100e0a18]
movd xmm0, eax
mov eax, dword [ebp - 0x38]
movzx ecx, ah
movzx eax, al
cvtdq2ps xmm0, xmm0
movd xmm1, ecx
movd xmm2, eax
cvtdq2ps xmm1, xmm1
cvtdq2ps xmm2, xmm2
mulss xmm0, xmm3
mulss xmm1, xmm3
mulss xmm2, xmm3
movss dword [ebp - 0x48], xmm0
movss dword [ebp - 0x38], xmm1
movss dword [ebp - 0x44], xmm2
nop dword [eax]
mov ecx, dword [edi]
sub esp, 0xc
mov eax, dword [ecx]
movss dword [esp + 8], xmm0
movss dword [esp + 4], xmm1
movss dword [esp], xmm2
mov eax, dword [eax + 0x70]
call eax
movss xmm0, dword [ebp - 0x48]
lea edi, [edi + 4]
movss xmm1, dword [ebp - 0x38]
inc ebx
movss xmm2, dword [ebp - 0x44]
cmp ebx, esi
jne 0x1008c980
mov ecx, dword [0x10122d74]
push str.sky_csgo_night02
mov eax, dword [ecx]
mov eax, dword [eax + 0x38]
call eax
jmp 0x1008c7bb
push edx
push ecx
call fcn.10099e4f
add esp, 8
mov ecx, dword [ebp - 0x2c]
test ecx, ecx
je 0x1008ca08
mov edx, dword [ebp - 0x40]
mov eax, ecx
sub edx, ecx
and edx, 0xfffffffc
cmp edx, 0x1000
jb 0x1008c9fe
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1008ca29
push edx
push ecx
call fcn.10099e4f
add esp, 8
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1009999a
mov esp, ebp
pop ebp
ret
call fcn.100a1274
call fcn.100a1274
int3