405612:	cc                   	int3
405613:	cc                   	int3
405614:	cc                   	int3
405615:	cc                   	int3
405616:	cc                   	int3
405617:	cc                   	int3
405618:	cc                   	int3
405619:	cc                   	int3
40561a:	cc                   	int3
40561b:	cc                   	int3
40561c:	cc                   	int3
40561d:	cc                   	int3
40561e:	cc                   	int3
40561f:	cc                   	int3
405620:	8b ff                	mov    %edi,%edi
405622:	55                   	push   %ebp
405623:	8b ec                	mov    %esp,%ebp
405625:	51                   	push   %ecx
405626:	8b 45 10             	mov    0x10(%ebp),%eax
405629:	53                   	push   %ebx
40562a:	33 db                	xor    %ebx,%ebx
40562c:	56                   	push   %esi
40562d:	8b 75 0c             	mov    0xc(%ebp),%esi
405630:	89 18                	mov    %ebx,(%eax)
405632:	8b 45 08             	mov    0x8(%ebp),%eax
405635:	57                   	push   %edi
405636:	83 e8 04             	sub    $0x4,%eax
405639:	74 12                	je     0x40564d
40563b:	83 e8 01             	sub    $0x1,%eax
40563e:	74 05                	je     0x405645
405640:	6a 57                	push   $0x57
405642:	58                   	pop    %eax
405643:	eb 48                	jmp    0x40568d
405645:	8b fb                	mov    %ebx,%edi
405647:	8b c3                	mov    %ebx,%eax
405649:	8a d3                	mov    %bl,%dl
40564b:	eb 23                	jmp    0x405670
40564d:	ff 75 14             	push   0x14(%ebp)
405650:	ff 15 04 22 41 00    	call   *0x412204
405656:	8b fa                	mov    %edx,%edi
405658:	8b d8                	mov    %eax,%ebx
40565a:	57                   	push   %edi
40565b:	53                   	push   %ebx
40565c:	ff 15 00 22 41 00    	call   *0x412200
405662:	57                   	push   %edi
405663:	53                   	push   %ebx
405664:	88 45 ff             	mov    %al,-0x1(%ebp)
405667:	ff 15 fc 21 41 00    	call   *0x4121fc
40566d:	8a 55 ff             	mov    -0x1(%ebp),%dl
405670:	f6 46 1a 02          	testb  $0x2,0x1a(%esi)
405674:	74 09                	je     0x40567f
405676:	8b 4e 10             	mov    0x10(%esi),%ecx
405679:	85 c9                	test   %ecx,%ecx
40567b:	74 02                	je     0x40567f
40567d:	8b f1                	mov    %ecx,%esi
40567f:	89 46 1c             	mov    %eax,0x1c(%esi)
405682:	33 c0                	xor    %eax,%eax
405684:	89 5e 10             	mov    %ebx,0x10(%esi)
405687:	89 7e 14             	mov    %edi,0x14(%esi)
40568a:	88 56 19             	mov    %dl,0x19(%esi)
40568d:	5f                   	pop    %edi
40568e:	5e                   	pop    %esi
40568f:	5b                   	pop    %ebx
405690:	c9                   	leave
405691:	c2 10 00             	ret    $0x10
405694:	6a 0c                	push   $0xc
405696:	b8 78 ec 40 00       	mov    $0x40ec78,%eax
40569b:	e8 ae 8f 00 00       	call   0x40e64e
4056a0:	8b f1                	mov    %ecx,%esi
4056a2:	6a f5                	push   $0xfffffff5
4056a4:	ff 15 cc 20 41 00    	call   *0x4120cc
4056aa:	6a f4                	push   $0xfffffff4
4056ac:	8b d8                	mov    %eax,%ebx
4056ae:	ff 15 cc 20 41 00    	call   *0x4120cc
4056b4:	8b f8                	mov    %eax,%edi
4056b6:	33 c0                	xor    %eax,%eax
4056b8:	89 45 e8             	mov    %eax,-0x18(%ebp)
4056bb:	89 45 ec             	mov    %eax,-0x14(%ebp)
4056be:	89 45 f0             	mov    %eax,-0x10(%ebp)
4056c1:	89 45 fc             	mov    %eax,-0x4(%ebp)
4056c4:	85 f6                	test   %esi,%esi
4056c6:	74 1d                	je     0x4056e5
4056c8:	8b d6                	mov    %esi,%edx
4056ca:	8d 4d e8             	lea    -0x18(%ebp),%ecx
4056cd:	e8 b6 81 00 00       	call   0x40d888
4056d2:	ff 75 e8             	push   -0x18(%ebp)
4056d5:	68 ac 21 40 00       	push   $0x4021ac
4056da:	57                   	push   %edi
4056db:	e8 51 1d 00 00       	call   0x407431
4056e0:	83 c4 0c             	add    $0xc,%esp
4056e3:	33 c0                	xor    %eax,%eax
4056e5:	50                   	push   %eax
4056e6:	ff 15 b0 20 41 00    	call   *0x4120b0
4056ec:	6a 00                	push   $0x0
4056ee:	6a 28                	push   $0x28
4056f0:	8d 55 e8             	lea    -0x18(%ebp),%edx
4056f3:	8b c8                	mov    %eax,%ecx
4056f5:	e8 af 81 00 00       	call   0x40d8a9
4056fa:	8b 75 e8             	mov    -0x18(%ebp),%esi
4056fd:	56                   	push   %esi
4056fe:	68 bc 21 40 00       	push   $0x4021bc
405703:	53                   	push   %ebx
405704:	e8 28 1d 00 00       	call   0x407431
405709:	83 c4 0c             	add    $0xc,%esp
40570c:	85 f6                	test   %esi,%esi
40570e:	74 08                	je     0x405718
405710:	56                   	push   %esi
405711:	ff 15 e4 21 41 00    	call   *0x4121e4
405717:	59                   	pop    %ecx
405718:	e8 ff 8e 00 00       	call   0x40e61c
40571d:	c3                   	ret
40571e:	6a 04                	push   $0x4
405720:	b8 9b ec 40 00       	mov    $0x40ec9b,%eax
405725:	e8 24 8f 00 00       	call   0x40e64e
40572a:	33 f6                	xor    %esi,%esi
40572c:	56                   	push   %esi
40572d:	e8 1e 13 00 00       	call   0x406a50
405732:	8b f8                	mov    %eax,%edi
405734:	89 75 f0             	mov    %esi,-0x10(%ebp)
405737:	83 cb ff             	or     $0xffffffff,%ebx
40573a:	89 75 fc             	mov    %esi,-0x4(%ebp)
40573d:	53                   	push   %ebx
40573e:	68 c4 21 40 00       	push   $0x4021c4
405743:	53                   	push   %ebx
405744:	57                   	push   %edi
405745:	6a 01                	push   $0x1
405747:	6a 7f                	push   $0x7f
405749:	ff 15 f4 20 41 00    	call   *0x4120f4
40574f:	83 f8 02             	cmp    $0x2,%eax
405752:	0f 84 e5 02 00 00    	je     0x405a3d
405758:	53                   	push   %ebx
405759:	68 e8 21 40 00       	push   $0x4021e8
40575e:	53                   	push   %ebx
40575f:	57                   	push   %edi
405760:	6a 01                	push   $0x1
405762:	6a 7f                	push   $0x7f
405764:	ff 15 f4 20 41 00    	call   *0x4120f4
40576a:	83 f8 02             	cmp    $0x2,%eax
40576d:	0f 84 ca 02 00 00    	je     0x405a3d
405773:	53                   	push   %ebx
405774:	68 f0 21 40 00       	push   $0x4021f0
405779:	53                   	push   %ebx
40577a:	57                   	push   %edi
40577b:	6a 01                	push   $0x1
40577d:	6a 7f                	push   $0x7f
40577f:	ff 15 f4 20 41 00    	call   *0x4120f4
405785:	83 f8 02             	cmp    $0x2,%eax
405788:	0f 84 93 02 00 00    	je     0x405a21
40578e:	53                   	push   %ebx
40578f:	68 14 22 40 00       	push   $0x402214
405794:	53                   	push   %ebx
405795:	57                   	push   %edi
405796:	6a 01                	push   $0x1
405798:	6a 7f                	push   $0x7f
40579a:	ff 15 f4 20 41 00    	call   *0x4120f4
4057a0:	83 f8 02             	cmp    $0x2,%eax
4057a3:	0f 84 78 02 00 00    	je     0x405a21
4057a9:	53                   	push   %ebx
4057aa:	68 1c 22 40 00       	push   $0x40221c
4057af:	53                   	push   %ebx
4057b0:	57                   	push   %edi
4057b1:	6a 01                	push   $0x1
4057b3:	6a 7f                	push   $0x7f
4057b5:	ff 15 f4 20 41 00    	call   *0x4120f4
4057bb:	83 f8 02             	cmp    $0x2,%eax
4057be:	0f 84 31 02 00 00    	je     0x4059f5
4057c4:	53                   	push   %ebx
4057c5:	68 44 22 40 00       	push   $0x402244
4057ca:	53                   	push   %ebx
4057cb:	57                   	push   %edi
4057cc:	6a 01                	push   $0x1
4057ce:	6a 7f                	push   $0x7f
4057d0:	ff 15 f4 20 41 00    	call   *0x4120f4
4057d6:	83 f8 02             	cmp    $0x2,%eax
4057d9:	0f 84 16 02 00 00    	je     0x4059f5
4057df:	53                   	push   %ebx
4057e0:	68 4c 22 40 00       	push   $0x40224c
4057e5:	53                   	push   %ebx
4057e6:	57                   	push   %edi
4057e7:	6a 01                	push   $0x1
4057e9:	6a 7f                	push   $0x7f
4057eb:	ff 15 f4 20 41 00    	call   *0x4120f4
4057f1:	83 f8 02             	cmp    $0x2,%eax
4057f4:	0f 84 c9 01 00 00    	je     0x4059c3
4057fa:	53                   	push   %ebx
4057fb:	68 70 22 40 00       	push   $0x402270
405800:	53                   	push   %ebx
405801:	57                   	push   %edi
405802:	6a 01                	push   $0x1
405804:	6a 7f                	push   $0x7f
405806:	ff 15 f4 20 41 00    	call   *0x4120f4
40580c:	83 f8 02             	cmp    $0x2,%eax
40580f:	0f 84 ae 01 00 00    	je     0x4059c3
405815:	53                   	push   %ebx
405816:	68 78 22 40 00       	push   $0x402278
40581b:	53                   	push   %ebx
40581c:	57                   	push   %edi
40581d:	6a 01                	push   $0x1
40581f:	6a 7f                	push   $0x7f
405821:	ff 15 f4 20 41 00    	call   *0x4120f4
405827:	83 f8 02             	cmp    $0x2,%eax
40582a:	0f 84 60 01 00 00    	je     0x405990
405830:	53                   	push   %ebx
405831:	68 a0 22 40 00       	push   $0x4022a0
405836:	53                   	push   %ebx
405837:	57                   	push   %edi
405838:	6a 01                	push   $0x1
40583a:	6a 7f                	push   $0x7f
40583c:	ff 15 f4 20 41 00    	call   *0x4120f4
405842:	83 f8 02             	cmp    $0x2,%eax
405845:	0f 84 45 01 00 00    	je     0x405990
40584b:	53                   	push   %ebx
40584c:	68 a8 22 40 00       	push   $0x4022a8
405851:	53                   	push   %ebx
405852:	57                   	push   %edi
405853:	6a 01                	push   $0x1
405855:	6a 7f                	push   $0x7f
405857:	ff 15 f4 20 41 00    	call   *0x4120f4
40585d:	83 f8 02             	cmp    $0x2,%eax
405860:	0f 84 f7 00 00 00    	je     0x40595d
405866:	53                   	push   %ebx
405867:	68 d0 22 40 00       	push   $0x4022d0
40586c:	53                   	push   %ebx
40586d:	57                   	push   %edi
40586e:	6a 01                	push   $0x1
405870:	6a 7f                	push   $0x7f
405872:	ff 15 f4 20 41 00    	call   *0x4120f4
405878:	83 f8 02             	cmp    $0x2,%eax
40587b:	0f 84 dc 00 00 00    	je     0x40595d
405881:	53                   	push   %ebx
405882:	68 d8 22 40 00       	push   $0x4022d8
405887:	53                   	push   %ebx
405888:	57                   	push   %edi
405889:	6a 01                	push   $0x1
40588b:	6a 7f                	push   $0x7f
40588d:	ff 15 f4 20 41 00    	call   *0x4120f4
405893:	83 f8 02             	cmp    $0x2,%eax
405896:	74 79                	je     0x405911
405898:	53                   	push   %ebx
405899:	68 14 23 40 00       	push   $0x402314
40589e:	53                   	push   %ebx
40589f:	57                   	push   %edi
4058a0:	6a 01                	push   $0x1
4058a2:	6a 7f                	push   $0x7f
4058a4:	ff 15 f4 20 41 00    	call   *0x4120f4
4058aa:	83 f8 02             	cmp    $0x2,%eax
4058ad:	74 62                	je     0x405911
4058af:	53                   	push   %ebx
4058b0:	68 1c 23 40 00       	push   $0x40231c
4058b5:	53                   	push   %ebx
4058b6:	57                   	push   %edi
4058b7:	6a 01                	push   $0x1
4058b9:	6a 7f                	push   $0x7f
4058bb:	ff 15 f4 20 41 00    	call   *0x4120f4
4058c1:	83 f8 02             	cmp    $0x2,%eax
4058c4:	74 1b                	je     0x4058e1
4058c6:	53                   	push   %ebx
4058c7:	68 38 23 40 00       	push   $0x402338
4058cc:	53                   	push   %ebx
4058cd:	57                   	push   %edi
4058ce:	6a 01                	push   $0x1
4058d0:	6a 7f                	push   $0x7f
4058d2:	ff 15 f4 20 41 00    	call   *0x4120f4
4058d8:	83 f8 02             	cmp    $0x2,%eax
4058db:	0f 85 a2 01 00 00    	jne    0x405a83
4058e1:	6a 1c                	push   $0x1c
4058e3:	e8 e0 85 00 00       	call   0x40dec8
4058e8:	8b d8                	mov    %eax,%ebx
4058ea:	89 5d f0             	mov    %ebx,-0x10(%ebp)
4058ed:	59                   	pop    %ecx
4058ee:	85 db                	test   %ebx,%ebx
4058f0:	0f 84 f6 00 00 00    	je     0x4059ec
4058f6:	6a 07                	push   $0x7
4058f8:	59                   	pop    %ecx
4058f9:	33 c0                	xor    %eax,%eax
4058fb:	8b fb                	mov    %ebx,%edi
4058fd:	f3 ab                	rep stos %eax,%es:(%edi)
4058ff:	8b cb                	mov    %ebx,%ecx
405901:	e8 2d fc ff ff       	call   0x405533
405906:	c7 03 4c 15 40 00    	movl   $0x40154c,(%ebx)
40590c:	e9 dd 00 00 00       	jmp    0x4059ee
405911:	6a 48                	push   $0x48
405913:	e8 b0 85 00 00       	call   0x40dec8
405918:	8b f8                	mov    %eax,%edi
40591a:	89 7d f0             	mov    %edi,-0x10(%ebp)
40591d:	59                   	pop    %ecx
40591e:	85 ff                	test   %edi,%edi
405920:	0f 84 53 01 00 00    	je     0x405a79
405926:	6a 48                	push   $0x48
405928:	56                   	push   %esi
405929:	57                   	push   %edi
40592a:	e8 20 93 00 00       	call   0x40ec4f
40592f:	83 c4 0c             	add    $0xc,%esp
405932:	8b cf                	mov    %edi,%ecx
405934:	e8 fa fb ff ff       	call   0x405533
405939:	c7 07 5c 15 40 00    	movl   $0x40155c,(%edi)
40593f:	33 c0                	xor    %eax,%eax
405941:	6a 07                	push   $0x7
405943:	59                   	pop    %ecx
405944:	89 4f 2c             	mov    %ecx,0x2c(%edi)
405947:	89 77 28             	mov    %esi,0x28(%edi)
40594a:	66 89 47 18          	mov    %ax,0x18(%edi)
40594e:	89 4f 44             	mov    %ecx,0x44(%edi)
405951:	89 77 40             	mov    %esi,0x40(%edi)
405954:	66 89 47 30          	mov    %ax,0x30(%edi)
405958:	e9 1e 01 00 00       	jmp    0x405a7b
40595d:	6a 30                	push   $0x30
40595f:	e8 64 85 00 00       	call   0x40dec8
405964:	8b f8                	mov    %eax,%edi
405966:	89 7d f0             	mov    %edi,-0x10(%ebp)
405969:	59                   	pop    %ecx
40596a:	85 ff                	test   %edi,%edi
40596c:	0f 84 07 01 00 00    	je     0x405a79
405972:	6a 30                	push   $0x30
405974:	56                   	push   %esi
405975:	57                   	push   %edi
405976:	e8 d4 92 00 00       	call   0x40ec4f
40597b:	83 c4 0c             	add    $0xc,%esp
40597e:	8b cf                	mov    %edi,%ecx
405980:	e8 ae fb ff ff       	call   0x405533
405985:	c7 07 6c 15 40 00    	movl   $0x40156c,(%edi)
40598b:	e9 d7 00 00 00       	jmp    0x405a67
405990:	6a 30                	push   $0x30
405992:	e8 31 85 00 00       	call   0x40dec8
405997:	8b f8                	mov    %eax,%edi
405999:	89 7d f0             	mov    %edi,-0x10(%ebp)
40599c:	59                   	pop    %ecx
40599d:	85 ff                	test   %edi,%edi
40599f:	0f 84 d4 00 00 00    	je     0x405a79
4059a5:	6a 30                	push   $0x30
4059a7:	56                   	push   %esi
4059a8:	57                   	push   %edi
4059a9:	e8 a1 92 00 00       	call   0x40ec4f
4059ae:	83 c4 0c             	add    $0xc,%esp
4059b1:	8b cf                	mov    %edi,%ecx
4059b3:	e8 7b fb ff ff       	call   0x405533
4059b8:	c7 07 7c 15 40 00    	movl   $0x40157c,(%edi)
4059be:	e9 a4 00 00 00       	jmp    0x405a67
4059c3:	6a 18                	push   $0x18
4059c5:	e8 fe 84 00 00       	call   0x40dec8
4059ca:	8b d8                	mov    %eax,%ebx
4059cc:	89 5d f0             	mov    %ebx,-0x10(%ebp)
4059cf:	59                   	pop    %ecx
4059d0:	85 db                	test   %ebx,%ebx
4059d2:	74 18                	je     0x4059ec
4059d4:	6a 06                	push   $0x6
4059d6:	59                   	pop    %ecx
4059d7:	33 c0                	xor    %eax,%eax
4059d9:	8b fb                	mov    %ebx,%edi
4059db:	f3 ab                	rep stos %eax,%es:(%edi)