40550c:	cc                   	int3
40550d:	cc                   	int3
40550e:	cc                   	int3
40550f:	cc                   	int3
405510:	68 70 47 41 00       	push   $0x414770
405515:	e8 b1 e5 00 00       	call   0x413acb
40551a:	59                   	pop    %ecx
40551b:	c3                   	ret
40551c:	cc                   	int3
40551d:	cc                   	int3
40551e:	cc                   	int3
40551f:	cc                   	int3
405520:	68 80 47 41 00       	push   $0x414780
405525:	e8 a1 e5 00 00       	call   0x413acb
40552a:	59                   	pop    %ecx
40552b:	c3                   	ret
40552c:	cc                   	int3
40552d:	cc                   	int3
40552e:	cc                   	int3
40552f:	cc                   	int3
405530:	68 90 47 41 00       	push   $0x414790
405535:	e8 91 e5 00 00       	call   0x413acb
40553a:	59                   	pop    %ecx
40553b:	c3                   	ret
40553c:	cc                   	int3
40553d:	cc                   	int3
40553e:	cc                   	int3
40553f:	cc                   	int3
405540:	68 a0 47 41 00       	push   $0x4147a0
405545:	e8 81 e5 00 00       	call   0x413acb
40554a:	59                   	pop    %ecx
40554b:	c3                   	ret
40554c:	cc                   	int3
40554d:	cc                   	int3
40554e:	cc                   	int3
40554f:	cc                   	int3
405550:	e8 61 cc 00 00       	call   0x4121b6
405555:	68 b0 47 41 00       	push   $0x4147b0
40555a:	e8 6c e5 00 00       	call   0x413acb
40555f:	59                   	pop    %ecx
405560:	c3                   	ret
405561:	cc                   	int3
405562:	cc                   	int3
405563:	cc                   	int3
405564:	cc                   	int3
405565:	cc                   	int3
405566:	cc                   	int3
405567:	cc                   	int3
405568:	cc                   	int3
405569:	cc                   	int3
40556a:	cc                   	int3
40556b:	cc                   	int3
40556c:	cc                   	int3
40556d:	cc                   	int3
40556e:	cc                   	int3
40556f:	cc                   	int3
405570:	c7 05 30 a3 41 00 c0 	movl   $0x411fc0,0x41a330
405577:	1f 41 00
40557a:	c7 05 38 a3 41 00 50 	movl   $0x412050,0x41a338
405581:	20 41 00
405584:	c7 05 48 a3 41 00 d0 	movl   $0x4120d0,0x41a348
40558b:	20 41 00
40558e:	c3                   	ret
40558f:	cc                   	int3
405590:	68 00 48 41 00       	push   $0x414800
405595:	e8 31 e5 00 00       	call   0x413acb
40559a:	59                   	pop    %ecx
40559b:	c3                   	ret
40559c:	cc                   	int3
40559d:	cc                   	int3
40559e:	cc                   	int3
40559f:	cc                   	int3
4055a0:	8b ff                	mov    %edi,%edi
4055a2:	55                   	push   %ebp
4055a3:	8b ec                	mov    %esp,%ebp
4055a5:	8b 45 08             	mov    0x8(%ebp),%eax
4055a8:	80 38 00             	cmpb   $0x0,(%eax)
4055ab:	75 04                	jne    0x4055b1
4055ad:	33 c0                	xor    %eax,%eax
4055af:	5d                   	pop    %ebp
4055b0:	c3                   	ret
4055b1:	8d 50 01             	lea    0x1(%eax),%edx
4055b4:	8a 08                	mov    (%eax),%cl
4055b6:	40                   	inc    %eax
4055b7:	84 c9                	test   %cl,%cl
4055b9:	75 f9                	jne    0x4055b4
4055bb:	2b c2                	sub    %edx,%eax
4055bd:	5d                   	pop    %ebp
4055be:	c3                   	ret
4055bf:	cc                   	int3
4055c0:	8b ff                	mov    %edi,%edi
4055c2:	55                   	push   %ebp
4055c3:	8b ec                	mov    %esp,%ebp
4055c5:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
4055c9:	56                   	push   %esi
4055ca:	8b f1                	mov    %ecx,%esi
4055cc:	c7 06 ec 14 40 00    	movl   $0x4014ec,(%esi)
4055d2:	74 08                	je     0x4055dc
4055d4:	56                   	push   %esi
4055d5:	ff 15 cc b2 41 00    	call   *0x41b2cc
4055db:	59                   	pop    %ecx
4055dc:	8b c6                	mov    %esi,%eax
4055de:	5e                   	pop    %esi
4055df:	5d                   	pop    %ebp
4055e0:	c2 04 00             	ret    $0x4
4055e3:	8b ff                	mov    %edi,%edi
4055e5:	55                   	push   %ebp
4055e6:	8b ec                	mov    %esp,%ebp
4055e8:	8b 55 08             	mov    0x8(%ebp),%edx
4055eb:	8b 41 04             	mov    0x4(%ecx),%eax
4055ee:	3b 42 04             	cmp    0x4(%edx),%eax
4055f1:	75 0a                	jne    0x4055fd
4055f3:	8b 01                	mov    (%ecx),%eax
4055f5:	3b 02                	cmp    (%edx),%eax
4055f7:	75 04                	jne    0x4055fd
4055f9:	b0 01                	mov    $0x1,%al
4055fb:	eb 02                	jmp    0x4055ff
4055fd:	32 c0                	xor    %al,%al
4055ff:	5d                   	pop    %ebp
405600:	c2 04 00             	ret    $0x4
405603:	cc                   	int3
405604:	cc                   	int3
405605:	cc                   	int3
405606:	cc                   	int3
405607:	cc                   	int3
405608:	cc                   	int3
405609:	cc                   	int3
40560a:	cc                   	int3
40560b:	cc                   	int3
40560c:	cc                   	int3
40560d:	cc                   	int3
40560e:	cc                   	int3
40560f:	cc                   	int3
405610:	8b ff                	mov    %edi,%edi
405612:	55                   	push   %ebp
405613:	8b ec                	mov    %esp,%ebp
405615:	8b 45 08             	mov    0x8(%ebp),%eax
405618:	8b 55 0c             	mov    0xc(%ebp),%edx
40561b:	89 10                	mov    %edx,(%eax)
40561d:	89 48 04             	mov    %ecx,0x4(%eax)
405620:	5d                   	pop    %ebp
405621:	c2 08 00             	ret    $0x8
405624:	cc                   	int3
405625:	cc                   	int3
405626:	cc                   	int3
405627:	cc                   	int3
405628:	cc                   	int3
405629:	cc                   	int3
40562a:	cc                   	int3
40562b:	cc                   	int3
40562c:	cc                   	int3
40562d:	cc                   	int3
40562e:	cc                   	int3
40562f:	cc                   	int3
405630:	8b ff                	mov    %edi,%edi
405632:	55                   	push   %ebp
405633:	8b ec                	mov    %esp,%ebp
405635:	51                   	push   %ecx
405636:	51                   	push   %ecx
405637:	56                   	push   %esi
405638:	57                   	push   %edi
405639:	ff 75 0c             	push   0xc(%ebp)
40563c:	8b f9                	mov    %ecx,%edi
40563e:	8d 4d f8             	lea    -0x8(%ebp),%ecx
405641:	ff 75 08             	push   0x8(%ebp)
405644:	51                   	push   %ecx
405645:	8b 07                	mov    (%edi),%eax
405647:	8b 70 0c             	mov    0xc(%eax),%esi
40564a:	8b ce                	mov    %esi,%ecx
40564c:	ff 15 90 b3 41 00    	call   *0x41b390
405652:	8b cf                	mov    %edi,%ecx
405654:	ff d6                	call   *%esi
405656:	8b c8                	mov    %eax,%ecx
405658:	e8 86 ff ff ff       	call   0x4055e3
40565d:	5f                   	pop    %edi
40565e:	5e                   	pop    %esi
40565f:	c9                   	leave
405660:	c2 08 00             	ret    $0x8
405663:	cc                   	int3
405664:	cc                   	int3
405665:	cc                   	int3
405666:	cc                   	int3
405667:	cc                   	int3
405668:	cc                   	int3
405669:	cc                   	int3
40566a:	cc                   	int3
40566b:	cc                   	int3
40566c:	cc                   	int3
40566d:	cc                   	int3
40566e:	cc                   	int3
40566f:	cc                   	int3
405670:	8b ff                	mov    %edi,%edi
405672:	55                   	push   %ebp
405673:	8b ec                	mov    %esp,%ebp
405675:	8b 45 08             	mov    0x8(%ebp),%eax
405678:	3b 48 04             	cmp    0x4(%eax),%ecx
40567b:	75 0b                	jne    0x405688
40567d:	8b 00                	mov    (%eax),%eax
40567f:	3b 45 0c             	cmp    0xc(%ebp),%eax
405682:	75 04                	jne    0x405688
405684:	b0 01                	mov    $0x1,%al
405686:	eb 02                	jmp    0x40568a
405688:	32 c0                	xor    %al,%al
40568a:	5d                   	pop    %ebp
40568b:	c2 08 00             	ret    $0x8
40568e:	cc                   	int3
40568f:	cc                   	int3
405690:	b8 1c 25 40 00       	mov    $0x40251c,%eax
405695:	c3                   	ret
405696:	cc                   	int3
405697:	cc                   	int3
405698:	cc                   	int3
405699:	cc                   	int3
40569a:	cc                   	int3
40569b:	cc                   	int3
40569c:	cc                   	int3
40569d:	cc                   	int3
40569e:	cc                   	int3
40569f:	cc                   	int3
4056a0:	8b ff                	mov    %edi,%edi
4056a2:	55                   	push   %ebp
4056a3:	8b ec                	mov    %esp,%ebp
4056a5:	ff 75 0c             	push   0xc(%ebp)
4056a8:	e8 87 de 00 00       	call   0x413534
4056ad:	59                   	pop    %ecx
4056ae:	85 c0                	test   %eax,%eax
4056b0:	75 05                	jne    0x4056b7
4056b2:	b8 24 25 40 00       	mov    $0x402524,%eax
4056b7:	8b 4d 08             	mov    0x8(%ebp),%ecx
4056ba:	50                   	push   %eax
4056bb:	e8 23 1a 00 00       	call   0x4070e3
4056c0:	8b 45 08             	mov    0x8(%ebp),%eax
4056c3:	5d                   	pop    %ebp
4056c4:	c2 08 00             	ret    $0x8
4056c7:	cc                   	int3
4056c8:	cc                   	int3
4056c9:	cc                   	int3
4056ca:	cc                   	int3
4056cb:	cc                   	int3
4056cc:	cc                   	int3
4056cd:	cc                   	int3
4056ce:	cc                   	int3
4056cf:	cc                   	int3
4056d0:	b8 34 25 40 00       	mov    $0x402534,%eax
4056d5:	c3                   	ret
4056d6:	cc                   	int3
4056d7:	cc                   	int3
4056d8:	cc                   	int3
4056d9:	cc                   	int3
4056da:	cc                   	int3
4056db:	cc                   	int3
4056dc:	cc                   	int3
4056dd:	cc                   	int3
4056de:	cc                   	int3
4056df:	cc                   	int3
4056e0:	8b ff                	mov    %edi,%edi
4056e2:	55                   	push   %ebp
4056e3:	8b ec                	mov    %esp,%ebp
4056e5:	83 7d 0c 01          	cmpl   $0x1,0xc(%ebp)
4056e9:	75 0f                	jne    0x4056fa
4056eb:	8b 4d 08             	mov    0x8(%ebp),%ecx
4056ee:	68 40 25 40 00       	push   $0x402540
4056f3:	e8 eb 19 00 00       	call   0x4070e3
4056f8:	eb 0b                	jmp    0x405705
4056fa:	ff 75 0c             	push   0xc(%ebp)
4056fd:	ff 75 08             	push   0x8(%ebp)
405700:	e8 9b ff ff ff       	call   0x4056a0
405705:	8b 45 08             	mov    0x8(%ebp),%eax
405708:	5d                   	pop    %ebp
405709:	c2 08 00             	ret    $0x8
40570c:	cc                   	int3
40570d:	cc                   	int3
40570e:	cc                   	int3
40570f:	cc                   	int3
405710:	b8 58 25 40 00       	mov    $0x402558,%eax
405715:	c3                   	ret
405716:	cc                   	int3
405717:	cc                   	int3
405718:	cc                   	int3
405719:	cc                   	int3
40571a:	cc                   	int3
40571b:	cc                   	int3
40571c:	cc                   	int3
40571d:	cc                   	int3
40571e:	cc                   	int3
40571f:	cc                   	int3
405720:	8b ff                	mov    %edi,%edi
405722:	55                   	push   %ebp
405723:	8b ec                	mov    %esp,%ebp
405725:	ff 75 0c             	push   0xc(%ebp)
405728:	e8 33 de 00 00       	call   0x413560
40572d:	59                   	pop    %ecx
40572e:	85 c0                	test   %eax,%eax
405730:	75 05                	jne    0x405737
405732:	b8 24 25 40 00       	mov    $0x402524,%eax
405737:	8b 4d 08             	mov    0x8(%ebp),%ecx
40573a:	50                   	push   %eax
40573b:	e8 a3 19 00 00       	call   0x4070e3
405740:	8b 45 08             	mov    0x8(%ebp),%eax
405743:	5d                   	pop    %ebp
405744:	c2 08 00             	ret    $0x8
405747:	cc                   	int3
405748:	cc                   	int3
405749:	cc                   	int3
40574a:	cc                   	int3
40574b:	cc                   	int3
40574c:	cc                   	int3
40574d:	cc                   	int3
40574e:	cc                   	int3
40574f:	cc                   	int3
405750:	8b ff                	mov    %edi,%edi
405752:	55                   	push   %ebp
405753:	8b ec                	mov    %esp,%ebp
405755:	56                   	push   %esi
405756:	8b 75 0c             	mov    0xc(%ebp),%esi
405759:	56                   	push   %esi
40575a:	e8 d5 dd 00 00       	call   0x413534
40575f:	59                   	pop    %ecx
405760:	8b 4d 08             	mov    0x8(%ebp),%ecx
405763:	85 c0                	test   %eax,%eax
405765:	8b c1                	mov    %ecx,%eax
405767:	89 31                	mov    %esi,(%ecx)
405769:	5e                   	pop    %esi
40576a:	74 09                	je     0x405775
40576c:	c7 41 04 2c 50 41 00 	movl   $0x41502c,0x4(%ecx)
405773:	eb 07                	jmp    0x40577c
405775:	c7 41 04 28 50 41 00 	movl   $0x415028,0x4(%ecx)
40577c:	5d                   	pop    %ebp
40577d:	c2 08 00             	ret    $0x8
405780:	8b ff                	mov    %edi,%edi
405782:	55                   	push   %ebp
405783:	8b ec                	mov    %esp,%ebp
405785:	56                   	push   %esi
405786:	33 f6                	xor    %esi,%esi
405788:	85 d2                	test   %edx,%edx
40578a:	74 08                	je     0x405794
40578c:	81 fa ff ff ff 7f    	cmp    $0x7fffffff,%edx
405792:	76 05                	jbe    0x405799
405794:	be 57 00 07 80       	mov    $0x80070057,%esi
405799:	85 f6                	test   %esi,%esi
40579b:	78 41                	js     0x4057de
40579d:	8b f2                	mov    %edx,%esi
40579f:	85 d2                	test   %edx,%edx
4057a1:	74 28                	je     0x4057cb
4057a3:	57                   	push   %edi
4057a4:	bf fe ff ff 7f       	mov    $0x7ffffffe,%edi
4057a9:	2b fa                	sub    %edx,%edi
4057ab:	8b 55 08             	mov    0x8(%ebp),%edx
4057ae:	2b d1                	sub    %ecx,%edx
4057b0:	8d 04 37             	lea    (%edi,%esi,1),%eax