Function at 0x10095c20
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 0x100ddc21
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ebx
sub esp, 0xb8
push esi
push edi
mov dword [ebp - 0x54], 0
mov dword [ebp - 4], 0
mov edx, dword [ebx + 0x14]
push ecx
lea ecx, [ebp - 0xb4]
call fcn.1009c1e0
add esp, 4
mov byte [ebp - 4], 1
xorps xmm2, xmm2
mov esi, dword [0x1012a528]
mov edi, dword [0x1012a524]
mov ecx, dword [0x1012a520]
dec ecx
lea edx, [esi + edi]
mov dword [ebp - 0xa4], edx
dec edx
mov eax, edx
and edx, 3
shr eax, 2
and ecx, eax
mov eax, dword [0x1012a51c]
mov eax, dword [eax + ecx*4]
xor ecx, ecx
mov eax, dword [eax + edx*4]
mov dword [ebp - 0x40], eax
lea eax, [esi - 1]
mov esi, dword [0x1012a514]
test eax, eax
mov dword [0x1012a528], eax
cmove edi, ecx
mov ecx, dword [0x1012a50c]
mov dword [0x1012a524], edi
dec ecx
mov edi, dword [0x1012a510]
lea edx, [esi + edi]
mov dword [ebp - 0xa4], edx
dec edx
mov eax, edx
and edx, 1
shr eax, 1
and ecx, eax
mov eax, dword [0x1012a508]
mov eax, dword [eax + ecx*4]
xor ecx, ecx
movss xmm0, dword [eax + edx*8]
movss xmm1, dword [eax + edx*8 + 4]
lea eax, [esi - 1]
addss xmm1, dword [0x1012a53c]
movss dword [ebp - 0xa4], xmm0
test eax, eax
addss xmm0, dword [0x1012a538]
cmove edi, ecx
mov dword [0x1012a514], eax
mov ecx, dword [ebp - 0xb4]
subss xmm1, dword [0x100f8730]
mov dword [0x1012a510], edi
subss xmm0, xmm2
mov esi, dword [ecx + 0x10]
movss dword [ebp - 0x18], xmm1
movss dword [ebp - 0x24], xmm0
movd xmm0, dword [0x1012a55c]
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x20], xmm0
test esi, esi
je 0x10095e5a
cmp dword [ecx + 0x14], 0x10
jb 0x10095d6a
mov ecx, dword [ecx]
mov edx, dword [ebp - 0x40]
lea edi, [ebp - 0x60]
push 0
push 0x400
push edi
mov eax, dword [edx]
xorps xmm0, xmm0
push esi
push ecx
push 0
push edx
movups xmmword [ebp - 0x60], xmm0
call dword [eax + 0x38]
mov eax, dword [ebp - 0xb4]
mov esi, dword [ebp - 0x54]
sub esi, dword [ebp - 0x5c]
mov dword [ebp - 0x54], eax
cmp dword [eax + 0x14], 0x10
jb 0x10095da3
mov eax, dword [eax]
mov dword [ebp - 0x54], eax
mov cx, word [0x1010e582]
xorps xmm0, xmm0
movups xmmword [ebp - 0xc4], xmm0
movzx eax, cx
movss xmm0, dword [ebp - 0x18]
xorps xmm1, xmm1
subss xmm0, xmm1
movzx edi, ch
mov dword [ebp - 0x48], eax
mov eax, dword [0x1010e580]
mov dword [ebp - 0x14], eax
shr eax, 8
cvttss2si ecx, xmm0
mov dword [ebp - 0x4c], eax
movss xmm0, dword [ebp - 0x24]
subss xmm0, dword [0x100f86dc]
push ecx
cvttss2si eax, xmm0
push eax
push ecx
push eax
lea eax, [ebp - 0xc4]
push eax
call dword [sym.imp.USER32.dll_SetRect]
mov edx, dword [ebp - 0x40]
shl edi, 8
mov eax, dword [edx]
mov ecx, dword [eax + 0x38]
mov eax, dword [ebp - 0x14]
movzx eax, al
or edi, eax
mov eax, dword [ebp - 0x4c]
movzx eax, al
shl edi, 8
or edi, eax
mov eax, dword [ebp - 0x48]
movzx eax, al
shl edi, 8
or edi, eax
lea eax, [ebp - 0xc4]
push edi
push 0x100
push eax
push 0xffffffffffffffff
push dword [ebp - 0x54]
push 0
push edx
call ecx
movss xmm0, dword [ebp - 0x18]
movd xmm1, esi
cvtdq2ps xmm1, xmm1
addss xmm1, dword [0x100f873c]
addss xmm0, xmm1
movss dword [ebp - 0x18], xmm0
xorps xmm0, xmm0
mov dword [ebp - 0x2c], 0
mov edx, 0xf
movups xmmword [ebp - 0x3c], xmm0
mov dword [ebp - 0x28], edx
mov byte [ebp - 0x3c], 0
mov byte [ebp - 4], 2
mov eax, dword [ebx + 0xc]
mov esi, dword [ebx + 8]
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x1c], esi
cmp esi, eax
je 0x10095f45
mov edi, 0x202c
mov eax, dword [esi + 8]
cmp byte [eax], 0
je 0x10095f36
mov ecx, dword [ebp - 0x2c]
test ecx, ecx
je 0x10095ee3
mov eax, edx
sub eax, ecx
cmp eax, 2
jb 0x10095ec8
lea eax, [ecx + 2]
cmp edx, 0x10
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x3c]
cmovae eax, dword [ebp - 0x3c]
mov word [eax + ecx], di
mov byte [eax + ecx + 2], 0
jmp 0x10095ee0
push 2
push 0x100f3c84
mov byte [ebp - 0x14], 0
lea ecx, [ebp - 0x3c]
push dword [ebp - 0x14]
push 2
call fcn.100540a0
mov edx, dword [ebp - 0x28]
mov eax, dword [esi]
mov edi, dword [esi + 4]
mov ecx, dword [ebp - 0x2c]
mov dword [ebp - 0x54], eax
mov eax, edx
sub eax, ecx
push edi
push dword [ebp - 0x54]
cmp edi, eax
ja 0x10095f1e
cmp edx, 0x10
lea esi, [ebp - 0x3c]
lea eax, [edi + ecx]
cmovae esi, dword [ebp - 0x3c]
add esi, ecx
mov dword [ebp - 0x2c], eax
push esi
call fcn.100b3840
mov byte [esi + edi], 0
add esp, 0xc
mov esi, dword [ebp - 0x1c]
jmp 0x10095f2e
mov byte [ebp - 0x4c], 0
lea ecx, [ebp - 0x3c]
push dword [ebp - 0x4c]
push edi
call fcn.100540a0
mov edx, dword [ebp - 0x28]
mov edi, 0x202c
add esi, 0xc
mov dword [ebp - 0x1c], esi
cmp esi, dword [ebp - 0x48]
jne 0x10095e91
mov esi, dword [ebp - 0x40]
lea ecx, [ebp - 0x3c]
push 0
push 0x400
cmp edx, 0x10
xorps xmm0, xmm0
mov eax, dword [esi]
lea edx, [ebp - 0x60]
cmovae ecx, dword [ebp - 0x3c]
push edx
push dword [ebp - 0x2c]
movups xmmword [ebp - 0x60], xmm0
push ecx
push 0
push esi
call dword [eax + 0x38]
mov eax, dword [ebp - 0x58]
sub eax, dword [ebp - 0x60]
movss xmm2, dword [ebp - 0x20]
movaps xmm0, xmm2
subss xmm0, dword [0x100f8770]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
comiss xmm1, xmm0
jbe 0x1009604d
movaps xmm0, xmm2
divss xmm0, dword [0x100f874c]
call fcn.100d7360
mov ecx, dword [ebp - 0x2c]
mov edx, eax
cmp edx, ecx
ja 0x10095fc3
cmp dword [ebp - 0x28], 0x10
lea ecx, [ebp - 0x3c]
mov dword [ebp - 0x2c], edx
cmovae ecx, dword [ebp - 0x3c]
mov byte [ecx + edx], 0
jmp 0x10096008
mov eax, dword [ebp - 0x28]
mov edi, edx
sub edi, ecx
sub eax, ecx
cmp edi, eax
ja 0x10095ff5
cmp dword [ebp - 0x28], 0x10
lea esi, [ebp - 0x3c]
push edi
cmovae esi, dword [ebp - 0x3c]
add esi, ecx
mov dword [ebp - 0x2c], edx
push 0
push esi
call fcn.100b3610
mov byte [edi + esi], 0
add esp, 0xc
mov esi, dword [ebp - 0x40]
jmp 0x10096008
push 0
push edi
mov byte [ebp - 0x14], 0
lea ecx, [ebp - 0x3c]
push dword [ebp - 0x14]
push edi
call fcn.10079350
mov edx, dword [ebp - 0x28]
mov eax, edx
mov ecx, dword [ebp - 0x2c]
sub eax, ecx
cmp eax, 4
jb 0x10096035
lea eax, [ecx + 4]
cmp edx, 0x10
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x3c]
cmovae eax, dword [ebp - 0x3c]
mov dword [eax + ecx], 0x2e2e2e20
mov byte [eax + ecx + 4], 0
jmp 0x1009604d
push 4
push str._...
mov byte [ebp - 0x14], 0
lea ecx, [ebp - 0x3c]
push dword [ebp - 0x14]
push 4
call fcn.100540a0
cmp dword [ebp - 0x2c], 0
jne 0x10096090
mov ecx, dword [ebp - 0x28]
cmp ecx, 4
jb 0x10096078
cmp ecx, 0x10
mov dword [ebp - 0x2c], 4
lea eax, [ebp - 0x3c]
cmovae eax, dword [ebp - 0x3c]
mov dword [eax], 0x656e6f4e
mov byte [eax + 4], 0
jmp 0x10096090
push 4
push str.None
mov byte [ebp - 0x14], 0
lea ecx, [ebp - 0x3c]
push dword [ebp - 0x14]
push 4
call fcn.100540a0
push dword [0x1010e584]
movss xmm0, dword [ebp - 0x20]
mov cl, 1
push dword [0x1010e588]
sub esp, 8
mov eax, esp
sub esp, 8
movss dword [eax], xmm0
movss xmm0, dword [ebp - 0x24]
mov dword [eax + 4], 0x41600000
mov eax, esp
movss dword [eax], xmm0
movss xmm0, dword [ebp - 0x18]
movss dword [eax + 4], xmm0
call fcn.1006c3c0
movss xmm0, dword [ebp - 0x20]
add esp, 0x18
subss xmm0, dword [0x100f8708]
push dword [0x1010e58c]
sub esp, 8
movss dword [ebp - 0x1c], xmm0
mov eax, esp
sub esp, 8
movss dword [eax], xmm0
movss xmm0, dword [ebp - 0x24]
addss xmm0, dword [0x100f86dc]
mov dword [eax + 4], 0x41400000
mov eax, esp
movss dword [ebp - 0x14], xmm0
movss dword [eax], xmm0
movss xmm0, dword [ebp - 0x18]
addss xmm0, dword [0x100f86dc]
movss dword [ebp - 0x54], xmm0
movss dword [eax + 4], xmm0
call fcn.1006c2d0
movss xmm0, dword [ebp - 0x20]
lea ecx, [ebp - 0x3c]
mulss xmm0, dword [0x100f86c4]
add esp, 0x14
cmp dword [ebp - 0x28], 0x10
mov edx, 0xc
movss xmm1, dword [ebp - 0x24]
cmovae ecx, dword [ebp - 0x3c]
push dword [ebp - 0x2c]
mov eax, dword [0x1010e580]
addss xmm1, xmm0
movss xmm0, dword [ebp - 0x18]
addss xmm0, dword [0x100f874c]
push ecx
sub esp, 8
mov ecx, esp
movss dword [ebp - 0x48], xmm1
movss dword [ebp - 0x4c], xmm0
push eax
movss dword [ecx], xmm1
movss dword [ecx + 4], xmm0
mov ecx, esi
call fcn.1006c810
mov edi, dword [ebx + 0x14]
add esp, 0x14
mov al, byte [edi]
test al, al
je 0x100961b5
movsx eax, al
lea ecx, [edi + 1]
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
call fcn.1009c420
jmp 0x100961ba
mov eax, 0x811c9dc5
mov esi, dword [0x1012a500]
movss xmm5, dword [0x1012a59c]
movss xmm6, dword [0x1012a598]
movss xmm4, dword [0x100f8760]
movss xmm3, dword [ebp - 0x24]
cmp esi, eax
jne 0x10096257
mov ecx, dword [ebx + 0xc]
mov eax, 0x2aaaaaab
sub ecx, dword [ebx + 8]
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
inc eax
add eax, edx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
comiss xmm6, xmm3
addsd xmm0, qword [eax*8 + 0x100f8f90]
cvtpd2ps xmm2, xmm0
mulss xmm2, xmm4
jbe 0x10096239
movss xmm1, dword [ebp - 0x18]
comiss xmm5, xmm1
jbe 0x10096239
movaps xmm0, xmm3
addss xmm0, dword [ebp - 0x20]
comiss xmm0, xmm6
jbe 0x10096239
addss xmm2, xmm1
comiss xmm2, xmm5
ja 0x10096257
mov al, byte [0x10133421]
mov cl, byte [0x10133521]
test al, al
je 0x10096262
xor edx, edx
test cl, cl
cmove esi, edx
mov dword [0x1012a500], esi
jmp 0x10096262
mov cl, byte [0x10133521]
mov al, byte [0x10133421]
comiss xmm6, xmm3
movss xmm2, dword [ebp - 0x18]
movss xmm7, dword [ebp - 0x20]
jbe 0x10096428
comiss xmm5, xmm2
jbe 0x10096428
movaps xmm0, xmm3
addss xmm0, xmm7
comiss xmm0, xmm6
jbe 0x10096428
movaps xmm0, xmm2
addss xmm0, xmm4
comiss xmm0, xmm5
jbe 0x10096428
test al, al
je 0x10096428
test cl, cl
jne 0x10096428
mov al, byte [edi]
test esi, esi
jne 0x100963f0
test al, al
je 0x100963e1
movsx eax, al
lea ecx, [edi + 1]
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
call fcn.1009c420
mov dword [0x1012a500], eax
movss xmm1, dword [ebp - 0x18]
subss xmm1, dword [0x1012a53c]
movd xmm0, dword [0x100f25b0]
mov edx, dword [0x1012a514]
mov esi, dword [0x1012a510]
cvtdq2ps xmm0, xmm0
lea eax, [edx + esi]
addss xmm1, dword [0x100f8760]
addss xmm1, xmm0
movss dword [ebp - 0x18], xmm1
test al, 1
jne 0x1009633b
lea eax, [edx + 2]
shr eax, 1
cmp dword [0x1012a50c], eax
ja 0x1009633b
push ecx
mov ecx, 0x1012a504
call fcn.1009c970
mov edx, dword [0x1012a514]
mov esi, dword [0x1012a510]
mov ecx, dword [0x1012a50c]
lea eax, [ecx*2 - 1]
and eax, esi
lea esi, [ecx - 1]
mov dword [0x1012a510], eax
lea edi, [eax + edx]
mov eax, edi
shr eax, 1
and esi, eax
mov eax, dword [0x1012a508]
cmp dword [eax + esi*4], 0
jne 0x1009637e
push 0x10
call fcn.100b0717
mov ecx, dword [0x1012a508]
add esp, 4
mov dword [ecx + esi*4], eax
mov eax, dword [0x1012a508]
mov eax, dword [eax + esi*4]
and edi, 1
movss xmm0, dword [ebp - 0xa4]
mov ecx, dword [ebp - 0x40]
movss dword [eax + edi*8], xmm0
movss xmm0, dword [ebp - 0x18]
movss dword [eax + edi*8 + 4], xmm0
inc dword [0x1012a514]
call fcn.1009c4f0
mov ecx, dword [ebp - 0x28]
cmp ecx, 0x10
jb 0x100969a4
mov edx, dword [ebp - 0x3c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1009699a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100969dc
jmp 0x1009699a
mov dword [0x1012a500], 0x811c9dc5
jmp 0x100962db
test al, al
je 0x1009640c
movsx eax, al
lea ecx, [edi + 1]
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
call fcn.1009c420
jmp 0x10096411
mov eax, 0x811c9dc5
cmp esi, eax
jne 0x100962db
mov dword [0x1012a500], 0
jmp 0x100962db
mov al, byte [edi]
test al, al
je 0x10096446
movsx eax, al
lea ecx, [edi + 1]
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
call fcn.1009c420
jmp 0x1009644b
mov eax, 0x811c9dc5
cmp esi, eax
jne 0x100962db
mov ecx, dword [ebx + 0xc]
mov eax, 0x2aaaaaab
sub ecx, dword [ebx + 8]
imul ecx
movss dword [ebp - 0x9c], xmm3
movss dword [ebp - 0x98], xmm2
movss dword [ebp - 0x94], xmm7
mov dword [ebp - 0x70], 0
sar edx, 1
mov eax, edx
mov dword [ebp - 0x6c], 0xf
shr eax, 0x1f
inc eax
mov dword [ebp - 0xa0], 2
add eax, edx
mov byte [ebp - 0x88], 1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x100f8f90]
mov eax, dword [0x1010e588]
mov dword [ebp - 0x8c], eax
mov eax, dword [0x1010e584]
mov dword [ebp - 0x87], eax
cvtpd2ps xmm1, xmm0
xorps xmm0, xmm0
mulss xmm1, xmm4
movups xmmword [ebp - 0x80], xmm0
mov byte [ebp - 0x80], 0
movss dword [ebp - 0x90], xmm1
mov byte [ebp - 4], 3
lea eax, [ebp - 0xa0]
mov ecx, dword [0x1012a530]
push eax
cmp ecx, dword [0x1012a534]
je 0x1009650d
call fcn.10093890
add dword [0x1012a530], 0x40
jmp 0x10096518
push ecx
mov ecx, 0x1012a52c
call fcn.1009bf00
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x6c]
cmp ecx, 0x10
jb 0x10096550
mov edx, dword [ebp - 0x80]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10096546
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100969dc
push ecx
push edx
call fcn.100b0b76
add esp, 8
mov ecx, dword [ebx + 0xc]
mov eax, 0x2aaaaaab
sub ecx, dword [ebx + 8]
imul ecx
mov dword [ebp - 0x87], 0
sar edx, 1
mov eax, edx
mov dword [ebp - 0x70], 0
shr eax, 0x1f
inc eax
mov dword [ebp - 0x6c], 0xf
add eax, edx
mov dword [ebp - 0xa0], 1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x100f8f90]
mov eax, dword [0x1010e58c]
mov dword [ebp - 0x8c], eax
cvtpd2ps xmm1, xmm0
xorps xmm0, xmm0
mulss xmm1, dword [0x100f8760]
movups xmmword [ebp - 0x80], xmm0
mov byte [ebp - 0x80], 0
movss xmm0, dword [ebp - 0x14]
subss xmm1, dword [0x100f8708]
movss dword [ebp - 0x9c], xmm0
movss xmm0, dword [ebp - 0x54]
movss dword [ebp - 0x98], xmm0
movss xmm0, dword [ebp - 0x1c]
movss dword [ebp - 0x94], xmm0
movss dword [ebp - 0x90], xmm1
mov byte [ebp - 4], 4
lea eax, [ebp - 0xa0]
mov ecx, dword [0x1012a530]
push eax
cmp ecx, dword [0x1012a534]
je 0x1009661d
call fcn.10093890
add dword [0x1012a530], 0x40
jmp 0x10096628
push ecx
mov ecx, 0x1012a52c
call fcn.1009bf00
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x6c]
cmp ecx, 0x10
jb 0x10096660
mov edx, dword [ebp - 0x80]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10096656
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100969dc
push ecx
push edx
call fcn.100b0b76
add esp, 8
cmp dword [ebp - 0x28], 0x10
lea eax, [ebp - 0x3c]
mov esi, dword [0x1010e580]
cmovae eax, dword [ebp - 0x3c]
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x80]
push dword [ebp - 0x2c]
xorps xmm0, xmm0
mov dword [ebp - 0x8c], 0
movups xmmword [ebp - 0x80], xmm0
push eax
movss xmm0, dword [ebp - 0x48]
movss dword [ebp - 0x9c], xmm0
movss xmm0, dword [ebp - 0x4c]
mov dword [ebp - 0x87], 0
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x6c], 0xf
mov byte [ebp - 0x80], 0
mov dword [ebp - 0x54], 2
mov dword [ebp - 0xa0], 3
movss dword [ebp - 0x98], xmm0
call fcn.100777a0
mov eax, dword [ebp - 0x40]
mov ecx, dword [0x1012a530]
mov dword [ebp - 0x68], eax
lea eax, [ebp - 0xa0]
mov dword [ebp - 0x8c], esi
mov dword [ebp - 0x64], 0xc
push eax
cmp ecx, dword [0x1012a534]
je 0x1009670f
call fcn.10093890
add dword [0x1012a530], 0x40
jmp 0x1009671a
push ecx
mov ecx, 0x1012a52c
call fcn.1009bf00
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x6c]
mov dword [ebp - 0x14], 0
cmp ecx, 0x10
jb 0x10096759
mov edx, dword [ebp - 0x80]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1009674f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100969dc
push ecx
push edx
call fcn.100b0b76
add esp, 8
mov esi, dword [ebx + 0xc]
mov eax, 0x2aaaaaab
mov edi, dword [ebx + 8]
mov ecx, esi
sub ecx, edi
mov dword [ebp - 0x54], 0
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x100962db
movss xmm0, dword [ebp - 0x24]
xorps xmm3, xmm3
addss xmm0, xmm3
xor ecx, ecx
mov dword [ebp - 0x1c], ecx
movss dword [ebp - 0x24], xmm0
nop word [eax + eax]
mov eax, dword [ebp - 0x54]
movss xmm5, dword [0x100f8760]
inc eax
movss xmm4, dword [0x1012a598]
comiss xmm4, xmm0
mov dword [ebp - 0x44], eax
movd xmm2, eax
cvtdq2ps xmm2, xmm2
mulss xmm2, xmm5
movaps xmm1, xmm2
addss xmm1, dword [ebp - 0x18]
jbe 0x10096833
movss xmm3, dword [0x1012a59c]
comiss xmm3, xmm1
jbe 0x10096830
addss xmm0, dword [ebp - 0x20]
comiss xmm0, xmm4
jbe 0x10096830
addss xmm1, xmm5
comiss xmm1, xmm3
jbe 0x10096830
mov ecx, 1
call fcn.1009c1c0
test al, al
je 0x1009682d
sub esi, edi
mov eax, 0x2aaaaaab
imul esi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, dword [ebp - 0x54]
jbe 0x100969e1
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax + edi + 8]
cmp byte [ecx], 0
sete al
mov byte [ecx], al
mov esi, dword [ebx + 0xc]
mov edi, dword [ebx + 8]
mov ecx, dword [ebp - 0x1c]
xorps xmm3, xmm3
sub esi, edi
mov eax, 0x2aaaaaab
imul esi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, dword [ebp - 0x54]
jbe 0x100969e1
mov eax, dword [ebp - 0x1c]
mov edx, dword [ecx + edi]
mov esi, dword [0x1010e598]
movss xmm1, dword [ebp - 0x48]
mov eax, dword [eax + edi + 8]
addss xmm1, xmm3
mov ecx, dword [ecx + edi + 4]
addss xmm2, dword [ebp - 0x4c]
mov dword [ebp - 0x58], edx
cmp byte [eax], 0
mov dword [ebp - 0x54], ecx
cmovne esi, dword [0x1010e580]
mov byte [ebp - 4], 6
xorps xmm0, xmm0
mov edi, dword [ebp - 0x14]
push ecx
movups xmmword [ebp - 0x80], xmm0
or edi, 1
mov dword [ebp - 0x8c], 0
push edx
lea ecx, [ebp - 0x80]
mov dword [ebp - 0x87], 0
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x6c], 0xf
mov byte [ebp - 0x80], 0
mov dword [ebp - 0x54], edi
mov dword [ebp - 0xa0], 3
movss dword [ebp - 0x9c], xmm1
movss dword [ebp - 0x98], xmm2
call fcn.100777a0
mov eax, dword [ebp - 0x40]
mov ecx, dword [0x1012a530]
mov dword [ebp - 0x68], eax
lea eax, [ebp - 0xa0]
mov dword [ebp - 0x8c], esi
mov dword [ebp - 0x64], 0xc
push eax
cmp ecx, dword [0x1012a534]
je 0x10096914
call fcn.10093890
add dword [0x1012a530], 0x40
jmp 0x1009691f
push ecx
mov ecx, 0x1012a52c
call fcn.1009bf00
and edi, 0xfffffffe
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x6c]
mov dword [ebp - 0x14], edi
cmp ecx, 0x10
jb 0x1009695d
mov edx, dword [ebp - 0x80]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10096953
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100969dc
push ecx
push edx
call fcn.100b0b76
add esp, 8
mov eax, dword [ebp - 0x44]
xorps xmm3, xmm3
mov esi, dword [ebx + 0xc]
mov ecx, esi
mov edi, dword [ebx + 8]
sub ecx, edi
add dword [ebp - 0x1c], 0xc
movss xmm0, dword [ebp - 0x24]
mov dword [ebp - 0x54], eax
mov eax, 0x2aaaaaab
imul ecx
mov ecx, dword [ebp - 0x1c]
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp dword [ebp - 0x54], eax
jb 0x100967a0
jmp 0x100962db
push ecx
push edx
call fcn.100b0b76
add esp, 8
lea ecx, [ebp - 0xb4]
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x28], 0xf
mov byte [ebp - 0x3c], 0
call fcn.10053c70
lea ecx, [ebx + 8]
call fcn.10049820
mov ecx, dword [ebp - 0xc]
pop edi
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
call fcn.100b7b82
call fcn.1004b750
int3