468856:	74 76                	je     0x4688ce
468858:	85 c0                	test   %eax,%eax
46885a:	7e 05                	jle    0x468861
46885c:	83 f8 64             	cmp    $0x64,%eax
46885f:	7e 07                	jle    0x468868
468861:	6a 0a                	push   $0xa
468863:	58                   	pop    %eax
468864:	89 44 24 1c          	mov    %eax,0x1c(%esp)
468868:	8b 54 24 20          	mov    0x20(%esp),%edx
46886c:	8b 4c 24 24          	mov    0x24(%esp),%ecx
468870:	89 54 24 18          	mov    %edx,0x18(%esp)
468874:	89 4c 24 14          	mov    %ecx,0x14(%esp)
468878:	39 54 24 10          	cmp    %edx,0x10(%esp)
46887c:	75 0c                	jne    0x46888a
46887e:	39 4c 24 0c          	cmp    %ecx,0xc(%esp)
468882:	75 06                	jne    0x46888a
468884:	57                   	push   %edi
468885:	53                   	push   %ebx
468886:	51                   	push   %ecx
468887:	52                   	push   %edx
468888:	eb 4e                	jmp    0x4688d8
46888a:	8b 54 24 0c          	mov    0xc(%esp),%edx
46888e:	8d 4c 24 14          	lea    0x14(%esp),%ecx
468892:	51                   	push   %ecx
468893:	8d 4c 24 1c          	lea    0x1c(%esp),%ecx
468897:	51                   	push   %ecx
468898:	8b 4c 24 18          	mov    0x18(%esp),%ecx
46889c:	6a 01                	push   $0x1
46889e:	50                   	push   %eax
46889f:	e8 e4 ef fd ff       	call   0x447888
4688a4:	83 c4 10             	add    $0x10,%esp
4688a7:	84 c0                	test   %al,%al
4688a9:	74 38                	je     0x4688e3
4688ab:	8b 8e f8 01 00 00    	mov    0x1f8(%esi),%ecx
4688b1:	57                   	push   %edi
4688b2:	53                   	push   %ebx
4688b3:	ff 74 24 1c          	push   0x1c(%esp)
4688b7:	ff 74 24 24          	push   0x24(%esp)
4688bb:	e8 59 4d fd ff       	call   0x43d619
4688c0:	6a 32                	push   $0x32
4688c2:	59                   	pop    %ecx
4688c3:	e8 90 f1 fd ff       	call   0x447a58
4688c8:	8b 44 24 1c          	mov    0x1c(%esp),%eax
4688cc:	eb bc                	jmp    0x46888a
4688ce:	57                   	push   %edi
4688cf:	53                   	push   %ebx
4688d0:	ff 74 24 14          	push   0x14(%esp)
4688d4:	ff 74 24 1c          	push   0x1c(%esp)
4688d8:	8b 8e f8 01 00 00    	mov    0x1f8(%esi),%ecx
4688de:	e8 36 4d fd ff       	call   0x43d619
4688e3:	8b 86 f8 01 00 00    	mov    0x1f8(%esi),%eax
4688e9:	8b 75 0c             	mov    0xc(%ebp),%esi
4688ec:	8b 38                	mov    (%eax),%edi
4688ee:	8b ce                	mov    %esi,%ecx
4688f0:	e8 2b a3 fa ff       	call   0x412c20
4688f5:	c7 46 0c 07 00 00 00 	movl   $0x7,0xc(%esi)
4688fc:	89 3e                	mov    %edi,(%esi)
4688fe:	5f                   	pop    %edi
4688ff:	5e                   	pop    %esi
468900:	33 c0                	xor    %eax,%eax
468902:	5b                   	pop    %ebx
468903:	8b e5                	mov    %ebp,%esp
468905:	5d                   	pop    %ebp
468906:	c2 08 00             	ret    $0x8
468909:	55                   	push   %ebp
46890a:	8b ec                	mov    %esp,%ebp
46890c:	53                   	push   %ebx
46890d:	56                   	push   %esi
46890e:	57                   	push   %edi
46890f:	8b 7d 08             	mov    0x8(%ebp),%edi
468912:	57                   	push   %edi
468913:	8b f1                	mov    %ecx,%esi
468915:	e8 3a a1 f9 ff       	call   0x402a54
46891a:	33 db                	xor    %ebx,%ebx
46891c:	43                   	inc    %ebx
46891d:	53                   	push   %ebx
46891e:	8b ce                	mov    %esi,%ecx
468920:	e8 54 a3 f9 ff       	call   0x402c79
468925:	85 c0                	test   %eax,%eax
468927:	7f 27                	jg     0x468950
468929:	33 ff                	xor    %edi,%edi
46892b:	85 c0                	test   %eax,%eax
46892d:	79 10                	jns    0x46893f
46892f:	f7 d8                	neg    %eax
468931:	57                   	push   %edi
468932:	50                   	push   %eax
468933:	8b 06                	mov    (%esi),%eax
468935:	8b 48 04             	mov    0x4(%eax),%ecx
468938:	03 ce                	add    %esi,%ecx
46893a:	e8 0d 46 fe ff       	call   0x44cf4c
46893f:	8b 75 0c             	mov    0xc(%ebp),%esi
468942:	8b ce                	mov    %esi,%ecx
468944:	e8 d7 a2 fa ff       	call   0x412c20
468949:	89 5e 0c             	mov    %ebx,0xc(%esi)
46894c:	89 3e                	mov    %edi,(%esi)
46894e:	eb 4f                	jmp    0x46899f
468950:	8b 86 f8 01 00 00    	mov    0x1f8(%esi),%eax
468956:	ff 30                	push   (%eax)
468958:	e8 de 86 f9 ff       	call   0x40103b
46895d:	84 c0                	test   %al,%al
46895f:	74 12                	je     0x468973
468961:	8b 75 0c             	mov    0xc(%ebp),%esi
468964:	8b ce                	mov    %esi,%ecx
468966:	e8 b5 a2 fa ff       	call   0x412c20
46896b:	83 26 00             	andl   $0x0,(%esi)
46896e:	89 5e 0c             	mov    %ebx,0xc(%esi)
468971:	eb 2c                	jmp    0x46899f
468973:	8b 86 f8 01 00 00    	mov    0x1f8(%esi),%eax
468979:	8b 30                	mov    (%eax),%esi
46897b:	8b 47 04             	mov    0x4(%edi),%eax
46897e:	8b 48 08             	mov    0x8(%eax),%ecx
468981:	e8 00 49 fa ff       	call   0x40d286
468986:	33 ff                	xor    %edi,%edi
468988:	6a 13                	push   $0x13
46898a:	57                   	push   %edi
46898b:	57                   	push   %edi
46898c:	57                   	push   %edi
46898d:	57                   	push   %edi
46898e:	3b c3                	cmp    %ebx,%eax
468990:	75 04                	jne    0x468996
468992:	6a ff                	push   $0xffffffff
468994:	eb 02                	jmp    0x468998
468996:	6a fe                	push   $0xfffffffe
468998:	56                   	push   %esi
468999:	ff 15 b4 d4 48 00    	call   *0x48d4b4
46899f:	5f                   	pop    %edi
4689a0:	5e                   	pop    %esi
4689a1:	33 c0                	xor    %eax,%eax
4689a3:	5b                   	pop    %ebx
4689a4:	5d                   	pop    %ebp
4689a5:	c2 08 00             	ret    $0x8
4689a8:	55                   	push   %ebp
4689a9:	8b ec                	mov    %esp,%ebp
4689ab:	53                   	push   %ebx
4689ac:	56                   	push   %esi
4689ad:	57                   	push   %edi
4689ae:	8b 7d 08             	mov    0x8(%ebp),%edi
4689b1:	57                   	push   %edi
4689b2:	8b f1                	mov    %ecx,%esi
4689b4:	e8 9b a0 f9 ff       	call   0x402a54
4689b9:	33 db                	xor    %ebx,%ebx
4689bb:	43                   	inc    %ebx
4689bc:	53                   	push   %ebx
4689bd:	8b ce                	mov    %esi,%ecx
4689bf:	e8 b5 a2 f9 ff       	call   0x402c79
4689c4:	85 c0                	test   %eax,%eax
4689c6:	7f 25                	jg     0x4689ed
4689c8:	79 11                	jns    0x4689db
4689ca:	f7 d8                	neg    %eax
4689cc:	6a 00                	push   $0x0
4689ce:	50                   	push   %eax
4689cf:	8b 06                	mov    (%esi),%eax
4689d1:	8b 48 04             	mov    0x4(%eax),%ecx
4689d4:	03 ce                	add    %esi,%ecx
4689d6:	e8 71 45 fe ff       	call   0x44cf4c
4689db:	8b 75 0c             	mov    0xc(%ebp),%esi
4689de:	8b ce                	mov    %esi,%ecx
4689e0:	e8 3b a2 fa ff       	call   0x412c20
4689e5:	83 26 00             	andl   $0x0,(%esi)
4689e8:	89 5e 0c             	mov    %ebx,0xc(%esi)
4689eb:	eb 41                	jmp    0x468a2e
4689ed:	8b 47 04             	mov    0x4(%edi),%eax
4689f0:	8b 48 08             	mov    0x8(%eax),%ecx
4689f3:	e8 8e 48 fa ff       	call   0x40d286
4689f8:	83 f8 40             	cmp    $0x40,%eax
4689fb:	75 03                	jne    0x468a00
4689fd:	53                   	push   %ebx
4689fe:	eb 07                	jmp    0x468a07
468a00:	83 f8 41             	cmp    $0x41,%eax
468a03:	75 0f                	jne    0x468a14
468a05:	6a 00                	push   $0x0
468a07:	8b 8e f8 01 00 00    	mov    0x1f8(%esi),%ecx
468a0d:	e8 79 49 fd ff       	call   0x43d38b
468a12:	eb 1a                	jmp    0x468a2e
468a14:	50                   	push   %eax
468a15:	8b 86 f8 01 00 00    	mov    0x1f8(%esi),%eax
468a1b:	ff 30                	push   (%eax)
468a1d:	ff 15 04 d7 48 00    	call   *0x48d704
468a23:	8b 8e 14 03 00 00    	mov    0x314(%esi),%ecx
468a29:	e8 2a f0 fd ff       	call   0x447a58
468a2e:	5f                   	pop    %edi
468a2f:	5e                   	pop    %esi
468a30:	33 c0                	xor    %eax,%eax
468a32:	5b                   	pop    %ebx
468a33:	5d                   	pop    %ebp
468a34:	c2 08 00             	ret    $0x8
468a37:	55                   	push   %ebp
468a38:	8b ec                	mov    %esp,%ebp
468a3a:	53                   	push   %ebx
468a3b:	56                   	push   %esi
468a3c:	8b 75 08             	mov    0x8(%ebp),%esi
468a3f:	57                   	push   %edi
468a40:	8b 46 04             	mov    0x4(%esi),%eax
468a43:	8b f9                	mov    %ecx,%edi
468a45:	8b 48 08             	mov    0x8(%eax),%ecx
468a48:	e8 39 48 fa ff       	call   0x40d286
468a4d:	8b 46 04             	mov    0x4(%esi),%eax
468a50:	8b 48 08             	mov    0x8(%eax),%ecx
468a53:	e8 2e 48 fa ff       	call   0x40d286
468a58:	8a d8                	mov    %al,%bl
468a5a:	56                   	push   %esi
468a5b:	8b cf                	mov    %edi,%ecx
468a5d:	88 5d 08             	mov    %bl,0x8(%ebp)
468a60:	e8 ef 9f f9 ff       	call   0x402a54
468a65:	6a 01                	push   $0x1
468a67:	8b cf                	mov    %edi,%ecx
468a69:	e8 0b a2 f9 ff       	call   0x402c79
468a6e:	85 c0                	test   %eax,%eax
468a70:	7f 29                	jg     0x468a9b
468a72:	79 11                	jns    0x468a85
468a74:	f7 d8                	neg    %eax
468a76:	6a 00                	push   $0x0
468a78:	50                   	push   %eax
468a79:	8b 07                	mov    (%edi),%eax
468a7b:	8b 48 04             	mov    0x4(%eax),%ecx
468a7e:	03 cf                	add    %edi,%ecx
468a80:	e8 c7 44 fe ff       	call   0x44cf4c
468a85:	8b 75 0c             	mov    0xc(%ebp),%esi
468a88:	8b ce                	mov    %esi,%ecx
468a8a:	e8 91 a1 fa ff       	call   0x412c20
468a8f:	83 26 00             	andl   $0x0,(%esi)
468a92:	c7 46 0c 01 00 00 00 	movl   $0x1,0xc(%esi)
468a99:	eb 47                	jmp    0x468ae2
468a9b:	8b 87 f8 01 00 00    	mov    0x1f8(%edi),%eax
468aa1:	6a ec                	push   $0xffffffec
468aa3:	8b 30                	mov    (%eax),%esi
468aa5:	56                   	push   %esi
468aa6:	ff 15 44 d6 48 00    	call   *0x48d644
468aac:	b9 00 00 08 00       	mov    $0x80000,%ecx
468ab1:	80 fb ff             	cmp    $0xff,%bl
468ab4:	72 12                	jb     0x468ac8
468ab6:	85 c1                	test   %eax,%ecx
468ab8:	74 0e                	je     0x468ac8
468aba:	33 c1                	xor    %ecx,%eax
468abc:	50                   	push   %eax
468abd:	6a ec                	push   $0xffffffec
468abf:	56                   	push   %esi
468ac0:	ff 15 f0 d4 48 00    	call   *0x48d4f0
468ac6:	eb 1a                	jmp    0x468ae2
468ac8:	0b c1                	or     %ecx,%eax
468aca:	50                   	push   %eax
468acb:	6a ec                	push   $0xffffffec
468acd:	56                   	push   %esi
468ace:	ff 15 f0 d4 48 00    	call   *0x48d4f0
468ad4:	6a 02                	push   $0x2
468ad6:	ff 75 08             	push   0x8(%ebp)
468ad9:	6a 00                	push   $0x0
468adb:	56                   	push   %esi
468adc:	ff 15 f4 d4 48 00    	call   *0x48d4f4
468ae2:	5f                   	pop    %edi
468ae3:	5e                   	pop    %esi
468ae4:	33 c0                	xor    %eax,%eax
468ae6:	5b                   	pop    %ebx
468ae7:	5d                   	pop    %ebp
468ae8:	c2 08 00             	ret    $0x8
468aeb:	55                   	push   %ebp
468aec:	8b ec                	mov    %esp,%ebp
468aee:	56                   	push   %esi
468aef:	ff 75 08             	push   0x8(%ebp)
468af2:	8b f1                	mov    %ecx,%esi
468af4:	e8 b1 01 00 00       	call   0x468caa
468af9:	51                   	push   %ecx
468afa:	8d 45 08             	lea    0x8(%ebp),%eax
468afd:	50                   	push   %eax
468afe:	8b 06                	mov    (%esi),%eax
468b00:	c7 45 08 01 00 00 00 	movl   $0x1,0x8(%ebp)
468b07:	8b 48 04             	mov    0x4(%eax),%ecx
468b0a:	03 ce                	add    %esi,%ecx
468b0c:	e8 d7 a7 f9 ff       	call   0x4032e8
468b11:	6a 00                	push   $0x0
468b13:	8b ce                	mov    %esi,%ecx
468b15:	c7 86 fc 00 00 00 03 	movl   $0x3,0xfc(%esi)
468b1c:	00 00 00
468b1f:	e8 ac 5d fa ff       	call   0x40e8d0
468b24:	8b 06                	mov    (%esi),%eax
468b26:	8d 4e 04             	lea    0x4(%esi),%ecx
468b29:	8b 40 04             	mov    0x4(%eax),%eax
468b2c:	03 c8                	add    %eax,%ecx
468b2e:	e8 26 a8 f9 ff       	call   0x403359
468b33:	8b 4d 0c             	mov    0xc(%ebp),%ecx
468b36:	50                   	push   %eax
468b37:	e8 72 51 fa ff       	call   0x40dcae
468b3c:	33 c0                	xor    %eax,%eax
468b3e:	5e                   	pop    %esi
468b3f:	5d                   	pop    %ebp
468b40:	c2 08 00             	ret    $0x8
468b43:	55                   	push   %ebp
468b44:	8b ec                	mov    %esp,%ebp
468b46:	56                   	push   %esi
468b47:	ff 75 08             	push   0x8(%ebp)
468b4a:	8b f1                	mov    %ecx,%esi
468b4c:	e8 59 01 00 00       	call   0x468caa
468b51:	51                   	push   %ecx
468b52:	8d 45 08             	lea    0x8(%ebp),%eax
468b55:	50                   	push   %eax
468b56:	8b 06                	mov    (%esi),%eax
468b58:	c7 45 08 01 00 00 00 	movl   $0x1,0x8(%ebp)
468b5f:	8b 48 04             	mov    0x4(%eax),%ecx
468b62:	03 ce                	add    %esi,%ecx
468b64:	e8 7f a7 f9 ff       	call   0x4032e8
468b69:	6a 00                	push   $0x0
468b6b:	8b ce                	mov    %esi,%ecx
468b6d:	c7 86 fc 00 00 00 05 	movl   $0x5,0xfc(%esi)
468b74:	00 00 00
468b77:	e8 54 5d fa ff       	call   0x40e8d0
468b7c:	8b 06                	mov    (%esi),%eax
468b7e:	8d 4e 04             	lea    0x4(%esi),%ecx
468b81:	8b 40 04             	mov    0x4(%eax),%eax
468b84:	03 c8                	add    %eax,%ecx
468b86:	e8 ce a7 f9 ff       	call   0x403359
468b8b:	8b 4d 0c             	mov    0xc(%ebp),%ecx
468b8e:	50                   	push   %eax
468b8f:	e8 1a 51 fa ff       	call   0x40dcae
468b94:	33 c0                	xor    %eax,%eax
468b96:	5e                   	pop    %esi
468b97:	5d                   	pop    %ebp
468b98:	c2 08 00             	ret    $0x8
468b9b:	55                   	push   %ebp
468b9c:	8b ec                	mov    %esp,%ebp
468b9e:	56                   	push   %esi
468b9f:	ff 75 08             	push   0x8(%ebp)
468ba2:	8b f1                	mov    %ecx,%esi
468ba4:	e8 01 01 00 00       	call   0x468caa
468ba9:	51                   	push   %ecx
468baa:	8d 45 08             	lea    0x8(%ebp),%eax
468bad:	50                   	push   %eax
468bae:	8b 06                	mov    (%esi),%eax
468bb0:	c7 45 08 01 00 00 00 	movl   $0x1,0x8(%ebp)
468bb7:	8b 48 04             	mov    0x4(%eax),%ecx
468bba:	03 ce                	add    %esi,%ecx
468bbc:	e8 27 a7 f9 ff       	call   0x4032e8
468bc1:	6a 00                	push   $0x0
468bc3:	8b ce                	mov    %esi,%ecx
468bc5:	c7 86 fc 00 00 00 04 	movl   $0x4,0xfc(%esi)
468bcc:	00 00 00
468bcf:	e8 fc 5c fa ff       	call   0x40e8d0
468bd4:	8b 06                	mov    (%esi),%eax
468bd6:	8d 4e 04             	lea    0x4(%esi),%ecx
468bd9:	8b 40 04             	mov    0x4(%eax),%eax
468bdc:	03 c8                	add    %eax,%ecx
468bde:	e8 76 a7 f9 ff       	call   0x403359
468be3:	8b 4d 0c             	mov    0xc(%ebp),%ecx
468be6:	50                   	push   %eax
468be7:	e8 c2 50 fa ff       	call   0x40dcae
468bec:	33 c0                	xor    %eax,%eax
468bee:	5e                   	pop    %esi
468bef:	5d                   	pop    %ebp
468bf0:	c2 08 00             	ret    $0x8
468bf3:	55                   	push   %ebp
468bf4:	8b ec                	mov    %esp,%ebp