Function at 0x1800af650
Capabilities:
Hash data with crc32

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rdi
push rbp
mov rbp, rsp
sub rsp, 0x80
mov rax, qword [0x180161040]
xor rax, rsp
mov qword [rbp - 0x20], rax
mov rax, qword gs:[0x58]
mov rbx, rcx
mov edi, dword [0x180169450]
mov qword [rsp + 0x98], rsi
mov esi, 0x10
mov rdx, qword [rax + rdi*8]
mov eax, dword [rsi + rdx]
cmp dword [0x18016bbc8], eax
jle 0x1800af6d1
lea rcx, [0x18016bbc8]
call fcn.1800df7a8
cmp dword [0x18016bbc8], 0xffffffff
jne 0x1800af6d1
mov rax, qword [rbx + 0x18]
lea rcx, [0x18016bbc8]
add rax, 0x58
mov qword [0x18016bbd8], rax
call fcn.1800df73c
mov rax, qword gs:[0x58]
mov rcx, qword [rax + rdi*8]
mov eax, dword [rsi + rcx]
cmp dword [0x18016bbcc], eax
mov rsi, qword [rsp + 0x98]
jle 0x1800af721
lea rcx, [0x18016bbcc]
call fcn.1800df7a8
cmp dword [0x18016bbcc], 0xffffffff
jne 0x1800af721
mov rax, qword [rbx + 0x18]
lea rcx, [0x18016bbcc]
add rax, 0x78
mov qword [0x18016bbb0], rax
call fcn.1800df73c
mov rcx, qword [0x180169780]
mov rax, qword [rcx + 0x4000]
mov byte [rax + 0xc0], 1
mov r10, qword [rcx + 0x4000]
cmp byte [r10 + 0xc3], 0
jne 0x1800afb0b
movsxd rcx, dword [r10 + 0x100]
lea rdx, [0x18012b7b1]
mov rax, qword [r10 + 0x108]
lea rdi, [0x180111c50]
mov r8b, 0x43
mov r9d, dword [rax + rcx*4 - 4]
not r9d
mov ebx, r9d
cmp r8b, 0x23
jne 0x1800af788
cmp byte [rdx], r8b
jne 0x1800af788
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 [rdi + rcx*4]
test r8b, r8b
jne 0x1800af775
mov rax, qword [r10]
not ebx
cmp dword [rax + 0x404c], ebx
jne 0x1800af7c4
lea r8, str.Cloud_Burst_Settings
mov edx, 0xb
mov ecx, ebx
call fcn.18006ac70
xor r9d, r9d
lea r8, str.Cloud_Burst_Settings
mov edx, 0x1a
mov ecx, ebx
call fcn.180098cf0
test al, al
je 0x1800afb0b
call fcn.18003a900
mov rcx, qword [0x180169780]
mov rax, qword [rcx + 0x4000]
mov byte [rax + 0xc0], 1
mov r10, qword [rcx + 0x4000]
cmp byte [r10 + 0xc3], 0
jne 0x1800afaee
movsxd rcx, dword [r10 + 0x100]
lea r8, [0x18012b791]
mov rax, qword [r10 + 0x108]
mov dl, 0x4d
mov r9d, dword [rax + rcx*4 - 4]
not r9d
mov ebx, r9d
cmp dl, 0x23
jne 0x1800af845
cmp byte [r8], dl
jne 0x1800af845
cmp byte [r8 + 1], dl
cmove ebx, r9d
movzx ecx, bl
movzx eax, dl
movzx edx, byte [r8]
xor rcx, rax
shr ebx, 8
inc r8
xor ebx, dword [rdi + rcx*4]
test dl, dl
jne 0x1800af833
mov rax, qword [r10]
not ebx
cmp dword [rax + 0x404c], ebx
jne 0x1800af87f
lea r8, str.Main_Settings___ClBurst
mov edx, 0xb
mov ecx, ebx
call fcn.18006ac70
xor r9d, r9d
lea r8, str.Main_Settings___ClBurst
xor edx, edx
mov ecx, ebx
call fcn.180098cf0
test al, al
je 0x1800afaee
mov r8, qword [0x18016bbd8]
lea rax, [rbp - 0x40]
movaps xmmword [rsp + 0x70], xmm6
lea rdi, str._.3f
movss xmm6, dword [0x18013e614]
lea rcx, str.Intensity_Min___CLBurstSettings
xor ebx, ebx
mov dword [rbp - 0x40], 0x453b8000
mov dword [rsp + 0x38], ebx
add r8, 8
mov qword [rsp + 0x30], rdi
movaps xmm3, xmm6
mov qword [rsp + 0x28], rax
mov edx, 8
lea rax, [rbp - 0x38]
mov dword [rbp - 0x38], 0
mov qword [rsp + 0x20], rax
call fcn.18008d630
mov r8, qword [0x18016bbd8]
lea rax, [rbp - 0x38]
mov dword [rsp + 0x38], ebx
lea rcx, str.Intensity_Max___CLBurstSettings
mov qword [rsp + 0x30], rdi
add r8, 0xc
mov qword [rsp + 0x28], rax
movaps xmm3, xmm6
lea rax, [rbp - 0x40]
mov dword [rbp - 0x38], 0x453b8000
mov edx, 8
mov qword [rsp + 0x20], rax
mov dword [rbp - 0x40], ebx
call fcn.18008d630
mov r8, qword [0x18016bbd8]
lea rax, [rbp - 0x38]
mov dword [rsp + 0x38], ebx
lea rcx, str.Light_Source_Exponent_Fall_Off___CLBurstSettings
mov qword [rsp + 0x30], rdi
add r8, 0x10
mov qword [rsp + 0x28], rax
movaps xmm3, xmm6
lea rax, [rbp - 0x40]
mov dword [rbp - 0x38], 0x43000000
mov edx, 8
mov qword [rsp + 0x20], rax
mov dword [rbp - 0x40], ebx
call fcn.18008d630
mov r8, qword [0x18016bbd8]
lea rax, [rbp - 0x38]
mov dword [rsp + 0x38], ebx
lea rcx, str.Light_Source_Delta_Position___CLBurstSettings
mov qword [rsp + 0x30], rdi
add r8, 0x14
mov qword [rsp + 0x28], rax
movaps xmm3, xmm6
lea rax, [rbp - 0x40]
mov dword [rbp - 0x38], 0x459c4000
mov edx, 8
mov qword [rsp + 0x20], rax
mov dword [rbp - 0x40], 0xc59c4000
call fcn.18008d630
mov r8, qword [0x18016bbd8]
lea rax, [rbp - 0x38]
mov dword [rsp + 0x38], ebx
lea rcx, str.Light_Source_Distance___CLBurstSettings
mov qword [rsp + 0x30], rdi
add r8, 0x18
mov qword [rsp + 0x28], rax
movaps xmm3, xmm6
lea rax, [rbp - 0x40]
mov dword [rbp - 0x38], 0x459c4000
mov edx, 8
mov qword [rsp + 0x20], rax
mov dword [rbp - 0x40], ebx
call fcn.18008d630
mov rax, qword [0x18016bbd8]
mov ecx, dword [rax + 0x1c]
mov eax, ecx
shr eax, 0x10
movzx eax, al
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss xmm6, dword [0x18013e730]
lea rdx, [rbp - 0x30]
divss xmm0, xmm6
mov eax, ecx
xor r8d, r8d
shr eax, 8
movzx eax, al
movss dword [rbp - 0x30], xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movzx eax, cl
shr ecx, 0x18
movd xmm1, eax
divss xmm0, xmm6
cvtdq2ps xmm1, xmm1
movss dword [rbp - 0x2c], xmm0
movd xmm0, ecx
lea rcx, str.Light_Color
cvtdq2ps xmm0, xmm0
divss xmm1, xmm6
divss xmm0, xmm6
movss dword [rbp - 0x28], xmm1
movss dword [rbp - 0x24], xmm0
call fcn.1800943e0
test al, al
je 0x1800afae4
movss xmm0, dword [rbp - 0x24]
mulss xmm0, xmm6
cvttss2si eax, xmm0
movss xmm0, dword [rbp - 0x30]
mulss xmm0, xmm6
movzx edx, al
shl edx, 8
cvttss2si eax, xmm0
movss xmm0, dword [rbp - 0x2c]
movzx ecx, al
or edx, ecx
mulss xmm0, xmm6
shl edx, 8
cvttss2si eax, xmm0
movss xmm0, dword [rbp - 0x28]
movzx ecx, al
or edx, ecx
mulss xmm0, xmm6
shl edx, 8
cvttss2si eax, xmm0
movzx ecx, al
mov rax, qword [0x18016bbd8]
or edx, ecx
mov dword [rax + 0x1c], edx
call fcn.180099ab0
movaps xmm6, xmmword [rsp + 0x70]
mov rdx, qword [0x18016bbb0]
lea r8, str.Cloud_Burst_Common_Settings
call fcn.1800af0b0
mov ecx, 2
call fcn.180052540
mov rcx, qword [rbp - 0x20]
xor rcx, rsp
call fcn.1800df290
lea r11, [rsp + 0x80]
mov rbx, qword [r11 + 0x20]
mov rdi, qword [r11 + 0x28]
mov rsp, r11
pop rbp
ret