Function at 0x1400156a0
Capabilities:
Hash data with crc32

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x50
mov rsi, qword [0x140080bc8]
lea r8, [0x1400577b1]
mov r10d, 0xffffffff
lea r11, [0x1400580e0]
mov ecx, r10d
mov r9b, 0x23
cmp r9b, 0x23
jne 0x1400156e8
cmp byte [r8], r9b
jne 0x1400156e8
cmp byte [r8 + 1], r9b
cmove ecx, r10d
movzx edx, cl
movzx eax, r9b
movzx r9d, byte [r8]
xor rdx, rax
shr ecx, 8
inc r8
xor ecx, dword [r11 + rdx*4]
test r9b, r9b
jne 0x1400156d5
not ecx
call fcn.14000b880
cmp byte [rsi + 0x104], 0
je 0x140015727
test rax, rax
je 0x140015727
cmp byte [rax + 0xcb], 0
je 0x140015727
mov bl, 1
jmp 0x140015729
xor bl, bl
movss xmm3, dword [0x14005de18]
lea rcx, [rsi + 0x4b48]
movss xmm1, dword [rsi + 0x3a68]
lea rdx, [rsp + 0x30]
movss xmm4, dword [0x14005de7c]
xorps xmm2, xmm2
movaps xmm0, xmm4
mov dword [rsp + 0x30], 4
subss xmm0, xmm1
mulss xmm0, xmm3
addss xmm0, xmm1
movss xmm1, dword [rsi + 0x3a6c]
movss dword [rsp + 0x20], xmm0
xorps xmm0, xmm0
subss xmm0, xmm1
mulss xmm0, xmm3
addss xmm0, xmm1
movss xmm1, dword [rsi + 0x3a70]
subss xmm2, xmm1
movss dword [rsp + 0x24], xmm0
movss xmm0, dword [rsi + 0x3a74]
subss xmm4, xmm0
mulss xmm2, xmm3
addss xmm2, xmm1
mulss xmm4, xmm3
addss xmm4, xmm0
movss dword [rsp + 0x28], xmm2
movups xmm0, xmmword [rsi + 0x3a68]
movups xmmword [rsp + 0x34], xmm0
movss dword [rsp + 0x2c], xmm4
call fcn.14001e520
cmp dword [rsi + 0x4b44], 4
je 0x1400157e4
movups xmm0, xmmword [rsp + 0x20]
movups xmmword [rsi + 0x3a68], xmm0
mov edi, 1
test bl, bl
je 0x140015819
mov rax, qword [0x140080bc8]
or dword [rax + 0x4ad0], edi
movsd xmm0, qword [rsi + 0x53b8]
xor ecx, ecx
mov qword [rax + 0x4ae8], rcx
movsd qword [rax + 0x4ae0], xmm0
mov dword [rax + 0x4ad4], edi
xor edx, edx
lea rcx, str.Tooltip_Error
mov r8d, 0x200016f
call fcn.14000e770
mov rbx, qword [0x140080bc8]
movzx ebp, al
mov ecx, dword [rbx + 0x4b48]
cmp ecx, edi
jge 0x140015860
lea rcx, str.Calling_PopStyleColor___too_many_times_
call fcn.1400151f0
mov edi, dword [rbx + 0x4b48]
mov ecx, edi
test edi, edi
jle 0x140015895
nop dword [rax]
movsxd rax, ecx
dec edi
mov rcx, qword [rbx + 0x4b50]
lea rdx, [rax + rax*4]
movsxd rax, dword [rcx + rdx*4 - 0x14]
movups xmm0, xmmword [rcx + rdx*4 - 0x10]
add rax, rax
movups xmmword [rbx + rax*8 + 0x3a28], xmm0
dec dword [rbx + 0x4b48]
mov ecx, dword [rbx + 0x4b48]
test edi, edi
jg 0x140015860
test bpl, bpl
je 0x140015950
mov rax, qword [rsi + 0x40b0]
cmp word [rax + 0xd8], 1
jne 0x140015955
mov rcx, qword [0x140080bc8]
mov rax, qword [rcx + 0x40b0]
mov byte [rax + 0xcc], 1
mov rax, qword [rcx + 0x40b0]
cmp byte [rax + 0xcf], 0
jne 0x14001590e
lea rdx, str.MESSAGE_FROM_DEAR_IMGUI
mov r8, rdx
cmp rdx, 0xffffffffffffffff
jae 0x140015906
movzx ecx, byte [r8]
test cl, cl
je 0x140015906
lea rax, [r8 + 1]
cmp cl, 0x23
jne 0x1400158fd
cmp byte [rax], cl
je 0x140015906
mov r8, rax
cmp rax, 0xffffffffffffffff
jb 0x1400158e8
xorps xmm3, xmm3
call fcn.14003c6b0
mov rcx, qword [rsi + 0x40b0]
call fcn.140011210
mov rcx, qword [rsi + 0x40b0]
call fcn.140011170
mov rdx, qword [0x140080bc8]
mov rax, qword [rdx + 0x40b0]
movss xmm0, dword [rax + 0x28]
movss xmm1, dword [rax + 0x2c]
movss dword [rsi + 0x53b8], xmm0
movss dword [rsi + 0x53bc], xmm1
jmp 0x140015955
call fcn.140010df0
mov rbx, qword [rsp + 0x60]
movzx eax, bpl
mov rbp, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x70]
add rsp, 0x50
pop rdi
ret