41886d:	51                   	push   %ecx
41886e:	51                   	push   %ecx
41886f:	53                   	push   %ebx
418870:	56                   	push   %esi
418871:	33 f6                	xor    %esi,%esi
418873:	57                   	push   %edi
418874:	89 75 fc             	mov    %esi,-0x4(%ebp)
418877:	89 75 f8             	mov    %esi,-0x8(%ebp)
41887a:	39 75 08             	cmp    %esi,0x8(%ebp)
41887d:	0f 84 33 01 00 00    	je     0x4189b6
418883:	39 35 9c aa 46 00    	cmp    %esi,0x46aa9c
418889:	75 63                	jne    0x4188ee
41888b:	8d 45 fc             	lea    -0x4(%ebp),%eax
41888e:	50                   	push   %eax
41888f:	6a 23                	push   $0x23
418891:	e8 2f ac fe ff       	call   0x4034c5
418896:	8b d8                	mov    %eax,%ebx
418898:	85 db                	test   %ebx,%ebx
41889a:	79 0f                	jns    0x4188ab
41889c:	68 34 63 45 00       	push   $0x456334
4188a1:	68 10 6e 45 00       	push   $0x456e10
4188a6:	e9 87 01 00 00       	jmp    0x418a32
4188ab:	bf 9c aa 46 00       	mov    $0x46aa9c,%edi
4188b0:	57                   	push   %edi
4188b1:	68 a0 5f 45 00       	push   $0x455fa0
4188b6:	ff 75 fc             	push   -0x4(%ebp)
4188b9:	e8 bb a4 fe ff       	call   0x402d79
4188be:	8b d8                	mov    %eax,%ebx
4188c0:	85 db                	test   %ebx,%ebx
4188c2:	79 0f                	jns    0x4188d3
4188c4:	68 34 63 45 00       	push   $0x456334
4188c9:	68 3c 6e 45 00       	push   $0x456e3c
4188ce:	e9 5f 01 00 00       	jmp    0x418a32
4188d3:	57                   	push   %edi
4188d4:	e8 55 a2 fe ff       	call   0x402b2e
4188d9:	8b d8                	mov    %eax,%ebx
4188db:	85 db                	test   %ebx,%ebx
4188dd:	79 0f                	jns    0x4188ee
4188df:	68 34 63 45 00       	push   $0x456334
4188e4:	68 78 6e 45 00       	push   $0x456e78
4188e9:	e9 44 01 00 00       	jmp    0x418a32
4188ee:	8b 0d a0 aa 46 00    	mov    0x46aaa0,%ecx
4188f4:	85 c9                	test   %ecx,%ecx
4188f6:	75 69                	jne    0x418961
4188f8:	bf a0 aa 46 00       	mov    $0x46aaa0,%edi
4188fd:	57                   	push   %edi
4188fe:	56                   	push   %esi
4188ff:	68 c0 6e 45 00       	push   $0x456ec0
418904:	68 f8 5e 45 00       	push   $0x455ef8
418909:	e8 1a ce 02 00       	call   0x445728
41890e:	8b d8                	mov    %eax,%ebx
418910:	85 db                	test   %ebx,%ebx
418912:	79 12                	jns    0x418926
418914:	68 dc 6e 45 00       	push   $0x456edc
418919:	53                   	push   %ebx
41891a:	e8 10 78 02 00       	call   0x44012f
41891f:	59                   	pop    %ecx
418920:	59                   	pop    %ecx
418921:	e9 15 01 00 00       	jmp    0x418a3b
418926:	39 35 a0 aa 46 00    	cmp    %esi,0x46aaa0
41892c:	74 13                	je     0x418941
41892e:	57                   	push   %edi
41892f:	e8 fa a1 fe ff       	call   0x402b2e
418934:	8b d8                	mov    %eax,%ebx
418936:	85 db                	test   %ebx,%ebx
418938:	79 21                	jns    0x41895b
41893a:	68 10 6f 45 00       	push   $0x456f10
41893f:	eb d8                	jmp    0x418919
418941:	56                   	push   %esi
418942:	ff 35 9c aa 46 00    	push   0x46aa9c
418948:	57                   	push   %edi
418949:	e8 57 98 fe ff       	call   0x4021a5
41894e:	8b d8                	mov    %eax,%ebx
418950:	85 db                	test   %ebx,%ebx
418952:	79 07                	jns    0x41895b
418954:	68 68 6f 45 00       	push   $0x456f68
418959:	eb be                	jmp    0x418919
41895b:	8b 0d a0 aa 46 00    	mov    0x46aaa0,%ecx
418961:	39 75 0c             	cmp    %esi,0xc(%ebp)
418964:	a1 9c aa 46 00       	mov    0x46aa9c,%eax
418969:	56                   	push   %esi
41896a:	8b 75 10             	mov    0x10(%ebp),%esi
41896d:	0f 45 c1             	cmovne %ecx,%eax
418970:	50                   	push   %eax
418971:	56                   	push   %esi
418972:	e8 2e 98 fe ff       	call   0x4021a5
418977:	8b d8                	mov    %eax,%ebx
418979:	85 db                	test   %ebx,%ebx
41897b:	79 0a                	jns    0x418987
41897d:	68 34 63 45 00       	push   $0x456334
418982:	e9 a6 00 00 00       	jmp    0x418a2d
418987:	8d 45 f8             	lea    -0x8(%ebp),%eax
41898a:	50                   	push   %eax
41898b:	ff 36                	push   (%esi)
41898d:	ff 35 9c aa 46 00    	push   0x46aa9c
418993:	e8 6d a3 fe ff       	call   0x402d05
418998:	8b d8                	mov    %eax,%ebx
41899a:	85 db                	test   %ebx,%ebx
41899c:	79 0a                	jns    0x4189a8
41899e:	68 f0 6f 45 00       	push   $0x456ff0
4189a3:	e9 71 ff ff ff       	jmp    0x418919
4189a8:	33 db                	xor    %ebx,%ebx
4189aa:	83 7d f8 02          	cmpl   $0x2,-0x8(%ebp)
4189ae:	0f 95 c3             	setne  %bl
4189b1:	e9 85 00 00 00       	jmp    0x418a3b
4189b6:	a1 98 aa 46 00       	mov    0x46aa98,%eax
4189bb:	85 c0                	test   %eax,%eax
4189bd:	75 59                	jne    0x418a18
4189bf:	8d 45 fc             	lea    -0x4(%ebp),%eax
4189c2:	50                   	push   %eax
4189c3:	6a 1c                	push   $0x1c
4189c5:	e8 fb aa fe ff       	call   0x4034c5
4189ca:	8b d8                	mov    %eax,%ebx
4189cc:	85 db                	test   %ebx,%ebx
4189ce:	79 0a                	jns    0x4189da
4189d0:	68 40 63 45 00       	push   $0x456340
4189d5:	e9 c7 fe ff ff       	jmp    0x4188a1
4189da:	bf 98 aa 46 00       	mov    $0x46aa98,%edi
4189df:	57                   	push   %edi
4189e0:	68 a0 5f 45 00       	push   $0x455fa0
4189e5:	ff 75 fc             	push   -0x4(%ebp)
4189e8:	e8 8c a3 fe ff       	call   0x402d79
4189ed:	8b d8                	mov    %eax,%ebx
4189ef:	85 db                	test   %ebx,%ebx
4189f1:	79 0a                	jns    0x4189fd
4189f3:	68 40 63 45 00       	push   $0x456340
4189f8:	e9 cc fe ff ff       	jmp    0x4188c9
4189fd:	57                   	push   %edi
4189fe:	e8 2b a1 fe ff       	call   0x402b2e
418a03:	8b d8                	mov    %eax,%ebx
418a05:	85 db                	test   %ebx,%ebx
418a07:	79 0a                	jns    0x418a13
418a09:	68 40 63 45 00       	push   $0x456340
418a0e:	e9 d1 fe ff ff       	jmp    0x4188e4
418a13:	a1 98 aa 46 00       	mov    0x46aa98,%eax
418a18:	56                   	push   %esi
418a19:	50                   	push   %eax
418a1a:	ff 75 10             	push   0x10(%ebp)
418a1d:	e8 83 97 fe ff       	call   0x4021a5
418a22:	8b d8                	mov    %eax,%ebx
418a24:	85 db                	test   %ebx,%ebx
418a26:	79 13                	jns    0x418a3b
418a28:	68 40 63 45 00       	push   $0x456340
418a2d:	68 bc 6f 45 00       	push   $0x456fbc
418a32:	53                   	push   %ebx
418a33:	e8 f7 76 02 00       	call   0x44012f
418a38:	83 c4 0c             	add    $0xc,%esp
418a3b:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
418a3f:	74 08                	je     0x418a49
418a41:	ff 75 fc             	push   -0x4(%ebp)
418a44:	e8 a6 ca 02 00       	call   0x4454ef
418a49:	5f                   	pop    %edi
418a4a:	5e                   	pop    %esi
418a4b:	8b c3                	mov    %ebx,%eax
418a4d:	5b                   	pop    %ebx
418a4e:	8b e5                	mov    %ebp,%esp
418a50:	5d                   	pop    %ebp
418a51:	c2 0c 00             	ret    $0xc
418a54:	55                   	push   %ebp
418a55:	8b ec                	mov    %esp,%ebp
418a57:	56                   	push   %esi
418a58:	8b 75 10             	mov    0x10(%ebp),%esi
418a5b:	57                   	push   %edi
418a5c:	8d 46 1c             	lea    0x1c(%esi),%eax
418a5f:	50                   	push   %eax
418a60:	ff 75 08             	push   0x8(%ebp)
418a63:	e8 9b f5 ff ff       	call   0x418003
418a68:	8b f8                	mov    %eax,%edi
418a6a:	85 ff                	test   %edi,%edi
418a6c:	79 0f                	jns    0x418a7d
418a6e:	68 e4 73 45 00       	push   $0x4573e4
418a73:	57                   	push   %edi
418a74:	e8 b6 76 02 00       	call   0x44012f
418a79:	59                   	pop    %ecx
418a7a:	59                   	pop    %ecx
418a7b:	eb 1e                	jmp    0x418a9b
418a7d:	8b 45 0c             	mov    0xc(%ebp),%eax
418a80:	83 66 14 00          	andl   $0x0,0x14(%esi)
418a84:	c7 46 04 01 00 00 00 	movl   $0x1,0x4(%esi)
418a8b:	89 06                	mov    %eax,(%esi)
418a8d:	c7 46 08 03 00 00 00 	movl   $0x3,0x8(%esi)
418a94:	c7 46 18 02 00 00 00 	movl   $0x2,0x18(%esi)
418a9b:	8b c7                	mov    %edi,%eax
418a9d:	5f                   	pop    %edi
418a9e:	5e                   	pop    %esi
418a9f:	5d                   	pop    %ebp
418aa0:	c2 0c 00             	ret    $0xc
418aa3:	55                   	push   %ebp
418aa4:	8b ec                	mov    %esp,%ebp
418aa6:	51                   	push   %ecx
418aa7:	51                   	push   %ecx
418aa8:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
418aac:	8d 45 f8             	lea    -0x8(%ebp),%eax
418aaf:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
418ab3:	53                   	push   %ebx
418ab4:	56                   	push   %esi
418ab5:	57                   	push   %edi
418ab6:	8b 7d 0c             	mov    0xc(%ebp),%edi
418ab9:	50                   	push   %eax
418aba:	ff 75 14             	push   0x14(%ebp)
418abd:	57                   	push   %edi
418abe:	e8 c6 16 00 00       	call   0x41a189
418ac3:	8b 5d f8             	mov    -0x8(%ebp),%ebx
418ac6:	8b f0                	mov    %eax,%esi
418ac8:	85 f6                	test   %esi,%esi
418aca:	79 12                	jns    0x418ade
418acc:	68 8c 78 45 00       	push   $0x45788c
418ad1:	56                   	push   %esi
418ad2:	e8 58 76 02 00       	call   0x44012f
418ad7:	59                   	pop    %ecx
418ad8:	59                   	pop    %ecx
418ad9:	e9 e4 00 00 00       	jmp    0x418bc2
418ade:	33 c0                	xor    %eax,%eax
418ae0:	39 45 08             	cmp    %eax,0x8(%ebp)
418ae3:	53                   	push   %ebx
418ae4:	ff 75 10             	push   0x10(%ebp)
418ae7:	0f 95 c0             	setne  %al
418aea:	05 5f 01 00 20       	add    $0x2000015f,%eax
418aef:	50                   	push   %eax
418af0:	6a 02                	push   $0x2
418af2:	e8 18 ca fe ff       	call   0x40550f
418af7:	83 c4 10             	add    $0x10,%esp
418afa:	b8 05 40 00 80       	mov    $0x80004005,%eax
418aff:	33 f6                	xor    %esi,%esi
418b01:	83 fe 03             	cmp    $0x3,%esi
418b04:	73 23                	jae    0x418b29
418b06:	85 f6                	test   %esi,%esi
418b08:	74 0b                	je     0x418b15
418b0a:	68 d0 07 00 00       	push   $0x7d0
418b0f:	ff 15 08 b1 44 00    	call   *0x44b108
418b15:	6a 07                	push   $0x7
418b17:	53                   	push   %ebx
418b18:	e8 a6 b0 fe ff       	call   0x403bc3
418b1d:	3d 03 00 07 80       	cmp    $0x80070003,%eax
418b22:	74 05                	je     0x418b29
418b24:	46                   	inc    %esi
418b25:	85 c0                	test   %eax,%eax
418b27:	78 d8                	js     0x418b01
418b29:	85 c0                	test   %eax,%eax
418b2b:	79 21                	jns    0x418b4e
418b2d:	50                   	push   %eax
418b2e:	33 c0                	xor    %eax,%eax
418b30:	39 45 08             	cmp    %eax,0x8(%ebp)
418b33:	53                   	push   %ebx
418b34:	ff 75 10             	push   0x10(%ebp)
418b37:	0f 95 c0             	setne  %al
418b3a:	05 61 01 00 a0       	add    $0xa0000161,%eax
418b3f:	50                   	push   %eax
418b40:	6a 02                	push   $0x2
418b42:	e8 c8 c9 fe ff       	call   0x40550f
418b47:	83 c4 14             	add    $0x14,%esp
418b4a:	33 f6                	xor    %esi,%esi
418b4c:	eb 74                	jmp    0x418bc2
418b4e:	8d 45 fc             	lea    -0x4(%ebp),%eax
418b51:	50                   	push   %eax
418b52:	6a 01                	push   $0x1
418b54:	57                   	push   %edi
418b55:	e8 10 fd ff ff       	call   0x41886a
418b5a:	8b f0                	mov    %eax,%esi
418b5c:	85 f6                	test   %esi,%esi
418b5e:	79 20                	jns    0x418b80
418b60:	85 ff                	test   %edi,%edi
418b62:	b8 34 63 45 00       	mov    $0x456334,%eax
418b67:	b9 40 63 45 00       	mov    $0x456340,%ecx
418b6c:	0f 44 c1             	cmove  %ecx,%eax
418b6f:	50                   	push   %eax
418b70:	68 4c 63 45 00       	push   $0x45634c
418b75:	56                   	push   %esi
418b76:	e8 b4 75 02 00       	call   0x44012f
418b7b:	83 c4 0c             	add    $0xc,%esp
418b7e:	eb 42                	jmp    0x418bc2
418b80:	6a 04                	push   $0x4
418b82:	ff 75 fc             	push   -0x4(%ebp)
418b85:	e8 39 b0 fe ff       	call   0x403bc3
418b8a:	83 fe 01             	cmp    $0x1,%esi
418b8d:	75 33                	jne    0x418bc2
418b8f:	8d 45 fc             	lea    -0x4(%ebp),%eax
418b92:	50                   	push   %eax
418b93:	6a 00                	push   $0x0
418b95:	57                   	push   %edi
418b96:	e8 cf fc ff ff       	call   0x41886a
418b9b:	8b f0                	mov    %eax,%esi
418b9d:	85 f6                	test   %esi,%esi
418b9f:	79 17                	jns    0x418bb8
418ba1:	85 ff                	test   %edi,%edi
418ba3:	b8 34 63 45 00       	mov    $0x456334,%eax
418ba8:	b9 40 63 45 00       	mov    $0x456340,%ecx
418bad:	0f 44 c1             	cmove  %ecx,%eax
418bb0:	50                   	push   %eax
418bb1:	68 d4 63 45 00       	push   $0x4563d4
418bb6:	eb bd                	jmp    0x418b75
418bb8:	6a 04                	push   $0x4
418bba:	ff 75 fc             	push   -0x4(%ebp)
418bbd:	e8 01 b0 fe ff       	call   0x403bc3
418bc2:	85 db                	test   %ebx,%ebx
418bc4:	74 06                	je     0x418bcc
418bc6:	53                   	push   %ebx
418bc7:	e8 23 c9 02 00       	call   0x4454ef
418bcc:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
418bd0:	74 08                	je     0x418bda
418bd2:	ff 75 fc             	push   -0x4(%ebp)
418bd5:	e8 15 c9 02 00       	call   0x4454ef
418bda:	5f                   	pop    %edi
418bdb:	8b c6                	mov    %esi,%eax
418bdd:	5e                   	pop    %esi
418bde:	5b                   	pop    %ebx
418bdf:	8b e5                	mov    %ebp,%esp
418be1:	5d                   	pop    %ebp
418be2:	c2 10 00             	ret    $0x10
418be5:	55                   	push   %ebp
418be6:	8b ec                	mov    %esp,%ebp
418be8:	83 ec 0c             	sub    $0xc,%esp
418beb:	53                   	push   %ebx
418bec:	33 db                	xor    %ebx,%ebx
418bee:	b8 04 00 00 20       	mov    $0x20000004,%eax
418bf3:	56                   	push   %esi
418bf4:	57                   	push   %edi
418bf5:	8b fb                	mov    %ebx,%edi
418bf7:	89 5d f4             	mov    %ebx,-0xc(%ebp)
418bfa:	89 5d f8             	mov    %ebx,-0x8(%ebp)
418bfd:	89 7d fc             	mov    %edi,-0x4(%ebp)
418c00:	39 5d 08             	cmp    %ebx,0x8(%ebp)
418c03:	74 72                	je     0x418c77
418c05:	8d 45 fc             	lea    -0x4(%ebp),%eax
418c08:	50                   	push   %eax
418c09:	6a 1a                	push   $0x1a
418c0b:	e8 f3 f3 ff ff       	call   0x418003
418c10:	8b f0                	mov    %eax,%esi
418c12:	85 f6                	test   %esi,%esi
418c14:	79 12                	jns    0x418c28
418c16:	68 a0 73 45 00       	push   $0x4573a0
418c1b:	56                   	push   %esi
418c1c:	e8 0e 75 02 00       	call   0x44012f
418c21:	8b 7d fc             	mov    -0x4(%ebp),%edi
418c24:	59                   	pop    %ecx
418c25:	59                   	pop    %ecx
418c26:	eb 78                	jmp    0x418ca0
418c28:	6a 02                	push   $0x2
418c2a:	6a 08                	push   $0x8
418c2c:	8d 45 f4             	lea    -0xc(%ebp),%eax
418c2f:	50                   	push   %eax
418c30:	ff 15 30 b0 44 00    	call   *0x44b030
418c36:	85 c0                	test   %eax,%eax
418c38:	75 35                	jne    0x418c6f
418c3a:	ff 15 e8 b0 44 00    	call   *0x44b0e8
418c40:	0f b7 f0             	movzwl %ax,%esi
418c43:	81 ce 00 00 07 80    	or     $0x80070000,%esi
418c49:	85 c0                	test   %eax,%eax
418c4b:	0f 4e f0             	cmovle %eax,%esi
418c4e:	b8 05 40 00 80       	mov    $0x80004005,%eax