40b0eb:	85 c9                	test   %ecx,%ecx
40b0ed:	74 6b                	je     0x40b15a
40b0ef:	8d 41 23             	lea    0x23(%ecx),%eax
40b0f2:	83 e0 e0             	and    $0xffffffe0,%eax
40b0f5:	89 48 fc             	mov    %ecx,-0x4(%eax)
40b0f8:	eb 2e                	jmp    0x40b128
40b0fa:	b8 16 00 00 00       	mov    $0x16,%eax
40b0ff:	3b f8                	cmp    %eax,%edi
40b101:	0f 42 f8             	cmovb  %eax,%edi
40b104:	8d 47 01             	lea    0x1(%edi),%eax
40b107:	3d 00 10 00 00       	cmp    $0x1000,%eax
40b10c:	72 09                	jb     0x40b117
40b10e:	8d 48 23             	lea    0x23(%eax),%ecx
40b111:	3b c8                	cmp    %eax,%ecx
40b113:	76 40                	jbe    0x40b155
40b115:	eb c9                	jmp    0x40b0e0
40b117:	85 c0                	test   %eax,%eax
40b119:	74 0b                	je     0x40b126
40b11b:	50                   	push   %eax
40b11c:	e8 b7 e8 05 00       	call   0x4699d8
40b121:	83 c4 04             	add    $0x4,%esp
40b124:	eb 02                	jmp    0x40b128
40b126:	33 c0                	xor    %eax,%eax
40b128:	56                   	push   %esi
40b129:	ff 75 f8             	push   -0x8(%ebp)
40b12c:	89 45 fc             	mov    %eax,-0x4(%ebp)
40b12f:	50                   	push   %eax
40b130:	89 03                	mov    %eax,(%ebx)
40b132:	89 73 10             	mov    %esi,0x10(%ebx)
40b135:	89 7b 14             	mov    %edi,0x14(%ebx)
40b138:	e8 e3 04 06 00       	call   0x46b620
40b13d:	8b 45 fc             	mov    -0x4(%ebp),%eax
40b140:	83 c4 0c             	add    $0xc,%esp
40b143:	5f                   	pop    %edi
40b144:	c6 04 06 00          	movb   $0x0,(%esi,%eax,1)
40b148:	5e                   	pop    %esi
40b149:	5b                   	pop    %ebx
40b14a:	8b e5                	mov    %ebp,%esp
40b14c:	5d                   	pop    %ebp
40b14d:	c2 08 00             	ret    $0x8
40b150:	e8 8b 62 ff ff       	call   0x4013e0
40b155:	e8 e6 61 ff ff       	call   0x401340
40b15a:	e8 d2 e4 06 00       	call   0x479631
40b15f:	cc                   	int3
40b160:	55                   	push   %ebp
40b161:	8b ec                	mov    %esp,%ebp
40b163:	51                   	push   %ecx
40b164:	56                   	push   %esi
40b165:	6a 04                	push   $0x4
40b167:	e8 6c e8 05 00       	call   0x4699d8
40b16c:	83 c4 04             	add    $0x4,%esp
40b16f:	8b f0                	mov    %eax,%esi
40b171:	89 75 fc             	mov    %esi,-0x4(%ebp)
40b174:	6a 00                	push   $0x0
40b176:	6a 00                	push   $0x0
40b178:	6a 00                	push   $0x0
40b17a:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
40b180:	6a 00                	push   $0x0
40b182:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
40b188:	ff 15 5c e1 49 00    	call   *0x49e15c
40b18e:	89 06                	mov    %eax,(%esi)
40b190:	85 c0                	test   %eax,%eax
40b192:	0f 85 ce 00 00 00    	jne    0x40b266
40b198:	8b 35 94 8c 4c 00    	mov    0x4c8c94,%esi
40b19e:	85 f6                	test   %esi,%esi
40b1a0:	74 2a                	je     0x40b1cc
40b1a2:	68 9c 48 4b 00       	push   $0x4b489c
40b1a7:	68 60 ea 4a 00       	push   $0x4aea60
40b1ac:	68 60 ea 4a 00       	push   $0x4aea60
40b1b1:	68 cc 48 4b 00       	push   $0x4b48cc
40b1b6:	68 10 0d 4b 00       	push   $0x4b0d10
40b1bb:	6a 32                	push   $0x32
40b1bd:	8b ce                	mov    %esi,%ecx
40b1bf:	ff 15 d4 e2 49 00    	call   *0x49e2d4
40b1c5:	ff d6                	call   *%esi
40b1c7:	83 c4 18             	add    $0x18,%esp
40b1ca:	eb 2d                	jmp    0x40b1f9
40b1cc:	a1 98 8c 4c 00       	mov    0x4c8c98,%eax
40b1d1:	85 c0                	test   %eax,%eax
40b1d3:	74 2f                	je     0x40b204
40b1d5:	8b 30                	mov    (%eax),%esi
40b1d7:	68 9c 48 4b 00       	push   $0x4b489c
40b1dc:	68 cc 48 4b 00       	push   $0x4b48cc
40b1e1:	68 60 ea 4a 00       	push   $0x4aea60
40b1e6:	8b 76 34             	mov    0x34(%esi),%esi
40b1e9:	8b ce                	mov    %esi,%ecx
40b1eb:	6a 32                	push   $0x32
40b1ed:	50                   	push   %eax
40b1ee:	ff 15 d4 e2 49 00    	call   *0x49e2d4
40b1f4:	ff d6                	call   *%esi
40b1f6:	83 c4 14             	add    $0x14,%esp
40b1f9:	a1 98 8c 4c 00       	mov    0x4c8c98,%eax
40b1fe:	8b 35 94 8c 4c 00    	mov    0x4c8c94,%esi
40b204:	85 f6                	test   %esi,%esi
40b206:	74 2f                	je     0x40b237
40b208:	68 cc 0c 4b 00       	push   $0x4b0ccc
40b20d:	68 60 ea 4a 00       	push   $0x4aea60
40b212:	68 60 ea 4a 00       	push   $0x4aea60
40b217:	68 f8 0c 4b 00       	push   $0x4b0cf8
40b21c:	68 10 0d 4b 00       	push   $0x4b0d10
40b221:	6a 28                	push   $0x28
40b223:	8b ce                	mov    %esi,%ecx
40b225:	ff 15 d4 e2 49 00    	call   *0x49e2d4
40b22b:	ff d6                	call   *%esi
40b22d:	83 c4 18             	add    $0x18,%esp
40b230:	33 c0                	xor    %eax,%eax
40b232:	5e                   	pop    %esi
40b233:	8b e5                	mov    %ebp,%esp
40b235:	5d                   	pop    %ebp
40b236:	c3                   	ret
40b237:	85 c0                	test   %eax,%eax
40b239:	74 24                	je     0x40b25f
40b23b:	8b 30                	mov    (%eax),%esi
40b23d:	68 cc 0c 4b 00       	push   $0x4b0ccc
40b242:	68 f8 0c 4b 00       	push   $0x4b0cf8
40b247:	68 60 ea 4a 00       	push   $0x4aea60
40b24c:	8b 76 34             	mov    0x34(%esi),%esi
40b24f:	8b ce                	mov    %esi,%ecx
40b251:	6a 28                	push   $0x28
40b253:	50                   	push   %eax
40b254:	ff 15 d4 e2 49 00    	call   *0x49e2d4
40b25a:	ff d6                	call   *%esi
40b25c:	83 c4 14             	add    $0x14,%esp
40b25f:	33 c0                	xor    %eax,%eax
40b261:	5e                   	pop    %esi
40b262:	8b e5                	mov    %ebp,%esp
40b264:	5d                   	pop    %ebp
40b265:	c3                   	ret
40b266:	50                   	push   %eax
40b267:	ff 15 7c e1 49 00    	call   *0x49e17c
40b26d:	8b c6                	mov    %esi,%eax
40b26f:	5e                   	pop    %esi
40b270:	8b e5                	mov    %ebp,%esp
40b272:	5d                   	pop    %ebp
40b273:	c3                   	ret
40b274:	cc                   	int3
40b275:	cc                   	int3
40b276:	cc                   	int3
40b277:	cc                   	int3
40b278:	cc                   	int3
40b279:	cc                   	int3
40b27a:	cc                   	int3
40b27b:	cc                   	int3
40b27c:	cc                   	int3
40b27d:	cc                   	int3
40b27e:	cc                   	int3
40b27f:	cc                   	int3
40b280:	55                   	push   %ebp
40b281:	8b ec                	mov    %esp,%ebp
40b283:	83 e4 f8             	and    $0xfffffff8,%esp
40b286:	53                   	push   %ebx
40b287:	56                   	push   %esi
40b288:	8b f1                	mov    %ecx,%esi
40b28a:	85 f6                	test   %esi,%esi
40b28c:	75 75                	jne    0x40b303
40b28e:	8b 35 94 8c 4c 00    	mov    0x4c8c94,%esi
40b294:	85 f6                	test   %esi,%esi
40b296:	74 33                	je     0x40b2cb
40b298:	68 80 0d 4b 00       	push   $0x4b0d80
40b29d:	68 60 ea 4a 00       	push   $0x4aea60
40b2a2:	68 60 ea 4a 00       	push   $0x4aea60
40b2a7:	68 f8 0c 4b 00       	push   $0x4b0cf8
40b2ac:	68 10 0d 4b 00       	push   $0x4b0d10
40b2b1:	6a 32                	push   $0x32
40b2b3:	8b ce                	mov    %esi,%ecx
40b2b5:	ff 15 d4 e2 49 00    	call   *0x49e2d4
40b2bb:	ff d6                	call   *%esi
40b2bd:	83 c4 18             	add    $0x18,%esp
40b2c0:	b8 02 00 00 00       	mov    $0x2,%eax
40b2c5:	5e                   	pop    %esi
40b2c6:	5b                   	pop    %ebx
40b2c7:	8b e5                	mov    %ebp,%esp
40b2c9:	5d                   	pop    %ebp
40b2ca:	c3                   	ret
40b2cb:	a1 98 8c 4c 00       	mov    0x4c8c98,%eax
40b2d0:	85 c0                	test   %eax,%eax
40b2d2:	74 24                	je     0x40b2f8
40b2d4:	8b 30                	mov    (%eax),%esi
40b2d6:	68 80 0d 4b 00       	push   $0x4b0d80
40b2db:	68 f8 0c 4b 00       	push   $0x4b0cf8
40b2e0:	68 60 ea 4a 00       	push   $0x4aea60
40b2e5:	8b 76 34             	mov    0x34(%esi),%esi
40b2e8:	8b ce                	mov    %esi,%ecx
40b2ea:	6a 32                	push   $0x32
40b2ec:	50                   	push   %eax
40b2ed:	ff 15 d4 e2 49 00    	call   *0x49e2d4
40b2f3:	ff d6                	call   *%esi
40b2f5:	83 c4 14             	add    $0x14,%esp
40b2f8:	b8 02 00 00 00       	mov    $0x2,%eax
40b2fd:	5e                   	pop    %esi
40b2fe:	5b                   	pop    %ebx
40b2ff:	8b e5                	mov    %ebp,%esp
40b301:	5d                   	pop    %ebp
40b302:	c3                   	ret
40b303:	8b 4d 08             	mov    0x8(%ebp),%ecx
40b306:	83 ca ff             	or     $0xffffffff,%edx
40b309:	8b c1                	mov    %ecx,%eax
40b30b:	23 45 0c             	and    0xc(%ebp),%eax
40b30e:	83 f8 ff             	cmp    $0xffffffff,%eax
40b311:	0f 44 ca             	cmove  %edx,%ecx
40b314:	51                   	push   %ecx
40b315:	ff 36                	push   (%esi)
40b317:	ff 15 78 e0 49 00    	call   *0x49e078
40b31d:	33 db                	xor    %ebx,%ebx
40b31f:	85 c0                	test   %eax,%eax
40b321:	74 09                	je     0x40b32c
40b323:	3d 02 01 00 00       	cmp    $0x102,%eax
40b328:	0f 95 c3             	setne  %bl
40b32b:	43                   	inc    %ebx
40b32c:	ff 36                	push   (%esi)
40b32e:	ff 15 7c e1 49 00    	call   *0x49e17c
40b334:	5e                   	pop    %esi
40b335:	8b c3                	mov    %ebx,%eax
40b337:	5b                   	pop    %ebx
40b338:	8b e5                	mov    %ebp,%esp
40b33a:	5d                   	pop    %ebp
40b33b:	c3                   	ret
40b33c:	cc                   	int3
40b33d:	cc                   	int3
40b33e:	cc                   	int3
40b33f:	cc                   	int3
40b340:	55                   	push   %ebp
40b341:	8b ec                	mov    %esp,%ebp
40b343:	83 ec 0c             	sub    $0xc,%esp
40b346:	a1 14 40 4c 00       	mov    0x4c4014,%eax
40b34b:	33 c5                	xor    %ebp,%eax
40b34d:	89 45 fc             	mov    %eax,-0x4(%ebp)
40b350:	8b 55 08             	mov    0x8(%ebp),%edx
40b353:	8d 45 f4             	lea    -0xc(%ebp),%eax
40b356:	56                   	push   %esi
40b357:	8b f1                	mov    %ecx,%esi
40b359:	89 55 f4             	mov    %edx,-0xc(%ebp)
40b35c:	8d 4e 04             	lea    0x4(%esi),%ecx
40b35f:	c6 45 f8 01          	movb   $0x1,-0x8(%ebp)
40b363:	51                   	push   %ecx
40b364:	0f 57 c0             	xorps  %xmm0,%xmm0
40b367:	c7 06 a4 f8 49 00    	movl   $0x49f8a4,(%esi)
40b36d:	50                   	push   %eax
40b36e:	66 0f d6 01          	movq   %xmm0,(%ecx)
40b372:	e8 04 fa 05 00       	call   0x46ad7b
40b377:	8b 4d fc             	mov    -0x4(%ebp),%ecx
40b37a:	83 c4 08             	add    $0x8,%esp
40b37d:	8b c6                	mov    %esi,%eax
40b37f:	33 cd                	xor    %ebp,%ecx
40b381:	5e                   	pop    %esi
40b382:	e8 43 e6 05 00       	call   0x4699ca
40b387:	8b e5                	mov    %ebp,%esp
40b389:	5d                   	pop    %ebp
40b38a:	c2 04 00             	ret    $0x4
40b38d:	cc                   	int3
40b38e:	cc                   	int3
40b38f:	cc                   	int3
40b390:	55                   	push   %ebp
40b391:	8b ec                	mov    %esp,%ebp
40b393:	56                   	push   %esi
40b394:	8b f1                	mov    %ecx,%esi
40b396:	0f 57 c0             	xorps  %xmm0,%xmm0
40b399:	8d 46 04             	lea    0x4(%esi),%eax
40b39c:	50                   	push   %eax
40b39d:	c7 06 a4 f8 49 00    	movl   $0x49f8a4,(%esi)
40b3a3:	66 0f d6 00          	movq   %xmm0,(%eax)
40b3a7:	8b 45 08             	mov    0x8(%ebp),%eax
40b3aa:	83 c0 04             	add    $0x4,%eax
40b3ad:	50                   	push   %eax
40b3ae:	e8 c8 f9 05 00       	call   0x46ad7b
40b3b3:	83 c4 08             	add    $0x8,%esp
40b3b6:	c7 06 e0 f8 49 00    	movl   $0x49f8e0,(%esi)
40b3bc:	8b c6                	mov    %esi,%eax
40b3be:	5e                   	pop    %esi
40b3bf:	5d                   	pop    %ebp
40b3c0:	c2 04 00             	ret    $0x4
40b3c3:	cc                   	int3
40b3c4:	cc                   	int3
40b3c5:	cc                   	int3
40b3c6:	cc                   	int3
40b3c7:	cc                   	int3
40b3c8:	cc                   	int3
40b3c9:	cc                   	int3
40b3ca:	cc                   	int3
40b3cb:	cc                   	int3
40b3cc:	cc                   	int3
40b3cd:	cc                   	int3
40b3ce:	cc                   	int3
40b3cf:	cc                   	int3
40b3d0:	55                   	push   %ebp
40b3d1:	8b ec                	mov    %esp,%ebp
40b3d3:	8b 45 08             	mov    0x8(%ebp),%eax
40b3d6:	8b 55 0c             	mov    0xc(%ebp),%edx
40b3d9:	89 10                	mov    %edx,(%eax)
40b3db:	89 48 04             	mov    %ecx,0x4(%eax)
40b3de:	5d                   	pop    %ebp
40b3df:	c2 08 00             	ret    $0x8
40b3e2:	cc                   	int3
40b3e3:	cc                   	int3
40b3e4:	cc                   	int3
40b3e5:	cc                   	int3
40b3e6:	cc                   	int3
40b3e7:	cc                   	int3
40b3e8:	cc                   	int3
40b3e9:	cc                   	int3
40b3ea:	cc                   	int3
40b3eb:	cc                   	int3
40b3ec:	cc                   	int3
40b3ed:	cc                   	int3
40b3ee:	cc                   	int3
40b3ef:	cc                   	int3
40b3f0:	55                   	push   %ebp
40b3f1:	8b ec                	mov    %esp,%ebp
40b3f3:	83 ec 08             	sub    $0x8,%esp
40b3f6:	56                   	push   %esi
40b3f7:	57                   	push   %edi
40b3f8:	ff 75 08             	push   0x8(%ebp)
40b3fb:	8b f9                	mov    %ecx,%edi
40b3fd:	8d 4d f8             	lea    -0x8(%ebp),%ecx
40b400:	51                   	push   %ecx
40b401:	8b 07                	mov    (%edi),%eax
40b403:	8b 70 0c             	mov    0xc(%eax),%esi
40b406:	8b ce                	mov    %esi,%ecx
40b408:	ff 15 d4 e2 49 00    	call   *0x49e2d4
40b40e:	8b cf                	mov    %edi,%ecx
40b410:	ff d6                	call   *%esi
40b412:	8b 75 0c             	mov    0xc(%ebp),%esi
40b415:	8b 48 04             	mov    0x4(%eax),%ecx
40b418:	8b 56 04             	mov    0x4(%esi),%edx
40b41b:	8b 49 04             	mov    0x4(%ecx),%ecx
40b41e:	3b 4a 04             	cmp    0x4(%edx),%ecx
40b421:	75 10                	jne    0x40b433
40b423:	8b 00                	mov    (%eax),%eax
40b425:	3b 06                	cmp    (%esi),%eax
40b427:	75 0a                	jne    0x40b433
40b429:	5f                   	pop    %edi
40b42a:	b0 01                	mov    $0x1,%al
40b42c:	5e                   	pop    %esi
40b42d:	8b e5                	mov    %ebp,%esp
40b42f:	5d                   	pop    %ebp
40b430:	c2 08 00             	ret    $0x8
40b433:	5f                   	pop    %edi
40b434:	32 c0                	xor    %al,%al
40b436:	5e                   	pop    %esi
40b437:	8b e5                	mov    %ebp,%esp
40b439:	5d                   	pop    %ebp
40b43a:	c2 08 00             	ret    $0x8
40b43d:	cc                   	int3
40b43e:	cc                   	int3
40b43f:	cc                   	int3
40b440:	55                   	push   %ebp
40b441:	8b ec                	mov    %esp,%ebp
40b443:	8b 41 04             	mov    0x4(%ecx),%eax
40b446:	56                   	push   %esi
40b447:	8b 75 08             	mov    0x8(%ebp),%esi