Function at 0x10041570
Capabilities:
Get process heap force flags
Hash data with crc32

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x28
movaps xmm0, xmmword [0x100a0f20]
push ebx
push esi
push edi
movups xmmword [ebp - 0x28], xmm0
call fcn.1001d050
test al, al
mov word [0x100b1ebd], 0x494d
mov byte [0x100b1ebf], 0x46
xorps xmm0, xmm0
setne al
movq qword [ebp - 0x18], xmm0
mov word [ebp - 0x10], 0
lea eax, [eax*4 + 0x52]
mov byte [0x100b1ebc], al
mov eax, dword fs:[0x18]
mov eax, dword [eax + 0x30]
mov bh, byte [eax + 0x64]
mov byte [ebp - 1], bh
call fcn.1001ca70
mov bl, al
call fcn.1001c980
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x16], eax
movzx edi, byte [ebp - 0x16]
movzx ecx, bh
not ecx
mov edx, dword [ebp - 0xc]
movzx ecx, cl
movzx esi, bl
shr edx, 8
mov eax, dword [ecx*4 + 0x1009bfa0]
mov ecx, esi
xor eax, 0xffffff
mov ebx, eax
mov dword [ebp - 8], eax
xor ecx, ebx
shr ebx, 8
movzx eax, cl
xor ebx, dword [eax*4 + 0x1009bfa0]
mov eax, edi
xor eax, ebx
shr ebx, 8
movzx eax, al
xor ebx, dword [eax*4 + 0x1009bfa0]
movzx eax, dl
xor eax, ebx
shr ebx, 8
movzx eax, al
xor ebx, dword [eax*4 + 0x1009bfa0]
mov dword [ebp - 8], ebx
mov ebx, dword [ebp - 0xc]
mov ecx, dword [ebp - 8]
shr ebx, 0x10
movzx eax, bl
xor eax, ecx
shr ecx, 8
movzx eax, al
xor ecx, dword [eax*4 + 0x1009bfa0]
mov dword [ebp - 8], ecx
mov ecx, dword [ebp - 0xc]
shr ecx, 0x18
movzx eax, cl
mov dword [ebp - 0xc], ecx
mov ecx, dword [ebp - 8]
xor eax, ecx
movzx eax, al
shr ecx, 8
xor ecx, dword [eax*4 + 0x1009bfa0]
movzx eax, byte [ebp - 0x12]
xor eax, ecx
shr ecx, 8
movzx eax, al
xor ecx, dword [eax*4 + 0x1009bfa0]
movzx eax, byte [ebp - 0x11]
xor eax, ecx
shr ecx, 8
movzx eax, al
xor ecx, dword [eax*4 + 0x1009bfa0]
movzx eax, byte [ebp - 0x10]
xor eax, ecx
movzx eax, al
shr ecx, 8
xor ecx, dword [eax*4 + 0x1009bfa0]
movzx eax, byte [ebp - 0xf]
xor eax, ecx
shr ecx, 8
movzx eax, al
xor ecx, dword [eax*4 + 0x1009bfa0]
not ecx
mov dword [ebp - 8], ecx
movzx ecx, byte [ebp - 1]
mov eax, ecx
and ecx, 0xf
shr eax, 4
mov al, byte [ebp + eax - 0x28]
mov byte [0x100b1ec0], al
mov al, byte [ebp + ecx - 0x28]
mov byte [0x100b1ec1], al
mov eax, esi
shr eax, 4
and esi, 0xf
movzx ecx, dl
mov edx, dword [ebp - 8]
mov al, byte [ebp + eax - 0x28]
mov byte [0x100b1ec2], al
mov al, byte [ebp + esi - 0x28]
mov byte [0x100b1ec3], al
mov eax, edi
shr eax, 4
and edi, 0xf
mov al, byte [ebp + eax - 0x28]
mov byte [0x100b1ec4], al
mov al, byte [ebp + edi - 0x28]
mov byte [0x100b1ec5], al
mov eax, ecx
shr eax, 4
and ecx, 0xf
mov al, byte [ebp + eax - 0x28]
mov byte [0x100b1ec6], al
mov al, byte [ebp + ecx - 0x28]
mov byte [0x100b1ec7], al
movzx ecx, bl
mov eax, ecx
and ecx, 0xf
shr eax, 4
mov al, byte [ebp + eax - 0x28]
mov byte [0x100b1ec8], al
mov al, byte [ebp + ecx - 0x28]
mov byte [0x100b1ec9], al
mov eax, dword [ebp - 0xc]
movzx ecx, al
mov eax, ecx
and ecx, 0xf
shr eax, 4
mov al, byte [ebp + eax - 0x28]
mov byte [0x100b1eca], al
mov al, byte [ebp + ecx - 0x28]
mov byte [0x100b1ecb], al
movzx ecx, dl
mov eax, ecx
and ecx, 0xf
shr eax, 4
mov al, byte [ebp + eax - 0x28]
mov byte [0x100b1ecc], al
mov al, byte [ebp + ecx - 0x28]
mov byte [0x100b1ecd], al
mov eax, edx
shr eax, 8
movzx ecx, al
mov eax, ecx
and ecx, 0xf
shr eax, 4
mov al, byte [ebp + eax - 0x28]
mov byte [0x100b1ece], al
mov al, byte [ebp + ecx - 0x28]
mov byte [0x100b1ecf], al
mov eax, edx
shr eax, 0x10
movzx ecx, al
mov eax, ecx
shr eax, 4
mov al, byte [ebp + eax - 0x28]
and ecx, 0xf
mov byte [0x100b1ed0], al
shr edx, 0x18
pop edi
mov al, byte [ebp + ecx - 0x28]
mov byte [0x100b1ed1], al
movzx ecx, dl
mov eax, ecx
shr eax, 4
and ecx, 0xf
pop esi
pop ebx
mov al, byte [ebp + eax - 0x28]
mov byte [0x100b1ed2], al
mov al, byte [ebp + ecx - 0x28]
mov byte [0x100b1ed3], al
mov esp, ebp
pop ebp
ret