Function at 0x4390e0
Capabilities:
Get graphical window text
Hash data using fnv
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x495c86
mov eax, dword fs:[0]
push eax
sub esp, 0x228
mov eax, dword [0x4b7180]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
mov dword [ebp - 0x220], esi
mov eax, dword [ebp + 8]
mov dword [ebp - 0x22c], eax
call dword [sym.imp.USER32.dll_GetForegroundWindow]
mov edi, eax
test edi, edi
je 0x4393ca
lea eax, [ebp - 0x218]
push eax
push edi
call dword [sym.imp.USER32.dll_GetWindowThreadProcessId]
mov eax, dword [ebp - 0x218]
lea ebx, [esi + 0xc4]
movzx eax, al
xor eax, 0x811c9dc5
imul ecx, eax, 0x1000193
movzx eax, byte [ebp - 0x217]
xor ecx, eax
movzx eax, byte [ebp - 0x216]
imul ecx, ecx, 0x1000193
xor ecx, eax
movzx eax, byte [ebp - 0x215]
imul ecx, ecx, 0x1000193
xor ecx, eax
imul eax, ecx, 0x1000193
mov ecx, ebx
push eax
lea eax, [ebp - 0x218]
push eax
lea eax, [ebp - 0x228]
push eax
call fcn.00418a70
mov eax, dword [eax + 4]
test eax, eax
jne 0x4391a4
mov eax, dword [ebx + 4]
cmp eax, dword [esi + 0xc8]
je 0x439303
mov eax, dword [ebp - 0x218]
add esi, 0x8c
push esi
mov dword [ebp - 0x21c], eax
mov dword [ebp - 0x224], esi
call fcn.00457183
add esp, 4
test eax, eax
jne 0x4393e8
mov eax, dword [esi + 0x2c]
cmp eax, 0x7fffffff
je 0x4393ef
lea eax, [ebp - 0x21c]
mov dword [ebp - 4], 0
push eax
mov ecx, ebx
call fcn.00445740
push esi
mov dword [ebp - 4], 0xffffffff
mov dword [eax], 2
call fcn.00457194
mov eax, dword [ebp - 0x220]
add esp, 4
mov edx, dword [eax + 0x14]
lea ecx, [eax + 0x14]
mov dword [ebp - 0x21c], ecx
mov eax, dword [eax + 0xc8]
mov dword [ebp - 0x224], eax
movzx eax, dl
xor eax, 0x811c9dc5
mov dword [ebp - 0x220], edx
imul ecx, eax, 0x1000193
mov eax, edx
shr eax, 8
movzx eax, al
xor ecx, eax
mov eax, edx
shr eax, 0x10
imul ecx, ecx, 0x1000193
movzx eax, al
shr edx, 0x18
xor ecx, eax
imul eax, ecx, 0x1000193
mov ecx, ebx
xor eax, edx
imul eax, eax, 0x1000193
push eax
lea eax, [ebp - 0x220]
push eax
lea eax, [ebp - 0x234]
push eax
call fcn.00418a70
mov eax, dword [eax + 4]
test eax, eax
jne 0x43928f
mov eax, dword [ebx + 4]
cmp eax, dword [ebp - 0x224]
je 0x439303
mov eax, dword [ebp - 0x21c]
mov eax, dword [eax]
push esi
mov dword [ebp - 0x224], eax
mov dword [ebp - 0x220], esi
call fcn.00457183
add esp, 4
test eax, eax
jne 0x4393fa
mov eax, dword [esi + 0x2c]
cmp eax, 0x7fffffff
je 0x439401
lea eax, [ebp - 0x224]
mov dword [ebp - 4], 1
push eax
mov ecx, ebx
call fcn.00445740
push esi
mov dword [ebp - 4], 0xffffffff
mov dword [eax], 1
call fcn.00457194
mov eax, dword [ebp - 0x218]
add esp, 4
mov ecx, dword [ebp - 0x21c]
xchg dword [ecx], eax
push 0xff
lea eax, [ebp - 0x214]
push eax
push edi
call dword [sym.imp.USER32.dll_GetWindowTextW]
lea eax, [ebp - 0x214]
push str.__fasttest__
push eax
call fcn.0046f693
add esp, 8
test eax, eax
je 0x4393ca
push 0
push 0
push 0x10
push edi
call dword [sym.imp.USER32.dll_PostMessageW]
call fcn.00404e10
mov ecx, eax
test ecx, ecx
je 0x43940c
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x21c], eax
mov dword [ebp - 4], 2
call fcn.0045749c
push 0
push 0x2710
push edx
push eax
call fcn.00490e70
push edx
push eax
lea eax, [ebp - 0x21c]
push str.__fast_:__fast_tutorial_benchmark_done_:_lld__
push eax
call fcn.00426770
mov esi, dword [ebp - 0x21c]
lea eax, [ebp - 0x220]
add esp, 0x10
push 0
push eax
push dword [esi - 0xc]
push esi
push dword [ebp - 0x22c]
call dword [sym.imp.KERNEL32.dll_WriteFile]
mov dword [ebp - 4], 0xffffffff
add esi, 0xfffffff0
or eax, 0xffffffff
lock xadd dword [esi + 0xc], eax
dec eax
test eax, eax
jg 0x4393ca
mov ecx, dword [esi]
push esi
mov eax, dword [ecx]
call dword [eax + 4]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.0046de4a
mov esp, ebp
pop ebp
ret 4
push 5
call fcn.004573d5
dec eax
push 6
mov dword [esi + 0x2c], eax
call fcn.004573d5
push 5
call fcn.004573d5
dec eax
push 6
mov dword [esi + 0x2c], eax
call fcn.004573d5
push 0x80004005
call fcn.00404bf0
int3