Function at 0x100a1ba0
Capabilities:
Hash data with crc32

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x14
vpxor xmm0, xmm0, xmm0
push ebx
push esi
push edi
sub esp, 0x18
mov edi, edx
mov esi, esp
mov ebx, ecx
vmovdqu xmmword [esi], xmm0
mov dword [esi + 0x10], 7
mov dword [esi + 0x14], 0xf
mov eax, dword [str.Enabled]
mov dword [esi], eax
mov ax, word [0x101b4b18]
mov word [esi + 4], ax
movzx eax, byte [0x101b4b1a]
mov byte [esi + 6], al
mov byte [esi + 7], 0
call fcn.100156b0
mov esi, dword [ebp + 8]
mov edx, edi
push esi
mov ecx, eax
call fcn.10012f20
sub esp, 0x18
mov ecx, esp
vpxor xmm0, xmm0, xmm0
vmovdqu xmmword [ecx], xmm0
mov dword [ecx + 0x10], 0xc
mov dword [ecx + 0x14], 0xf
vmovq xmm0, qword [str.No_Title_Bar]
vmovq qword [ecx], xmm0
mov eax, dword [0x10203b04]
mov dword [ecx + 8], eax
mov byte [ecx + 0xc], 0
mov ecx, ebx
call fcn.100156b0
lea ecx, [esi + 1]
push ecx
lea edx, [edi + 1]
mov ecx, eax
call fcn.10012f20
sub esp, 0x18
mov ecx, esp
vpxor xmm0, xmm0, xmm0
vmovdqu xmmword [ecx], xmm0
mov dword [ecx + 0x10], 0xd
mov dword [ecx + 0x14], 0xf
vmovq xmm0, qword [str.No_Background]
vmovq qword [ecx], xmm0
mov eax, dword [0x10203b14]
mov dword [ecx + 8], eax
movzx eax, byte [0x10203b18]
mov byte [ecx + 0xc], al
mov byte [ecx + 0xd], 0
mov ecx, ebx
call fcn.100156b0
lea ecx, [esi + 2]
push ecx
lea edx, [edi + 2]
mov ecx, eax
call fcn.10012f20
sub esp, 0x18
mov ecx, ebx
mov eax, esp
vpxor xmm0, xmm0, xmm0
vmovdqu xmmword [eax], xmm0
mov dword [eax + 0x10], 8
mov dword [eax + 0x14], 0xf
vmovq xmm0, qword [str.Save_Key]
vmovq qword [eax], xmm0
mov byte [eax + 8], 0
call fcn.100156b0
lea ecx, [esi + 0xc]
push ecx
lea edx, [edi + 0xc]
mov ecx, eax
call fcn.10026930
sub esp, 0x18
mov eax, esp
vpxor xmm0, xmm0, xmm0
vmovdqu xmmword [eax], xmm0
mov dword [eax + 0x10], 8
mov ecx, ebx
mov dword [eax + 0x14], 0xf
vmovq xmm0, qword [str.Load_Key]
vmovq qword [eax], xmm0
mov byte [eax + 8], 0
call fcn.100156b0
lea ecx, [esi + 0x18]
push ecx
lea edx, [edi + 0x18]
mov ecx, eax
call fcn.10026930
or ecx, 0xffffffff
mov esi, 0x10203815
mov al, 0x43
or edi, 0xffffffff
cmp al, 0x23
jne 0x100a1d31
cmp byte [esi], al
jne 0x100a1d31
cmp byte [esi + 1], al
cmove ecx, edi
movzx edx, cl
movzx eax, al
xor edx, eax
shr ecx, 8
mov al, byte [esi]
inc esi
xor ecx, dword [edx*4 + 0x10221b00]
test al, al
jne 0x100a1d23
not ecx
call fcn.10143c10
mov esi, eax
test esi, esi
je 0x100a1dd6
sub esp, 0x18
mov ecx, esp
vpxor xmm0, xmm0, xmm0
vmovdqu xmmword [ecx], xmm0
mov dword [ecx + 0x10], 3
mov dword [ecx + 0x14], 0xf
mov ax, word [0x10203b34]
mov word [ecx], ax
mov al, byte [0x10203b36]
mov byte [ecx + 2], al
mov byte [ecx + 3], 0
mov ecx, ebx
call fcn.100156b0
lea ecx, [esi + 0xc]
mov edi, eax
push ecx
lea ecx, [esp + 0x14]
call fcn.100a3ab0
mov dl, byte [edi]
mov cl, byte [esp + 0x10]
mov eax, dword [esp + 0x18]
mov byte [edi], cl
mov esi, dword [edi + 0xc]
mov ecx, dword [esp + 0x1c]
mov byte [esp + 0xc], dl
push dword [esp + 0xc]
mov byte [esp + 0x14], dl
mov edx, dword [edi + 8]
mov dword [edi + 0xc], ecx
lea ecx, [esp + 0x1c]
mov dword [edi + 8], eax
mov dword [esp + 0x1c], edx
mov dword [esp + 0x20], esi
call fcn.1000f550
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4