Function at 0x1002dab0
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 0x101d3cb3
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0xa8
push esi
push edi
mov eax, dword [0x1021b380]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [0x107001f0]
lea edx, [eax - 0x2a42fc37]
xor edx, 0xde9a561b
cmp dword [edx + 0x154], 0
je 0x100303f1
mov ecx, dword [0x1070020c]
add ecx, 0x5eba160d
xor ecx, 0xa5d9832d
cmp dword [ecx + 4], 3
jl 0x100303f1
mov ecx, dword [0x102cbe78]
add ecx, 0x7a35c7ad
xor ecx, 0xa377d4a2
cmp byte [ecx + 0x63d68], 0
jne 0x100303f1
mov ecx, dword [0x102b576c]
mov edx, dword [edx + 0x14c]
mov dword [ebp - 0x18], edx
test cl, 1
jne 0x1002dc9c
or ecx, 1
mov dword [0x102b576c], ecx
mov dword [ebp - 4], 0
mov ecx, dword [0x102b3e88]
mov edx, dword [0x102b3e8c]
mov dword [ebp - 0x1c], ecx
cmp ecx, edx
je 0x1002dbd4
mov ecx, dword [ecx]
mov dword [ebp - 0x44], ecx
test ecx, ecx
je 0x1002dbc7
mov ecx, dword [ecx + 0xc]
mov edi, 0x811c9dc5
mov dword [ebp - 0x14], ecx
xor edx, edx
inc edx
cmp byte [ecx + edx], 0
jne 0x1002db98
xor esi, esi
test edx, edx
je 0x1002dbc1
movsx ecx, byte [ecx + esi]
inc esi
xor ecx, edi
imul edi, ecx, 0x1000193
mov ecx, dword [ebp - 0x14]
cmp esi, edx
jb 0x1002dba5
cmp edi, 0x4e9f1122
je 0x1002dbeb
mov edx, dword [0x102b3e8c]
mov ecx, dword [ebp - 0x1c]
add ecx, 4
mov dword [ebp - 0x1c], ecx
cmp ecx, edx
jne 0x1002db82
xor edi, edi
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x18]
mov dword [0x102b701c], edi
jmp 0x1002dca2
mov ecx, dword [ebp - 0x44]
xor edi, edi
mov dword [ebp - 0x34], edi
mov dword [ebp - 0x1c], edi
cmp dword [ecx + 4], edi
jle 0x1002dbd6
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 0x1002dc35
cmp dword [ecx + 4], 0
jle 0x1002dc35
push 0
mov edx, 0x53630d14
call fcn.1012aec0
add esp, 4
test eax, eax
je 0x1002dc32
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 0x1002dc40
xor edx, edx
test ecx, ecx
je 0x1002dc6c
nop dword [eax]
movsx eax, byte [edi + edx]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1002dc50
cmp esi, 0x53630d14
je 0x1002dc89
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 0x1002dc92
jmp 0x1002dc00
mov eax, dword [ebp - 0x14]
mov edi, dword [eax + 0x2c]
add edi, dword [ebp - 0x34]
mov eax, dword [0x107001f0]
jmp 0x1002dbd6
mov edi, dword [0x102b701c]
movss xmm0, dword [edx + edi]
lea ecx, [eax - 0x2a42fc37]
xor ecx, 0xde9a561b
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 [0x102b57c8]
test cl, 1
jne 0x1002de3b
or ecx, 1
mov dword [0x102b57c8], ecx
mov dword [ebp - 4], 1
mov ecx, dword [0x102b3e88]
mov edx, dword [0x102b3e8c]
mov dword [ebp - 0x1c], ecx
cmp ecx, edx
je 0x1002dd52
nop
mov ecx, dword [ecx]
mov dword [ebp - 0x44], ecx
test ecx, ecx
je 0x1002dd45
mov ecx, dword [ecx + 0xc]
mov edi, 0x811c9dc5
mov dword [ebp - 0x14], ecx
xor edx, edx
inc edx
cmp byte [ecx + edx], 0
jne 0x1002dd16
xor esi, esi
test edx, edx
je 0x1002dd3f
movsx ecx, byte [ecx + esi]
inc esi
xor ecx, edi
imul edi, ecx, 0x1000193
mov ecx, dword [ebp - 0x14]
cmp esi, edx
jb 0x1002dd23
cmp edi, 0x72e242a1
je 0x1002dd66
mov edx, dword [0x102b3e8c]
mov ecx, dword [ebp - 0x1c]
add ecx, 4
mov dword [ebp - 0x1c], ecx
cmp ecx, edx
jne 0x1002dd00
xor edx, edx
mov dword [ebp - 4], 0xffffffff
mov dword [0x102b7068], edx
jmp 0x1002de41
mov ecx, dword [ebp - 0x44]
xor edi, edi
mov dword [ebp - 0x34], edi
mov dword [ebp - 0x1c], edi
cmp dword [ecx + 4], edi
jle 0x1002de0d
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 0x1002ddb5
cmp dword [ecx + 4], 0
jle 0x1002ddb5
push 0
mov edx, 0xf3e9a9ed
call fcn.1012aec0
add esp, 4
test eax, eax
je 0x1002ddb2
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 0x1002ddc0
xor edx, edx
test ecx, ecx
je 0x1002ddec
nop dword [eax]
movsx eax, byte [edi + edx]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1002ddd0
cmp esi, 0xf3e9a9ed
je 0x1002de1e
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 0x1002dd80
mov eax, dword [0x107001f0]
mov edx, edi
mov dword [ebp - 4], 0xffffffff
mov dword [0x102b7068], edx
jmp 0x1002de41
mov eax, dword [ebp - 0x14]
mov edx, dword [eax + 0x2c]
add edx, dword [ebp - 0x34]
mov eax, dword [0x107001f0]
mov dword [0x102b7068], edx
mov dword [ebp - 4], 0xffffffff
jmp 0x1002de41
mov edx, dword [0x102b7068]
mov ecx, dword [ebp - 0x18]
cmp byte [ecx + edx], 0
lea ecx, [eax - 0x2a42fc37]
je 0x1002de66
xor ecx, 0xde9a561b
mov ecx, dword [ecx + 0x154]
movss xmm0, dword [ecx + 0x138]
jmp 0x1002de7a
xor ecx, 0xde9a561b
mov ecx, dword [ecx + 0x154]
movss xmm0, dword [ecx + 0x134]
lea ecx, [eax - 0x2a42fc37]
movss dword [ebp - 0x44], xmm0
xor ecx, 0xde9a561b
cmp byte [0x1029fb58], 0
je 0x1002f025
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.1002d6b0
movss xmm2, dword [ebp - 0x78]
lea edx, [ebp - 0x14]
mulss xmm2, dword [0x1020772c]
lea ecx, [ebp - 0x1c]
call fcn.10126010
movss xmm2, dword [ebp - 0x7c]
lea edx, [ebp - 0x18]
mulss xmm2, dword [0x1020772c]
lea ecx, [ebp - 0x60]
call fcn.10126010
movss xmm2, dword [ebp - 0x74]
lea edx, [ebp - 0x24]
mulss xmm2, dword [0x1020772c]
lea ecx, [ebp - 0x28]
call fcn.10126010
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 [0x10207bc8]
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 [0x10208310]
mulss xmm1, xmm5
mulss xmm5, dword [0x10207bc8]
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 [0x10207770]
comiss xmm1, xmm0
jbe 0x1002e038
movaps xmm0, xmm1
mov dword [ebp - 4], 2
call fcn.1000d600
mov dword [ebp - 4], 0xffffffff
movss xmm1, dword [0x102077c4]
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 [0x1070006c]
add edx, 0x38a0adc4
xor edx, 0x32e2e51c
add edx, 0x188
je 0x1002eff3
mov ecx, dword [0x10bddd98]
mov eax, dword [0x107001f0]
test cl, 1
jne 0x1002e087
or ecx, 1
mov dword [0x10bddd98], ecx
lea ecx, [eax - 0x2a42fc37]
xor ecx, 0xde9a561b
mov ecx, dword [ecx + 0x298]
mov dword [0x10bddd94], ecx
cmp dword [edx + 0x94], 0x7fffffff
je 0x1002eff3
mov edx, dword [0x10bddd84]
test dl, 1
jne 0x1002e0c3
or edx, 1
lea ecx, [eax - 0x2a42fc37]
xor ecx, 0xde9a561b
mov dword [0x10bddd84], edx
mov ecx, dword [ecx + 0x22c]
mov dword [0x10bddd90], ecx
test dl, 2
jne 0x1002e0e6
add eax, 0xd5bd03c9
or edx, 2
xor eax, 0xde9a561b
mov dword [0x10bddd84], edx
mov eax, dword [eax + 0x230]
mov dword [0x10bddd7c], eax
movss xmm1, dword [ebp - 0x54]
movss xmm0, dword [ebp - 0x50]
mulss xmm1, xmm1
mulss xmm0, xmm0
addss xmm0, xmm1
call fcn.1000d600
mov ecx, dword [0x107001f0]
movaps xmm2, xmm0
comiss xmm2, dword [0x1020785c]
jb 0x1002e195
mov edx, dword [0x10bddd90]
mov eax, dword [edx + 0x1c]
mov eax, dword [eax + 0x2c]
xor eax, edx
mov edx, dword [0x10bddd7c]
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 - 0x2a42fc37]
movss xmm1, dword [ebp - 0x14]
xor eax, 0xde9a561b
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 0x1002e198
xorps xmm1, xmm1
mov eax, dword [0x10bddd74]
test al, 1
jne 0x1002e1bf
or eax, 1
mov dword [0x10bddd74], eax
lea eax, [ecx - 0x2a42fc37]
xor eax, 0xde9a561b
mov eax, dword [eax + 0x258]
mov dword [0x10bddd9c], eax
movss xmm2, dword [ebp - 0x1c]
ucomiss xmm2, xmm1
lahf
test ah, 0x44
jnp 0x1002e253
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.1000d600
addss xmm0, dword [0x102076cc]
movss xmm1, dword [0x1020785c]
mov ecx, dword [0x107001f0]
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 0x1002e2d8
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.1000d600
addss xmm0, dword [0x102076cc]
movss xmm1, dword [0x1020785c]
mov ecx, dword [0x107001f0]
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 0x1002e2dd
movss xmm2, dword [ebp - 0x2c]
lea eax, [ecx - 0x2a42fc37]
xor eax, 0xde9a561b
mov eax, dword [eax + 0x14c]
mov dword [ebp - 0x18], eax
mov eax, dword [0x102b57c8]
test al, 1
jne 0x1002e461
or eax, 1
mov dword [0x102b57c8], eax
mov dword [ebp - 4], 3
mov eax, dword [0x102b3e88]
mov dword [ebp - 0x44], eax
cmp eax, dword [0x102b3e8c]
je 0x1002e370
nop dword [eax]
mov edx, dword [eax]
mov dword [ebp - 0x2c], edx
test edx, edx
je 0x1002e362
mov eax, dword [edx + 0xc]
mov edi, 0x811c9dc5
mov dword [ebp - 0x14], eax
xor edx, edx
inc edx
cmp byte [edx + eax], 0
jne 0x1002e336
xor esi, esi
test edx, edx
je 0x1002e35f
movsx eax, byte [esi + eax]
inc esi
xor eax, edi
imul edi, eax, 0x1000193
mov eax, dword [ebp - 0x14]
cmp esi, edx
jb 0x1002e343
cmp edi, 0x72e242a1
je 0x1002e386
mov eax, dword [ebp - 0x44]
add eax, 4
mov dword [ebp - 0x44], eax
cmp eax, dword [0x102b3e8c]
jne 0x1002e320
mov esi, dword [ebp - 0x68]
xor eax, eax
mov dword [0x102b7068], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1002e466
mov eax, dword [ebp - 0x2c]
xor edi, edi
mov dword [ebp - 0x34], edi
mov dword [ebp - 0x1c], edi
cmp dword [eax + 4], edi
jle 0x1002e42e
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 0x1002e3d4
cmp dword [ecx + 4], 0
jle 0x1002e3d4
push 0
mov edx, 0xf3e9a9ed
call fcn.1012aec0
add esp, 4
test eax, eax
je 0x1002e3d1
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 0x1002e3e0
xor edx, edx
test ecx, ecx
je 0x1002e40c
nop dword [eax]
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1002e3f0
cmp esi, 0xf3e9a9ed
je 0x1002e441
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 0x1002e3a0
mov ecx, dword [0x107001f0]
mov esi, dword [ebp - 0x68]
mov eax, edi
mov dword [0x102b7068], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1002e466
mov eax, dword [ebp - 0x14]
mov ecx, dword [0x107001f0]
mov esi, dword [ebp - 0x68]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x34]
mov dword [0x102b7068], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1002e466
mov eax, dword [0x102b7068]
mov edx, dword [ebp - 0x18]
cmp byte [edx + eax], 0
lea eax, [ecx - 0x2a42fc37]
je 0x1002e48a
xor eax, 0xde9a561b
mov eax, dword [eax + 0x154]
movss xmm1, dword [eax + 0x138]
jmp 0x1002e49d
xor eax, 0xde9a561b
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.1000d600
movss xmm7, dword [0x1020785c]
movaps xmm4, xmm0
addss xmm0, dword [0x102076cc]
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 0x1002e52b
minss xmm4, dword [ebp - 0x58]
mov ecx, dword [0x10bddd9c]
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 [0x10bddd88]
movss dword [ebp - 0x44], xmm1
test al, 1
jne 0x1002e573
or eax, 1
mov dword [0x10bddd88], eax
mov eax, dword [0x107001f0]
add eax, 0xd5bd03c9
xor eax, 0xde9a561b
mov eax, dword [eax + 0x294]
mov dword [0x10bddd80], eax
jmp 0x1002e578
mov eax, dword [0x10bddd80]
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 0x1002ef7e
mov eax, dword [esi + 0x30]
maxss xmm5, xmm6
shr eax, 2
test al, 1
jne 0x1002e8b4
mov eax, dword [0x107001f0]
add eax, 0xd5bd03c9
xor eax, 0xde9a561b
mov eax, dword [eax + 0x14c]
mov dword [ebp - 0x5c], eax
mov eax, dword [0x102ba4e4]
test al, 1
jne 0x1002e71b
or eax, 1
mov dword [0x102ba4e4], eax
mov dword [ebp - 4], 4
mov eax, dword [0x102b3e88]
mov dword [ebp - 0x1c], eax
cmp eax, dword [0x102b3e8c]
je 0x1002e64a
nop dword [eax]
mov ecx, dword [eax]
mov dword [ebp - 0x38], ecx
test ecx, ecx
je 0x1002e63c
mov edi, dword [ecx + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + edi], 0
jne 0x1002e613
xor edx, edx
test ecx, ecx
je 0x1002e63c
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1002e620
cmp esi, 0x72e242a1
je 0x1002e65d
mov eax, dword [ebp - 0x1c]
add eax, 4
mov dword [ebp - 0x1c], eax
cmp eax, dword [0x102b3e8c]
jne 0x1002e600
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x102ba4e8], eax
jmp 0x1002e720
mov eax, dword [ebp - 0x38]
xor edi, edi
mov dword [ebp - 0x3c], edi
mov dword [ebp - 0x1c], edi
cmp dword [eax + 4], edi
jle 0x1002e6f4
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 0x1002e6aa
cmp dword [ecx + 4], 0
jle 0x1002e6aa
push 0
mov edx, 0x8b221170
call fcn.1012aec0
add esp, 4
test eax, eax
je 0x1002e6a7
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 0x1002e6b3
xor edx, edx
test ecx, ecx
je 0x1002e6dc
movsx eax, byte [edi + edx]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1002e6c0
cmp esi, 0x8b221170
je 0x1002e704
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 0x1002e676
mov eax, edi
mov dword [ebp - 4], 0xffffffff
mov dword [0x102ba4e8], eax
jmp 0x1002e720
mov eax, dword [ebp - 0x34]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x3c]
mov dword [0x102ba4e8], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1002e720
mov eax, dword [0x102ba4e8]
mov ecx, dword [ebp - 0x5c]
cmp byte [ecx + eax], 0
jne 0x1002e8b4
mov eax, dword [0x107001f0]
add eax, 0xd5bd03c9
xor eax, 0xde9a561b
mov eax, dword [eax + 0x14c]
mov dword [ebp - 0x34], eax
mov eax, dword [0x102b7078]
test al, 1
jne 0x1002e88c
or eax, 1
mov dword [0x102b7078], eax
mov dword [ebp - 4], 5
mov eax, dword [0x102b3e88]
mov dword [ebp - 0x1c], eax
cmp eax, dword [0x102b3e8c]
je 0x1002e7bb
mov ecx, dword [eax]
mov dword [ebp - 0x38], ecx
test ecx, ecx
je 0x1002e7ad
mov edi, dword [ecx + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [edi + ecx], 0
jne 0x1002e784
xor edx, edx
test ecx, ecx
je 0x1002e7ad
movsx eax, byte [edi + edx]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1002e791
cmp esi, 0x72e242a1
je 0x1002e7ce
mov eax, dword [ebp - 0x1c]
add eax, 4
mov dword [ebp - 0x1c], eax
cmp eax, dword [0x102b3e8c]
jne 0x1002e771
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x102b5780], eax
jmp 0x1002e891
mov eax, dword [ebp - 0x38]
xor edi, edi
mov dword [ebp - 0x3c], edi
mov dword [ebp - 0x1c], edi
cmp dword [eax + 4], edi
jle 0x1002e865
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 0x1002e81b
cmp dword [ecx + 4], 0
jle 0x1002e81b
push 0
mov edx, 0xa4a37590
call fcn.1012aec0
add esp, 4
test eax, eax
je 0x1002e818
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 0x1002e824
xor edx, edx
test ecx, ecx
je 0x1002e84d
movsx eax, byte [edi + edx]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1002e831
cmp esi, 0xa4a37590
je 0x1002e875
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 0x1002e7e7
mov eax, edi
mov dword [ebp - 4], 0xffffffff
mov dword [0x102b5780], eax
jmp 0x1002e891
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x3c]
mov dword [0x102b5780], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1002e891
mov eax, dword [0x102b5780]
mov ecx, dword [ebp - 0x34]
mov eax, dword [ecx + eax]
shr eax, 1
test al, 1
jne 0x1002e8b4
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 0x1002e8bc
jmp 0x1002e8b8
mov byte [ebp - 0x2d], 1
mov byte [ebp - 0x1d], 0
mov eax, dword [0x107001f0]
maxss xmm4, dword [0x10207adc]
add eax, 0xd5bd03c9
xor eax, 0xde9a561b
movss dword [ebp - 0x2c], xmm4
movaps xmm0, xmm4
mov eax, dword [eax + 0x14c]
mov dword [ebp - 0x64], eax
mov eax, dword [0x102b57c8]
test al, 1
jne 0x1002ea2b
or eax, 1
mov dword [0x102b57c8], eax
mov dword [ebp - 4], 6
mov eax, dword [0x102b3e88]
mov dword [ebp - 0x1c], eax
cmp eax, dword [0x102b3e8c]
je 0x1002e95a
mov ecx, dword [eax]
mov dword [ebp - 0x38], ecx
test ecx, ecx
je 0x1002e94c
mov edi, dword [ecx + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + edi], 0
jne 0x1002e923
xor edx, edx
test ecx, ecx
je 0x1002e94c
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1002e930
cmp esi, 0x72e242a1
je 0x1002e96d
mov eax, dword [ebp - 0x1c]
add eax, 4
mov dword [ebp - 0x1c], eax
cmp eax, dword [0x102b3e8c]
jne 0x1002e910
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x102b7068], eax
jmp 0x1002ea30
mov eax, dword [ebp - 0x38]
xor edi, edi
mov dword [ebp - 0x3c], edi
mov dword [ebp - 0x1c], edi
cmp dword [eax + 4], edi
jle 0x1002ea04
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 0x1002e9ba
cmp dword [ecx + 4], 0
jle 0x1002e9ba
push 0
mov edx, 0xf3e9a9ed
call fcn.1012aec0
add esp, 4
test eax, eax
je 0x1002e9b7
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 0x1002e9c3
xor edx, edx
test ecx, ecx
je 0x1002e9ec
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1002e9d0
cmp esi, 0xf3e9a9ed
je 0x1002ea14
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 0x1002e986
mov eax, edi
mov dword [ebp - 4], 0xffffffff
mov dword [0x102b7068], eax
jmp 0x1002ea30
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x3c]
mov dword [0x102b7068], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1002ea30
mov eax, dword [0x102b7068]
mov ecx, dword [ebp - 0x64]
cmp byte [ecx + eax], 0
mov eax, dword [0x107001f0]
je 0x1002ea58
add eax, 0xd5bd03c9
xor eax, 0xde9a561b
mov eax, dword [eax + 0x154]
movss xmm2, dword [eax + 0x138]
jmp 0x1002ea70
add eax, 0xd5bd03c9
xor eax, 0xde9a561b
mov eax, dword [eax + 0x154]
movss xmm2, dword [eax + 0x134]
mov eax, dword [0x107001f0]
xor cl, cl
movss xmm3, dword [0x102077f0]
add eax, 0xd5bd03c9
xor eax, 0xde9a561b
movss dword [ebp - 0x34], xmm2
mov byte [ebp - 0x45], cl
mov eax, dword [eax + 0x150]
mov dword [ebp - 0x5c], eax
test eax, eax
je 0x1002ee05
mov edx, dword [ebp - 0x18]
mov eax, dword [edx + 0x1c]
mov eax, dword [eax + 0x30]
xor eax, edx
je 0x1002ee05
mov eax, dword [0x102b57a8]
test al, 1
jne 0x1002ebfb
or eax, 1
mov dword [0x102b57a8], eax
mov dword [ebp - 4], 7
mov eax, dword [0x102b3e88]
mov dword [ebp - 0x18], eax
cmp eax, dword [0x102b3e8c]
je 0x1002eb2a
nop
mov ecx, dword [eax]
mov dword [ebp - 0x38], ecx
test ecx, ecx
je 0x1002eb1c
mov edi, dword [ecx + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [edi + ecx], 0
jne 0x1002eaf3
xor edx, edx
test ecx, ecx
je 0x1002eb1c
movsx eax, byte [edi + edx]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1002eb00
cmp esi, 0xcd2ed041
je 0x1002eb3d
mov eax, dword [ebp - 0x18]
add eax, 4
mov dword [ebp - 0x18], eax
cmp eax, dword [0x102b3e8c]
jne 0x1002eae0
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x102b7084], eax
jmp 0x1002ec00
mov eax, dword [ebp - 0x38]
xor edi, edi
mov dword [ebp - 0x3c], edi
mov dword [ebp - 0x18], edi
cmp dword [eax + 4], edi
jle 0x1002ebd4
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 0x1002eb8a
cmp dword [ecx + 4], 0
jle 0x1002eb8a
push 0
mov edx, 0xa2ccb41a
call fcn.1012aec0
add esp, 4
test eax, eax
je 0x1002eb87
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 0x1002eb93
xor edx, edx
test ecx, ecx
je 0x1002ebbc
movsx eax, byte [edi + edx]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1002eba0
cmp esi, 0xa2ccb41a
je 0x1002ebe4
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 0x1002eb56
mov eax, edi
mov dword [ebp - 4], 0xffffffff
mov dword [0x102b7084], eax
jmp 0x1002ec00
mov eax, dword [ebp - 0x64]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x3c]
mov dword [0x102b7084], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1002ec00
mov eax, dword [0x102b7084]
mov ecx, dword [ebp - 0x5c]
movzx ecx, word [ecx + eax]
mov eax, dword [0x107001f0]
add eax, 0xd5bd03c9
mov dword [ebp - 0x5c], ecx
xor eax, 0xde9a561b
mov eax, dword [eax + 0x150]
mov dword [ebp - 0x6c], eax
mov eax, dword [0x102ba4e0]
test al, 1
jne 0x1002ed85
or eax, 1
mov dword [0x102ba4e0], eax
mov dword [ebp - 4], 8
mov eax, dword [0x102b3e88]
mov dword [ebp - 0x18], eax
cmp eax, dword [0x102b3e8c]
je 0x1002ec9a
nop
mov ecx, dword [eax]
mov dword [ebp - 0x38], ecx
test ecx, ecx
je 0x1002ec8c
mov edi, dword [ecx + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + edi], 0
jne 0x1002ec63
xor edx, edx
test ecx, ecx
je 0x1002ec8c
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1002ec70
cmp esi, 0xea7e6f79
je 0x1002ecb0
mov eax, dword [ebp - 0x18]
add eax, 4
mov dword [ebp - 0x18], eax
cmp eax, dword [0x102b3e8c]
jne 0x1002ec50
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x5c]
mov dword [0x102ba4dc], eax
jmp 0x1002ed8a
mov eax, dword [ebp - 0x38]
xor edi, edi
mov dword [ebp - 0x3c], edi
mov dword [ebp - 0x18], edi
cmp dword [eax + 4], edi
jle 0x1002ed58
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 0x1002ed04
cmp dword [ecx + 4], 0
jle 0x1002ed04
push 0
mov edx, 0x444e63a0
call fcn.1012aec0
add esp, 4
test eax, eax
je 0x1002ed01
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 0x1002ed10
xor edx, edx
test ecx, ecx
je 0x1002ed3c
nop dword [eax]
movsx eax, byte [edi + edx]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1002ed20
cmp esi, 0x444e63a0
je 0x1002ed6b
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 0x1002ecd0
mov eax, edi
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x5c]
mov dword [0x102ba4dc], eax
jmp 0x1002ed8a
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 [0x102ba4dc], eax
jmp 0x1002ed8a
mov eax, dword [0x102ba4dc]
mov edx, dword [ebp - 0x6c]
cmp dword [edx + eax], 0
jle 0x1002edd3
cmp cx, 0xb
je 0x1002edb7
cmp cx, 0x26
je 0x1002edb7
cmp cx, 9
je 0x1002edb7
cmp cx, 8
je 0x1002edb7
cmp cx, 0x27
je 0x1002edb7
cmp cx, 0x28
jne 0x1002edd3
movss xmm0, dword [0x10207a68]
movaps xmm1, xmm2
mulss xmm1, xmm3
comiss xmm0, xmm1
movss xmm1, dword [ebp - 0x14]
seta cl
jmp 0x1002edd6
mov cl, byte [ebp - 0x45]
mov al, byte [ebp - 0x2d]
movaps xmm0, xmm2
mulss xmm0, dword [0x10207710]
mov dl, byte [ebp - 0x1d]
minss xmm0, xmm7
mulss xmm0, xmm4
test al, al
jne 0x1002edf7
test dl, dl
je 0x1002edfb
test cl, cl
je 0x1002ee0b
movaps xmm4, xmm0
movss dword [ebp - 0x2c], xmm4
jmp 0x1002ee0b
mov dl, byte [ebp - 0x1d]
mov al, byte [ebp - 0x2d]
test al, al
je 0x1002ee28
movss xmm2, dword [0x102077c4]
test cl, cl
jne 0x1002ee24
mulss xmm4, xmm2
movss dword [ebp - 0x2c], xmm4
mulss xmm0, xmm2
test dl, dl
je 0x1002ee7d
test cl, cl
jne 0x1002ee39
mulss xmm4, xmm3
movss dword [ebp - 0x2c], xmm4
mulss xmm0, xmm3
subss xmm0, dword [0x10207920]
comiss xmm0, xmm5
jbe 0x1002ee7d
subss xmm5, xmm0
movaps xmm0, xmm7
maxss xmm5, xmm6
mulss xmm5, dword [0x102077a4]
subss xmm0, xmm5
comiss xmm0, xmm6
jb 0x1002ee75
minss xmm0, xmm7
mulss xmm1, xmm0
movss dword [ebp - 0x44], xmm1
jmp 0x1002ee7d
movaps xmm1, xmm6
movss dword [ebp - 0x44], xmm6
mov eax, dword [0x107001f0]
add eax, 0xd5bd03c9
xor eax, 0xde9a561b
mov esi, dword [eax + 0x14c]
mov eax, dword [0x102ba4ec]
test al, 1
jne 0x1002eed3
or eax, 1
mov dword [0x102ba4ec], eax
mov ecx, esi
mov dword [ebp - 4], 9
call fcn.1000dd80
mov edx, 0x3a5ab60e
mov ecx, eax
call fcn.1012b190
mov ecx, eax
mov dword [ebp - 4], 0xffffffff
movss xmm1, dword [ebp - 0x44]
mov dword [0x102ba4f0], ecx
jmp 0x1002eed9
mov ecx, dword [0x102ba4f0]
mov eax, dword [0x107001f0]
add eax, 0xd5bd03c9
xor eax, 0xde9a561b
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.1000d600
ucomiss xmm0, dword [0x102076b4]
lahf
test ah, 0x44
jnp 0x1002ef7e
movss xmm1, dword [ebp - 0x34]
comiss xmm0, xmm1
jbe 0x1002ef7e
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 0x1002ef88
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 0x1002efdc
movaps xmm0, xmm1
mov dword [ebp - 4], 0xa
call fcn.1000d600
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.1000d600
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 [0x102b57c8]
test cl, 1
jne 0x1002f0c1
or ecx, 1
mov dword [0x102b57c8], ecx
mov dword [ebp - 4], 0xb
mov ecx, dword [0x102b3e88]
mov edx, dword [0x102b3e8c]
mov dword [ebp - 0x14], ecx
cmp ecx, edx
je 0x1002f0b2
mov ecx, dword [ecx]
mov dword [ebp - 0x18], ecx
test ecx, ecx
je 0x1002f0a5
mov ecx, dword [ecx + 0xc]
mov edi, 0x811c9dc5
mov dword [ebp - 0x40], ecx
xor edx, edx
inc edx
cmp byte [edx + ecx], 0
jne 0x1002f076
xor esi, esi
test edx, edx
je 0x1002f09f
movsx ecx, byte [esi + ecx]
inc esi
xor ecx, edi
imul edi, ecx, 0x1000193
mov ecx, dword [ebp - 0x40]
cmp esi, edx
jb 0x1002f083
cmp edi, 0x72e242a1
je 0x1002f0ed
mov edx, dword [0x102b3e8c]
mov ecx, dword [ebp - 0x14]
add ecx, 4
mov dword [ebp - 0x14], ecx
cmp ecx, edx
jne 0x1002f060
xor edx, edx
mov dword [0x102b7068], edx
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x4c]
cmp byte [ecx + edx], 0
lea ecx, [eax - 0x2a42fc37]
je 0x1002f1a4
xor ecx, 0xde9a561b
mov ecx, dword [ecx + 0x154]
movss xmm3, dword [ecx + 0x138]
jmp 0x1002f1b8
mov ecx, dword [ebp - 0x18]
xor edi, edi
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x14], edi
cmp dword [ecx + 4], edi
jle 0x1002f18a
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 0x1002f13b
cmp dword [ecx + 4], 0
jle 0x1002f13b
push 0
mov edx, 0xf3e9a9ed
call fcn.1012aec0
add esp, 4
test eax, eax
je 0x1002f138
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 0x1002f144
xor edx, edx
test ecx, ecx
je 0x1002f16d
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1002f151
cmp esi, 0xf3e9a9ed
je 0x1002f191
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 0x1002f106
mov eax, dword [0x107001f0]
mov edx, edi
jmp 0x1002f0b4
mov eax, dword [ebp - 0x40]
mov edx, dword [eax + 0x2c]
add edx, dword [ebp - 0x24]
mov eax, dword [0x107001f0]
jmp 0x1002f0b4
xor ecx, 0xde9a561b
mov ecx, dword [ecx + 0x154]
movss xmm3, dword [ecx + 0x134]
lea edi, [eax - 0x2a42fc37]
movss xmm1, dword [0x10207920]
xor edi, 0xde9a561b
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 [0x10207a5c]
addss xmm2, dword [0x10207a58]
comiss xmm2, dword [0x10207a58]
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 [0x10207724]
mulss xmm0, xmm3
movss dword [ebp - 0x24], xmm0
call fcn.1002d6b0
movss xmm2, dword [ebp - 0x84]
lea edx, [ebp - 0x6c]
mulss xmm2, dword [0x1020772c]
lea ecx, [ebp - 0x5c]
call fcn.10126010
movss xmm2, dword [ebp - 0x88]
lea edx, [ebp - 0x64]
mulss xmm2, dword [0x1020772c]
lea ecx, [ebp - 0x18]
call fcn.10126010
movss xmm2, dword [ebp - 0x80]
lea edx, [ebp - 0x44]
mulss xmm2, dword [0x1020772c]
lea ecx, [ebp - 0x1c]
call fcn.10126010
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 [0x10207bc8]
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 [0x10208310]
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 [0x10207bc8]
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 [0x102076ec]
mulss xmm1, xmm0
comiss xmm2, xmm1
jbe 0x1002f3f7
movaps xmm0, xmm2
mov dword [ebp - 4], 0xc
call fcn.1000d600
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 [0x1070006c]
add edx, 0x38a0adc4
xor edx, 0x32e2e51c
add edx, 0x188
je 0x100303d3
mov ecx, dword [0x10bddd98]
mov eax, dword [0x107001f0]
test cl, 1
jne 0x1002f446
or ecx, 1
mov dword [0x10bddd98], ecx
lea ecx, [eax - 0x2a42fc37]
xor ecx, 0xde9a561b
mov ecx, dword [ecx + 0x298]
mov dword [0x10bddd94], ecx
cmp dword [edx + 0x94], 0x7fffffff
je 0x100303d3
mov edx, dword [0x10bddd84]
test dl, 1
jne 0x1002f482
or edx, 1
lea ecx, [eax - 0x2a42fc37]
xor ecx, 0xde9a561b
mov dword [0x10bddd84], edx
mov ecx, dword [ecx + 0x22c]
mov dword [0x10bddd90], ecx
test dl, 2
jne 0x1002f4a5
add eax, 0xd5bd03c9
or edx, 2
xor eax, 0xde9a561b
mov dword [0x10bddd84], edx
mov eax, dword [eax + 0x230]
mov dword [0x10bddd7c], eax
movss xmm1, dword [ebp - 0x50]
movss xmm0, dword [ebp - 0x54]
mulss xmm0, xmm0
mulss xmm1, xmm1
addss xmm0, xmm1
call fcn.1000d600
mov ecx, dword [0x107001f0]
movaps xmm2, xmm0
comiss xmm2, dword [0x1020785c]
jb 0x1002f554
mov edx, dword [0x10bddd90]
mov eax, dword [edx + 0x1c]
mov eax, dword [eax + 0x2c]
xor eax, edx
mov edx, dword [0x10bddd7c]
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 - 0x2a42fc37]
movss xmm1, dword [ebp - 0x40]
xor eax, 0xde9a561b
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 0x1002f557
xorps xmm1, xmm1
mov eax, dword [0x10bddd74]
test al, 1
jne 0x1002f57e
or eax, 1
mov dword [0x10bddd74], eax
lea eax, [ecx - 0x2a42fc37]
xor eax, 0xde9a561b
mov eax, dword [eax + 0x258]
mov dword [0x10bddd9c], eax
movss xmm2, dword [ebp - 0x18]
ucomiss xmm2, xmm1
lahf
test ah, 0x44
jnp 0x1002f608
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.1000d600
addss xmm0, dword [0x102076cc]
movss xmm1, dword [0x1020785c]
mov ecx, dword [0x107001f0]
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 0x1002f687
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.1000d600
addss xmm0, dword [0x102076cc]
movss xmm1, dword [0x1020785c]
mov ecx, dword [0x107001f0]
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 0x1002f68c
movss xmm2, dword [ebp - 0x34]
lea eax, [ecx - 0x2a42fc37]
xor eax, 0xde9a561b
mov eax, dword [eax + 0x14c]
mov dword [ebp - 0x4c], eax
mov eax, dword [0x102b57c8]
test al, 1
jne 0x1002f811
or eax, 1
mov dword [0x102b57c8], eax
mov dword [ebp - 4], 0xd
mov eax, dword [0x102b3e88]
mov dword [ebp - 0x24], eax
cmp eax, dword [0x102b3e8c]
je 0x1002f720
nop dword [eax]
mov edx, dword [eax]
mov dword [ebp - 0x28], edx
test edx, edx
je 0x1002f712
mov eax, dword [edx + 0xc]
mov edi, 0x811c9dc5
mov dword [ebp - 0x40], eax
xor edx, edx
inc edx
cmp byte [edx + eax], 0
jne 0x1002f6e6
xor esi, esi
test edx, edx
je 0x1002f70f
movsx eax, byte [esi + eax]
inc esi
xor eax, edi
imul edi, eax, 0x1000193
mov eax, dword [ebp - 0x40]
cmp esi, edx
jb 0x1002f6f3
cmp edi, 0x72e242a1
je 0x1002f736
mov eax, dword [ebp - 0x24]
add eax, 4
mov dword [ebp - 0x24], eax
cmp eax, dword [0x102b3e8c]
jne 0x1002f6d0
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov edi, dword [ebp - 0x60]
mov dword [0x102b7068], eax
jmp 0x1002f816
mov eax, dword [ebp - 0x28]
xor edi, edi
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x14], edi
cmp dword [eax + 4], edi
jle 0x1002f7de
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 0x1002f784
cmp dword [ecx + 4], 0
jle 0x1002f784
push 0
mov edx, 0xf3e9a9ed
call fcn.1012aec0
add esp, 4
test eax, eax
je 0x1002f781
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 0x1002f790
xor edx, edx
test ecx, ecx
je 0x1002f7bc
nop dword [eax]
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1002f7a0
cmp esi, 0xf3e9a9ed
je 0x1002f7f1
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 0x1002f750
mov ecx, dword [0x107001f0]
mov eax, edi
mov dword [ebp - 4], 0xffffffff
mov edi, dword [ebp - 0x60]
mov dword [0x102b7068], eax
jmp 0x1002f816
mov eax, dword [ebp - 0x40]
mov ecx, dword [0x107001f0]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x24]
mov dword [ebp - 4], 0xffffffff
mov edi, dword [ebp - 0x60]
mov dword [0x102b7068], eax
jmp 0x1002f816
mov eax, dword [0x102b7068]
mov edx, dword [ebp - 0x4c]
cmp byte [edx + eax], 0
lea eax, [ecx - 0x2a42fc37]
je 0x1002f83a
xor eax, 0xde9a561b
mov eax, dword [eax + 0x154]
movss xmm0, dword [eax + 0x138]
jmp 0x1002f84d
xor eax, 0xde9a561b
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.1000d600
movaps xmm4, xmm0
xorps xmm7, xmm7
movss xmm0, dword [0x1020785c]
movaps xmm1, xmm4
addss xmm1, dword [0x102076cc]
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 0x1002f8db
minss xmm4, dword [ebp - 0x3c]
mov ecx, dword [0x10bddd9c]
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 [0x10bddd88]
movss dword [ebp - 0x38], xmm6
test al, 1
jne 0x1002f923
or eax, 1
mov dword [0x10bddd88], eax
mov eax, dword [0x107001f0]
add eax, 0xd5bd03c9
xor eax, 0xde9a561b
mov eax, dword [eax + 0x294]
mov dword [0x10bddd80], eax
jmp 0x1002f928
mov eax, dword [0x10bddd80]
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 0x10030363
mov eax, dword [edi + 0x30]
maxss xmm5, xmm7
shr eax, 2
test al, 1
jne 0x1002fc64
mov eax, dword [0x107001f0]
add eax, 0xd5bd03c9
xor eax, 0xde9a561b
mov eax, dword [eax + 0x14c]
mov dword [ebp - 0x4c], eax
mov eax, dword [0x102ba4e4]
test al, 1
jne 0x1002facb
or eax, 1
mov dword [0x102ba4e4], eax
mov dword [ebp - 4], 0xe
mov eax, dword [0x102b3e88]
mov dword [ebp - 0x14], eax
cmp eax, dword [0x102b3e8c]
je 0x1002f9fa
nop
mov ecx, dword [eax]
mov dword [ebp - 0x28], ecx
test ecx, ecx
je 0x1002f9ec
mov edi, dword [ecx + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [edi + ecx], 0
jne 0x1002f9c3
xor edx, edx
test ecx, ecx
je 0x1002f9ec
movsx eax, byte [edi + edx]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1002f9d0
cmp esi, 0x72e242a1
je 0x1002fa0d
mov eax, dword [ebp - 0x14]
add eax, 4
mov dword [ebp - 0x14], eax
cmp eax, dword [0x102b3e8c]
jne 0x1002f9b0
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x102ba4e8], eax
jmp 0x1002fad0
mov eax, dword [ebp - 0x28]
xor edi, edi
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x14], edi
cmp dword [eax + 4], edi
jle 0x1002faa4
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 0x1002fa5a
cmp dword [ecx + 4], 0
jle 0x1002fa5a
push 0
mov edx, 0x8b221170
call fcn.1012aec0
add esp, 4
test eax, eax
je 0x1002fa57
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 0x1002fa63
xor edx, edx
test ecx, ecx
je 0x1002fa8c
movsx eax, byte [edi + edx]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1002fa70
cmp esi, 0x8b221170
je 0x1002fab4
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 0x1002fa26
mov eax, edi
mov dword [ebp - 4], 0xffffffff
mov dword [0x102ba4e8], eax
jmp 0x1002fad0
mov eax, dword [ebp - 0x40]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x24]
mov dword [0x102ba4e8], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1002fad0
mov eax, dword [0x102ba4e8]
mov ecx, dword [ebp - 0x4c]
cmp byte [ecx + eax], 0
jne 0x1002fc64
mov eax, dword [0x107001f0]
add eax, 0xd5bd03c9
xor eax, 0xde9a561b
mov eax, dword [eax + 0x14c]
mov dword [ebp - 0x4c], eax
mov eax, dword [0x102b7078]
test al, 1
jne 0x1002fc3c
or eax, 1
mov dword [0x102b7078], eax
mov dword [ebp - 4], 0xf
mov eax, dword [0x102b3e88]
mov dword [ebp - 0x14], eax
cmp eax, dword [0x102b3e8c]
je 0x1002fb6b
mov ecx, dword [eax]
mov dword [ebp - 0x28], ecx
test ecx, ecx
je 0x1002fb5d
mov edi, dword [ecx + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [edi + ecx], 0
jne 0x1002fb34
xor edx, edx
test ecx, ecx
je 0x1002fb5d
movsx eax, byte [edi + edx]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1002fb41
cmp esi, 0x72e242a1
je 0x1002fb7e
mov eax, dword [ebp - 0x14]
add eax, 4
mov dword [ebp - 0x14], eax
cmp eax, dword [0x102b3e8c]
jne 0x1002fb21
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x102b5780], eax
jmp 0x1002fc41
mov eax, dword [ebp - 0x28]
xor edi, edi
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x14], edi
cmp dword [eax + 4], edi
jle 0x1002fc15
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 0x1002fbcb
cmp dword [ecx + 4], 0
jle 0x1002fbcb
push 0
mov edx, 0xa4a37590
call fcn.1012aec0
add esp, 4
test eax, eax
je 0x1002fbc8
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 0x1002fbd4
xor edx, edx
test ecx, ecx
je 0x1002fbfd
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1002fbe1
cmp esi, 0xa4a37590
je 0x1002fc25
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 0x1002fb97
mov eax, edi
mov dword [ebp - 4], 0xffffffff
mov dword [0x102b5780], eax
jmp 0x1002fc41
mov eax, dword [ebp - 0x40]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x24]
mov dword [0x102b5780], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1002fc41
mov eax, dword [0x102b5780]
mov ecx, dword [ebp - 0x4c]
mov eax, dword [ecx + eax]
shr eax, 1
test al, 1
jne 0x1002fc64
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 0x1002fc6c
jmp 0x1002fc68
mov byte [ebp - 0x2d], 1
mov byte [ebp - 0x1d], 0
mov eax, dword [0x107001f0]
maxss xmm4, dword [0x10207adc]
add eax, 0xd5bd03c9
xor eax, 0xde9a561b
movss dword [ebp - 0x58], xmm4
movaps xmm0, xmm4
mov eax, dword [eax + 0x14c]
mov dword [ebp - 0x4c], eax
mov eax, dword [0x102b57c8]
test al, 1
jne 0x1002fdef
or eax, 1
mov dword [0x102b57c8], eax
mov dword [ebp - 4], 0x10
mov eax, dword [0x102b3e88]
mov dword [ebp - 0x14], eax
cmp eax, dword [0x102b3e8c]
je 0x1002fd0e
mov ecx, dword [eax]
mov dword [ebp - 0x28], ecx
test ecx, ecx
je 0x1002fd00
mov edi, dword [ecx + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [edi + ecx], 0
jne 0x1002fcd7
xor edx, edx
test ecx, ecx
je 0x1002fd00
movsx eax, byte [edi + edx]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1002fce4
cmp esi, 0x72e242a1
je 0x1002fd21
mov eax, dword [ebp - 0x14]
add eax, 4
mov dword [ebp - 0x14], eax
cmp eax, dword [0x102b3e8c]
jne 0x1002fcc4
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x102b7068], eax
jmp 0x1002fdf4
mov eax, dword [ebp - 0x28]
xor edi, edi
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x14], edi
cmp dword [eax + 4], edi
jle 0x1002fdc8
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 0x1002fd74
cmp dword [ecx + 4], 0
jle 0x1002fd74
push 0
mov edx, 0xf3e9a9ed
call fcn.1012aec0
add esp, 4
test eax, eax
je 0x1002fd71
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 0x1002fd80
xor edx, edx
test ecx, ecx
je 0x1002fdac
nop dword [eax]
movsx eax, byte [edi + edx]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1002fd90
cmp esi, 0xf3e9a9ed
je 0x1002fdd8
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 0x1002fd40
mov eax, edi
mov dword [ebp - 4], 0xffffffff
mov dword [0x102b7068], eax
jmp 0x1002fdf4
mov eax, dword [ebp - 0x40]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x24]
mov dword [0x102b7068], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1002fdf4
mov eax, dword [0x102b7068]
mov ecx, dword [ebp - 0x4c]
cmp byte [ecx + eax], 0
mov eax, dword [0x107001f0]
je 0x1002fe1c
add eax, 0xd5bd03c9
xor eax, 0xde9a561b
mov eax, dword [eax + 0x154]
movss xmm2, dword [eax + 0x138]
jmp 0x1002fe34
add eax, 0xd5bd03c9
xor eax, 0xde9a561b
mov eax, dword [eax + 0x154]
movss xmm2, dword [eax + 0x134]
mov eax, dword [0x107001f0]
xor cl, cl
movss xmm3, dword [0x102077f0]
add eax, 0xd5bd03c9
xor eax, 0xde9a561b
movss dword [ebp - 0x34], xmm2
mov byte [ebp - 0x45], cl
mov eax, dword [eax + 0x150]
mov dword [ebp - 0x4c], eax
test eax, eax
je 0x100301d8
mov edx, dword [ebp - 0x2c]
mov eax, dword [edx + 0x1c]
mov eax, dword [eax + 0x30]
xor eax, edx
je 0x100301d8
mov eax, dword [0x102b57a8]
test al, 1
jne 0x1002ffcf
or eax, 1
mov dword [0x102b57a8], eax
mov dword [ebp - 4], 0x11
mov eax, dword [0x102b3e88]
mov dword [ebp - 0x14], eax
cmp eax, dword [0x102b3e8c]
je 0x1002feed
mov ecx, dword [eax]
mov dword [ebp - 0x28], ecx
test ecx, ecx
je 0x1002fedf
mov edi, dword [ecx + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [edi + ecx], 0
jne 0x1002feb6
xor edx, edx
test ecx, ecx
je 0x1002fedf
movsx eax, byte [edi + edx]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1002fec3
cmp esi, 0xcd2ed041
je 0x1002ff00
mov eax, dword [ebp - 0x14]
add eax, 4
mov dword [ebp - 0x14], eax
cmp eax, dword [0x102b3e8c]
jne 0x1002fea3
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x102b7084], eax
jmp 0x1002ffd4
mov eax, dword [ebp - 0x28]
xor edi, edi
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x14], edi
cmp dword [eax + 4], edi
jle 0x1002ffa8
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 0x1002ff54
cmp dword [ecx + 4], 0
jle 0x1002ff54
push 0
mov edx, 0xa2ccb41a
call fcn.1012aec0
add esp, 4
test eax, eax
je 0x1002ff51
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 0x1002ff60
xor edx, edx
test ecx, ecx
je 0x1002ff8c
nop dword [eax]
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1002ff70
cmp esi, 0xa2ccb41a
je 0x1002ffb8
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 0x1002ff20
mov eax, edi
mov dword [ebp - 4], 0xffffffff
mov dword [0x102b7084], eax
jmp 0x1002ffd4
mov eax, dword [ebp - 0x40]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x24]
mov dword [0x102b7084], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1002ffd4
mov eax, dword [0x102b7084]
mov ecx, dword [ebp - 0x4c]
movzx ecx, word [ecx + eax]
mov eax, dword [0x107001f0]
add eax, 0xd5bd03c9
mov dword [ebp - 0x4c], ecx
xor eax, 0xde9a561b
mov eax, dword [eax + 0x150]
mov dword [ebp - 0x70], eax
mov eax, dword [0x102ba4e0]
test al, 1
jne 0x10030155
or eax, 1
mov dword [0x102ba4e0], eax
mov dword [ebp - 4], 0x12
mov eax, dword [0x102b3e88]
mov dword [ebp - 0x14], eax
cmp eax, dword [0x102b3e8c]
je 0x1003006c
mov ecx, dword [eax]
mov dword [ebp - 0x28], ecx
test ecx, ecx
je 0x1003005e
mov edi, dword [ecx + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + edi], 0
jne 0x10030035
xor edx, edx
test ecx, ecx
je 0x1003005e
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x10030042
cmp esi, 0xea7e6f79
je 0x10030082
mov eax, dword [ebp - 0x14]
add eax, 4
mov dword [ebp - 0x14], eax
cmp eax, dword [0x102b3e8c]
jne 0x10030022
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x4c]
mov dword [0x102ba4dc], eax
jmp 0x1003015a
mov eax, dword [ebp - 0x28]
xor edi, edi
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x14], edi
cmp dword [eax + 4], edi
jle 0x10030128
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 0x100300d4
cmp dword [ecx + 4], 0
jle 0x100300d4
push 0
mov edx, 0x444e63a0
call fcn.1012aec0
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, 0x444e63a0
je 0x1003013b
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 eax, edi
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x4c]
mov dword [0x102ba4dc], eax
jmp 0x1003015a
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 [0x102ba4dc], eax
jmp 0x1003015a
mov eax, dword [0x102ba4dc]
mov edx, dword [ebp - 0x70]
cmp dword [edx + eax], 0
jle 0x1003019e
cmp cx, 0xb
je 0x10030187
cmp cx, 0x26
je 0x10030187
cmp cx, 9
je 0x10030187
cmp cx, 8
je 0x10030187
cmp cx, 0x27
je 0x10030187
cmp cx, 0x28
jne 0x1003019e
movss xmm0, dword [0x10207a68]
movaps xmm1, xmm2
mulss xmm1, xmm3
comiss xmm0, xmm1
seta cl
jmp 0x100301a1
mov cl, byte [ebp - 0x45]
mov al, byte [ebp - 0x2d]
movaps xmm0, xmm2
mulss xmm0, dword [0x10207710]
mov dl, byte [ebp - 0x1d]
movss xmm2, dword [0x1020785c]
minss xmm0, xmm2
mulss xmm0, xmm4
test al, al
jne 0x100301ca
test dl, dl
je 0x100301ce
test cl, cl
je 0x100301e6
movaps xmm4, xmm0
movss dword [ebp - 0x58], xmm4
jmp 0x100301e6
mov dl, byte [ebp - 0x1d]
mov al, byte [ebp - 0x2d]
movss xmm2, dword [0x1020785c]
test al, al
je 0x10030203
movss xmm1, dword [0x102077c4]
test cl, cl
jne 0x100301ff
mulss xmm4, xmm1
movss dword [ebp - 0x58], xmm4
mulss xmm0, xmm1
test dl, dl
je 0x10030255
test cl, cl
jne 0x10030214
mulss xmm4, xmm3
movss dword [ebp - 0x58], xmm4
mulss xmm0, xmm3
subss xmm0, dword [0x10207920]
comiss xmm0, xmm5
jbe 0x10030255
subss xmm5, xmm0
movaps xmm0, xmm2
maxss xmm5, xmm7
mulss xmm5, dword [0x102077a4]
subss xmm0, xmm5
comiss xmm0, xmm7
jb 0x10030250
minss xmm0, xmm2
mulss xmm6, xmm0
movss dword [ebp - 0x38], xmm6
jmp 0x10030255
movss dword [ebp - 0x38], xmm7
mov eax, dword [0x107001f0]
add eax, 0xd5bd03c9
xor eax, 0xde9a561b
mov esi, dword [eax + 0x14c]
mov eax, dword [0x102ba4ec]
test al, 1
jne 0x100302a6
or eax, 1
mov dword [0x102ba4ec], eax
mov ecx, esi
mov dword [ebp - 4], 0x13
call fcn.1000dd80
mov edx, 0x3a5ab60e
mov ecx, eax
call fcn.1012b190
mov ecx, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x102ba4f0], ecx
jmp 0x100302ac
mov ecx, dword [0x102ba4f0]
mov eax, dword [0x107001f0]
movss xmm1, dword [ebp - 0x38]
add eax, 0xd5bd03c9
xor eax, 0xde9a561b
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.1000d600
ucomiss xmm0, dword [0x102076b4]
lahf
test ah, 0x44
jnp 0x1003035e
movss xmm1, dword [ebp - 0x34]
comiss xmm0, xmm1
jbe 0x1003035e
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 0x10030368
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 0x100303bc
movaps xmm0, xmm2
mov dword [ebp - 4], 0x14
call fcn.1000d600
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.1000d600
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