46dae0:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
46dae4:	74 05                	je     0x46daeb
46dae6:	ff 75 f8             	push   -0x8(%ebp)
46dae9:	ff d6                	call   *%esi
46daeb:	ff 15 64 f8 48 00    	call   *0x48f864
46daf1:	8d 4d d8             	lea    -0x28(%ebp),%ecx
46daf4:	e8 6b 7f f9 ff       	call   0x405a64
46daf9:	5f                   	pop    %edi
46dafa:	5e                   	pop    %esi
46dafb:	33 c0                	xor    %eax,%eax
46dafd:	5b                   	pop    %ebx
46dafe:	8b e5                	mov    %ebp,%esp
46db00:	5d                   	pop    %ebp
46db01:	c2 08 00             	ret    $0x8
46db04:	55                   	push   %ebp
46db05:	8b ec                	mov    %esp,%ebp
46db07:	83 e4 f8             	and    $0xfffffff8,%esp
46db0a:	b8 24 06 02 00       	mov    $0x20624,%eax
46db0f:	e8 7c 40 fc ff       	call   0x431b90
46db14:	53                   	push   %ebx
46db15:	8b 5d 08             	mov    0x8(%ebp),%ebx
46db18:	33 c0                	xor    %eax,%eax
46db1a:	56                   	push   %esi
46db1b:	57                   	push   %edi
46db1c:	8b f8                	mov    %eax,%edi
46db1e:	89 44 24 0c          	mov    %eax,0xc(%esp)
46db22:	8b 43 04             	mov    0x4(%ebx),%eax
46db25:	89 4c 24 2c          	mov    %ecx,0x2c(%esp)
46db29:	89 7c 24 10          	mov    %edi,0x10(%esp)
46db2d:	8b 70 04             	mov    0x4(%eax),%esi
46db30:	8b ce                	mov    %esi,%ecx
46db32:	e8 60 be f9 ff       	call   0x409997
46db37:	8b 46 08             	mov    0x8(%esi),%eax
46db3a:	33 d2                	xor    %edx,%edx
46db3c:	42                   	inc    %edx
46db3d:	83 7b 08 03          	cmpl   $0x3,0x8(%ebx)
46db41:	89 54 24 28          	mov    %edx,0x28(%esp)
46db45:	8b 30                	mov    (%eax),%esi
46db47:	72 18                	jb     0x46db61
46db49:	8b 43 04             	mov    0x4(%ebx),%eax
46db4c:	8b 48 08             	mov    0x8(%eax),%ecx
46db4f:	e8 48 c1 f9 ff       	call   0x409c9c
46db54:	33 d2                	xor    %edx,%edx
46db56:	42                   	inc    %edx
46db57:	3b c2                	cmp    %edx,%eax
46db59:	75 06                	jne    0x46db61
46db5b:	8a da                	mov    %dl,%bl
46db5d:	33 c0                	xor    %eax,%eax
46db5f:	eb 04                	jmp    0x46db65
46db61:	33 c0                	xor    %eax,%eax
46db63:	8a d8                	mov    %al,%bl
46db65:	88 5c 24 14          	mov    %bl,0x14(%esp)
46db69:	66 39 06             	cmp    %ax,(%esi)
46db6c:	0f 84 ae 00 00 00    	je     0x46dc20
46db72:	8b 4c 24 28          	mov    0x28(%esp),%ecx
46db76:	0f b7 06             	movzwl (%esi),%eax
46db79:	83 f8 2b             	cmp    $0x2b,%eax
46db7c:	75 07                	jne    0x46db85
46db7e:	83 c6 02             	add    $0x2,%esi
46db81:	8b ca                	mov    %edx,%ecx
46db83:	eb 0c                	jmp    0x46db91
46db85:	83 f8 2d             	cmp    $0x2d,%eax
46db88:	75 07                	jne    0x46db91
46db8a:	83 c6 02             	add    $0x2,%esi
46db8d:	33 c0                	xor    %eax,%eax
46db8f:	8b c8                	mov    %eax,%ecx
46db91:	0f b7 06             	movzwl (%esi),%eax
46db94:	83 f8 52             	cmp    $0x52,%eax
46db97:	74 67                	je     0x46dc00
46db99:	83 f8 72             	cmp    $0x72,%eax
46db9c:	74 62                	je     0x46dc00
46db9e:	83 f8 41             	cmp    $0x41,%eax
46dba1:	74 59                	je     0x46dbfc
46dba3:	83 f8 61             	cmp    $0x61,%eax
46dba6:	74 54                	je     0x46dbfc
46dba8:	83 f8 53             	cmp    $0x53,%eax
46dbab:	74 4b                	je     0x46dbf8
46dbad:	83 f8 73             	cmp    $0x73,%eax
46dbb0:	74 46                	je     0x46dbf8
46dbb2:	83 f8 48             	cmp    $0x48,%eax
46dbb5:	74 3c                	je     0x46dbf3
46dbb7:	83 f8 68             	cmp    $0x68,%eax
46dbba:	74 37                	je     0x46dbf3
46dbbc:	83 f8 4e             	cmp    $0x4e,%eax
46dbbf:	74 2b                	je     0x46dbec
46dbc1:	83 f8 6e             	cmp    $0x6e,%eax
46dbc4:	74 26                	je     0x46dbec
46dbc6:	83 f8 4f             	cmp    $0x4f,%eax
46dbc9:	74 1a                	je     0x46dbe5
46dbcb:	83 f8 6f             	cmp    $0x6f,%eax
46dbce:	74 15                	je     0x46dbe5
46dbd0:	83 f8 54             	cmp    $0x54,%eax
46dbd3:	74 09                	je     0x46dbde
46dbd5:	83 f8 74             	cmp    $0x74,%eax
46dbd8:	0f 85 4d 01 00 00    	jne    0x46dd2b
46dbde:	b8 00 01 00 00       	mov    $0x100,%eax
46dbe3:	eb 1d                	jmp    0x46dc02
46dbe5:	b8 00 10 00 00       	mov    $0x1000,%eax
46dbea:	eb 16                	jmp    0x46dc02
46dbec:	b8 80 00 00 00       	mov    $0x80,%eax
46dbf1:	eb 0f                	jmp    0x46dc02
46dbf3:	6a 02                	push   $0x2
46dbf5:	58                   	pop    %eax
46dbf6:	eb 0a                	jmp    0x46dc02
46dbf8:	6a 04                	push   $0x4
46dbfa:	eb f9                	jmp    0x46dbf5
46dbfc:	6a 20                	push   $0x20
46dbfe:	eb f5                	jmp    0x46dbf5
46dc00:	8b c2                	mov    %edx,%eax
46dc02:	3b ca                	cmp    %edx,%ecx
46dc04:	75 08                	jne    0x46dc0e
46dc06:	0b f8                	or     %eax,%edi
46dc08:	89 7c 24 10          	mov    %edi,0x10(%esp)
46dc0c:	eb 04                	jmp    0x46dc12
46dc0e:	09 44 24 0c          	or     %eax,0xc(%esp)
46dc12:	83 c6 02             	add    $0x2,%esi
46dc15:	33 c0                	xor    %eax,%eax
46dc17:	66 39 06             	cmp    %ax,(%esi)
46dc1a:	0f 85 56 ff ff ff    	jne    0x46db76
46dc20:	8b 45 08             	mov    0x8(%ebp),%eax
46dc23:	8b 40 04             	mov    0x4(%eax),%eax
46dc26:	8b 30                	mov    (%eax),%esi
46dc28:	8b ce                	mov    %esi,%ecx
46dc2a:	e8 68 bd f9 ff       	call   0x409997
46dc2f:	8b 4e 08             	mov    0x8(%esi),%ecx
46dc32:	8d 54 24 18          	lea    0x18(%esp),%edx
46dc36:	8b 01                	mov    (%ecx),%eax
46dc38:	89 44 24 18          	mov    %eax,0x18(%esp)
46dc3c:	8b 41 04             	mov    0x4(%ecx),%eax
46dc3f:	89 44 24 1c          	mov    %eax,0x1c(%esp)
46dc43:	8b 41 08             	mov    0x8(%ecx),%eax
46dc46:	89 44 24 20          	mov    %eax,0x20(%esp)
46dc4a:	8b 41 0c             	mov    0xc(%ecx),%eax
46dc4d:	8b ca                	mov    %edx,%ecx
46dc4f:	89 44 24 24          	mov    %eax,0x24(%esp)
46dc53:	ff 00                	incl   (%eax)
46dc55:	e8 54 6c f9 ff       	call   0x4048ae
46dc5a:	8d 84 24 30 04 00 00 	lea    0x430(%esp),%eax
46dc61:	50                   	push   %eax
46dc62:	8d 44 24 34          	lea    0x34(%esp),%eax
46dc66:	50                   	push   %eax
46dc67:	8d 84 24 38 02 00 00 	lea    0x238(%esp),%eax
46dc6e:	50                   	push   %eax
46dc6f:	8d 84 24 3c 06 01 00 	lea    0x1063c(%esp),%eax
46dc76:	50                   	push   %eax
46dc77:	ff 74 24 28          	push   0x28(%esp)
46dc7b:	e8 ae 66 fb ff       	call   0x42432e
46dc80:	83 c4 14             	add    $0x14,%esp
46dc83:	8d 84 24 30 02 00 00 	lea    0x230(%esp),%eax
46dc8a:	50                   	push   %eax
46dc8b:	8d 84 24 34 06 01 00 	lea    0x10634(%esp),%eax
46dc92:	50                   	push   %eax
46dc93:	e8 35 53 fb ff       	call   0x422fcd
46dc98:	8d 84 24 38 04 00 00 	lea    0x438(%esp),%eax
46dc9f:	50                   	push   %eax
46dca0:	8d 44 24 3c          	lea    0x3c(%esp),%eax
46dca4:	50                   	push   %eax
46dca5:	e8 23 53 fb ff       	call   0x422fcd
46dcaa:	83 c4 10             	add    $0x10,%esp
46dcad:	8d 84 24 30 06 00 00 	lea    0x630(%esp),%eax
46dcb4:	50                   	push   %eax
46dcb5:	68 ff 7f 00 00       	push   $0x7fff
46dcba:	ff 15 34 f3 48 00    	call   *0x48f334
46dcc0:	8b 3d 08 f2 48 00    	mov    0x48f208,%edi
46dcc6:	8d 84 24 30 06 01 00 	lea    0x10630(%esp),%eax
46dccd:	50                   	push   %eax
46dcce:	ff d7                	call   *%edi
46dcd0:	85 c0                	test   %eax,%eax
46dcd2:	74 40                	je     0x46dd14
46dcd4:	8d 4c 24 30          	lea    0x30(%esp),%ecx
46dcd8:	e8 f6 6f ff ff       	call   0x464cd3
46dcdd:	84 c0                	test   %al,%al
46dcdf:	74 7f                	je     0x46dd60
46dce1:	8d 44 24 30          	lea    0x30(%esp),%eax
46dce5:	50                   	push   %eax
46dce6:	ff 15 00 f2 48 00    	call   *0x48f200
46dcec:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
46dcf0:	8b 74 24 10          	mov    0x10(%esp),%esi
46dcf4:	f7 d1                	not    %ecx
46dcf6:	0b c6                	or     %esi,%eax
46dcf8:	23 c1                	and    %ecx,%eax
46dcfa:	50                   	push   %eax
46dcfb:	8d 44 24 34          	lea    0x34(%esp),%eax
46dcff:	50                   	push   %eax
46dd00:	ff 15 d0 f2 48 00    	call   *0x48f2d0
46dd06:	85 c0                	test   %eax,%eax
46dd08:	75 38                	jne    0x46dd42
46dd0a:	8d 84 24 30 06 00 00 	lea    0x630(%esp),%eax
46dd11:	50                   	push   %eax
46dd12:	ff d7                	call   *%edi
46dd14:	8b 75 0c             	mov    0xc(%ebp),%esi
46dd17:	8b ce                	mov    %esi,%ecx
46dd19:	e8 02 bd f9 ff       	call   0x409a20
46dd1e:	33 c0                	xor    %eax,%eax
46dd20:	c7 46 0c 01 00 00 00 	movl   $0x1,0xc(%esi)
46dd27:	89 06                	mov    %eax,(%esi)
46dd29:	eb 73                	jmp    0x46dd9e
46dd2b:	8b 75 0c             	mov    0xc(%ebp),%esi
46dd2e:	8b ce                	mov    %esi,%ecx
46dd30:	e8 eb bc f9 ff       	call   0x409a20
46dd35:	33 c0                	xor    %eax,%eax
46dd37:	c7 46 0c 01 00 00 00 	movl   $0x1,0xc(%esi)
46dd3e:	89 06                	mov    %eax,(%esi)
46dd40:	eb 65                	jmp    0x46dda7
46dd42:	84 db                	test   %bl,%bl
46dd44:	74 4e                	je     0x46dd94
46dd46:	8d 44 24 30          	lea    0x30(%esp),%eax
46dd4a:	50                   	push   %eax
46dd4b:	ff d7                	call   *%edi
46dd4d:	8d 44 24 30          	lea    0x30(%esp),%eax
46dd51:	68 98 a5 4b 00       	push   $0x4ba598
46dd56:	50                   	push   %eax
46dd57:	e8 a0 52 fb ff       	call   0x422ffc
46dd5c:	59                   	pop    %ecx
46dd5d:	59                   	pop    %ecx
46dd5e:	eb 04                	jmp    0x46dd64
46dd60:	8b 74 24 10          	mov    0x10(%esp),%esi
46dd64:	ff 74 24 14          	push   0x14(%esp)
46dd68:	8b 4c 24 30          	mov    0x30(%esp),%ecx
46dd6c:	8d 44 24 34          	lea    0x34(%esp),%eax
46dd70:	ff 74 24 10          	push   0x10(%esp)
46dd74:	56                   	push   %esi
46dd75:	50                   	push   %eax
46dd76:	e8 85 14 00 00       	call   0x46f200
46dd7b:	84 c0                	test   %al,%al
46dd7d:	75 15                	jne    0x46dd94
46dd7f:	8b 75 0c             	mov    0xc(%ebp),%esi
46dd82:	8b ce                	mov    %esi,%ecx
46dd84:	e8 97 bc f9 ff       	call   0x409a20
46dd89:	33 c0                	xor    %eax,%eax
46dd8b:	c7 46 0c 01 00 00 00 	movl   $0x1,0xc(%esi)
46dd92:	89 06                	mov    %eax,(%esi)
46dd94:	8d 84 24 30 06 00 00 	lea    0x630(%esp),%eax
46dd9b:	50                   	push   %eax
46dd9c:	ff d7                	call   *%edi
46dd9e:	8d 4c 24 18          	lea    0x18(%esp),%ecx
46dda2:	e8 bd 7c f9 ff       	call   0x405a64
46dda7:	5f                   	pop    %edi
46dda8:	5e                   	pop    %esi
46dda9:	33 c0                	xor    %eax,%eax
46ddab:	5b                   	pop    %ebx
46ddac:	8b e5                	mov    %ebp,%esp
46ddae:	5d                   	pop    %ebp
46ddaf:	c2 08 00             	ret    $0x8
46ddb2:	55                   	push   %ebp
46ddb3:	8b ec                	mov    %esp,%ebp
46ddb5:	8b 45 08             	mov    0x8(%ebp),%eax
46ddb8:	56                   	push   %esi
46ddb9:	6a 00                	push   $0x0
46ddbb:	8b f1                	mov    %ecx,%esi
46ddbd:	8b 40 04             	mov    0x4(%eax),%eax
46ddc0:	ff 30                	push   (%eax)
46ddc2:	8d 45 08             	lea    0x8(%ebp),%eax
46ddc5:	50                   	push   %eax
46ddc6:	e8 14 1a 00 00       	call   0x46f7df
46ddcb:	84 c0                	test   %al,%al
46ddcd:	74 29                	je     0x46ddf8
46ddcf:	8b 8e 94 01 00 00    	mov    0x194(%esi),%ecx
46ddd5:	8b 45 08             	mov    0x8(%ebp),%eax
46ddd8:	8b 04 81             	mov    (%ecx,%eax,4),%eax
46dddb:	8b 00                	mov    (%eax),%eax
46dddd:	8b 70 04             	mov    0x4(%eax),%esi
46dde0:	8b ce                	mov    %esi,%ecx
46dde2:	e8 ae 57 ff ff       	call   0x463595
46dde7:	ff 36                	push   (%esi)
46dde9:	ff 15 dc f1 48 00    	call   *0x48f1dc
46ddef:	48                   	dec    %eax
46ddf0:	f7 d8                	neg    %eax
46ddf2:	1b c0                	sbb    %eax,%eax
46ddf4:	40                   	inc    %eax
46ddf5:	50                   	push   %eax
46ddf6:	eb 07                	jmp    0x46ddff
46ddf8:	c6 45 08 00          	movb   $0x0,0x8(%ebp)
46ddfc:	ff 75 08             	push   0x8(%ebp)
46ddff:	8b 4d 0c             	mov    0xc(%ebp),%ecx
46de02:	e8 5c ba f9 ff       	call   0x409863
46de07:	33 c0                	xor    %eax,%eax
46de09:	5e                   	pop    %esi
46de0a:	5d                   	pop    %ebp
46de0b:	c2 08 00             	ret    $0x8
46de0e:	55                   	push   %ebp
46de0f:	8b ec                	mov    %esp,%ebp
46de11:	56                   	push   %esi
46de12:	8b 75 08             	mov    0x8(%ebp),%esi
46de15:	57                   	push   %edi
46de16:	6a 00                	push   $0x0
46de18:	8b f9                	mov    %ecx,%edi
46de1a:	8b 46 04             	mov    0x4(%esi),%eax
46de1d:	ff 30                	push   (%eax)
46de1f:	8d 45 08             	lea    0x8(%ebp),%eax
46de22:	50                   	push   %eax
46de23:	e8 b7 19 00 00       	call   0x46f7df
46de28:	84 c0                	test   %al,%al
46de2a:	74 42                	je     0x46de6e
46de2c:	8b 46 04             	mov    0x4(%esi),%eax
46de2f:	8b 97 94 01 00 00    	mov    0x194(%edi),%edx
46de35:	53                   	push   %ebx
46de36:	8b 48 08             	mov    0x8(%eax),%ecx
46de39:	8b 70 04             	mov    0x4(%eax),%esi
46de3c:	8b 45 08             	mov    0x8(%ebp),%eax
46de3f:	8b 1c 82             	mov    (%edx,%eax,4),%ebx
46de42:	e8 55 be f9 ff       	call   0x409c9c
46de47:	8b ce                	mov    %esi,%ecx
46de49:	8b f8                	mov    %eax,%edi
46de4b:	e8 f6 be f9 ff       	call   0x409d46
46de50:	8b 0b                	mov    (%ebx),%ecx
46de52:	57                   	push   %edi
46de53:	52                   	push   %edx
46de54:	50                   	push   %eax
46de55:	8b 49 04             	mov    0x4(%ecx),%ecx
46de58:	e8 f1 7d f9 ff       	call   0x405c4e
46de5d:	8b 4d 0c             	mov    0xc(%ebp),%ecx
46de60:	88 45 08             	mov    %al,0x8(%ebp)
46de63:	ff 75 08             	push   0x8(%ebp)
46de66:	e8 f8 b9 f9 ff       	call   0x409863
46de6b:	5b                   	pop    %ebx
46de6c:	eb 0f                	jmp    0x46de7d
46de6e:	8b 4d 0c             	mov    0xc(%ebp),%ecx
46de71:	c6 45 08 00          	movb   $0x0,0x8(%ebp)
46de75:	ff 75 08             	push   0x8(%ebp)
46de78:	e8 e6 b9 f9 ff       	call   0x409863
46de7d:	5f                   	pop    %edi
46de7e:	33 c0                	xor    %eax,%eax
46de80:	5e                   	pop    %esi
46de81:	5d                   	pop    %ebp
46de82:	c2 08 00             	ret    $0x8
46de85:	55                   	push   %ebp
46de86:	8b ec                	mov    %esp,%ebp
46de88:	83 e4 f8             	and    $0xfffffff8,%esp
46de8b:	b8 34 06 02 00       	mov    $0x20634,%eax
46de90:	e8 fb 3c fc ff       	call   0x431b90
46de95:	53                   	push   %ebx
46de96:	56                   	push   %esi
46de97:	57                   	push   %edi
46de98:	8b 7d 08             	mov    0x8(%ebp),%edi
46de9b:	89 4c 24 1c          	mov    %ecx,0x1c(%esp)
46de9f:	8b 47 04             	mov    0x4(%edi),%eax
46dea2:	8b 5f 08             	mov    0x8(%edi),%ebx
46dea5:	8b 70 04             	mov    0x4(%eax),%esi
46dea8:	8b ce                	mov    %esi,%ecx
46deaa:	e8 e8 ba f9 ff       	call   0x409997
46deaf:	8b 46 08             	mov    0x8(%esi),%eax
46deb2:	8b 30                	mov    (%eax),%esi
46deb4:	33 c0                	xor    %eax,%eax
46deb6:	89 44 24 0c          	mov    %eax,0xc(%esp)
46deba:	83 fb 03             	cmp    $0x3,%ebx
46debd:	72 2e                	jb     0x46deed
46debf:	8b 47 04             	mov    0x4(%edi),%eax
46dec2:	8b 48 08             	mov    0x8(%eax),%ecx
46dec5:	e8 d2 bd f9 ff       	call   0x409c9c