40667c:	66 85 c0             	test   %ax,%ax
40667f:	0f 85 a1 01 00 00    	jne    0x406826
406685:	8b 07                	mov    (%edi),%eax
406687:	33 c9                	xor    %ecx,%ecx
406689:	c7 85 f8 fd ff ff 3b 	movl   $0x40193b,-0x208(%ebp)
406690:	19 40 00
406693:	2b c1                	sub    %ecx,%eax
406695:	74 33                	je     0x4066ca
406697:	83 e8 01             	sub    $0x1,%eax
40669a:	74 22                	je     0x4066be
40669c:	83 e8 01             	sub    $0x1,%eax
40669f:	74 11                	je     0x4066b2
4066a1:	83 e8 01             	sub    $0x1,%eax
4066a4:	75 2e                	jne    0x4066d4
4066a6:	c7 85 f8 fd ff ff 5c 	movl   $0x40195c,-0x208(%ebp)
4066ad:	19 40 00
4066b0:	eb 22                	jmp    0x4066d4
4066b2:	c7 85 f8 fd ff ff 54 	movl   $0x401954,-0x208(%ebp)
4066b9:	19 40 00
4066bc:	eb 16                	jmp    0x4066d4
4066be:	c7 85 f8 fd ff ff 48 	movl   $0x401948,-0x208(%ebp)
4066c5:	19 40 00
4066c8:	eb 0a                	jmp    0x4066d4
4066ca:	c7 85 f8 fd ff ff 3c 	movl   $0x40193c,-0x208(%ebp)
4066d1:	19 40 00
4066d4:	51                   	push   %ecx
4066d5:	33 c0                	xor    %eax,%eax
4066d7:	68 00 01 00 00       	push   $0x100
4066dc:	66 89 85 fc fd ff ff 	mov    %ax,-0x204(%ebp)
4066e3:	8d 85 fc fd ff ff    	lea    -0x204(%ebp),%eax
4066e9:	50                   	push   %eax
4066ea:	68 00 04 00 00       	push   $0x400
4066ef:	ff 77 04             	push   0x4(%edi)
4066f2:	51                   	push   %ecx
4066f3:	68 00 12 00 00       	push   $0x1200
4066f8:	ff 15 74 61 42 00    	call   *0x426174
4066fe:	83 7f 1c 00          	cmpl   $0x0,0x1c(%edi)
406702:	8b 85 f4 fd ff ff    	mov    -0x20c(%ebp),%eax
406708:	ff 77 48             	push   0x48(%edi)
40670b:	ff 77 44             	push   0x44(%edi)
40670e:	8d 1c 46             	lea    (%esi,%eax,2),%ebx
406711:	74 17                	je     0x40672a
406713:	ff 77 20             	push   0x20(%edi)
406716:	ff 77 1c             	push   0x1c(%edi)
406719:	68 68 19 40 00       	push   $0x401968
40671e:	53                   	push   %ebx
40671f:	56                   	push   %esi
406720:	e8 a5 fe ff ff       	call   0x4065ca
406725:	83 c4 1c             	add    $0x1c,%esp
406728:	eb 0f                	jmp    0x406739
40672a:	68 8c 19 40 00       	push   $0x40198c
40672f:	53                   	push   %ebx
406730:	56                   	push   %esi
406731:	e8 94 fe ff ff       	call   0x4065ca
406736:	83 c4 14             	add    $0x14,%esp
406739:	83 7f 4c 00          	cmpl   $0x0,0x4c(%edi)
40673d:	89 85 f4 fd ff ff    	mov    %eax,-0x20c(%ebp)
406743:	74 18                	je     0x40675d
406745:	ff 77 4c             	push   0x4c(%edi)
406748:	68 a0 19 40 00       	push   $0x4019a0
40674d:	53                   	push   %ebx
40674e:	50                   	push   %eax
40674f:	e8 76 fe ff ff       	call   0x4065ca
406754:	83 c4 10             	add    $0x10,%esp
406757:	89 85 f4 fd ff ff    	mov    %eax,-0x20c(%ebp)
40675d:	8b 77 04             	mov    0x4(%edi),%esi
406760:	ff 15 7c 61 42 00    	call   *0x42617c
406766:	8d 8d fc fd ff ff    	lea    -0x204(%ebp),%ecx
40676c:	51                   	push   %ecx
40676d:	56                   	push   %esi
40676e:	50                   	push   %eax
40676f:	ff 77 24             	push   0x24(%edi)
406772:	ff b5 f8 fd ff ff    	push   -0x208(%ebp)
406778:	68 bc 19 40 00       	push   $0x4019bc
40677d:	53                   	push   %ebx
40677e:	ff b5 f4 fd ff ff    	push   -0x20c(%ebp)
406784:	e8 41 fe ff ff       	call   0x4065ca
406789:	33 c9                	xor    %ecx,%ecx
40678b:	83 c4 20             	add    $0x20,%esp
40678e:	39 4f 0c             	cmp    %ecx,0xc(%edi)
406791:	75 0e                	jne    0x4067a1
406793:	39 4f 28             	cmp    %ecx,0x28(%edi)
406796:	75 09                	jne    0x4067a1
406798:	39 4f 18             	cmp    %ecx,0x18(%edi)
40679b:	0f 84 85 00 00 00    	je     0x406826
4067a1:	68 f0 19 40 00       	push   $0x4019f0
4067a6:	53                   	push   %ebx
4067a7:	50                   	push   %eax
4067a8:	e8 1d fe ff ff       	call   0x4065ca
4067ad:	83 c4 0c             	add    $0xc,%esp
4067b0:	83 7f 0c 00          	cmpl   $0x0,0xc(%edi)
4067b4:	74 12                	je     0x4067c8
4067b6:	ff 77 0c             	push   0xc(%edi)
4067b9:	68 fc 19 40 00       	push   $0x4019fc
4067be:	53                   	push   %ebx
4067bf:	50                   	push   %eax
4067c0:	e8 05 fe ff ff       	call   0x4065ca
4067c5:	83 c4 10             	add    $0x10,%esp
4067c8:	83 7f 28 00          	cmpl   $0x0,0x28(%edi)
4067cc:	74 12                	je     0x4067e0
4067ce:	ff 77 28             	push   0x28(%edi)
4067d1:	68 14 1a 40 00       	push   $0x401a14
4067d6:	53                   	push   %ebx
4067d7:	50                   	push   %eax
4067d8:	e8 ed fd ff ff       	call   0x4065ca
4067dd:	83 c4 10             	add    $0x10,%esp
4067e0:	83 7f 14 00          	cmpl   $0x0,0x14(%edi)
4067e4:	74 17                	je     0x4067fd
4067e6:	ff 77 14             	push   0x14(%edi)
4067e9:	ff 77 18             	push   0x18(%edi)
4067ec:	68 3c 1a 40 00       	push   $0x401a3c
4067f1:	53                   	push   %ebx
4067f2:	50                   	push   %eax
4067f3:	e8 d2 fd ff ff       	call   0x4065ca
4067f8:	83 c4 14             	add    $0x14,%esp
4067fb:	eb 29                	jmp    0x406826
4067fd:	83 7f 18 00          	cmpl   $0x0,0x18(%edi)
406801:	74 14                	je     0x406817
406803:	ff 77 18             	push   0x18(%edi)
406806:	68 54 1a 40 00       	push   $0x401a54
40680b:	53                   	push   %ebx
40680c:	50                   	push   %eax
40680d:	e8 b8 fd ff ff       	call   0x4065ca
406812:	83 c4 10             	add    $0x10,%esp
406815:	eb 0f                	jmp    0x406826
406817:	68 64 1a 40 00       	push   $0x401a64
40681c:	53                   	push   %ebx
40681d:	50                   	push   %eax
40681e:	e8 a7 fd ff ff       	call   0x4065ca
406823:	83 c4 0c             	add    $0xc,%esp
406826:	5b                   	pop    %ebx
406827:	8b 4d fc             	mov    -0x4(%ebp),%ecx
40682a:	33 c0                	xor    %eax,%eax
40682c:	5f                   	pop    %edi
40682d:	33 cd                	xor    %ebp,%ecx
40682f:	5e                   	pop    %esi
406830:	e8 3b b0 01 00       	call   0x421870
406835:	c9                   	leave
406836:	c2 04 00             	ret    $0x4
406839:	8b ff                	mov    %edi,%edi
40683b:	56                   	push   %esi
40683c:	57                   	push   %edi
40683d:	52                   	push   %edx
40683e:	51                   	push   %ecx
40683f:	ff 15 7c 60 42 00    	call   *0x42607c
406845:	50                   	push   %eax
406846:	ff 15 a0 61 42 00    	call   *0x4261a0
40684c:	8b 3d b8 4c 42 00    	mov    0x424cb8,%edi
406852:	8b f0                	mov    %eax,%esi
406854:	85 ff                	test   %edi,%edi
406856:	74 12                	je     0x40686a
406858:	56                   	push   %esi
406859:	ff 15 7c 60 42 00    	call   *0x42607c
40685f:	50                   	push   %eax
406860:	8b cf                	mov    %edi,%ecx
406862:	ff 15 78 64 42 00    	call   *0x426478
406868:	ff d7                	call   *%edi
40686a:	5f                   	pop    %edi
40686b:	8b c6                	mov    %esi,%eax
40686d:	5e                   	pop    %esi
40686e:	c3                   	ret
40686f:	33 c0                	xor    %eax,%eax
406871:	89 0d f4 4c 42 00    	mov    %ecx,0x424cf4
406877:	40                   	inc    %eax
406878:	f0 0f c1 05 ec 4c 42 	lock xadd %eax,0x424cec
40687f:	00
406880:	40                   	inc    %eax
406881:	c3                   	ret
406882:	33 c0                	xor    %eax,%eax
406884:	89 0d 8c 4c 42 00    	mov    %ecx,0x424c8c
40688a:	40                   	inc    %eax
40688b:	f0 0f c1 05 20 4d 42 	lock xadd %eax,0x424d20
406892:	00
406893:	40                   	inc    %eax
406894:	c3                   	ret
406895:	33 c0                	xor    %eax,%eax
406897:	89 0d 14 4d 42 00    	mov    %ecx,0x424d14
40689d:	40                   	inc    %eax
40689e:	f0 0f c1 05 8c 4d 42 	lock xadd %eax,0x424d8c
4068a5:	00
4068a6:	40                   	inc    %eax
4068a7:	c3                   	ret
4068a8:	cc                   	int3
4068a9:	cc                   	int3
4068aa:	cc                   	int3
4068ab:	cc                   	int3
4068ac:	cc                   	int3
4068ad:	cc                   	int3
4068ae:	cc                   	int3
4068af:	cc                   	int3
4068b0:	8b ff                	mov    %edi,%edi
4068b2:	55                   	push   %ebp
4068b3:	8b ec                	mov    %esp,%ebp
4068b5:	8b 45 08             	mov    0x8(%ebp),%eax
4068b8:	a3 6c 4d 42 00       	mov    %eax,0x424d6c
4068bd:	33 c0                	xor    %eax,%eax
4068bf:	40                   	inc    %eax
4068c0:	5d                   	pop    %ebp
4068c1:	c2 04 00             	ret    $0x4
4068c4:	8b ff                	mov    %edi,%edi
4068c6:	55                   	push   %ebp
4068c7:	8b ec                	mov    %esp,%ebp
4068c9:	56                   	push   %esi
4068ca:	8b 35 d8 4c 42 00    	mov    0x424cd8,%esi
4068d0:	85 f6                	test   %esi,%esi
4068d2:	74 10                	je     0x4068e4
4068d4:	ff 75 08             	push   0x8(%ebp)
4068d7:	6a 00                	push   $0x0
4068d9:	51                   	push   %ecx
4068da:	8b ce                	mov    %esi,%ecx
4068dc:	ff 15 78 64 42 00    	call   *0x426478
4068e2:	ff d6                	call   *%esi
4068e4:	6a 07                	push   $0x7
4068e6:	59                   	pop    %ecx
4068e7:	cd 29                	int    $0x29
4068e9:	5e                   	pop    %esi
4068ea:	5d                   	pop    %ebp
4068eb:	c2 04 00             	ret    $0x4
4068ee:	8b ff                	mov    %edi,%edi
4068f0:	55                   	push   %ebp
4068f1:	8b ec                	mov    %esp,%ebp
4068f3:	81 ec 10 01 00 00    	sub    $0x110,%esp
4068f9:	a1 10 42 42 00       	mov    0x424210,%eax
4068fe:	33 c5                	xor    %ebp,%eax
406900:	89 45 fc             	mov    %eax,-0x4(%ebp)
406903:	8b 4d 10             	mov    0x10(%ebp),%ecx
406906:	53                   	push   %ebx
406907:	8b 5d 0c             	mov    0xc(%ebp),%ebx
40690a:	56                   	push   %esi
40690b:	8b 75 08             	mov    0x8(%ebp),%esi
40690e:	57                   	push   %edi
40690f:	33 ff                	xor    %edi,%edi
406911:	89 8d f0 fe ff ff    	mov    %ecx,-0x110(%ebp)
406917:	89 bd f4 fe ff ff    	mov    %edi,-0x10c(%ebp)
40691d:	85 f6                	test   %esi,%esi
40691f:	74 28                	je     0x406949
406921:	8d 85 f4 fe ff ff    	lea    -0x10c(%ebp),%eax
406927:	50                   	push   %eax
406928:	56                   	push   %esi
406929:	6a 06                	push   $0x6
40692b:	ff 15 90 61 42 00    	call   *0x426190
406931:	85 c0                	test   %eax,%eax
406933:	75 08                	jne    0x40693d
406935:	85 db                	test   %ebx,%ebx
406937:	74 3b                	je     0x406974
406939:	89 3b                	mov    %edi,(%ebx)
40693b:	eb 37                	jmp    0x406974
40693d:	8b bd f4 fe ff ff    	mov    -0x10c(%ebp),%edi
406943:	8b 8d f0 fe ff ff    	mov    -0x110(%ebp),%ecx
406949:	85 db                	test   %ebx,%ebx
40694b:	74 0c                	je     0x406959
40694d:	8b c6                	mov    %esi,%eax
40694f:	2b c7                	sub    %edi,%eax
406951:	f7 de                	neg    %esi
406953:	1b f6                	sbb    %esi,%esi
406955:	23 f0                	and    %eax,%esi
406957:	89 33                	mov    %esi,(%ebx)
406959:	85 c9                	test   %ecx,%ecx
40695b:	74 57                	je     0x4069b4
40695d:	68 04 01 00 00       	push   $0x104
406962:	8d 85 f8 fe ff ff    	lea    -0x108(%ebp),%eax
406968:	50                   	push   %eax
406969:	57                   	push   %edi
40696a:	ff 15 b0 61 42 00    	call   *0x4261b0
406970:	85 c0                	test   %eax,%eax
406972:	75 04                	jne    0x406978
406974:	32 c0                	xor    %al,%al
406976:	eb 3e                	jmp    0x4069b6
406978:	8d 8d f8 fe ff ff    	lea    -0x108(%ebp),%ecx
40697e:	8d 51 01             	lea    0x1(%ecx),%edx
406981:	8a 01                	mov    (%ecx),%al
406983:	41                   	inc    %ecx
406984:	84 c0                	test   %al,%al
406986:	75 f9                	jne    0x406981
406988:	2b ca                	sub    %edx,%ecx
40698a:	8d 85 f8 fe ff ff    	lea    -0x108(%ebp),%eax
406990:	03 c1                	add    %ecx,%eax
406992:	eb 07                	jmp    0x40699b
406994:	80 78 ff 5c          	cmpb   $0x5c,-0x1(%eax)
406998:	74 0b                	je     0x4069a5
40699a:	48                   	dec    %eax
40699b:	8d 8d f8 fe ff ff    	lea    -0x108(%ebp),%ecx
4069a1:	3b c1                	cmp    %ecx,%eax
4069a3:	77 ef                	ja     0x406994
4069a5:	8b 55 14             	mov    0x14(%ebp),%edx
4069a8:	8b 8d f0 fe ff ff    	mov    -0x110(%ebp),%ecx
4069ae:	50                   	push   %eax
4069af:	e8 34 fa ff ff       	call   0x4063e8
4069b4:	b0 01                	mov    $0x1,%al
4069b6:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4069b9:	5f                   	pop    %edi
4069ba:	5e                   	pop    %esi
4069bb:	33 cd                	xor    %ebp,%ecx
4069bd:	5b                   	pop    %ebx
4069be:	e8 ad ae 01 00       	call   0x421870
4069c3:	c9                   	leave
4069c4:	c2 10 00             	ret    $0x10
4069c7:	cc                   	int3
4069c8:	cc                   	int3
4069c9:	cc                   	int3
4069ca:	cc                   	int3
4069cb:	cc                   	int3
4069cc:	cc                   	int3
4069cd:	cc                   	int3
4069ce:	cc                   	int3
4069cf:	cc                   	int3
4069d0:	80 3d fc 4c 42 00 00 	cmpb   $0x0,0x424cfc
4069d7:	56                   	push   %esi
4069d8:	be 28 4d 42 00       	mov    $0x424d28,%esi
4069dd:	75 16                	jne    0x4069f5
4069df:	6a 40                	push   $0x40
4069e1:	56                   	push   %esi
4069e2:	6a 00                	push   $0x0
4069e4:	68 b0 68 40 00       	push   $0x4068b0
4069e9:	e8 00 ff ff ff       	call   0x4068ee
4069ee:	c6 05 fc 4c 42 00 01 	movb   $0x1,0x424cfc
4069f5:	8b c6                	mov    %esi,%eax
4069f7:	5e                   	pop    %esi
4069f8:	c3                   	ret
4069f9:	cc                   	int3
4069fa:	cc                   	int3
4069fb:	cc                   	int3
4069fc:	cc                   	int3
4069fd:	cc                   	int3
4069fe:	cc                   	int3
4069ff:	cc                   	int3
406a00:	ff 25 84 60 42 00    	jmp    *0x426084
406a06:	cc                   	int3
406a07:	cc                   	int3
406a08:	cc                   	int3
406a09:	cc                   	int3
406a0a:	cc                   	int3
406a0b:	cc                   	int3
406a0c:	cc                   	int3
406a0d:	cc                   	int3
406a0e:	cc                   	int3
406a0f:	cc                   	int3
406a10:	8b ff                	mov    %edi,%edi
406a12:	55                   	push   %ebp
406a13:	8b ec                	mov    %esp,%ebp
406a15:	56                   	push   %esi
406a16:	68 68 1a 40 00       	push   $0x401a68
406a1b:	ff 15 80 60 42 00    	call   *0x426080
406a21:	68 88 1a 40 00       	push   $0x401a88
406a26:	50                   	push   %eax
406a27:	ff 15 68 60 42 00    	call   *0x426068
406a2d:	8b f0                	mov    %eax,%esi
406a2f:	85 f6                	test   %esi,%esi
406a31:	74 13                	je     0x406a46
406a33:	ff 75 10             	push   0x10(%ebp)