40d163:	8b 50 fc             	mov    -0x4(%eax),%edx
40d166:	83 c1 23             	add    $0x23,%ecx
40d169:	2b c2                	sub    %edx,%eax
40d16b:	83 c0 fc             	add    $0xfffffffc,%eax
40d16e:	83 f8 1f             	cmp    $0x1f,%eax
40d171:	77 28                	ja     0x40d19b
40d173:	51                   	push   %ecx
40d174:	52                   	push   %edx
40d175:	e8 8e c8 05 00       	call   0x469a08
40d17a:	83 c4 08             	add    $0x8,%esp
40d17d:	c7 07 5c 12 4b 00    	movl   $0x4b125c,(%edi)
40d183:	8b c7                	mov    %edi,%eax
40d185:	8b 4d f4             	mov    -0xc(%ebp),%ecx
40d188:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
40d18f:	59                   	pop    %ecx
40d190:	5f                   	pop    %edi
40d191:	5e                   	pop    %esi
40d192:	8b e5                	mov    %ebp,%esp
40d194:	5d                   	pop    %ebp
40d195:	8b e3                	mov    %ebx,%esp
40d197:	5b                   	pop    %ebx
40d198:	c2 04 00             	ret    $0x4
40d19b:	e8 91 c4 06 00       	call   0x479631
40d1a0:	cc                   	int3
40d1a1:	cc                   	int3
40d1a2:	cc                   	int3
40d1a3:	cc                   	int3
40d1a4:	cc                   	int3
40d1a5:	cc                   	int3
40d1a6:	cc                   	int3
40d1a7:	cc                   	int3
40d1a8:	cc                   	int3
40d1a9:	cc                   	int3
40d1aa:	cc                   	int3
40d1ab:	cc                   	int3
40d1ac:	cc                   	int3
40d1ad:	cc                   	int3
40d1ae:	cc                   	int3
40d1af:	cc                   	int3
40d1b0:	55                   	push   %ebp
40d1b1:	8b ec                	mov    %esp,%ebp
40d1b3:	83 ec 08             	sub    $0x8,%esp
40d1b6:	53                   	push   %ebx
40d1b7:	8b 5d 08             	mov    0x8(%ebp),%ebx
40d1ba:	57                   	push   %edi
40d1bb:	8b f9                	mov    %ecx,%edi
40d1bd:	c7 07 c8 1a 4b 00    	movl   $0x4b1ac8,(%edi)
40d1c3:	8b 43 04             	mov    0x4(%ebx),%eax
40d1c6:	89 47 04             	mov    %eax,0x4(%edi)
40d1c9:	0f b6 43 08          	movzbl 0x8(%ebx),%eax
40d1cd:	88 47 08             	mov    %al,0x8(%edi)
40d1d0:	0f b6 43 09          	movzbl 0x9(%ebx),%eax
40d1d4:	88 47 09             	mov    %al,0x9(%edi)
40d1d7:	c7 47 0c 00 00 00 00 	movl   $0x0,0xc(%edi)
40d1de:	8b 43 0c             	mov    0xc(%ebx),%eax
40d1e1:	89 45 f8             	mov    %eax,-0x8(%ebp)
40d1e4:	c7 43 0c 00 00 00 00 	movl   $0x0,0xc(%ebx)
40d1eb:	8b 47 0c             	mov    0xc(%edi),%eax
40d1ee:	89 45 fc             	mov    %eax,-0x4(%ebp)
40d1f1:	85 c0                	test   %eax,%eax
40d1f3:	74 15                	je     0x40d20a
40d1f5:	8b 00                	mov    (%eax),%eax
40d1f7:	56                   	push   %esi
40d1f8:	6a 01                	push   $0x1
40d1fa:	8b 30                	mov    (%eax),%esi
40d1fc:	8b ce                	mov    %esi,%ecx
40d1fe:	ff 15 d4 e2 49 00    	call   *0x49e2d4
40d204:	8b 4d fc             	mov    -0x4(%ebp),%ecx
40d207:	ff d6                	call   *%esi
40d209:	5e                   	pop    %esi
40d20a:	8b 45 f8             	mov    -0x8(%ebp),%eax
40d20d:	89 47 0c             	mov    %eax,0xc(%edi)
40d210:	8b c7                	mov    %edi,%eax
40d212:	5f                   	pop    %edi
40d213:	c6 43 09 01          	movb   $0x1,0x9(%ebx)
40d217:	5b                   	pop    %ebx
40d218:	8b e5                	mov    %ebp,%esp
40d21a:	5d                   	pop    %ebp
40d21b:	c2 04 00             	ret    $0x4
40d21e:	cc                   	int3
40d21f:	cc                   	int3
40d220:	55                   	push   %ebp
40d221:	8b ec                	mov    %esp,%ebp
40d223:	6a ff                	push   $0xffffffff
40d225:	68 f0 81 49 00       	push   $0x4981f0
40d22a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
40d230:	50                   	push   %eax
40d231:	83 ec 28             	sub    $0x28,%esp
40d234:	56                   	push   %esi
40d235:	57                   	push   %edi
40d236:	a1 14 40 4c 00       	mov    0x4c4014,%eax
40d23b:	33 c5                	xor    %ebp,%eax
40d23d:	50                   	push   %eax
40d23e:	8d 45 f4             	lea    -0xc(%ebp),%eax
40d241:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
40d247:	8b f1                	mov    %ecx,%esi
40d249:	c7 06 c8 1a 4b 00    	movl   $0x4b1ac8,(%esi)
40d24f:	e8 76 b9 05 00       	call   0x468bca
40d254:	84 c0                	test   %al,%al
40d256:	75 0a                	jne    0x40d262
40d258:	38 46 08             	cmp    %al,0x8(%esi)
40d25b:	74 05                	je     0x40d262
40d25d:	38 46 09             	cmp    %al,0x9(%esi)
40d260:	74 2a                	je     0x40d28c
40d262:	8b 7e 0c             	mov    0xc(%esi),%edi
40d265:	85 ff                	test   %edi,%edi
40d267:	74 12                	je     0x40d27b
40d269:	8b 07                	mov    (%edi),%eax
40d26b:	6a 01                	push   $0x1
40d26d:	8b 30                	mov    (%eax),%esi
40d26f:	8b ce                	mov    %esi,%ecx
40d271:	ff 15 d4 e2 49 00    	call   *0x49e2d4
40d277:	8b cf                	mov    %edi,%ecx
40d279:	ff d6                	call   *%esi
40d27b:	8b 4d f4             	mov    -0xc(%ebp),%ecx
40d27e:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
40d285:	59                   	pop    %ecx
40d286:	5f                   	pop    %edi
40d287:	5e                   	pop    %esi
40d288:	8b e5                	mov    %ebp,%esp
40d28a:	5d                   	pop    %ebp
40d28b:	c3                   	ret
40d28c:	ff 76 04             	push   0x4(%esi)
40d28f:	8d 4d cc             	lea    -0x34(%ebp),%ecx
40d292:	e8 f9 fc ff ff       	call   0x40cf90
40d297:	68 90 1e 4c 00       	push   $0x4c1e90
40d29c:	8d 45 cc             	lea    -0x34(%ebp),%eax
40d29f:	50                   	push   %eax
40d2a0:	e8 09 e3 05 00       	call   0x46b5ae
40d2a5:	cc                   	int3
40d2a6:	cc                   	int3
40d2a7:	cc                   	int3
40d2a8:	cc                   	int3
40d2a9:	cc                   	int3
40d2aa:	cc                   	int3
40d2ab:	cc                   	int3
40d2ac:	cc                   	int3
40d2ad:	cc                   	int3
40d2ae:	cc                   	int3
40d2af:	cc                   	int3
40d2b0:	55                   	push   %ebp
40d2b1:	8b ec                	mov    %esp,%ebp
40d2b3:	56                   	push   %esi
40d2b4:	8b f1                	mov    %ecx,%esi
40d2b6:	e8 65 ff ff ff       	call   0x40d220
40d2bb:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
40d2bf:	74 0b                	je     0x40d2cc
40d2c1:	6a 10                	push   $0x10
40d2c3:	56                   	push   %esi
40d2c4:	e8 3f c7 05 00       	call   0x469a08
40d2c9:	83 c4 08             	add    $0x8,%esp
40d2cc:	8b c6                	mov    %esi,%eax
40d2ce:	5e                   	pop    %esi
40d2cf:	5d                   	pop    %ebp
40d2d0:	c2 04 00             	ret    $0x4
40d2d3:	cc                   	int3
40d2d4:	cc                   	int3
40d2d5:	cc                   	int3
40d2d6:	cc                   	int3
40d2d7:	cc                   	int3
40d2d8:	cc                   	int3
40d2d9:	cc                   	int3
40d2da:	cc                   	int3
40d2db:	cc                   	int3
40d2dc:	cc                   	int3
40d2dd:	cc                   	int3
40d2de:	cc                   	int3
40d2df:	cc                   	int3
40d2e0:	55                   	push   %ebp
40d2e1:	8b ec                	mov    %esp,%ebp
40d2e3:	6a ff                	push   $0xffffffff
40d2e5:	68 1d 81 49 00       	push   $0x49811d
40d2ea:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
40d2f0:	50                   	push   %eax
40d2f1:	51                   	push   %ecx
40d2f2:	56                   	push   %esi
40d2f3:	57                   	push   %edi
40d2f4:	a1 14 40 4c 00       	mov    0x4c4014,%eax
40d2f9:	33 c5                	xor    %ebp,%eax
40d2fb:	50                   	push   %eax
40d2fc:	8d 45 f4             	lea    -0xc(%ebp),%eax
40d2ff:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
40d305:	8b f9                	mov    %ecx,%edi
40d307:	89 7d f0             	mov    %edi,-0x10(%ebp)
40d30a:	8b 75 08             	mov    0x8(%ebp),%esi
40d30d:	8d 47 04             	lea    0x4(%edi),%eax
40d310:	0f 57 c0             	xorps  %xmm0,%xmm0
40d313:	c7 07 a4 f8 49 00    	movl   $0x49f8a4,(%edi)
40d319:	50                   	push   %eax
40d31a:	66 0f d6 00          	movq   %xmm0,(%eax)
40d31e:	8d 46 04             	lea    0x4(%esi),%eax
40d321:	50                   	push   %eax
40d322:	e8 54 da 05 00       	call   0x46ad7b
40d327:	83 c4 08             	add    $0x8,%esp
40d32a:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
40d331:	8d 4f 10             	lea    0x10(%edi),%ecx
40d334:	c7 07 b4 1b 4b 00    	movl   $0x4b1bb4,(%edi)
40d33a:	8b 46 0c             	mov    0xc(%esi),%eax
40d33d:	89 47 0c             	mov    %eax,0xc(%edi)
40d340:	8d 46 10             	lea    0x10(%esi),%eax
40d343:	50                   	push   %eax
40d344:	e8 d7 63 ff ff       	call   0x403720
40d349:	c7 07 5c 12 4b 00    	movl   $0x4b125c,(%edi)
40d34f:	8b c7                	mov    %edi,%eax
40d351:	8b 4d f4             	mov    -0xc(%ebp),%ecx
40d354:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
40d35b:	59                   	pop    %ecx
40d35c:	5f                   	pop    %edi
40d35d:	5e                   	pop    %esi
40d35e:	8b e5                	mov    %ebp,%esp
40d360:	5d                   	pop    %ebp
40d361:	c2 04 00             	ret    $0x4
40d364:	cc                   	int3
40d365:	cc                   	int3
40d366:	cc                   	int3
40d367:	cc                   	int3
40d368:	cc                   	int3
40d369:	cc                   	int3
40d36a:	cc                   	int3
40d36b:	cc                   	int3
40d36c:	cc                   	int3
40d36d:	cc                   	int3
40d36e:	cc                   	int3
40d36f:	cc                   	int3
40d370:	b0 01                	mov    $0x1,%al
40d372:	c3                   	ret
40d373:	cc                   	int3
40d374:	cc                   	int3
40d375:	cc                   	int3
40d376:	cc                   	int3
40d377:	cc                   	int3
40d378:	cc                   	int3
40d379:	cc                   	int3
40d37a:	cc                   	int3
40d37b:	cc                   	int3
40d37c:	cc                   	int3
40d37d:	cc                   	int3
40d37e:	cc                   	int3
40d37f:	cc                   	int3
40d380:	57                   	push   %edi
40d381:	8b 79 0c             	mov    0xc(%ecx),%edi
40d384:	85 ff                	test   %edi,%edi
40d386:	74 14                	je     0x40d39c
40d388:	8b 07                	mov    (%edi),%eax
40d38a:	56                   	push   %esi
40d38b:	6a 01                	push   $0x1
40d38d:	8b 30                	mov    (%eax),%esi
40d38f:	8b ce                	mov    %esi,%ecx
40d391:	ff 15 d4 e2 49 00    	call   *0x49e2d4
40d397:	8b cf                	mov    %edi,%ecx
40d399:	ff d6                	call   *%esi
40d39b:	5e                   	pop    %esi
40d39c:	5f                   	pop    %edi
40d39d:	c3                   	ret
40d39e:	cc                   	int3
40d39f:	cc                   	int3
40d3a0:	55                   	push   %ebp
40d3a1:	8b ec                	mov    %esp,%ebp
40d3a3:	6a 00                	push   $0x0
40d3a5:	ff 75 14             	push   0x14(%ebp)
40d3a8:	ff 75 10             	push   0x10(%ebp)
40d3ab:	ff 75 0c             	push   0xc(%ebp)
40d3ae:	ff 75 08             	push   0x8(%ebp)
40d3b1:	e8 3a 28 03 00       	call   0x43fbf0
40d3b6:	5d                   	pop    %ebp
40d3b7:	c2 10 00             	ret    $0x10
40d3ba:	cc                   	int3
40d3bb:	cc                   	int3
40d3bc:	cc                   	int3
40d3bd:	cc                   	int3
40d3be:	cc                   	int3
40d3bf:	cc                   	int3
40d3c0:	55                   	push   %ebp
40d3c1:	8b ec                	mov    %esp,%ebp
40d3c3:	6a 01                	push   $0x1
40d3c5:	ff 75 14             	push   0x14(%ebp)
40d3c8:	ff 75 10             	push   0x10(%ebp)
40d3cb:	ff 75 0c             	push   0xc(%ebp)
40d3ce:	ff 75 08             	push   0x8(%ebp)
40d3d1:	e8 1a 28 03 00       	call   0x43fbf0
40d3d6:	5d                   	pop    %ebp
40d3d7:	c2 10 00             	ret    $0x10
40d3da:	cc                   	int3
40d3db:	cc                   	int3
40d3dc:	cc                   	int3
40d3dd:	cc                   	int3
40d3de:	cc                   	int3
40d3df:	cc                   	int3
40d3e0:	55                   	push   %ebp
40d3e1:	8b ec                	mov    %esp,%ebp
40d3e3:	56                   	push   %esi
40d3e4:	57                   	push   %edi
40d3e5:	ff 75 08             	push   0x8(%ebp)
40d3e8:	8b f9                	mov    %ecx,%edi
40d3ea:	8b 07                	mov    (%edi),%eax
40d3ec:	8b b0 c0 00 00 00    	mov    0xc0(%eax),%esi
40d3f2:	8b ce                	mov    %esi,%ecx
40d3f4:	ff 15 d4 e2 49 00    	call   *0x49e2d4
40d3fa:	8b cf                	mov    %edi,%ecx
40d3fc:	ff d6                	call   *%esi
40d3fe:	5f                   	pop    %edi
40d3ff:	5e                   	pop    %esi
40d400:	5d                   	pop    %ebp
40d401:	c2 10 00             	ret    $0x10
40d404:	cc                   	int3
40d405:	cc                   	int3
40d406:	cc                   	int3
40d407:	cc                   	int3
40d408:	cc                   	int3
40d409:	cc                   	int3
40d40a:	cc                   	int3
40d40b:	cc                   	int3
40d40c:	cc                   	int3
40d40d:	cc                   	int3
40d40e:	cc                   	int3
40d40f:	cc                   	int3
40d410:	33 c0                	xor    %eax,%eax
40d412:	c2 08 00             	ret    $0x8
40d415:	cc                   	int3
40d416:	cc                   	int3
40d417:	cc                   	int3
40d418:	cc                   	int3
40d419:	cc                   	int3
40d41a:	cc                   	int3
40d41b:	cc                   	int3
40d41c:	cc                   	int3
40d41d:	cc                   	int3
40d41e:	cc                   	int3
40d41f:	cc                   	int3
40d420:	56                   	push   %esi
40d421:	57                   	push   %edi
40d422:	8b 79 44             	mov    0x44(%ecx),%edi
40d425:	6a 01                	push   $0x1
40d427:	6a ff                	push   $0xffffffff
40d429:	6a 00                	push   $0x0
40d42b:	8b 07                	mov    (%edi),%eax
40d42d:	6a 00                	push   $0x0
40d42f:	8b 70 14             	mov    0x14(%eax),%esi
40d432:	8b ce                	mov    %esi,%ecx
40d434:	ff 15 d4 e2 49 00    	call   *0x49e2d4
40d43a:	8b cf                	mov    %edi,%ecx
40d43c:	ff d6                	call   *%esi
40d43e:	5f                   	pop    %edi
40d43f:	5e                   	pop    %esi
40d440:	c2 08 00             	ret    $0x8
40d443:	cc                   	int3
40d444:	cc                   	int3
40d445:	cc                   	int3
40d446:	cc                   	int3
40d447:	cc                   	int3