Function at 0x1000d460
Capabilities:
Hash data using fnv

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1001f3a3
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0xa88
mov eax, dword [0x1002900c]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0xa88], edi
push str.CSmartlightingDeviceManager::UpdateDevices
push str._s__START
push 0x15e
push str.c:workspacechromasdkRC3.36CoreSmartlightingDeviceManagerSmartlightingDeviceManager.cpp
push 3
call fcn.10007430
push eax
call fcn.100077d0
add esp, 0x18
mov dword [ebp - 0x18], 0
lea ecx, [ebp - 0x18]
push 0x10021541
call fcn.100123f0
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x1c]
push 0x10021541
mov dword [ebp - 0x1c], 0
call fcn.100123f0
push str.SoftwareRazer_Chroma_SDKDevicesSmartLightingPhilipsHue
lea eax, [ebp - 0x1c]
mov byte [ebp - 4], 1
push 0x10022808
push eax
call fcn.10004fa0
add esp, 0xc
lea eax, [ebp - 0x18]
push eax
push ecx
mov esi, esp
mov dword [ebp - 0xa90], esp
mov dword [ebp - 0xa8c], esi
call fcn.10006ed0
mov ecx, eax
test ecx, ecx
je 0x1000d896
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [esi], eax
push str.Path
mov ecx, esi
mov byte [ebp - 4], 2
call fcn.100041f0
test al, al
jne 0x1000d566
push 4
push str.Path
mov ecx, esi
call fcn.10004d40
push ecx
mov byte [ebp - 4], 3
mov esi, esp
mov dword [ebp - 0xa8c], esi
mov ecx, dword [ebp - 0x1c]
lea ecx, [ecx - 0x10]
call fcn.10004c40
add eax, 0x10
mov dword [esi], eax
mov byte [ebp - 4], 1
call fcn.10008950
mov esi, eax
test esi, esi
jne 0x1000d71f
mov eax, dword [ebp - 0x18]
cmp dword [eax - 0xc], esi
jne 0x1000d5a8
mov esi, 0x10d2
jmp 0x1000d71f
cmp dword [eax - 4], 1
jle 0x1000d5bc
push dword [eax - 0xc]
lea ecx, [ebp - 0x18]
call fcn.10004310
mov eax, dword [ebp - 0x18]
push eax
push 0x301
mov ecx, edi
call fcn.1000b9e0
mov esi, eax
mov dword [ebp - 0xa8c], esi
cmp esi, 0xd
jne 0x1000d5e3
push ecx
mov ecx, edi
call fcn.1000e580
jmp 0x1000d71f
test esi, esi
jne 0x1000d71f
mov eax, dword [edi + 0x2c]
test eax, eax
jne 0x1000d5ff
push ecx
mov ecx, edi
call fcn.1000e580
jmp 0x1000d71f
cmp dword [edi + 0xc], 0
jbe 0x1000d7a6
push ecx
mov ecx, edi
call fcn.1000d8b0
push ecx
mov ecx, edi
call fcn.1000dee0
cmp dword [edi + 0x2c], 0
jbe 0x1000d71f
xorps xmm0, xmm0
movups xmmword [ebp - 0x3c], xmm0
push 0xa44
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 0
call fcn.1001d4e0
add esp, 4
mov dword [eax], eax
mov dword [eax + 4], eax
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x28], 0
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x30]
push eax
push 0x10
mov dword [ebp - 0x24], 7
mov dword [ebp - 0x20], 8
mov dword [ebp - 0x3c], 0x3f800000
call fcn.10013c70
lea eax, [edi + 0x24]
mov byte [ebp - 4], 6
push eax
lea ecx, [ebp - 0x3c]
mov dword [ebp - 0xa90], eax
call fcn.10012950
mov ecx, dword [ebp - 0x38]
mov dword [ebp - 0xa88], ecx
mov eax, dword [ecx]
mov dword [ebp - 0xa84], eax
cmp eax, ecx
je 0x1000d705
mov edx, ecx
nop
lea esi, [eax + 8]
mov ecx, 0x28f
lea edi, [ebp - 0xa80]
rep movsd dword es:[edi], dword [esi]
cmp dword [ebp - 0x50], 0x301
jne 0x1000d6f7
mov ecx, dword [ebp - 0xa90]
lea eax, [ebp - 0xa80]
push eax
call fcn.10010730
mov eax, dword [ebp - 0xa84]
mov edx, dword [ebp - 0xa88]
mov ecx, dword [eax]
mov eax, ecx
mov dword [ebp - 0xa84], ecx
cmp ecx, edx
jne 0x1000d6c0
lea ecx, [ebp - 0x3c]
call fcn.100106a0
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 1
call fcn.1000b1f0
mov esi, dword [ebp - 0xa8c]
push esi
push str.CSmartlightingDeviceManager::UpdateDevices
push str._s__END__Result___d
push 0x1b4
push str.c:workspacechromasdkRC3.36CoreSmartlightingDeviceManagerSmartlightingDeviceManager.cpp
push 3
call fcn.10007430
push eax
call fcn.100077d0
mov byte [ebp - 4], 0
or edi, 0xffffffff
mov edx, dword [ebp - 0x1c]
add esp, 0x1c
add edx, 0xfffffff0
mov eax, edi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x1000d765
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x18]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], edi
dec edi
test edi, edi
jg 0x1000d784
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.1001d4a1
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret 4
xor edx, edx
mov dword [ebp - 0xa84], edx
test eax, eax
jle 0x1000d619
lea esi, [edi + 0x24]
nop dword [eax]
movzx eax, dl
xor eax, 0x811c9dc5
mov dword [ebp - 0xa90], edx
imul ecx, eax, 0x1000193
mov eax, edx
shr eax, 8
movzx eax, al
xor ecx, eax
mov eax, edx
imul ecx, ecx, 0x1000193
shr eax, 0x10
movzx eax, al
xor ecx, eax
mov eax, edx
imul ecx, ecx, 0x1000193
shr eax, 0x18
xor ecx, eax
imul eax, ecx, 0x1000193
mov ecx, esi
push eax
lea eax, [ebp - 0xa90]
push eax
lea eax, [ebp - 0xa98]
push eax
call fcn.10017020
mov eax, dword [ebp - 0xa94]
test eax, eax
je 0x1000d88b
mov ecx, 0x28e
lea esi, [eax + 0xc]
lea edi, [ebp - 0xa80]
rep movsd dword es:[edi], dword [esi]
cmp dword [ebp - 0x54], 0x301
jne 0x1000d861
sub esp, 0xa38
lea esi, [eax + 0xc]
mov edi, esp
mov ecx, 0x28e
rep movsd dword es:[edi], dword [esi]
mov edi, dword [ebp - 0xa88]
mov ecx, edi
push dword [ebp - 0xa84]
call fcn.1000e760
jmp 0x1000d867
mov edi, dword [ebp - 0xa88]
mov edx, dword [ebp - 0xa84]
lea esi, [edi + 0x24]
inc edx
mov dword [ebp - 0xa84], edx
cmp edx, dword [edi + 0x2c]
jl 0x1000d7c0
mov esi, dword [ebp - 0xa8c]
jmp 0x1000d619
push str.invalid_unordered_map_K__T__key
call dword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const__]
push 0x80004005
call fcn.10006fe0
int3