40b07d:	cc                   	int3
40b07e:	cc                   	int3
40b07f:	cc                   	int3
40b080:	2b 49 fc             	sub    -0x4(%ecx),%ecx
40b083:	e9 38 cf ff ff       	jmp    0x407fc0
40b088:	cc                   	int3
40b089:	cc                   	int3
40b08a:	cc                   	int3
40b08b:	cc                   	int3
40b08c:	cc                   	int3
40b08d:	cc                   	int3
40b08e:	cc                   	int3
40b08f:	cc                   	int3
40b090:	2b 49 fc             	sub    -0x4(%ecx),%ecx
40b093:	e9 58 cf ff ff       	jmp    0x407ff0
40b098:	cc                   	int3
40b099:	cc                   	int3
40b09a:	cc                   	int3
40b09b:	cc                   	int3
40b09c:	cc                   	int3
40b09d:	cc                   	int3
40b09e:	cc                   	int3
40b09f:	cc                   	int3
40b0a0:	2b 49 fc             	sub    -0x4(%ecx),%ecx
40b0a3:	e9 08 d0 ff ff       	jmp    0x4080b0
40b0a8:	cc                   	int3
40b0a9:	cc                   	int3
40b0aa:	cc                   	int3
40b0ab:	cc                   	int3
40b0ac:	cc                   	int3
40b0ad:	cc                   	int3
40b0ae:	cc                   	int3
40b0af:	cc                   	int3
40b0b0:	2b 49 fc             	sub    -0x4(%ecx),%ecx
40b0b3:	e9 88 d0 ff ff       	jmp    0x408140
40b0b8:	cc                   	int3
40b0b9:	cc                   	int3
40b0ba:	cc                   	int3
40b0bb:	cc                   	int3
40b0bc:	cc                   	int3
40b0bd:	cc                   	int3
40b0be:	cc                   	int3
40b0bf:	cc                   	int3
40b0c0:	68 64 ef 44 00       	push   $0x44ef64
40b0c5:	e8 d0 dd 00 00       	call   0x418e9a
40b0ca:	cc                   	int3
40b0cb:	cc                   	int3
40b0cc:	cc                   	int3
40b0cd:	cc                   	int3
40b0ce:	cc                   	int3
40b0cf:	cc                   	int3
40b0d0:	55                   	push   %ebp
40b0d1:	8b ec                	mov    %esp,%ebp
40b0d3:	6a ff                	push   $0xffffffff
40b0d5:	68 a1 c2 43 00       	push   $0x43c2a1
40b0da:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
40b0e0:	50                   	push   %eax
40b0e1:	51                   	push   %ecx
40b0e2:	a1 14 50 45 00       	mov    0x455014,%eax
40b0e7:	33 c5                	xor    %ebp,%eax
40b0e9:	50                   	push   %eax
40b0ea:	8d 45 f4             	lea    -0xc(%ebp),%eax
40b0ed:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
40b0f3:	64 a1 2c 00 00 00    	mov    %fs:0x2c,%eax
40b0f9:	8b 08                	mov    (%eax),%ecx
40b0fb:	a1 ac 7b 45 00       	mov    0x457bac,%eax
40b100:	3b 81 04 00 00 00    	cmp    0x4(%ecx),%eax
40b106:	7e 62                	jle    0x40b16a
40b108:	68 ac 7b 45 00       	push   $0x457bac
40b10d:	e8 b9 ee 00 00       	call   0x419fcb
40b112:	83 c4 04             	add    $0x4,%esp
40b115:	83 3d ac 7b 45 00 ff 	cmpl   $0xffffffff,0x457bac
40b11c:	75 4c                	jne    0x40b16a
40b11e:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
40b125:	6a 34                	push   $0x34
40b127:	c7 05 b0 7b 45 00 00 	movl   $0x0,0x457bb0
40b12e:	00 00 00
40b131:	c7 05 b4 7b 45 00 00 	movl   $0x0,0x457bb4
40b138:	00 00 00
40b13b:	e8 86 ea 00 00       	call   0x419bc6
40b140:	68 c0 d0 43 00       	push   $0x43d0c0
40b145:	89 00                	mov    %eax,(%eax)
40b147:	89 40 04             	mov    %eax,0x4(%eax)
40b14a:	89 40 08             	mov    %eax,0x8(%eax)
40b14d:	66 c7 40 0c 01 01    	movw   $0x101,0xc(%eax)
40b153:	a3 b0 7b 45 00       	mov    %eax,0x457bb0
40b158:	e8 07 ed 00 00       	call   0x419e64
40b15d:	68 ac 7b 45 00       	push   $0x457bac
40b162:	e8 19 ee 00 00       	call   0x419f80
40b167:	83 c4 0c             	add    $0xc,%esp
40b16a:	b8 b0 7b 45 00       	mov    $0x457bb0,%eax
40b16f:	8b 4d f4             	mov    -0xc(%ebp),%ecx
40b172:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
40b179:	59                   	pop    %ecx
40b17a:	8b e5                	mov    %ebp,%esp
40b17c:	5d                   	pop    %ebp
40b17d:	c3                   	ret
40b17e:	cc                   	int3
40b17f:	cc                   	int3
40b180:	55                   	push   %ebp
40b181:	8b ec                	mov    %esp,%ebp
40b183:	6a ff                	push   $0xffffffff
40b185:	68 cd c2 43 00       	push   $0x43c2cd
40b18a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
40b190:	50                   	push   %eax
40b191:	83 ec 1c             	sub    $0x1c,%esp
40b194:	a1 14 50 45 00       	mov    0x455014,%eax
40b199:	33 c5                	xor    %ebp,%eax
40b19b:	89 45 f0             	mov    %eax,-0x10(%ebp)
40b19e:	53                   	push   %ebx
40b19f:	56                   	push   %esi
40b1a0:	57                   	push   %edi
40b1a1:	50                   	push   %eax
40b1a2:	8d 45 f4             	lea    -0xc(%ebp),%eax
40b1a5:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
40b1ab:	89 4d d8             	mov    %ecx,-0x28(%ebp)
40b1ae:	8b 7d 08             	mov    0x8(%ebp),%edi
40b1b1:	89 7d e0             	mov    %edi,-0x20(%ebp)
40b1b4:	85 ff                	test   %edi,%edi
40b1b6:	75 07                	jne    0x40b1bf
40b1b8:	32 c0                	xor    %al,%al
40b1ba:	e9 61 01 00 00       	jmp    0x40b320
40b1bf:	8b 07                	mov    (%edi),%eax
40b1c1:	8b 70 08             	mov    0x8(%eax),%esi
40b1c4:	8b ce                	mov    %esi,%ecx
40b1c6:	ff 15 5c e2 43 00    	call   *0x43e25c
40b1cc:	8b cf                	mov    %edi,%ecx
40b1ce:	ff d6                	call   *%esi
40b1d0:	88 45 df             	mov    %al,-0x21(%ebp)
40b1d3:	84 c0                	test   %al,%al
40b1d5:	0f 84 45 01 00 00    	je     0x40b320
40b1db:	8b 4d d8             	mov    -0x28(%ebp),%ecx
40b1de:	8d 5f 04             	lea    0x4(%edi),%ebx
40b1e1:	53                   	push   %ebx
40b1e2:	8d 45 e4             	lea    -0x1c(%ebp),%eax
40b1e5:	50                   	push   %eax
40b1e6:	e8 65 0a 00 00       	call   0x40bc50
40b1eb:	8b 75 ec             	mov    -0x14(%ebp),%esi
40b1ee:	80 7e 0d 00          	cmpb   $0x0,0xd(%esi)
40b1f2:	0f 85 87 00 00 00    	jne    0x40b27f
40b1f8:	83 7e 24 08          	cmpl   $0x8,0x24(%esi)
40b1fc:	8d 56 10             	lea    0x10(%esi),%edx
40b1ff:	72 03                	jb     0x40b204
40b201:	8b 56 10             	mov    0x10(%esi),%edx
40b204:	83 7b 14 08          	cmpl   $0x8,0x14(%ebx)
40b208:	8b cb                	mov    %ebx,%ecx
40b20a:	72 02                	jb     0x40b20e
40b20c:	8b 0b                	mov    (%ebx),%ecx
40b20e:	ff 76 20             	push   0x20(%esi)
40b211:	52                   	push   %edx
40b212:	8b 53 10             	mov    0x10(%ebx),%edx
40b215:	e8 66 9e ff ff       	call   0x405080
40b21a:	c1 e8 1f             	shr    $0x1f,%eax
40b21d:	83 c4 08             	add    $0x8,%esp
40b220:	84 c0                	test   %al,%al
40b222:	75 5b                	jne    0x40b27f
40b224:	8b 45 d8             	mov    -0x28(%ebp),%eax
40b227:	3b 30                	cmp    (%eax),%esi
40b229:	74 54                	je     0x40b27f
40b22b:	8b 46 28             	mov    0x28(%esi),%eax
40b22e:	8d 5e 28             	lea    0x28(%esi),%ebx
40b231:	8b 4b 04             	mov    0x4(%ebx),%ecx
40b234:	3b c1                	cmp    %ecx,%eax
40b236:	74 0f                	je     0x40b247
40b238:	3b 38                	cmp    (%eax),%edi
40b23a:	0f 84 dd 00 00 00    	je     0x40b31d
40b240:	83 c0 04             	add    $0x4,%eax
40b243:	3b c1                	cmp    %ecx,%eax
40b245:	75 f1                	jne    0x40b238
40b247:	8d 77 74             	lea    0x74(%edi),%esi
40b24a:	56                   	push   %esi
40b24b:	ff 15 f8 e0 43 00    	call   *0x43e0f8
40b251:	ff 47 70             	incl   0x70(%edi)
40b254:	56                   	push   %esi
40b255:	ff 15 fc e0 43 00    	call   *0x43e0fc
40b25b:	8b 43 04             	mov    0x4(%ebx),%eax
40b25e:	3b 43 08             	cmp    0x8(%ebx),%eax
40b261:	74 0b                	je     0x40b26e
40b263:	89 38                	mov    %edi,(%eax)
40b265:	83 43 04 04          	addl   $0x4,0x4(%ebx)
40b269:	e9 af 00 00 00       	jmp    0x40b31d
40b26e:	8d 4d e0             	lea    -0x20(%ebp),%ecx
40b271:	51                   	push   %ecx
40b272:	50                   	push   %eax
40b273:	8b cb                	mov    %ebx,%ecx
40b275:	e8 c6 08 00 00       	call   0x40bb40
40b27a:	e9 9e 00 00 00       	jmp    0x40b31d
40b27f:	8d 77 74             	lea    0x74(%edi),%esi
40b282:	56                   	push   %esi
40b283:	ff 15 f8 e0 43 00    	call   *0x43e0f8
40b289:	ff 47 70             	incl   0x70(%edi)
40b28c:	56                   	push   %esi
40b28d:	ff 15 fc e0 43 00    	call   *0x43e0fc
40b293:	0f 57 c0             	xorps  %xmm0,%xmm0
40b296:	c7 45 ec 00 00 00 00 	movl   $0x0,-0x14(%ebp)
40b29d:	66 0f d6 45 e4       	movq   %xmm0,-0x1c(%ebp)
40b2a2:	c7 45 e4 00 00 00 00 	movl   $0x0,-0x1c(%ebp)
40b2a9:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
40b2b0:	c7 45 ec 00 00 00 00 	movl   $0x0,-0x14(%ebp)
40b2b7:	8d 45 e0             	lea    -0x20(%ebp),%eax
40b2ba:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
40b2c1:	50                   	push   %eax
40b2c2:	6a 00                	push   $0x0
40b2c4:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
40b2c7:	e8 74 08 00 00       	call   0x40bb40
40b2cc:	8b 4d d8             	mov    -0x28(%ebp),%ecx
40b2cf:	53                   	push   %ebx
40b2d0:	e8 bb 03 00 00       	call   0x40b690
40b2d5:	8b 75 e4             	mov    -0x1c(%ebp),%esi
40b2d8:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
40b2db:	3b c1                	cmp    %ecx,%eax
40b2dd:	74 0e                	je     0x40b2ed
40b2df:	ff 75 e0             	push   -0x20(%ebp)
40b2e2:	8b c8                	mov    %eax,%ecx
40b2e4:	ff 75 e8             	push   -0x18(%ebp)
40b2e7:	56                   	push   %esi
40b2e8:	e8 03 07 00 00       	call   0x40b9f0
40b2ed:	85 f6                	test   %esi,%esi
40b2ef:	74 2c                	je     0x40b31d
40b2f1:	8b 4d ec             	mov    -0x14(%ebp),%ecx
40b2f4:	8b c6                	mov    %esi,%eax
40b2f6:	2b ce                	sub    %esi,%ecx
40b2f8:	83 e1 fc             	and    $0xfffffffc,%ecx
40b2fb:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
40b301:	72 10                	jb     0x40b313
40b303:	8b 70 fc             	mov    -0x4(%eax),%esi
40b306:	83 c1 23             	add    $0x23,%ecx
40b309:	2b c6                	sub    %esi,%eax
40b30b:	83 c0 fc             	add    $0xfffffffc,%eax
40b30e:	83 f8 1f             	cmp    $0x1f,%eax
40b311:	77 2b                	ja     0x40b33e
40b313:	51                   	push   %ecx
40b314:	56                   	push   %esi
40b315:	e8 9e e8 00 00       	call   0x419bb8
40b31a:	83 c4 08             	add    $0x8,%esp
40b31d:	8a 45 df             	mov    -0x21(%ebp),%al
40b320:	8b 4d f4             	mov    -0xc(%ebp),%ecx
40b323:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
40b32a:	59                   	pop    %ecx
40b32b:	5f                   	pop    %edi
40b32c:	5e                   	pop    %esi
40b32d:	5b                   	pop    %ebx
40b32e:	8b 4d f0             	mov    -0x10(%ebp),%ecx
40b331:	33 cd                	xor    %ebp,%ecx
40b333:	e8 72 e8 00 00       	call   0x419baa
40b338:	8b e5                	mov    %ebp,%esp
40b33a:	5d                   	pop    %ebp
40b33b:	c2 04 00             	ret    $0x4
40b33e:	e8 50 46 01 00       	call   0x41f993
40b343:	cc                   	int3
40b344:	cc                   	int3
40b345:	cc                   	int3
40b346:	cc                   	int3
40b347:	cc                   	int3
40b348:	cc                   	int3
40b349:	cc                   	int3
40b34a:	cc                   	int3
40b34b:	cc                   	int3
40b34c:	cc                   	int3
40b34d:	cc                   	int3
40b34e:	cc                   	int3
40b34f:	cc                   	int3
40b350:	55                   	push   %ebp
40b351:	8b ec                	mov    %esp,%ebp
40b353:	83 ec 4c             	sub    $0x4c,%esp
40b356:	8b 45 10             	mov    0x10(%ebp),%eax
40b359:	8b 55 08             	mov    0x8(%ebp),%edx
40b35c:	89 45 d8             	mov    %eax,-0x28(%ebp)
40b35f:	8b 45 14             	mov    0x14(%ebp),%eax
40b362:	89 45 dc             	mov    %eax,-0x24(%ebp)
40b365:	8b 45 18             	mov    0x18(%ebp),%eax
40b368:	89 45 e0             	mov    %eax,-0x20(%ebp)
40b36b:	8b 45 1c             	mov    0x1c(%ebp),%eax
40b36e:	89 45 e4             	mov    %eax,-0x1c(%ebp)
40b371:	8b 45 20             	mov    0x20(%ebp),%eax
40b374:	89 45 e8             	mov    %eax,-0x18(%ebp)
40b377:	8b 45 24             	mov    0x24(%ebp),%eax
40b37a:	89 45 ec             	mov    %eax,-0x14(%ebp)
40b37d:	8b 45 28             	mov    0x28(%ebp),%eax
40b380:	89 45 f0             	mov    %eax,-0x10(%ebp)
40b383:	8b 45 2c             	mov    0x2c(%ebp),%eax
40b386:	89 45 f4             	mov    %eax,-0xc(%ebp)
40b389:	53                   	push   %ebx
40b38a:	8b d9                	mov    %ecx,%ebx
40b38c:	89 5d fc             	mov    %ebx,-0x4(%ebp)
40b38f:	56                   	push   %esi
40b390:	57                   	push   %edi
40b391:	85 d2                	test   %edx,%edx
40b393:	0f 84 06 01 00 00    	je     0x40b49f
40b399:	8b ca                	mov    %edx,%ecx
40b39b:	c7 45 c0 00 00 00 00 	movl   $0x0,-0x40(%ebp)
40b3a2:	c7 45 d0 00 00 00 00 	movl   $0x0,-0x30(%ebp)
40b3a9:	c7 45 d4 00 00 00 00 	movl   $0x0,-0x2c(%ebp)
40b3b0:	8d 71 02             	lea    0x2(%ecx),%esi
40b3b3:	66 8b 01             	mov    (%ecx),%ax
40b3b6:	83 c1 02             	add    $0x2,%ecx
40b3b9:	66 85 c0             	test   %ax,%ax
40b3bc:	75 f5                	jne    0x40b3b3
40b3be:	2b ce                	sub    %esi,%ecx
40b3c0:	d1 f9                	sar    $1,%ecx
40b3c2:	51                   	push   %ecx
40b3c3:	52                   	push   %edx
40b3c4:	8d 4d c0             	lea    -0x40(%ebp),%ecx
40b3c7:	e8 34 7c ff ff       	call   0x403000
40b3cc:	8d 45 c0             	lea    -0x40(%ebp),%eax
40b3cf:	8b cb                	mov    %ebx,%ecx
40b3d1:	50                   	push   %eax
40b3d2:	8d 45 b4             	lea    -0x4c(%ebp),%eax
40b3d5:	50                   	push   %eax
40b3d6:	e8 75 08 00 00       	call   0x40bc50
40b3db:	8b 5d bc             	mov    -0x44(%ebp),%ebx
40b3de:	8b 7d d4             	mov    -0x2c(%ebp),%edi
40b3e1:	8b 75 c0             	mov    -0x40(%ebp),%esi
40b3e4:	89 5d f8             	mov    %ebx,-0x8(%ebp)
40b3e7:	80 7b 0d 00          	cmpb   $0x0,0xd(%ebx)
40b3eb:	75 28                	jne    0x40b415
40b3ed:	83 7b 24 08          	cmpl   $0x8,0x24(%ebx)
40b3f1:	8d 53 10             	lea    0x10(%ebx),%edx
40b3f4:	72 03                	jb     0x40b3f9
40b3f6:	8b 53 10             	mov    0x10(%ebx),%edx
40b3f9:	ff 73 20             	push   0x20(%ebx)
40b3fc:	83 ff 08             	cmp    $0x8,%edi
40b3ff:	8d 4d c0             	lea    -0x40(%ebp),%ecx
40b402:	52                   	push   %edx
40b403:	8b 55 d0             	mov    -0x30(%ebp),%edx
40b406:	0f 43 ce             	cmovae %esi,%ecx
40b409:	e8 72 9c ff ff       	call   0x405080
40b40e:	83 c4 08             	add    $0x8,%esp
40b411:	85 c0                	test   %eax,%eax
40b413:	79 08                	jns    0x40b41d
40b415:	8b 5d fc             	mov    -0x4(%ebp),%ebx
40b418:	8b 1b                	mov    (%ebx),%ebx
40b41a:	89 5d f8             	mov    %ebx,-0x8(%ebp)
40b41d:	83 ff 08             	cmp    $0x8,%edi
40b420:	72 2b                	jb     0x40b44d
40b422:	8d 0c 7d 02 00 00 00 	lea    0x2(,%edi,2),%ecx
40b429:	8b c6                	mov    %esi,%eax
40b42b:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
40b431:	72 10                	jb     0x40b443
40b433:	8b 70 fc             	mov    -0x4(%eax),%esi
40b436:	83 c1 23             	add    $0x23,%ecx
40b439:	2b c6                	sub    %esi,%eax
40b43b:	83 c0 fc             	add    $0xfffffffc,%eax
40b43e:	83 f8 1f             	cmp    $0x1f,%eax
40b441:	77 65                	ja     0x40b4a8
40b443:	51                   	push   %ecx
40b444:	56                   	push   %esi
40b445:	e8 6e e7 00 00       	call   0x419bb8
40b44a:	83 c4 08             	add    $0x8,%esp
40b44d:	8b 45 fc             	mov    -0x4(%ebp),%eax