4268b9:	c3                   	ret
4268ba:	8b ff                	mov    %edi,%edi
4268bc:	55                   	push   %ebp
4268bd:	8b ec                	mov    %esp,%ebp
4268bf:	51                   	push   %ecx
4268c0:	83 7d 14 0a          	cmpl   $0xa,0x14(%ebp)
4268c4:	75 0a                	jne    0x4268d0
4268c6:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
4268ca:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
4268ce:	7c 04                	jl     0x4268d4
4268d0:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
4268d4:	ff 75 fc             	push   -0x4(%ebp)
4268d7:	ff 75 14             	push   0x14(%ebp)
4268da:	ff 75 10             	push   0x10(%ebp)
4268dd:	ff 75 0c             	push   0xc(%ebp)
4268e0:	ff 75 08             	push   0x8(%ebp)
4268e3:	e8 60 ff ff ff       	call   0x426848
4268e8:	83 c4 14             	add    $0x14,%esp
4268eb:	c9                   	leave
4268ec:	c3                   	ret
4268ed:	8b ff                	mov    %edi,%edi
4268ef:	55                   	push   %ebp
4268f0:	8b ec                	mov    %esp,%ebp
4268f2:	6a 02                	push   $0x2
4268f4:	ff 75 0c             	push   0xc(%ebp)
4268f7:	ff 75 08             	push   0x8(%ebp)
4268fa:	ff 15 a0 f0 43 00    	call   *0x43f0a0
426900:	85 c0                	test   %eax,%eax
426902:	75 12                	jne    0x426916
426904:	ff 15 60 f0 43 00    	call   *0x43f060
42690a:	50                   	push   %eax
42690b:	e8 d6 fc ff ff       	call   0x4265e6
426910:	59                   	pop    %ecx
426911:	83 c8 ff             	or     $0xffffffff,%eax
426914:	5d                   	pop    %ebp
426915:	c3                   	ret
426916:	33 c0                	xor    %eax,%eax
426918:	5d                   	pop    %ebp
426919:	c3                   	ret
42691a:	8b ff                	mov    %edi,%edi
42691c:	55                   	push   %ebp
42691d:	8b ec                	mov    %esp,%ebp
42691f:	81 ec c4 00 00 00    	sub    $0xc4,%esp
426925:	a1 14 40 45 00       	mov    0x454014,%eax
42692a:	33 c5                	xor    %ebp,%eax
42692c:	89 45 fc             	mov    %eax,-0x4(%ebp)
42692f:	56                   	push   %esi
426930:	8b 75 08             	mov    0x8(%ebp),%esi
426933:	85 f6                	test   %esi,%esi
426935:	75 1e                	jne    0x426955
426937:	e8 04 fd ff ff       	call   0x426640
42693c:	6a 16                	push   $0x16
42693e:	5e                   	pop    %esi
42693f:	89 30                	mov    %esi,(%eax)
426941:	e8 29 a1 ff ff       	call   0x420a6f
426946:	8b c6                	mov    %esi,%eax
426948:	8b 4d fc             	mov    -0x4(%ebp),%ecx
42694b:	33 cd                	xor    %ebp,%ecx
42694d:	5e                   	pop    %esi
42694e:	e8 7d 4f ff ff       	call   0x41b8d0
426953:	c9                   	leave
426954:	c3                   	ret
426955:	53                   	push   %ebx
426956:	57                   	push   %edi
426957:	e8 69 76 00 00       	call   0x42dfc5
42695c:	8d 85 4c ff ff ff    	lea    -0xb4(%ebp),%eax
426962:	33 db                	xor    %ebx,%ebx
426964:	50                   	push   %eax
426965:	89 9d 4c ff ff ff    	mov    %ebx,-0xb4(%ebp)
42696b:	e8 2b 6d 00 00       	call   0x42d69b
426970:	59                   	pop    %ecx
426971:	85 c0                	test   %eax,%eax
426973:	0f 85 00 01 00 00    	jne    0x426a79
426979:	8b 85 4c ff ff ff    	mov    -0xb4(%ebp),%eax
42697f:	6a 3c                	push   $0x3c
426981:	99                   	cltd
426982:	59                   	pop    %ecx
426983:	f7 f9                	idiv   %ecx
426985:	66 89 46 0a          	mov    %ax,0xa(%esi)
426989:	8d 85 44 ff ff ff    	lea    -0xbc(%ebp),%eax
42698f:	50                   	push   %eax
426990:	e8 1a 87 00 00       	call   0x42f0af
426995:	8b bd 48 ff ff ff    	mov    -0xb8(%ebp),%edi
42699b:	53                   	push   %ebx
42699c:	8b 9d 44 ff ff ff    	mov    -0xbc(%ebp),%ebx
4269a2:	68 00 46 c3 23       	push   $0x23c34600
4269a7:	57                   	push   %edi
4269a8:	53                   	push   %ebx
4269a9:	e8 12 5b ff ff       	call   0x41c4c0
4269ae:	8b c8                	mov    %eax,%ecx
4269b0:	8b c2                	mov    %edx,%eax
4269b2:	89 8d 40 ff ff ff    	mov    %ecx,-0xc0(%ebp)
4269b8:	89 85 3c ff ff ff    	mov    %eax,-0xc4(%ebp)
4269be:	3b 0d 58 59 45 00    	cmp    0x455958,%ecx
4269c4:	75 0f                	jne    0x4269d5
4269c6:	3b 05 5c 59 45 00    	cmp    0x45595c,%eax
4269cc:	75 07                	jne    0x4269d5
4269ce:	a1 e4 40 45 00       	mov    0x4540e4,%eax
4269d3:	eb 58                	jmp    0x426a2d
4269d5:	8d 85 50 ff ff ff    	lea    -0xb0(%ebp),%eax
4269db:	50                   	push   %eax
4269dc:	ff 15 80 f1 43 00    	call   *0x43f180
4269e2:	8b c8                	mov    %eax,%ecx
4269e4:	83 c8 ff             	or     $0xffffffff,%eax
4269e7:	3b c8                	cmp    %eax,%ecx
4269e9:	74 19                	je     0x426a04
4269eb:	83 f9 02             	cmp    $0x2,%ecx
4269ee:	75 12                	jne    0x426a02
4269f0:	66 83 7d ea 00       	cmpw   $0x0,-0x16(%ebp)
4269f5:	74 0b                	je     0x426a02
4269f7:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
4269fb:	74 05                	je     0x426a02
4269fd:	33 c0                	xor    %eax,%eax
4269ff:	40                   	inc    %eax
426a00:	eb 02                	jmp    0x426a04
426a02:	33 c0                	xor    %eax,%eax
426a04:	8b 8d 40 ff ff ff    	mov    -0xc0(%ebp),%ecx
426a0a:	8b bd 48 ff ff ff    	mov    -0xb8(%ebp),%edi
426a10:	8b 9d 44 ff ff ff    	mov    -0xbc(%ebp),%ebx
426a16:	89 0d 58 59 45 00    	mov    %ecx,0x455958
426a1c:	8b 8d 3c ff ff ff    	mov    -0xc4(%ebp),%ecx
426a22:	a3 e4 40 45 00       	mov    %eax,0x4540e4
426a27:	89 0d 5c 59 45 00    	mov    %ecx,0x45595c
426a2d:	6a 00                	push   $0x0
426a2f:	68 10 27 00 00       	push   $0x2710
426a34:	57                   	push   %edi
426a35:	53                   	push   %ebx
426a36:	66 89 46 0c          	mov    %ax,0xc(%esi)
426a3a:	e8 81 5a ff ff       	call   0x41c4c0
426a3f:	6a 00                	push   $0x0
426a41:	68 e8 03 00 00       	push   $0x3e8
426a46:	52                   	push   %edx
426a47:	50                   	push   %eax
426a48:	e8 c3 56 01 00       	call   0x43c110
426a4d:	6a 00                	push   $0x0
426a4f:	81 c3 00 80 c1 2a    	add    $0x2ac18000,%ebx
426a55:	66 89 46 08          	mov    %ax,0x8(%esi)
426a59:	68 80 96 98 00       	push   $0x989680
426a5e:	81 d7 21 4e 62 fe    	adc    $0xfe624e21,%edi
426a64:	57                   	push   %edi
426a65:	53                   	push   %ebx
426a66:	e8 55 5a ff ff       	call   0x41c4c0
426a6b:	5f                   	pop    %edi
426a6c:	89 06                	mov    %eax,(%esi)
426a6e:	33 c0                	xor    %eax,%eax
426a70:	89 56 04             	mov    %edx,0x4(%esi)
426a73:	5b                   	pop    %ebx
426a74:	e9 cf fe ff ff       	jmp    0x426948
426a79:	53                   	push   %ebx
426a7a:	53                   	push   %ebx
426a7b:	53                   	push   %ebx
426a7c:	53                   	push   %ebx
426a7d:	53                   	push   %ebx
426a7e:	e8 19 a0 ff ff       	call   0x420a9c
426a83:	cc                   	int3
426a84:	8b ff                	mov    %edi,%edi
426a86:	55                   	push   %ebp
426a87:	8b ec                	mov    %esp,%ebp
426a89:	5d                   	pop    %ebp
426a8a:	e9 8b fe ff ff       	jmp    0x42691a
426a8f:	cc                   	int3
426a90:	8b ff                	mov    %edi,%edi
426a92:	55                   	push   %ebp
426a93:	8b ec                	mov    %esp,%ebp
426a95:	81 ec 20 02 00 00    	sub    $0x220,%esp
426a9b:	8b 4d 08             	mov    0x8(%ebp),%ecx
426a9e:	53                   	push   %ebx
426a9f:	56                   	push   %esi
426aa0:	57                   	push   %edi
426aa1:	8b 01                	mov    (%ecx),%eax
426aa3:	89 45 f8             	mov    %eax,-0x8(%ebp)
426aa6:	85 c0                	test   %eax,%eax
426aa8:	0f 84 82 04 00 00    	je     0x426f30
426aae:	8b 7d 0c             	mov    0xc(%ebp),%edi
426ab1:	8b 37                	mov    (%edi),%esi
426ab3:	89 75 ec             	mov    %esi,-0x14(%ebp)
426ab6:	85 f6                	test   %esi,%esi
426ab8:	0f 84 72 04 00 00    	je     0x426f30
426abe:	48                   	dec    %eax
426abf:	89 45 f4             	mov    %eax,-0xc(%ebp)
426ac2:	83 c6 ff             	add    $0xffffffff,%esi
426ac5:	0f 85 3e 01 00 00    	jne    0x426c09
426acb:	8b 5f 04             	mov    0x4(%edi),%ebx
426ace:	83 fb 01             	cmp    $0x1,%ebx
426ad1:	75 3b                	jne    0x426b0e
426ad3:	8b 55 08             	mov    0x8(%ebp),%edx
426ad6:	8d 85 e4 fd ff ff    	lea    -0x21c(%ebp),%eax
426adc:	8b 71 04             	mov    0x4(%ecx),%esi
426adf:	83 c1 04             	add    $0x4,%ecx
426ae2:	6a 00                	push   $0x0
426ae4:	50                   	push   %eax
426ae5:	68 cc 01 00 00       	push   $0x1cc
426aea:	51                   	push   %ecx
426aeb:	c7 85 e0 fd ff ff 00 	movl   $0x0,-0x220(%ebp)
426af2:	00 00 00
426af5:	c7 02 00 00 00 00    	movl   $0x0,(%edx)
426afb:	e8 f5 f8 ff ff       	call   0x4263f5
426b00:	83 c4 10             	add    $0x10,%esp
426b03:	8b c6                	mov    %esi,%eax
426b05:	33 d2                	xor    %edx,%edx
426b07:	5f                   	pop    %edi
426b08:	5e                   	pop    %esi
426b09:	5b                   	pop    %ebx
426b0a:	8b e5                	mov    %ebp,%esp
426b0c:	5d                   	pop    %ebp
426b0d:	c3                   	ret
426b0e:	85 c0                	test   %eax,%eax
426b10:	75 48                	jne    0x426b5a
426b12:	8b 79 04             	mov    0x4(%ecx),%edi
426b15:	8d 71 04             	lea    0x4(%ecx),%esi
426b18:	50                   	push   %eax
426b19:	89 85 e0 fd ff ff    	mov    %eax,-0x220(%ebp)
426b1f:	89 01                	mov    %eax,(%ecx)
426b21:	8d 85 e4 fd ff ff    	lea    -0x21c(%ebp),%eax
426b27:	50                   	push   %eax
426b28:	68 cc 01 00 00       	push   $0x1cc
426b2d:	56                   	push   %esi
426b2e:	e8 c2 f8 ff ff       	call   0x4263f5
426b33:	33 d2                	xor    %edx,%edx
426b35:	8b c7                	mov    %edi,%eax
426b37:	f7 f3                	div    %ebx
426b39:	83 c4 10             	add    $0x10,%esp
426b3c:	33 c0                	xor    %eax,%eax
426b3e:	3b c2                	cmp    %edx,%eax
426b40:	89 16                	mov    %edx,(%esi)
426b42:	8b 55 08             	mov    0x8(%ebp),%edx
426b45:	8b c7                	mov    %edi,%eax
426b47:	1b c9                	sbb    %ecx,%ecx
426b49:	f7 d9                	neg    %ecx
426b4b:	5f                   	pop    %edi
426b4c:	89 0a                	mov    %ecx,(%edx)
426b4e:	33 d2                	xor    %edx,%edx
426b50:	f7 f3                	div    %ebx
426b52:	5e                   	pop    %esi
426b53:	33 d2                	xor    %edx,%edx
426b55:	5b                   	pop    %ebx
426b56:	8b e5                	mov    %ebp,%esp
426b58:	5d                   	pop    %ebp
426b59:	c3                   	ret
426b5a:	33 ff                	xor    %edi,%edi
426b5c:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
426b63:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
426b6a:	89 7d ec             	mov    %edi,-0x14(%ebp)
426b6d:	83 f8 ff             	cmp    $0xffffffff,%eax
426b70:	74 4a                	je     0x426bbc
426b72:	40                   	inc    %eax
426b73:	8d 04 81             	lea    (%ecx,%eax,4),%eax
426b76:	89 45 e8             	mov    %eax,-0x18(%ebp)
426b79:	8d a4 24 00 00 00 00 	lea    0x0(%esp),%esp
426b80:	6a 00                	push   $0x0
426b82:	53                   	push   %ebx
426b83:	33 f6                	xor    %esi,%esi
426b85:	0b 30                	or     (%eax),%esi
426b87:	57                   	push   %edi
426b88:	56                   	push   %esi
426b89:	e8 32 59 ff ff       	call   0x41c4c0
426b8e:	6a 00                	push   $0x0
426b90:	33 c9                	xor    %ecx,%ecx
426b92:	03 c1                	add    %ecx,%eax
426b94:	53                   	push   %ebx
426b95:	13 4d f4             	adc    -0xc(%ebp),%ecx
426b98:	57                   	push   %edi
426b99:	56                   	push   %esi
426b9a:	89 4d fc             	mov    %ecx,-0x4(%ebp)
426b9d:	89 45 f4             	mov    %eax,-0xc(%ebp)
426ba0:	e8 6b 55 01 00       	call   0x43c110
426ba5:	8b f8                	mov    %eax,%edi
426ba7:	89 55 ec             	mov    %edx,-0x14(%ebp)
426baa:	8b 45 e8             	mov    -0x18(%ebp),%eax
426bad:	83 e8 04             	sub    $0x4,%eax
426bb0:	83 6d f8 01          	subl   $0x1,-0x8(%ebp)
426bb4:	89 45 e8             	mov    %eax,-0x18(%ebp)
426bb7:	75 c7                	jne    0x426b80
426bb9:	8b 4d 08             	mov    0x8(%ebp),%ecx
426bbc:	6a 00                	push   $0x0
426bbe:	8d 85 e4 fd ff ff    	lea    -0x21c(%ebp),%eax
426bc4:	c7 85 e0 fd ff ff 00 	movl   $0x0,-0x220(%ebp)
426bcb:	00 00 00
426bce:	50                   	push   %eax
426bcf:	8d 71 04             	lea    0x4(%ecx),%esi
426bd2:	c7 01 00 00 00 00    	movl   $0x0,(%ecx)
426bd8:	68 cc 01 00 00       	push   $0x1cc
426bdd:	56                   	push   %esi
426bde:	e8 12 f8 ff ff       	call   0x4263f5
426be3:	8b 45 ec             	mov    -0x14(%ebp),%eax
426be6:	83 c4 10             	add    $0x10,%esp
426be9:	8b 55 08             	mov    0x8(%ebp),%edx
426bec:	33 c9                	xor    %ecx,%ecx
426bee:	3b c8                	cmp    %eax,%ecx
426bf0:	89 3e                	mov    %edi,(%esi)
426bf2:	1b c9                	sbb    %ecx,%ecx
426bf4:	f7 d9                	neg    %ecx
426bf6:	89 42 08             	mov    %eax,0x8(%edx)
426bf9:	8b 45 f4             	mov    -0xc(%ebp),%eax
426bfc:	41                   	inc    %ecx
426bfd:	5f                   	pop    %edi
426bfe:	5e                   	pop    %esi
426bff:	89 0a                	mov    %ecx,(%edx)
426c01:	8b 55 fc             	mov    -0x4(%ebp),%edx
426c04:	5b                   	pop    %ebx
426c05:	8b e5                	mov    %ebp,%esp
426c07:	5d                   	pop    %ebp
426c08:	c3                   	ret
426c09:	3b f0                	cmp    %eax,%esi
426c0b:	0f 87 1f 03 00 00    	ja     0x426f30
426c11:	8b d0                	mov    %eax,%edx
426c13:	8b d8                	mov    %eax,%ebx
426c15:	2b d6                	sub    %esi,%edx
426c17:	3b da                	cmp    %edx,%ebx
426c19:	7c 1f                	jl     0x426c3a
426c1b:	8d 0c 99             	lea    (%ecx,%ebx,4),%ecx
426c1e:	83 c1 04             	add    $0x4,%ecx
426c21:	46                   	inc    %esi
426c22:	8d 34 b7             	lea    (%edi,%esi,4),%esi
426c25:	8b 3e                	mov    (%esi),%edi
426c27:	3b 39                	cmp    (%ecx),%edi
426c29:	75 0d                	jne    0x426c38
426c2b:	48                   	dec    %eax
426c2c:	83 ee 04             	sub    $0x4,%esi
426c2f:	83 e9 04             	sub    $0x4,%ecx
426c32:	3b c2                	cmp    %edx,%eax
426c34:	7d ef                	jge    0x426c25
426c36:	eb 02                	jmp    0x426c3a
426c38:	73 01                	jae    0x426c3b
426c3a:	42                   	inc    %edx
426c3b:	85 d2                	test   %edx,%edx
426c3d:	0f 84 ed 02 00 00    	je     0x426f30
426c43:	8b 7d ec             	mov    -0x14(%ebp),%edi
426c46:	8b 75 0c             	mov    0xc(%ebp),%esi
426c49:	8b 44 be fc          	mov    -0x4(%esi,%edi,4),%eax
426c4d:	8b 1c be             	mov    (%esi,%edi,4),%ebx
426c50:	89 45 e0             	mov    %eax,-0x20(%ebp)
426c53:	0f bd c3             	bsr    %ebx,%eax
426c56:	89 5d d0             	mov    %ebx,-0x30(%ebp)
426c59:	74 09                	je     0x426c64
426c5b:	b9 1f 00 00 00       	mov    $0x1f,%ecx
426c60:	2b c8                	sub    %eax,%ecx
426c62:	eb 05                	jmp    0x426c69
426c64:	b9 20 00 00 00       	mov    $0x20,%ecx
426c69:	b8 20 00 00 00       	mov    $0x20,%eax
426c6e:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
426c71:	2b c1                	sub    %ecx,%eax
426c73:	89 45 d4             	mov    %eax,-0x2c(%ebp)
426c76:	85 c9                	test   %ecx,%ecx
426c78:	74 2d                	je     0x426ca7
426c7a:	8b 45 e0             	mov    -0x20(%ebp),%eax
426c7d:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
426c80:	d3 e8                	shr    %cl,%eax
426c82:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
426c85:	d3 e3                	shl    %cl,%ebx