43edd8:	33 c0                	xor    %eax,%eax
43edda:	eb 7b                	jmp    0x43ee57
43eddc:	8b 45 08             	mov    0x8(%ebp),%eax
43eddf:	3b c3                	cmp    %ebx,%eax
43ede1:	74 03                	je     0x43ede6
43ede3:	83 08 ff             	orl    $0xffffffff,(%eax)
43ede6:	81 ff ff ff ff 7f    	cmp    $0x7fffffff,%edi
43edec:	76 13                	jbe    0x43ee01
43edee:	e8 b5 5b ff ff       	call   0x4349a8
43edf3:	6a 16                	push   $0x16
43edf5:	5e                   	pop    %esi
43edf6:	89 30                	mov    %esi,(%eax)
43edf8:	e8 71 55 ff ff       	call   0x43436e
43edfd:	8b c6                	mov    %esi,%eax
43edff:	eb 56                	jmp    0x43ee57
43ee01:	ff 75 18             	push   0x18(%ebp)
43ee04:	8d 4d f0             	lea    -0x10(%ebp),%ecx
43ee07:	e8 de 1d ff ff       	call   0x430bea
43ee0c:	8b 45 f0             	mov    -0x10(%ebp),%eax
43ee0f:	39 58 14             	cmp    %ebx,0x14(%eax)
43ee12:	0f 85 90 00 00 00    	jne    0x43eea8
43ee18:	66 8b 45 14          	mov    0x14(%ebp),%ax
43ee1c:	b9 ff 00 00 00       	mov    $0xff,%ecx
43ee21:	66 3b c1             	cmp    %cx,%ax
43ee24:	76 36                	jbe    0x43ee5c
43ee26:	3b f3                	cmp    %ebx,%esi
43ee28:	74 0f                	je     0x43ee39
43ee2a:	3b fb                	cmp    %ebx,%edi
43ee2c:	76 0b                	jbe    0x43ee39
43ee2e:	57                   	push   %edi
43ee2f:	53                   	push   %ebx
43ee30:	56                   	push   %esi
43ee31:	e8 3a 1d ff ff       	call   0x430b70
43ee36:	83 c4 0c             	add    $0xc,%esp
43ee39:	e8 6a 5b ff ff       	call   0x4349a8
43ee3e:	c7 00 2a 00 00 00    	movl   $0x2a,(%eax)
43ee44:	e8 5f 5b ff ff       	call   0x4349a8
43ee49:	8b 00                	mov    (%eax),%eax
43ee4b:	38 5d fc             	cmp    %bl,-0x4(%ebp)
43ee4e:	74 07                	je     0x43ee57
43ee50:	8b 4d f8             	mov    -0x8(%ebp),%ecx
43ee53:	83 61 70 fd          	andl   $0xfffffffd,0x70(%ecx)
43ee57:	5f                   	pop    %edi
43ee58:	5e                   	pop    %esi
43ee59:	5b                   	pop    %ebx
43ee5a:	c9                   	leave
43ee5b:	c3                   	ret
43ee5c:	3b f3                	cmp    %ebx,%esi
43ee5e:	74 26                	je     0x43ee86
43ee60:	3b fb                	cmp    %ebx,%edi
43ee62:	77 20                	ja     0x43ee84
43ee64:	e8 3f 5b ff ff       	call   0x4349a8
43ee69:	6a 22                	push   $0x22
43ee6b:	5e                   	pop    %esi
43ee6c:	89 30                	mov    %esi,(%eax)
43ee6e:	e8 fb 54 ff ff       	call   0x43436e
43ee73:	38 5d fc             	cmp    %bl,-0x4(%ebp)
43ee76:	74 85                	je     0x43edfd
43ee78:	8b 45 f8             	mov    -0x8(%ebp),%eax
43ee7b:	83 60 70 fd          	andl   $0xfffffffd,0x70(%eax)
43ee7f:	e9 79 ff ff ff       	jmp    0x43edfd
43ee84:	88 06                	mov    %al,(%esi)
43ee86:	8b 45 08             	mov    0x8(%ebp),%eax
43ee89:	3b c3                	cmp    %ebx,%eax
43ee8b:	74 06                	je     0x43ee93
43ee8d:	c7 00 01 00 00 00    	movl   $0x1,(%eax)
43ee93:	38 5d fc             	cmp    %bl,-0x4(%ebp)
43ee96:	0f 84 3c ff ff ff    	je     0x43edd8
43ee9c:	8b 45 f8             	mov    -0x8(%ebp),%eax
43ee9f:	83 60 70 fd          	andl   $0xfffffffd,0x70(%eax)
43eea3:	e9 30 ff ff ff       	jmp    0x43edd8
43eea8:	8d 4d 0c             	lea    0xc(%ebp),%ecx
43eeab:	51                   	push   %ecx
43eeac:	53                   	push   %ebx
43eead:	57                   	push   %edi
43eeae:	56                   	push   %esi
43eeaf:	6a 01                	push   $0x1
43eeb1:	8d 4d 14             	lea    0x14(%ebp),%ecx
43eeb4:	51                   	push   %ecx
43eeb5:	53                   	push   %ebx
43eeb6:	89 5d 0c             	mov    %ebx,0xc(%ebp)
43eeb9:	ff 70 04             	push   0x4(%eax)
43eebc:	ff 15 68 35 47 00    	call   *0x473568
43eec2:	3b c3                	cmp    %ebx,%eax
43eec4:	74 14                	je     0x43eeda
43eec6:	39 5d 0c             	cmp    %ebx,0xc(%ebp)
43eec9:	0f 85 6a ff ff ff    	jne    0x43ee39
43eecf:	8b 4d 08             	mov    0x8(%ebp),%ecx
43eed2:	3b cb                	cmp    %ebx,%ecx
43eed4:	74 bd                	je     0x43ee93
43eed6:	89 01                	mov    %eax,(%ecx)
43eed8:	eb b9                	jmp    0x43ee93
43eeda:	ff 15 24 34 47 00    	call   *0x473424
43eee0:	83 f8 7a             	cmp    $0x7a,%eax
43eee3:	0f 85 50 ff ff ff    	jne    0x43ee39
43eee9:	3b f3                	cmp    %ebx,%esi
43eeeb:	0f 84 73 ff ff ff    	je     0x43ee64
43eef1:	3b fb                	cmp    %ebx,%edi
43eef3:	0f 86 6b ff ff ff    	jbe    0x43ee64
43eef9:	57                   	push   %edi
43eefa:	53                   	push   %ebx
43eefb:	56                   	push   %esi
43eefc:	e8 6f 1c ff ff       	call   0x430b70
43ef01:	83 c4 0c             	add    $0xc,%esp
43ef04:	e9 5b ff ff ff       	jmp    0x43ee64
43ef09:	8b ff                	mov    %edi,%edi
43ef0b:	55                   	push   %ebp
43ef0c:	8b ec                	mov    %esp,%ebp
43ef0e:	6a 00                	push   $0x0
43ef10:	ff 75 14             	push   0x14(%ebp)
43ef13:	ff 75 10             	push   0x10(%ebp)
43ef16:	ff 75 0c             	push   0xc(%ebp)
43ef19:	ff 75 08             	push   0x8(%ebp)
43ef1c:	e8 93 fe ff ff       	call   0x43edb4
43ef21:	83 c4 14             	add    $0x14,%esp
43ef24:	5d                   	pop    %ebp
43ef25:	c3                   	ret
43ef26:	8b ff                	mov    %edi,%edi
43ef28:	55                   	push   %ebp
43ef29:	8b ec                	mov    %esp,%ebp
43ef2b:	83 ec 14             	sub    $0x14,%esp
43ef2e:	ff 75 10             	push   0x10(%ebp)
43ef31:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
43ef35:	8d 4d ec             	lea    -0x14(%ebp),%ecx
43ef38:	e8 ad 1c ff ff       	call   0x430bea
43ef3d:	8d 45 ec             	lea    -0x14(%ebp),%eax
43ef40:	50                   	push   %eax
43ef41:	ff 75 0c             	push   0xc(%ebp)
43ef44:	8b 45 ec             	mov    -0x14(%ebp),%eax
43ef47:	ff b0 ac 00 00 00    	push   0xac(%eax)
43ef4d:	8d 45 fc             	lea    -0x4(%ebp),%eax
43ef50:	ff 75 08             	push   0x8(%ebp)
43ef53:	50                   	push   %eax
43ef54:	e8 5b fe ff ff       	call   0x43edb4
43ef59:	83 c4 14             	add    $0x14,%esp
43ef5c:	85 c0                	test   %eax,%eax
43ef5e:	75 05                	jne    0x43ef65
43ef60:	8b 45 fc             	mov    -0x4(%ebp),%eax
43ef63:	eb 03                	jmp    0x43ef68
43ef65:	83 c8 ff             	or     $0xffffffff,%eax
43ef68:	80 7d f8 00          	cmpb   $0x0,-0x8(%ebp)
43ef6c:	74 07                	je     0x43ef75
43ef6e:	8b 4d f4             	mov    -0xc(%ebp),%ecx
43ef71:	83 61 70 fd          	andl   $0xfffffffd,0x70(%ecx)
43ef75:	c9                   	leave
43ef76:	c3                   	ret
43ef77:	8b ff                	mov    %edi,%edi
43ef79:	55                   	push   %ebp
43ef7a:	8b ec                	mov    %esp,%ebp
43ef7c:	51                   	push   %ecx
43ef7d:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
43ef81:	6a 00                	push   $0x0
43ef83:	ff 75 0c             	push   0xc(%ebp)
43ef86:	e8 7c 56 00 00       	call   0x444607
43ef8b:	50                   	push   %eax
43ef8c:	ff 75 08             	push   0x8(%ebp)
43ef8f:	8d 45 fc             	lea    -0x4(%ebp),%eax
43ef92:	50                   	push   %eax
43ef93:	e8 1c fe ff ff       	call   0x43edb4
43ef98:	83 c4 14             	add    $0x14,%esp
43ef9b:	85 c0                	test   %eax,%eax
43ef9d:	75 05                	jne    0x43efa4
43ef9f:	8b 45 fc             	mov    -0x4(%ebp),%eax
43efa2:	c9                   	leave
43efa3:	c3                   	ret
43efa4:	83 c8 ff             	or     $0xffffffff,%eax
43efa7:	c9                   	leave
43efa8:	c3                   	ret
43efa9:	8b ff                	mov    %edi,%edi
43efab:	55                   	push   %ebp
43efac:	8b ec                	mov    %esp,%ebp
43efae:	83 ec 10             	sub    $0x10,%esp
43efb1:	ff 75 0c             	push   0xc(%ebp)
43efb4:	8d 4d f0             	lea    -0x10(%ebp),%ecx
43efb7:	e8 2e 1c ff ff       	call   0x430bea
43efbc:	0f b6 45 08          	movzbl 0x8(%ebp),%eax
43efc0:	8b 4d f0             	mov    -0x10(%ebp),%ecx
43efc3:	8b 89 c8 00 00 00    	mov    0xc8(%ecx),%ecx
43efc9:	0f b7 04 41          	movzwl (%ecx,%eax,2),%eax
43efcd:	25 00 80 00 00       	and    $0x8000,%eax
43efd2:	80 7d fc 00          	cmpb   $0x0,-0x4(%ebp)
43efd6:	74 07                	je     0x43efdf
43efd8:	8b 4d f8             	mov    -0x8(%ebp),%ecx
43efdb:	83 61 70 fd          	andl   $0xfffffffd,0x70(%ecx)
43efdf:	c9                   	leave
43efe0:	c3                   	ret
43efe1:	8b ff                	mov    %edi,%edi
43efe3:	55                   	push   %ebp
43efe4:	8b ec                	mov    %esp,%ebp
43efe6:	6a 00                	push   $0x0
43efe8:	ff 75 08             	push   0x8(%ebp)
43efeb:	e8 b9 ff ff ff       	call   0x43efa9
43eff0:	59                   	pop    %ecx
43eff1:	59                   	pop    %ecx
43eff2:	5d                   	pop    %ebp
43eff3:	c3                   	ret
43eff4:	8b ff                	mov    %edi,%edi
43eff6:	55                   	push   %ebp
43eff7:	8b ec                	mov    %esp,%ebp
43eff9:	68 03 01 00 00       	push   $0x103
43effe:	ff 75 08             	push   0x8(%ebp)
43f001:	e8 df 37 ff ff       	call   0x4327e5
43f006:	59                   	pop    %ecx
43f007:	59                   	pop    %ecx
43f008:	5d                   	pop    %ebp
43f009:	c3                   	ret
43f00a:	8b ff                	mov    %edi,%edi
43f00c:	55                   	push   %ebp
43f00d:	8b ec                	mov    %esp,%ebp
43f00f:	68 03 01 00 00       	push   $0x103
43f014:	ff 75 08             	push   0x8(%ebp)
43f017:	e8 c9 37 ff ff       	call   0x4327e5
43f01c:	59                   	pop    %ecx
43f01d:	59                   	pop    %ecx
43f01e:	5d                   	pop    %ebp
43f01f:	c3                   	ret
43f020:	8b ff                	mov    %edi,%edi
43f022:	55                   	push   %ebp
43f023:	8b ec                	mov    %esp,%ebp
43f025:	6a 01                	push   $0x1
43f027:	ff 75 08             	push   0x8(%ebp)
43f02a:	e8 b6 37 ff ff       	call   0x4327e5
43f02f:	59                   	pop    %ecx
43f030:	59                   	pop    %ecx
43f031:	5d                   	pop    %ebp
43f032:	c3                   	ret
43f033:	8b ff                	mov    %edi,%edi
43f035:	55                   	push   %ebp
43f036:	8b ec                	mov    %esp,%ebp
43f038:	6a 01                	push   $0x1
43f03a:	ff 75 08             	push   0x8(%ebp)
43f03d:	e8 a3 37 ff ff       	call   0x4327e5
43f042:	59                   	pop    %ecx
43f043:	59                   	pop    %ecx
43f044:	5d                   	pop    %ebp
43f045:	c3                   	ret
43f046:	8b ff                	mov    %edi,%edi
43f048:	55                   	push   %ebp
43f049:	8b ec                	mov    %esp,%ebp
43f04b:	6a 02                	push   $0x2
43f04d:	ff 75 08             	push   0x8(%ebp)
43f050:	e8 90 37 ff ff       	call   0x4327e5
43f055:	59                   	pop    %ecx
43f056:	59                   	pop    %ecx
43f057:	5d                   	pop    %ebp
43f058:	c3                   	ret
43f059:	8b ff                	mov    %edi,%edi
43f05b:	55                   	push   %ebp
43f05c:	8b ec                	mov    %esp,%ebp
43f05e:	6a 02                	push   $0x2
43f060:	ff 75 08             	push   0x8(%ebp)
43f063:	e8 7d 37 ff ff       	call   0x4327e5
43f068:	59                   	pop    %ecx
43f069:	59                   	pop    %ecx
43f06a:	5d                   	pop    %ebp
43f06b:	c3                   	ret
43f06c:	8b ff                	mov    %edi,%edi
43f06e:	55                   	push   %ebp
43f06f:	8b ec                	mov    %esp,%ebp
43f071:	6a 04                	push   $0x4
43f073:	ff 75 08             	push   0x8(%ebp)
43f076:	e8 6a 37 ff ff       	call   0x4327e5
43f07b:	59                   	pop    %ecx
43f07c:	59                   	pop    %ecx
43f07d:	5d                   	pop    %ebp
43f07e:	c3                   	ret
43f07f:	8b ff                	mov    %edi,%edi
43f081:	55                   	push   %ebp
43f082:	8b ec                	mov    %esp,%ebp
43f084:	6a 04                	push   $0x4
43f086:	ff 75 08             	push   0x8(%ebp)
43f089:	e8 57 37 ff ff       	call   0x4327e5
43f08e:	59                   	pop    %ecx
43f08f:	59                   	pop    %ecx
43f090:	5d                   	pop    %ebp
43f091:	c3                   	ret
43f092:	8b ff                	mov    %edi,%edi
43f094:	55                   	push   %ebp
43f095:	8b ec                	mov    %esp,%ebp
43f097:	68 80 00 00 00       	push   $0x80
43f09c:	ff 75 08             	push   0x8(%ebp)
43f09f:	e8 41 37 ff ff       	call   0x4327e5
43f0a4:	59                   	pop    %ecx
43f0a5:	59                   	pop    %ecx
43f0a6:	5d                   	pop    %ebp
43f0a7:	c3                   	ret
43f0a8:	8b ff                	mov    %edi,%edi
43f0aa:	55                   	push   %ebp
43f0ab:	8b ec                	mov    %esp,%ebp
43f0ad:	68 80 00 00 00       	push   $0x80
43f0b2:	ff 75 08             	push   0x8(%ebp)
43f0b5:	e8 2b 37 ff ff       	call   0x4327e5
43f0ba:	59                   	pop    %ecx
43f0bb:	59                   	pop    %ecx
43f0bc:	5d                   	pop    %ebp
43f0bd:	c3                   	ret
43f0be:	8b ff                	mov    %edi,%edi
43f0c0:	55                   	push   %ebp
43f0c1:	8b ec                	mov    %esp,%ebp
43f0c3:	6a 08                	push   $0x8
43f0c5:	ff 75 08             	push   0x8(%ebp)
43f0c8:	e8 18 37 ff ff       	call   0x4327e5
43f0cd:	59                   	pop    %ecx
43f0ce:	59                   	pop    %ecx
43f0cf:	5d                   	pop    %ebp
43f0d0:	c3                   	ret
43f0d1:	8b ff                	mov    %edi,%edi
43f0d3:	55                   	push   %ebp
43f0d4:	8b ec                	mov    %esp,%ebp
43f0d6:	6a 08                	push   $0x8
43f0d8:	ff 75 08             	push   0x8(%ebp)
43f0db:	e8 05 37 ff ff       	call   0x4327e5
43f0e0:	59                   	pop    %ecx
43f0e1:	59                   	pop    %ecx
43f0e2:	5d                   	pop    %ebp
43f0e3:	c3                   	ret
43f0e4:	8b ff                	mov    %edi,%edi
43f0e6:	55                   	push   %ebp
43f0e7:	8b ec                	mov    %esp,%ebp
43f0e9:	6a 10                	push   $0x10
43f0eb:	ff 75 08             	push   0x8(%ebp)
43f0ee:	e8 f2 36 ff ff       	call   0x4327e5
43f0f3:	59                   	pop    %ecx
43f0f4:	59                   	pop    %ecx
43f0f5:	5d                   	pop    %ebp
43f0f6:	c3                   	ret
43f0f7:	8b ff                	mov    %edi,%edi
43f0f9:	55                   	push   %ebp
43f0fa:	8b ec                	mov    %esp,%ebp
43f0fc:	6a 10                	push   $0x10
43f0fe:	ff 75 08             	push   0x8(%ebp)
43f101:	e8 df 36 ff ff       	call   0x4327e5
43f106:	59                   	pop    %ecx
43f107:	59                   	pop    %ecx
43f108:	5d                   	pop    %ebp
43f109:	c3                   	ret
43f10a:	8b ff                	mov    %edi,%edi
43f10c:	55                   	push   %ebp
43f10d:	8b ec                	mov    %esp,%ebp
43f10f:	68 07 01 00 00       	push   $0x107
43f114:	ff 75 08             	push   0x8(%ebp)
43f117:	e8 c9 36 ff ff       	call   0x4327e5
43f11c:	59                   	pop    %ecx
43f11d:	59                   	pop    %ecx
43f11e:	5d                   	pop    %ebp
43f11f:	c3                   	ret
43f120:	8b ff                	mov    %edi,%edi
43f122:	55                   	push   %ebp
43f123:	8b ec                	mov    %esp,%ebp
43f125:	68 07 01 00 00       	push   $0x107