Function at 0x1002e400
Capabilities:
Encode data using xor
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 0x101e4683
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0xa8
push esi
push edi
mov eax, dword [0x10285040]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [0x10b33e60]
lea edx, [eax + 0x7a4232c8]
xor edx, 0xfcb4fca8
cmp dword [edx + 0x154], 0
je 0x10030d41
mov ecx, dword [0x10b33e7c]
add ecx, 0x871ac239
xor ecx, 0xe3de2ec4
cmp dword [ecx + 4], 3
jl 0x10030d41
mov ecx, dword [0x10335008]
add ecx, 0x9b31f5a8
xor ecx, 0x82b71aa9
cmp byte [ecx + 0x63d68], 0
jne 0x10030d41
mov ecx, dword [0x1031e91c]
mov edx, dword [edx + 0x14c]
mov dword [ebp - 0x18], edx
test cl, 1
jne 0x1002e5ec
or ecx, 1
mov dword [0x1031e91c], ecx
mov dword [ebp - 4], 0
mov ecx, dword [0x1031cd80]
mov edx, dword [0x1031cd84]
mov dword [ebp - 0x1c], ecx
cmp ecx, edx
je 0x1002e524
mov ecx, dword [ecx]
mov dword [ebp - 0x44], ecx
test ecx, ecx
je 0x1002e517
mov ecx, dword [ecx + 0xc]
mov edi, 0x811c9dc5
mov dword [ebp - 0x14], ecx
xor edx, edx
inc edx
cmp byte [ecx + edx], 0
jne 0x1002e4e8
xor esi, esi
test edx, edx
je 0x1002e511
movsx ecx, byte [ecx + esi]
inc esi
xor ecx, edi
imul edi, ecx, 0x1000193
mov ecx, dword [ebp - 0x14]
cmp esi, edx
jb 0x1002e4f5
cmp edi, 0x4e9f1122
je 0x1002e53b
mov edx, dword [0x1031cd84]
mov ecx, dword [ebp - 0x1c]
add ecx, 4
mov dword [ebp - 0x1c], ecx
cmp ecx, edx
jne 0x1002e4d2
xor edi, edi
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x18]
mov dword [0x103201cc], edi
jmp 0x1002e5f2
mov ecx, dword [ebp - 0x44]
xor edi, edi
mov dword [ebp - 0x34], edi
mov dword [ebp - 0x1c], edi
cmp dword [ecx + 4], edi
jle 0x1002e526
xor eax, eax
mov dword [ebp - 0x2c], eax
mov esi, dword [ecx]
mov ecx, dword [esi + eax + 0x28]
add esi, eax
mov dword [ebp - 0x14], esi
test ecx, ecx
je 0x1002e585
cmp dword [ecx + 4], 0
jle 0x1002e585
push 0
mov edx, 0x53630d14
call fcn.1012b660
add esp, 4
test eax, eax
je 0x1002e582
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x34], edi
mov eax, dword [ebp - 0x2c]
mov edi, dword [esi]
xor ecx, ecx
mov esi, 0x811c9dc5
nop
inc ecx
cmp byte [edi + ecx], 0
jne 0x1002e590
xor edx, edx
test ecx, ecx
je 0x1002e5bc
nop dword [eax]
movsx eax, byte [edi + edx]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1002e5a0
cmp esi, 0x53630d14
je 0x1002e5d9
mov eax, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x1c]
add eax, 0x3c
mov ecx, dword [ebp - 0x44]
inc edx
mov edi, dword [ebp - 0x34]
mov dword [ebp - 0x1c], edx
mov dword [ebp - 0x2c], eax
cmp edx, dword [ecx + 4]
jge 0x1002e5e2
jmp 0x1002e550
mov eax, dword [ebp - 0x14]
mov edi, dword [eax + 0x2c]
add edi, dword [ebp - 0x34]
mov eax, dword [0x10b33e60]
jmp 0x1002e526
mov edi, dword [0x103201cc]
movss xmm0, dword [edx + edi]
lea ecx, [eax + 0x7a4232c8]
xor ecx, 0xfcb4fca8
movss dword [ebp - 0x50], xmm0
movss xmm0, dword [edx + edi + 4]
movss dword [ebp - 0x54], xmm0
mov ecx, dword [ecx + 0x14c]
mov dword [ebp - 0x18], ecx
mov ecx, dword [0x1031e978]
test cl, 1
jne 0x1002e78b
or ecx, 1
mov dword [0x1031e978], ecx
mov dword [ebp - 4], 1
mov ecx, dword [0x1031cd80]
mov edx, dword [0x1031cd84]
mov dword [ebp - 0x1c], ecx
cmp ecx, edx
je 0x1002e6a2
nop
mov ecx, dword [ecx]
mov dword [ebp - 0x44], ecx
test ecx, ecx
je 0x1002e695
mov ecx, dword [ecx + 0xc]
mov edi, 0x811c9dc5
mov dword [ebp - 0x14], ecx
xor edx, edx
inc edx
cmp byte [ecx + edx], 0
jne 0x1002e666
xor esi, esi
test edx, edx
je 0x1002e68f
movsx ecx, byte [ecx + esi]
inc esi
xor ecx, edi
imul edi, ecx, 0x1000193
mov ecx, dword [ebp - 0x14]
cmp esi, edx
jb 0x1002e673
cmp edi, 0x72e242a1
je 0x1002e6b6
mov edx, dword [0x1031cd84]
mov ecx, dword [ebp - 0x1c]
add ecx, 4
mov dword [ebp - 0x1c], ecx
cmp ecx, edx
jne 0x1002e650
xor edx, edx
mov dword [ebp - 4], 0xffffffff
mov dword [0x10320218], edx
jmp 0x1002e791
mov ecx, dword [ebp - 0x44]
xor edi, edi
mov dword [ebp - 0x34], edi
mov dword [ebp - 0x1c], edi
cmp dword [ecx + 4], edi
jle 0x1002e75d
xor eax, eax
mov dword [ebp - 0x2c], eax
nop
mov esi, dword [ecx]
mov ecx, dword [esi + eax + 0x28]
add esi, eax
mov dword [ebp - 0x14], esi
test ecx, ecx
je 0x1002e705
cmp dword [ecx + 4], 0
jle 0x1002e705
push 0
mov edx, 0xf3e9a9ed
call fcn.1012b660
add esp, 4
test eax, eax
je 0x1002e702
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x34], edi
mov eax, dword [ebp - 0x2c]
mov edi, dword [esi]
xor ecx, ecx
mov esi, 0x811c9dc5
nop
inc ecx
cmp byte [edi + ecx], 0
jne 0x1002e710
xor edx, edx
test ecx, ecx
je 0x1002e73c
nop dword [eax]
movsx eax, byte [edi + edx]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1002e720
cmp esi, 0xf3e9a9ed
je 0x1002e76e
mov eax, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x1c]
add eax, 0x3c
mov ecx, dword [ebp - 0x44]
inc edx
mov edi, dword [ebp - 0x34]
mov dword [ebp - 0x1c], edx
mov dword [ebp - 0x2c], eax
cmp edx, dword [ecx + 4]
jl 0x1002e6d0
mov eax, dword [0x10b33e60]
mov edx, edi
mov dword [ebp - 4], 0xffffffff
mov dword [0x10320218], edx
jmp 0x1002e791
mov eax, dword [ebp - 0x14]
mov edx, dword [eax + 0x2c]
add edx, dword [ebp - 0x34]
mov eax, dword [0x10b33e60]
mov dword [0x10320218], edx
mov dword [ebp - 4], 0xffffffff
jmp 0x1002e791
mov edx, dword [0x10320218]
mov ecx, dword [ebp - 0x18]
cmp byte [ecx + edx], 0
lea ecx, [eax + 0x7a4232c8]
je 0x1002e7b6
xor ecx, 0xfcb4fca8
mov ecx, dword [ecx + 0x154]
movss xmm0, dword [ecx + 0x138]
jmp 0x1002e7ca
xor ecx, 0xfcb4fca8
mov ecx, dword [ecx + 0x154]
movss xmm0, dword [ecx + 0x134]
lea ecx, [eax + 0x7a4232c8]
movss dword [ebp - 0x44], xmm0
xor ecx, 0xfcb4fca8
cmp byte [0x103089d0], 0
je 0x1002f975
mov esi, dword [ecx + 0x158]
lea eax, [ebp - 0x7c]
mov dword [ebp - 0x7c], 0
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], 0
mov ecx, dword [ecx + 0xc4]
push eax
mov dword [ebp - 0x68], esi
call fcn.1002e000
movss xmm2, dword [ebp - 0x78]
lea edx, [ebp - 0x14]
mulss xmm2, dword [0x10270eec]
lea ecx, [ebp - 0x1c]
call fcn.101266a0
movss xmm2, dword [ebp - 0x7c]
lea edx, [ebp - 0x18]
mulss xmm2, dword [0x10270eec]
lea ecx, [ebp - 0x60]
call fcn.101266a0
movss xmm2, dword [ebp - 0x74]
lea edx, [ebp - 0x24]
mulss xmm2, dword [0x10270eec]
lea ecx, [ebp - 0x28]
call fcn.101266a0
movss xmm3, dword [ebp - 0x14]
movss xmm4, dword [ebp - 0x18]
movaps xmm0, xmm3
movss xmm2, dword [ebp - 0x1c]
movss xmm1, dword [ebp - 0x60]
movaps xmm7, xmm2
movss xmm5, dword [ebp - 0x28]
movss xmm6, dword [ebp - 0x24]
mulss xmm0, xmm4
mulss xmm7, xmm6
mulss xmm6, dword [0x102713a0]
movss dword [ebp - 0x3c], xmm0
movaps xmm0, xmm2
mulss xmm0, xmm4
mulss xmm6, xmm3
movss dword [ebp - 0x38], xmm0
movaps xmm0, xmm1
xorps xmm0, xmmword [0x10271af0]
mulss xmm1, xmm5
mulss xmm5, dword [0x102713a0]
movss dword [ebp - 0x1c], xmm0
movaps xmm0, xmm1
mulss xmm0, xmm3
movss xmm3, dword [esi + 0x2c]
mulss xmm1, xmm2
subss xmm7, xmm0
mulss xmm5, xmm4
movss xmm0, dword [esi + 0x28]
subss xmm6, xmm1
movss xmm4, dword [esi + 0x24]
movaps xmm1, xmm0
mulss xmm1, xmm0
movss dword [ebp - 0x28], xmm0
movaps xmm0, xmm4
mulss xmm0, xmm4
movss dword [ebp - 0x34], xmm7
movss dword [ebp - 0x2c], xmm6
addss xmm1, xmm0
movss dword [ebp - 0x58], xmm5
movaps xmm0, xmm3
movss dword [ebp - 0x24], xmm4
mulss xmm0, xmm3
movss dword [ebp - 0x60], xmm3
addss xmm1, xmm0
movss xmm0, dword [ebp - 0x44]
mulss xmm0, xmm0
mulss xmm0, dword [0x10270f30]
comiss xmm1, xmm0
jbe 0x1002e988
movaps xmm0, xmm1
mov dword [ebp - 4], 2
call fcn.1000d460
mov dword [ebp - 4], 0xffffffff
movss xmm1, dword [0x10270f88]
divss xmm1, xmm0
movss xmm3, dword [ebp - 0x28]
mulss xmm1, dword [ebp - 0x44]
movaps xmm0, xmm1
mulss xmm3, xmm1
mulss xmm0, dword [ebp - 0x24]
movss dword [ebp - 0x28], xmm3
movss dword [ebp - 0x24], xmm0
movss xmm0, dword [ebp - 0x60]
mulss xmm0, xmm1
movss dword [ebp - 0x60], xmm0
mov edx, dword [0x107691ec]
add edx, 0xcef01053
xor edx, 0xa7410cc1
add edx, 0x188
je 0x1002f943
mov ecx, dword [0x11011a08]
mov eax, dword [0x10b33e60]
test cl, 1
jne 0x1002e9d7
or ecx, 1
mov dword [0x11011a08], ecx
lea ecx, [eax + 0x7a4232c8]
xor ecx, 0xfcb4fca8
mov ecx, dword [ecx + 0x298]
mov dword [0x11011a04], ecx
cmp dword [edx + 0x94], 0x7fffffff
je 0x1002f943
mov edx, dword [0x110119f4]
test dl, 1
jne 0x1002ea13
or edx, 1
lea ecx, [eax + 0x7a4232c8]
xor ecx, 0xfcb4fca8
mov dword [0x110119f4], edx
mov ecx, dword [ecx + 0x22c]
mov dword [0x11011a00], ecx
test dl, 2
jne 0x1002ea36
add eax, 0x7a4232c8
or edx, 2
xor eax, 0xfcb4fca8
mov dword [0x110119f4], edx
mov eax, dword [eax + 0x230]
mov dword [0x110119ec], eax
movss xmm1, dword [ebp - 0x54]
movss xmm0, dword [ebp - 0x50]
mulss xmm1, xmm1
mulss xmm0, xmm0
addss xmm0, xmm1
call fcn.1000d460
mov ecx, dword [0x10b33e60]
movaps xmm2, xmm0
comiss xmm2, dword [0x10271024]
jb 0x1002eae5
mov edx, dword [0x11011a00]
mov eax, dword [edx + 0x1c]
mov eax, dword [eax + 0x2c]
xor eax, edx
mov edx, dword [0x110119ec]
mov dword [ebp - 0x18], eax
mov eax, dword [edx + 0x1c]
mov eax, dword [eax + 0x2c]
xor eax, edx
mov dword [ebp - 0x14], eax
lea eax, [ecx + 0x7a4232c8]
movss xmm1, dword [ebp - 0x14]
xor eax, 0xfcb4fca8
maxss xmm1, xmm2
mov eax, dword [eax + 0x108]
movss xmm0, dword [eax + 0x14]
lea edx, [eax + 0x14]
mulss xmm1, dword [ebp - 0x18]
add eax, 0x20
comiss xmm0, dword [eax]
cmova eax, edx
mulss xmm1, dword [eax]
divss xmm1, xmm2
subss xmm2, xmm1
xorps xmm1, xmm1
maxss xmm2, xmm1
movaps xmm0, xmm2
mulss xmm2, dword [ebp - 0x54]
mulss xmm0, dword [ebp - 0x50]
movss dword [ebp - 0x54], xmm2
movss dword [ebp - 0x50], xmm0
jmp 0x1002eae8
xorps xmm1, xmm1
mov eax, dword [0x110119e4]
test al, 1
jne 0x1002eb0f
or eax, 1
mov dword [0x110119e4], eax
lea eax, [ecx + 0x7a4232c8]
xor eax, 0xfcb4fca8
mov eax, dword [eax + 0x258]
mov dword [0x11011a0c], eax
movss xmm2, dword [ebp - 0x1c]
ucomiss xmm2, xmm1
lahf
test ah, 0x44
jnp 0x1002eba3
movss xmm1, dword [ebp - 0x38]
movss xmm0, dword [ebp - 0x3c]
mulss xmm0, xmm0
mulss xmm1, xmm1
addss xmm1, xmm0
movaps xmm0, xmm2
mulss xmm0, xmm2
addss xmm0, xmm1
call fcn.1000d460
addss xmm0, dword [0x10270e8c]
movss xmm1, dword [0x10271024]
mov ecx, dword [0x10b33e60]
divss xmm1, xmm0
movaps xmm2, xmm1
movaps xmm0, xmm1
mulss xmm0, dword [ebp - 0x38]
mulss xmm2, dword [ebp - 0x3c]
mulss xmm1, dword [ebp - 0x1c]
unpcklps xmm2, xmm0
movq qword [ebp - 0x94], xmm2
movss xmm0, dword [ebp - 0x90]
movss dword [ebp - 0x38], xmm0
movss xmm0, dword [ebp - 0x94]
movss dword [ebp - 0x80], xmm1
xorps xmm1, xmm1
movss dword [ebp - 0x3c], xmm0
movss xmm2, dword [ebp - 0x58]
movss xmm0, dword [ebp - 0x34]
ucomiss xmm2, xmm1
lahf
test ah, 0x44
jnp 0x1002ec28
movss xmm1, dword [ebp - 0x2c]
mulss xmm0, xmm0
mulss xmm1, xmm1
addss xmm1, xmm0
movaps xmm0, xmm2
mulss xmm0, xmm2
addss xmm0, xmm1
call fcn.1000d460
addss xmm0, dword [0x10270e8c]
movss xmm1, dword [0x10271024]
mov ecx, dword [0x10b33e60]
divss xmm1, xmm0
movaps xmm2, xmm1
movaps xmm0, xmm1
mulss xmm2, dword [ebp - 0x34]
mulss xmm0, dword [ebp - 0x2c]
mulss xmm1, dword [ebp - 0x58]
unpcklps xmm2, xmm0
movq qword [ebp - 0xa0], xmm2
movss xmm2, dword [ebp - 0x9c]
movss xmm0, dword [ebp - 0xa0]
movss dword [ebp - 0x80], xmm1
jmp 0x1002ec2d
movss xmm2, dword [ebp - 0x2c]
lea eax, [ecx + 0x7a4232c8]
xor eax, 0xfcb4fca8
mov eax, dword [eax + 0x14c]
mov dword [ebp - 0x18], eax
mov eax, dword [0x1031e978]
test al, 1
jne 0x1002edb1
or eax, 1
mov dword [0x1031e978], eax
mov dword [ebp - 4], 3
mov eax, dword [0x1031cd80]
mov dword [ebp - 0x44], eax
cmp eax, dword [0x1031cd84]
je 0x1002ecc0
nop dword [eax]
mov edx, dword [eax]
mov dword [ebp - 0x2c], edx
test edx, edx
je 0x1002ecb2
mov eax, dword [edx + 0xc]
mov edi, 0x811c9dc5
mov dword [ebp - 0x14], eax
xor edx, edx
inc edx
cmp byte [edx + eax], 0
jne 0x1002ec86
xor esi, esi
test edx, edx
je 0x1002ecaf
movsx eax, byte [esi + eax]
inc esi
xor eax, edi
imul edi, eax, 0x1000193
mov eax, dword [ebp - 0x14]
cmp esi, edx
jb 0x1002ec93
cmp edi, 0x72e242a1
je 0x1002ecd6
mov eax, dword [ebp - 0x44]
add eax, 4
mov dword [ebp - 0x44], eax
cmp eax, dword [0x1031cd84]
jne 0x1002ec70
mov esi, dword [ebp - 0x68]
xor eax, eax
mov dword [0x10320218], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1002edb6
mov eax, dword [ebp - 0x2c]
xor edi, edi
mov dword [ebp - 0x34], edi
mov dword [ebp - 0x1c], edi
cmp dword [eax + 4], edi
jle 0x1002ed7e
xor ecx, ecx
mov dword [ebp - 0x44], ecx
nop
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x14], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1002ed24
cmp dword [ecx + 4], 0
jle 0x1002ed24
push 0
mov edx, 0xf3e9a9ed
call fcn.1012b660
add esp, 4
test eax, eax
je 0x1002ed21
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x34], edi
mov eax, dword [ebp - 0x2c]
mov edi, dword [esi]
xor ecx, ecx
mov esi, 0x811c9dc5
nop dword [eax]
inc ecx
cmp byte [ecx + edi], 0
jne 0x1002ed30
xor edx, edx
test ecx, ecx
je 0x1002ed5c
nop dword [eax]
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1002ed40
cmp esi, 0xf3e9a9ed
je 0x1002ed91
mov eax, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x44]
inc edx
mov edi, dword [ebp - 0x34]
add ecx, 0x3c
mov dword [ebp - 0x1c], edx
mov dword [ebp - 0x44], ecx
cmp edx, dword [eax + 4]
jl 0x1002ecf0
mov ecx, dword [0x10b33e60]
mov esi, dword [ebp - 0x68]
mov eax, edi
mov dword [0x10320218], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1002edb6
mov eax, dword [ebp - 0x14]
mov ecx, dword [0x10b33e60]
mov esi, dword [ebp - 0x68]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x34]
mov dword [0x10320218], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1002edb6
mov eax, dword [0x10320218]
mov edx, dword [ebp - 0x18]
cmp byte [edx + eax], 0
lea eax, [ecx + 0x7a4232c8]
je 0x1002edda
xor eax, 0xfcb4fca8
mov eax, dword [eax + 0x154]
movss xmm1, dword [eax + 0x138]
jmp 0x1002eded
xor eax, 0xfcb4fca8
mov eax, dword [eax + 0x154]
movss xmm1, dword [eax + 0x134]
mulss xmm0, dword [ebp - 0x28]
mulss xmm2, dword [ebp - 0x28]
movss dword [ebp - 0x58], xmm1
movss xmm1, dword [ebp - 0x3c]
mulss xmm1, dword [ebp - 0x24]
addss xmm0, xmm1
movss xmm1, dword [ebp - 0x38]
mulss xmm1, dword [ebp - 0x24]
addss xmm2, xmm1
movss dword [ebp - 0x34], xmm0
movaps xmm1, xmm0
mulss xmm1, xmm0
movaps xmm0, xmm2
movss dword [ebp - 0x2c], xmm2
mulss xmm0, xmm2
addss xmm0, xmm1
call fcn.1000d460
movss xmm7, dword [0x10271024]
movaps xmm4, xmm0
addss xmm0, dword [0x10270e8c]
movaps xmm2, xmm7
xorps xmm6, xmm6
ucomiss xmm4, xmm6
divss xmm2, xmm0
lahf
movaps xmm3, xmm2
mulss xmm2, dword [ebp - 0x2c]
mulss xmm3, dword [ebp - 0x34]
movss dword [ebp - 0x40], xmm2
movss dword [ebp - 0x4c], xmm3
test ah, 0x44
jnp 0x1002ee7b
minss xmm4, dword [ebp - 0x58]
mov ecx, dword [0x11011a0c]
mov eax, dword [ecx + 0x1c]
mov eax, dword [eax + 0x2c]
xor eax, ecx
mov dword [ebp - 0x14], eax
movss xmm1, dword [ebp - 0x14]
mov eax, dword [0x110119f8]
movss dword [ebp - 0x44], xmm1
test al, 1
jne 0x1002eec3
or eax, 1
mov dword [0x110119f8], eax
mov eax, dword [0x10b33e60]
add eax, 0x7a4232c8
xor eax, 0xfcb4fca8
mov eax, dword [eax + 0x294]
mov dword [0x110119f0], eax
jmp 0x1002eec8
mov eax, dword [0x110119f0]
movss xmm0, dword [ebp - 0x50]
movss xmm5, dword [ebp - 0x54]
mulss xmm0, xmm3
mov dword [ebp - 0x18], eax
mulss xmm5, xmm2
addss xmm5, xmm0
movaps xmm0, xmm4
subss xmm0, xmm5
comiss xmm6, xmm0
movss dword [ebp - 0x70], xmm0
jae 0x1002f8ce
mov eax, dword [esi + 0x30]
maxss xmm5, xmm6
shr eax, 2
test al, 1
jne 0x1002f204
mov eax, dword [0x10b33e60]
add eax, 0x7a4232c8
xor eax, 0xfcb4fca8
mov eax, dword [eax + 0x14c]
mov dword [ebp - 0x5c], eax
mov eax, dword [0x10323694]
test al, 1
jne 0x1002f06b
or eax, 1
mov dword [0x10323694], eax
mov dword [ebp - 4], 4
mov eax, dword [0x1031cd80]
mov dword [ebp - 0x1c], eax
cmp eax, dword [0x1031cd84]
je 0x1002ef9a
nop dword [eax]
mov ecx, dword [eax]
mov dword [ebp - 0x38], ecx
test ecx, ecx
je 0x1002ef8c
mov edi, dword [ecx + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + edi], 0
jne 0x1002ef63
xor edx, edx
test ecx, ecx
je 0x1002ef8c
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1002ef70
cmp esi, 0x72e242a1
je 0x1002efad
mov eax, dword [ebp - 0x1c]
add eax, 4
mov dword [ebp - 0x1c], eax
cmp eax, dword [0x1031cd84]
jne 0x1002ef50
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x10323698], eax
jmp 0x1002f070
mov eax, dword [ebp - 0x38]
xor edi, edi
mov dword [ebp - 0x3c], edi
mov dword [ebp - 0x1c], edi
cmp dword [eax + 4], edi
jle 0x1002f044
xor ecx, ecx
mov dword [ebp - 0x2c], ecx
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x34], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1002effa
cmp dword [ecx + 4], 0
jle 0x1002effa
push 0
mov edx, 0x8b221170
call fcn.1012b660
add esp, 4
test eax, eax
je 0x1002eff7
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x3c], edi
mov eax, dword [ebp - 0x38]
mov edi, dword [esi]
xor ecx, ecx
mov esi, 0x811c9dc5
inc ecx
cmp byte [edi + ecx], 0
jne 0x1002f003
xor edx, edx
test ecx, ecx
je 0x1002f02c
movsx eax, byte [edi + edx]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1002f010
cmp esi, 0x8b221170
je 0x1002f054
mov eax, dword [ebp - 0x38]
mov edx, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x2c]
inc edx
mov edi, dword [ebp - 0x3c]
add ecx, 0x3c
mov dword [ebp - 0x1c], edx
mov dword [ebp - 0x2c], ecx
cmp edx, dword [eax + 4]
jl 0x1002efc6
mov eax, edi
mov dword [ebp - 4], 0xffffffff
mov dword [0x10323698], eax
jmp 0x1002f070
mov eax, dword [ebp - 0x34]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x3c]
mov dword [0x10323698], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1002f070
mov eax, dword [0x10323698]
mov ecx, dword [ebp - 0x5c]
cmp byte [ecx + eax], 0
jne 0x1002f204
mov eax, dword [0x10b33e60]
add eax, 0x7a4232c8
xor eax, 0xfcb4fca8
mov eax, dword [eax + 0x14c]
mov dword [ebp - 0x34], eax
mov eax, dword [0x10320228]
test al, 1
jne 0x1002f1dc
or eax, 1
mov dword [0x10320228], eax
mov dword [ebp - 4], 5
mov eax, dword [0x1031cd80]
mov dword [ebp - 0x1c], eax
cmp eax, dword [0x1031cd84]
je 0x1002f10b
mov ecx, dword [eax]
mov dword [ebp - 0x38], ecx
test ecx, ecx
je 0x1002f0fd
mov edi, dword [ecx + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [edi + ecx], 0
jne 0x1002f0d4
xor edx, edx
test ecx, ecx
je 0x1002f0fd
movsx eax, byte [edi + edx]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1002f0e1
cmp esi, 0x72e242a1
je 0x1002f11e
mov eax, dword [ebp - 0x1c]
add eax, 4
mov dword [ebp - 0x1c], eax
cmp eax, dword [0x1031cd84]
jne 0x1002f0c1
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x1031e930], eax
jmp 0x1002f1e1
mov eax, dword [ebp - 0x38]
xor edi, edi
mov dword [ebp - 0x3c], edi
mov dword [ebp - 0x1c], edi
cmp dword [eax + 4], edi
jle 0x1002f1b5
xor ecx, ecx
mov dword [ebp - 0x2c], ecx
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x5c], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1002f16b
cmp dword [ecx + 4], 0
jle 0x1002f16b
push 0
mov edx, 0xa4a37590
call fcn.1012b660
add esp, 4
test eax, eax
je 0x1002f168
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x3c], edi
mov eax, dword [ebp - 0x38]
mov edi, dword [esi]
xor ecx, ecx
mov esi, 0x811c9dc5
inc ecx
cmp byte [edi + ecx], 0
jne 0x1002f174
xor edx, edx
test ecx, ecx
je 0x1002f19d
movsx eax, byte [edi + edx]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1002f181
cmp esi, 0xa4a37590
je 0x1002f1c5
mov eax, dword [ebp - 0x38]
mov edx, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x2c]
inc edx
mov edi, dword [ebp - 0x3c]
add ecx, 0x3c
mov dword [ebp - 0x1c], edx
mov dword [ebp - 0x2c], ecx
cmp edx, dword [eax + 4]
jl 0x1002f137
mov eax, edi
mov dword [ebp - 4], 0xffffffff
mov dword [0x1031e930], eax
jmp 0x1002f1e1
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x3c]
mov dword [0x1031e930], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1002f1e1
mov eax, dword [0x1031e930]
mov ecx, dword [ebp - 0x34]
mov eax, dword [ecx + eax]
shr eax, 1
test al, 1
jne 0x1002f204
mov eax, dword [ebp - 0x68]
mov byte [ebp - 0x2d], 0
mov byte [ebp - 0x1d], 1
mov eax, dword [eax + 0x30]
shr eax, 0x11
test al, 1
jne 0x1002f20c
jmp 0x1002f208
mov byte [ebp - 0x2d], 1
mov byte [ebp - 0x1d], 0
mov eax, dword [0x10b33e60]
maxss xmm4, dword [0x102712ac]
add eax, 0x7a4232c8
xor eax, 0xfcb4fca8
movss dword [ebp - 0x2c], xmm4
movaps xmm0, xmm4
mov eax, dword [eax + 0x14c]
mov dword [ebp - 0x64], eax
mov eax, dword [0x1031e978]
test al, 1
jne 0x1002f37b
or eax, 1
mov dword [0x1031e978], eax
mov dword [ebp - 4], 6
mov eax, dword [0x1031cd80]
mov dword [ebp - 0x1c], eax
cmp eax, dword [0x1031cd84]
je 0x1002f2aa
mov ecx, dword [eax]
mov dword [ebp - 0x38], ecx
test ecx, ecx
je 0x1002f29c
mov edi, dword [ecx + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + edi], 0
jne 0x1002f273
xor edx, edx
test ecx, ecx
je 0x1002f29c
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1002f280
cmp esi, 0x72e242a1
je 0x1002f2bd
mov eax, dword [ebp - 0x1c]
add eax, 4
mov dword [ebp - 0x1c], eax
cmp eax, dword [0x1031cd84]
jne 0x1002f260
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x10320218], eax
jmp 0x1002f380
mov eax, dword [ebp - 0x38]
xor edi, edi
mov dword [ebp - 0x3c], edi
mov dword [ebp - 0x1c], edi
cmp dword [eax + 4], edi
jle 0x1002f354
xor ecx, ecx
mov dword [ebp - 0x34], ecx
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x5c], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1002f30a
cmp dword [ecx + 4], 0
jle 0x1002f30a
push 0
mov edx, 0xf3e9a9ed
call fcn.1012b660
add esp, 4
test eax, eax
je 0x1002f307
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x3c], edi
mov eax, dword [ebp - 0x38]
mov edi, dword [esi]
xor ecx, ecx
mov esi, 0x811c9dc5
inc ecx
cmp byte [ecx + edi], 0
jne 0x1002f313
xor edx, edx
test ecx, ecx
je 0x1002f33c
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1002f320
cmp esi, 0xf3e9a9ed
je 0x1002f364
mov eax, dword [ebp - 0x38]
mov edx, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x34]
inc edx
mov edi, dword [ebp - 0x3c]
add ecx, 0x3c
mov dword [ebp - 0x1c], edx
mov dword [ebp - 0x34], ecx
cmp edx, dword [eax + 4]
jl 0x1002f2d6
mov eax, edi
mov dword [ebp - 4], 0xffffffff
mov dword [0x10320218], eax
jmp 0x1002f380
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x3c]
mov dword [0x10320218], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1002f380
mov eax, dword [0x10320218]
mov ecx, dword [ebp - 0x64]
cmp byte [ecx + eax], 0
mov eax, dword [0x10b33e60]
je 0x1002f3a8
add eax, 0x7a4232c8
xor eax, 0xfcb4fca8
mov eax, dword [eax + 0x154]
movss xmm2, dword [eax + 0x138]
jmp 0x1002f3c0
add eax, 0x7a4232c8
xor eax, 0xfcb4fca8
mov eax, dword [eax + 0x154]
movss xmm2, dword [eax + 0x134]
mov eax, dword [0x10b33e60]
xor cl, cl
movss xmm3, dword [0x10270fb8]
add eax, 0x7a4232c8
xor eax, 0xfcb4fca8
movss dword [ebp - 0x34], xmm2
mov byte [ebp - 0x45], cl
mov eax, dword [eax + 0x150]
mov dword [ebp - 0x5c], eax
test eax, eax
je 0x1002f755
mov edx, dword [ebp - 0x18]
mov eax, dword [edx + 0x1c]
mov eax, dword [eax + 0x30]
xor eax, edx
je 0x1002f755
mov eax, dword [0x1031e958]
test al, 1
jne 0x1002f54b
or eax, 1
mov dword [0x1031e958], eax
mov dword [ebp - 4], 7
mov eax, dword [0x1031cd80]
mov dword [ebp - 0x18], eax
cmp eax, dword [0x1031cd84]
je 0x1002f47a
nop
mov ecx, dword [eax]
mov dword [ebp - 0x38], ecx
test ecx, ecx
je 0x1002f46c
mov edi, dword [ecx + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [edi + ecx], 0
jne 0x1002f443
xor edx, edx
test ecx, ecx
je 0x1002f46c
movsx eax, byte [edi + edx]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1002f450
cmp esi, 0xcd2ed041
je 0x1002f48d
mov eax, dword [ebp - 0x18]
add eax, 4
mov dword [ebp - 0x18], eax
cmp eax, dword [0x1031cd84]
jne 0x1002f430
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x10320234], eax
jmp 0x1002f550
mov eax, dword [ebp - 0x38]
xor edi, edi
mov dword [ebp - 0x3c], edi
mov dword [ebp - 0x18], edi
cmp dword [eax + 4], edi
jle 0x1002f524
xor ecx, ecx
mov dword [ebp - 0x1c], ecx
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x64], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1002f4da
cmp dword [ecx + 4], 0
jle 0x1002f4da
push 0
mov edx, 0xa2ccb41a
call fcn.1012b660
add esp, 4
test eax, eax
je 0x1002f4d7
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x3c], edi
mov eax, dword [ebp - 0x38]
mov edi, dword [esi]
xor ecx, ecx
mov esi, 0x811c9dc5
inc ecx
cmp byte [edi + ecx], 0
jne 0x1002f4e3
xor edx, edx
test ecx, ecx
je 0x1002f50c
movsx eax, byte [edi + edx]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1002f4f0
cmp esi, 0xa2ccb41a
je 0x1002f534
mov eax, dword [ebp - 0x38]
mov edx, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x1c]
inc edx
mov edi, dword [ebp - 0x3c]
add ecx, 0x3c
mov dword [ebp - 0x18], edx
mov dword [ebp - 0x1c], ecx
cmp edx, dword [eax + 4]
jl 0x1002f4a6
mov eax, edi
mov dword [ebp - 4], 0xffffffff
mov dword [0x10320234], eax
jmp 0x1002f550
mov eax, dword [ebp - 0x64]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x3c]
mov dword [0x10320234], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1002f550
mov eax, dword [0x10320234]
mov ecx, dword [ebp - 0x5c]
movzx ecx, word [ecx + eax]
mov eax, dword [0x10b33e60]
add eax, 0x7a4232c8
mov dword [ebp - 0x5c], ecx
xor eax, 0xfcb4fca8
mov eax, dword [eax + 0x150]
mov dword [ebp - 0x6c], eax
mov eax, dword [0x10323690]
test al, 1
jne 0x1002f6d5
or eax, 1
mov dword [0x10323690], eax
mov dword [ebp - 4], 8
mov eax, dword [0x1031cd80]
mov dword [ebp - 0x18], eax
cmp eax, dword [0x1031cd84]
je 0x1002f5ea
nop
mov ecx, dword [eax]
mov dword [ebp - 0x38], ecx
test ecx, ecx
je 0x1002f5dc
mov edi, dword [ecx + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + edi], 0
jne 0x1002f5b3
xor edx, edx
test ecx, ecx
je 0x1002f5dc
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1002f5c0
cmp esi, 0xea7e6f79
je 0x1002f600
mov eax, dword [ebp - 0x18]
add eax, 4
mov dword [ebp - 0x18], eax
cmp eax, dword [0x1031cd84]
jne 0x1002f5a0
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x5c]
mov dword [0x1032368c], eax
jmp 0x1002f6da
mov eax, dword [ebp - 0x38]
xor edi, edi
mov dword [ebp - 0x3c], edi
mov dword [ebp - 0x18], edi
cmp dword [eax + 4], edi
jle 0x1002f6a8
xor ecx, ecx
mov dword [ebp - 0x1c], ecx
nop dword [eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x64], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1002f654
cmp dword [ecx + 4], 0
jle 0x1002f654
push 0
mov edx, 0x444e63a0
call fcn.1012b660
add esp, 4
test eax, eax
je 0x1002f651
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x3c], edi
mov eax, dword [ebp - 0x38]
mov edi, dword [esi]
xor ecx, ecx
mov esi, 0x811c9dc5
nop dword [eax]
inc ecx
cmp byte [edi + ecx], 0
jne 0x1002f660
xor edx, edx
test ecx, ecx
je 0x1002f68c
nop dword [eax]
movsx eax, byte [edi + edx]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1002f670
cmp esi, 0x444e63a0
je 0x1002f6bb
mov eax, dword [ebp - 0x38]
mov edx, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x1c]
inc edx
mov edi, dword [ebp - 0x3c]
add ecx, 0x3c
mov dword [ebp - 0x18], edx
mov dword [ebp - 0x1c], ecx
cmp edx, dword [eax + 4]
jl 0x1002f620
mov eax, edi
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x5c]
mov dword [0x1032368c], eax
jmp 0x1002f6da
mov eax, dword [ebp - 0x64]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x3c]
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x5c]
mov dword [0x1032368c], eax
jmp 0x1002f6da
mov eax, dword [0x1032368c]
mov edx, dword [ebp - 0x6c]
cmp dword [edx + eax], 0
jle 0x1002f723
cmp cx, 0xb
je 0x1002f707
cmp cx, 0x26
je 0x1002f707
cmp cx, 9
je 0x1002f707
cmp cx, 8
je 0x1002f707
cmp cx, 0x27
je 0x1002f707
cmp cx, 0x28
jne 0x1002f723
movss xmm0, dword [0x10271230]
movaps xmm1, xmm2
mulss xmm1, xmm3
comiss xmm0, xmm1
movss xmm1, dword [ebp - 0x14]
seta cl
jmp 0x1002f726
mov cl, byte [ebp - 0x45]
mov al, byte [ebp - 0x2d]
movaps xmm0, xmm2
mulss xmm0, dword [0x10270ed0]
mov dl, byte [ebp - 0x1d]
minss xmm0, xmm7
mulss xmm0, xmm4
test al, al
jne 0x1002f747
test dl, dl
je 0x1002f74b
test cl, cl
je 0x1002f75b
movaps xmm4, xmm0
movss dword [ebp - 0x2c], xmm4
jmp 0x1002f75b
mov dl, byte [ebp - 0x1d]
mov al, byte [ebp - 0x2d]
test al, al
je 0x1002f778
movss xmm2, dword [0x10270f88]
test cl, cl
jne 0x1002f774
mulss xmm4, xmm2
movss dword [ebp - 0x2c], xmm4
mulss xmm0, xmm2
test dl, dl
je 0x1002f7cd
test cl, cl
jne 0x1002f789
mulss xmm4, xmm3
movss dword [ebp - 0x2c], xmm4
mulss xmm0, xmm3
subss xmm0, dword [0x102710e8]
comiss xmm0, xmm5
jbe 0x1002f7cd
subss xmm5, xmm0
movaps xmm0, xmm7
maxss xmm5, xmm6
mulss xmm5, dword [0x10270f64]
subss xmm0, xmm5
comiss xmm0, xmm6
jb 0x1002f7c5
minss xmm0, xmm7
mulss xmm1, xmm0
movss dword [ebp - 0x44], xmm1
jmp 0x1002f7cd
movaps xmm1, xmm6
movss dword [ebp - 0x44], xmm6
mov eax, dword [0x10b33e60]
add eax, 0x7a4232c8
xor eax, 0xfcb4fca8
mov esi, dword [eax + 0x14c]
mov eax, dword [0x1032369c]
test al, 1
jne 0x1002f823
or eax, 1
mov dword [0x1032369c], eax
mov ecx, esi
mov dword [ebp - 4], 9
call fcn.1000dd30
mov edx, 0x3a5ab60e
mov ecx, eax
call fcn.1012b930
mov ecx, eax
mov dword [ebp - 4], 0xffffffff
movss xmm1, dword [ebp - 0x44]
mov dword [0x103236a0], ecx
jmp 0x1002f829
mov ecx, dword [0x103236a0]
mov eax, dword [0x10b33e60]
add eax, 0x7a4232c8
xor eax, 0xfcb4fca8
mov eax, dword [eax + 0x108]
mulss xmm1, dword [eax + 0x20]
mulss xmm1, dword [ebp - 0x2c]
mulss xmm1, dword [esi + ecx]
minss xmm1, dword [ebp - 0x70]
movaps xmm3, xmm1
mulss xmm1, dword [ebp - 0x40]
mulss xmm3, dword [ebp - 0x4c]
addss xmm1, dword [ebp - 0x54]
addss xmm3, dword [ebp - 0x50]
movaps xmm0, xmm1
movss dword [ebp - 0x54], xmm1
movss dword [ebp - 0x4c], xmm0
mulss xmm1, xmm0
movaps xmm2, xmm3
movaps xmm0, xmm3
movss dword [ebp - 0x50], xmm3
mulss xmm0, xmm2
movss dword [ebp - 0x40], xmm2
addss xmm0, xmm1
call fcn.1000d460
ucomiss xmm0, dword [0x10270e70]
lahf
test ah, 0x44
jnp 0x1002f8ce
movss xmm1, dword [ebp - 0x34]
comiss xmm0, xmm1
jbe 0x1002f8ce
movaps xmm3, xmm1
divss xmm3, xmm0
movaps xmm4, xmm3
mulss xmm3, dword [ebp - 0x4c]
mulss xmm4, dword [ebp - 0x40]
movss dword [ebp - 0x54], xmm3
movss dword [ebp - 0x50], xmm4
jmp 0x1002f8d8
movss xmm3, dword [ebp - 0x54]
movss xmm4, dword [ebp - 0x50]
movaps xmm0, xmm4
movaps xmm1, xmm3
mulss xmm0, xmm4
mulss xmm1, xmm3
addss xmm1, xmm0
movss xmm0, dword [ebp - 0x58]
mulss xmm0, xmm0
comiss xmm1, xmm0
jbe 0x1002f92c
movaps xmm0, xmm1
mov dword [ebp - 4], 0xa
call fcn.1000d460
mov dword [ebp - 4], 0xffffffff
movss xmm1, dword [ebp - 0x58]
divss xmm1, xmm0
movss xmm4, dword [ebp - 0x50]
movss xmm3, dword [ebp - 0x54]
movaps xmm0, xmm1
mulss xmm4, xmm0
mulss xmm3, xmm1
mulss xmm3, xmm3
mulss xmm4, xmm4
addss xmm3, xmm4
movaps xmm0, xmm3
call fcn.1000d460
mov esi, dword [ebp - 0x68]
movss xmm0, dword [ebp - 0x28]
movss xmm2, dword [ebp - 0x24]
movss dword [esi + 0x28], xmm0
movss xmm0, dword [ebp - 0x60]
movss dword [esi + 0x24], xmm2
movss dword [esi + 0x2c], xmm0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
mov ecx, dword [ecx + 0x14c]
mov dword [ebp - 0x4c], ecx
mov ecx, dword [0x1031e978]
test cl, 1
jne 0x1002fa11
or ecx, 1
mov dword [0x1031e978], ecx
mov dword [ebp - 4], 0xb
mov ecx, dword [0x1031cd80]
mov edx, dword [0x1031cd84]
mov dword [ebp - 0x14], ecx
cmp ecx, edx
je 0x1002fa02
mov ecx, dword [ecx]
mov dword [ebp - 0x18], ecx
test ecx, ecx
je 0x1002f9f5
mov ecx, dword [ecx + 0xc]
mov edi, 0x811c9dc5
mov dword [ebp - 0x40], ecx
xor edx, edx
inc edx
cmp byte [edx + ecx], 0
jne 0x1002f9c6
xor esi, esi
test edx, edx
je 0x1002f9ef
movsx ecx, byte [esi + ecx]
inc esi
xor ecx, edi
imul edi, ecx, 0x1000193
mov ecx, dword [ebp - 0x40]
cmp esi, edx
jb 0x1002f9d3
cmp edi, 0x72e242a1
je 0x1002fa3d
mov edx, dword [0x1031cd84]
mov ecx, dword [ebp - 0x14]
add ecx, 4
mov dword [ebp - 0x14], ecx
cmp ecx, edx
jne 0x1002f9b0
xor edx, edx
mov dword [0x10320218], edx
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x4c]
cmp byte [ecx + edx], 0
lea ecx, [eax + 0x7a4232c8]
je 0x1002faf4
xor ecx, 0xfcb4fca8
mov ecx, dword [ecx + 0x154]
movss xmm3, dword [ecx + 0x138]
jmp 0x1002fb08
mov ecx, dword [ebp - 0x18]
xor edi, edi
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x14], edi
cmp dword [ecx + 4], edi
jle 0x1002fada
xor eax, eax
mov dword [ebp - 0x28], eax
mov esi, dword [ecx]
mov ecx, dword [esi + eax + 0x28]
add esi, eax
mov dword [ebp - 0x40], esi
test ecx, ecx
je 0x1002fa8b
cmp dword [ecx + 4], 0
jle 0x1002fa8b
push 0
mov edx, 0xf3e9a9ed
call fcn.1012b660
add esp, 4
test eax, eax
je 0x1002fa88
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x24], edi
mov eax, dword [ebp - 0x28]
mov edi, dword [esi]
xor ecx, ecx
mov esi, 0x811c9dc5
inc ecx
cmp byte [ecx + edi], 0
jne 0x1002fa94
xor edx, edx
test ecx, ecx
je 0x1002fabd
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1002faa1
cmp esi, 0xf3e9a9ed
je 0x1002fae1
mov eax, dword [ebp - 0x28]
mov edx, dword [ebp - 0x14]
add eax, 0x3c
mov ecx, dword [ebp - 0x18]
inc edx
mov edi, dword [ebp - 0x24]
mov dword [ebp - 0x14], edx
mov dword [ebp - 0x28], eax
cmp edx, dword [ecx + 4]
jl 0x1002fa56
mov eax, dword [0x10b33e60]
mov edx, edi
jmp 0x1002fa04
mov eax, dword [ebp - 0x40]
mov edx, dword [eax + 0x2c]
add edx, dword [ebp - 0x24]
mov eax, dword [0x10b33e60]
jmp 0x1002fa04
xor ecx, 0xfcb4fca8
mov ecx, dword [ecx + 0x154]
movss xmm3, dword [ecx + 0x134]
lea edi, [eax + 0x7a4232c8]
movss xmm1, dword [0x102710e8]
xor edi, 0xfcb4fca8
mov dword [ebp - 0x70], 0x42c80000
lea esi, [ebp - 0x70]
mov dword [ebp - 0x40], 0x42be0000
mov dword [ebp - 0x88], 0
mov dword [ebp - 0x84], 0
mov eax, dword [edi + 0x158]
mov ecx, dword [edi + 0x1c]
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x80], 0
mov eax, dword [eax + 4]
cdq
idiv ecx
movd xmm0, ecx
lea eax, [ebp - 0x40]
cvtdq2ps xmm0, xmm0
lea ecx, [ebp - 0x4c]
movss dword [ebp - 0x14], xmm3
divss xmm1, xmm0
movd xmm2, edx
cvtdq2ps xmm2, xmm2
mulss xmm2, xmm1
movss xmm1, dword [0x10271224]
addss xmm2, dword [0x10271220]
comiss xmm2, dword [0x10271220]
movss dword [ebp - 0x4c], xmm2
cmovae eax, ecx
mov ecx, dword [edi + 0xc4]
comiss xmm1, xmm2
cmovae esi, eax
lea eax, [ebp - 0x88]
push eax
movss xmm0, dword [esi]
mulss xmm0, dword [0x10270ee4]
mulss xmm0, xmm3
movss dword [ebp - 0x24], xmm0
call fcn.1002e000
movss xmm2, dword [ebp - 0x84]
lea edx, [ebp - 0x6c]
mulss xmm2, dword [0x10270eec]
lea ecx, [ebp - 0x5c]
call fcn.101266a0
movss xmm2, dword [ebp - 0x88]
lea edx, [ebp - 0x64]
mulss xmm2, dword [0x10270eec]
lea ecx, [ebp - 0x18]
call fcn.101266a0
movss xmm2, dword [ebp - 0x80]
lea edx, [ebp - 0x44]
mulss xmm2, dword [0x10270eec]
lea ecx, [ebp - 0x1c]
call fcn.101266a0
movss xmm3, dword [ebp - 0x6c]
movss xmm4, dword [ebp - 0x64]
movaps xmm0, xmm3
movss xmm2, dword [ebp - 0x5c]
movss xmm1, dword [ebp - 0x18]
movaps xmm7, xmm2
movss xmm5, dword [ebp - 0x1c]
movss xmm6, dword [ebp - 0x44]
mulss xmm0, xmm4
mulss xmm7, xmm6
mulss xmm6, dword [0x102713a0]
movss dword [ebp - 0x58], xmm0
movaps xmm0, xmm2
mulss xmm0, xmm4
mulss xmm6, xmm3
movss dword [ebp - 0x38], xmm0
movaps xmm0, xmm1
xorps xmm0, xmmword [0x10271af0]
mulss xmm1, xmm5
movss dword [ebp - 0x18], xmm0
movaps xmm0, xmm1
mulss xmm1, xmm2
mulss xmm0, xmm3
subss xmm6, xmm1
subss xmm7, xmm0
movss dword [ebp - 0x34], xmm6
movss dword [ebp - 0x2c], xmm7
mov edi, dword [ebp - 0x60]
mulss xmm5, dword [0x102713a0]
movss xmm0, dword [edi + 0x24]
movss xmm1, dword [edi + 0x2c]
movaps xmm2, xmm0
mulss xmm2, xmm0
movss dword [ebp - 0x68], xmm0
mulss xmm5, xmm4
movss xmm4, dword [edi + 0x28]
movaps xmm0, xmm4
movss dword [ebp - 0x1c], xmm1
mulss xmm0, xmm4
movss dword [ebp - 0x28], xmm5
movss dword [ebp - 0x44], xmm4
addss xmm2, xmm0
movaps xmm0, xmm1
mulss xmm0, xmm1
movss xmm1, dword [ebp - 0x14]
mulss xmm1, xmm1
addss xmm2, xmm0
movss xmm0, dword [esi]
mulss xmm0, xmm0
mulss xmm1, dword [0x10270eac]
mulss xmm1, xmm0
comiss xmm2, xmm1
jbe 0x1002fd47
movaps xmm0, xmm2
mov dword [ebp - 4], 0xc
call fcn.1000d460
mov dword [ebp - 4], 0xffffffff
movss xmm1, dword [ebp - 0x24]
divss xmm1, xmm0
movss xmm3, dword [ebp - 0x68]
mulss xmm3, xmm1
movaps xmm0, xmm1
mulss xmm0, dword [ebp - 0x44]
movss dword [ebp - 0x68], xmm3
movss xmm3, dword [ebp - 0x1c]
mulss xmm3, xmm1
movss dword [ebp - 0x44], xmm0
movss dword [ebp - 0x1c], xmm3
mov edx, dword [0x107691ec]
add edx, 0xcef01053
xor edx, 0xa7410cc1
add edx, 0x188
je 0x10030d23
mov ecx, dword [0x11011a08]
mov eax, dword [0x10b33e60]
test cl, 1
jne 0x1002fd96
or ecx, 1
mov dword [0x11011a08], ecx
lea ecx, [eax + 0x7a4232c8]
xor ecx, 0xfcb4fca8
mov ecx, dword [ecx + 0x298]
mov dword [0x11011a04], ecx
cmp dword [edx + 0x94], 0x7fffffff
je 0x10030d23
mov edx, dword [0x110119f4]
test dl, 1
jne 0x1002fdd2
or edx, 1
lea ecx, [eax + 0x7a4232c8]
xor ecx, 0xfcb4fca8
mov dword [0x110119f4], edx
mov ecx, dword [ecx + 0x22c]
mov dword [0x11011a00], ecx
test dl, 2
jne 0x1002fdf5
add eax, 0x7a4232c8
or edx, 2
xor eax, 0xfcb4fca8
mov dword [0x110119f4], edx
mov eax, dword [eax + 0x230]
mov dword [0x110119ec], eax
movss xmm1, dword [ebp - 0x50]
movss xmm0, dword [ebp - 0x54]
mulss xmm0, xmm0
mulss xmm1, xmm1
addss xmm0, xmm1
call fcn.1000d460
mov ecx, dword [0x10b33e60]
movaps xmm2, xmm0
comiss xmm2, dword [0x10271024]
jb 0x1002fea4
mov edx, dword [0x11011a00]
mov eax, dword [edx + 0x1c]
mov eax, dword [eax + 0x2c]
xor eax, edx
mov edx, dword [0x110119ec]
mov dword [ebp - 0x4c], eax
mov eax, dword [edx + 0x1c]
mov eax, dword [eax + 0x2c]
xor eax, edx
mov dword [ebp - 0x40], eax
lea eax, [ecx + 0x7a4232c8]
movss xmm1, dword [ebp - 0x40]
xor eax, 0xfcb4fca8
maxss xmm1, xmm2
mov eax, dword [eax + 0x108]
movss xmm0, dword [eax + 0x14]
lea edx, [eax + 0x14]
mulss xmm1, dword [ebp - 0x4c]
add eax, 0x20
comiss xmm0, dword [eax]
cmova eax, edx
mulss xmm1, dword [eax]
divss xmm1, xmm2
subss xmm2, xmm1
xorps xmm1, xmm1
maxss xmm2, xmm1
movaps xmm0, xmm2
mulss xmm2, dword [ebp - 0x54]
mulss xmm0, dword [ebp - 0x50]
movss dword [ebp - 0x54], xmm2
movss dword [ebp - 0x50], xmm0
jmp 0x1002fea7
xorps xmm1, xmm1
mov eax, dword [0x110119e4]
test al, 1
jne 0x1002fece
or eax, 1
mov dword [0x110119e4], eax
lea eax, [ecx + 0x7a4232c8]
xor eax, 0xfcb4fca8
mov eax, dword [eax + 0x258]
mov dword [0x11011a0c], eax
movss xmm2, dword [ebp - 0x18]
ucomiss xmm2, xmm1
lahf
test ah, 0x44
jnp 0x1002ff58
movss xmm1, dword [ebp - 0x58]
movss xmm0, dword [ebp - 0x38]
mulss xmm1, xmm1
mulss xmm0, xmm0
addss xmm0, xmm1
movaps xmm1, xmm2
mulss xmm1, xmm2
addss xmm0, xmm1
call fcn.1000d460
addss xmm0, dword [0x10270e8c]
movss xmm1, dword [0x10271024]
mov ecx, dword [0x10b33e60]
divss xmm1, xmm0
movaps xmm2, xmm1
movaps xmm0, xmm1
mulss xmm0, dword [ebp - 0x38]
xorps xmm1, xmm1
mulss xmm2, dword [ebp - 0x58]
unpcklps xmm2, xmm0
movq qword [ebp - 0xac], xmm2
movss xmm0, dword [ebp - 0xa8]
movss dword [ebp - 0x38], xmm0
movss xmm0, dword [ebp - 0xac]
movss dword [ebp - 0x58], xmm0
movss xmm2, dword [ebp - 0x28]
ucomiss xmm2, xmm1
movss xmm1, dword [ebp - 0x2c]
lahf
test ah, 0x44
jnp 0x1002ffd7
movss xmm0, dword [ebp - 0x34]
mulss xmm1, xmm1
mulss xmm0, xmm0
addss xmm0, xmm1
movaps xmm1, xmm2
mulss xmm1, xmm2
addss xmm0, xmm1
call fcn.1000d460
addss xmm0, dword [0x10270e8c]
movss xmm1, dword [0x10271024]
mov ecx, dword [0x10b33e60]
divss xmm1, xmm0
movaps xmm2, xmm1
movaps xmm0, xmm1
mulss xmm2, dword [ebp - 0x2c]
mulss xmm0, dword [ebp - 0x34]
unpcklps xmm2, xmm0
movq qword [ebp - 0xb8], xmm2
movss xmm2, dword [ebp - 0xb4]
movss xmm1, dword [ebp - 0xb8]
jmp 0x1002ffdc
movss xmm2, dword [ebp - 0x34]
lea eax, [ecx + 0x7a4232c8]
xor eax, 0xfcb4fca8
mov eax, dword [eax + 0x14c]
mov dword [ebp - 0x4c], eax
mov eax, dword [0x1031e978]
test al, 1
jne 0x10030161
or eax, 1
mov dword [0x1031e978], eax
mov dword [ebp - 4], 0xd
mov eax, dword [0x1031cd80]
mov dword [ebp - 0x24], eax
cmp eax, dword [0x1031cd84]
je 0x10030070
nop dword [eax]
mov edx, dword [eax]
mov dword [ebp - 0x28], edx
test edx, edx
je 0x10030062
mov eax, dword [edx + 0xc]
mov edi, 0x811c9dc5
mov dword [ebp - 0x40], eax
xor edx, edx
inc edx
cmp byte [edx + eax], 0
jne 0x10030036
xor esi, esi
test edx, edx
je 0x1003005f
movsx eax, byte [esi + eax]
inc esi
xor eax, edi
imul edi, eax, 0x1000193
mov eax, dword [ebp - 0x40]
cmp esi, edx
jb 0x10030043
cmp edi, 0x72e242a1
je 0x10030086
mov eax, dword [ebp - 0x24]
add eax, 4
mov dword [ebp - 0x24], eax
cmp eax, dword [0x1031cd84]
jne 0x10030020
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov edi, dword [ebp - 0x60]
mov dword [0x10320218], eax
jmp 0x10030166
mov eax, dword [ebp - 0x28]
xor edi, edi
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x14], edi
cmp dword [eax + 4], edi
jle 0x1003012e
xor ecx, ecx
mov dword [ebp - 0x18], ecx
nop
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x40], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x100300d4
cmp dword [ecx + 4], 0
jle 0x100300d4
push 0
mov edx, 0xf3e9a9ed
call fcn.1012b660
add esp, 4
test eax, eax
je 0x100300d1
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x24], edi
mov eax, dword [ebp - 0x28]
mov edi, dword [esi]
xor ecx, ecx
mov esi, 0x811c9dc5
nop dword [eax]
inc ecx
cmp byte [ecx + edi], 0
jne 0x100300e0
xor edx, edx
test ecx, ecx
je 0x1003010c
nop dword [eax]
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x100300f0
cmp esi, 0xf3e9a9ed
je 0x10030141
mov eax, dword [ebp - 0x28]
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
inc edx
mov edi, dword [ebp - 0x24]
add ecx, 0x3c
mov dword [ebp - 0x14], edx
mov dword [ebp - 0x18], ecx
cmp edx, dword [eax + 4]
jl 0x100300a0
mov ecx, dword [0x10b33e60]
mov eax, edi
mov dword [ebp - 4], 0xffffffff
mov edi, dword [ebp - 0x60]
mov dword [0x10320218], eax
jmp 0x10030166
mov eax, dword [ebp - 0x40]
mov ecx, dword [0x10b33e60]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x24]
mov dword [ebp - 4], 0xffffffff
mov edi, dword [ebp - 0x60]
mov dword [0x10320218], eax
jmp 0x10030166
mov eax, dword [0x10320218]
mov edx, dword [ebp - 0x4c]
cmp byte [edx + eax], 0
lea eax, [ecx + 0x7a4232c8]
je 0x1003018a
xor eax, 0xfcb4fca8
mov eax, dword [eax + 0x154]
movss xmm0, dword [eax + 0x138]
jmp 0x1003019d
xor eax, 0xfcb4fca8
mov eax, dword [eax + 0x154]
movss xmm0, dword [eax + 0x134]
mulss xmm1, dword [ebp - 0x44]
mulss xmm2, dword [ebp - 0x44]
movss dword [ebp - 0x3c], xmm0
movss xmm0, dword [ebp - 0x58]
mulss xmm0, dword [ebp - 0x68]
addss xmm1, xmm0
movss xmm0, dword [ebp - 0x38]
mulss xmm0, dword [ebp - 0x68]
addss xmm2, xmm0
movss dword [ebp - 0x2c], xmm1
movaps xmm0, xmm1
mulss xmm0, xmm1
movaps xmm1, xmm2
movss dword [ebp - 0x34], xmm2
mulss xmm1, xmm2
addss xmm0, xmm1
call fcn.1000d460
movaps xmm4, xmm0
xorps xmm7, xmm7
movss xmm0, dword [0x10271024]
movaps xmm1, xmm4
addss xmm1, dword [0x10270e8c]
ucomiss xmm4, xmm7
divss xmm0, xmm1
lahf
movaps xmm1, xmm0
mulss xmm0, dword [ebp - 0x34]
mulss xmm1, dword [ebp - 0x2c]
movss dword [ebp - 0x5c], xmm0
movss dword [ebp - 0x64], xmm1
test ah, 0x44
jnp 0x1003022b
minss xmm4, dword [ebp - 0x3c]
mov ecx, dword [0x11011a0c]
mov eax, dword [ecx + 0x1c]
mov eax, dword [eax + 0x2c]
xor eax, ecx
mov dword [ebp - 0x40], eax
movss xmm6, dword [ebp - 0x40]
mov eax, dword [0x110119f8]
movss dword [ebp - 0x38], xmm6
test al, 1
jne 0x10030273
or eax, 1
mov dword [0x110119f8], eax
mov eax, dword [0x10b33e60]
add eax, 0x7a4232c8
xor eax, 0xfcb4fca8
mov eax, dword [eax + 0x294]
mov dword [0x110119f0], eax
jmp 0x10030278
mov eax, dword [0x110119f0]
movss xmm3, dword [ebp - 0x54]
movaps xmm5, xmm0
movaps xmm0, xmm1
mulss xmm5, xmm3
mov dword [ebp - 0x2c], eax
mulss xmm0, dword [ebp - 0x50]
addss xmm5, xmm0
movaps xmm0, xmm4
subss xmm0, xmm5
comiss xmm7, xmm0
movss dword [ebp - 0x6c], xmm0
jae 0x10030cb3
mov eax, dword [edi + 0x30]
maxss xmm5, xmm7
shr eax, 2
test al, 1
jne 0x100305b4
mov eax, dword [0x10b33e60]
add eax, 0x7a4232c8
xor eax, 0xfcb4fca8
mov eax, dword [eax + 0x14c]
mov dword [ebp - 0x4c], eax
mov eax, dword [0x10323694]
test al, 1
jne 0x1003041b
or eax, 1
mov dword [0x10323694], eax
mov dword [ebp - 4], 0xe
mov eax, dword [0x1031cd80]
mov dword [ebp - 0x14], eax
cmp eax, dword [0x1031cd84]
je 0x1003034a
nop
mov ecx, dword [eax]
mov dword [ebp - 0x28], ecx
test ecx, ecx
je 0x1003033c
mov edi, dword [ecx + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [edi + ecx], 0
jne 0x10030313
xor edx, edx
test ecx, ecx
je 0x1003033c
movsx eax, byte [edi + edx]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x10030320
cmp esi, 0x72e242a1
je 0x1003035d
mov eax, dword [ebp - 0x14]
add eax, 4
mov dword [ebp - 0x14], eax
cmp eax, dword [0x1031cd84]
jne 0x10030300
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x10323698], eax
jmp 0x10030420
mov eax, dword [ebp - 0x28]
xor edi, edi
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x14], edi
cmp dword [eax + 4], edi
jle 0x100303f4
xor ecx, ecx
mov dword [ebp - 0x18], ecx
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x40], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x100303aa
cmp dword [ecx + 4], 0
jle 0x100303aa
push 0
mov edx, 0x8b221170
call fcn.1012b660
add esp, 4
test eax, eax
je 0x100303a7
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x24], edi
mov eax, dword [ebp - 0x28]
mov edi, dword [esi]
xor ecx, ecx
mov esi, 0x811c9dc5
inc ecx
cmp byte [edi + ecx], 0
jne 0x100303b3
xor edx, edx
test ecx, ecx
je 0x100303dc
movsx eax, byte [edi + edx]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x100303c0
cmp esi, 0x8b221170
je 0x10030404
mov eax, dword [ebp - 0x28]
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
inc edx
mov edi, dword [ebp - 0x24]
add ecx, 0x3c
mov dword [ebp - 0x14], edx
mov dword [ebp - 0x18], ecx
cmp edx, dword [eax + 4]
jl 0x10030376
mov eax, edi
mov dword [ebp - 4], 0xffffffff
mov dword [0x10323698], eax
jmp 0x10030420
mov eax, dword [ebp - 0x40]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x24]
mov dword [0x10323698], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x10030420
mov eax, dword [0x10323698]
mov ecx, dword [ebp - 0x4c]
cmp byte [ecx + eax], 0
jne 0x100305b4
mov eax, dword [0x10b33e60]
add eax, 0x7a4232c8
xor eax, 0xfcb4fca8
mov eax, dword [eax + 0x14c]
mov dword [ebp - 0x4c], eax
mov eax, dword [0x10320228]
test al, 1
jne 0x1003058c
or eax, 1
mov dword [0x10320228], eax
mov dword [ebp - 4], 0xf
mov eax, dword [0x1031cd80]
mov dword [ebp - 0x14], eax
cmp eax, dword [0x1031cd84]
je 0x100304bb
mov ecx, dword [eax]
mov dword [ebp - 0x28], ecx
test ecx, ecx
je 0x100304ad
mov edi, dword [ecx + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [edi + ecx], 0
jne 0x10030484
xor edx, edx
test ecx, ecx
je 0x100304ad
movsx eax, byte [edi + edx]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x10030491
cmp esi, 0x72e242a1
je 0x100304ce
mov eax, dword [ebp - 0x14]
add eax, 4
mov dword [ebp - 0x14], eax
cmp eax, dword [0x1031cd84]
jne 0x10030471
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x1031e930], eax
jmp 0x10030591
mov eax, dword [ebp - 0x28]
xor edi, edi
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x14], edi
cmp dword [eax + 4], edi
jle 0x10030565
xor ecx, ecx
mov dword [ebp - 0x18], ecx
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x40], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1003051b
cmp dword [ecx + 4], 0
jle 0x1003051b
push 0
mov edx, 0xa4a37590
call fcn.1012b660
add esp, 4
test eax, eax
je 0x10030518
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x24], edi
mov eax, dword [ebp - 0x28]
mov edi, dword [esi]
xor ecx, ecx
mov esi, 0x811c9dc5
inc ecx
cmp byte [ecx + edi], 0
jne 0x10030524
xor edx, edx
test ecx, ecx
je 0x1003054d
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x10030531
cmp esi, 0xa4a37590
je 0x10030575
mov eax, dword [ebp - 0x28]
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
inc edx
mov edi, dword [ebp - 0x24]
add ecx, 0x3c
mov dword [ebp - 0x14], edx
mov dword [ebp - 0x18], ecx
cmp edx, dword [eax + 4]
jl 0x100304e7
mov eax, edi
mov dword [ebp - 4], 0xffffffff
mov dword [0x1031e930], eax
jmp 0x10030591
mov eax, dword [ebp - 0x40]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x24]
mov dword [0x1031e930], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x10030591
mov eax, dword [0x1031e930]
mov ecx, dword [ebp - 0x4c]
mov eax, dword [ecx + eax]
shr eax, 1
test al, 1
jne 0x100305b4
mov eax, dword [ebp - 0x60]
mov byte [ebp - 0x2d], 0
mov byte [ebp - 0x1d], 1
mov eax, dword [eax + 0x30]
shr eax, 0x11
test al, 1
jne 0x100305bc
jmp 0x100305b8
mov byte [ebp - 0x2d], 1
mov byte [ebp - 0x1d], 0
mov eax, dword [0x10b33e60]
maxss xmm4, dword [0x102712ac]
add eax, 0x7a4232c8
xor eax, 0xfcb4fca8
movss dword [ebp - 0x58], xmm4
movaps xmm0, xmm4
mov eax, dword [eax + 0x14c]
mov dword [ebp - 0x4c], eax
mov eax, dword [0x1031e978]
test al, 1
jne 0x1003073f
or eax, 1
mov dword [0x1031e978], eax
mov dword [ebp - 4], 0x10
mov eax, dword [0x1031cd80]
mov dword [ebp - 0x14], eax
cmp eax, dword [0x1031cd84]
je 0x1003065e
mov ecx, dword [eax]
mov dword [ebp - 0x28], ecx
test ecx, ecx
je 0x10030650
mov edi, dword [ecx + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [edi + ecx], 0
jne 0x10030627
xor edx, edx
test ecx, ecx
je 0x10030650
movsx eax, byte [edi + edx]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x10030634
cmp esi, 0x72e242a1
je 0x10030671
mov eax, dword [ebp - 0x14]
add eax, 4
mov dword [ebp - 0x14], eax
cmp eax, dword [0x1031cd84]
jne 0x10030614
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x10320218], eax
jmp 0x10030744
mov eax, dword [ebp - 0x28]
xor edi, edi
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x14], edi
cmp dword [eax + 4], edi
jle 0x10030718
xor ecx, ecx
mov dword [ebp - 0x18], ecx
nop word [eax + eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x40], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x100306c4
cmp dword [ecx + 4], 0
jle 0x100306c4
push 0
mov edx, 0xf3e9a9ed
call fcn.1012b660
add esp, 4
test eax, eax
je 0x100306c1
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x24], edi
mov eax, dword [ebp - 0x28]
mov edi, dword [esi]
xor ecx, ecx
mov esi, 0x811c9dc5
nop dword [eax]
inc ecx
cmp byte [edi + ecx], 0
jne 0x100306d0
xor edx, edx
test ecx, ecx
je 0x100306fc
nop dword [eax]
movsx eax, byte [edi + edx]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x100306e0
cmp esi, 0xf3e9a9ed
je 0x10030728
mov eax, dword [ebp - 0x28]
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
inc edx
mov edi, dword [ebp - 0x24]
add ecx, 0x3c
mov dword [ebp - 0x14], edx
mov dword [ebp - 0x18], ecx
cmp edx, dword [eax + 4]
jl 0x10030690
mov eax, edi
mov dword [ebp - 4], 0xffffffff
mov dword [0x10320218], eax
jmp 0x10030744
mov eax, dword [ebp - 0x40]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x24]
mov dword [0x10320218], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x10030744
mov eax, dword [0x10320218]
mov ecx, dword [ebp - 0x4c]
cmp byte [ecx + eax], 0
mov eax, dword [0x10b33e60]
je 0x1003076c
add eax, 0x7a4232c8
xor eax, 0xfcb4fca8
mov eax, dword [eax + 0x154]
movss xmm2, dword [eax + 0x138]
jmp 0x10030784
add eax, 0x7a4232c8
xor eax, 0xfcb4fca8
mov eax, dword [eax + 0x154]
movss xmm2, dword [eax + 0x134]
mov eax, dword [0x10b33e60]
xor cl, cl
movss xmm3, dword [0x10270fb8]
add eax, 0x7a4232c8
xor eax, 0xfcb4fca8
movss dword [ebp - 0x34], xmm2
mov byte [ebp - 0x45], cl
mov eax, dword [eax + 0x150]
mov dword [ebp - 0x4c], eax
test eax, eax
je 0x10030b28
mov edx, dword [ebp - 0x2c]
mov eax, dword [edx + 0x1c]
mov eax, dword [eax + 0x30]
xor eax, edx
je 0x10030b28
mov eax, dword [0x1031e958]
test al, 1
jne 0x1003091f
or eax, 1
mov dword [0x1031e958], eax
mov dword [ebp - 4], 0x11
mov eax, dword [0x1031cd80]
mov dword [ebp - 0x14], eax
cmp eax, dword [0x1031cd84]
je 0x1003083d
mov ecx, dword [eax]
mov dword [ebp - 0x28], ecx
test ecx, ecx
je 0x1003082f
mov edi, dword [ecx + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [edi + ecx], 0
jne 0x10030806
xor edx, edx
test ecx, ecx
je 0x1003082f
movsx eax, byte [edi + edx]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x10030813
cmp esi, 0xcd2ed041
je 0x10030850
mov eax, dword [ebp - 0x14]
add eax, 4
mov dword [ebp - 0x14], eax
cmp eax, dword [0x1031cd84]
jne 0x100307f3
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x10320234], eax
jmp 0x10030924
mov eax, dword [ebp - 0x28]
xor edi, edi
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x14], edi
cmp dword [eax + 4], edi
jle 0x100308f8
xor ecx, ecx
mov dword [ebp - 0x18], ecx
nop dword [eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x40], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x100308a4
cmp dword [ecx + 4], 0
jle 0x100308a4
push 0
mov edx, 0xa2ccb41a
call fcn.1012b660
add esp, 4
test eax, eax
je 0x100308a1
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x24], edi
mov eax, dword [ebp - 0x28]
mov edi, dword [esi]
xor ecx, ecx
mov esi, 0x811c9dc5
nop dword [eax]
inc ecx
cmp byte [ecx + edi], 0
jne 0x100308b0
xor edx, edx
test ecx, ecx
je 0x100308dc
nop dword [eax]
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x100308c0
cmp esi, 0xa2ccb41a
je 0x10030908
mov eax, dword [ebp - 0x28]
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
inc edx
mov edi, dword [ebp - 0x24]
add ecx, 0x3c
mov dword [ebp - 0x14], edx
mov dword [ebp - 0x18], ecx
cmp edx, dword [eax + 4]
jl 0x10030870
mov eax, edi
mov dword [ebp - 4], 0xffffffff
mov dword [0x10320234], eax
jmp 0x10030924
mov eax, dword [ebp - 0x40]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x24]
mov dword [0x10320234], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x10030924
mov eax, dword [0x10320234]
mov ecx, dword [ebp - 0x4c]
movzx ecx, word [ecx + eax]
mov eax, dword [0x10b33e60]
add eax, 0x7a4232c8
mov dword [ebp - 0x4c], ecx
xor eax, 0xfcb4fca8
mov eax, dword [eax + 0x150]
mov dword [ebp - 0x70], eax
mov eax, dword [0x10323690]
test al, 1
jne 0x10030aa5
or eax, 1
mov dword [0x10323690], eax
mov dword [ebp - 4], 0x12
mov eax, dword [0x1031cd80]
mov dword [ebp - 0x14], eax
cmp eax, dword [0x1031cd84]
je 0x100309bc
mov ecx, dword [eax]
mov dword [ebp - 0x28], ecx
test ecx, ecx
je 0x100309ae
mov edi, dword [ecx + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + edi], 0
jne 0x10030985
xor edx, edx
test ecx, ecx
je 0x100309ae
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x10030992
cmp esi, 0xea7e6f79
je 0x100309d2
mov eax, dword [ebp - 0x14]
add eax, 4
mov dword [ebp - 0x14], eax
cmp eax, dword [0x1031cd84]
jne 0x10030972
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x4c]
mov dword [0x1032368c], eax
jmp 0x10030aaa
mov eax, dword [ebp - 0x28]
xor edi, edi
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x14], edi
cmp dword [eax + 4], edi
jle 0x10030a78
xor ecx, ecx
mov dword [ebp - 0x18], ecx
nop dword [eax + eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x40], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x10030a24
cmp dword [ecx + 4], 0
jle 0x10030a24
push 0
mov edx, 0x444e63a0
call fcn.1012b660
add esp, 4
test eax, eax
je 0x10030a21
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x24], edi
mov eax, dword [ebp - 0x28]
mov edi, dword [esi]
xor ecx, ecx
mov esi, 0x811c9dc5
nop dword [eax]
inc ecx
cmp byte [ecx + edi], 0
jne 0x10030a30
xor edx, edx
test ecx, ecx
je 0x10030a5c
nop dword [eax]
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x10030a40
cmp esi, 0x444e63a0
je 0x10030a8b
mov eax, dword [ebp - 0x28]
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
inc edx
mov edi, dword [ebp - 0x24]
add ecx, 0x3c
mov dword [ebp - 0x14], edx
mov dword [ebp - 0x18], ecx
cmp edx, dword [eax + 4]
jl 0x100309f0
mov eax, edi
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x4c]
mov dword [0x1032368c], eax
jmp 0x10030aaa
mov eax, dword [ebp - 0x40]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x24]
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x4c]
mov dword [0x1032368c], eax
jmp 0x10030aaa
mov eax, dword [0x1032368c]
mov edx, dword [ebp - 0x70]
cmp dword [edx + eax], 0
jle 0x10030aee
cmp cx, 0xb
je 0x10030ad7
cmp cx, 0x26
je 0x10030ad7
cmp cx, 9
je 0x10030ad7
cmp cx, 8
je 0x10030ad7
cmp cx, 0x27
je 0x10030ad7
cmp cx, 0x28
jne 0x10030aee
movss xmm0, dword [0x10271230]
movaps xmm1, xmm2
mulss xmm1, xmm3
comiss xmm0, xmm1
seta cl
jmp 0x10030af1
mov cl, byte [ebp - 0x45]
mov al, byte [ebp - 0x2d]
movaps xmm0, xmm2
mulss xmm0, dword [0x10270ed0]
mov dl, byte [ebp - 0x1d]
movss xmm2, dword [0x10271024]
minss xmm0, xmm2
mulss xmm0, xmm4
test al, al
jne 0x10030b1a
test dl, dl
je 0x10030b1e
test cl, cl
je 0x10030b36
movaps xmm4, xmm0
movss dword [ebp - 0x58], xmm4
jmp 0x10030b36
mov dl, byte [ebp - 0x1d]
mov al, byte [ebp - 0x2d]
movss xmm2, dword [0x10271024]
test al, al
je 0x10030b53
movss xmm1, dword [0x10270f88]
test cl, cl
jne 0x10030b4f
mulss xmm4, xmm1
movss dword [ebp - 0x58], xmm4
mulss xmm0, xmm1
test dl, dl
je 0x10030ba5
test cl, cl
jne 0x10030b64
mulss xmm4, xmm3
movss dword [ebp - 0x58], xmm4
mulss xmm0, xmm3
subss xmm0, dword [0x102710e8]
comiss xmm0, xmm5
jbe 0x10030ba5
subss xmm5, xmm0
movaps xmm0, xmm2
maxss xmm5, xmm7
mulss xmm5, dword [0x10270f64]
subss xmm0, xmm5
comiss xmm0, xmm7
jb 0x10030ba0
minss xmm0, xmm2
mulss xmm6, xmm0
movss dword [ebp - 0x38], xmm6
jmp 0x10030ba5
movss dword [ebp - 0x38], xmm7
mov eax, dword [0x10b33e60]
add eax, 0x7a4232c8
xor eax, 0xfcb4fca8
mov esi, dword [eax + 0x14c]
mov eax, dword [0x1032369c]
test al, 1
jne 0x10030bf6
or eax, 1
mov dword [0x1032369c], eax
mov ecx, esi
mov dword [ebp - 4], 0x13
call fcn.1000dd30
mov edx, 0x3a5ab60e
mov ecx, eax
call fcn.1012b930
mov ecx, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x103236a0], ecx
jmp 0x10030bfc
mov ecx, dword [0x103236a0]
mov eax, dword [0x10b33e60]
movss xmm1, dword [ebp - 0x38]
add eax, 0x7a4232c8
xor eax, 0xfcb4fca8
movss xmm3, dword [ebp - 0x50]
mov eax, dword [eax + 0x108]
mulss xmm1, dword [eax + 0x20]
mulss xmm1, dword [ebp - 0x58]
mulss xmm1, dword [esi + ecx]
minss xmm1, dword [ebp - 0x6c]
movaps xmm0, xmm1
mulss xmm1, dword [ebp - 0x5c]
mulss xmm0, dword [ebp - 0x64]
addss xmm3, xmm0
movss xmm0, dword [ebp - 0x54]
addss xmm0, xmm1
movaps xmm2, xmm3
movss dword [ebp - 0x50], xmm3
movaps xmm1, xmm0
movss dword [ebp - 0x54], xmm0
mulss xmm0, xmm1
movss dword [ebp - 0x4c], xmm1
movaps xmm1, xmm3
mulss xmm1, xmm2
movss dword [ebp - 0x40], xmm2
addss xmm0, xmm1
call fcn.1000d460
ucomiss xmm0, dword [0x10270e70]
lahf
test ah, 0x44
jnp 0x10030cae
movss xmm1, dword [ebp - 0x34]
comiss xmm0, xmm1
jbe 0x10030cae
movaps xmm3, xmm1
divss xmm3, xmm0
movaps xmm4, xmm3
mulss xmm3, dword [ebp - 0x4c]
mulss xmm4, dword [ebp - 0x40]
movss dword [ebp - 0x54], xmm3
movss dword [ebp - 0x50], xmm4
jmp 0x10030cb8
movss xmm3, dword [ebp - 0x54]
movss xmm4, dword [ebp - 0x50]
movss xmm1, dword [ebp - 0x3c]
movaps xmm2, xmm3
movaps xmm0, xmm4
mulss xmm2, xmm3
mulss xmm0, xmm4
mulss xmm1, xmm1
addss xmm2, xmm0
comiss xmm2, xmm1
jbe 0x10030d0c
movaps xmm0, xmm2
mov dword [ebp - 4], 0x14
call fcn.1000d460
mov dword [ebp - 4], 0xffffffff
movss xmm1, dword [ebp - 0x3c]
divss xmm1, xmm0
movss xmm4, dword [ebp - 0x50]
movss xmm3, dword [ebp - 0x54]
movaps xmm0, xmm1
mulss xmm4, xmm0
mulss xmm3, xmm1
mulss xmm3, xmm3
mulss xmm4, xmm4
addss xmm3, xmm4
movaps xmm0, xmm3
call fcn.1000d460
mov edi, dword [ebp - 0x60]
movss xmm0, dword [ebp - 0x68]
movss xmm2, dword [ebp - 0x44]
movss dword [edi + 0x24], xmm0
movss xmm0, dword [ebp - 0x1c]
movss dword [edi + 0x28], xmm2
movss dword [edi + 0x2c], xmm0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret