Function at 0x427fe0
Capabilities:
Hash data with crc32

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x14
push ebx
push esi
mov esi, dword [0x52a278]
xor eax, eax
mov dword [ebp - 0x10], ecx
mov dword [ebp - 8], eax
mov dword [ebp - 0xc], eax
push edi
mov edi, dword [esi + 0x3f34]
test cl, 0x10
jne 0x4281fd
mov ebx, dword [esi + 0x47b8]
test ebx, ebx
je 0x428050
cmp dword [esi + 0x3f80], ebx
jne 0x4281f4
mov eax, dword [esi + 0x3fa4]
xor ecx, ecx
cmp eax, 0xffffffff
cmove eax, ecx
mov dword [ebp - 8], eax
cmp byte [eax + esi + 0xdcc], cl
je 0x4281f4
cmp byte [edi + 0xe4], cl
jne 0x4281f4
xor al, al
jmp 0x42812d
cmp byte [esi + 0xdcc], al
je 0x4281f4
cmp byte [edi + 0xe4], al
jne 0x4281f4
test byte [esi + 0x47c0], 1
jne 0x428089
cmp dword [esi + 0x3f80], eax
je 0x4281f4
cmp dword [esi + 0x3f9c], edi
jne 0x4281f4
test cl, 8
jne 0x4280ae
push 0x332e
push str.C:Users_soniaOneDriveDocumentosGitHubEngine_BonesEngine_Bones_v.1Engine_BonesSourceExternalImGuiimgui.cpp
push 0x4f6694
call fcn.004cb34c
add esp, 0xc
xor al, al
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
lea eax, [esi + 0x47c4]
mov ecx, edi
push eax
call fcn.00411060
mov ebx, eax
mov eax, dword [0x52a278]
mov dword [esi + 0x47b8], ebx
cmp dword [eax + 0x3f80], ebx
jne 0x4280d7
mov dword [eax + 0x3f84], ebx
cmp dword [eax + 0x3fa8], ebx
jne 0x4280e6
mov byte [eax + 0x3fac], 1
push dword [esi + 0x47bc]
mov edx, ebx
lea ecx, [esi + 0x47c4]
call fcn.004116f0
add esp, 4
mov byte [ebp - 1], al
test al, al
je 0x428121
cmp byte [esi + 0x3708], 0
je 0x428121
mov edx, edi
mov ecx, ebx
call fcn.00411200
xor edx, edx
mov ecx, edi
call fcn.0041c2f0
mov al, byte [ebp - 1]
cmp dword [esi + 0x3f80], ebx
jne 0x4281f4
mov byte [esi + 0x3f8d], al
mov ecx, dword [edi + 0x11c]
test ecx, ecx
jg 0x42815a
push 0x78a
push str.C:Users_soniaOneDriveDocumentosGitHubEngine_BonesEngine_Bones_v.1Engine_BonesSourceExternalImGuiimgui.h
push str.Size___0
call fcn.004cb34c
mov ecx, dword [edi + 0x11c]
add esp, 0xc
mov eax, dword [edi + 0x124]
mov edi, dword [ebp - 8]
mov eax, dword [eax + ecx*4 - 4]
mov dword [ebp - 0xc], eax
mov eax, dword [0x52a278]
mov dword [ebp - 0x14], eax
test edi, edi
js 0x42817b
cmp edi, 5
jl 0x428195
push 0x2337
push str.C:Users_soniaOneDriveDocumentosGitHubEngine_BonesEngine_Bones_v.1Engine_BonesSourceExternalImGuiimgui.cpp
push str.button___0__button_____int__sizeof_g.IO.MouseDown____sizeof__g.IO.MouseDown____
call fcn.004cb34c
mov eax, dword [ebp - 0x14]
add esp, 0xc
cmp byte [eax + edi + 0xdcc], 0
jne 0x4281a5
mov byte [ebp - 1], 0
jmp 0x4281e9
mov eax, dword [0x52a278]
mov dword [ebp - 0x14], eax
test edi, edi
js 0x4281b6
cmp edi, 5
jl 0x4281d0
push 0x232e
push str.C:Users_soniaOneDriveDocumentosGitHubEngine_BonesEngine_Bones_v.1Engine_BonesSourceExternalImGuiimgui.cpp
push str.button___0__button_____int__sizeof_g.IO.MouseDown____sizeof__g.IO.MouseDown____
call fcn.004cb34c
mov eax, dword [ebp - 0x14]
add esp, 0xc
movss xmm1, dword [eax + 0x60]
movss xmm0, dword [eax + edi*4 + 0x3788]
mulss xmm1, xmm1
comiss xmm0, xmm1
setae byte [ebp - 1]
call fcn.004152d0
cmp byte [ebp - 1], 0
jne 0x42823b
xor al, al
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
or ebx, 0xffffffff
mov al, 0x23
mov edx, 0x4fd129
or edi, 0xffffffff
nop word [eax + eax]
cmp al, 0x23
jne 0x42821e
cmp byte [edx], al
jne 0x42821e
cmp byte [edx + 1], al
cmove ebx, edi
movzx ecx, bl
movzx eax, al
xor ecx, eax
shr ebx, 8
mov al, byte [edx]
inc edx
xor ebx, dword [ecx*4 + 0x4f06e8]
test al, al
jne 0x428210
not ebx
xor edi, edi
cmp byte [esi + 0x4b1c], 0
jne 0x428298
test ebx, ebx
jne 0x42825f
push 0x3355
push str.C:Users_soniaOneDriveDocumentosGitHubEngine_BonesEngine_Bones_v.1Engine_BonesSourceExternalImGuiimgui.cpp
push str.source_id___0
call fcn.004cb34c
add esp, 0xc
call fcn.00427f00
mov eax, dword [ebp - 0xc]
mov dword [esi + 0x4b38], eax
mov eax, dword [ebp - 0x10]
mov dword [esi + 0x4b34], ebx
mov byte [esi + 0x4b1c], 1
mov dword [esi + 0x4b20], eax
mov dword [esi + 0x4b28], edi
cmp ebx, dword [esi + 0x3f80]
jne 0x428298
mov byte [esi + 0x3f8e], 1
mov ebx, dword [ebp - 0x10]
mov eax, dword [esi + 0x3eb0]
mov dword [esi + 0x4b24], eax
mov byte [esi + 0x4b1d], 1
test bl, 1
jne 0x428305
xor ecx, ecx
call fcn.004222b0
test al, al
jne 0x4282d5
push 0x3368
push str.C:Users_soniaOneDriveDocumentosGitHubEngine_BonesEngine_Bones_v.1Engine_BonesSourceExternalImGuiimgui.cpp
push 0x4fd158
call fcn.004cb34c
add esp, 0xc
cmp dword [esi + 0x4b84], 0
je 0x428305
test dword [esi + 0x4b78], 0x1000
je 0x428305
mov eax, dword [esi + 0x3f34]
mov byte [eax + 0xe4], 1
mov byte [eax + 0xe6], 1
mov byte [eax + 0x104], 1
test bl, 0x12
jne 0x428311
and dword [esi + 0x47c0], 0xfffffffe
pop edi
pop esi
mov al, 1
pop ebx
mov esp, ebp
pop ebp
ret