42a9d8:	56                   	push   %esi
42a9d9:	e8 38 9f ff ff       	call   0x424916
42a9de:	50                   	push   %eax
42a9df:	e8 d7 b4 00 00       	call   0x435ebb
42a9e4:	59                   	pop    %ecx
42a9e5:	59                   	pop    %ecx
42a9e6:	85 c0                	test   %eax,%eax
42a9e8:	0f 84 86 00 00 00    	je     0x42aa74
42a9ee:	57                   	push   %edi
42a9ef:	e8 54 c4 ff ff       	call   0x426e48
42a9f4:	83 c0 20             	add    $0x20,%eax
42a9f7:	3b f0                	cmp    %eax,%esi
42a9f9:	75 04                	jne    0x42a9ff
42a9fb:	33 ff                	xor    %edi,%edi
42a9fd:	eb 0f                	jmp    0x42aa0e
42a9ff:	e8 44 c4 ff ff       	call   0x426e48
42aa04:	83 c0 40             	add    $0x40,%eax
42aa07:	3b f0                	cmp    %eax,%esi
42aa09:	75 66                	jne    0x42aa71
42aa0b:	33 ff                	xor    %edi,%edi
42aa0d:	47                   	inc    %edi
42aa0e:	ff 05 e8 41 4c 00    	incl   0x4c41e8
42aa14:	f7 46 0c 0c 01 00 00 	testl  $0x10c,0xc(%esi)
42aa1b:	75 54                	jne    0x42aa71
42aa1d:	83 3c bd cc 49 4c 00 	cmpl   $0x0,0x4c49cc(,%edi,4)
42aa24:	00
42aa25:	53                   	push   %ebx
42aa26:	bb 00 10 00 00       	mov    $0x1000,%ebx
42aa2b:	75 25                	jne    0x42aa52
42aa2d:	53                   	push   %ebx
42aa2e:	e8 2a e0 ff ff       	call   0x428a5d
42aa33:	89 04 bd cc 49 4c 00 	mov    %eax,0x4c49cc(,%edi,4)
42aa3a:	59                   	pop    %ecx
42aa3b:	85 c0                	test   %eax,%eax
42aa3d:	75 13                	jne    0x42aa52
42aa3f:	8d 46 14             	lea    0x14(%esi),%eax
42aa42:	6a 02                	push   $0x2
42aa44:	89 46 08             	mov    %eax,0x8(%esi)
42aa47:	89 06                	mov    %eax,(%esi)
42aa49:	58                   	pop    %eax
42aa4a:	89 46 18             	mov    %eax,0x18(%esi)
42aa4d:	89 46 04             	mov    %eax,0x4(%esi)
42aa50:	eb 12                	jmp    0x42aa64
42aa52:	8b 0c bd cc 49 4c 00 	mov    0x4c49cc(,%edi,4),%ecx
42aa59:	89 4e 08             	mov    %ecx,0x8(%esi)
42aa5c:	89 0e                	mov    %ecx,(%esi)
42aa5e:	89 5e 18             	mov    %ebx,0x18(%esi)
42aa61:	89 5e 04             	mov    %ebx,0x4(%esi)
42aa64:	81 4e 0c 02 11 00 00 	orl    $0x1102,0xc(%esi)
42aa6b:	33 c0                	xor    %eax,%eax
42aa6d:	40                   	inc    %eax
42aa6e:	5b                   	pop    %ebx
42aa6f:	eb 02                	jmp    0x42aa73
42aa71:	33 c0                	xor    %eax,%eax
42aa73:	5f                   	pop    %edi
42aa74:	5e                   	pop    %esi
42aa75:	5d                   	pop    %ebp
42aa76:	c3                   	ret
42aa77:	cc                   	int3
42aa78:	cc                   	int3
42aa79:	cc                   	int3
42aa7a:	cc                   	int3
42aa7b:	cc                   	int3
42aa7c:	cc                   	int3
42aa7d:	cc                   	int3
42aa7e:	cc                   	int3
42aa7f:	cc                   	int3
42aa80:	56                   	push   %esi
42aa81:	8b 44 24 14          	mov    0x14(%esp),%eax
42aa85:	0b c0                	or     %eax,%eax
42aa87:	75 28                	jne    0x42aab1
42aa89:	8b 4c 24 10          	mov    0x10(%esp),%ecx
42aa8d:	8b 44 24 0c          	mov    0xc(%esp),%eax
42aa91:	33 d2                	xor    %edx,%edx
42aa93:	f7 f1                	div    %ecx
42aa95:	8b d8                	mov    %eax,%ebx
42aa97:	8b 44 24 08          	mov    0x8(%esp),%eax
42aa9b:	f7 f1                	div    %ecx
42aa9d:	8b f0                	mov    %eax,%esi
42aa9f:	8b c3                	mov    %ebx,%eax
42aaa1:	f7 64 24 10          	mull   0x10(%esp)
42aaa5:	8b c8                	mov    %eax,%ecx
42aaa7:	8b c6                	mov    %esi,%eax
42aaa9:	f7 64 24 10          	mull   0x10(%esp)
42aaad:	03 d1                	add    %ecx,%edx
42aaaf:	eb 47                	jmp    0x42aaf8
42aab1:	8b c8                	mov    %eax,%ecx
42aab3:	8b 5c 24 10          	mov    0x10(%esp),%ebx
42aab7:	8b 54 24 0c          	mov    0xc(%esp),%edx
42aabb:	8b 44 24 08          	mov    0x8(%esp),%eax
42aabf:	d1 e9                	shr    $1,%ecx
42aac1:	d1 db                	rcr    $1,%ebx
42aac3:	d1 ea                	shr    $1,%edx
42aac5:	d1 d8                	rcr    $1,%eax
42aac7:	0b c9                	or     %ecx,%ecx
42aac9:	75 f4                	jne    0x42aabf
42aacb:	f7 f3                	div    %ebx
42aacd:	8b f0                	mov    %eax,%esi
42aacf:	f7 64 24 14          	mull   0x14(%esp)
42aad3:	8b c8                	mov    %eax,%ecx
42aad5:	8b 44 24 10          	mov    0x10(%esp),%eax
42aad9:	f7 e6                	mul    %esi
42aadb:	03 d1                	add    %ecx,%edx
42aadd:	72 0e                	jb     0x42aaed
42aadf:	3b 54 24 0c          	cmp    0xc(%esp),%edx
42aae3:	77 08                	ja     0x42aaed
42aae5:	72 0f                	jb     0x42aaf6
42aae7:	3b 44 24 08          	cmp    0x8(%esp),%eax
42aaeb:	76 09                	jbe    0x42aaf6
42aaed:	4e                   	dec    %esi
42aaee:	2b 44 24 10          	sub    0x10(%esp),%eax
42aaf2:	1b 54 24 14          	sbb    0x14(%esp),%edx
42aaf6:	33 db                	xor    %ebx,%ebx
42aaf8:	2b 44 24 08          	sub    0x8(%esp),%eax
42aafc:	1b 54 24 0c          	sbb    0xc(%esp),%edx
42ab00:	f7 da                	neg    %edx
42ab02:	f7 d8                	neg    %eax
42ab04:	83 da 00             	sbb    $0x0,%edx
42ab07:	8b ca                	mov    %edx,%ecx
42ab09:	8b d3                	mov    %ebx,%edx
42ab0b:	8b d9                	mov    %ecx,%ebx
42ab0d:	8b c8                	mov    %eax,%ecx
42ab0f:	8b c6                	mov    %esi,%eax
42ab11:	5e                   	pop    %esi
42ab12:	c2 10 00             	ret    $0x10
42ab15:	55                   	push   %ebp
42ab16:	8b ec                	mov    %esp,%ebp
42ab18:	8b 45 0c             	mov    0xc(%ebp),%eax
42ab1b:	83 ec 0c             	sub    $0xc,%esp
42ab1e:	8b 4d 08             	mov    0x8(%ebp),%ecx
42ab21:	85 c0                	test   %eax,%eax
42ab23:	74 02                	je     0x42ab27
42ab25:	89 08                	mov    %ecx,(%eax)
42ab27:	85 c9                	test   %ecx,%ecx
42ab29:	75 17                	jne    0x42ab42
42ab2b:	e8 38 e2 ff ff       	call   0x428d68
42ab30:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
42ab36:	e8 bb e4 ff ff       	call   0x428ff6
42ab3b:	33 c0                	xor    %eax,%eax
42ab3d:	e9 b0 01 00 00       	jmp    0x42acf2
42ab42:	8b 45 10             	mov    0x10(%ebp),%eax
42ab45:	85 c0                	test   %eax,%eax
42ab47:	74 0a                	je     0x42ab53
42ab49:	83 f8 02             	cmp    $0x2,%eax
42ab4c:	7c dd                	jl     0x42ab2b
42ab4e:	83 f8 24             	cmp    $0x24,%eax
42ab51:	7f d8                	jg     0x42ab2b
42ab53:	53                   	push   %ebx
42ab54:	56                   	push   %esi
42ab55:	57                   	push   %edi
42ab56:	0f b7 39             	movzwl (%ecx),%edi
42ab59:	8d 71 02             	lea    0x2(%ecx),%esi
42ab5c:	33 db                	xor    %ebx,%ebx
42ab5e:	eb 06                	jmp    0x42ab66
42ab60:	0f b7 3e             	movzwl (%esi),%edi
42ab63:	83 c6 02             	add    $0x2,%esi
42ab66:	6a 08                	push   $0x8
42ab68:	57                   	push   %edi
42ab69:	e8 9a 04 00 00       	call   0x42b008
42ab6e:	59                   	pop    %ecx
42ab6f:	59                   	pop    %ecx
42ab70:	85 c0                	test   %eax,%eax
42ab72:	75 ec                	jne    0x42ab60
42ab74:	8b 45 14             	mov    0x14(%ebp),%eax
42ab77:	66 83 ff 2d          	cmp    $0x2d,%di
42ab7b:	75 05                	jne    0x42ab82
42ab7d:	83 c8 02             	or     $0x2,%eax
42ab80:	eb 06                	jmp    0x42ab88
42ab82:	66 83 ff 2b          	cmp    $0x2b,%di
42ab86:	75 06                	jne    0x42ab8e
42ab88:	0f b7 3e             	movzwl (%esi),%edi
42ab8b:	83 c6 02             	add    $0x2,%esi
42ab8e:	89 45 fc             	mov    %eax,-0x4(%ebp)
42ab91:	8b 45 10             	mov    0x10(%ebp),%eax
42ab94:	85 c0                	test   %eax,%eax
42ab96:	75 36                	jne    0x42abce
42ab98:	57                   	push   %edi
42ab99:	e8 71 b3 00 00       	call   0x435f0f
42ab9e:	59                   	pop    %ecx
42ab9f:	85 c0                	test   %eax,%eax
42aba1:	74 09                	je     0x42abac
42aba3:	c7 45 10 0a 00 00 00 	movl   $0xa,0x10(%ebp)
42abaa:	eb 4c                	jmp    0x42abf8
42abac:	0f b7 06             	movzwl (%esi),%eax
42abaf:	6a 78                	push   $0x78
42abb1:	59                   	pop    %ecx
42abb2:	66 3b c1             	cmp    %cx,%ax
42abb5:	74 11                	je     0x42abc8
42abb7:	6a 58                	push   $0x58
42abb9:	59                   	pop    %ecx
42abba:	66 3b c1             	cmp    %cx,%ax
42abbd:	74 09                	je     0x42abc8
42abbf:	c7 45 10 08 00 00 00 	movl   $0x8,0x10(%ebp)
42abc6:	eb 30                	jmp    0x42abf8
42abc8:	6a 10                	push   $0x10
42abca:	58                   	pop    %eax
42abcb:	89 45 10             	mov    %eax,0x10(%ebp)
42abce:	83 f8 10             	cmp    $0x10,%eax
42abd1:	75 25                	jne    0x42abf8
42abd3:	57                   	push   %edi
42abd4:	e8 36 b3 00 00       	call   0x435f0f
42abd9:	59                   	pop    %ecx
42abda:	85 c0                	test   %eax,%eax
42abdc:	75 1a                	jne    0x42abf8
42abde:	0f b7 06             	movzwl (%esi),%eax
42abe1:	6a 78                	push   $0x78
42abe3:	59                   	pop    %ecx
42abe4:	66 3b c1             	cmp    %cx,%ax
42abe7:	74 08                	je     0x42abf1
42abe9:	6a 58                	push   $0x58
42abeb:	59                   	pop    %ecx
42abec:	66 3b c1             	cmp    %cx,%ax
42abef:	75 07                	jne    0x42abf8
42abf1:	0f b7 7e 02          	movzwl 0x2(%esi),%edi
42abf5:	83 c6 04             	add    $0x4,%esi
42abf8:	83 c8 ff             	or     $0xffffffff,%eax
42abfb:	33 d2                	xor    %edx,%edx
42abfd:	f7 75 10             	divl   0x10(%ebp)
42ac00:	89 55 f4             	mov    %edx,-0xc(%ebp)
42ac03:	89 45 f8             	mov    %eax,-0x8(%ebp)
42ac06:	57                   	push   %edi
42ac07:	e8 03 b3 00 00       	call   0x435f0f
42ac0c:	8b d0                	mov    %eax,%edx
42ac0e:	59                   	pop    %ecx
42ac0f:	83 fa ff             	cmp    $0xffffffff,%edx
42ac12:	75 48                	jne    0x42ac5c
42ac14:	6a 41                	push   $0x41
42ac16:	58                   	pop    %eax
42ac17:	66 3b c7             	cmp    %di,%ax
42ac1a:	77 06                	ja     0x42ac22
42ac1c:	66 83 ff 5a          	cmp    $0x5a,%di
42ac20:	76 26                	jbe    0x42ac48
42ac22:	6a 19                	push   $0x19
42ac24:	8d 47 9f             	lea    -0x61(%edi),%eax
42ac27:	59                   	pop    %ecx
42ac28:	66 3b c1             	cmp    %cx,%ax
42ac2b:	76 1e                	jbe    0x42ac4b
42ac2d:	8b 45 fc             	mov    -0x4(%ebp),%eax
42ac30:	8b 7d 0c             	mov    0xc(%ebp),%edi
42ac33:	83 ee 02             	sub    $0x2,%esi
42ac36:	a8 08                	test   $0x8,%al
42ac38:	75 5f                	jne    0x42ac99
42ac3a:	85 ff                	test   %edi,%edi
42ac3c:	74 03                	je     0x42ac41
42ac3e:	8b 75 08             	mov    0x8(%ebp),%esi
42ac41:	33 db                	xor    %ebx,%ebx
42ac43:	e9 99 00 00 00       	jmp    0x42ace1
42ac48:	6a 19                	push   $0x19
42ac4a:	59                   	pop    %ecx
42ac4b:	8d 47 9f             	lea    -0x61(%edi),%eax
42ac4e:	0f b7 d7             	movzwl %di,%edx
42ac51:	66 3b c1             	cmp    %cx,%ax
42ac54:	77 03                	ja     0x42ac59
42ac56:	83 ea 20             	sub    $0x20,%edx
42ac59:	83 c2 c9             	add    $0xffffffc9,%edx
42ac5c:	8b 4d 10             	mov    0x10(%ebp),%ecx
42ac5f:	8b 45 fc             	mov    -0x4(%ebp),%eax
42ac62:	3b d1                	cmp    %ecx,%edx
42ac64:	73 ca                	jae    0x42ac30
42ac66:	8b 7d f8             	mov    -0x8(%ebp),%edi
42ac69:	83 c8 08             	or     $0x8,%eax
42ac6c:	89 45 fc             	mov    %eax,-0x4(%ebp)
42ac6f:	3b df                	cmp    %edi,%ebx
42ac71:	72 16                	jb     0x42ac89
42ac73:	75 05                	jne    0x42ac7a
42ac75:	3b 55 f4             	cmp    -0xc(%ebp),%edx
42ac78:	76 0f                	jbe    0x42ac89
42ac7a:	8b 7d 0c             	mov    0xc(%ebp),%edi
42ac7d:	83 c8 04             	or     $0x4,%eax
42ac80:	89 45 fc             	mov    %eax,-0x4(%ebp)
42ac83:	85 ff                	test   %edi,%edi
42ac85:	74 ac                	je     0x42ac33
42ac87:	eb 05                	jmp    0x42ac8e
42ac89:	0f af d9             	imul   %ecx,%ebx
42ac8c:	03 da                	add    %edx,%ebx
42ac8e:	0f b7 3e             	movzwl (%esi),%edi
42ac91:	83 c6 02             	add    $0x2,%esi
42ac94:	e9 6d ff ff ff       	jmp    0x42ac06
42ac99:	a8 04                	test   $0x4,%al
42ac9b:	75 1f                	jne    0x42acbc
42ac9d:	a8 01                	test   $0x1,%al
42ac9f:	75 40                	jne    0x42ace1
42aca1:	8b c8                	mov    %eax,%ecx
42aca3:	83 e1 02             	and    $0x2,%ecx
42aca6:	74 08                	je     0x42acb0
42aca8:	81 fb 00 00 00 80    	cmp    $0x80000000,%ebx
42acae:	77 0c                	ja     0x42acbc
42acb0:	85 c9                	test   %ecx,%ecx
42acb2:	75 2d                	jne    0x42ace1
42acb4:	81 fb ff ff ff 7f    	cmp    $0x7fffffff,%ebx
42acba:	76 25                	jbe    0x42ace1
42acbc:	e8 a7 e0 ff ff       	call   0x428d68
42acc1:	c7 00 22 00 00 00    	movl   $0x22,(%eax)
42acc7:	8b 45 fc             	mov    -0x4(%ebp),%eax
42acca:	a8 01                	test   $0x1,%al
42accc:	74 05                	je     0x42acd3
42acce:	83 cb ff             	or     $0xffffffff,%ebx
42acd1:	eb 0e                	jmp    0x42ace1
42acd3:	a8 02                	test   $0x2,%al
42acd5:	6a 00                	push   $0x0
42acd7:	5b                   	pop    %ebx
42acd8:	0f 95 c3             	setne  %bl
42acdb:	81 c3 ff ff ff 7f    	add    $0x7fffffff,%ebx
42ace1:	85 ff                	test   %edi,%edi
42ace3:	74 02                	je     0x42ace7
42ace5:	89 37                	mov    %esi,(%edi)
42ace7:	a8 02                	test   $0x2,%al
42ace9:	74 02                	je     0x42aced
42aceb:	f7 db                	neg    %ebx
42aced:	5f                   	pop    %edi
42acee:	5e                   	pop    %esi
42acef:	8b c3                	mov    %ebx,%eax
42acf1:	5b                   	pop    %ebx
42acf2:	8b e5                	mov    %ebp,%esp
42acf4:	5d                   	pop    %ebp
42acf5:	c3                   	ret
42acf6:	55                   	push   %ebp
42acf7:	8b ec                	mov    %esp,%ebp
42acf9:	6a 00                	push   $0x0
42acfb:	ff 75 10             	push   0x10(%ebp)
42acfe:	ff 75 0c             	push   0xc(%ebp)
42ad01:	ff 75 08             	push   0x8(%ebp)
42ad04:	e8 0c fe ff ff       	call   0x42ab15
42ad09:	83 c4 10             	add    $0x10,%esp
42ad0c:	5d                   	pop    %ebp
42ad0d:	c3                   	ret
42ad0e:	55                   	push   %ebp
42ad0f:	8b ec                	mov    %esp,%ebp
42ad11:	83 ec 34             	sub    $0x34,%esp
42ad14:	8d 4d cc             	lea    -0x34(%ebp),%ecx
42ad17:	ff 75 08             	push   0x8(%ebp)
42ad1a:	e8 96 83 ff ff       	call   0x4230b5
42ad1f:	8b 45 10             	mov    0x10(%ebp),%eax
42ad22:	8b 4d 0c             	mov    0xc(%ebp),%ecx
42ad25:	85 c0                	test   %eax,%eax
42ad27:	74 02                	je     0x42ad2b
42ad29:	89 08                	mov    %ecx,(%eax)
42ad2b:	53                   	push   %ebx
42ad2c:	56                   	push   %esi
42ad2d:	33 d2                	xor    %edx,%edx
42ad2f:	57                   	push   %edi
42ad30:	85 c9                	test   %ecx,%ecx
42ad32:	74 11                	je     0x42ad45
42ad34:	8b 45 14             	mov    0x14(%ebp),%eax
42ad37:	85 c0                	test   %eax,%eax
42ad39:	74 1f                	je     0x42ad5a
42ad3b:	83 f8 02             	cmp    $0x2,%eax
42ad3e:	7c 05                	jl     0x42ad45
42ad40:	83 f8 24             	cmp    $0x24,%eax
42ad43:	7e 15                	jle    0x42ad5a