406813:	56                   	push   %esi
406814:	51                   	push   %ecx
406815:	e8 84 00 00 00       	call   0x40689e
40681a:	eb 77                	jmp    0x406893
40681c:	8b 4e 10             	mov    0x10(%esi),%ecx
40681f:	8b c1                	mov    %ecx,%eax
406821:	53                   	push   %ebx
406822:	8b 5c 24 18          	mov    0x18(%esp),%ebx
406826:	f7 d0                	not    %eax
406828:	3b c3                	cmp    %ebx,%eax
40682a:	76 6c                	jbe    0x406898
40682c:	85 db                	test   %ebx,%ebx
40682e:	74 60                	je     0x406890
406830:	55                   	push   %ebp
406831:	8d 2c 19             	lea    (%ecx,%ebx,1),%ebp
406834:	8b ce                	mov    %esi,%ecx
406836:	6a 00                	push   $0x0
406838:	55                   	push   %ebp
406839:	e8 40 f6 ff ff       	call   0x405e7e
40683e:	84 c0                	test   %al,%al
406840:	74 4d                	je     0x40688f
406842:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
406846:	72 06                	jb     0x40684e
406848:	8b 0e                	mov    (%esi),%ecx
40684a:	8b c1                	mov    %ecx,%eax
40684c:	eb 04                	jmp    0x406852
40684e:	8b ce                	mov    %esi,%ecx
406850:	8b c6                	mov    %esi,%eax
406852:	83 7e 10 00          	cmpl   $0x0,0x10(%esi)
406856:	74 0f                	je     0x406867
406858:	ff 76 10             	push   0x10(%esi)
40685b:	03 c3                	add    %ebx,%eax
40685d:	51                   	push   %ecx
40685e:	50                   	push   %eax
40685f:	e8 dc 45 00 00       	call   0x40ae40
406864:	83 c4 0c             	add    $0xc,%esp
406867:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
40686b:	72 04                	jb     0x406871
40686d:	8b 0e                	mov    (%esi),%ecx
40686f:	eb 02                	jmp    0x406873
406871:	8b ce                	mov    %esi,%ecx
406873:	53                   	push   %ebx
406874:	8b d7                	mov    %edi,%edx
406876:	e8 3d d2 ff ff       	call   0x403ab8
40687b:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
40687f:	59                   	pop    %ecx
406880:	89 6e 10             	mov    %ebp,0x10(%esi)
406883:	72 04                	jb     0x406889
406885:	8b 06                	mov    (%esi),%eax
406887:	eb 02                	jmp    0x40688b
406889:	8b c6                	mov    %esi,%eax
40688b:	c6 04 28 00          	movb   $0x0,(%eax,%ebp,1)
40688f:	5d                   	pop    %ebp
406890:	8b c6                	mov    %esi,%eax
406892:	5b                   	pop    %ebx
406893:	5f                   	pop    %edi
406894:	5e                   	pop    %esi
406895:	c2 0c 00             	ret    $0xc
406898:	e8 66 ba ff ff       	call   0x402303
40689d:	cc                   	int3
40689e:	53                   	push   %ebx
40689f:	8b 5c 24 0c          	mov    0xc(%esp),%ebx
4068a3:	55                   	push   %ebp
4068a4:	8b 6c 24 14          	mov    0x14(%esp),%ebp
4068a8:	56                   	push   %esi
4068a9:	8b 43 10             	mov    0x10(%ebx),%eax
4068ac:	8b f1                	mov    %ecx,%esi
4068ae:	8b 4e 10             	mov    0x10(%esi),%ecx
4068b1:	3b c5                	cmp    %ebp,%eax
4068b3:	0f 82 c7 00 00 00    	jb     0x406980
4068b9:	2b c5                	sub    %ebp,%eax
4068bb:	57                   	push   %edi
4068bc:	8b 7c 24 20          	mov    0x20(%esp),%edi
4068c0:	3b c7                	cmp    %edi,%eax
4068c2:	0f 42 f8             	cmovb  %eax,%edi
4068c5:	8b c1                	mov    %ecx,%eax
4068c7:	f7 d0                	not    %eax
4068c9:	3b c7                	cmp    %edi,%eax
4068cb:	0f 86 b4 00 00 00    	jbe    0x406985
4068d1:	85 ff                	test   %edi,%edi
4068d3:	0f 84 9e 00 00 00    	je     0x406977
4068d9:	8d 04 39             	lea    (%ecx,%edi,1),%eax
4068dc:	8b ce                	mov    %esi,%ecx
4068de:	6a 00                	push   $0x0
4068e0:	50                   	push   %eax
4068e1:	89 44 24 20          	mov    %eax,0x20(%esp)
4068e5:	e8 94 f5 ff ff       	call   0x405e7e
4068ea:	84 c0                	test   %al,%al
4068ec:	0f 84 85 00 00 00    	je     0x406977
4068f2:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
4068f6:	72 06                	jb     0x4068fe
4068f8:	8b 0e                	mov    (%esi),%ecx
4068fa:	8b c1                	mov    %ecx,%eax
4068fc:	eb 04                	jmp    0x406902
4068fe:	8b ce                	mov    %esi,%ecx
406900:	8b c6                	mov    %esi,%eax
406902:	83 7e 10 00          	cmpl   $0x0,0x10(%esi)
406906:	74 0f                	je     0x406917
406908:	ff 76 10             	push   0x10(%esi)
40690b:	03 c7                	add    %edi,%eax
40690d:	51                   	push   %ecx
40690e:	50                   	push   %eax
40690f:	e8 2c 45 00 00       	call   0x40ae40
406914:	83 c4 0c             	add    $0xc,%esp
406917:	3b f3                	cmp    %ebx,%esi
406919:	75 27                	jne    0x406942
40691b:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
40691f:	72 06                	jb     0x406927
406921:	8b 16                	mov    (%esi),%edx
406923:	8b ca                	mov    %edx,%ecx
406925:	eb 04                	jmp    0x40692b
406927:	8b d6                	mov    %esi,%edx
406929:	8b ce                	mov    %esi,%ecx
40692b:	8d 04 2f             	lea    (%edi,%ebp,1),%eax
40692e:	85 ed                	test   %ebp,%ebp
406930:	57                   	push   %edi
406931:	0f 45 e8             	cmovne %eax,%ebp
406934:	03 ea                	add    %edx,%ebp
406936:	55                   	push   %ebp
406937:	51                   	push   %ecx
406938:	e8 03 45 00 00       	call   0x40ae40
40693d:	83 c4 0c             	add    $0xc,%esp
406940:	eb 1e                	jmp    0x406960
406942:	83 7b 14 10          	cmpl   $0x10,0x14(%ebx)
406946:	72 02                	jb     0x40694a
406948:	8b 1b                	mov    (%ebx),%ebx
40694a:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
40694e:	72 04                	jb     0x406954
406950:	8b 0e                	mov    (%esi),%ecx
406952:	eb 02                	jmp    0x406956
406954:	8b ce                	mov    %esi,%ecx
406956:	57                   	push   %edi
406957:	8d 14 2b             	lea    (%ebx,%ebp,1),%edx
40695a:	e8 59 d1 ff ff       	call   0x403ab8
40695f:	59                   	pop    %ecx
406960:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
406964:	8b 4c 24 18          	mov    0x18(%esp),%ecx
406968:	89 4e 10             	mov    %ecx,0x10(%esi)
40696b:	72 04                	jb     0x406971
40696d:	8b 06                	mov    (%esi),%eax
40696f:	eb 02                	jmp    0x406973
406971:	8b c6                	mov    %esi,%eax
406973:	c6 04 08 00          	movb   $0x0,(%eax,%ecx,1)
406977:	5f                   	pop    %edi
406978:	8b c6                	mov    %esi,%eax
40697a:	5e                   	pop    %esi
40697b:	5d                   	pop    %ebp
40697c:	5b                   	pop    %ebx
40697d:	c2 10 00             	ret    $0x10
406980:	e8 4e b8 ff ff       	call   0x4021d3
406985:	e8 79 b9 ff ff       	call   0x402303
40698a:	cc                   	int3
40698b:	2b 49 fc             	sub    -0x4(%ecx),%ecx
40698e:	e9 f0 f2 ff ff       	jmp    0x405c83
406993:	2b 49 fc             	sub    -0x4(%ecx),%ecx
406996:	e9 3b f3 ff ff       	jmp    0x405cd6
40699b:	cc                   	int3
40699c:	cc                   	int3
40699d:	cc                   	int3
40699e:	cc                   	int3
40699f:	cc                   	int3
4069a0:	ff 15 08 10 43 00    	call   *0x431008
4069a6:	8b 0d 20 12 43 00    	mov    0x431220,%ecx
4069ac:	89 01                	mov    %eax,(%ecx)
4069ae:	b8 01 00 00 00       	mov    $0x1,%eax
4069b3:	c2 0c 00             	ret    $0xc
4069b6:	cc                   	int3
4069b7:	cc                   	int3
4069b8:	cc                   	int3
4069b9:	cc                   	int3
4069ba:	cc                   	int3
4069bb:	cc                   	int3
4069bc:	cc                   	int3
4069bd:	cc                   	int3
4069be:	cc                   	int3
4069bf:	cc                   	int3
4069c0:	55                   	push   %ebp
4069c1:	8b ec                	mov    %esp,%ebp
4069c3:	e8 68 00 00 00       	call   0x406a30
4069c8:	8b d0                	mov    %eax,%edx
4069ca:	a1 24 12 43 00       	mov    0x431224,%eax
4069cf:	8b 08                	mov    (%eax),%ecx
4069d1:	8b 01                	mov    (%ecx),%eax
4069d3:	85 d2                	test   %edx,%edx
4069d5:	75 08                	jne    0x4069df
4069d7:	ff 75 08             	push   0x8(%ebp)
4069da:	ff 50 0c             	call   *0xc(%eax)
4069dd:	5d                   	pop    %ebp
4069de:	c3                   	ret
4069df:	6a 00                	push   $0x0
4069e1:	6a 01                	push   $0x1
4069e3:	6a 00                	push   $0x0
4069e5:	52                   	push   %edx
4069e6:	ff 75 08             	push   0x8(%ebp)
4069e9:	ff 50 08             	call   *0x8(%eax)
4069ec:	5d                   	pop    %ebp
4069ed:	c3                   	ret
4069ee:	cc                   	int3
4069ef:	cc                   	int3
4069f0:	55                   	push   %ebp
4069f1:	8b ec                	mov    %esp,%ebp
4069f3:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
4069f9:	6a ff                	push   $0xffffffff
4069fb:	68 10 00 43 00       	push   $0x430010
406a00:	50                   	push   %eax
406a01:	64 89 25 00 00 00 00 	mov    %esp,%fs:0x0
406a08:	a1 24 12 43 00       	mov    0x431224,%eax
406a0d:	6a 01                	push   $0x1
406a0f:	ff 75 08             	push   0x8(%ebp)
406a12:	8b 08                	mov    (%eax),%ecx
406a14:	8b 01                	mov    (%ecx),%eax
406a16:	ff 50 1c             	call   *0x1c(%eax)
406a19:	8b 4d f4             	mov    -0xc(%ebp),%ecx
406a1c:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
406a23:	8b e5                	mov    %ebp,%esp
406a25:	5d                   	pop    %ebp
406a26:	c3                   	ret
406a27:	cc                   	int3
406a28:	cc                   	int3
406a29:	cc                   	int3
406a2a:	cc                   	int3
406a2b:	cc                   	int3
406a2c:	cc                   	int3
406a2d:	cc                   	int3
406a2e:	cc                   	int3
406a2f:	cc                   	int3
406a30:	55                   	push   %ebp
406a31:	8b ec                	mov    %esp,%ebp
406a33:	6a ff                	push   $0xffffffff
406a35:	68 31 00 43 00       	push   $0x430031
406a3a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
406a40:	50                   	push   %eax
406a41:	64 89 25 00 00 00 00 	mov    %esp,%fs:0x0
406a48:	51                   	push   %ecx
406a49:	80 3d e5 de 43 00 00 	cmpb   $0x0,0x43dee5
406a50:	75 10                	jne    0x406a62
406a52:	33 c0                	xor    %eax,%eax
406a54:	8b 4d f4             	mov    -0xc(%ebp),%ecx
406a57:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
406a5e:	8b e5                	mov    %ebp,%esp
406a60:	5d                   	pop    %ebp
406a61:	c3                   	ret
406a62:	64 a1 2c 00 00 00    	mov    %fs:0x2c,%eax
406a68:	8b 0d 78 f2 43 00    	mov    0x43f278,%ecx
406a6e:	8b 0c 88             	mov    (%eax,%ecx,4),%ecx
406a71:	a1 ec de 43 00       	mov    0x43deec,%eax
406a76:	3b 81 04 00 00 00    	cmp    0x4(%ecx),%eax
406a7c:	7f 13                	jg     0x406a91
406a7e:	a1 e8 de 43 00       	mov    0x43dee8,%eax
406a83:	8b 4d f4             	mov    -0xc(%ebp),%ecx
406a86:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
406a8d:	8b e5                	mov    %ebp,%esp
406a8f:	5d                   	pop    %ebp
406a90:	c3                   	ret
406a91:	68 ec de 43 00       	push   $0x43deec
406a96:	e8 3a 2f 00 00       	call   0x4099d5
406a9b:	83 c4 04             	add    $0x4,%esp
406a9e:	83 3d ec de 43 00 ff 	cmpl   $0xffffffff,0x43deec
406aa5:	75 d7                	jne    0x406a7e
406aa7:	56                   	push   %esi
406aa8:	a1 24 12 43 00       	mov    0x431224,%eax
406aad:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
406ab4:	8b 08                	mov    (%eax),%ecx
406ab6:	8b 01                	mov    (%ecx),%eax
406ab8:	8b 40 74             	mov    0x74(%eax),%eax
406abb:	ff d0                	call   *%eax
406abd:	84 c0                	test   %al,%al
406abf:	74 43                	je     0x406b04
406ac1:	8d 45 f0             	lea    -0x10(%ebp),%eax
406ac4:	c7 45 f0 00 00 00 00 	movl   $0x0,-0x10(%ebp)
406acb:	50                   	push   %eax
406acc:	68 e5 de 43 00       	push   $0x43dee5
406ad1:	6a 06                	push   $0x6
406ad3:	ff 15 10 10 43 00    	call   *0x431010
406ad9:	85 c0                	test   %eax,%eax
406adb:	74 27                	je     0x406b04
406add:	68 04 01 00 00       	push   $0x104
406ae2:	6a 00                	push   $0x0
406ae4:	ff 15 04 10 43 00    	call   *0x431004
406aea:	50                   	push   %eax
406aeb:	ff 15 00 10 43 00    	call   *0x431000
406af1:	68 04 01 00 00       	push   $0x104
406af6:	8b f0                	mov    %eax,%esi
406af8:	56                   	push   %esi
406af9:	ff 75 f0             	push   -0x10(%ebp)
406afc:	ff 15 0c 10 43 00    	call   *0x43100c
406b02:	eb 04                	jmp    0x406b08
406b04:	33 f6                	xor    %esi,%esi
406b06:	eb 00                	jmp    0x406b08
406b08:	68 ec de 43 00       	push   $0x43deec
406b0d:	89 35 e8 de 43 00    	mov    %esi,0x43dee8
406b13:	e8 6c 2e 00 00       	call   0x409984
406b18:	83 c4 04             	add    $0x4,%esp
406b1b:	5e                   	pop    %esi
406b1c:	e9 5d ff ff ff       	jmp    0x406a7e
406b21:	cc                   	int3
406b22:	cc                   	int3
406b23:	cc                   	int3
406b24:	cc                   	int3
406b25:	cc                   	int3
406b26:	cc                   	int3
406b27:	cc                   	int3
406b28:	cc                   	int3
406b29:	cc                   	int3
406b2a:	cc                   	int3
406b2b:	cc                   	int3
406b2c:	cc                   	int3
406b2d:	cc                   	int3
406b2e:	cc                   	int3
406b2f:	cc                   	int3
406b30:	55                   	push   %ebp
406b31:	8b ec                	mov    %esp,%ebp
406b33:	68 24 13 43 00       	push   $0x431324
406b38:	6a 01                	push   $0x1
406b3a:	e8 31 00 00 00       	call   0x406b70
406b3f:	83 c4 08             	add    $0x8,%esp
406b42:	5d                   	pop    %ebp
406b43:	c3                   	ret
406b44:	cc                   	int3
406b45:	cc                   	int3
406b46:	cc                   	int3
406b47:	cc                   	int3
406b48:	cc                   	int3
406b49:	cc                   	int3
406b4a:	cc                   	int3
406b4b:	cc                   	int3
406b4c:	cc                   	int3
406b4d:	cc                   	int3
406b4e:	cc                   	int3
406b4f:	cc                   	int3
406b50:	55                   	push   %ebp
406b51:	8b ec                	mov    %esp,%ebp
406b53:	68 18 13 43 00       	push   $0x431318
406b58:	6a 00                	push   $0x0
406b5a:	e8 11 00 00 00       	call   0x406b70
406b5f:	83 c4 08             	add    $0x8,%esp
406b62:	5d                   	pop    %ebp
406b63:	c3                   	ret
406b64:	cc                   	int3
406b65:	cc                   	int3
406b66:	cc                   	int3
406b67:	cc                   	int3
406b68:	cc                   	int3
406b69:	cc                   	int3
406b6a:	cc                   	int3
406b6b:	cc                   	int3
406b6c:	cc                   	int3
406b6d:	cc                   	int3
406b6e:	cc                   	int3
406b6f:	cc                   	int3