Function at 0x1000b960
Capabilities:
Hash data with crc32

Disassembly:
sub esp, 0x10
mov ecx, dword [esp + 0x14]
push ebx
push ebp
push esi
push edi
mov edi, dword [0x10093758]
xor ebp, ebp
xor esi, esi
mov eax, dword [edi + 0x3e60]
mov dword [esp + 0x14], eax
test cl, 0x10
jne 0x1000bb69
mov ebx, dword [edi + 0x46e0]
test ebx, ebx
je 0x1000ba20
cmp dword [edi + 0x3eac], ebx
jne 0x1000bb5f
mov ebp, dword [edi + 0x3ed0]
xor ecx, ecx
cmp ebp, 0xffffffff
cmove ebp, ecx
cmp byte [edi + ebp + 0xdc4], cl
je 0x1000bb5f
cmp byte [eax + 0xaf], cl
jne 0x1000bb5f
mov byte [edi + 0x3eb9], cl
lea ecx, [eax + 0xe4]
call fcn.10027520
mov ecx, dword [eax]
mov eax, dword [0x10093758]
mov esi, eax
mov dword [esp + 0x18], ecx
mov dword [esp + 0x14], eax
test ebp, ebp
js 0x1000b9fe
mov eax, ebp
mov dword [esp + 0x18], ecx
cmp eax, 5
jl 0x1000bb03
push 0x20d0
push str.D:Projectm2extLibrariesimguiimgui.cpp
push str.button___0__button_____int__sizeof_g.IO.MouseDown____sizeof__g.IO.MouseDown____
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
mov eax, dword [0x10093758]
add esp, 0xc
jmp 0x1000baff
cmp byte [edi + 0xdc4], 0
je 0x1000bb5f
cmp byte [eax + 0xaf], 0
jne 0x1000bb5f
test byte [edi + 0x46e8], 1
jne 0x1000ba5b
cmp dword [edi + 0x3eac], esi
je 0x1000bb5f
cmp dword [edi + 0x3ec8], eax
jne 0x1000bb5f
test cl, 8
jne 0x1000ba82
push 0x3076
push str.D:Projectm2extLibrariesimguiimgui.cpp
push 0x10078518
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
add esp, 0xc
xor al, al
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret
lea esi, [edi + 0x46ec]
mov ecx, eax
push esi
call fcn.100122c0
mov ebx, eax
push ebx
mov dword [edi + 0x46e0], ebx
call fcn.10016c50
push dword [edi + 0x46e4]
push ebx
push esi
call fcn.100168e0
mov esi, dword [esp + 0x24]
add esp, 0x10
mov byte [esp + 0x13], al
test al, al
je 0x1000bad9
cmp byte [edi + 0x3700], 0
je 0x1000bad9
push esi
push ebx
call fcn.10020c40
push 0
push esi
call fcn.100119b0
mov al, byte [esp + 0x23]
add esp, 0x10
cmp dword [edi + 0x3eac], ebx
jne 0x1000bb5f
lea ecx, [esi + 0xe4]
mov byte [edi + 0x3eb9], al
call fcn.10027520
mov eax, dword [eax]
mov dword [esp + 0x18], eax
mov eax, dword [0x10093758]
mov esi, eax
mov dword [esp + 0x14], eax
cmp byte [esi + ebp + 0xdc4], 0
jne 0x1000bb14
mov byte [esp + 0x13], 0
jmp 0x1000bb53
test ebp, ebp
js 0x1000bb1d
cmp ebp, 5
jl 0x1000bb35
push 0x20c7
push str.D:Projectm2extLibrariesimguiimgui.cpp
push str.button___0__button_____int__sizeof_g.IO.MouseDown____sizeof__g.IO.MouseDown____
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
add esp, 0xc
mov eax, dword [esp + 0x14]
movss xmm1, dword [eax + 0x58]
movss xmm0, dword [eax + ebp*4 + 0x3758]
mulss xmm1, xmm1
comiss xmm0, xmm1
setae byte [esp + 0x13]
call fcn.10020db0
cmp byte [esp + 0x13], 0
jne 0x1000bba3
pop edi
pop esi
pop ebp
xor al, al
pop ebx
add esp, 0x10
ret
or ebx, 0xffffffff
mov al, 0x23
mov edx, 0x1007f75d
or ebp, 0xffffffff
cmp al, 0x23
jne 0x1000bb84
cmp byte [edx], al
jne 0x1000bb84
cmp byte [edx + 1], al
cmove ebx, ebp
movzx ecx, bl
movzx eax, al
xor ecx, eax
shr ebx, 8
mov al, byte [edx]
inc edx
xor ebx, dword [ecx*4 + 0x10079308]
test al, al
jne 0x1000bb76
not ebx
mov ebp, esi
jmp 0x1000bba7
mov esi, dword [esp + 0x18]
cmp byte [edi + 0x49d4], 0
jne 0x1000bc03
test ebx, ebx
jne 0x1000bbcc
push 0x309d
push str.D:Projectm2extLibrariesimguiimgui.cpp
push str.source_id___0
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
add esp, 0xc
call fcn.1000d790
mov eax, dword [esp + 0x24]
mov dword [edi + 0x49ec], ebx
mov dword [edi + 0x49f0], esi
mov byte [edi + 0x49d4], 1
mov dword [edi + 0x49d8], eax
mov dword [edi + 0x49e0], ebp
cmp ebx, dword [edi + 0x3eac]
jne 0x1000bc03
mov byte [edi + 0x3eba], 1
mov ebx, dword [esp + 0x24]
mov eax, dword [edi + 0x3de0]
mov dword [edi + 0x49dc], eax
mov byte [edi + 0x49d5], 1
test bl, 1
jne 0x1000bc77
push 0
push 0
call fcn.1000c030
add esp, 8
test al, al
jne 0x1000bc47
push 0x30b0
push str.D:Projectm2extLibrariesimguiimgui.cpp
push 0x1007f78c
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
add esp, 0xc
cmp dword [edi + 0x4a3c], 0
je 0x1000bc77
test dword [edi + 0x4a30], 0x1000
je 0x1000bc77
mov eax, dword [edi + 0x3e60]
mov byte [eax + 0xaf], 1
mov byte [eax + 0xb1], 1
mov byte [eax + 0xcc], 1
test bl, 0x12
jne 0x1000bc83
and dword [edi + 0x46e8], 0xfffffffe
pop edi
pop esi
pop ebp
mov al, 1
pop ebx
add esp, 0x10
ret