41890d:	33 f6                	xor    %esi,%esi
41890f:	51                   	push   %ecx
418910:	8b cb                	mov    %ebx,%ecx
418912:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
418919:	e8 42 38 00 00       	call   0x41c160
41891e:	88 45 d0             	mov    %al,-0x30(%ebp)
418921:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
418928:	84 c0                	test   %al,%al
41892a:	0f 84 55 01 00 00    	je     0x418a85
418930:	8b 03                	mov    (%ebx),%eax
418932:	8b 40 04             	mov    0x4(%eax),%eax
418935:	8b 44 18 30          	mov    0x30(%eax,%ebx,1),%eax
418939:	8b 78 04             	mov    0x4(%eax),%edi
41893c:	89 7d e8             	mov    %edi,-0x18(%ebp)
41893f:	8b 07                	mov    (%edi),%eax
418941:	8b 70 04             	mov    0x4(%eax),%esi
418944:	8b ce                	mov    %esi,%ecx
418946:	ff 15 d4 e2 49 00    	call   *0x49e2d4
41894c:	8b cf                	mov    %edi,%ecx
41894e:	ff d6                	call   *%esi
418950:	8d 45 e4             	lea    -0x1c(%ebp),%eax
418953:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
418957:	50                   	push   %eax
418958:	e8 d3 bb ff ff       	call   0x414530
41895d:	8b 7d e8             	mov    -0x18(%ebp),%edi
418960:	83 c4 04             	add    $0x4,%esp
418963:	89 45 e0             	mov    %eax,-0x20(%ebp)
418966:	85 ff                	test   %edi,%edi
418968:	74 29                	je     0x418993
41896a:	8b 17                	mov    (%edi),%edx
41896c:	8b 72 08             	mov    0x8(%edx),%esi
41896f:	8b ce                	mov    %esi,%ecx
418971:	ff 15 d4 e2 49 00    	call   *0x49e2d4
418977:	8b cf                	mov    %edi,%ecx
418979:	ff d6                	call   *%esi
41897b:	8b f8                	mov    %eax,%edi
41897d:	85 ff                	test   %edi,%edi
41897f:	74 12                	je     0x418993
418981:	8b 0f                	mov    (%edi),%ecx
418983:	6a 01                	push   $0x1
418985:	8b 31                	mov    (%ecx),%esi
418987:	8b ce                	mov    %esi,%ecx
418989:	ff 15 d4 e2 49 00    	call   *0x49e2d4
41898f:	8b cf                	mov    %edi,%ecx
418991:	ff d6                	call   *%esi
418993:	8b 45 dc             	mov    -0x24(%ebp),%eax
418996:	8b c8                	mov    %eax,%ecx
418998:	c7 40 10 00 00 00 00 	movl   $0x0,0x10(%eax)
41899f:	83 78 14 08          	cmpl   $0x8,0x14(%eax)
4189a3:	72 02                	jb     0x4189a7
4189a5:	8b 08                	mov    (%eax),%ecx
4189a7:	33 c0                	xor    %eax,%eax
4189a9:	c6 45 fc 03          	movb   $0x3,-0x4(%ebp)
4189ad:	66 89 01             	mov    %ax,(%ecx)
4189b0:	8b 03                	mov    (%ebx),%eax
4189b2:	8b 40 04             	mov    0x4(%eax),%eax
4189b5:	83 7c 18 24 00       	cmpl   $0x0,0x24(%eax,%ebx,1)
4189ba:	8b 4c 18 20          	mov    0x20(%eax,%ebx,1),%ecx
4189be:	89 4d e8             	mov    %ecx,-0x18(%ebp)
4189c1:	7c 0e                	jl     0x4189d1
4189c3:	7f 04                	jg     0x4189c9
4189c5:	85 c9                	test   %ecx,%ecx
4189c7:	74 08                	je     0x4189d1
4189c9:	81 f9 fe ff ff 7f    	cmp    $0x7ffffffe,%ecx
4189cf:	72 07                	jb     0x4189d8
4189d1:	c7 45 e8 fe ff ff 7f 	movl   $0x7ffffffe,-0x18(%ebp)
4189d8:	8b 7c 18 38          	mov    0x38(%eax,%ebx,1),%edi
4189dc:	8b 47 1c             	mov    0x1c(%edi),%eax
4189df:	8b 08                	mov    (%eax),%ecx
4189e1:	85 c9                	test   %ecx,%ecx
4189e3:	74 0d                	je     0x4189f2
4189e5:	8b 47 2c             	mov    0x2c(%edi),%eax
4189e8:	83 38 00             	cmpl   $0x0,(%eax)
4189eb:	7e 05                	jle    0x4189f2
4189ed:	0f b7 39             	movzwl (%ecx),%edi
4189f0:	eb 16                	jmp    0x418a08
4189f2:	8b 07                	mov    (%edi),%eax
4189f4:	8b 70 18             	mov    0x18(%eax),%esi
4189f7:	8b ce                	mov    %esi,%ecx
4189f9:	ff 15 d4 e2 49 00    	call   *0x49e2d4
4189ff:	8b cf                	mov    %edi,%ecx
418a01:	ff d6                	call   *%esi
418a03:	0f b7 c0             	movzwl %ax,%eax
418a06:	8b f8                	mov    %eax,%edi
418a08:	83 7d e8 00          	cmpl   $0x0,-0x18(%ebp)
418a0c:	b8 ff ff 00 00       	mov    $0xffff,%eax
418a11:	76 48                	jbe    0x418a5b
418a13:	66 3b c7             	cmp    %di,%ax
418a16:	75 07                	jne    0x418a1f
418a18:	be 01 00 00 00       	mov    $0x1,%esi
418a1d:	eb 5f                	jmp    0x418a7e
418a1f:	8b 45 e0             	mov    -0x20(%ebp),%eax
418a22:	57                   	push   %edi
418a23:	6a 48                	push   $0x48
418a25:	8b 00                	mov    (%eax),%eax
418a27:	8b 70 10             	mov    0x10(%eax),%esi
418a2a:	8b ce                	mov    %esi,%ecx
418a2c:	ff 15 d4 e2 49 00    	call   *0x49e2d4
418a32:	8b 4d e0             	mov    -0x20(%ebp),%ecx
418a35:	ff d6                	call   *%esi
418a37:	84 c0                	test   %al,%al
418a39:	75 20                	jne    0x418a5b
418a3b:	8b 4d dc             	mov    -0x24(%ebp),%ecx
418a3e:	57                   	push   %edi
418a3f:	e8 dc 1f 00 00       	call   0x41aa20
418a44:	8b 03                	mov    (%ebx),%eax
418a46:	ff 4d e8             	decl   -0x18(%ebp)
418a49:	c6 45 ef 01          	movb   $0x1,-0x11(%ebp)
418a4d:	8b 48 04             	mov    0x4(%eax),%ecx
418a50:	8b 4c 19 38          	mov    0x38(%ecx,%ebx,1),%ecx
418a54:	e8 27 1f 00 00       	call   0x41a980
418a59:	eb a8                	jmp    0x418a03
418a5b:	33 f6                	xor    %esi,%esi
418a5d:	eb 1f                	jmp    0x418a7e
418a5f:	8b 55 d8             	mov    -0x28(%ebp),%edx
418a62:	6a 01                	push   $0x1
418a64:	6a 04                	push   $0x4
418a66:	8b 02                	mov    (%edx),%eax
418a68:	8b 48 04             	mov    0x4(%eax),%ecx
418a6b:	03 ca                	add    %edx,%ecx
418a6d:	e8 ce 87 ff ff       	call   0x411240
418a72:	b8 78 8a 41 00       	mov    $0x418a78,%eax
418a77:	c3                   	ret
418a78:	8b 5d d8             	mov    -0x28(%ebp),%ebx
418a7b:	8b 75 d4             	mov    -0x2c(%ebp),%esi
418a7e:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
418a85:	80 7d ef 00          	cmpb   $0x0,-0x11(%ebp)
418a89:	8b 03                	mov    (%ebx),%eax
418a8b:	8b 40 04             	mov    0x4(%eax),%eax
418a8e:	c7 44 18 20 00 00 00 	movl   $0x0,0x20(%eax,%ebx,1)
418a95:	00
418a96:	c7 44 18 24 00 00 00 	movl   $0x0,0x24(%eax,%ebx,1)
418a9d:	00
418a9e:	75 03                	jne    0x418aa3
418aa0:	83 ce 02             	or     $0x2,%esi
418aa3:	8b 03                	mov    (%ebx),%eax
418aa5:	6a 00                	push   $0x0
418aa7:	8b 48 04             	mov    0x4(%eax),%ecx
418aaa:	b8 04 00 00 00       	mov    $0x4,%eax
418aaf:	03 cb                	add    %ebx,%ecx
418ab1:	8b 51 0c             	mov    0xc(%ecx),%edx
418ab4:	0b d6                	or     %esi,%edx
418ab6:	33 f6                	xor    %esi,%esi
418ab8:	39 71 38             	cmp    %esi,0x38(%ecx)
418abb:	0f 45 c6             	cmovne %esi,%eax
418abe:	0b c2                	or     %edx,%eax
418ac0:	50                   	push   %eax
418ac1:	e8 aa 30 ff ff       	call   0x40bb70
418ac6:	c7 45 fc 05 00 00 00 	movl   $0x5,-0x4(%ebp)
418acd:	8b 7d cc             	mov    -0x34(%ebp),%edi
418ad0:	8b 07                	mov    (%edi),%eax
418ad2:	8b 40 04             	mov    0x4(%eax),%eax
418ad5:	8b 7c 38 38          	mov    0x38(%eax,%edi,1),%edi
418ad9:	85 ff                	test   %edi,%edi
418adb:	74 11                	je     0x418aee
418add:	8b 07                	mov    (%edi),%eax
418adf:	8b 70 08             	mov    0x8(%eax),%esi
418ae2:	8b ce                	mov    %esi,%ecx
418ae4:	ff 15 d4 e2 49 00    	call   *0x49e2d4
418aea:	8b cf                	mov    %edi,%ecx
418aec:	ff d6                	call   *%esi
418aee:	8b c3                	mov    %ebx,%eax
418af0:	8b 4d f4             	mov    -0xc(%ebp),%ecx
418af3:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
418afa:	59                   	pop    %ecx
418afb:	5f                   	pop    %edi
418afc:	5e                   	pop    %esi
418afd:	5b                   	pop    %ebx
418afe:	8b e5                	mov    %ebp,%esp
418b00:	5d                   	pop    %ebp
418b01:	c3                   	ret
418b02:	cc                   	int3
418b03:	cc                   	int3
418b04:	cc                   	int3
418b05:	cc                   	int3
418b06:	cc                   	int3
418b07:	cc                   	int3
418b08:	cc                   	int3
418b09:	cc                   	int3
418b0a:	cc                   	int3
418b0b:	cc                   	int3
418b0c:	cc                   	int3
418b0d:	cc                   	int3
418b0e:	cc                   	int3
418b0f:	cc                   	int3
418b10:	55                   	push   %ebp
418b11:	8b ec                	mov    %esp,%ebp
418b13:	6a ff                	push   $0xffffffff
418b15:	68 4c 8e 49 00       	push   $0x498e4c
418b1a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
418b20:	50                   	push   %eax
418b21:	83 ec 48             	sub    $0x48,%esp
418b24:	a1 14 40 4c 00       	mov    0x4c4014,%eax
418b29:	33 c5                	xor    %ebp,%eax
418b2b:	89 45 f0             	mov    %eax,-0x10(%ebp)
418b2e:	53                   	push   %ebx
418b2f:	56                   	push   %esi
418b30:	57                   	push   %edi
418b31:	50                   	push   %eax
418b32:	8d 45 f4             	lea    -0xc(%ebp),%eax
418b35:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
418b3b:	8b 5d 08             	mov    0x8(%ebp),%ebx
418b3e:	8d 4d e8             	lea    -0x18(%ebp),%ecx
418b41:	6a 00                	push   $0x0
418b43:	89 5d ec             	mov    %ebx,-0x14(%ebp)
418b46:	e8 7c fc 04 00       	call   0x4687c7
418b4b:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
418b52:	8b 35 c4 9e 4c 00    	mov    0x4c9ec4,%esi
418b58:	a1 58 9e 4c 00       	mov    0x4c9e58,%eax
418b5d:	89 45 e0             	mov    %eax,-0x20(%ebp)
418b60:	85 f6                	test   %esi,%esi
418b62:	75 2f                	jne    0x418b93
418b64:	56                   	push   %esi
418b65:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
418b68:	e8 5a fc 04 00       	call   0x4687c7
418b6d:	39 35 c4 9e 4c 00    	cmp    %esi,0x4c9ec4
418b73:	75 10                	jne    0x418b85
418b75:	a1 68 7e 4c 00       	mov    0x4c7e68,%eax
418b7a:	40                   	inc    %eax
418b7b:	a3 68 7e 4c 00       	mov    %eax,0x4c7e68
418b80:	a3 c4 9e 4c 00       	mov    %eax,0x4c9ec4
418b85:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
418b88:	e8 92 fc 04 00       	call   0x46881f
418b8d:	8b 35 c4 9e 4c 00    	mov    0x4c9ec4,%esi
418b93:	8b 4b 04             	mov    0x4(%ebx),%ecx
418b96:	8d 1c b5 00 00 00 00 	lea    0x0(,%esi,4),%ebx
418b9d:	3b 71 0c             	cmp    0xc(%ecx),%esi
418ba0:	73 30                	jae    0x418bd2
418ba2:	8b 41 08             	mov    0x8(%ecx),%eax
418ba5:	8b 3c 03             	mov    (%ebx,%eax,1),%edi
418ba8:	85 ff                	test   %edi,%edi
418baa:	74 28                	je     0x418bd4
418bac:	8d 4d e8             	lea    -0x18(%ebp),%ecx
418baf:	e8 6b fc 04 00       	call   0x46881f
418bb4:	8b c7                	mov    %edi,%eax
418bb6:	8b 4d f4             	mov    -0xc(%ebp),%ecx
418bb9:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
418bc0:	59                   	pop    %ecx
418bc1:	5f                   	pop    %edi
418bc2:	5e                   	pop    %esi
418bc3:	5b                   	pop    %ebx
418bc4:	8b 4d f0             	mov    -0x10(%ebp),%ecx
418bc7:	33 cd                	xor    %ebp,%ecx
418bc9:	e8 fc 0d 05 00       	call   0x4699ca
418bce:	8b e5                	mov    %ebp,%esp
418bd0:	5d                   	pop    %ebp
418bd1:	c3                   	ret
418bd2:	33 ff                	xor    %edi,%edi
418bd4:	80 79 14 00          	cmpb   $0x0,0x14(%ecx)
418bd8:	74 10                	je     0x418bea
418bda:	e8 cf fd 04 00       	call   0x4689ae
418bdf:	3b 70 0c             	cmp    0xc(%eax),%esi
418be2:	73 0a                	jae    0x418bee
418be4:	8b 40 08             	mov    0x8(%eax),%eax
418be7:	8b 3c 03             	mov    (%ebx,%eax,1),%edi
418bea:	85 ff                	test   %edi,%edi
418bec:	75 be                	jne    0x418bac
418bee:	8b 45 e0             	mov    -0x20(%ebp),%eax
418bf1:	85 c0                	test   %eax,%eax
418bf3:	74 04                	je     0x418bf9
418bf5:	8b f8                	mov    %eax,%edi
418bf7:	eb b3                	jmp    0x418bac
418bf9:	6a 08                	push   $0x8
418bfb:	e8 d8 0d 05 00       	call   0x4699d8
418c00:	8b f8                	mov    %eax,%edi
418c02:	83 c4 04             	add    $0x4,%esp
418c05:	89 7d e0             	mov    %edi,-0x20(%ebp)
418c08:	8b 45 ec             	mov    -0x14(%ebp),%eax
418c0b:	8b 40 04             	mov    0x4(%eax),%eax
418c0e:	85 c0                	test   %eax,%eax
418c10:	74 0c                	je     0x418c1e
418c12:	8b 70 18             	mov    0x18(%eax),%esi
418c15:	85 f6                	test   %esi,%esi
418c17:	75 0a                	jne    0x418c23
418c19:	8d 70 1c             	lea    0x1c(%eax),%esi
418c1c:	eb 05                	jmp    0x418c23
418c1e:	be ca 0c 4b 00       	mov    $0x4b0cca,%esi
418c23:	6a 00                	push   $0x0
418c25:	8d 4d ac             	lea    -0x54(%ebp),%ecx
418c28:	e8 9a fb 04 00       	call   0x4687c7
418c2d:	c7 45 b0 00 00 00 00 	movl   $0x0,-0x50(%ebp)
418c34:	c6 45 b4 00          	movb   $0x0,-0x4c(%ebp)
418c38:	c7 45 b8 00 00 00 00 	movl   $0x0,-0x48(%ebp)
418c3f:	c6 45 bc 00          	movb   $0x0,-0x44(%ebp)
418c43:	33 c0                	xor    %eax,%eax
418c45:	c7 45 c0 00 00 00 00 	movl   $0x0,-0x40(%ebp)
418c4c:	66 89 45 c4          	mov    %ax,-0x3c(%ebp)
418c50:	89 45 c8             	mov    %eax,-0x38(%ebp)
418c53:	66 89 45 cc          	mov    %ax,-0x34(%ebp)
418c57:	89 45 d0             	mov    %eax,-0x30(%ebp)
418c5a:	88 45 d4             	mov    %al,-0x2c(%ebp)
418c5d:	89 45 d8             	mov    %eax,-0x28(%ebp)
418c60:	88 45 dc             	mov    %al,-0x24(%ebp)
418c63:	c6 45 fc 08          	movb   $0x8,-0x4(%ebp)
418c67:	85 f6                	test   %esi,%esi
418c69:	0f 84 e5 00 00 00    	je     0x418d54
418c6f:	8d 45 ac             	lea    -0x54(%ebp),%eax
418c72:	56                   	push   %esi
418c73:	50                   	push   %eax
418c74:	e8 3b fe 04 00       	call   0x468ab4
418c79:	c7 47 04 00 00 00 00 	movl   $0x0,0x4(%edi)
418c80:	c7 07 b8 06 4a 00    	movl   $0x4a06b8,(%edi)
418c86:	8d 45 ac             	lea    -0x54(%ebp),%eax
418c89:	c6 45 fc 09          	movb   $0x9,-0x4(%ebp)
418c8d:	50                   	push   %eax
418c8e:	e8 6c fe 04 00       	call   0x468aff
418c93:	8b 45 d8             	mov    -0x28(%ebp),%eax
418c96:	83 c4 0c             	add    $0xc,%esp
418c99:	85 c0                	test   %eax,%eax
418c9b:	74 09                	je     0x418ca6
418c9d:	50                   	push   %eax
418c9e:	e8 df 09 06 00       	call   0x479682
418ca3:	83 c4 04             	add    $0x4,%esp
418ca6:	8b 45 d0             	mov    -0x30(%ebp),%eax
418ca9:	c7 45 d8 00 00 00 00 	movl   $0x0,-0x28(%ebp)
418cb0:	85 c0                	test   %eax,%eax
418cb2:	74 09                	je     0x418cbd
418cb4:	50                   	push   %eax
418cb5:	e8 c8 09 06 00       	call   0x479682
418cba:	83 c4 04             	add    $0x4,%esp
418cbd:	8b 45 c8             	mov    -0x38(%ebp),%eax
418cc0:	c7 45 d0 00 00 00 00 	movl   $0x0,-0x30(%ebp)
418cc7:	85 c0                	test   %eax,%eax
418cc9:	74 09                	je     0x418cd4
418ccb:	50                   	push   %eax
418ccc:	e8 b1 09 06 00       	call   0x479682
418cd1:	83 c4 04             	add    $0x4,%esp
418cd4:	8b 45 c0             	mov    -0x40(%ebp),%eax
418cd7:	c7 45 c8 00 00 00 00 	movl   $0x0,-0x38(%ebp)
418cde:	85 c0                	test   %eax,%eax
418ce0:	74 09                	je     0x418ceb
418ce2:	50                   	push   %eax
418ce3:	e8 9a 09 06 00       	call   0x479682
418ce8:	83 c4 04             	add    $0x4,%esp
418ceb:	8b 45 b8             	mov    -0x48(%ebp),%eax
418cee:	c7 45 c0 00 00 00 00 	movl   $0x0,-0x40(%ebp)
418cf5:	85 c0                	test   %eax,%eax
418cf7:	74 09                	je     0x418d02
418cf9:	50                   	push   %eax
418cfa:	e8 83 09 06 00       	call   0x479682
418cff:	83 c4 04             	add    $0x4,%esp
418d02:	8b 45 b0             	mov    -0x50(%ebp),%eax
418d05:	c7 45 b8 00 00 00 00 	movl   $0x0,-0x48(%ebp)
418d0c:	85 c0                	test   %eax,%eax
418d0e:	74 09                	je     0x418d19
418d10:	50                   	push   %eax
418d11:	e8 6c 09 06 00       	call   0x479682
418d16:	83 c4 04             	add    $0x4,%esp
418d19:	8d 4d ac             	lea    -0x54(%ebp),%ecx
418d1c:	c7 45 b0 00 00 00 00 	movl   $0x0,-0x50(%ebp)