Function at 0x411ca0
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x442787
mov eax, dword fs:[0]
push eax
sub esp, 0xac
mov eax, dword [0x459780]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x6c], 0
sub esp, 0x18
mov eax, dword [0x45a188]
mov ecx, esp
xorps xmm0, xmm0
mov dword [ebp - 0x70], eax
movups xmmword [ecx], xmm0
mov dword [ecx + 0x10], 0xd
mov dword [ecx + 0x14], 0xf
movq xmm0, qword [str.embedsettings]
movq qword [ecx], xmm0
mov eax, dword [0x4460f4]
mov dword [ecx + 8], eax
mov al, byte [0x4460f8]
mov byte [ecx + 0xc], al
mov byte [ecx + 0xd], 0
mov ecx, 0x45a1a0
call fcn.00410e30
sub esp, 0x18
mov dword [ebp - 0x5c], 0x1f
mov esi, esp
mov edi, eax
lea eax, [ebp - 0x5c]
xorps xmm0, xmm0
push eax
movups xmmword [esi], xmm0
push esi
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
call fcn.004012a0
mov ecx, dword [ebp - 0x5c]
mov edx, eax
mov dword [esi + 0x14], ecx
add esp, 8
mov dword [esi], edx
mov dword [esi + 0x10], 0x13
movups xmm0, xmmword [str.limittextlength_use]
movups xmmword [edx], xmm0
mov cx, word [0x44610c]
mov word [edx + 0x10], cx
mov ecx, edi
mov al, byte [0x44610e]
mov byte [edx + 0x12], al
mov byte [edx + 0x13], 0
call fcn.00410e30
mov ecx, eax
call fcn.00406510
xorps xmm0, xmm0
test al, al
je 0x41170b
sub esp, 0x18
mov ecx, esp
movups xmmword [ecx], xmm0
mov dword [ecx + 0x10], 0xd
mov dword [ecx + 0x14], 0xf
movq xmm0, qword [str.embedsettings]
movq qword [ecx], xmm0
mov eax, dword [0x4460f4]
mov dword [ecx + 8], eax
mov al, byte [0x4460f8]
mov byte [ecx + 0xc], al
mov byte [ecx + 0xd], 0
mov ecx, 0x45a1a0
call fcn.00410e30
sub esp, 0x18
mov dword [ebp - 0x5c], 0x1f
mov esi, esp
mov edi, eax
lea eax, [ebp - 0x5c]
xorps xmm0, xmm0
push eax
movups xmmword [esi], xmm0
push esi
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
call fcn.004012a0
mov ecx, dword [ebp - 0x5c]
mov edx, eax
mov dword [esi + 0x14], ecx
add esp, 8
mov dword [esi], edx
mov dword [esi + 0x10], 0x16
movups xmm0, xmmword [str.limittextlength_length]
movups xmmword [edx], xmm0
mov ecx, dword [0x446120]
mov dword [edx + 0x10], ecx
mov ecx, edi
mov ax, word [0x446124]
mov word [edx + 0x14], ax
mov byte [edx + 0x16], 0
call fcn.00410e30
push eax
lea ecx, [ebp - 0x9c]
call fcn.0040e730
mov dword [ebp - 4], 0
mov ecx, 1
jmp 0x411754
movups xmmword [ebp - 0x84], xmm0
mov byte [ebp - 0x84], 0
movq qword [ebp - 0x7c], xmm0
push dword [ebp - 0x84]
lea ecx, [ebp - 0x7c]
mov dword [ebp - 4], 1
call fcn.004159e0
xorps xmm0, xmm0
mov byte [ebp - 0x84], 5
movlpd qword [ebp - 0x7c], xmm0
lea eax, [ebp - 0x84]
mov dword [ebp - 4], 2
mov ecx, 2
mov dword [ebp - 0x6c], ecx
mov dword [ebp - 0x60], ecx
mov ecx, eax
call fcn.00406270
sub esp, 0x18
mov dword [ebp - 0x88], eax
mov ecx, esp
xorps xmm0, xmm0
movups xmmword [ecx], xmm0
mov dword [ecx + 0x10], 0xd
mov dword [ecx + 0x14], 0xf
movq xmm0, qword [str.embedsettings]
movq qword [ecx], xmm0
mov eax, dword [0x4460f4]
mov dword [ecx + 8], eax
mov al, byte [0x4460f8]
mov byte [ecx + 0xc], al
mov byte [ecx + 0xd], 0
mov ecx, 0x45a1a0
call fcn.00410e30
sub esp, 0x18
xorps xmm0, xmm0
mov ecx, esp
mov edx, eax
movups xmmword [ecx], xmm0
mov dword [ecx + 0x10], 0xb
mov dword [ecx + 0x14], 0xf
movq xmm0, qword [str.keeprawtext]
movq qword [ecx], xmm0
movzx eax, word [0x446130]
mov word [ecx + 8], ax
mov al, byte [0x446132]
mov byte [ecx + 0xa], al
mov byte [ecx + 0xb], 0
mov ecx, edx
call fcn.00410e30
mov ecx, eax
call fcn.00406270
sub esp, 0x18
mov dword [ebp - 0x8c], eax
mov ecx, esp
xorps xmm0, xmm0
movups xmmword [ecx], xmm0
mov dword [ecx + 0x10], 0xd
mov dword [ecx + 0x14], 0xf
movq xmm0, qword [str.embedsettings]
movq qword [ecx], xmm0
mov eax, dword [0x4460f4]
mov dword [ecx + 8], eax
mov al, byte [0x4460f8]
mov byte [ecx + 0xc], al
mov byte [ecx + 0xd], 0
mov ecx, 0x45a1a0
call fcn.00410e30
sub esp, 0x18
mov dword [ebp - 0x5c], 0x1f
mov esi, esp
mov edi, eax
lea eax, [ebp - 0x5c]
xorps xmm0, xmm0
push eax
movups xmmword [esi], xmm0
push esi
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
call fcn.004012a0
mov ecx, dword [ebp - 0x5c]
add esp, 8
mov dword [esi + 0x14], ecx
mov dword [esi], eax
mov dword [esi + 0x10], 0x12
movups xmm0, xmmword [str.insertspace_policy]
movups xmmword [eax], xmm0
mov cx, word [0x446144]
mov word [eax + 0x10], cx
mov ecx, edi
mov byte [eax + 0x12], 0
call fcn.00410e30
mov ecx, eax
call fcn.00406270
mov dword [ebp - 0x64], eax
sub esp, 0x18
xorps xmm0, xmm0
mov ecx, esp
movups xmmword [ecx], xmm0
mov dword [ecx + 0x10], 0xd
mov dword [ecx + 0x14], 0xf
movq xmm0, qword [str.embedsettings]
movq qword [ecx], xmm0
mov eax, dword [0x4460f4]
mov dword [ecx + 8], eax
mov al, byte [0x4460f8]
mov byte [ecx + 0xc], al
mov byte [ecx + 0xd], 0
mov ecx, 0x45a1a0
call fcn.00410e30
sub esp, 0x18
xorps xmm0, xmm0
mov ecx, esp
mov edx, eax
movups xmmword [ecx], xmm0
mov dword [ecx + 0x10], 0xa
mov dword [ecx + 0x14], 0xf
movq xmm0, qword [str.changefont]
movq qword [ecx], xmm0
movzx eax, word [0x446150]
mov word [ecx + 8], ax
mov byte [ecx + 0xa], 0
mov ecx, edx
call fcn.00410e30
mov ecx, eax
call fcn.00406510
test al, al
je 0x411a18
sub esp, 0x18
xorps xmm0, xmm0
mov ecx, esp
movups xmmword [ecx], xmm0
mov dword [ecx + 0x10], 0xd
mov dword [ecx + 0x14], 0xf
movq xmm0, qword [str.embedsettings]
movq qword [ecx], xmm0
mov eax, dword [0x4460f4]
mov dword [ecx + 8], eax
mov al, byte [0x4460f8]
mov byte [ecx + 0xc], al
mov byte [ecx + 0xd], 0
mov ecx, 0x45a1a0
call fcn.00410e30
sub esp, 0x18
xorps xmm0, xmm0
mov ecx, esp
mov edx, eax
movups xmmword [ecx], xmm0
mov dword [ecx + 0x10], 0xf
mov dword [ecx + 0x14], 0xf
movq xmm0, qword [str.changefont_font]
movq qword [ecx], xmm0
mov eax, dword [0x44615c]
mov dword [ecx + 8], eax
mov ax, word [0x446160]
mov word [ecx + 0xc], ax
mov al, byte [0x446162]
mov byte [ecx + 0xe], al
mov byte [ecx + 0xf], 0
mov ecx, edx
call fcn.00410e30
lea ecx, [ebp - 0x28]
push ecx
mov ecx, eax
call fcn.0040aed0
mov esi, dword [ebp - 0x60]
or esi, 0x10
push 0xfde9
lea eax, [ebp - 0x28]
mov dword [ebp - 4], 3
push eax
lea eax, [ebp - 0x40]
or esi, 4
push eax
mov dword [ebp - 0x6c], esi
call fcn.004133f0
add esp, 0xc
mov dword [ebp - 0x5c], eax
or esi, 8
mov dword [ebp - 4], 4
cmp dword [eax + 0x14], 7
mov dword [ebp - 0x60], esi
mov dword [ebp - 0x6c], esi
jbe 0x411a1f
mov eax, dword [eax]
mov dword [ebp - 0x5c], eax
jmp 0x411a1f
mov dword [ebp - 0x5c], 0x444b30
sub esp, 0x18
xorps xmm0, xmm0
mov edx, esp
mov ecx, 0x45a1a0
movups xmmword [edx], xmm0
mov dword [edx + 0x10], 0xd
mov dword [edx + 0x14], 0xf
movq xmm0, qword [str.embedsettings]
movq qword [edx], xmm0
mov eax, dword [0x4460f4]
mov dword [edx + 8], eax
mov al, byte [0x4460f8]
mov byte [edx + 0xc], al
mov byte [edx + 0xd], 0
call fcn.00410e30
sub esp, 0x18
mov dword [ebp - 0x68], 0x1f
mov esi, esp
mov edi, eax
lea eax, [ebp - 0x68]
xorps xmm0, xmm0
push eax
movups xmmword [esi], xmm0
push esi
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
call fcn.004012a0
mov edx, dword [ebp - 0x68]
add esp, 8
mov dword [esi], eax
mov ecx, edi
mov dword [esi + 0x10], 0x11
mov dword [esi + 0x14], edx
movups xmm0, xmmword [str.timeout_translate]
movups xmmword [eax], xmm0
mov dl, byte [0x446174]
mov byte [eax + 0x10], dl
mov byte [eax + 0x11], 0
call fcn.00410e30
mov esi, eax
mov cl, byte [esi]
movzx eax, cl
cmp eax, 9
ja case.0x411ace.0
jmp dword [eax*4 + 0x411c78]
xor edx, edx
lea eax, [esi + 8]
cmp cl, 6
cmovne eax, edx
mov eax, dword [eax]
jmp 0x411b0e
mov ecx, esi
call fcn.0040afc0
mov eax, dword [eax]
jmp 0x411b0e
xor edx, edx
lea eax, [esi + 8]
cmp cl, 7
cmovne eax, edx
cvttsd2si eax, qword [eax]
jmp 0x411b0e
xor edx, edx
lea eax, [esi + 8]
cmp cl, 4
cmovne eax, edx
movzx eax, byte [eax]
push dword [ebp - 0x88]
imul eax, eax, 0x3e8
push 0
push dword [ebp - 0x8c]
push dword [ebp - 0x64]
push dword [ebp - 0x5c]
push 0
push 2
push eax
push dword [ebp + 8]
call dword [ebp - 0x70]
mov eax, dword [ebp - 0x60]
add esp, 0x24
test al, 8
je 0x411b4e
and eax, 0xfffffff7
lea ecx, [ebp - 0x40]
mov dword [ebp - 0x60], eax
call fcn.00402490
mov eax, dword [ebp - 0x60]
mov dword [ebp - 4], 2
test al, 4
je 0x411ba8
mov ecx, dword [ebp - 0x14]
and eax, 0xfffffffb
mov dword [ebp - 0x60], eax
cmp ecx, 0xf
jbe 0x411b96
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x411b89
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x411c70
push ecx
push edx
call fcn.004356f1
mov eax, dword [ebp - 0x60]
add esp, 8
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
test al, 2
je 0x411bcd
and eax, 0xfffffffd
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x6c], eax
push dword [ebp - 0x84]
lea ecx, [ebp - 0x7c]
mov dword [ebp - 4], 6
call fcn.004159e0
mov eax, dword [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
test al, 1
je 0x411bf7
push dword [ebp - 0x9c]
lea ecx, [ebp - 0x94]
mov dword [ebp - 4], 7
call fcn.004159e0
mov dword [ebp - 4], 0xffffffff
lea eax, [ebp + 8]
mov ecx, 0x45a1c0
push eax
lea eax, [ebp - 0x74]
push eax
call fcn.0040a850
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004356ae
mov esp, ebp
pop ebp
ret 4
mov ecx, esi
call fcn.0041c740
mov dword [ebp - 0x70], eax
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x58]
push str.type_must_be_number__but_is
push eax
call fcn.004090e0
push esi
push eax
lea eax, [ebp - 0xb8]
mov dword [ebp - 4], 5
push 0x12e
push eax
call fcn.0040a020
add esp, 0x1c
lea eax, [ebp - 0xb8]
push 0x4565c8
push eax
call sub.msvcrt.dll__CxxThrowException
call fcn.004369e0
nop dword [eax]
sbb al, 0x41
add byte [esi], ah
sbb al, 0x41
add byte [esi], ah
sbb al, 0x41
add byte [esi], ah
sbb al, 0x41
add byte [eax], al
sbb eax, dword [ecx]
in al, 0x1a
inc ecx
add ch, dl
sbb al, byte [ecx]
out dx, eax
sbb al, byte [ecx]
sbb al, 0x41
add byte [esi], ah
sbb al, 0x41
add byte [ebp - 0x75], dl
push ebp
mov ebp, esp
mov edx, dword [ebp + 8]
sub esp, 8
movzx eax, dl
xor eax, 0x811c9dc5
imul ecx, eax, 0x1000193
mov eax, edx
shr eax, 8
movzx eax, al
push esi
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, 0x45a1c0
xor eax, edx
imul esi, eax, 0x1000193
lea eax, [ebp + 8]
push esi
push eax
lea eax, [ebp - 8]
push eax
call fcn.004081d0
mov edx, dword [eax + 4]
test edx, edx
je 0x411d52
mov ecx, dword [0x45a1d8]
mov eax, dword [0x45a1cc]
and ecx, esi
lea ecx, [eax + ecx*8]
mov eax, dword [ecx]
cmp dword [ecx + 4], edx
jne 0x411d2c
cmp eax, edx
jne 0x411d24
mov eax, dword [0x45a1c4]
mov dword [ecx], eax
mov dword [ecx + 4], eax
jmp 0x411d34
mov eax, dword [edx + 4]
mov dword [ecx + 4], eax
jmp 0x411d34
cmp eax, edx
jne 0x411d34
mov eax, dword [edx]
mov dword [ecx], eax
mov ecx, dword [edx]
dec dword [0x45a1c8]
mov eax, dword [edx + 4]
push 0xc
push edx
mov dword [eax], ecx
mov eax, dword [edx + 4]
mov dword [ecx + 4], eax
call fcn.004356f1
add esp, 8
push 0
push 1
push dword [0x45a198]
call dword [sym.imp.KERNEL32.dll_ReleaseSemaphore]
pop esi
mov esp, ebp
pop ebp
ret 4