Function at 0x18003adc0
Capabilities:
Hash data with crc32

Disassembly:
push rbx
push rbp
push rsi
push r14
push r15
sub rsp, 0x70
mov rax, qword [0x180169738]
xor r15d, r15d
mov rdx, qword [rcx + 0x158]
mov r14, rcx
mov r8, qword [rcx + 0x160]
sub r8, rdx
movaps xmmword [rsp + 0x40], xmm7
mov r9d, dword [rax]
mov eax, r15d
sar r8, 4
mov qword [rsp + 0x60], r13
movaps xmmword [rsp + 0x50], xmm6
test r8, r8
je 0x18003ae37
cmp r9d, dword [rdx]
jle 0x18003ae2d
cmp r9d, 0x16
jg 0x18003ae21
inc rax
add rdx, 0x10
cmp rax, r8
jb 0x18003ae08
jmp 0x18003ae37
dec r8b
mov byte [rcx + 0x170], r8b
jmp 0x18003ae37
je 0x18003ae31
dec al
mov byte [rcx + 0x170], al
mov rcx, qword [rcx + 0x18]
call qword [0x18016b430]
mov esi, eax
cmp eax, 0xffffffff
jne 0x18003ae58
mov rcx, qword [r14 + 0x28]
sub rcx, qword [r14 + 0x20]
sar rcx, 3
dec ecx
jmp 0x18003ae5a
mov ecx, esi
mov dword [rsp + 0xa0], ecx
call fcn.18003a900
mov rax, qword [0x180169780]
mov ebp, 0x260
mov r10, qword [rax + 0x4000]
cmp qword [r10 + 0x1b8], r15
jne 0x18003ae8d
cmp qword [rax + 0x4e20], r15
mov eax, ebp
je 0x18003ae92
mov eax, 0x230
movss xmm6, dword [rax + r10]
lea rdx, [0x18011ca79]
subss xmm6, dword [r10 + 0x110]
mov dword [rsp + 0xac], r15d
lea r13, [0x180111c50]
xorps xmm7, xmm7
mov r8b, 0x23
movss dword [rsp + 0xa8], xmm6
movsxd rcx, dword [r10 + 0x100]
mov rax, qword [r10 + 0x108]
mov r9d, dword [rax + rcx*4 - 4]
not r9d
mov ebx, r9d
nop
cmp r8b, 0x23
jne 0x18003aef3
cmp byte [rdx], r8b
jne 0x18003aef3
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 [r13 + rcx*4]
test r8b, r8b
jne 0x18003aee0
mov rax, qword [r10]
not ebx
cmp dword [rax + 0x404c], ebx
jne 0x18003af31
lea r8, str.VScltable
mov edx, 0xb
mov ecx, ebx
call fcn.18006ac70
lea rax, [rsp + 0xa8]
movss dword [rsp + 0x28], xmm7
mov qword [rsp + 0xb0], rdi
lea rcx, str.VScltable
mov r9d, 0x10
mov qword [rsp + 0x20], rax
mov r8d, 2
mov qword [rsp + 0x68], r12
mov edx, ebx
call fcn.18007fa00
test al, al
je 0x18003b301
mov rdx, qword [0x180169780]
mov r12d, 0xffffffff
subss xmm6, dword [0x18013e718]
mov rdi, qword [rdx + 0x4e20]
movsx rcx, word [rdi + 0x206]
cmp ecx, dword [rdi + 0x6c]
jge 0x18003b07d
imul rbx, rcx, 0x70
inc cx
mov r8d, 0x10
add rbx, qword [rdi + 0x18]
mov word [rdi + 0x206], cx
mov rdx, rbx
mov rcx, rdi
call fcn.180080df0
mov eax, dword [rbx]
movss dword [rbx + 0x1c], xmm6
mov dword [rbx + 0x30], r15d
cmp byte [rdi + 0x238], r15b
je 0x18003b047
comiss xmm7, dword [rbx + 0x10]
jbe 0x18003b015
comiss xmm7, dword [rbx + 0x18]
jbe 0x18003b015
test al, 0x10
je 0x18003aff1
comiss xmm6, xmm7
jbe 0x18003aff1
movss dword [rbx + 0x10], xmm6
test al, 8
je 0x18003b00c
comiss xmm6, xmm7
jbe 0x18003afff
movaps xmm0, xmm6
jmp 0x18003b007
movss xmm0, dword [0x18013e790]
movss dword [rbx + 0x18], xmm0
comiss xmm6, xmm7
jbe 0x18003b015
mov byte [rbx + 0x6b], r15b
test al, 2
je 0x18003b024
test byte [rdi + 0x60], 4
jne 0x18003b024
mov word [rbx + 0x63], r15w
test al, 4
je 0x18003b047
test byte [rdi + 0x60], 8
jne 0x18003b047
bt eax, 0xf
mov word [rbx + 0x5a], r15w
movzx eax, byte [rbx + 0x6d]
setb cl
and al, 0xfc
inc cl
or cl, al
mov byte [rbx + 0x6d], cl
mov word [rbx + 0x50], r12w
lea rcx, [rdi + 0x190]
mov eax, dword [rcx]
lea r8, [0x18011ca71]
test eax, eax
lea edx, [rax - 1]
cmove dx, r15w
mov word [rbx + 0x50], dx
lea rdx, str._Clfirst
call fcn.180052060
mov rdx, qword [0x180169780]
mov rdi, qword [rdx + 0x4e20]
movsx rcx, word [rdi + 0x206]
cmp ecx, dword [rdi + 0x6c]
jge 0x18003b143
imul rbx, rcx, 0x70
inc cx
mov r8d, 8
add rbx, qword [rdi + 0x18]
mov word [rdi + 0x206], cx
mov rdx, rbx
mov rcx, rdi
call fcn.180080df0
mov eax, dword [rbx]
mov dword [rbx + 0x30], r15d
mov dword [rbx + 0x1c], r15d
cmp byte [rdi + 0x238], r15b
je 0x18003b114
comiss xmm7, dword [rbx + 0x10]
jbe 0x18003b0e2
comiss xmm7, dword [rbx + 0x18]
jbe 0x18003b0e2
test al, 8
je 0x18003b0e2
mov dword [rbx + 0x18], 0xbf800000
test al, 2
je 0x18003b0f1
test byte [rdi + 0x60], 4
jne 0x18003b0f1
mov word [rbx + 0x63], r15w
test al, 4
je 0x18003b114
test byte [rdi + 0x60], 8
jne 0x18003b114
bt eax, 0xf
mov word [rbx + 0x5a], r15w
movzx eax, byte [rbx + 0x6d]
setb cl
and al, 0xfc
inc cl
or cl, al
mov byte [rbx + 0x6d], cl
mov word [rbx + 0x50], r12w
lea rcx, [rdi + 0x190]
mov eax, dword [rcx]
lea r8, [0x18011caa2]
test eax, eax
lea edx, [rax - 1]
cmove dx, r15w
mov word [rbx + 0x50], dx
lea rdx, str._Clsecond
call fcn.180052060
call fcn.1800838f0
mov rax, qword [0x180169780]
mov rdx, qword [rax + 0x4000]
cmp qword [rdx + 0x1b8], r15
jne 0x18003b168
cmp qword [rax + 0x4e20], r15
je 0x18003b16d
mov ebp, 0x230
movss xmm1, dword [rdx + rbp]
lea rcx, str.Active_CloudHat
movss xmm0, dword [rdx + 0x110]
lea rdx, [rsp + 0xa0]
or dword [rax + 0x4990], 1
subss xmm1, xmm0
subss xmm1, dword [0x18013e71c]
movss dword [rax + 0x49a0], xmm1
mov r9, qword [r14 + 0x20]
mov rax, qword [r14 + 0x28]
sub rax, r9
sar rax, 3
mov dword [rsp + 0x20], eax
call fcn.18008cc20
test al, al
je 0x18003b1e1
movsxd rax, dword [rsp + 0xa0]
cmp eax, esi
je 0x18003b1e1
mov rdx, qword [r14 + 0x20]
movss xmm2, dword [0x18013e614]
mov rdx, qword [rdx + rax*8]
call fcn.180046820
call fcn.1800838f0
xor r8d, r8d
mov qword [rsp + 0xa0], r15
lea rdx, [rsp + 0xa0]
lea rcx, str.AppSettings
call fcn.180089300
test al, al
je 0x18003b215
lea rcx, str.settingsToggle
call fcn.180064020
mov rcx, qword [0x180169780]
mov eax, dword [rcx + 0x4ae8]
cmp dword [rcx + 0x4ad8], eax
jg 0x18003b236
mov dword [rcx + 0x4a00], r15d
jmp 0x18003b2fc
mov r11, qword [rcx + 0x4000]
lea r9, [0x18011caa9]
mov dl, 0x73
movsxd rcx, dword [r11 + 0x100]
mov rax, qword [r11 + 0x108]
mov r10d, dword [rax + rcx*4 - 4]
not r10d
mov ebx, r10d
nop
cmp dl, 0x23
jne 0x18003b272
cmp byte [r9], dl
jne 0x18003b272
cmp byte [r9 + 1], dl
cmove ebx, r10d
movzx ecx, bl
movzx eax, dl
movzx edx, byte [r9]
xor rcx, rax
shr ebx, 8
inc r9
xor ebx, dword [r13 + rcx*4]
test dl, dl
jne 0x18003b260
mov rax, qword [r11]
not ebx
cmp dword [rax + 0x404c], ebx
jne 0x18003b2ae
lea r8, str.settingsToggle
mov edx, 0xb
mov ecx, ebx
call fcn.18006ac70
mov ecx, ebx
call fcn.180064620
test al, al
je 0x18003b2fc
lea rbx, [r14 + 0x171]
test rbx, rbx
je 0x18003b2cb
movzx r9d, byte [rbx]
jmp 0x18003b2ce
xor r9d, r9d
lea r8, [0x180119dc1]
mov byte [rsp + 0x20], 1
lea rcx, str.Show_only_the_current_sample
call fcn.18009a470
test al, al
je 0x18003b2f7
test rbx, rbx
je 0x18003b2f7
cmp byte [rbx], r15b
sete al
mov byte [rbx], al
call fcn.1800646d0
call fcn.180082590
mov ecx, 2
call fcn.180052540
mov rax, qword [0x180169780]
movaps xmm6, xmmword [rsp + 0x50]
mov r13, qword [rsp + 0x60]
mov rdx, qword [rax + 0x4000]
cmp byte [rdx + 0xc3], r15b
jne 0x18003b35b
mov r8d, dword [rdx + 0x1c4]
mov eax, r8d
neg eax
sbb ecx, ecx
add ecx, 2
cmp qword [rdx + 0x1b8], r15
je 0x18003b34e
neg r8d
sbb ecx, ecx
add ecx, 6
movss xmm1, dword [0x18013e68c]
call fcn.18008b430
mov rdx, qword [r14 + 0x38]
movabs rbp, 0xaaaaaaaaaaaaaaab
mov rax, qword [r14 + 0x40]
sub rax, rdx
sar rax, 4
imul rax, rbp
test rax, rax
je 0x18003b4fb
mov rcx, r15
lea r12, [0x18011a778]
lea rdi, str.CloudList
lea rsi, str.CloudSettings
nop dword [rax]
lea rax, [rcx + rcx*2]
mov qword [rsp + 0x30], r12
shl rax, 4
lea rcx, [rsp + 0x30]
add rax, 8
mov qword [rsp + 0x38], 2
add rdx, rax
call fcn.180023de0
mov rdx, qword [0x180169780]
mov rbx, rax
mov rcx, qword [rdx + 0x4000]
mov byte [rcx + 0xc0], 1
mov rcx, qword [rdx + 0x4000]
cmp byte [rcx + 0xc3], 0
jne 0x18003b4d9
mov rdx, rax
call fcn.180055a90
mov ecx, eax
xor r9d, r9d
mov r8, rbx
mov edx, 0x1a
call fcn.180098cf0
test al, al
je 0x18003b4d9
mov rcx, qword [0x180169780]
mov rax, qword [rcx + 0x4000]
mov byte [rax + 0xc0], 1
mov rax, qword [rcx + 0x4000]
cmp byte [rax + 0xc3], 0
jne 0x18003b46c
mov r8, rdi
cmp rdi, 0xffffffffffffffff
jae 0x18003b461
movzx ecx, byte [r8]
test cl, cl
je 0x18003b461
lea rax, [r8 + 1]
cmp cl, 0x23
jne 0x18003b458
cmp byte [rax], cl
je 0x18003b461
mov r8, rax
cmp rax, 0xffffffffffffffff
jb 0x18003b443
movaps xmm3, xmm7
mov rdx, rdi
call fcn.18008b8a0
mov edx, r15d
mov rcx, r14
call fcn.18003b520
mov rcx, qword [0x180169780]
mov rax, qword [rcx + 0x4000]
mov byte [rax + 0xc0], 1
mov rax, qword [rcx + 0x4000]
cmp byte [rax + 0xc3], 0
jne 0x18003b4ce
mov r8, rsi
cmp rsi, 0xffffffffffffffff
jae 0x18003b4c3
movzx ecx, byte [r8]
test cl, cl
je 0x18003b4c3
lea rax, [r8 + 1]
cmp cl, 0x23
jne 0x18003b4ba
cmp byte [rax], cl
je 0x18003b4c3
mov r8, rax
cmp rax, 0xffffffffffffffff
jb 0x18003b4a5
movaps xmm3, xmm7
mov rdx, rsi
call fcn.18008b8a0
mov edx, r15d
mov rcx, r14
call fcn.18003c100
mov rdx, qword [r14 + 0x38]
inc r15d
mov rax, qword [r14 + 0x40]
sub rax, rdx
movsxd rcx, r15d
sar rax, 4
imul rax, rbp
cmp rcx, rax
jb 0x18003b3a0
mov r12, qword [rsp + 0x68]
mov rdi, qword [rsp + 0xb0]
movaps xmm7, xmmword [rsp + 0x40]
add rsp, 0x70
pop r15
pop r14
pop rsi
pop rbp
pop rbx
ret
jmp 0x18003adc0