Function at 0x14000fce0
Capabilities:
Hash data with crc32

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0x40
mov rbx, qword [0x14048cdd8]
mov rbp, r8
mov r14d, edx
mov rdi, rcx
mov rsi, rbx
mov r15, qword [rbx + 0x4010]
test edx, edx
jne 0x14000fd35
mov r8d, 0x86
lea rdx, str.C:UsersNOinsDesktoploader_sapphire_framework_functional_begin_child.cpp
lea rcx, str.id___0
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
mov rbx, qword [0x14048cdd8]
mov eax, dword [r15 + 0x14]
or dword [rsi + 0x4a18], 0x100
and eax, 4
mov r12d, dword [rsp + 0x90]
or eax, 0x1000103
mov ecx, r12d
or r12d, eax
and ecx, 0x40000000
neg ecx
sbb eax, eax
and eax, 2
mov dword [rsi + 0x4a50], eax
mov rdx, qword [rbx + 0x4010]
cmp qword [rdx + 0x1b8], 0
jne 0x14000fd8c
cmp qword [rbx + 0x4e08], 0
mov eax, 0x260
je 0x14000fd91
mov eax, 0x230
movss xmm2, dword [rdx + rax]
lea rcx, [rsp + 0x70]
movss xmm3, dword [rdx + rax + 4]
subss xmm3, dword [rdx + 0x114]
subss xmm2, dword [rdx + 0x110]
mov rdx, qword [rbp]
call fcn.140035260
movss xmm3, dword [rsp + 0x70]
xorps xmm1, xmm1
comiss xmm3, xmm1
jb 0x14000fdd3
movss xmm0, dword [rsp + 0x74]
comiss xmm0, xmm1
jae 0x14000fded
mov r8d, 0x3d
lea rdx, str.C:UsersNOinsDesktoploader_sapphire_framework_functional_base_elements.cpp
lea rcx, str.size.x___0.0f__size.y___0.0f
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
or dword [rbx + 0x4a18], 2
lea rcx, [rsp + 0x70]
movsd xmm0, qword [rsp + 0x70]
xor edx, edx
movsd qword [rbx + 0x4a38], xmm0
mov dword [rbx + 0x4a20], 1
mov r9, qword [r15 + 8]
test rdi, rdi
je 0x14000fe34
mov dword [rsp + 0x28], r14d
lea r8, str._s__s__08X
mov qword [rsp + 0x20], rdi
call fcn.140021a10
jmp 0x14000fe45
lea r8, str._s__08X
mov dword [rsp + 0x20], r14d
call fcn.140021a10
mov rcx, qword [rsp + 0x70]
mov rax, 0xffffffffffffffff
mov qword [rsp + 0x30], rcx
inc rax
cmp byte [rcx + rax], 0
jne 0x14000fe56
mov rcx, qword [0x14048ceb8]
lea rdx, [rsp + 0x30]
mov qword [rsp + 0x38], rax
mov r9d, r12d
movaps xmm0, xmmword [rsp + 0x30]
xor r8d, r8d
movdqa xmmword [rsp + 0x30], xmm0
call fcn.14000c6a0
mov rdi, qword [rsi + 0x4010]
movzx ebp, al
cmp word [rdi + 0xcc], 1
mov dword [rdi + 0x88], r14d
jne 0x14000feaf
movsd xmm0, qword [rdi + 0x28]
movsd qword [r15 + 0x110], xmm0
mov r9d, r14d
lea rdx, [0x1400e03b1]
not r9d
lea r10, [0x1400db380]
mov ebx, r9d
mov r8b, 0x23
nop dword [rax]
cmp r8b, 0x23
jne 0x14000fee3
cmp byte [rdx], r8b
jne 0x14000fee3
cmp byte [rdx + 1], r8b
cmove ebx, r9d
movzx ecx, bl
movzx eax, r8b
movzx r8d, byte [rdx]
xor rcx, rax
shr ebx, 8
inc rdx
xor ebx, dword [r10 + rcx*4]
test r8b, r8b
jne 0x14000fed0
not ebx
cmp dword [rsi + 0x4074], ebx
jne 0x14000ff13
xor edx, edx
xor ecx, ecx
call fcn.140025d50
cmp dword [rsi + 0x4b50], r14d
jne 0x14000ff60
bt r12d, 0x17
jb 0x14000ff60
cmp word [rdi + 0x16c], 0
jne 0x14000ff36
cmp byte [rdi + 0x172], 0
je 0x14000ff60
xor edx, edx
mov rcx, rdi
call fcn.140030160
xor edx, edx
mov rcx, rdi
call fcn.140038190
mov rdx, rdi
mov ecx, ebx
call fcn.140025d50
mov eax, dword [rsi + 0x4b7c]
mov dword [rsi + 0x40a0], eax
mov rbx, qword [rsp + 0x78]
movzx eax, bpl
mov rbp, qword [rsp + 0x80]
add rsp, 0x40
pop r15
pop r14
pop r12
pop rdi
pop rsi
ret
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x60
mov rax, qword [0x14048ce88]
mov rbx, r9
movaps xmmword [rsp + 0x50], xmm6
mov rdi, r8
movaps xmmword [rsp + 0x40], xmm7
mov rsi, rdx
movss xmm6, dword [rax + 0x2c]
movaps xmm0, xmm6
mulss xmm0, dword [r9 + 4]
call qword [sym.imp.api_ms_win_crt_math_l1_1_0.dll_roundf]
mulss xmm6, dword [rbx]
movaps xmm7, xmm0
movaps xmm0, xmm6
call qword [sym.imp.api_ms_win_crt_math_l1_1_0.dll_roundf]
mov rbx, qword [0x14048cdd8]
lea rdx, [rsp + 0x30]
movaps xmm6, xmm0
mov dword [rsp + 0x30], 2
movss xmm2, dword [rbx + 0x38f0]
lea rcx, [rbx + 0x4aa0]
movss xmm1, dword [rbx + 0x38f4]
movss dword [rsp + 0x34], xmm2
movss dword [rsp + 0x38], xmm1
call fcn.1400083a0
movss dword [rbx + 0x38f0], xmm6
movss dword [rbx + 0x38f4], xmm7
mov rax, qword [0x14048ce88]
mov rbx, qword [rsp + 0x90]
movss xmm6, dword [rax + 0x2c]
movaps xmm0, xmm6
mulss xmm0, dword [rbx + 4]
call qword [sym.imp.api_ms_win_crt_math_l1_1_0.dll_roundf]
mulss xmm6, dword [rbx]
movaps xmm7, xmm0
movaps xmm0, xmm6
call qword [sym.imp.api_ms_win_crt_math_l1_1_0.dll_roundf]
mov rbx, qword [0x14048cdd8]
lea rdx, [rsp + 0x30]
movaps xmm6, xmm0
mov dword [rsp + 0x30], 0xe
movss xmm2, dword [rbx + 0x3934]
lea rcx, [rbx + 0x4aa0]
movss xmm1, dword [rbx + 0x3938]
movss dword [rsp + 0x34], xmm2
movss dword [rsp + 0x38], xmm1
call fcn.1400083a0
mov rcx, qword [0x14048cdd8]
mov rdx, rsi
movss dword [rbx + 0x3934], xmm6
movss dword [rbx + 0x3938], xmm7
movzx ebx, byte [rsp + 0x98]
mov rax, qword [rcx + 0x4010]
xor ebx, 1
shl ebx, 4
add ebx, 0x4000200c
mov byte [rax + 0xc0], 1
mov rcx, qword [rcx + 0x4010]
call fcn.140030db0
mov edx, eax
mov dword [rsp + 0x90], ebx
mov r8, rdi
mov rcx, rsi
mov rbx, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x78]
movaps xmm6, xmmword [rsp + 0x50]
movaps xmm7, xmmword [rsp + 0x40]
add rsp, 0x60
pop rdi
jmp 0x14000fce0