4118bc:	59                   	pop    %ecx
4118bd:	5f                   	pop    %edi
4118be:	5e                   	pop    %esi
4118bf:	5b                   	pop    %ebx
4118c0:	8b e5                	mov    %ebp,%esp
4118c2:	5d                   	pop    %ebp
4118c3:	c3                   	ret
4118c4:	cc                   	int3
4118c5:	cc                   	int3
4118c6:	cc                   	int3
4118c7:	cc                   	int3
4118c8:	cc                   	int3
4118c9:	cc                   	int3
4118ca:	cc                   	int3
4118cb:	cc                   	int3
4118cc:	cc                   	int3
4118cd:	cc                   	int3
4118ce:	cc                   	int3
4118cf:	cc                   	int3
4118d0:	55                   	push   %ebp
4118d1:	8b ec                	mov    %esp,%ebp
4118d3:	6a ff                	push   $0xffffffff
4118d5:	68 5d 88 49 00       	push   $0x49885d
4118da:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
4118e0:	50                   	push   %eax
4118e1:	83 ec 14             	sub    $0x14,%esp
4118e4:	53                   	push   %ebx
4118e5:	56                   	push   %esi
4118e6:	57                   	push   %edi
4118e7:	a1 14 40 4c 00       	mov    0x4c4014,%eax
4118ec:	33 c5                	xor    %ebp,%eax
4118ee:	50                   	push   %eax
4118ef:	8d 45 f4             	lea    -0xc(%ebp),%eax
4118f2:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
4118f8:	8b f9                	mov    %ecx,%edi
4118fa:	89 7d f0             	mov    %edi,-0x10(%ebp)
4118fd:	c7 45 e0 0c 6d 4b 00 	movl   $0x4b6d0c,-0x20(%ebp)
411904:	c7 45 e4 00 00 00 00 	movl   $0x0,-0x1c(%ebp)
41190b:	c6 45 e8 01          	movb   $0x1,-0x18(%ebp)
41190f:	51                   	push   %ecx
411910:	ff 75 08             	push   0x8(%ebp)
411913:	8d 4d e0             	lea    -0x20(%ebp),%ecx
411916:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
41191d:	52                   	push   %edx
41191e:	e8 dd 0a 00 00       	call   0x412400
411923:	c7 07 0c 6d 4b 00    	movl   $0x4b6d0c,(%edi)
411929:	c7 47 04 00 00 00 00 	movl   $0x0,0x4(%edi)
411930:	8a 48 08             	mov    0x8(%eax),%cl
411933:	88 4f 08             	mov    %cl,0x8(%edi)
411936:	8b 48 04             	mov    0x4(%eax),%ecx
411939:	c7 40 04 00 00 00 00 	movl   $0x0,0x4(%eax)
411940:	8b 5f 04             	mov    0x4(%edi),%ebx
411943:	89 4d f0             	mov    %ecx,-0x10(%ebp)
411946:	85 db                	test   %ebx,%ebx
411948:	74 15                	je     0x41195f
41194a:	8b 03                	mov    (%ebx),%eax
41194c:	6a 01                	push   $0x1
41194e:	8b 30                	mov    (%eax),%esi
411950:	8b ce                	mov    %esi,%ecx
411952:	ff 15 d4 e2 49 00    	call   *0x49e2d4
411958:	8b cb                	mov    %ebx,%ecx
41195a:	ff d6                	call   *%esi
41195c:	8b 4d f0             	mov    -0x10(%ebp),%ecx
41195f:	8b 5d e4             	mov    -0x1c(%ebp),%ebx
411962:	89 4f 04             	mov    %ecx,0x4(%edi)
411965:	85 db                	test   %ebx,%ebx
411967:	74 12                	je     0x41197b
411969:	8b 03                	mov    (%ebx),%eax
41196b:	6a 01                	push   $0x1
41196d:	8b 30                	mov    (%eax),%esi
41196f:	8b ce                	mov    %esi,%ecx
411971:	ff 15 d4 e2 49 00    	call   *0x49e2d4
411977:	8b cb                	mov    %ebx,%ecx
411979:	ff d6                	call   *%esi
41197b:	8b c7                	mov    %edi,%eax
41197d:	8b 4d f4             	mov    -0xc(%ebp),%ecx
411980:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
411987:	59                   	pop    %ecx
411988:	5f                   	pop    %edi
411989:	5e                   	pop    %esi
41198a:	5b                   	pop    %ebx
41198b:	8b e5                	mov    %ebp,%esp
41198d:	5d                   	pop    %ebp
41198e:	c3                   	ret
41198f:	cc                   	int3
411990:	64 a1 2c 00 00 00    	mov    %fs:0x2c,%eax
411996:	8b 08                	mov    (%eax),%ecx
411998:	a1 b0 9e 4c 00       	mov    0x4c9eb0,%eax
41199d:	3b 81 04 00 00 00    	cmp    0x4(%ecx),%eax
4119a3:	7e 37                	jle    0x4119dc
4119a5:	68 b0 9e 4c 00       	push   $0x4c9eb0
4119aa:	e8 3b 84 05 00       	call   0x469dea
4119af:	83 c4 04             	add    $0x4,%esp
4119b2:	83 3d b0 9e 4c 00 ff 	cmpl   $0xffffffff,0x4c9eb0
4119b9:	75 21                	jne    0x4119dc
4119bb:	68 80 d1 49 00       	push   $0x49d180
4119c0:	c7 05 ac 9e 4c 00 00 	movl   $0x0,0x4c9eac
4119c7:	00 00 00
4119ca:	e8 b0 82 05 00       	call   0x469c7f
4119cf:	68 b0 9e 4c 00       	push   $0x4c9eb0
4119d4:	e8 c7 83 05 00       	call   0x469da0
4119d9:	83 c4 08             	add    $0x8,%esp
4119dc:	a1 ac 9e 4c 00       	mov    0x4c9eac,%eax
4119e1:	85 c0                	test   %eax,%eax
4119e3:	75 41                	jne    0x411a26
4119e5:	53                   	push   %ebx
4119e6:	57                   	push   %edi
4119e7:	6a 04                	push   $0x4
4119e9:	e8 ea 7f 05 00       	call   0x4699d8
4119ee:	8b f8                	mov    %eax,%edi
4119f0:	83 c4 04             	add    $0x4,%esp
4119f3:	c7 07 a4 11 4b 00    	movl   $0x4b11a4,(%edi)
4119f9:	8b 1d ac 9e 4c 00    	mov    0x4c9eac,%ebx
4119ff:	85 db                	test   %ebx,%ebx
411a01:	74 19                	je     0x411a1c
411a03:	8b 0f                	mov    (%edi),%ecx
411a05:	56                   	push   %esi
411a06:	6a 01                	push   $0x1
411a08:	8b 31                	mov    (%ecx),%esi
411a0a:	8b ce                	mov    %esi,%ecx
411a0c:	ff 15 d4 e2 49 00    	call   *0x49e2d4
411a12:	8b cf                	mov    %edi,%ecx
411a14:	ff d6                	call   *%esi
411a16:	5e                   	pop    %esi
411a17:	5f                   	pop    %edi
411a18:	8b c3                	mov    %ebx,%eax
411a1a:	5b                   	pop    %ebx
411a1b:	c3                   	ret
411a1c:	89 3d ac 9e 4c 00    	mov    %edi,0x4c9eac
411a22:	8b c7                	mov    %edi,%eax
411a24:	5f                   	pop    %edi
411a25:	5b                   	pop    %ebx
411a26:	c3                   	ret
411a27:	cc                   	int3
411a28:	cc                   	int3
411a29:	cc                   	int3
411a2a:	cc                   	int3
411a2b:	cc                   	int3
411a2c:	cc                   	int3
411a2d:	cc                   	int3
411a2e:	cc                   	int3
411a2f:	cc                   	int3
411a30:	55                   	push   %ebp
411a31:	8b ec                	mov    %esp,%ebp
411a33:	83 ec 20             	sub    $0x20,%esp
411a36:	8b 45 18             	mov    0x18(%ebp),%eax
411a39:	53                   	push   %ebx
411a3a:	56                   	push   %esi
411a3b:	8b 75 08             	mov    0x8(%ebp),%esi
411a3e:	57                   	push   %edi
411a3f:	8b f9                	mov    %ecx,%edi
411a41:	89 45 ec             	mov    %eax,-0x14(%ebp)
411a44:	b9 fe ff ff 7f       	mov    $0x7ffffffe,%ecx
411a49:	8b c1                	mov    %ecx,%eax
411a4b:	8b 57 10             	mov    0x10(%edi),%edx
411a4e:	2b c2                	sub    %edx,%eax
411a50:	89 55 fc             	mov    %edx,-0x4(%ebp)
411a53:	3b c6                	cmp    %esi,%eax
411a55:	0f 82 31 01 00 00    	jb     0x411b8c
411a5b:	8b 5f 14             	mov    0x14(%edi),%ebx
411a5e:	8d 04 32             	lea    (%edx,%esi,1),%eax
411a61:	8b f0                	mov    %eax,%esi
411a63:	89 45 f8             	mov    %eax,-0x8(%ebp)
411a66:	83 ce 07             	or     $0x7,%esi
411a69:	3b f1                	cmp    %ecx,%esi
411a6b:	76 04                	jbe    0x411a71
411a6d:	8b f1                	mov    %ecx,%esi
411a6f:	eb 18                	jmp    0x411a89
411a71:	8b c3                	mov    %ebx,%eax
411a73:	d1 e8                	shr    $1,%eax
411a75:	2b c8                	sub    %eax,%ecx
411a77:	3b d9                	cmp    %ecx,%ebx
411a79:	76 07                	jbe    0x411a82
411a7b:	be fe ff ff 7f       	mov    $0x7ffffffe,%esi
411a80:	eb 07                	jmp    0x411a89
411a82:	03 c3                	add    %ebx,%eax
411a84:	3b f0                	cmp    %eax,%esi
411a86:	0f 42 f0             	cmovb  %eax,%esi
411a89:	8d 46 01             	lea    0x1(%esi),%eax
411a8c:	8b cf                	mov    %edi,%ecx
411a8e:	50                   	push   %eax
411a8f:	e8 7c 06 ff ff       	call   0x402110
411a94:	8b 4d 1c             	mov    0x1c(%ebp),%ecx
411a97:	8b 55 10             	mov    0x10(%ebp),%edx
411a9a:	89 45 f4             	mov    %eax,-0xc(%ebp)
411a9d:	8b 45 f8             	mov    -0x8(%ebp),%eax
411aa0:	89 47 10             	mov    %eax,0x10(%edi)
411aa3:	8d 04 09             	lea    (%ecx,%ecx,1),%eax
411aa6:	89 77 14             	mov    %esi,0x14(%edi)
411aa9:	8d 34 12             	lea    (%edx,%edx,1),%esi
411aac:	89 45 f0             	mov    %eax,-0x10(%ebp)
411aaf:	8b 45 f4             	mov    -0xc(%ebp),%eax
411ab2:	03 c6                	add    %esi,%eax
411ab4:	89 75 e0             	mov    %esi,-0x20(%ebp)
411ab7:	8b 75 fc             	mov    -0x4(%ebp),%esi
411aba:	2b f2                	sub    %edx,%esi
411abc:	89 45 e8             	mov    %eax,-0x18(%ebp)
411abf:	8b 45 14             	mov    0x14(%ebp),%eax
411ac2:	2b f0                	sub    %eax,%esi
411ac4:	8d 34 75 02 00 00 00 	lea    0x2(,%esi,2),%esi
411acb:	89 75 fc             	mov    %esi,-0x4(%ebp)
411ace:	8d 34 02             	lea    (%edx,%eax,1),%esi
411ad1:	8d 04 0a             	lea    (%edx,%ecx,1),%eax
411ad4:	03 f6                	add    %esi,%esi
411ad6:	8b 4d f4             	mov    -0xc(%ebp),%ecx
411ad9:	89 75 e4             	mov    %esi,-0x1c(%ebp)
411adc:	8d 04 41             	lea    (%ecx,%eax,2),%eax
411adf:	89 45 f8             	mov    %eax,-0x8(%ebp)
411ae2:	83 fb 08             	cmp    $0x8,%ebx
411ae5:	72 6a                	jb     0x411b51
411ae7:	8b 37                	mov    (%edi),%esi
411ae9:	8d 04 12             	lea    (%edx,%edx,1),%eax
411aec:	50                   	push   %eax
411aed:	56                   	push   %esi
411aee:	51                   	push   %ecx
411aef:	e8 2c 9b 05 00       	call   0x46b620
411af4:	ff 75 f0             	push   -0x10(%ebp)
411af7:	ff 75 ec             	push   -0x14(%ebp)
411afa:	ff 75 e8             	push   -0x18(%ebp)
411afd:	e8 1e 9b 05 00       	call   0x46b620
411b02:	ff 75 fc             	push   -0x4(%ebp)
411b05:	8b 45 e4             	mov    -0x1c(%ebp),%eax
411b08:	03 c6                	add    %esi,%eax
411b0a:	50                   	push   %eax
411b0b:	ff 75 f8             	push   -0x8(%ebp)
411b0e:	e8 0d 9b 05 00       	call   0x46b620
411b13:	8d 0c 5d 02 00 00 00 	lea    0x2(,%ebx,2),%ecx
411b1a:	83 c4 24             	add    $0x24,%esp
411b1d:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
411b23:	72 12                	jb     0x411b37
411b25:	8b 56 fc             	mov    -0x4(%esi),%edx
411b28:	83 c1 23             	add    $0x23,%ecx
411b2b:	2b f2                	sub    %edx,%esi
411b2d:	8d 46 fc             	lea    -0x4(%esi),%eax
411b30:	83 f8 1f             	cmp    $0x1f,%eax
411b33:	77 5c                	ja     0x411b91
411b35:	8b f2                	mov    %edx,%esi
411b37:	51                   	push   %ecx
411b38:	56                   	push   %esi
411b39:	e8 ca 7e 05 00       	call   0x469a08
411b3e:	8b 45 f4             	mov    -0xc(%ebp),%eax
411b41:	83 c4 08             	add    $0x8,%esp
411b44:	89 07                	mov    %eax,(%edi)
411b46:	8b c7                	mov    %edi,%eax
411b48:	5f                   	pop    %edi
411b49:	5e                   	pop    %esi
411b4a:	5b                   	pop    %ebx
411b4b:	8b e5                	mov    %ebp,%esp
411b4d:	5d                   	pop    %ebp
411b4e:	c2 18 00             	ret    $0x18
411b51:	8b 45 e0             	mov    -0x20(%ebp),%eax
411b54:	50                   	push   %eax
411b55:	57                   	push   %edi
411b56:	51                   	push   %ecx
411b57:	e8 c4 9a 05 00       	call   0x46b620
411b5c:	ff 75 f0             	push   -0x10(%ebp)
411b5f:	ff 75 ec             	push   -0x14(%ebp)
411b62:	ff 75 e8             	push   -0x18(%ebp)
411b65:	e8 b6 9a 05 00       	call   0x46b620
411b6a:	ff 75 fc             	push   -0x4(%ebp)
411b6d:	8d 0c 3e             	lea    (%esi,%edi,1),%ecx
411b70:	51                   	push   %ecx
411b71:	ff 75 f8             	push   -0x8(%ebp)
411b74:	e8 a7 9a 05 00       	call   0x46b620
411b79:	8b 45 f4             	mov    -0xc(%ebp),%eax
411b7c:	83 c4 24             	add    $0x24,%esp
411b7f:	89 07                	mov    %eax,(%edi)
411b81:	8b c7                	mov    %edi,%eax
411b83:	5f                   	pop    %edi
411b84:	5e                   	pop    %esi
411b85:	5b                   	pop    %ebx
411b86:	8b e5                	mov    %ebp,%esp
411b88:	5d                   	pop    %ebp
411b89:	c2 18 00             	ret    $0x18
411b8c:	e8 4f f8 fe ff       	call   0x4013e0
411b91:	e8 9b 7a 06 00       	call   0x479631
411b96:	cc                   	int3
411b97:	cc                   	int3
411b98:	cc                   	int3
411b99:	cc                   	int3
411b9a:	cc                   	int3
411b9b:	cc                   	int3
411b9c:	cc                   	int3
411b9d:	cc                   	int3
411b9e:	cc                   	int3
411b9f:	cc                   	int3
411ba0:	55                   	push   %ebp
411ba1:	8b ec                	mov    %esp,%ebp
411ba3:	83 ec 0c             	sub    $0xc,%esp
411ba6:	8b 55 08             	mov    0x8(%ebp),%edx
411ba9:	53                   	push   %ebx
411baa:	8b d9                	mov    %ecx,%ebx
411bac:	b9 ff ff ff 7f       	mov    $0x7fffffff,%ecx
411bb1:	56                   	push   %esi
411bb2:	8b c1                	mov    %ecx,%eax
411bb4:	57                   	push   %edi
411bb5:	8b 73 10             	mov    0x10(%ebx),%esi
411bb8:	2b c6                	sub    %esi,%eax
411bba:	89 75 f4             	mov    %esi,-0xc(%ebp)
411bbd:	3b c2                	cmp    %edx,%eax
411bbf:	0f 82 e9 00 00 00    	jb     0x411cae
411bc5:	8b 43 14             	mov    0x14(%ebx),%eax
411bc8:	03 d6                	add    %esi,%edx
411bca:	8b f2                	mov    %edx,%esi
411bcc:	89 55 f8             	mov    %edx,-0x8(%ebp)
411bcf:	83 ce 0f             	or     $0xf,%esi
411bd2:	89 45 fc             	mov    %eax,-0x4(%ebp)
411bd5:	3b f1                	cmp    %ecx,%esi
411bd7:	76 26                	jbe    0x411bff
411bd9:	8b f1                	mov    %ecx,%esi
411bdb:	b8 00 00 00 80       	mov    $0x80000000,%eax
411be0:	83 c0 23             	add    $0x23,%eax
411be3:	50                   	push   %eax
411be4:	e8 ef 7d 05 00       	call   0x4699d8
411be9:	83 c4 04             	add    $0x4,%esp
411bec:	85 c0                	test   %eax,%eax
411bee:	0f 84 c4 00 00 00    	je     0x411cb8
411bf4:	8d 78 23             	lea    0x23(%eax),%edi
411bf7:	83 e7 e0             	and    $0xffffffe0,%edi
411bfa:	89 47 fc             	mov    %eax,-0x4(%edi)
411bfd:	eb 43                	jmp    0x411c42
411bff:	8b d0                	mov    %eax,%edx
411c01:	d1 ea                	shr    $1,%edx
411c03:	2b ca                	sub    %edx,%ecx
411c05:	3b c1                	cmp    %ecx,%eax
411c07:	76 07                	jbe    0x411c10
411c09:	be ff ff ff 7f       	mov    $0x7fffffff,%esi
411c0e:	eb cb                	jmp    0x411bdb
411c10:	03 c2                	add    %edx,%eax
411c12:	3b f0                	cmp    %eax,%esi
411c14:	0f 42 f0             	cmovb  %eax,%esi
411c17:	8d 4e 01             	lea    0x1(%esi),%ecx
411c1a:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
411c20:	72 0d                	jb     0x411c2f
411c22:	8d 41 23             	lea    0x23(%ecx),%eax
411c25:	3b c1                	cmp    %ecx,%eax
411c27:	0f 86 86 00 00 00    	jbe    0x411cb3
411c2d:	eb b4                	jmp    0x411be3
411c2f:	85 c9                	test   %ecx,%ecx
411c31:	74 0d                	je     0x411c40
411c33:	51                   	push   %ecx
411c34:	e8 9f 7d 05 00       	call   0x4699d8
411c39:	83 c4 04             	add    $0x4,%esp
411c3c:	8b f8                	mov    %eax,%edi
411c3e:	eb 02                	jmp    0x411c42
411c40:	33 ff                	xor    %edi,%edi
411c42:	8b 45 f8             	mov    -0x8(%ebp),%eax
411c45:	89 43 10             	mov    %eax,0x10(%ebx)
411c48:	8b 45 f4             	mov    -0xc(%ebp),%eax
411c4b:	40                   	inc    %eax