Function at 0x422900
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x100
mov eax, dword [0x49f070]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov eax, dword [0x49f68c]
mov ecx, dword [0x49f2b0]
mov edx, dword fs:[0x2c]
mov ecx, dword [edx + ecx*4]
cmp eax, dword [ecx + 4]
jg 0x4229f5
mov edi, dword [ebp + 8]
mov eax, edi
shr eax, 8
mov edx, edi
shr edx, 0x10
mov ecx, 0xff
mov esi, edi
and esi, ecx
and eax, ecx
and edx, ecx
mov ecx, edi
shr ecx, 0x18
mov dword [ebp - 0x100], esi
xor esi, 0x811c9dc5
imul esi, esi, 0x1000193
xor esi, eax
imul esi, esi, 0x1000193
xor esi, edx
imul esi, esi, 0x1000193
xor esi, ecx
imul ebx, esi, 0x1000193
and ebx, dword [0x49f684]
mov ecx, dword [0x49f678]
mov dword [ebp - 0xfc], ecx
mov ecx, dword [ecx + ebx*8 + 4]
mov esi, dword [0x49f670]
cmp ecx, esi
je 0x4229d4
and edi, 0xff000000
shl edx, 0x10
or edx, edi
shl eax, 8
or eax, edx
add eax, dword [ebp - 0x100]
cmp eax, dword [ecx + 8]
je 0x4229d6
add ebx, ebx
mov edx, dword [ebp - 0xfc]
mov edx, dword [edx + ebx*4]
cmp ecx, edx
je 0x4229d4
mov ecx, dword [ecx + 4]
cmp eax, dword [ecx + 8]
jne 0x4229c6
jmp 0x4229d6
xor ecx, ecx
test ecx, ecx
cmovne esi, ecx
add esi, 0xc
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004501b0
mov eax, esi
add esp, 0x100
pop esi
pop edi
pop ebx
pop ebp
ret
mov dword [esp], 0x49f68c
call fcn.0044fba7
cmp dword [0x49f68c], 0xffffffff
jne 0x422937
xor ebx, ebx
lea ecx, [ebp - 0xec]
mov dword [ecx - 4], ebx
mov dword [ecx], ebx
mov dword [ecx + 0x10], ebx
mov edi, 7
mov dword [ecx + 0x14], edi
mov word [ecx], bx
lea esi, [ebp - 0xf8]
mov al, byte [esi]
mov byte [esp + 4], al
mov dword [esp + 8], str.No_error._The_process_was_executed_correctly
mov dword [esp], 0x2c
call fcn.004534f0
sub esp, 0xc
lea eax, [ebp - 0xd4]
mov dword [eax], 1
lea ecx, [ebp - 0xd0]
mov dword [ecx], ebx
mov dword [ecx + 0x10], ebx
mov dword [ecx + 0x14], edi
mov word [ecx], bx
mov al, byte [esi]
mov byte [esp + 4], al
mov eax, 0x24
mov dword [esp], eax
mov dword [esp + 8], str.The_library_has_not_been_initialized
call fcn.004534f0
sub esp, 0xc
lea eax, [ebp - 0xb8]
mov dword [eax], 2
lea ecx, [ebp - 0xb4]
mov dword [ecx], ebx
mov dword [ecx + 0x10], ebx
mov dword [ecx + 0x14], edi
mov word [ecx], bx
mov al, byte [esi]
mov byte [esp + 4], al
mov dword [esp + 8], str.The_OS_does_not_support_WinToast
mov dword [esp], 0x20
call fcn.004534f0
sub esp, 0xc
lea eax, [ebp - 0x9c]
mov dword [eax], 3
lea ecx, [ebp - 0x98]
mov dword [ecx], ebx
mov dword [ecx + 0x10], ebx
mov dword [ecx + 0x14], edi
mov word [ecx], bx
mov al, byte [esi]
mov byte [esp + 4], al
mov dword [esp + 8], str.The_library_was_not_able_to_create_a_Shell_Link_for_the_app
mov dword [esp], 0x3b
call fcn.004534f0
sub esp, 0xc
lea eax, [ebp - 0x80]
mov dword [eax], 4
lea ecx, [ebp - 0x7c]
mov dword [ecx], ebx
mov dword [ecx + 0x10], ebx
mov dword [ecx + 0x14], edi
mov word [ecx], bx
mov al, byte [esi]
mov byte [esp + 4], al
mov dword [esp + 8], str.The_AUMI_is_not_a_valid_one
mov dword [esp], 0x1b
call fcn.004534f0
sub esp, 0xc
lea eax, [ebp - 0x64]
mov dword [eax], 5
lea ecx, [ebp - 0x60]
mov dword [ecx], ebx
mov dword [ecx + 0x10], ebx
mov dword [ecx + 0x14], edi
mov word [ecx], bx
mov al, byte [esi]
mov byte [esp + 4], al
mov dword [esp + 8], str.The_parameters_used_to_configure_the_library_are_not_valid_normally_because_an_invalid_AUMI_or_App_Name
mov dword [esp], 0x67
call fcn.004534f0
sub esp, 0xc
lea eax, [ebp - 0x48]
mov dword [eax], edi
lea ecx, [ebp - 0x44]
mov dword [ecx], ebx
mov dword [ecx + 0x10], ebx
mov dword [ecx + 0x14], edi
mov word [ecx], bx
mov al, byte [esi]
mov byte [esp + 4], al
mov dword [esp + 8], str.The_toast_was_created_correctly_but_WinToast_was_not_able_to_display_the_toast
mov dword [esp], 0x4e
call fcn.004534f0
sub esp, 0xc
lea eax, [ebp - 0x2c]
mov ecx, 8
mov dword [eax], ecx
lea ecx, [ebp - 0x28]
mov dword [ecx], ebx
mov dword [ecx + 0x10], ebx
mov dword [ecx + 0x14], edi
mov word [ecx], bx
mov al, byte [esi]
mov byte [esp + 4], al
mov dword [esp + 8], str.Unknown_error
mov dword [esp], 0xd
call fcn.004534f0
sub esp, 0xc
mov dword [0x49f66c], ebx
mov dword [0x49f670], ebx
mov dword [0x49f674], ebx
mov eax, 0x24
mov dword [esp], eax
call fcn.0044fb05
mov ebx, eax
mov dword [eax], eax
mov dword [eax + 4], eax
mov dword [0x49f670], eax
movaps xmm0, xmmword [0x461b00]
movups xmmword [0x49f678], xmm0
mov eax, 8
mov dword [0x49f688], eax
mov dword [0x49f66c], 0x3f800000
mov dword [esp], 0x40
call fcn.0044fb05
mov dword [0x49f678], eax
lea ecx, [eax + 0x40]
mov dword [0x49f67c], ecx
mov dword [0x49f680], ecx
mov dword [eax], ebx
mov dword [eax + 4], ebx
mov dword [eax + 8], ebx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov dword [eax + 0x14], ebx
mov dword [eax + 0x18], ebx
mov dword [eax + 0x1c], ebx
mov dword [eax + 0x20], ebx
mov dword [eax + 0x24], ebx
mov dword [eax + 0x28], ebx
mov dword [eax + 0x2c], ebx
mov dword [eax + 0x30], ebx
mov dword [eax + 0x34], ebx
mov dword [eax + 0x38], ebx
mov dword [eax + 0x3c], ebx
lea edx, [ebp - 0xf0]
mov ecx, esi
call fcn.00428d00
mov ecx, esi
lea edx, [ebp - 0xd4]
call fcn.00428d00
mov ecx, esi
lea edx, [ebp - 0xb8]
call fcn.00428d00
mov ecx, esi
lea edx, [ebp - 0x9c]
call fcn.00428d00
mov ecx, esi
lea edx, [ebp - 0x80]
call fcn.00428d00
mov ecx, esi
lea edx, [ebp - 0x64]
call fcn.00428d00
mov ecx, esi
lea edx, [ebp - 0x48]
call fcn.00428d00
mov ecx, esi
lea edx, [ebp - 0x2c]
call fcn.00428d00
mov esi, 0xe0
mov eax, dword [ebp + esi - 0xf4]
cmp eax, 8
jb 0x422d08
mov ecx, dword [ebp + esi - 0x108]
lea edi, [eax + eax]
add edi, 2
cmp edi, 0x1000
jb 0x422cfc
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x422d4a
add eax, eax
add eax, 0x25
mov edi, eax
mov ecx, edx
mov dword [esp + 4], edi
mov dword [esp], ecx
call fcn.0044fb35
mov dword [ebp + esi - 0xf8], 0
mov dword [ebp + esi - 0xf4], 7
mov word [ebp + esi - 0x108], 0
add esi, 0xffffffe4
jne 0x422cc5
mov dword [esp], 0x422d50
call fcn.0044fb48
mov dword [esp], 0x49f68c
call fcn.0044fb5d
jmp 0x422937
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ebp
mov ebp, esp
push ebx
push edi
push esi
mov eax, dword [0x49f67c]
mov ecx, dword [0x49f678]
sub eax, ecx
cmp eax, 0x1000
jb 0x422d80
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x422e0d
add eax, 0x23
mov ecx, edx
push eax
push ecx
call fcn.0044fb35
add esp, 8
xor eax, eax
mov dword [0x49f678], eax
mov dword [0x49f67c], eax
mov dword [0x49f680], eax
mov ecx, dword [0x49f670]
mov edx, dword [ecx + 4]
mov dword [edx], eax
mov esi, dword [ecx]
test esi, esi
je 0x422df8
mov edi, dword [esi]
mov eax, dword [esi + 0x20]
cmp eax, 8
jb 0x422de7
mov ecx, dword [esi + 0xc]
lea ebx, [eax + eax]
add ebx, 2
cmp ebx, 0x1000
jb 0x422ddd
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x422e0d
add eax, eax
add eax, 0x25
mov ebx, eax
mov ecx, edx
push ebx
push ecx
call fcn.0044fb35
add esp, 8
push 0x24
push esi
call fcn.0044fb35
add esp, 8
mov esi, edi
test edi, edi
jne 0x422dac
push 0x24
push dword [0x49f670]
call fcn.0044fb35
add esp, 8
pop esi
pop edi
pop ebx
pop ebp
ret
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3