4062f9:	89 a5 d8 00 00 00    	mov    %esp,0xd8(%ebp)
4062ff:	50                   	push   %eax
406300:	e8 8f 55 00 00       	call   0x40b894
406305:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
406309:	83 ec 68             	sub    $0x68,%esp
40630c:	8d 45 08             	lea    0x8(%ebp),%eax
40630f:	89 65 f0             	mov    %esp,-0x10(%ebp)
406312:	8b cc                	mov    %esp,%ecx
406314:	50                   	push   %eax
406315:	e8 7a 55 00 00       	call   0x40b894
40631a:	c6 45 fc 03          	movb   $0x3,-0x4(%ebp)
40631e:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
406322:	e8 8c 01 00 00       	call   0x4064b3
406327:	81 c4 d8 00 00 00    	add    $0xd8,%esp
40632d:	8b f0                	mov    %eax,%esi
40632f:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
406333:	8d 4d 08             	lea    0x8(%ebp),%ecx
406336:	e8 92 80 00 00       	call   0x40e3cd
40633b:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
40633f:	8d 4d 70             	lea    0x70(%ebp),%ecx
406342:	e8 86 80 00 00       	call   0x40e3cd
406347:	8b c6                	mov    %esi,%eax
406349:	e8 c5 96 03 00       	call   0x43fa13
40634e:	c2 d4 00             	ret    $0xd4
406351:	55                   	push   %ebp
406352:	8b ec                	mov    %esp,%ebp
406354:	8b 55 0c             	mov    0xc(%ebp),%edx
406357:	8b 45 08             	mov    0x8(%ebp),%eax
40635a:	85 d2                	test   %edx,%edx
40635c:	74 11                	je     0x40636f
40635e:	56                   	push   %esi
40635f:	8b 75 10             	mov    0x10(%ebp),%esi
406362:	8b 0e                	mov    (%esi),%ecx
406364:	89 08                	mov    %ecx,(%eax)
406366:	83 c0 04             	add    $0x4,%eax
406369:	83 ea 01             	sub    $0x1,%edx
40636c:	75 f4                	jne    0x406362
40636e:	5e                   	pop    %esi
40636f:	5d                   	pop    %ebp
406370:	c3                   	ret
406371:	55                   	push   %ebp
406372:	8b ec                	mov    %esp,%ebp
406374:	51                   	push   %ecx
406375:	51                   	push   %ecx
406376:	8d 45 f8             	lea    -0x8(%ebp),%eax
406379:	50                   	push   %eax
40637a:	8d 45 f8             	lea    -0x8(%ebp),%eax
40637d:	50                   	push   %eax
40637e:	8d 45 ff             	lea    -0x1(%ebp),%eax
406381:	50                   	push   %eax
406382:	e8 ee e6 ff ff       	call   0x404a75
406387:	ff 75 10             	push   0x10(%ebp)
40638a:	ff 75 0c             	push   0xc(%ebp)
40638d:	ff 75 08             	push   0x8(%ebp)
406390:	e8 e9 ce ff ff       	call   0x40327e
406395:	83 c4 18             	add    $0x18,%esp
406398:	c9                   	leave
406399:	c3                   	ret
40639a:	55                   	push   %ebp
40639b:	8b ec                	mov    %esp,%ebp
40639d:	51                   	push   %ecx
40639e:	51                   	push   %ecx
40639f:	8d 45 f8             	lea    -0x8(%ebp),%eax
4063a2:	50                   	push   %eax
4063a3:	8d 45 f8             	lea    -0x8(%ebp),%eax
4063a6:	50                   	push   %eax
4063a7:	8d 45 ff             	lea    -0x1(%ebp),%eax
4063aa:	50                   	push   %eax
4063ab:	e8 d0 e6 ff ff       	call   0x404a80
4063b0:	ff 75 10             	push   0x10(%ebp)
4063b3:	ff 75 0c             	push   0xc(%ebp)
4063b6:	ff 75 08             	push   0x8(%ebp)
4063b9:	e8 e2 ce ff ff       	call   0x4032a0
4063be:	83 c4 18             	add    $0x18,%esp
4063c1:	c9                   	leave
4063c2:	c3                   	ret
4063c3:	55                   	push   %ebp
4063c4:	8b ec                	mov    %esp,%ebp
4063c6:	51                   	push   %ecx
4063c7:	51                   	push   %ecx
4063c8:	8d 45 f8             	lea    -0x8(%ebp),%eax
4063cb:	50                   	push   %eax
4063cc:	8d 45 f8             	lea    -0x8(%ebp),%eax
4063cf:	50                   	push   %eax
4063d0:	8d 45 ff             	lea    -0x1(%ebp),%eax
4063d3:	50                   	push   %eax
4063d4:	e8 b2 e6 ff ff       	call   0x404a8b
4063d9:	ff 75 10             	push   0x10(%ebp)
4063dc:	ff 75 0c             	push   0xc(%ebp)
4063df:	ff 75 08             	push   0x8(%ebp)
4063e2:	e8 db ce ff ff       	call   0x4032c2
4063e7:	83 c4 18             	add    $0x18,%esp
4063ea:	c9                   	leave
4063eb:	c3                   	ret
4063ec:	55                   	push   %ebp
4063ed:	8b ec                	mov    %esp,%ebp
4063ef:	51                   	push   %ecx
4063f0:	51                   	push   %ecx
4063f1:	8d 45 f8             	lea    -0x8(%ebp),%eax
4063f4:	50                   	push   %eax
4063f5:	8d 45 f8             	lea    -0x8(%ebp),%eax
4063f8:	50                   	push   %eax
4063f9:	8d 45 ff             	lea    -0x1(%ebp),%eax
4063fc:	50                   	push   %eax
4063fd:	e8 94 e6 ff ff       	call   0x404a96
406402:	ff 75 10             	push   0x10(%ebp)
406405:	ff 75 0c             	push   0xc(%ebp)
406408:	ff 75 08             	push   0x8(%ebp)
40640b:	e8 d4 ce ff ff       	call   0x4032e4
406410:	83 c4 18             	add    $0x18,%esp
406413:	c9                   	leave
406414:	c3                   	ret
406415:	55                   	push   %ebp
406416:	8b ec                	mov    %esp,%ebp
406418:	51                   	push   %ecx
406419:	51                   	push   %ecx
40641a:	51                   	push   %ecx
40641b:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
40641f:	ff 75 fc             	push   -0x4(%ebp)
406422:	ff 75 14             	push   0x14(%ebp)
406425:	ff 75 10             	push   0x10(%ebp)
406428:	ff 75 0c             	push   0xc(%ebp)
40642b:	ff 75 08             	push   0x8(%ebp)
40642e:	e8 98 01 00 00       	call   0x4065cb
406433:	83 c4 18             	add    $0x18,%esp
406436:	c9                   	leave
406437:	c3                   	ret
406438:	55                   	push   %ebp
406439:	8b ec                	mov    %esp,%ebp
40643b:	51                   	push   %ecx
40643c:	51                   	push   %ecx
40643d:	8d 45 f8             	lea    -0x8(%ebp),%eax
406440:	50                   	push   %eax
406441:	8d 45 f8             	lea    -0x8(%ebp),%eax
406444:	50                   	push   %eax
406445:	8d 45 ff             	lea    -0x1(%ebp),%eax
406448:	50                   	push   %eax
406449:	e8 69 e6 ff ff       	call   0x404ab7
40644e:	ff 75 10             	push   0x10(%ebp)
406451:	ff 75 0c             	push   0xc(%ebp)
406454:	ff 75 08             	push   0x8(%ebp)
406457:	e8 10 cf ff ff       	call   0x40336c
40645c:	83 c4 18             	add    $0x18,%esp
40645f:	c9                   	leave
406460:	c3                   	ret
406461:	55                   	push   %ebp
406462:	8b ec                	mov    %esp,%ebp
406464:	51                   	push   %ecx
406465:	51                   	push   %ecx
406466:	8d 45 f8             	lea    -0x8(%ebp),%eax
406469:	50                   	push   %eax
40646a:	8d 45 f8             	lea    -0x8(%ebp),%eax
40646d:	50                   	push   %eax
40646e:	8d 45 ff             	lea    -0x1(%ebp),%eax
406471:	50                   	push   %eax
406472:	e8 e8 e5 ff ff       	call   0x404a5f
406477:	ff 75 10             	push   0x10(%ebp)
40647a:	ff 75 0c             	push   0xc(%ebp)
40647d:	ff 75 08             	push   0x8(%ebp)
406480:	e8 09 cf ff ff       	call   0x40338e
406485:	83 c4 18             	add    $0x18,%esp
406488:	c9                   	leave
406489:	c3                   	ret
40648a:	55                   	push   %ebp
40648b:	8b ec                	mov    %esp,%ebp
40648d:	51                   	push   %ecx
40648e:	51                   	push   %ecx
40648f:	8d 45 f8             	lea    -0x8(%ebp),%eax
406492:	50                   	push   %eax
406493:	8d 45 f8             	lea    -0x8(%ebp),%eax
406496:	50                   	push   %eax
406497:	8d 45 ff             	lea    -0x1(%ebp),%eax
40649a:	50                   	push   %eax
40649b:	e8 ca e5 ff ff       	call   0x404a6a
4064a0:	ff 75 10             	push   0x10(%ebp)
4064a3:	ff 75 0c             	push   0xc(%ebp)
4064a6:	ff 75 08             	push   0x8(%ebp)
4064a9:	e8 02 cf ff ff       	call   0x4033b0
4064ae:	83 c4 18             	add    $0x18,%esp
4064b1:	c9                   	leave
4064b2:	c3                   	ret
4064b3:	68 d8 00 00 00       	push   $0xd8
4064b8:	b8 55 a5 48 00       	mov    $0x48a555,%eax
4064bd:	e8 88 95 03 00       	call   0x43fa4a
4064c2:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
4064c9:	8d 45 08             	lea    0x8(%ebp),%eax
4064cc:	50                   	push   %eax
4064cd:	8d 8d 1c ff ff ff    	lea    -0xe4(%ebp),%ecx
4064d3:	e8 bc 53 00 00       	call   0x40b894
4064d8:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
4064dc:	8d 45 70             	lea    0x70(%ebp),%eax
4064df:	50                   	push   %eax
4064e0:	8d 4d 84             	lea    -0x7c(%ebp),%ecx
4064e3:	e8 ac 53 00 00       	call   0x40b894
4064e8:	c6 45 fc 03          	movb   $0x3,-0x4(%ebp)
4064ec:	8d 45 84             	lea    -0x7c(%ebp),%eax
4064ef:	51                   	push   %ecx
4064f0:	c6 45 f0 00          	movb   $0x0,-0x10(%ebp)
4064f4:	ff 75 f0             	push   -0x10(%ebp)
4064f7:	ff b5 dc 00 00 00    	push   0xdc(%ebp)
4064fd:	ff b5 d8 00 00 00    	push   0xd8(%ebp)
406503:	83 ec 68             	sub    $0x68,%esp
406506:	8b cc                	mov    %esp,%ecx
406508:	89 a5 dc 00 00 00    	mov    %esp,0xdc(%ebp)
40650e:	50                   	push   %eax
40650f:	e8 80 53 00 00       	call   0x40b894
406514:	c6 45 fc 04          	movb   $0x4,-0x4(%ebp)
406518:	83 ec 68             	sub    $0x68,%esp
40651b:	8d 85 1c ff ff ff    	lea    -0xe4(%ebp),%eax
406521:	89 a5 d8 00 00 00    	mov    %esp,0xd8(%ebp)
406527:	8b cc                	mov    %esp,%ecx
406529:	50                   	push   %eax
40652a:	e8 65 53 00 00       	call   0x40b894
40652f:	c6 45 fc 05          	movb   $0x5,-0x4(%ebp)
406533:	c6 45 fc 03          	movb   $0x3,-0x4(%ebp)
406537:	e8 b5 00 00 00       	call   0x4065f1
40653c:	81 c4 e0 00 00 00    	add    $0xe0,%esp
406542:	8b f0                	mov    %eax,%esi
406544:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
406548:	8d 4d 84             	lea    -0x7c(%ebp),%ecx
40654b:	e8 7d 7e 00 00       	call   0x40e3cd
406550:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
406554:	8d 8d 1c ff ff ff    	lea    -0xe4(%ebp),%ecx
40655a:	e8 6e 7e 00 00       	call   0x40e3cd
40655f:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
406563:	8d 4d 08             	lea    0x8(%ebp),%ecx
406566:	e8 62 7e 00 00       	call   0x40e3cd
40656b:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
40656f:	8d 4d 70             	lea    0x70(%ebp),%ecx
406572:	e8 56 7e 00 00       	call   0x40e3cd
406577:	8b c6                	mov    %esi,%eax
406579:	e8 95 94 03 00       	call   0x43fa13
40657e:	c3                   	ret
40657f:	55                   	push   %ebp
406580:	8b ec                	mov    %esp,%ebp
406582:	8b 55 08             	mov    0x8(%ebp),%edx
406585:	56                   	push   %esi
406586:	8b 75 10             	mov    0x10(%ebp),%esi
406589:	eb 10                	jmp    0x40659b
40658b:	8b 02                	mov    (%edx),%eax
40658d:	89 06                	mov    %eax,(%esi)
40658f:	8b 4a 04             	mov    0x4(%edx),%ecx
406592:	89 4e 04             	mov    %ecx,0x4(%esi)
406595:	83 c6 08             	add    $0x8,%esi
406598:	83 c2 08             	add    $0x8,%edx
40659b:	3b 55 0c             	cmp    0xc(%ebp),%edx
40659e:	75 eb                	jne    0x40658b
4065a0:	8b c6                	mov    %esi,%eax
4065a2:	5e                   	pop    %esi
4065a3:	5d                   	pop    %ebp
4065a4:	c3                   	ret
4065a5:	55                   	push   %ebp
4065a6:	8b ec                	mov    %esp,%ebp
4065a8:	8b 55 08             	mov    0x8(%ebp),%edx
4065ab:	56                   	push   %esi
4065ac:	8b 75 10             	mov    0x10(%ebp),%esi
4065af:	eb 10                	jmp    0x4065c1
4065b1:	8b 02                	mov    (%edx),%eax
4065b3:	89 06                	mov    %eax,(%esi)
4065b5:	8b 4a 04             	mov    0x4(%edx),%ecx
4065b8:	89 4e 04             	mov    %ecx,0x4(%esi)
4065bb:	83 c6 08             	add    $0x8,%esi
4065be:	83 c2 08             	add    $0x8,%edx
4065c1:	3b 55 0c             	cmp    0xc(%ebp),%edx
4065c4:	75 eb                	jne    0x4065b1
4065c6:	8b c6                	mov    %esi,%eax
4065c8:	5e                   	pop    %esi
4065c9:	5d                   	pop    %ebp
4065ca:	c3                   	ret
4065cb:	55                   	push   %ebp
4065cc:	8b ec                	mov    %esp,%ebp
4065ce:	8b 4d 08             	mov    0x8(%ebp),%ecx
4065d1:	8b 45 10             	mov    0x10(%ebp),%eax
4065d4:	3b 4d 0c             	cmp    0xc(%ebp),%ecx
4065d7:	74 16                	je     0x4065ef
4065d9:	56                   	push   %esi
4065da:	57                   	push   %edi
4065db:	8b f1                	mov    %ecx,%esi
4065dd:	8b f8                	mov    %eax,%edi
4065df:	83 c1 0c             	add    $0xc,%ecx
4065e2:	83 c0 0c             	add    $0xc,%eax
4065e5:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4065e6:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4065e7:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4065e8:	3b 4d 0c             	cmp    0xc(%ebp),%ecx
4065eb:	75 ee                	jne    0x4065db
4065ed:	5f                   	pop    %edi
4065ee:	5e                   	pop    %esi
4065ef:	5d                   	pop    %ebp
4065f0:	c3                   	ret
4065f1:	6a 0c                	push   $0xc
4065f3:	b8 8b a5 48 00       	mov    $0x48a58b,%eax
4065f8:	e8 4d 94 03 00       	call   0x43fa4a
4065fd:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
406604:	8b bd d8 00 00 00    	mov    0xd8(%ebp),%edi
40660a:	8b 85 dc 00 00 00    	mov    0xdc(%ebp),%eax
406610:	89 7d ec             	mov    %edi,-0x14(%ebp)
406613:	89 7d e8             	mov    %edi,-0x18(%ebp)
406616:	89 45 f0             	mov    %eax,-0x10(%ebp)
406619:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
40661d:	8b df                	mov    %edi,%ebx
40661f:	8b f7                	mov    %edi,%esi
406621:	eb 1b                	jmp    0x40663e
406623:	8b 4d 50             	mov    0x50(%ebp),%ecx
406626:	57                   	push   %edi
406627:	e8 44 98 00 00       	call   0x40fe70
40662c:	83 c7 18             	add    $0x18,%edi
40662f:	8d 4d 08             	lea    0x8(%ebp),%ecx
406632:	8b f7                	mov    %edi,%esi
406634:	89 7d ec             	mov    %edi,-0x14(%ebp)
406637:	8b df                	mov    %edi,%ebx
406639:	e8 07 99 00 00       	call   0x40ff45
40663e:	8d 45 70             	lea    0x70(%ebp),%eax
406641:	50                   	push   %eax
406642:	8d 4d 08             	lea    0x8(%ebp),%ecx
406645:	e8 99 96 00 00       	call   0x40fce3
40664a:	84 c0                	test   %al,%al
40664c:	74 d5                	je     0x406623
40664e:	89 7d e8             	mov    %edi,-0x18(%ebp)
406651:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
406655:	eb 0a                	jmp    0x406661
406657:	8b ce                	mov    %esi,%ecx
406659:	e8 76 6c 01 00       	call   0x41d2d4
40665e:	83 c6 18             	add    $0x18,%esi
406661:	3b f3                	cmp    %ebx,%esi
406663:	75 f2                	jne    0x406657
406665:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
406669:	8d 4d 08             	lea    0x8(%ebp),%ecx
40666c:	e8 5c 7d 00 00       	call   0x40e3cd
406671:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
406675:	8d 4d 70             	lea    0x70(%ebp),%ecx
406678:	e8 50 7d 00 00       	call   0x40e3cd
40667d:	8b c3                	mov    %ebx,%eax
40667f:	e8 8f 93 03 00       	call   0x43fa13
406684:	c3                   	ret
406685:	55                   	push   %ebp
406686:	8b ec                	mov    %esp,%ebp
406688:	51                   	push   %ecx
406689:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
40668d:	ff 75 fc             	push   -0x4(%ebp)
406690:	ff 75 14             	push   0x14(%ebp)
406693:	ff 75 10             	push   0x10(%ebp)
406696:	ff 75 0c             	push   0xc(%ebp)
406699:	ff 75 08             	push   0x8(%ebp)
40669c:	e8 b0 fc ff ff       	call   0x406351
4066a1:	83 c4 14             	add    $0x14,%esp
4066a4:	c9                   	leave
4066a5:	c3                   	ret
4066a6:	55                   	push   %ebp
4066a7:	8b ec                	mov    %esp,%ebp