Function at 0x1000f6f0
Capabilities:
Hash data using fnv

Disassembly:
sub esp, 0x24
push ebx
mov ebx, ecx
mov ecx, dword [0x101c176c]
push ebp
push esi
push edi
mov eax, dword [ecx]
mov eax, dword [eax + 0x6c]
call eax
test al, al
je 0x1000f984
mov ecx, dword [0x101c176c]
mov eax, dword [ecx]
mov eax, dword [eax + 0x68]
call eax
test al, al
je 0x1000f984
mov edi, dword [0x101f764c]
test edi, edi
je 0x1000f984
mov eax, dword [0x101f7648]
test eax, eax
jne 0x1000f768
mov edx, 0xe80c2f78
mov ecx, 0x1014c9ed
call fcn.10003ad0
mov edx, 0xc10bf213
mov ecx, 0x1014c915
mov esi, eax
call fcn.10003ad0
mov edx, esi
mov ecx, eax
call fcn.100abe50
mov dword [0x101f7648], eax
cmp dword [eax + edi], 0
jle 0x1000f984
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 4]
mov ecx, eax
mov al, byte [ecx]
test al, al
jne 0x1000f788
mov esi, 0x811c9dc5
jmp 0x1000f79e
movsx eax, al
inc ecx
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
call fcn.10003ad0
mov esi, eax
mov ecx, dword [ebx]
push 0
push str.attacker
mov edx, dword [ecx + 0x18]
mov ecx, ebx
call edx
mov ecx, dword [0x101c176c]
push eax
mov edx, dword [ecx]
mov edx, dword [edx + 0x24]
call edx
mov ecx, dword [0x101f75d0]
push eax
mov edx, dword [ecx]
mov edx, dword [edx + 0xc]
call edx
mov ecx, dword [ebx]
mov ebp, eax
push 0
push str.userid
mov edx, dword [ecx + 0x18]
mov ecx, ebx
call edx
mov ecx, dword [0x101c176c]
push eax
mov edx, dword [ecx]
mov edx, dword [edx + 0x24]
call edx
mov ecx, dword [0x101f75d0]
push eax
mov edx, dword [ecx]
mov edx, dword [edx + 0xc]
call edx
test ebp, ebp
je 0x1000f984
test eax, eax
je 0x1000f984
test esi, esi
je 0x1000f984
cmp esi, 0xa6abe875
jne 0x1000f984
mov edi, dword [0x101f764c]
cmp ebp, edi
jne 0x1000f984
cmp eax, edi
je 0x1000f984
cmp byte [0x101f773c], 0
je 0x1000f921
mov esi, str.Hello_World_
mov dword [esp + 0x28], 4
xorps xmm0, xmm0
mov dword [esp + 0x2c], 0xf
movups xmmword [esp + 0x18], xmm0
mov dword [esp + 0x18], 0x20796173
mov byte [esp + 0x1c], 0
lea ecx, [esi + 1]
nop dword [eax]
mov al, byte [esi]
inc esi
test al, al
jne 0x1000f870
sub esi, ecx
push esi
push str.Hello_World_
cmp esi, 0xb
ja 0x1000f8a3
lea eax, [esi + 4]
mov dword [esp + 0x30], eax
lea eax, [esp + 0x24]
push eax
call sub.VCRUNTIME140.dll_memmove
add esp, 0xc
mov byte [esp + esi + 0x1c], 0
lea edx, [esp + 0x18]
jmp 0x1000f8b3
push dword [esp + 0x1c]
lea ecx, [esp + 0x24]
push esi
call fcn.10003860
mov edx, eax
cmp dword [edx + 0x14], 0xf
jbe 0x1000f8bb
mov edx, dword [edx]
mov ecx, dword [0x101c176c]
push 0
push edx
mov eax, dword [ecx]
mov eax, dword [eax + 0x1c8]
call eax
mov ecx, dword [esp + 0x2c]
cmp ecx, 0xf
jbe 0x1000f906
mov edx, dword [esp + 0x18]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1000f8fc
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1000f8fc
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.1010fd52
add esp, 8
mov edi, dword [0x101f764c]
mov dword [esp + 0x28], 0
mov dword [esp + 0x2c], 0xf
mov byte [esp + 0x18], 0
cmp byte [0x101f7848], 0
je 0x1000f984
mov eax, dword [0x101f75d8]
movss xmm0, dword [eax + 0x10]
addss xmm0, dword [0x101b8300]
mov eax, dword [0x101f784c]
movss dword [esp + 0x14], xmm0
test eax, eax
jne 0x1000f97f
mov edx, 0xe80c2f78
mov ecx, 0x101989c9
call fcn.10003ad0
mov edx, 0xc10bf213
mov ecx, 0x1014c915
mov esi, eax
call fcn.10003ad0
mov edx, esi
mov ecx, eax
call fcn.100abe50
movss xmm0, dword [esp + 0x14]
mov dword [0x101f784c], eax
movss dword [eax + edi], xmm0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x24
ret