411818:	56                   	push   %esi
411819:	e8 af 01 00 00       	call   0x4119cd
41181e:	83 c4 0c             	add    $0xc,%esp
411821:	85 c0                	test   %eax,%eax
411823:	0f 84 7f fe ff ff    	je     0x4116a8
411829:	68 c8 57 40 00       	push   $0x4057c8
41182e:	56                   	push   %esi
41182f:	e8 3b 01 00 00       	call   0x41196f
411834:	59                   	pop    %ecx
411835:	59                   	pop    %ecx
411836:	8b d6                	mov    %esi,%edx
411838:	b9 d2 00 00 00       	mov    $0xd2,%ecx
41183d:	e8 14 02 00 00       	call   0x411a56
411842:	85 c0                	test   %eax,%eax
411844:	0f 84 5e fe ff ff    	je     0x4116a8
41184a:	89 bd dc fe ff ff    	mov    %edi,-0x124(%ebp)
411850:	39 bd d8 fe ff ff    	cmp    %edi,-0x128(%ebp)
411856:	0f 8e 4e fe ff ff    	jle    0x4116aa
41185c:	68 c8 57 40 00       	push   $0x4057c8
411861:	56                   	push   %esi
411862:	e8 08 01 00 00       	call   0x41196f
411867:	59                   	pop    %ecx
411868:	59                   	pop    %ecx
411869:	57                   	push   %edi
41186a:	8d 8d c4 fe ff ff    	lea    -0x13c(%ebp),%ecx
411870:	e8 67 21 00 00       	call   0x4139dc
411875:	8b f8                	mov    %eax,%edi
411877:	ff 77 0c             	push   0xc(%edi)
41187a:	ff 77 08             	push   0x8(%edi)
41187d:	ff 77 04             	push   0x4(%edi)
411880:	68 d3 00 00 00       	push   $0xd3
411885:	56                   	push   %esi
411886:	e8 42 01 00 00       	call   0x4119cd
41188b:	83 c4 14             	add    $0x14,%esp
41188e:	85 c0                	test   %eax,%eax
411890:	0f 84 d2 00 00 00    	je     0x411968
411896:	ff 77 10             	push   0x10(%edi)
411899:	68 d4 00 00 00       	push   $0xd4
41189e:	56                   	push   %esi
41189f:	e8 29 01 00 00       	call   0x4119cd
4118a4:	83 c4 0c             	add    $0xc,%esp
4118a7:	85 c0                	test   %eax,%eax
4118a9:	0f 84 b9 00 00 00    	je     0x411968
4118af:	ff 77 14             	push   0x14(%edi)
4118b2:	68 d5 00 00 00       	push   $0xd5
4118b7:	56                   	push   %esi
4118b8:	e8 10 01 00 00       	call   0x4119cd
4118bd:	83 c4 0c             	add    $0xc,%esp
4118c0:	85 c0                	test   %eax,%eax
4118c2:	0f 84 a0 00 00 00    	je     0x411968
4118c8:	ff 77 18             	push   0x18(%edi)
4118cb:	68 d6 00 00 00       	push   $0xd6
4118d0:	56                   	push   %esi
4118d1:	e8 f7 00 00 00       	call   0x4119cd
4118d6:	83 c4 0c             	add    $0xc,%esp
4118d9:	85 c0                	test   %eax,%eax
4118db:	0f 84 87 00 00 00    	je     0x411968
4118e1:	ff 77 1c             	push   0x1c(%edi)
4118e4:	68 d7 00 00 00       	push   $0xd7
4118e9:	56                   	push   %esi
4118ea:	e8 de 00 00 00       	call   0x4119cd
4118ef:	83 c4 0c             	add    $0xc,%esp
4118f2:	85 c0                	test   %eax,%eax
4118f4:	74 72                	je     0x411968
4118f6:	ff 77 20             	push   0x20(%edi)
4118f9:	68 d8 00 00 00       	push   $0xd8
4118fe:	56                   	push   %esi
4118ff:	e8 c9 00 00 00       	call   0x4119cd
411904:	83 c4 0c             	add    $0xc,%esp
411907:	85 c0                	test   %eax,%eax
411909:	74 5d                	je     0x411968
41190b:	ff 77 24             	push   0x24(%edi)
41190e:	68 d9 00 00 00       	push   $0xd9
411913:	56                   	push   %esi
411914:	e8 b4 00 00 00       	call   0x4119cd
411919:	83 c4 0c             	add    $0xc,%esp
41191c:	85 c0                	test   %eax,%eax
41191e:	74 48                	je     0x411968
411920:	ff 77 28             	push   0x28(%edi)
411923:	68 da 00 00 00       	push   $0xda
411928:	56                   	push   %esi
411929:	e8 9f 00 00 00       	call   0x4119cd
41192e:	83 c4 0c             	add    $0xc,%esp
411931:	85 c0                	test   %eax,%eax
411933:	74 33                	je     0x411968
411935:	ff 77 2c             	push   0x2c(%edi)
411938:	68 db 00 00 00       	push   $0xdb
41193d:	56                   	push   %esi
41193e:	e8 8a 00 00 00       	call   0x4119cd
411943:	83 c4 0c             	add    $0xc,%esp
411946:	85 c0                	test   %eax,%eax
411948:	74 1e                	je     0x411968
41194a:	8b bd dc fe ff ff    	mov    -0x124(%ebp),%edi
411950:	47                   	inc    %edi
411951:	89 bd dc fe ff ff    	mov    %edi,-0x124(%ebp)
411957:	3b bd d8 fe ff ff    	cmp    -0x128(%ebp),%edi
41195d:	0f 8c f9 fe ff ff    	jl     0x41185c
411963:	e9 42 fd ff ff       	jmp    0x4116aa
411968:	33 db                	xor    %ebx,%ebx
41196a:	e9 3b fd ff ff       	jmp    0x4116aa
41196f:	8b ff                	mov    %edi,%edi
411971:	55                   	push   %ebp
411972:	8b ec                	mov    %esp,%ebp
411974:	81 ec 04 02 00 00    	sub    $0x204,%esp
41197a:	a1 e4 05 42 00       	mov    0x4205e4,%eax
41197f:	33 c5                	xor    %ebp,%eax
411981:	89 45 fc             	mov    %eax,-0x4(%ebp)
411984:	56                   	push   %esi
411985:	8b 75 08             	mov    0x8(%ebp),%esi
411988:	8d 45 10             	lea    0x10(%ebp),%eax
41198b:	50                   	push   %eax
41198c:	ff 75 0c             	push   0xc(%ebp)
41198f:	8d 8d fc fd ff ff    	lea    -0x204(%ebp),%ecx
411995:	e8 7b 18 00 00       	call   0x413215
41199a:	85 c0                	test   %eax,%eax
41199c:	79 09                	jns    0x4119a7
41199e:	33 c0                	xor    %eax,%eax
4119a0:	66 89 85 fc fd ff ff 	mov    %ax,-0x204(%ebp)
4119a7:	8d 85 fc fd ff ff    	lea    -0x204(%ebp),%eax
4119ad:	56                   	push   %esi
4119ae:	50                   	push   %eax
4119af:	ff 15 38 35 42 00    	call   *0x423538
4119b5:	59                   	pop    %ecx
4119b6:	59                   	pop    %ecx
4119b7:	33 c9                	xor    %ecx,%ecx
4119b9:	85 c0                	test   %eax,%eax
4119bb:	5e                   	pop    %esi
4119bc:	0f 99 c1             	setns  %cl
4119bf:	8b c1                	mov    %ecx,%eax
4119c1:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4119c4:	33 cd                	xor    %ebp,%ecx
4119c6:	e8 55 9c 00 00       	call   0x41b620
4119cb:	c9                   	leave
4119cc:	c3                   	ret
4119cd:	8b ff                	mov    %edi,%edi
4119cf:	55                   	push   %ebp
4119d0:	8b ec                	mov    %esp,%ebp
4119d2:	81 ec 04 04 00 00    	sub    $0x404,%esp
4119d8:	a1 e4 05 42 00       	mov    0x4205e4,%eax
4119dd:	33 c5                	xor    %ebp,%eax
4119df:	89 45 fc             	mov    %eax,-0x4(%ebp)
4119e2:	56                   	push   %esi
4119e3:	8b 75 08             	mov    0x8(%ebp),%esi
4119e6:	8d 85 fc fb ff ff    	lea    -0x404(%ebp),%eax
4119ec:	68 00 01 00 00       	push   $0x100
4119f1:	50                   	push   %eax
4119f2:	ff 75 0c             	push   0xc(%ebp)
4119f5:	ff 35 28 15 42 00    	push   0x421528
4119fb:	ff 15 60 34 42 00    	call   *0x423460
411a01:	33 c9                	xor    %ecx,%ecx
411a03:	3b c8                	cmp    %eax,%ecx
411a05:	1b c9                	sbb    %ecx,%ecx
411a07:	f7 d9                	neg    %ecx
411a09:	85 c0                	test   %eax,%eax
411a0b:	74 3a                	je     0x411a47
411a0d:	8d 45 10             	lea    0x10(%ebp),%eax
411a10:	50                   	push   %eax
411a11:	8d 85 fc fb ff ff    	lea    -0x404(%ebp),%eax
411a17:	50                   	push   %eax
411a18:	8d 8d fc fd ff ff    	lea    -0x204(%ebp),%ecx
411a1e:	e8 f2 17 00 00       	call   0x413215
411a23:	85 c0                	test   %eax,%eax
411a25:	79 09                	jns    0x411a30
411a27:	33 c0                	xor    %eax,%eax
411a29:	66 89 85 fc fd ff ff 	mov    %ax,-0x204(%ebp)
411a30:	8d 85 fc fd ff ff    	lea    -0x204(%ebp),%eax
411a36:	56                   	push   %esi
411a37:	50                   	push   %eax
411a38:	ff 15 38 35 42 00    	call   *0x423538
411a3e:	59                   	pop    %ecx
411a3f:	59                   	pop    %ecx
411a40:	33 c9                	xor    %ecx,%ecx
411a42:	85 c0                	test   %eax,%eax
411a44:	0f 99 c1             	setns  %cl
411a47:	8b c1                	mov    %ecx,%eax
411a49:	8b 4d fc             	mov    -0x4(%ebp),%ecx
411a4c:	33 cd                	xor    %ebp,%ecx
411a4e:	5e                   	pop    %esi
411a4f:	e8 cc 9b 00 00       	call   0x41b620
411a54:	c9                   	leave
411a55:	c3                   	ret
411a56:	8b ff                	mov    %edi,%edi
411a58:	55                   	push   %ebp
411a59:	8b ec                	mov    %esp,%ebp
411a5b:	81 ec 04 02 00 00    	sub    $0x204,%esp
411a61:	a1 e4 05 42 00       	mov    0x4205e4,%eax
411a66:	33 c5                	xor    %ebp,%eax
411a68:	89 45 fc             	mov    %eax,-0x4(%ebp)
411a6b:	56                   	push   %esi
411a6c:	68 00 01 00 00       	push   $0x100
411a71:	8d 85 fc fd ff ff    	lea    -0x204(%ebp),%eax
411a77:	8b f2                	mov    %edx,%esi
411a79:	50                   	push   %eax
411a7a:	51                   	push   %ecx
411a7b:	ff 35 28 15 42 00    	push   0x421528
411a81:	ff 15 60 34 42 00    	call   *0x423460
411a87:	33 c9                	xor    %ecx,%ecx
411a89:	3b c8                	cmp    %eax,%ecx
411a8b:	1b c9                	sbb    %ecx,%ecx
411a8d:	f7 d9                	neg    %ecx
411a8f:	85 c0                	test   %eax,%eax
411a91:	74 17                	je     0x411aaa
411a93:	8d 85 fc fd ff ff    	lea    -0x204(%ebp),%eax
411a99:	56                   	push   %esi
411a9a:	50                   	push   %eax
411a9b:	ff 15 38 35 42 00    	call   *0x423538
411aa1:	59                   	pop    %ecx
411aa2:	59                   	pop    %ecx
411aa3:	33 c9                	xor    %ecx,%ecx
411aa5:	85 c0                	test   %eax,%eax
411aa7:	0f 99 c1             	setns  %cl
411aaa:	8b c1                	mov    %ecx,%eax
411aac:	8b 4d fc             	mov    -0x4(%ebp),%ecx
411aaf:	33 cd                	xor    %ebp,%ecx
411ab1:	5e                   	pop    %esi
411ab2:	e8 69 9b 00 00       	call   0x41b620
411ab7:	c9                   	leave
411ab8:	c3                   	ret
411ab9:	68 b4 00 00 00       	push   $0xb4
411abe:	b8 43 d4 41 00       	mov    $0x41d443,%eax
411ac3:	e8 70 a9 00 00       	call   0x41c438
411ac8:	89 4d f0             	mov    %ecx,-0x10(%ebp)
411acb:	8d 8d 40 ff ff ff    	lea    -0xc0(%ebp),%ecx
411ad1:	e8 bb 2d 00 00       	call   0x414891
411ad6:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
411ada:	33 f6                	xor    %esi,%esi
411adc:	8d 8d 40 ff ff ff    	lea    -0xc0(%ebp),%ecx
411ae2:	46                   	inc    %esi
411ae3:	e8 a3 f6 ff ff       	call   0x41118b
411ae8:	85 c0                	test   %eax,%eax
411aea:	75 07                	jne    0x411af3
411aec:	68 c4 00 00 00       	push   $0xc4
411af1:	eb 45                	jmp    0x411b38
411af3:	8b 45 d4             	mov    -0x2c(%ebp),%eax
411af6:	3b 45 f0             	cmp    -0x10(%ebp),%eax
411af9:	74 45                	je     0x411b40
411afb:	39 35 3c 1f 42 00    	cmp    %esi,0x421f3c
411b01:	74 0e                	je     0x411b11
411b03:	e8 0a 04 00 00       	call   0x411f12
411b08:	a3 3c 1f 42 00       	mov    %eax,0x421f3c
411b0d:	3b c6                	cmp    %esi,%eax
411b0f:	75 2d                	jne    0x411b3e
411b11:	6a 04                	push   $0x4
411b13:	8d 45 f0             	lea    -0x10(%ebp),%eax
411b16:	50                   	push   %eax
411b17:	6a 33                	push   $0x33
411b19:	ff 15 dc 35 42 00    	call   *0x4235dc
411b1f:	85 c0                	test   %eax,%eax
411b21:	79 1d                	jns    0x411b40
411b23:	33 c9                	xor    %ecx,%ecx
411b25:	3d 22 00 00 c0       	cmp    $0xc0000022,%eax
411b2a:	0f 95 c1             	setne  %cl
411b2d:	49                   	dec    %ecx
411b2e:	83 e1 ae             	and    $0xffffffae,%ecx
411b31:	81 c1 e3 00 00 00    	add    $0xe3,%ecx
411b37:	51                   	push   %ecx
411b38:	e8 16 cb ff ff       	call   0x40e653
411b3d:	59                   	pop    %ecx
411b3e:	33 f6                	xor    %esi,%esi
411b40:	83 3d 30 1f 42 00 00 	cmpl   $0x0,0x421f30
411b47:	74 0b                	je     0x411b54
411b49:	8b 55 f0             	mov    -0x10(%ebp),%edx
411b4c:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
411b4f:	e8 f1 04 00 00       	call   0x412045
411b54:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
411b58:	8d 8d 40 ff ff ff    	lea    -0xc0(%ebp),%ecx
411b5e:	e8 6e 80 ff ff       	call   0x409bd1
411b63:	8b c6                	mov    %esi,%eax
411b65:	e8 9c a8 00 00       	call   0x41c406
411b6a:	c3                   	ret
411b6b:	6a 0c                	push   $0xc
411b6d:	b8 73 d4 41 00       	mov    $0x41d473,%eax
411b72:	e8 c1 a8 00 00       	call   0x41c438
411b77:	8b f9                	mov    %ecx,%edi
411b79:	8d 4d f0             	lea    -0x10(%ebp),%ecx
411b7c:	ff 15 40 32 42 00    	call   *0x423240
411b82:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
411b86:	33 f6                	xor    %esi,%esi
411b88:	8b 5f 08             	mov    0x8(%edi),%ebx
411b8b:	33 c0                	xor    %eax,%eax
411b8d:	46                   	inc    %esi
411b8e:	89 45 ec             	mov    %eax,-0x14(%ebp)
411b91:	85 db                	test   %ebx,%ebx
411b93:	7e 43                	jle    0x411bd8
411b95:	50                   	push   %eax
411b96:	8d 45 e8             	lea    -0x18(%ebp),%eax
411b99:	8b cf                	mov    %edi,%ecx
411b9b:	50                   	push   %eax
411b9c:	e8 2b 16 00 00       	call   0x4131cc
411ba1:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
411ba5:	8d 4d f0             	lea    -0x10(%ebp),%ecx
411ba8:	50                   	push   %eax
411ba9:	ff 15 80 33 42 00    	call   *0x423380
411baf:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
411bb3:	8d 4d e8             	lea    -0x18(%ebp),%ecx
411bb6:	ff 15 44 32 42 00    	call   *0x423244
411bbc:	8d 4d f0             	lea    -0x10(%ebp),%ecx
411bbf:	e8 29 00 00 00       	call   0x411bed
411bc4:	48                   	dec    %eax
411bc5:	f7 d8                	neg    %eax
411bc7:	1b c0                	sbb    %eax,%eax
411bc9:	f7 d0                	not    %eax
411bcb:	23 f0                	and    %eax,%esi
411bcd:	8b 45 ec             	mov    -0x14(%ebp),%eax
411bd0:	40                   	inc    %eax
411bd1:	89 45 ec             	mov    %eax,-0x14(%ebp)
411bd4:	3b c3                	cmp    %ebx,%eax
411bd6:	7c bd                	jl     0x411b95
411bd8:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
411bdc:	8d 4d f0             	lea    -0x10(%ebp),%ecx
411bdf:	ff 15 44 32 42 00    	call   *0x423244
411be5:	8b c6                	mov    %esi,%eax
411be7:	e8 1a a8 00 00       	call   0x41c406
411bec:	c3                   	ret
411bed:	8b ff                	mov    %edi,%edi
411bef:	55                   	push   %ebp
411bf0:	8b ec                	mov    %esp,%ebp
411bf2:	51                   	push   %ecx
411bf3:	51                   	push   %ecx
411bf4:	56                   	push   %esi
411bf5:	33 f6                	xor    %esi,%esi
411bf7:	46                   	inc    %esi
411bf8:	57                   	push   %edi
411bf9:	8b f9                	mov    %ecx,%edi
411bfb:	39 35 3c 1f 42 00    	cmp    %esi,0x421f3c
411c01:	74 12                	je     0x411c15
411c03:	e8 0a 03 00 00       	call   0x411f12
411c08:	a3 3c 1f 42 00       	mov    %eax,0x421f3c
411c0d:	3b c6                	cmp    %esi,%eax
411c0f:	0f 85 a1 00 00 00    	jne    0x411cb6
411c15:	ff 37                	push   (%edi)
411c17:	8d 45 f8             	lea    -0x8(%ebp),%eax
411c1a:	50                   	push   %eax
411c1b:	ff 15 e4 35 42 00    	call   *0x4235e4
411c21:	6a 08                	push   $0x8
411c23:	8d 45 f8             	lea    -0x8(%ebp),%eax
411c26:	50                   	push   %eax
411c27:	6a 28                	push   $0x28
411c29:	ff 15 dc 35 42 00    	call   *0x4235dc
411c2f:	85 c0                	test   %eax,%eax
411c31:	78 1c                	js     0x411c4f
411c33:	83 3d 30 1f 42 00 00 	cmpl   $0x0,0x421f30
411c3a:	74 7c                	je     0x411cb8
411c3c:	ff 37                	push   (%edi)
411c3e:	68 45 01 00 00       	push   $0x145
411c43:	6a 00                	push   $0x0
411c45:	e8 a0 ca ff ff       	call   0x40e6ea
411c4a:	83 c4 0c             	add    $0xc,%esp
411c4d:	eb 69                	jmp    0x411cb8
411c4f:	3d 03 00 00 c0       	cmp    $0xc0000003,%eax