40627d:	eb cb                	jmp    0x40624a
40627f:	8b 45 f8             	mov    -0x8(%ebp),%eax
406282:	c1 e8 0a             	shr    $0xa,%eax
406285:	eb c3                	jmp    0x40624a
406287:	33 ff                	xor    %edi,%edi
406289:	47                   	inc    %edi
40628a:	57                   	push   %edi
40628b:	6a 02                	push   $0x2
40628d:	56                   	push   %esi
40628e:	56                   	push   %esi
40628f:	8b 35 ac b1 44 00    	mov    0x44b1ac,%esi
406295:	ff d6                	call   *%esi
406297:	57                   	push   %edi
406298:	57                   	push   %edi
406299:	52                   	push   %edx
40629a:	50                   	push   %eax
40629b:	ff d6                	call   *%esi
40629d:	57                   	push   %edi
40629e:	6a 20                	push   $0x20
4062a0:	52                   	push   %edx
4062a1:	50                   	push   %eax
4062a2:	ff d6                	call   *%esi
4062a4:	57                   	push   %edi
4062a5:	6a 10                	push   $0x10
4062a7:	52                   	push   %edx
4062a8:	50                   	push   %eax
4062a9:	ff d6                	call   *%esi
4062ab:	52                   	push   %edx
4062ac:	50                   	push   %eax
4062ad:	6a 33                	push   $0x33
4062af:	8d 85 e0 fe ff ff    	lea    -0x120(%ebp),%eax
4062b5:	50                   	push   %eax
4062b6:	ff 15 d4 b1 44 00    	call   *0x44b1d4
4062bc:	eb 91                	jmp    0x40624f
4062be:	8b 45 f8             	mov    -0x8(%ebp),%eax
4062c1:	33 ff                	xor    %edi,%edi
4062c3:	47                   	inc    %edi
4062c4:	a8 10                	test   $0x10,%al
4062c6:	74 10                	je     0x4062d8
4062c8:	25 00 01 00 00       	and    $0x100,%eax
4062cd:	33 c9                	xor    %ecx,%ecx
4062cf:	66 3b c8             	cmp    %ax,%cx
4062d2:	75 04                	jne    0x4062d8
4062d4:	8b c7                	mov    %edi,%eax
4062d6:	eb 17                	jmp    0x4062ef
4062d8:	0f 57 c0             	xorps  %xmm0,%xmm0
4062db:	66 0f 13 85 c0 fe ff 	movlpd %xmm0,-0x140(%ebp)
4062e2:	ff
4062e3:	8b b5 c4 fe ff ff    	mov    -0x13c(%ebp),%esi
4062e9:	8b 85 c0 fe ff ff    	mov    -0x140(%ebp),%eax
4062ef:	89 b5 cc fe ff ff    	mov    %esi,-0x134(%ebp)
4062f5:	89 bd d8 fe ff ff    	mov    %edi,-0x128(%ebp)
4062fb:	89 85 c8 fe ff ff    	mov    %eax,-0x138(%ebp)
406301:	53                   	push   %ebx
406302:	8d 85 c8 fe ff ff    	lea    -0x138(%ebp),%eax
406308:	50                   	push   %eax
406309:	e8 65 9c 01 00       	call   0x41ff73
40630e:	8b f0                	mov    %eax,%esi
406310:	85 f6                	test   %esi,%esi
406312:	79 0d                	jns    0x406321
406314:	68 fc ca 44 00       	push   $0x44cafc
406319:	56                   	push   %esi
40631a:	e8 10 9e 03 00       	call   0x44012f
40631f:	59                   	pop    %ecx
406320:	59                   	pop    %ecx
406321:	8b 4d fc             	mov    -0x4(%ebp),%ecx
406324:	8b c6                	mov    %esi,%eax
406326:	5f                   	pop    %edi
406327:	5e                   	pop    %esi
406328:	33 cd                	xor    %ebp,%ecx
40632a:	5b                   	pop    %ebx
40632b:	e8 06 7b 02 00       	call   0x42de36
406330:	8b e5                	mov    %ebp,%esp
406332:	5d                   	pop    %ebp
406333:	c2 08 00             	ret    $0x8
406336:	66 90                	xchg   %ax,%ax
406338:	2a 62 40             	sub    0x40(%edx),%ah
40633b:	00 44 62 40          	add    %al,0x40(%edx,%eiz,2)
40633f:	00 5b 62             	add    %bl,0x62(%ebx)
406342:	40                   	inc    %eax
406343:	00 63 62             	add    %ah,0x62(%ebx)
406346:	40                   	inc    %eax
406347:	00 6a 62             	add    %ch,0x62(%edx)
40634a:	40                   	inc    %eax
40634b:	00 72 62             	add    %dh,0x62(%edx)
40634e:	40                   	inc    %eax
40634f:	00 77 62             	add    %dh,0x62(%edi)
406352:	40                   	inc    %eax
406353:	00 7f 62             	add    %bh,0x62(%edi)
406356:	40                   	inc    %eax
406357:	00 87 62 40 00 be    	add    %al,-0x41ffbf9e(%edi)
40635d:	62 40 00             	bound  %eax,0x0(%eax)
406360:	55                   	push   %ebp
406361:	8b ec                	mov    %esp,%ebp
406363:	51                   	push   %ecx
406364:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
406368:	8d 45 fc             	lea    -0x4(%ebp),%eax
40636b:	56                   	push   %esi
40636c:	50                   	push   %eax
40636d:	e8 c9 d5 03 00       	call   0x44393b
406372:	8b f0                	mov    %eax,%esi
406374:	85 f6                	test   %esi,%esi
406376:	79 07                	jns    0x40637f
406378:	68 08 d9 44 00       	push   $0x44d908
40637d:	eb 19                	jmp    0x406398
40637f:	8b 45 fc             	mov    -0x4(%ebp),%eax
406382:	99                   	cltd
406383:	52                   	push   %edx
406384:	50                   	push   %eax
406385:	ff 75 0c             	push   0xc(%ebp)
406388:	e8 23 9f 01 00       	call   0x4202b0
40638d:	8b f0                	mov    %eax,%esi
40638f:	85 f6                	test   %esi,%esi
406391:	79 0d                	jns    0x4063a0
406393:	68 fc ca 44 00       	push   $0x44cafc
406398:	56                   	push   %esi
406399:	e8 91 9d 03 00       	call   0x44012f
40639e:	59                   	pop    %ecx
40639f:	59                   	pop    %ecx
4063a0:	8b c6                	mov    %esi,%eax
4063a2:	5e                   	pop    %esi
4063a3:	8b e5                	mov    %ebp,%esp
4063a5:	5d                   	pop    %ebp
4063a6:	c2 08 00             	ret    $0x8
4063a9:	55                   	push   %ebp
4063aa:	8b ec                	mov    %esp,%ebp
4063ac:	51                   	push   %ecx
4063ad:	56                   	push   %esi
4063ae:	57                   	push   %edi
4063af:	33 f6                	xor    %esi,%esi
4063b1:	56                   	push   %esi
4063b2:	89 75 fc             	mov    %esi,-0x4(%ebp)
4063b5:	ff 15 b4 b3 44 00    	call   *0x44b3b4
4063bb:	85 c0                	test   %eax,%eax
4063bd:	79 0c                	jns    0x4063cb
4063bf:	3d 06 01 01 80       	cmp    $0x80010106,%eax
4063c4:	74 05                	je     0x4063cb
4063c6:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4063c9:	eb 19                	jmp    0x4063e4
4063cb:	8d 45 fc             	lea    -0x4(%ebp),%eax
4063ce:	33 f6                	xor    %esi,%esi
4063d0:	50                   	push   %eax
4063d1:	46                   	inc    %esi
4063d2:	e8 0f d9 03 00       	call   0x443ce6
4063d7:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4063da:	33 d2                	xor    %edx,%edx
4063dc:	85 c0                	test   %eax,%eax
4063de:	0f 48 ca             	cmovs  %edx,%ecx
4063e1:	89 4d fc             	mov    %ecx,-0x4(%ebp)
4063e4:	8b c1                	mov    %ecx,%eax
4063e6:	99                   	cltd
4063e7:	52                   	push   %edx
4063e8:	50                   	push   %eax
4063e9:	ff 75 0c             	push   0xc(%ebp)
4063ec:	e8 bf 9e 01 00       	call   0x4202b0
4063f1:	8b f8                	mov    %eax,%edi
4063f3:	85 ff                	test   %edi,%edi
4063f5:	79 0d                	jns    0x406404
4063f7:	68 3c d9 44 00       	push   $0x44d93c
4063fc:	57                   	push   %edi
4063fd:	e8 2d 9d 03 00       	call   0x44012f
406402:	59                   	pop    %ecx
406403:	59                   	pop    %ecx
406404:	85 f6                	test   %esi,%esi
406406:	74 06                	je     0x40640e
406408:	ff 15 ac b3 44 00    	call   *0x44b3ac
40640e:	8b c7                	mov    %edi,%eax
406410:	5f                   	pop    %edi
406411:	5e                   	pop    %esi
406412:	8b e5                	mov    %ebp,%esp
406414:	5d                   	pop    %ebp
406415:	c2 08 00             	ret    $0x8
406418:	55                   	push   %ebp
406419:	8b ec                	mov    %esp,%ebp
40641b:	51                   	push   %ecx
40641c:	51                   	push   %ecx
40641d:	56                   	push   %esi
40641e:	8d 45 f8             	lea    -0x8(%ebp),%eax
406421:	33 f6                	xor    %esi,%esi
406423:	21 75 fc             	and    %esi,-0x4(%ebp)
406426:	21 75 f8             	and    %esi,-0x8(%ebp)
406429:	50                   	push   %eax
40642a:	ff 15 80 b1 44 00    	call   *0x44b180
406430:	50                   	push   %eax
406431:	e8 85 a5 03 00       	call   0x4409bb
406436:	39 75 f8             	cmp    %esi,-0x8(%ebp)
406439:	74 39                	je     0x406474
40643b:	8d 45 fc             	lea    -0x4(%ebp),%eax
40643e:	50                   	push   %eax
40643f:	ff 75 08             	push   0x8(%ebp)
406442:	e8 a9 f7 ff ff       	call   0x405bf0
406447:	8b f0                	mov    %eax,%esi
406449:	85 f6                	test   %esi,%esi
40644b:	79 07                	jns    0x406454
40644d:	68 68 d9 44 00       	push   $0x44d968
406452:	eb 18                	jmp    0x40646c
406454:	6a 00                	push   $0x0
406456:	ff 75 fc             	push   -0x4(%ebp)
406459:	ff 75 0c             	push   0xc(%ebp)
40645c:	e8 93 9e 01 00       	call   0x4202f4
406461:	8b f0                	mov    %eax,%esi
406463:	85 f6                	test   %esi,%esi
406465:	79 0d                	jns    0x406474
406467:	68 fc ca 44 00       	push   $0x44cafc
40646c:	56                   	push   %esi
40646d:	e8 bd 9c 03 00       	call   0x44012f
406472:	59                   	pop    %ecx
406473:	59                   	pop    %ecx
406474:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
406478:	74 08                	je     0x406482
40647a:	ff 75 fc             	push   -0x4(%ebp)
40647d:	e8 6d f0 03 00       	call   0x4454ef
406482:	8b c6                	mov    %esi,%eax
406484:	5e                   	pop    %esi
406485:	8b e5                	mov    %ebp,%esp
406487:	5d                   	pop    %ebp
406488:	c2 08 00             	ret    $0x8
40648b:	55                   	push   %ebp
40648c:	8b ec                	mov    %esp,%ebp
40648e:	56                   	push   %esi
40648f:	6a 00                	push   $0x0
406491:	ff 75 08             	push   0x8(%ebp)
406494:	ff 75 0c             	push   0xc(%ebp)
406497:	e8 58 9e 01 00       	call   0x4202f4
40649c:	8b f0                	mov    %eax,%esi
40649e:	85 f6                	test   %esi,%esi
4064a0:	79 0d                	jns    0x4064af
4064a2:	68 fc ca 44 00       	push   $0x44cafc
4064a7:	56                   	push   %esi
4064a8:	e8 82 9c 03 00       	call   0x44012f
4064ad:	59                   	pop    %ecx
4064ae:	59                   	pop    %ecx
4064af:	8b c6                	mov    %esi,%eax
4064b1:	5e                   	pop    %esi
4064b2:	5d                   	pop    %ebp
4064b3:	c2 08 00             	ret    $0x8
4064b6:	55                   	push   %ebp
4064b7:	8b ec                	mov    %esp,%ebp
4064b9:	81 ec 0c 02 00 00    	sub    $0x20c,%esp
4064bf:	a1 08 a0 46 00       	mov    0x46a008,%eax
4064c4:	33 c5                	xor    %ebp,%eax
4064c6:	89 45 fc             	mov    %eax,-0x4(%ebp)
4064c9:	56                   	push   %esi
4064ca:	57                   	push   %edi
4064cb:	8b 7d 0c             	mov    0xc(%ebp),%edi
4064ce:	8d 85 f4 fd ff ff    	lea    -0x20c(%ebp),%eax
4064d4:	68 08 02 00 00       	push   $0x208
4064d9:	6a 00                	push   $0x0
4064db:	50                   	push   %eax
4064dc:	e8 8f 91 02 00       	call   0x42f670
4064e1:	83 c4 0c             	add    $0xc,%esp
4064e4:	8d 85 f4 fd ff ff    	lea    -0x20c(%ebp),%eax
4064ea:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
4064ee:	be 04 01 00 00       	mov    $0x104,%esi
4064f3:	56                   	push   %esi
4064f4:	50                   	push   %eax
4064f5:	74 4f                	je     0x406546
4064f7:	ff 15 cc b1 44 00    	call   *0x44b1cc
4064fd:	85 c0                	test   %eax,%eax
4064ff:	0f 85 80 00 00 00    	jne    0x406585
406505:	ff 15 e8 b0 44 00    	call   *0x44b0e8
40650b:	33 c9                	xor    %ecx,%ecx
40650d:	83 f8 78             	cmp    $0x78,%eax
406510:	0f 45 c1             	cmovne %ecx,%eax
406513:	85 c0                	test   %eax,%eax
406515:	74 6e                	je     0x406585
406517:	0f b7 f0             	movzwl %ax,%esi
40651a:	81 ce 00 00 07 80    	or     $0x80070000,%esi
406520:	85 c0                	test   %eax,%eax
406522:	0f 4e f0             	cmovle %eax,%esi
406525:	b8 05 40 00 80       	mov    $0x80004005,%eax
40652a:	85 f6                	test   %esi,%esi
40652c:	0f 49 f0             	cmovns %eax,%esi
40652f:	56                   	push   %esi
406530:	68 77 07 00 00       	push   $0x777
406535:	68 bc cc 44 00       	push   $0x44ccbc
40653a:	e8 94 d2 ff ff       	call   0x4037d3
40653f:	68 20 d8 44 00       	push   $0x44d820
406544:	eb 7d                	jmp    0x4065c3
406546:	ff 15 3c b1 44 00    	call   *0x44b13c
40654c:	85 c0                	test   %eax,%eax
40654e:	75 35                	jne    0x406585
406550:	ff 15 e8 b0 44 00    	call   *0x44b0e8
406556:	0f b7 f0             	movzwl %ax,%esi
406559:	81 ce 00 00 07 80    	or     $0x80070000,%esi
40655f:	85 c0                	test   %eax,%eax
406561:	0f 4e f0             	cmovle %eax,%esi
406564:	b8 05 40 00 80       	mov    $0x80004005,%eax
406569:	85 f6                	test   %esi,%esi
40656b:	0f 49 f0             	cmovns %eax,%esi
40656e:	56                   	push   %esi
40656f:	68 7e 07 00 00       	push   $0x77e
406574:	68 bc cc 44 00       	push   $0x44ccbc
406579:	e8 55 d2 ff ff       	call   0x4037d3
40657e:	68 44 d8 44 00       	push   $0x44d844
406583:	eb 3e                	jmp    0x4065c3
406585:	66 83 bd f4 fd ff ff 	cmpw   $0x0,-0x20c(%ebp)
40658c:	00
40658d:	74 1a                	je     0x4065a9
40658f:	56                   	push   %esi
406590:	8d 85 f4 fd ff ff    	lea    -0x20c(%ebp),%eax
406596:	50                   	push   %eax
406597:	e8 f3 cd ff ff       	call   0x40338f
40659c:	8b f0                	mov    %eax,%esi
40659e:	85 f6                	test   %esi,%esi
4065a0:	79 07                	jns    0x4065a9
4065a2:	68 68 d8 44 00       	push   $0x44d868
4065a7:	eb 1a                	jmp    0x4065c3
4065a9:	6a 00                	push   $0x0
4065ab:	8d 85 f4 fd ff ff    	lea    -0x20c(%ebp),%eax
4065b1:	50                   	push   %eax
4065b2:	57                   	push   %edi
4065b3:	e8 3c 9d 01 00       	call   0x4202f4
4065b8:	8b f0                	mov    %eax,%esi
4065ba:	85 f6                	test   %esi,%esi
4065bc:	79 0d                	jns    0x4065cb
4065be:	68 98 d8 44 00       	push   $0x44d898
4065c3:	56                   	push   %esi
4065c4:	e8 66 9b 03 00       	call   0x44012f
4065c9:	59                   	pop    %ecx
4065ca:	59                   	pop    %ecx
4065cb:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4065ce:	8b c6                	mov    %esi,%eax
4065d0:	5f                   	pop    %edi
4065d1:	33 cd                	xor    %ebp,%ecx
4065d3:	5e                   	pop    %esi
4065d4:	e8 5d 78 02 00       	call   0x42de36
4065d9:	8b e5                	mov    %ebp,%esp
4065db:	5d                   	pop    %ebp
4065dc:	c2 08 00             	ret    $0x8
4065df:	55                   	push   %ebp
4065e0:	8b ec                	mov    %esp,%ebp
4065e2:	83 ec 3c             	sub    $0x3c,%esp
4065e5:	33 c0                	xor    %eax,%eax
4065e7:	57                   	push   %edi
4065e8:	6a 09                	push   $0x9
4065ea:	59                   	pop    %ecx
4065eb:	8d 7d c4             	lea    -0x3c(%ebp),%edi
4065ee:	f3 ab                	rep stos %eax,%es:(%edi)
4065f0:	6a 06                	push   $0x6
4065f2:	59                   	pop    %ecx
4065f3:	8d 7d e8             	lea    -0x18(%ebp),%edi
4065f6:	f3 ab                	rep stos %eax,%es:(%edi)
4065f8:	8d 45 c4             	lea    -0x3c(%ebp),%eax
4065fb:	50                   	push   %eax
4065fc:	ff 15 c0 b1 44 00    	call   *0x44b1c0
406602:	83 7d 08 0e          	cmpl   $0xe,0x8(%ebp)
406606:	5f                   	pop    %edi
406607:	75 12                	jne    0x40661b
406609:	0f b7 45 c4          	movzwl -0x3c(%ebp),%eax