43ab09:	59                   	pop    %ecx
43ab0a:	59                   	pop    %ecx
43ab0b:	5d                   	pop    %ebp
43ab0c:	c2 04 00             	ret    $0x4
43ab0f:	55                   	push   %ebp
43ab10:	8b ec                	mov    %esp,%ebp
43ab12:	51                   	push   %ecx
43ab13:	8b 45 0c             	mov    0xc(%ebp),%eax
43ab16:	53                   	push   %ebx
43ab17:	56                   	push   %esi
43ab18:	8b 75 08             	mov    0x8(%ebp),%esi
43ab1b:	33 db                	xor    %ebx,%ebx
43ab1d:	2b c6                	sub    %esi,%eax
43ab1f:	40                   	inc    %eax
43ab20:	d1 e8                	shr    $1,%eax
43ab22:	39 75 0c             	cmp    %esi,0xc(%ebp)
43ab25:	57                   	push   %edi
43ab26:	1b ff                	sbb    %edi,%edi
43ab28:	f7 d7                	not    %edi
43ab2a:	23 f8                	and    %eax,%edi
43ab2c:	74 20                	je     0x43ab4e
43ab2e:	8d 41 08             	lea    0x8(%ecx),%eax
43ab31:	89 45 fc             	mov    %eax,-0x4(%ebp)
43ab34:	50                   	push   %eax
43ab35:	0f b7 06             	movzwl (%esi),%eax
43ab38:	50                   	push   %eax
43ab39:	e8 55 ba fe ff       	call   0x426593
43ab3e:	66 89 06             	mov    %ax,(%esi)
43ab41:	83 c6 02             	add    $0x2,%esi
43ab44:	8b 45 fc             	mov    -0x4(%ebp),%eax
43ab47:	43                   	inc    %ebx
43ab48:	59                   	pop    %ecx
43ab49:	59                   	pop    %ecx
43ab4a:	3b df                	cmp    %edi,%ebx
43ab4c:	75 e6                	jne    0x43ab34
43ab4e:	5f                   	pop    %edi
43ab4f:	8b c6                	mov    %esi,%eax
43ab51:	5e                   	pop    %esi
43ab52:	5b                   	pop    %ebx
43ab53:	c9                   	leave
43ab54:	c2 08 00             	ret    $0x8
43ab57:	55                   	push   %ebp
43ab58:	8b ec                	mov    %esp,%ebp
43ab5a:	8d 41 08             	lea    0x8(%ecx),%eax
43ab5d:	50                   	push   %eax
43ab5e:	ff 75 08             	push   0x8(%ebp)
43ab61:	e8 8d ba fe ff       	call   0x4265f3
43ab66:	59                   	pop    %ecx
43ab67:	59                   	pop    %ecx
43ab68:	5d                   	pop    %ebp
43ab69:	c2 04 00             	ret    $0x4
43ab6c:	55                   	push   %ebp
43ab6d:	8b ec                	mov    %esp,%ebp
43ab6f:	51                   	push   %ecx
43ab70:	8b 45 0c             	mov    0xc(%ebp),%eax
43ab73:	53                   	push   %ebx
43ab74:	56                   	push   %esi
43ab75:	8b 75 08             	mov    0x8(%ebp),%esi
43ab78:	33 db                	xor    %ebx,%ebx
43ab7a:	2b c6                	sub    %esi,%eax
43ab7c:	40                   	inc    %eax
43ab7d:	d1 e8                	shr    $1,%eax
43ab7f:	39 75 0c             	cmp    %esi,0xc(%ebp)
43ab82:	57                   	push   %edi
43ab83:	1b ff                	sbb    %edi,%edi
43ab85:	f7 d7                	not    %edi
43ab87:	23 f8                	and    %eax,%edi
43ab89:	74 20                	je     0x43abab
43ab8b:	8d 41 08             	lea    0x8(%ecx),%eax
43ab8e:	89 45 fc             	mov    %eax,-0x4(%ebp)
43ab91:	50                   	push   %eax
43ab92:	0f b7 06             	movzwl (%esi),%eax
43ab95:	50                   	push   %eax
43ab96:	e8 58 ba fe ff       	call   0x4265f3
43ab9b:	66 89 06             	mov    %ax,(%esi)
43ab9e:	83 c6 02             	add    $0x2,%esi
43aba1:	8b 45 fc             	mov    -0x4(%ebp),%eax
43aba4:	43                   	inc    %ebx
43aba5:	59                   	pop    %ecx
43aba6:	59                   	pop    %ecx
43aba7:	3b df                	cmp    %edi,%ebx
43aba9:	75 e6                	jne    0x43ab91
43abab:	5f                   	pop    %edi
43abac:	8b c6                	mov    %esi,%eax
43abae:	5e                   	pop    %esi
43abaf:	5b                   	pop    %ebx
43abb0:	c9                   	leave
43abb1:	c2 08 00             	ret    $0x8
43abb4:	6a 04                	push   $0x4
43abb6:	b8 bd 28 49 00       	mov    $0x4928bd,%eax
43abbb:	e8 8a 4e 00 00       	call   0x43fa4a
43abc0:	33 db                	xor    %ebx,%ebx
43abc2:	33 c0                	xor    %eax,%eax
43abc4:	89 5d f0             	mov    %ebx,-0x10(%ebp)
43abc7:	8b 75 08             	mov    0x8(%ebp),%esi
43abca:	89 5e 10             	mov    %ebx,0x10(%esi)
43abcd:	c7 46 14 07 00 00 00 	movl   $0x7,0x14(%esi)
43abd4:	66 89 06             	mov    %ax,(%esi)
43abd7:	8b 45 10             	mov    0x10(%ebp),%eax
43abda:	2b 45 0c             	sub    0xc(%ebp),%eax
43abdd:	d1 f8                	sar    $1,%eax
43abdf:	89 5d fc             	mov    %ebx,-0x4(%ebp)
43abe2:	c7 45 f0 01 00 00 00 	movl   $0x1,-0x10(%ebp)
43abe9:	74 3c                	je     0x43ac27
43abeb:	8d 79 08             	lea    0x8(%ecx),%edi
43abee:	53                   	push   %ebx
43abef:	50                   	push   %eax
43abf0:	8b ce                	mov    %esi,%ecx
43abf2:	e8 4e 08 00 00       	call   0x43b445
43abf7:	83 7e 14 08          	cmpl   $0x8,0x14(%esi)
43abfb:	8b d6                	mov    %esi,%edx
43abfd:	72 02                	jb     0x43ac01
43abff:	8b 16                	mov    (%esi),%edx
43ac01:	8b ce                	mov    %esi,%ecx
43ac03:	72 02                	jb     0x43ac07
43ac05:	8b 0e                	mov    (%esi),%ecx
43ac07:	8b 46 10             	mov    0x10(%esi),%eax
43ac0a:	57                   	push   %edi
43ac0b:	ff 75 10             	push   0x10(%ebp)
43ac0e:	ff 75 0c             	push   0xc(%ebp)
43ac11:	8d 04 42             	lea    (%edx,%eax,2),%eax
43ac14:	50                   	push   %eax
43ac15:	51                   	push   %ecx
43ac16:	e8 21 31 ff ff       	call   0x42dd3c
43ac1b:	83 c4 14             	add    $0x14,%esp
43ac1e:	3b 46 10             	cmp    0x10(%esi),%eax
43ac21:	76 04                	jbe    0x43ac27
43ac23:	85 c0                	test   %eax,%eax
43ac25:	75 c7                	jne    0x43abee
43ac27:	53                   	push   %ebx
43ac28:	50                   	push   %eax
43ac29:	8b ce                	mov    %esi,%ecx
43ac2b:	e8 15 08 00 00       	call   0x43b445
43ac30:	8b c6                	mov    %esi,%eax
43ac32:	e8 dc 4d 00 00       	call   0x43fa13
43ac37:	c2 0c 00             	ret    $0xc
43ac3a:	55                   	push   %ebp
43ac3b:	8b ec                	mov    %esp,%ebp
43ac3d:	ff 71 14             	push   0x14(%ecx)
43ac40:	8b 4d 08             	mov    0x8(%ebp),%ecx
43ac43:	e8 54 4c ff ff       	call   0x42f89c
43ac48:	8b 45 08             	mov    0x8(%ebp),%eax
43ac4b:	5d                   	pop    %ebp
43ac4c:	c2 04 00             	ret    $0x4
43ac4f:	55                   	push   %ebp
43ac50:	8b ec                	mov    %esp,%ebp
43ac52:	83 ec 18             	sub    $0x18,%esp
43ac55:	a1 94 80 4b 00       	mov    0x4b8094,%eax
43ac5a:	33 c5                	xor    %ebp,%eax
43ac5c:	89 45 fc             	mov    %eax,-0x4(%ebp)
43ac5f:	8b 55 08             	mov    0x8(%ebp),%edx
43ac62:	8b 45 0c             	mov    0xc(%ebp),%eax
43ac65:	53                   	push   %ebx
43ac66:	8b 5d 14             	mov    0x14(%ebp),%ebx
43ac69:	56                   	push   %esi
43ac6a:	57                   	push   %edi
43ac6b:	33 ff                	xor    %edi,%edi
43ac6d:	89 55 f0             	mov    %edx,-0x10(%ebp)
43ac70:	89 03                	mov    %eax,(%ebx)
43ac72:	8b 02                	mov    (%edx),%eax
43ac74:	89 45 ec             	mov    %eax,-0x14(%ebp)
43ac77:	8b 42 04             	mov    0x4(%edx),%eax
43ac7a:	89 45 e8             	mov    %eax,-0x18(%ebp)
43ac7d:	8d 41 08             	lea    0x8(%ecx),%eax
43ac80:	50                   	push   %eax
43ac81:	52                   	push   %edx
43ac82:	8d 45 f4             	lea    -0xc(%ebp),%eax
43ac85:	57                   	push   %edi
43ac86:	50                   	push   %eax
43ac87:	e8 87 b3 fe ff       	call   0x426013
43ac8c:	8b f0                	mov    %eax,%esi
43ac8e:	83 c4 10             	add    $0x10,%esp
43ac91:	85 f6                	test   %esi,%esi
43ac93:	7f 05                	jg     0x43ac9a
43ac95:	6a 02                	push   $0x2
43ac97:	5f                   	pop    %edi
43ac98:	eb 32                	jmp    0x43accc
43ac9a:	8b 45 10             	mov    0x10(%ebp),%eax
43ac9d:	4e                   	dec    %esi
43ac9e:	2b 03                	sub    (%ebx),%eax
43aca0:	3b c6                	cmp    %esi,%eax
43aca2:	7d 13                	jge    0x43acb7
43aca4:	8b 45 f0             	mov    -0x10(%ebp),%eax
43aca7:	33 ff                	xor    %edi,%edi
43aca9:	8b 4d ec             	mov    -0x14(%ebp),%ecx
43acac:	47                   	inc    %edi
43acad:	89 08                	mov    %ecx,(%eax)
43acaf:	8b 4d e8             	mov    -0x18(%ebp),%ecx
43acb2:	89 48 04             	mov    %ecx,0x4(%eax)
43acb5:	eb 15                	jmp    0x43accc
43acb7:	85 f6                	test   %esi,%esi
43acb9:	7e 11                	jle    0x43accc
43acbb:	56                   	push   %esi
43acbc:	8d 45 f4             	lea    -0xc(%ebp),%eax
43acbf:	50                   	push   %eax
43acc0:	ff 33                	push   (%ebx)
43acc2:	e8 99 86 00 00       	call   0x443360
43acc7:	83 c4 0c             	add    $0xc,%esp
43acca:	01 33                	add    %esi,(%ebx)
43accc:	8b 4d fc             	mov    -0x4(%ebp),%ecx
43accf:	8b c7                	mov    %edi,%eax
43acd1:	5f                   	pop    %edi
43acd2:	5e                   	pop    %esi
43acd3:	33 cd                	xor    %ebp,%ecx
43acd5:	5b                   	pop    %ebx
43acd6:	e8 27 4d 00 00       	call   0x43fa02
43acdb:	c9                   	leave
43acdc:	c2 10 00             	ret    $0x10
43acdf:	55                   	push   %ebp
43ace0:	8b ec                	mov    %esp,%ebp
43ace2:	83 ec 18             	sub    $0x18,%esp
43ace5:	a1 94 80 4b 00       	mov    0x4b8094,%eax
43acea:	33 c5                	xor    %ebp,%eax
43acec:	89 45 fc             	mov    %eax,-0x4(%ebp)
43acef:	8b 55 08             	mov    0x8(%ebp),%edx
43acf2:	8b 45 0c             	mov    0xc(%ebp),%eax
43acf5:	53                   	push   %ebx
43acf6:	8b 5d 14             	mov    0x14(%ebp),%ebx
43acf9:	56                   	push   %esi
43acfa:	57                   	push   %edi
43acfb:	33 ff                	xor    %edi,%edi
43acfd:	89 55 f0             	mov    %edx,-0x10(%ebp)
43ad00:	89 03                	mov    %eax,(%ebx)
43ad02:	8b 02                	mov    (%edx),%eax
43ad04:	89 45 ec             	mov    %eax,-0x14(%ebp)
43ad07:	8b 42 04             	mov    0x4(%edx),%eax
43ad0a:	89 45 e8             	mov    %eax,-0x18(%ebp)
43ad0d:	8d 41 08             	lea    0x8(%ecx),%eax
43ad10:	50                   	push   %eax
43ad11:	52                   	push   %edx
43ad12:	8d 45 f4             	lea    -0xc(%ebp),%eax
43ad15:	57                   	push   %edi
43ad16:	50                   	push   %eax
43ad17:	e8 f7 b2 fe ff       	call   0x426013
43ad1c:	8b f0                	mov    %eax,%esi
43ad1e:	83 c4 10             	add    $0x10,%esp
43ad21:	85 f6                	test   %esi,%esi
43ad23:	7f 05                	jg     0x43ad2a
43ad25:	6a 02                	push   $0x2
43ad27:	5f                   	pop    %edi
43ad28:	eb 32                	jmp    0x43ad5c
43ad2a:	8b 45 10             	mov    0x10(%ebp),%eax
43ad2d:	4e                   	dec    %esi
43ad2e:	2b 03                	sub    (%ebx),%eax
43ad30:	3b c6                	cmp    %esi,%eax
43ad32:	7d 13                	jge    0x43ad47
43ad34:	8b 45 f0             	mov    -0x10(%ebp),%eax
43ad37:	33 ff                	xor    %edi,%edi
43ad39:	8b 4d ec             	mov    -0x14(%ebp),%ecx
43ad3c:	47                   	inc    %edi
43ad3d:	89 08                	mov    %ecx,(%eax)
43ad3f:	8b 4d e8             	mov    -0x18(%ebp),%ecx
43ad42:	89 48 04             	mov    %ecx,0x4(%eax)
43ad45:	eb 15                	jmp    0x43ad5c
43ad47:	85 f6                	test   %esi,%esi
43ad49:	7e 11                	jle    0x43ad5c
43ad4b:	56                   	push   %esi
43ad4c:	8d 45 f4             	lea    -0xc(%ebp),%eax
43ad4f:	50                   	push   %eax
43ad50:	ff 33                	push   (%ebx)
43ad52:	e8 09 86 00 00       	call   0x443360
43ad57:	83 c4 0c             	add    $0xc,%esp
43ad5a:	01 33                	add    %esi,(%ebx)
43ad5c:	8b 4d fc             	mov    -0x4(%ebp),%ecx
43ad5f:	8b c7                	mov    %edi,%eax
43ad61:	5f                   	pop    %edi
43ad62:	5e                   	pop    %esi
43ad63:	33 cd                	xor    %ebp,%ecx
43ad65:	5b                   	pop    %ebx
43ad66:	e8 97 4c 00 00       	call   0x43fa02
43ad6b:	c9                   	leave
43ad6c:	c2 10 00             	ret    $0x10
43ad6f:	55                   	push   %ebp
43ad70:	8b ec                	mov    %esp,%ebp
43ad72:	5d                   	pop    %ebp
43ad73:	e9 fa 5c ff ff       	jmp    0x430a72
43ad78:	55                   	push   %ebp
43ad79:	8b ec                	mov    %esp,%ebp
43ad7b:	51                   	push   %ecx
43ad7c:	51                   	push   %ecx
43ad7d:	8b 45 0c             	mov    0xc(%ebp),%eax
43ad80:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
43ad84:	56                   	push   %esi
43ad85:	8b 75 08             	mov    0x8(%ebp),%esi
43ad88:	2b c6                	sub    %esi,%eax
43ad8a:	39 75 0c             	cmp    %esi,0xc(%ebp)
43ad8d:	57                   	push   %edi
43ad8e:	1b ff                	sbb    %edi,%edi
43ad90:	89 4d f8             	mov    %ecx,-0x8(%ebp)
43ad93:	f7 d7                	not    %edi
43ad95:	23 f8                	and    %eax,%edi
43ad97:	74 23                	je     0x43adbc
43ad99:	53                   	push   %ebx
43ad9a:	8b 5d 10             	mov    0x10(%ebp),%ebx
43ad9d:	0f b6 06             	movzbl (%esi),%eax
43ada0:	50                   	push   %eax
43ada1:	e8 cc 5c ff ff       	call   0x430a72
43ada6:	8b 4d f8             	mov    -0x8(%ebp),%ecx
43ada9:	46                   	inc    %esi
43adaa:	66 89 03             	mov    %ax,(%ebx)
43adad:	8d 5b 02             	lea    0x2(%ebx),%ebx
43adb0:	8b 45 fc             	mov    -0x4(%ebp),%eax
43adb3:	40                   	inc    %eax
43adb4:	89 45 fc             	mov    %eax,-0x4(%ebp)
43adb7:	3b c7                	cmp    %edi,%eax
43adb9:	75 e2                	jne    0x43ad9d
43adbb:	5b                   	pop    %ebx
43adbc:	5f                   	pop    %edi
43adbd:	8b c6                	mov    %esi,%eax
43adbf:	5e                   	pop    %esi
43adc0:	c9                   	leave
43adc1:	c2 0c 00             	ret    $0xc
43adc4:	83 79 10 00          	cmpl   $0x0,0x10(%ecx)
43adc8:	0f 94 c0             	sete   %al
43adcb:	c3                   	ret
43adcc:	83 79 10 00          	cmpl   $0x0,0x10(%ecx)
43add0:	0f 94 c0             	sete   %al
43add3:	c3                   	ret
43add4:	55                   	push   %ebp
43add5:	8b ec                	mov    %esp,%ebp
43add7:	83 79 14 08          	cmpl   $0x8,0x14(%ecx)
43addb:	8b d1                	mov    %ecx,%edx
43addd:	72 02                	jb     0x43ade1
43addf:	8b 11                	mov    (%ecx),%edx
43ade1:	8b 41 10             	mov    0x10(%ecx),%eax
43ade4:	8d 0c 42             	lea    (%edx,%eax,2),%ecx
43ade7:	8b 45 08             	mov    0x8(%ebp),%eax
43adea:	89 08                	mov    %ecx,(%eax)
43adec:	5d                   	pop    %ebp
43aded:	c2 04 00             	ret    $0x4
43adf0:	55                   	push   %ebp
43adf1:	8b ec                	mov    %esp,%ebp
43adf3:	83 79 14 08          	cmpl   $0x8,0x14(%ecx)
43adf7:	8b d1                	mov    %ecx,%edx
43adf9:	72 02                	jb     0x43adfd
43adfb:	8b 11                	mov    (%ecx),%edx
43adfd:	8b 41 10             	mov    0x10(%ecx),%eax
43ae00:	8d 0c 42             	lea    (%edx,%eax,2),%ecx
43ae03:	8b 45 08             	mov    0x8(%ebp),%eax
43ae06:	89 08                	mov    %ecx,(%eax)
43ae08:	5d                   	pop    %ebp
43ae09:	c2 04 00             	ret    $0x4
43ae0c:	b8 ff ff 00 00       	mov    $0xffff,%eax
43ae11:	c3                   	ret
43ae12:	b8 ff ff 00 00       	mov    $0xffff,%eax
43ae17:	c3                   	ret
43ae18:	55                   	push   %ebp
43ae19:	8b ec                	mov    %esp,%ebp
43ae1b:	8b 45 08             	mov    0x8(%ebp),%eax
43ae1e:	66 8b 08             	mov    (%eax),%cx