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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
mov eax, dword [ebp + 0x14]
lea ecx, [eax + 0x1144]
sub esp, 0x14
cmp eax, ecx
push ebx
push esi
mov ebx, eax
push edi
mov dword [esp + 0x14], ebx
mov dword [esp + 0x1c], ecx
ja 0x10011864
mov edx, dword [ebp + 8]
mov ecx, dword [ebp + 0xc]
lea ecx, [ecx]
mov edi, dword [ebp + 0x10]
cmp ebx, 0x51da
ja 0x10010fba
je 0x10011864
cmp ebx, 0x5042
ja 0x10010f18
je 0x10010f07
cmp ebx, 0x4f76
ja 0x10010eca
je 0x10010ebc
mov eax, ebx
sub eax, 0x4eee
je 0x10010e90
sub eax, 0x44
jne case.0x1001121b.9
xor esi, esi
mov eax, dword [edx]
mov eax, dword [eax + 0x1c]
mov dword [eax + 0x1c], esi
mov dword [esp + 0x10], eax
mov eax, dword [edx]
mov dword [eax + 0x14], esi
mov eax, dword [edx]
mov dword [eax + 8], esi
jmp case.0x1001121b.9
mov eax, dword [edx]
test eax, eax
je 0x10010ea0
cmp dword [eax + 0x1c], 0
jne case.0x1001121b.9
mov eax, 0x4cf4
cmp eax, eax
je 0x100116a5
add eax, 0x3f
cmp eax, 0x4cf4
jbe 0x10010ea7
jmp case.0x1001121b.9
mov eax, dword [edx]
mov dword [eax + 0x18], 0
jmp case.0x1001121b.9
mov eax, ebx
sub eax, 0x4fba
je 0x10010eeb
sub eax, 0x44
jne case.0x1001121b.9
mov eax, dword [esp + 0x10]
mov dword [eax], 0
jmp case.0x1001121b.9
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 8]
test eax, eax
je case.0x1001121b.9
mov esi, dword [edx]
and eax, 1
mov dword [esi + 0x30], eax
jmp case.0x1001121b.9
mov eax, dword [esp + 0x10]
xor esi, esi
mov dword [eax + 4], esi
mov dword [eax + 0xc], esi
jmp case.0x1001121b.9
cmp ebx, 0x510e
ja 0x10010f7a
je 0x10010f5b
mov eax, ebx
sub eax, 0x5086
je 0x10010f44
sub eax, 0x44
jne case.0x1001121b.9
mov eax, dword [esp + 0x10]
mov dword [eax + 0x38], 0
jmp case.0x1001121b.9
mov eax, dword [esp + 0x10]
mov dword [eax + 0x14], 0x8000
mov dword [eax + 0x20], 0
jmp case.0x1001121b.9
mov esi, dword [esp + 0x10]
mov dword [esi + 0x3c], 0
lea eax, [esi + 0x530]
mov dword [esi + 0x6c], eax
mov dword [esi + 0x50], eax
mov dword [esi + 0x4c], eax
jmp case.0x1001121b.9
mov eax, ebx
sub eax, 0x5152
je 0x10010fa7
sub eax, 0x44
jne case.0x1001121b.9
mov eax, dword [esp + 0x10]
mov dword [eax + 0x1bc4], 0xffffffff
mov dword [esp + 0xc], 0
jmp case.0x1001121b.9
mov eax, dword [esp + 0x10]
mov dword [eax + 0x1bc0], 1
jmp case.0x1001121b.9
cmp ebx, 0x6320
ja 0x100111ca
je 0x100111bd
cmp ebx, 0x5c4f
ja 0x10011150
je 0x10011120
mov eax, ebx
sub eax, 0x5bc7
je 0x100110b9
sub eax, 0x44
jne case.0x1001121b.9
mov eax, dword [edx]
not eax
mov dword [edx], eax
cmp dword [edi], 8
jb case.0x1001121b.9
xor esi, esi
lea edi, [esi + 5]
jmp 0x10011010
cmp esi, 0x98
ja case.0x10011023.1
movzx eax, byte [esi + 0x10011880]
jmp dword [eax*4 + 0x10011870]
mov eax, dword [edx]
movzx ebx, byte [ecx]
xor ebx, eax
and ebx, 0xff
shr eax, 8
xor eax, dword [ebx*4 + 0x1003b870]
inc ecx
jmp 0x10011098
mov eax, dword [edx]
movzx ebx, byte [ecx]
xor ebx, eax
shr eax, 8
and ebx, 0xff
xor eax, dword [ebx*4 + 0x1003b870]
inc ecx
mov dword [edx], eax
mov eax, dword [ebp + 0x10]
add dword [eax], 0xfffffff8
jmp 0x1001109a
movzx ebx, byte [ecx]
mov eax, dword [edx]
xor ebx, eax
and ebx, 0xff
shr eax, 8
xor eax, dword [ebx*4 + 0x1003b870]
mov dword [edx], eax
movzx ebx, byte [ecx + 1]
xor ebx, eax
and ebx, 0xff
shr eax, 8
xor eax, dword [ebx*4 + 0x1003b870]
add ecx, 2
mov dword [edx], eax
mov ebx, dword [esp + 0x14]
add esi, 0x26
dec edi
jne 0x10011010
mov eax, dword [ebp + 0x10]
cmp dword [eax], 8
jae 0x10011003
jmp case.0x1001121b.9
test ecx, ecx
jne 0x100110e9
mov esi, 0x3057
mov eax, esi
sub eax, 0x3057
je 0x100110d6
sub eax, 0x1a
je 0x10011864
jmp 0x100110de
mov dword [esp + 0xc], 0
add esi, 0x1a
cmp esi, 0x3071
jbe 0x100110c2
mov esi, 0x1c05
cmp esi, esi
jne 0x10011110
mov eax, 0x1189
cmp eax, eax
je 0x100116b1
add eax, 0x45
cmp eax, 0x1189
jbe 0x100110f9
lea esp, [esp]
add esi, 0x58
cmp esi, 0x1c05
jbe 0x100110f0
jmp case.0x1001121b.9
cmp dword [edi], 0
je 0x10011143
mov eax, dword [edx]
movzx esi, byte [ecx]
xor esi, eax
and esi, 0xff
shr eax, 8
xor eax, dword [esi*4 + 0x1003b870]
inc ecx
mov dword [edx], eax
dec dword [edi]
jne 0x10011125
mov eax, dword [edx]
not eax
mov dword [esp + 0xc], eax
jmp case.0x1001121b.9
cmp ebx, 0x5c93
je 0x10011864
cmp ebx, 0x62dc
jne case.0x1001121b.9
xor edi, edi
mov dword [esp + 0x18], edi
cmp dword [ecx], edi
je case.0x1001121b.9
jmp 0x10011180
mov esi, 0x2282
mov eax, esi
sub eax, 0x2282
je 0x10011198
sub eax, 0x32
jne 0x100111a4
add edx, 4
jmp 0x100111a4
mov eax, dword [ecx]
test al, 1
je 0x100111a0
xor edi, dword [edx]
shr eax, 1
mov dword [ecx], eax
add esi, 0x32
cmp esi, 0x22b4
jbe 0x10011185
cmp dword [ecx], 0
jne 0x10011180
mov dword [esp + 0x18], edi
jmp case.0x1001121b.9
mov eax, dword [esp + 0x18]
mov dword [esp + 0xc], eax
jmp case.0x1001121b.9
cmp ebx, 0x685a
ja 0x1001167d
je 0x10011676
cmp ebx, 0x6364
je 0x10011864
cmp ebx, 0x6816
jne case.0x1001121b.9
cmp edx, 0x107
ja 0x10011344
je 0x1001162b
lea eax, [edx - 8]
cmp eax, 0xf8
ja case.0x1001121b.9
movzx eax, byte [eax + 0x10011990]
jmp dword [eax*4 + 0x1001191c]
mov esi, 0x3be8
mov eax, esi
sub eax, 0x3be8
je 0x1001123b
sub eax, 0x2c
je 0x10011864
jmp 0x10011249
mov eax, fcn.100073b0
test eax, eax
setne al
mov byte [esp + 0xc], al
add esi, 0x2c
cmp esi, 0x3c14
jbe 0x10011227
mov esi, 0x44a2
mov eax, esi
sub eax, 0x44a2
je 0x1001126d
sub eax, 6
je 0x10011864
jmp 0x1001127b
mov eax, 0x10006c50
test eax, eax
setne al
mov byte [esp + 0xc], al
add esi, 6
cmp esi, 0x44a8
jbe 0x10011259
mov eax, 0x6043
cmp eax, eax
je 0x100116c6
add eax, 0x10
cmp eax, 0x6043
jbe 0x1001128d
mov esi, 0x1973
mov eax, esi
sub eax, 0x1973
je 0x100112b6
sub eax, 0x24
je 0x10011864
jmp 0x100112c4
mov eax, fcn.10005730
test eax, eax
setne al
mov byte [esp + 0xc], al
add esi, 0x24
cmp esi, 0x1997
jbe 0x100112a2
mov eax, 0x79e
cmp eax, eax
je 0x100116df
add eax, 0x4f
cmp eax, 0x79e
jbe 0x100112d6
mov esi, 0x21d0
mov eax, esi
sub eax, 0x21d0
je 0x100112fd
dec eax
je 0x10011864
jmp 0x1001130b
mov eax, fcn.1000b4f0
test eax, eax
setne al
mov byte [esp + 0xc], al
inc esi
cmp esi, 0x21d1
jbe 0x100112eb
mov eax, 0x156d
cmp eax, eax
je 0x100116f8
add eax, 0x33
cmp eax, 0x156d
jbe 0x1001131b
mov esi, 0x7522
mov eax, esi
sub eax, 0x7522
je 0x10011357
sub eax, 0x4a
je 0x10011864
jmp 0x10011365
mov eax, edx
sub eax, 0x138
je 0x1001132b
sub eax, 0xf
je 0x10011370
jmp case.0x1001121b.9
mov eax, fcn.1000b4f0
test eax, eax
setne al
mov byte [esp + 0xc], al
add esi, 0x4a
cmp esi, 0x756c
jbe 0x10011330
mov eax, 0x541b
cmp eax, eax
je 0x10011711
add eax, 0x51
cmp eax, 0x541b
jbe 0x10011377
mov eax, 0x7321
cmp eax, eax
je 0x1001172a
add eax, 0x42
cmp eax, 0x7321
jbe 0x1001138e
mov eax, 0x8e0
cmp eax, eax
je 0x10011743
add eax, 0x27
cmp eax, 0x8e0
jbe 0x100113a5
mov eax, 0x215
cmp eax, eax
je 0x1001175c
add eax, 0x39
cmp eax, 0x215
jbe 0x100113bc
mov eax, 0x55ff
cmp eax, eax
je 0x10011775
add eax, 0x32
cmp eax, 0x55ff
jbe 0x100113d3
mov eax, 0x642a
cmp eax, eax
je 0x1001178e
add eax, 0xc
cmp eax, 0x642a
jbe 0x100113ea
mov eax, 0x1d12
cmp eax, eax
je 0x100117a7
add eax, 0x3f
cmp eax, 0x1d12
jbe 0x10011401
mov eax, 0x729f
cmp eax, eax
je 0x100117c0
add eax, 0x32
cmp eax, 0x729f
jbe 0x10011418
mov esi, 0x6e93
mov eax, esi
sub eax, 0x6e93
je 0x10011441
sub eax, 0x34
je 0x10011864
jmp 0x1001144f
mov eax, fcn.100091b0
test eax, eax
setne al
mov byte [esp + 0xc], al
add esi, 0x34
cmp esi, 0x6ec7
jbe 0x1001142d
mov esi, 0x2c72
mov eax, esi
sub eax, 0x2c72
je 0x10011473
sub eax, 0x5e
je 0x10011864
jmp 0x10011481
mov eax, fcn.100073b0
test eax, eax
setne al
mov byte [esp + 0xc], al
add esi, 0x5e
cmp esi, 0x2cd0
jbe 0x1001145f
mov esi, 0x74cf
mov eax, esi
sub eax, 0x74cf
je 0x100114a5
sub eax, 0x31
je 0x10011864
jmp 0x100114b3
mov eax, fcn.1000aef0
test eax, eax
setne al
mov byte [esp + 0xc], al
add esi, 0x31
cmp esi, 0x7500
jbe 0x10011491
mov esi, 0x17a9
mov eax, esi
sub eax, 0x17a9
je 0x100114d7
sub eax, 0x2e
je 0x10011864
jmp 0x100114e5
mov eax, fcn.10006000
test eax, eax
setne al
mov byte [esp + 0xc], al
add esi, 0x2e
cmp esi, 0x17d7
jbe 0x100114c3
mov eax, 0x3dfc
cmp eax, eax
je 0x100117d9
add eax, 0x1f
cmp eax, 0x3dfc
jbe 0x100114f7
mov esi, 0xf48
mov eax, esi
sub eax, 0xf48
je 0x10011520
sub eax, 0x11
je 0x10011864
jmp 0x1001152e
mov eax, fcn.1000afa0
test eax, eax
setne al
mov byte [esp + 0xc], al
add esi, 0x11
cmp esi, 0xf59
jbe 0x1001150c
mov esi, 0x27c
mov eax, esi
sub eax, 0x27c
je 0x10011552
sub eax, 0x11
je 0x10011864
jmp 0x10011560
mov eax, fcn.10006130
test eax, eax
setne al
mov byte [esp + 0xc], al
add esi, 0x11
cmp esi, 0x28d
jbe 0x1001153e
mov eax, 0x237e
cmp eax, eax
je 0x100117f2
add eax, 0x5c
cmp eax, 0x237e
jbe 0x10011572
mov esi, 0x6f16
mov eax, esi
sub eax, 0x6f16
je 0x1001159b
sub eax, 0x46
je 0x10011864
jmp 0x100115a9
mov eax, fcn.10005720
test eax, eax
setne al
mov byte [esp + 0xc], al
add esi, 0x46
cmp esi, 0x6f5c
jbe 0x10011587
mov eax, 0x5585
cmp eax, eax
je 0x1001180b
add eax, 0x3c
cmp eax, 0x5585
jbe 0x100115bb
mov eax, 0x4a4a
cmp eax, eax
je 0x10011824
add eax, 0x11
cmp eax, 0x4a4a
jbe 0x100115d2
mov esi, 0x72bd
mov eax, esi
sub eax, 0x72bd
je 0x100115fb
sub eax, 0x59
je 0x10011864
jmp 0x10011609
mov eax, fcn.100080d0
test eax, eax
setne al
mov byte [esp + 0xc], al
add esi, 0x59
cmp esi, 0x7316
jbe 0x100115e7
mov eax, 0x3550
cmp eax, eax
je 0x1001183d
add eax, 0xc
cmp eax, 0x3550
jbe 0x1001161b
mov eax, 0x1809
cmp eax, eax
je 0x10011856
add eax, 0x19
cmp eax, 0x1809
jbe 0x10011632
mov esi, 0x2ba7
mov eax, esi
sub eax, 0x2ba7
je 0x1001165b
sub eax, 6
je 0x10011864
jmp 0x10011669
mov eax, fcn.10005730
test eax, eax
setne al
mov byte [esp + 0xc], al
add esi, 6
cmp esi, 0x2bad
jbe 0x10011647
jmp case.0x1001121b.9
mov byte [esp + 0xc], 0
jmp case.0x1001121b.9
cmp ebx, 0x689e
je 0x10011864
add ebx, 0x44
mov dword [esp + 0x14], ebx
cmp ebx, dword [esp + 0x1c]
jbe 0x10010e30
mov eax, dword [esp + 0xc]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, 0xfffffffe
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [edi]
mov edx, dword [edx]
push eax
push edx
call fcn.10022be0
add esp, 8
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, fcn.100092b0
test eax, eax
setne cl
mov byte [esp + 0xc], cl
mov eax, dword [esp + 0xc]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, fcn.10007920
test edx, edx
setne al
mov byte [esp + 0xc], al
mov eax, dword [esp + 0xc]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, fcn.10005730
test ecx, ecx
setne dl
mov byte [esp + 0xc], dl
mov eax, dword [esp + 0xc]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, fcn.1000c790
test eax, eax
setne cl
mov byte [esp + 0xc], cl
mov eax, dword [esp + 0xc]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, fcn.10007cc0
test edx, edx
setne al
mov byte [esp + 0xc], al
mov eax, dword [esp + 0xc]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, fcn.10005740
test ecx, ecx
setne dl
mov byte [esp + 0xc], dl
mov eax, dword [esp + 0xc]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, fcn.10005990
test eax, eax
setne cl
mov byte [esp + 0xc], cl
mov eax, dword [esp + 0xc]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, fcn.10009c40
test edx, edx
setne al
mov byte [esp + 0xc], al
mov eax, dword [esp + 0xc]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, fcn.10006d80
test ecx, ecx
setne dl
mov byte [esp + 0xc], dl
mov eax, dword [esp + 0xc]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, fcn.10005720
test eax, eax
setne cl
mov byte [esp + 0xc], cl
mov eax, dword [esp + 0xc]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, fcn.10008120
test edx, edx
setne al
mov byte [esp + 0xc], al
mov eax, dword [esp + 0xc]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, fcn.1000c590
test ecx, ecx
setne dl
mov byte [esp + 0xc], dl
mov eax, dword [esp + 0xc]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, fcn.1000c020
test eax, eax
setne cl
mov byte [esp + 0xc], cl
mov eax, dword [esp + 0xc]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, fcn.10008250
test edx, edx
setne al
mov byte [esp + 0xc], al
mov eax, dword [esp + 0xc]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, fcn.100080a0
test ecx, ecx
setne dl
mov byte [esp + 0xc], dl
mov eax, dword [esp + 0xc]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, fcn.10005720
test eax, eax
setne cl
mov byte [esp + 0xc], cl
mov eax, dword [esp + 0xc]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, fcn.100080d0
test edx, edx
setne al
mov byte [esp + 0xc], al
mov eax, dword [esp + 0xc]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret