412e71:	51                   	push   %ecx
412e72:	83 c0 04             	add    $0x4,%eax
412e75:	8d 8d 5c ff ff ff    	lea    -0xa4(%ebp),%ecx
412e7b:	50                   	push   %eax
412e7c:	e8 7f 01 ff ff       	call   0x403000
412e81:	8b 4d ec             	mov    -0x14(%ebp),%ecx
412e84:	83 cf 20             	or     $0x20,%edi
412e87:	89 7d a0             	mov    %edi,-0x60(%ebp)
412e8a:	83 f9 08             	cmp    $0x8,%ecx
412e8d:	72 32                	jb     0x412ec1
412e8f:	8b 55 d8             	mov    -0x28(%ebp),%edx
412e92:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
412e99:	8b c2                	mov    %edx,%eax
412e9b:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
412ea1:	72 14                	jb     0x412eb7
412ea3:	8b 50 fc             	mov    -0x4(%eax),%edx
412ea6:	83 c1 23             	add    $0x23,%ecx
412ea9:	2b c2                	sub    %edx,%eax
412eab:	83 c0 fc             	add    $0xfffffffc,%eax
412eae:	83 f8 1f             	cmp    $0x1f,%eax
412eb1:	0f 87 87 04 00 00    	ja     0x41333e
412eb7:	51                   	push   %ecx
412eb8:	52                   	push   %edx
412eb9:	e8 fa 6c 00 00       	call   0x419bb8
412ebe:	83 c4 08             	add    $0x8,%esp
412ec1:	0f 10 85 5c ff ff ff 	movups -0xa4(%ebp),%xmm0
412ec8:	0f 11 45 d8          	movups %xmm0,-0x28(%ebp)
412ecc:	f3 0f 7e 85 6c ff ff 	movq   -0x94(%ebp),%xmm0
412ed3:	ff
412ed4:	66 0f d6 45 e8       	movq   %xmm0,-0x18(%ebp)
412ed9:	83 7d e8 00          	cmpl   $0x0,-0x18(%ebp)
412edd:	0f 85 5e 01 00 00    	jne    0x413041
412ee3:	8b 45 98             	mov    -0x68(%ebp),%eax
412ee6:	8b 48 08             	mov    0x8(%eax),%ecx
412ee9:	85 c9                	test   %ecx,%ecx
412eeb:	75 4a                	jne    0x412f37
412eed:	8b 35 24 72 45 00    	mov    0x457224,%esi
412ef3:	85 f6                	test   %esi,%esi
412ef5:	74 36                	je     0x412f2d
412ef7:	83 7d d4 08          	cmpl   $0x8,-0x2c(%ebp)
412efb:	8d 45 c0             	lea    -0x40(%ebp),%eax
412efe:	8b ce                	mov    %esi,%ecx
412f00:	0f 43 45 c0          	cmovae -0x40(%ebp),%eax
412f04:	50                   	push   %eax
412f05:	68 e8 f4 44 00       	push   $0x44f4e8
412f0a:	68 54 9f 44 00       	push   $0x449f54
412f0f:	68 54 9f 44 00       	push   $0x449f54
412f14:	68 7c f2 44 00       	push   $0x44f27c
412f19:	68 24 ea 44 00       	push   $0x44ea24
412f1e:	6a 32                	push   $0x32
412f20:	ff 15 5c e2 43 00    	call   *0x43e25c
412f26:	ff d6                	call   *%esi
412f28:	83 c4 1c             	add    $0x1c,%esp
412f2b:	eb 3a                	jmp    0x412f67
412f2d:	8b 0d 28 72 45 00    	mov    0x457228,%ecx
412f33:	85 c9                	test   %ecx,%ecx
412f35:	74 30                	je     0x412f67
412f37:	83 7d d4 08          	cmpl   $0x8,-0x2c(%ebp)
412f3b:	8d 45 c0             	lea    -0x40(%ebp),%eax
412f3e:	8b 31                	mov    (%ecx),%esi
412f40:	0f 43 45 c0          	cmovae -0x40(%ebp),%eax
412f44:	50                   	push   %eax
412f45:	68 e8 f4 44 00       	push   $0x44f4e8
412f4a:	8b 76 34             	mov    0x34(%esi),%esi
412f4d:	68 7c f2 44 00       	push   $0x44f27c
412f52:	68 54 9f 44 00       	push   $0x449f54
412f57:	6a 32                	push   $0x32
412f59:	51                   	push   %ecx
412f5a:	8b ce                	mov    %esi,%ecx
412f5c:	ff 15 5c e2 43 00    	call   *0x43e25c
412f62:	ff d6                	call   *%esi
412f64:	83 c4 18             	add    $0x18,%esp
412f67:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
412f6b:	8b 4d bc             	mov    -0x44(%ebp),%ecx
412f6e:	83 f9 08             	cmp    $0x8,%ecx
412f71:	72 32                	jb     0x412fa5
412f73:	8b 55 a8             	mov    -0x58(%ebp),%edx
412f76:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
412f7d:	8b c2                	mov    %edx,%eax
412f7f:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
412f85:	72 14                	jb     0x412f9b
412f87:	8b 50 fc             	mov    -0x4(%eax),%edx
412f8a:	83 c1 23             	add    $0x23,%ecx
412f8d:	2b c2                	sub    %edx,%eax
412f8f:	83 c0 fc             	add    $0xfffffffc,%eax
412f92:	83 f8 1f             	cmp    $0x1f,%eax
412f95:	0f 87 a3 03 00 00    	ja     0x41333e
412f9b:	51                   	push   %ecx
412f9c:	52                   	push   %edx
412f9d:	e8 16 6c 00 00       	call   0x419bb8
412fa2:	83 c4 08             	add    $0x8,%esp
412fa5:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
412fa9:	8b 4d ec             	mov    -0x14(%ebp),%ecx
412fac:	83 f9 08             	cmp    $0x8,%ecx
412faf:	72 32                	jb     0x412fe3
412fb1:	8b 55 d8             	mov    -0x28(%ebp),%edx
412fb4:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
412fbb:	8b c2                	mov    %edx,%eax
412fbd:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
412fc3:	72 14                	jb     0x412fd9
412fc5:	8b 50 fc             	mov    -0x4(%eax),%edx
412fc8:	83 c1 23             	add    $0x23,%ecx
412fcb:	2b c2                	sub    %edx,%eax
412fcd:	83 c0 fc             	add    $0xfffffffc,%eax
412fd0:	83 f8 1f             	cmp    $0x1f,%eax
412fd3:	0f 87 65 03 00 00    	ja     0x41333e
412fd9:	51                   	push   %ecx
412fda:	52                   	push   %edx
412fdb:	e8 d8 6b 00 00       	call   0x419bb8
412fe0:	83 c4 08             	add    $0x8,%esp
412fe3:	33 c0                	xor    %eax,%eax
412fe5:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
412fec:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
412fef:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
412ff6:	c7 45 ec 07 00 00 00 	movl   $0x7,-0x14(%ebp)
412ffd:	66 89 45 d8          	mov    %ax,-0x28(%ebp)
413001:	83 f9 08             	cmp    $0x8,%ecx
413004:	0f 82 ff 01 00 00    	jb     0x413209
41300a:	8b 55 c0             	mov    -0x40(%ebp),%edx
41300d:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
413014:	8b c2                	mov    %edx,%eax
413016:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
41301c:	72 14                	jb     0x413032
41301e:	8b 50 fc             	mov    -0x4(%eax),%edx
413021:	83 c1 23             	add    $0x23,%ecx
413024:	2b c2                	sub    %edx,%eax
413026:	83 c0 fc             	add    $0xfffffffc,%eax
413029:	83 f8 1f             	cmp    $0x1f,%eax
41302c:	0f 87 0c 03 00 00    	ja     0x41333e
413032:	51                   	push   %ecx
413033:	52                   	push   %edx
413034:	e8 7f 6b 00 00       	call   0x419bb8
413039:	83 c4 08             	add    $0x8,%esp
41303c:	e9 c8 01 00 00       	jmp    0x413209
413041:	8b 4d 98             	mov    -0x68(%ebp),%ecx
413044:	8d 45 d8             	lea    -0x28(%ebp),%eax
413047:	50                   	push   %eax
413048:	8d 85 50 ff ff ff    	lea    -0xb0(%ebp),%eax
41304e:	50                   	push   %eax
41304f:	e8 fc 8b ff ff       	call   0x40bc50
413054:	8b 85 58 ff ff ff    	mov    -0xa8(%ebp),%eax
41305a:	80 78 0d 00          	cmpb   $0x0,0xd(%eax)
41305e:	0f 85 dd 01 00 00    	jne    0x413241
413064:	83 78 24 08          	cmpl   $0x8,0x24(%eax)
413068:	8d 50 10             	lea    0x10(%eax),%edx
41306b:	72 03                	jb     0x413070
41306d:	8b 50 10             	mov    0x10(%eax),%edx
413070:	ff 70 20             	push   0x20(%eax)
413073:	8b 7d ec             	mov    -0x14(%ebp),%edi
413076:	8d 4d d8             	lea    -0x28(%ebp),%ecx
413079:	8b 75 d8             	mov    -0x28(%ebp),%esi
41307c:	83 ff 08             	cmp    $0x8,%edi
41307f:	52                   	push   %edx
413080:	8b 55 e8             	mov    -0x18(%ebp),%edx
413083:	0f 43 ce             	cmovae %esi,%ecx
413086:	e8 f5 1f ff ff       	call   0x405080
41308b:	c1 e8 1f             	shr    $0x1f,%eax
41308e:	83 c4 08             	add    $0x8,%esp
413091:	84 c0                	test   %al,%al
413093:	0f 85 a5 01 00 00    	jne    0x41323e
413099:	8b 4d 98             	mov    -0x68(%ebp),%ecx
41309c:	8b 85 58 ff ff ff    	mov    -0xa8(%ebp),%eax
4130a2:	3b 01                	cmp    (%ecx),%eax
4130a4:	0f 84 94 01 00 00    	je     0x41323e
4130aa:	8b 49 08             	mov    0x8(%ecx),%ecx
4130ad:	85 c9                	test   %ecx,%ecx
4130af:	75 50                	jne    0x413101
4130b1:	8b 0d 24 72 45 00    	mov    0x457224,%ecx
4130b7:	89 8d 78 ff ff ff    	mov    %ecx,-0x88(%ebp)
4130bd:	85 c9                	test   %ecx,%ecx
4130bf:	74 36                	je     0x4130f7
4130c1:	83 ff 08             	cmp    $0x8,%edi
4130c4:	8d 45 d8             	lea    -0x28(%ebp),%eax
4130c7:	0f 43 c6             	cmovae %esi,%eax
4130ca:	50                   	push   %eax
4130cb:	68 30 f5 44 00       	push   $0x44f530
4130d0:	68 54 9f 44 00       	push   $0x449f54
4130d5:	68 54 9f 44 00       	push   $0x449f54
4130da:	68 7c f2 44 00       	push   $0x44f27c
4130df:	68 24 ea 44 00       	push   $0x44ea24
4130e4:	6a 32                	push   $0x32
4130e6:	ff 15 5c e2 43 00    	call   *0x43e25c
4130ec:	ff 95 78 ff ff ff    	call   *-0x88(%ebp)
4130f2:	83 c4 1c             	add    $0x1c,%esp
4130f5:	eb 38                	jmp    0x41312f
4130f7:	8b 0d 28 72 45 00    	mov    0x457228,%ecx
4130fd:	85 c9                	test   %ecx,%ecx
4130ff:	74 34                	je     0x413135
413101:	83 ff 08             	cmp    $0x8,%edi
413104:	8d 45 d8             	lea    -0x28(%ebp),%eax
413107:	0f 43 c6             	cmovae %esi,%eax
41310a:	8b 31                	mov    (%ecx),%esi
41310c:	50                   	push   %eax
41310d:	68 30 f5 44 00       	push   $0x44f530
413112:	68 7c f2 44 00       	push   $0x44f27c
413117:	8b 76 34             	mov    0x34(%esi),%esi
41311a:	68 54 9f 44 00       	push   $0x449f54
41311f:	6a 32                	push   $0x32
413121:	51                   	push   %ecx
413122:	8b ce                	mov    %esi,%ecx
413124:	ff 15 5c e2 43 00    	call   *0x43e25c
41312a:	ff d6                	call   *%esi
41312c:	83 c4 18             	add    $0x18,%esp
41312f:	8b 7d ec             	mov    -0x14(%ebp),%edi
413132:	8b 75 d8             	mov    -0x28(%ebp),%esi
413135:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
413139:	8b 4d bc             	mov    -0x44(%ebp),%ecx
41313c:	83 f9 08             	cmp    $0x8,%ecx
41313f:	72 38                	jb     0x413179
413141:	8b 55 a8             	mov    -0x58(%ebp),%edx
413144:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
41314b:	8b c2                	mov    %edx,%eax
41314d:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
413153:	72 14                	jb     0x413169
413155:	8b 50 fc             	mov    -0x4(%eax),%edx
413158:	83 c1 23             	add    $0x23,%ecx
41315b:	2b c2                	sub    %edx,%eax
41315d:	83 c0 fc             	add    $0xfffffffc,%eax
413160:	83 f8 1f             	cmp    $0x1f,%eax
413163:	0f 87 d5 01 00 00    	ja     0x41333e
413169:	51                   	push   %ecx
41316a:	52                   	push   %edx
41316b:	e8 48 6a 00 00       	call   0x419bb8
413170:	8b 7d ec             	mov    -0x14(%ebp),%edi
413173:	83 c4 08             	add    $0x8,%esp
413176:	8b 75 d8             	mov    -0x28(%ebp),%esi
413179:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
41317d:	83 ff 08             	cmp    $0x8,%edi
413180:	72 2f                	jb     0x4131b1
413182:	8d 3c 7d 02 00 00 00 	lea    0x2(,%edi,2),%edi
413189:	8b c6                	mov    %esi,%eax
41318b:	81 ff 00 10 00 00    	cmp    $0x1000,%edi
413191:	72 14                	jb     0x4131a7
413193:	8b 70 fc             	mov    -0x4(%eax),%esi
413196:	83 c7 23             	add    $0x23,%edi
413199:	2b c6                	sub    %esi,%eax
41319b:	83 c0 fc             	add    $0xfffffffc,%eax
41319e:	83 f8 1f             	cmp    $0x1f,%eax
4131a1:	0f 87 97 01 00 00    	ja     0x41333e
4131a7:	57                   	push   %edi
4131a8:	56                   	push   %esi
4131a9:	e8 0a 6a 00 00       	call   0x419bb8
4131ae:	83 c4 08             	add    $0x8,%esp
4131b1:	33 c0                	xor    %eax,%eax
4131b3:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
4131ba:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
4131bd:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
4131c4:	c7 45 ec 07 00 00 00 	movl   $0x7,-0x14(%ebp)
4131cb:	66 89 45 d8          	mov    %ax,-0x28(%ebp)
4131cf:	83 f9 08             	cmp    $0x8,%ecx
4131d2:	72 32                	jb     0x413206
4131d4:	8b 55 c0             	mov    -0x40(%ebp),%edx
4131d7:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
4131de:	8b c2                	mov    %edx,%eax
4131e0:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
4131e6:	72 14                	jb     0x4131fc
4131e8:	8b 50 fc             	mov    -0x4(%eax),%edx
4131eb:	83 c1 23             	add    $0x23,%ecx
4131ee:	2b c2                	sub    %edx,%eax
4131f0:	83 c0 fc             	add    $0xfffffffc,%eax
4131f3:	83 f8 1f             	cmp    $0x1f,%eax
4131f6:	0f 87 42 01 00 00    	ja     0x41333e
4131fc:	51                   	push   %ecx
4131fd:	52                   	push   %edx
4131fe:	e8 b5 69 00 00       	call   0x419bb8
413203:	83 c4 08             	add    $0x8,%esp
413206:	8b 7d a0             	mov    -0x60(%ebp),%edi
413209:	8b 85 74 ff ff ff    	mov    -0x8c(%ebp),%eax
41320f:	40                   	inc    %eax
413210:	89 85 74 ff ff ff    	mov    %eax,-0x8c(%ebp)
413216:	3b 45 08             	cmp    0x8(%ebp),%eax
413219:	0f 8c 37 f6 ff ff    	jl     0x412856
41321f:	b0 01                	mov    $0x1,%al
413221:	8b 4d f4             	mov    -0xc(%ebp),%ecx
413224:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
41322b:	59                   	pop    %ecx
41322c:	5f                   	pop    %edi
41322d:	5e                   	pop    %esi
41322e:	8b 4d f0             	mov    -0x10(%ebp),%ecx
413231:	33 cd                	xor    %ebp,%ecx
413233:	e8 72 69 00 00       	call   0x419baa
413238:	8b e5                	mov    %ebp,%esp
41323a:	5d                   	pop    %ebp
41323b:	c2 08 00             	ret    $0x8
41323e:	8b 7d a0             	mov    -0x60(%ebp),%edi
413241:	8b 4d 98             	mov    -0x68(%ebp),%ecx
413244:	8d 45 d8             	lea    -0x28(%ebp),%eax
413247:	50                   	push   %eax
413248:	e8 a3 01 00 00       	call   0x4133f0
41324d:	8d 4d a8             	lea    -0x58(%ebp),%ecx
413250:	3b c1                	cmp    %ecx,%eax
413252:	74 13                	je     0x413267
413254:	83 7d bc 08          	cmpl   $0x8,-0x44(%ebp)
413258:	ff 75 b8             	push   -0x48(%ebp)
41325b:	0f 43 4d a8          	cmovae -0x58(%ebp),%ecx
41325f:	51                   	push   %ecx
413260:	8b c8                	mov    %eax,%ecx
413262:	e8 89 fc fe ff       	call   0x402ef0
413267:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
41326b:	8b 4d bc             	mov    -0x44(%ebp),%ecx
41326e:	83 f9 08             	cmp    $0x8,%ecx
413271:	72 32                	jb     0x4132a5
413273:	8b 55 a8             	mov    -0x58(%ebp),%edx
413276:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
41327d:	8b c2                	mov    %edx,%eax
41327f:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
413285:	72 14                	jb     0x41329b
413287:	8b 50 fc             	mov    -0x4(%eax),%edx
41328a:	83 c1 23             	add    $0x23,%ecx
41328d:	2b c2                	sub    %edx,%eax
41328f:	83 c0 fc             	add    $0xfffffffc,%eax
413292:	83 f8 1f             	cmp    $0x1f,%eax
413295:	0f 87 a3 00 00 00    	ja     0x41333e
41329b:	51                   	push   %ecx
41329c:	52                   	push   %edx
41329d:	e8 16 69 00 00       	call   0x419bb8
4132a2:	83 c4 08             	add    $0x8,%esp
4132a5:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
4132a9:	8b 4d ec             	mov    -0x14(%ebp),%ecx
4132ac:	83 f9 08             	cmp    $0x8,%ecx
4132af:	72 2e                	jb     0x4132df
4132b1:	8b 55 d8             	mov    -0x28(%ebp),%edx
4132b4:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
4132bb:	8b c2                	mov    %edx,%eax
4132bd:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
4132c3:	72 10                	jb     0x4132d5
4132c5:	8b 50 fc             	mov    -0x4(%eax),%edx
4132c8:	83 c1 23             	add    $0x23,%ecx
4132cb:	2b c2                	sub    %edx,%eax
4132cd:	83 c0 fc             	add    $0xfffffffc,%eax
4132d0:	83 f8 1f             	cmp    $0x1f,%eax
4132d3:	77 69                	ja     0x41333e
4132d5:	51                   	push   %ecx
4132d6:	52                   	push   %edx
4132d7:	e8 dc 68 00 00       	call   0x419bb8
4132dc:	83 c4 08             	add    $0x8,%esp
4132df:	33 c0                	xor    %eax,%eax
4132e1:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
4132e8:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
4132eb:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
4132f2:	c7 45 ec 07 00 00 00 	movl   $0x7,-0x14(%ebp)
4132f9:	66 89 45 d8          	mov    %ax,-0x28(%ebp)
4132fd:	83 f9 08             	cmp    $0x8,%ecx
413300:	0f 82 03 ff ff ff    	jb     0x413209
413306:	8b 55 c0             	mov    -0x40(%ebp),%edx
413309:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
413310:	8b c2                	mov    %edx,%eax
413312:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
413318:	72 10                	jb     0x41332a
41331a:	8b 50 fc             	mov    -0x4(%eax),%edx