44a8ee:	33 d2                	xor    %edx,%edx
44a8f0:	8b c6                	mov    %esi,%eax
44a8f2:	e8 4d fc ff ff       	call   0x44a544
44a8f7:	eb 77                	jmp    0x44a970
44a8f9:	8b c7                	mov    %edi,%eax
44a8fb:	e8 8c f8 ff ff       	call   0x44a18c
44a900:	8b d0                	mov    %eax,%edx
44a902:	8b c3                	mov    %ebx,%eax
44a904:	e8 ab f8 ff ff       	call   0x44a1b4
44a909:	8b 47 14             	mov    0x14(%edi),%eax
44a90c:	89 43 14             	mov    %eax,0x14(%ebx)
44a90f:	8b 47 18             	mov    0x18(%edi),%eax
44a912:	89 43 18             	mov    %eax,0x18(%ebx)
44a915:	85 c0                	test   %eax,%eax
44a917:	74 03                	je     0x44a91c
44a919:	89 58 0c             	mov    %ebx,0xc(%eax)
44a91c:	8b 47 0c             	mov    0xc(%edi),%eax
44a91f:	89 43 0c             	mov    %eax,0xc(%ebx)
44a922:	85 c0                	test   %eax,%eax
44a924:	74 03                	je     0x44a929
44a926:	89 58 18             	mov    %ebx,0x18(%eax)
44a929:	8b 43 14             	mov    0x14(%ebx),%eax
44a92c:	3b 78 08             	cmp    0x8(%eax),%edi
44a92f:	75 03                	jne    0x44a934
44a931:	89 58 08             	mov    %ebx,0x8(%eax)
44a934:	8b 45 fc             	mov    -0x4(%ebp),%eax
44a937:	89 58 14             	mov    %ebx,0x14(%eax)
44a93a:	89 5f 14             	mov    %ebx,0x14(%edi)
44a93d:	80 7d 08 00          	cmpb   $0x0,0x8(%ebp)
44a941:	74 16                	je     0x44a959
44a943:	89 7b 08             	mov    %edi,0x8(%ebx)
44a946:	33 c0                	xor    %eax,%eax
44a948:	89 47 18             	mov    %eax,0x18(%edi)
44a94b:	8b 45 fc             	mov    -0x4(%ebp),%eax
44a94e:	89 47 0c             	mov    %eax,0xc(%edi)
44a951:	8b 45 fc             	mov    -0x4(%ebp),%eax
44a954:	89 78 18             	mov    %edi,0x18(%eax)
44a957:	eb 17                	jmp    0x44a970
44a959:	8b 45 fc             	mov    -0x4(%ebp),%eax
44a95c:	89 43 08             	mov    %eax,0x8(%ebx)
44a95f:	8b 45 fc             	mov    -0x4(%ebp),%eax
44a962:	89 47 18             	mov    %eax,0x18(%edi)
44a965:	33 c0                	xor    %eax,%eax
44a967:	89 47 0c             	mov    %eax,0xc(%edi)
44a96a:	8b 45 fc             	mov    -0x4(%ebp),%eax
44a96d:	89 78 0c             	mov    %edi,0xc(%eax)
44a970:	8b c3                	mov    %ebx,%eax
44a972:	e8 fd f4 ff ff       	call   0x449e74
44a977:	8b c3                	mov    %ebx,%eax
44a979:	e8 8a f8 ff ff       	call   0x44a208
44a97e:	56                   	push   %esi
44a97f:	68 3c bd 44 00       	push   $0x44bd3c
44a984:	33 d2                	xor    %edx,%edx
44a986:	8b c6                	mov    %esi,%eax
44a988:	e8 b7 fb ff ff       	call   0x44a544
44a98d:	5f                   	pop    %edi
44a98e:	5e                   	pop    %esi
44a98f:	5b                   	pop    %ebx
44a990:	59                   	pop    %ecx
44a991:	5d                   	pop    %ebp
44a992:	c2 08 00             	ret    $0x8
44a995:	8d 40 00             	lea    0x0(%eax),%eax
44a998:	55                   	push   %ebp
44a999:	8b ec                	mov    %esp,%ebp
44a99b:	53                   	push   %ebx
44a99c:	8b d9                	mov    %ecx,%ebx
44a99e:	8b 4d 08             	mov    0x8(%ebp),%ecx
44a9a1:	85 db                	test   %ebx,%ebx
44a9a3:	75 15                	jne    0x44a9ba
44a9a5:	8b 40 64             	mov    0x64(%eax),%eax
44a9a8:	8b 58 08             	mov    0x8(%eax),%ebx
44a9ab:	84 c9                	test   %cl,%cl
44a9ad:	74 0b                	je     0x44a9ba
44a9af:	eb 02                	jmp    0x44a9b3
44a9b1:	8b d8                	mov    %eax,%ebx
44a9b3:	8b 43 0c             	mov    0xc(%ebx),%eax
44a9b6:	85 c0                	test   %eax,%eax
44a9b8:	75 f7                	jne    0x44a9b1
44a9ba:	84 c9                	test   %cl,%cl
44a9bc:	74 1b                	je     0x44a9d9
44a9be:	8b 43 14             	mov    0x14(%ebx),%eax
44a9c1:	89 42 14             	mov    %eax,0x14(%edx)
44a9c4:	89 5a 18             	mov    %ebx,0x18(%edx)
44a9c7:	8b 43 0c             	mov    0xc(%ebx),%eax
44a9ca:	89 42 0c             	mov    %eax,0xc(%edx)
44a9cd:	85 c0                	test   %eax,%eax
44a9cf:	74 03                	je     0x44a9d4
44a9d1:	89 50 18             	mov    %edx,0x18(%eax)
44a9d4:	89 53 0c             	mov    %edx,0xc(%ebx)
44a9d7:	eb 21                	jmp    0x44a9fa
44a9d9:	89 5a 0c             	mov    %ebx,0xc(%edx)
44a9dc:	8b 43 18             	mov    0x18(%ebx),%eax
44a9df:	89 42 18             	mov    %eax,0x18(%edx)
44a9e2:	85 c0                	test   %eax,%eax
44a9e4:	74 03                	je     0x44a9e9
44a9e6:	89 50 0c             	mov    %edx,0xc(%eax)
44a9e9:	89 53 18             	mov    %edx,0x18(%ebx)
44a9ec:	8b 43 14             	mov    0x14(%ebx),%eax
44a9ef:	89 42 14             	mov    %eax,0x14(%edx)
44a9f2:	3b 58 08             	cmp    0x8(%eax),%ebx
44a9f5:	75 03                	jne    0x44a9fa
44a9f7:	89 50 08             	mov    %edx,0x8(%eax)
44a9fa:	8b 43 14             	mov    0x14(%ebx),%eax
44a9fd:	e8 72 f4 ff ff       	call   0x449e74
44aa02:	8b 43 14             	mov    0x14(%ebx),%eax
44aa05:	e8 fe f7 ff ff       	call   0x44a208
44aa0a:	5b                   	pop    %ebx
44aa0b:	5d                   	pop    %ebp
44aa0c:	c2 04 00             	ret    $0x4
44aa0f:	90                   	nop
44aa10:	55                   	push   %ebp
44aa11:	8b ec                	mov    %esp,%ebp
44aa13:	53                   	push   %ebx
44aa14:	56                   	push   %esi
44aa15:	57                   	push   %edi
44aa16:	8b d8                	mov    %eax,%ebx
44aa18:	8b 43 14             	mov    0x14(%ebx),%eax
44aa1b:	80 78 10 01          	cmpb   $0x1,0x10(%eax)
44aa1f:	75 44                	jne    0x44aa65
44aa21:	8b c3                	mov    %ebx,%eax
44aa23:	e8 64 f7 ff ff       	call   0x44a18c
44aa28:	8b 55 08             	mov    0x8(%ebp),%edx
44aa2b:	8b 52 fc             	mov    -0x4(%edx),%edx
44aa2e:	3b 42 04             	cmp    0x4(%edx),%eax
44aa31:	7c 32                	jl     0x44aa65
44aa33:	8b c3                	mov    %ebx,%eax
44aa35:	e8 52 f7 ff ff       	call   0x44a18c
44aa3a:	8b 55 08             	mov    0x8(%ebp),%edx
44aa3d:	8b 52 f8             	mov    -0x8(%edx),%edx
44aa40:	2b 42 0c             	sub    0xc(%edx),%eax
44aa43:	8b 55 08             	mov    0x8(%ebp),%edx
44aa46:	8b 52 fc             	mov    -0x4(%edx),%edx
44aa49:	3b 42 04             	cmp    0x4(%edx),%eax
44aa4c:	7f 17                	jg     0x44aa65
44aa4e:	8b 45 08             	mov    0x8(%ebp),%eax
44aa51:	8b 40 f4             	mov    -0xc(%eax),%eax
44aa54:	c7 00 12 00 00 00    	movl   $0x12,(%eax)
44aa5a:	8b 45 08             	mov    0x8(%ebp),%eax
44aa5d:	89 58 f0             	mov    %ebx,-0x10(%eax)
44aa60:	e9 88 01 00 00       	jmp    0x44abed
44aa65:	8b 43 14             	mov    0x14(%ebx),%eax
44aa68:	80 78 10 02          	cmpb   $0x2,0x10(%eax)
44aa6c:	75 42                	jne    0x44aab0
44aa6e:	8b c3                	mov    %ebx,%eax
44aa70:	e8 17 f7 ff ff       	call   0x44a18c
44aa75:	8b 55 08             	mov    0x8(%ebp),%edx
44aa78:	8b 52 fc             	mov    -0x4(%edx),%edx
44aa7b:	3b 02                	cmp    (%edx),%eax
44aa7d:	7c 31                	jl     0x44aab0
44aa7f:	8b c3                	mov    %ebx,%eax
44aa81:	e8 06 f7 ff ff       	call   0x44a18c
44aa86:	8b 55 08             	mov    0x8(%ebp),%edx
44aa89:	8b 52 f8             	mov    -0x8(%edx),%edx
44aa8c:	2b 42 0c             	sub    0xc(%edx),%eax
44aa8f:	8b 55 08             	mov    0x8(%ebp),%edx
44aa92:	8b 52 fc             	mov    -0x4(%edx),%edx
44aa95:	3b 02                	cmp    (%edx),%eax
44aa97:	7f 17                	jg     0x44aab0
44aa99:	8b 45 08             	mov    0x8(%ebp),%eax
44aa9c:	8b 40 f4             	mov    -0xc(%eax),%eax
44aa9f:	c7 00 12 00 00 00    	movl   $0x12,(%eax)
44aaa5:	8b 45 08             	mov    0x8(%ebp),%eax
44aaa8:	89 58 f0             	mov    %ebx,-0x10(%eax)
44aaab:	e9 3d 01 00 00       	jmp    0x44abed
44aab0:	83 7b 04 00          	cmpl   $0x0,0x4(%ebx)
44aab4:	0f 84 33 01 00 00    	je     0x44abed
44aaba:	ba 01 00 00 00       	mov    $0x1,%edx
44aabf:	8b c3                	mov    %ebx,%eax
44aac1:	e8 72 f2 ff ff       	call   0x449d38
44aac6:	8b f0                	mov    %eax,%esi
44aac8:	ba 02 00 00 00       	mov    $0x2,%edx
44aacd:	8b c3                	mov    %ebx,%eax
44aacf:	e8 64 f2 ff ff       	call   0x449d38
44aad4:	8b f8                	mov    %eax,%edi
44aad6:	8b 45 08             	mov    0x8(%ebp),%eax
44aad9:	8b 40 f8             	mov    -0x8(%eax),%eax
44aadc:	80 78 1c 00          	cmpb   $0x0,0x1c(%eax)
44aae0:	0f 84 8e 00 00 00    	je     0x44ab74
44aae6:	8b 45 08             	mov    0x8(%ebp),%eax
44aae9:	8b 40 fc             	mov    -0x4(%eax),%eax
44aaec:	3b 70 04             	cmp    0x4(%eax),%esi
44aaef:	0f 8f f8 00 00 00    	jg     0x44abed
44aaf5:	8b 45 08             	mov    0x8(%ebp),%eax
44aaf8:	8b 40 fc             	mov    -0x4(%eax),%eax
44aafb:	8b 40 04             	mov    0x4(%eax),%eax
44aafe:	8b 55 08             	mov    0x8(%ebp),%edx
44ab01:	8b 52 f8             	mov    -0x8(%edx),%edx
44ab04:	03 72 18             	add    0x18(%edx),%esi
44ab07:	3b c6                	cmp    %esi,%eax
44ab09:	0f 8f de 00 00 00    	jg     0x44abed
44ab0f:	8b 45 08             	mov    0x8(%ebp),%eax
44ab12:	8b 40 fc             	mov    -0x4(%eax),%eax
44ab15:	3b 38                	cmp    (%eax),%edi
44ab17:	0f 8f d0 00 00 00    	jg     0x44abed
44ab1d:	ba 02 00 00 00       	mov    $0x2,%edx
44ab22:	8b c3                	mov    %ebx,%eax
44ab24:	e8 93 f2 ff ff       	call   0x449dbc
44ab29:	03 f8                	add    %eax,%edi
44ab2b:	8b 45 08             	mov    0x8(%ebp),%eax
44ab2e:	8b 40 fc             	mov    -0x4(%eax),%eax
44ab31:	3b 38                	cmp    (%eax),%edi
44ab33:	0f 8c b4 00 00 00    	jl     0x44abed
44ab39:	8b 45 08             	mov    0x8(%ebp),%eax
44ab3c:	89 58 f0             	mov    %ebx,-0x10(%eax)
44ab3f:	8b 43 04             	mov    0x4(%ebx),%eax
44ab42:	8b 50 40             	mov    0x40(%eax),%edx
44ab45:	03 50 48             	add    0x48(%eax),%edx
44ab48:	83 ea 0f             	sub    $0xf,%edx
44ab4b:	8b 45 08             	mov    0x8(%ebp),%eax
44ab4e:	8b 40 fc             	mov    -0x4(%eax),%eax
44ab51:	3b 10                	cmp    (%eax),%edx
44ab53:	7d 11                	jge    0x44ab66
44ab55:	8b 45 08             	mov    0x8(%ebp),%eax
44ab58:	8b 40 f4             	mov    -0xc(%eax),%eax
44ab5b:	c7 00 14 00 00 00    	movl   $0x14,(%eax)
44ab61:	e9 87 00 00 00       	jmp    0x44abed
44ab66:	8b 45 08             	mov    0x8(%ebp),%eax
44ab69:	8b 40 f4             	mov    -0xc(%eax),%eax
44ab6c:	c7 00 02 00 00 00    	movl   $0x2,(%eax)
44ab72:	eb 79                	jmp    0x44abed
44ab74:	8b 45 08             	mov    0x8(%ebp),%eax
44ab77:	8b 40 fc             	mov    -0x4(%eax),%eax
44ab7a:	3b 38                	cmp    (%eax),%edi
44ab7c:	7f 6f                	jg     0x44abed
44ab7e:	8b 45 08             	mov    0x8(%ebp),%eax
44ab81:	8b 40 fc             	mov    -0x4(%eax),%eax
44ab84:	8b 00                	mov    (%eax),%eax
44ab86:	8b 55 08             	mov    0x8(%ebp),%edx
44ab89:	8b 52 f8             	mov    -0x8(%edx),%edx
44ab8c:	03 7a 18             	add    0x18(%edx),%edi
44ab8f:	3b c7                	cmp    %edi,%eax
44ab91:	7f 5a                	jg     0x44abed
44ab93:	8b 45 08             	mov    0x8(%ebp),%eax
44ab96:	8b 40 fc             	mov    -0x4(%eax),%eax
44ab99:	3b 70 04             	cmp    0x4(%eax),%esi
44ab9c:	7f 4f                	jg     0x44abed
44ab9e:	ba 01 00 00 00       	mov    $0x1,%edx
44aba3:	8b c3                	mov    %ebx,%eax
44aba5:	e8 12 f2 ff ff       	call   0x449dbc
44abaa:	03 f0                	add    %eax,%esi
44abac:	8b 45 08             	mov    0x8(%ebp),%eax
44abaf:	8b 40 fc             	mov    -0x4(%eax),%eax
44abb2:	3b 70 04             	cmp    0x4(%eax),%esi
44abb5:	7c 36                	jl     0x44abed
44abb7:	8b 45 08             	mov    0x8(%ebp),%eax
44abba:	89 58 f0             	mov    %ebx,-0x10(%eax)
44abbd:	8b 45 08             	mov    0x8(%ebp),%eax
44abc0:	8b 40 fc             	mov    -0x4(%eax),%eax
44abc3:	8b 40 04             	mov    0x4(%eax),%eax
44abc6:	8b 53 04             	mov    0x4(%ebx),%edx
44abc9:	8b 52 44             	mov    0x44(%edx),%edx
44abcc:	83 c2 0f             	add    $0xf,%edx
44abcf:	3b c2                	cmp    %edx,%eax
44abd1:	7d 0e                	jge    0x44abe1
44abd3:	8b 45 08             	mov    0x8(%ebp),%eax
44abd6:	8b 40 f4             	mov    -0xc(%eax),%eax
44abd9:	c7 00 14 00 00 00    	movl   $0x14,(%eax)
44abdf:	eb 0c                	jmp    0x44abed
44abe1:	8b 45 08             	mov    0x8(%ebp),%eax
44abe4:	8b 40 f4             	mov    -0xc(%eax),%eax
44abe7:	c7 00 02 00 00 00    	movl   $0x2,(%eax)
44abed:	8b 45 08             	mov    0x8(%ebp),%eax
44abf0:	83 78 f0 00          	cmpl   $0x0,-0x10(%eax)
44abf4:	75 1c                	jne    0x44ac12
44abf6:	8b c3                	mov    %ebx,%eax
44abf8:	e8 6b f6 ff ff       	call   0x44a268
44abfd:	85 c0                	test   %eax,%eax
44abff:	74 11                	je     0x44ac12
44ac01:	8b 45 08             	mov    0x8(%ebp),%eax
44ac04:	50                   	push   %eax
44ac05:	8b c3                	mov    %ebx,%eax
44ac07:	e8 5c f6 ff ff       	call   0x44a268
44ac0c:	e8 ff fd ff ff       	call   0x44aa10
44ac11:	59                   	pop    %ecx
44ac12:	8b 45 08             	mov    0x8(%ebp),%eax
44ac15:	83 78 f0 00          	cmpl   $0x0,-0x10(%eax)
44ac19:	75 1c                	jne    0x44ac37
44ac1b:	8b c3                	mov    %ebx,%eax
44ac1d:	e8 6e f6 ff ff       	call   0x44a290
44ac22:	85 c0                	test   %eax,%eax
44ac24:	74 11                	je     0x44ac37
44ac26:	8b 45 08             	mov    0x8(%ebp),%eax
44ac29:	50                   	push   %eax
44ac2a:	8b c3                	mov    %ebx,%eax
44ac2c:	e8 5f f6 ff ff       	call   0x44a290
44ac31:	e8 da fd ff ff       	call   0x44aa10
44ac36:	59                   	pop    %ecx
44ac37:	5f                   	pop    %edi
44ac38:	5e                   	pop    %esi
44ac39:	5b                   	pop    %ebx
44ac3a:	5d                   	pop    %ebp
44ac3b:	c3                   	ret
44ac3c:	55                   	push   %ebp
44ac3d:	8b ec                	mov    %esp,%ebp
44ac3f:	83 c4 e8             	add    $0xffffffe8,%esp
44ac42:	53                   	push   %ebx
44ac43:	56                   	push   %esi
44ac44:	57                   	push   %edi
44ac45:	8b f8                	mov    %eax,%edi
44ac47:	8b 45 08             	mov    0x8(%ebp),%eax
44ac4a:	8b 40 f8             	mov    -0x8(%eax),%eax
44ac4d:	8b 40 14             	mov    0x14(%eax),%eax
44ac50:	e8 23 a2 ff ff       	call   0x444e78
44ac55:	8b f0                	mov    %eax,%esi
44ac57:	4e                   	dec    %esi
44ac58:	83 fe 00             	cmp    $0x0,%esi
44ac5b:	7c 68                	jl     0x44acc5
44ac5d:	8b 45 08             	mov    0x8(%ebp),%eax
44ac60:	8b 40 f8             	mov    -0x8(%eax),%eax
44ac63:	8b 40 14             	mov    0x14(%eax),%eax
44ac66:	8b d6                	mov    %esi,%edx
44ac68:	e8 cf a1 ff ff       	call   0x444e3c
44ac6d:	8b d8                	mov    %eax,%ebx
44ac6f:	80 7b 57 00          	cmpb   $0x0,0x57(%ebx)
44ac73:	74 4a                	je     0x44acbf
44ac75:	8b c3                	mov    %ebx,%eax
44ac77:	8b 15 08 df 43 00    	mov    0x43df08,%edx
44ac7d:	e8 12 8d fb ff       	call   0x403994
44ac82:	84 c0                	test   %al,%al
44ac84:	74 09                	je     0x44ac8f
44ac86:	80 bb a6 01 00 00 00 	cmpb   $0x0,0x1a6(%ebx)
44ac8d:	74 30                	je     0x44acbf
44ac8f:	8b 57 04             	mov    0x4(%edi),%edx
44ac92:	2b 53 44             	sub    0x44(%ebx),%edx
44ac95:	8b 07                	mov    (%edi),%eax
44ac97:	2b 43 40             	sub    0x40(%ebx),%eax
44ac9a:	8d 4d f8             	lea    -0x8(%ebp),%ecx
44ac9d:	e8 d6 7e fc ff       	call   0x412b78
44aca2:	ff 75 fc             	push   -0x4(%ebp)
44aca5:	ff 75 f8             	push   -0x8(%ebp)
44aca8:	8d 55 e8             	lea    -0x18(%ebp),%edx
44acab:	8b c3                	mov    %ebx,%eax
44acad:	8b 08                	mov    (%eax),%ecx
44acaf:	ff 51 44             	call   *0x44(%ecx)
44acb2:	8d 45 e8             	lea    -0x18(%ebp),%eax
44acb5:	50                   	push   %eax
44acb6:	e8 a1 c0 fb ff       	call   0x406d5c
44acbb:	85 c0                	test   %eax,%eax
44acbd:	75 08                	jne    0x44acc7
44acbf:	4e                   	dec    %esi
44acc0:	83 fe ff             	cmp    $0xffffffff,%esi
44acc3:	75 98                	jne    0x44ac5d
44acc5:	33 db                	xor    %ebx,%ebx
44acc7:	8b c3                	mov    %ebx,%eax
44acc9:	5f                   	pop    %edi
44acca:	5e                   	pop    %esi
44accb:	5b                   	pop    %ebx
44accc:	8b e5                	mov    %ebp,%esp
44acce:	5d                   	pop    %ebp
44accf:	c3                   	ret