429dbe:	8b d9                	mov    %ecx,%ebx
429dc0:	8b f8                	mov    %eax,%edi
429dc2:	83 fa ff             	cmp    $0xffffffff,%edx
429dc5:	75 16                	jne    0x429ddd
429dc7:	2b de                	sub    %esi,%ebx
429dc9:	0f b7 06             	movzwl (%esi),%eax
429dcc:	66 89 04 33          	mov    %ax,(%ebx,%esi,1)
429dd0:	8d 76 02             	lea    0x2(%esi),%esi
429dd3:	66 85 c0             	test   %ax,%ax
429dd6:	74 25                	je     0x429dfd
429dd8:	4f                   	dec    %edi
429dd9:	75 ee                	jne    0x429dc9
429ddb:	eb 20                	jmp    0x429dfd
429ddd:	2b f1                	sub    %ecx,%esi
429ddf:	0f b7 04 1e          	movzwl (%esi,%ebx,1),%eax
429de3:	66 89 03             	mov    %ax,(%ebx)
429de6:	8d 5b 02             	lea    0x2(%ebx),%ebx
429de9:	66 85 c0             	test   %ax,%ax
429dec:	74 06                	je     0x429df4
429dee:	4f                   	dec    %edi
429def:	74 03                	je     0x429df4
429df1:	4a                   	dec    %edx
429df2:	75 eb                	jne    0x429ddf
429df4:	85 d2                	test   %edx,%edx
429df6:	75 05                	jne    0x429dfd
429df8:	33 c0                	xor    %eax,%eax
429dfa:	66 89 03             	mov    %ax,(%ebx)
429dfd:	85 ff                	test   %edi,%edi
429dff:	5f                   	pop    %edi
429e00:	5b                   	pop    %ebx
429e01:	0f 85 7b ff ff ff    	jne    0x429d82
429e07:	83 fa ff             	cmp    $0xffffffff,%edx
429e0a:	75 0f                	jne    0x429e1b
429e0c:	8b 45 0c             	mov    0xc(%ebp),%eax
429e0f:	33 d2                	xor    %edx,%edx
429e11:	6a 50                	push   $0x50
429e13:	66 89 54 41 fe       	mov    %dx,-0x2(%ecx,%eax,2)
429e18:	58                   	pop    %eax
429e19:	eb 9e                	jmp    0x429db9
429e1b:	33 c0                	xor    %eax,%eax
429e1d:	66 89 01             	mov    %ax,(%ecx)
429e20:	e8 e9 dd ff ff       	call   0x427c0e
429e25:	6a 22                	push   $0x22
429e27:	eb 86                	jmp    0x429daf
429e29:	55                   	push   %ebp
429e2a:	8b ec                	mov    %esp,%ebp
429e2c:	83 ec 24             	sub    $0x24,%esp
429e2f:	a1 c0 ad 4b 00       	mov    0x4badc0,%eax
429e34:	33 c5                	xor    %ebp,%eax
429e36:	89 45 fc             	mov    %eax,-0x4(%ebp)
429e39:	8b 45 08             	mov    0x8(%ebp),%eax
429e3c:	8b 4d 0c             	mov    0xc(%ebp),%ecx
429e3f:	53                   	push   %ebx
429e40:	56                   	push   %esi
429e41:	57                   	push   %edi
429e42:	89 45 dc             	mov    %eax,-0x24(%ebp)
429e45:	8b 45 10             	mov    0x10(%ebp),%eax
429e48:	50                   	push   %eax
429e49:	33 f6                	xor    %esi,%esi
429e4b:	56                   	push   %esi
429e4c:	56                   	push   %esi
429e4d:	56                   	push   %esi
429e4e:	56                   	push   %esi
429e4f:	51                   	push   %ecx
429e50:	8d 45 e0             	lea    -0x20(%ebp),%eax
429e53:	50                   	push   %eax
429e54:	8d 45 f0             	lea    -0x10(%ebp),%eax
429e57:	50                   	push   %eax
429e58:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
429e5b:	8b fe                	mov    %esi,%edi
429e5d:	e8 6e 00 00 00       	call   0x429ed0
429e62:	8b d8                	mov    %eax,%ebx
429e64:	83 c4 20             	add    $0x20,%esp
429e67:	f6 c3 04             	test   $0x4,%bl
429e6a:	74 09                	je     0x429e75
429e6c:	bf 00 02 00 00       	mov    $0x200,%edi
429e71:	8b c6                	mov    %esi,%eax
429e73:	eb 34                	jmp    0x429ea9
429e75:	8d 45 e8             	lea    -0x18(%ebp),%eax
429e78:	50                   	push   %eax
429e79:	8d 45 f0             	lea    -0x10(%ebp),%eax
429e7c:	50                   	push   %eax
429e7d:	e8 8d a2 00 00       	call   0x43410f
429e82:	59                   	pop    %ecx
429e83:	59                   	pop    %ecx
429e84:	f6 c3 02             	test   $0x2,%bl
429e87:	75 05                	jne    0x429e8e
429e89:	83 f8 01             	cmp    $0x1,%eax
429e8c:	75 05                	jne    0x429e93
429e8e:	bf 80 00 00 00       	mov    $0x80,%edi
429e93:	f6 c3 01             	test   $0x1,%bl
429e96:	75 05                	jne    0x429e9d
429e98:	83 f8 02             	cmp    $0x2,%eax
429e9b:	75 06                	jne    0x429ea3
429e9d:	81 cf 00 01 00 00    	or     $0x100,%edi
429ea3:	8b 75 e8             	mov    -0x18(%ebp),%esi
429ea6:	8b 45 ec             	mov    -0x14(%ebp),%eax
429ea9:	8b 55 dc             	mov    -0x24(%ebp),%edx
429eac:	8b 4d e0             	mov    -0x20(%ebp),%ecx
429eaf:	2b 4d e4             	sub    -0x1c(%ebp),%ecx
429eb2:	89 3a                	mov    %edi,(%edx)
429eb4:	d1 f9                	sar    $1,%ecx
429eb6:	89 4a 04             	mov    %ecx,0x4(%edx)
429eb9:	8b 4d fc             	mov    -0x4(%ebp),%ecx
429ebc:	5f                   	pop    %edi
429ebd:	89 72 10             	mov    %esi,0x10(%edx)
429ec0:	5e                   	pop    %esi
429ec1:	89 42 14             	mov    %eax,0x14(%edx)
429ec4:	33 cd                	xor    %ebp,%ecx
429ec6:	8b c2                	mov    %edx,%eax
429ec8:	5b                   	pop    %ebx
429ec9:	e8 3e 08 00 00       	call   0x42a70c
429ece:	c9                   	leave
429ecf:	c3                   	ret
429ed0:	55                   	push   %ebp
429ed1:	8b ec                	mov    %esp,%ebp
429ed3:	81 ec 84 00 00 00    	sub    $0x84,%esp
429ed9:	a1 c0 ad 4b 00       	mov    0x4badc0,%eax
429ede:	33 c5                	xor    %ebp,%eax
429ee0:	89 45 fc             	mov    %eax,-0x4(%ebp)
429ee3:	8b 45 08             	mov    0x8(%ebp),%eax
429ee6:	89 85 7c ff ff ff    	mov    %eax,-0x84(%ebp)
429eec:	8b 45 0c             	mov    0xc(%ebp),%eax
429eef:	89 45 a4             	mov    %eax,-0x5c(%ebp)
429ef2:	33 c0                	xor    %eax,%eax
429ef4:	53                   	push   %ebx
429ef5:	33 db                	xor    %ebx,%ebx
429ef7:	40                   	inc    %eax
429ef8:	56                   	push   %esi
429ef9:	89 45 88             	mov    %eax,-0x78(%ebp)
429efc:	8b c3                	mov    %ebx,%eax
429efe:	8d 75 e0             	lea    -0x20(%ebp),%esi
429f01:	57                   	push   %edi
429f02:	89 75 a8             	mov    %esi,-0x58(%ebp)
429f05:	89 5d 80             	mov    %ebx,-0x80(%ebp)
429f08:	89 5d b0             	mov    %ebx,-0x50(%ebp)
429f0b:	89 5d 90             	mov    %ebx,-0x70(%ebp)
429f0e:	89 5d a0             	mov    %ebx,-0x60(%ebp)
429f11:	89 5d 8c             	mov    %ebx,-0x74(%ebp)
429f14:	8b fb                	mov    %ebx,%edi
429f16:	89 5d ac             	mov    %ebx,-0x54(%ebp)
429f19:	39 45 24             	cmp    %eax,0x24(%ebp)
429f1c:	75 17                	jne    0x429f35
429f1e:	e8 eb dc ff ff       	call   0x427c0e
429f23:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
429f29:	e8 e2 ce ff ff       	call   0x426e10
429f2e:	33 c0                	xor    %eax,%eax
429f30:	e9 98 07 00 00       	jmp    0x42a6cd
429f35:	8b 55 10             	mov    0x10(%ebp),%edx
429f38:	89 55 b4             	mov    %edx,-0x4c(%ebp)
429f3b:	c7 45 9c 09 00 00 00 	movl   $0x9,-0x64(%ebp)
429f42:	c7 45 98 0a 00 00 00 	movl   $0xa,-0x68(%ebp)
429f49:	0f b7 0a             	movzwl (%edx),%ecx
429f4c:	83 f9 20             	cmp    $0x20,%ecx
429f4f:	74 11                	je     0x429f62
429f51:	66 3b 4d 9c          	cmp    -0x64(%ebp),%cx
429f55:	74 0b                	je     0x429f62
429f57:	66 3b 4d 98          	cmp    -0x68(%ebp),%cx
429f5b:	74 05                	je     0x429f62
429f5d:	83 f9 0d             	cmp    $0xd,%ecx
429f60:	75 05                	jne    0x429f67
429f62:	83 c2 02             	add    $0x2,%edx
429f65:	eb e2                	jmp    0x429f49
429f67:	c7 45 98 08 00 00 00 	movl   $0x8,-0x68(%ebp)
429f6e:	c7 45 94 30 00 00 00 	movl   $0x30,-0x6c(%ebp)
429f75:	c7 45 9c 39 00 00 00 	movl   $0x39,-0x64(%ebp)
429f7c:	0f b7 0a             	movzwl (%edx),%ecx
429f7f:	83 c2 02             	add    $0x2,%edx
429f82:	89 4d 84             	mov    %ecx,-0x7c(%ebp)
429f85:	83 f8 0b             	cmp    $0xb,%eax
429f88:	0f 87 d1 02 00 00    	ja     0x42a25f
429f8e:	ff 24 85 dc a6 42 00 	jmp    *0x42a6dc(,%eax,4)
429f95:	8d 41 cf             	lea    -0x31(%ecx),%eax
429f98:	66 3b 45 98          	cmp    -0x68(%ebp),%ax
429f9c:	77 08                	ja     0x429fa6
429f9e:	6a 03                	push   $0x3
429fa0:	58                   	pop    %eax
429fa1:	83 ea 02             	sub    $0x2,%edx
429fa4:	eb d6                	jmp    0x429f7c
429fa6:	8b 45 24             	mov    0x24(%ebp),%eax
429fa9:	0f b7 c9             	movzwl %cx,%ecx
429fac:	8b 00                	mov    (%eax),%eax
429fae:	8b 80 84 00 00 00    	mov    0x84(%eax),%eax
429fb4:	8b 00                	mov    (%eax),%eax
429fb6:	0f be 00             	movsbl (%eax),%eax
429fb9:	3b c8                	cmp    %eax,%ecx
429fbb:	75 05                	jne    0x429fc2
429fbd:	6a 05                	push   $0x5
429fbf:	58                   	pop    %eax
429fc0:	eb ba                	jmp    0x429f7c
429fc2:	83 e9 2b             	sub    $0x2b,%ecx
429fc5:	74 1f                	je     0x429fe6
429fc7:	49                   	dec    %ecx
429fc8:	49                   	dec    %ecx
429fc9:	74 0e                	je     0x429fd9
429fcb:	83 e9 03             	sub    $0x3,%ecx
429fce:	0f 85 f3 02 00 00    	jne    0x42a2c7
429fd4:	33 c0                	xor    %eax,%eax
429fd6:	40                   	inc    %eax
429fd7:	eb a3                	jmp    0x429f7c
429fd9:	6a 02                	push   $0x2
429fdb:	b9 00 80 00 00       	mov    $0x8000,%ecx
429fe0:	58                   	pop    %eax
429fe1:	89 4d 80             	mov    %ecx,-0x80(%ebp)
429fe4:	eb 96                	jmp    0x429f7c
429fe6:	6a 02                	push   $0x2
429fe8:	58                   	pop    %eax
429fe9:	89 5d 80             	mov    %ebx,-0x80(%ebp)
429fec:	eb 8e                	jmp    0x429f7c
429fee:	33 c0                	xor    %eax,%eax
429ff0:	40                   	inc    %eax
429ff1:	89 45 90             	mov    %eax,-0x70(%ebp)
429ff4:	8d 41 cf             	lea    -0x31(%ecx),%eax
429ff7:	66 3b 45 98          	cmp    -0x68(%ebp),%ax
429ffb:	76 a1                	jbe    0x429f9e
429ffd:	8b 45 24             	mov    0x24(%ebp),%eax
42a000:	0f b7 c9             	movzwl %cx,%ecx
42a003:	8b 00                	mov    (%eax),%eax
42a005:	8b 80 84 00 00 00    	mov    0x84(%eax),%eax
42a00b:	8b 00                	mov    (%eax),%eax
42a00d:	0f be 00             	movsbl (%eax),%eax
42a010:	3b c8                	cmp    %eax,%ecx
42a012:	75 04                	jne    0x42a018
42a014:	6a 04                	push   $0x4
42a016:	eb a7                	jmp    0x429fbf
42a018:	83 f9 2b             	cmp    $0x2b,%ecx
42a01b:	74 2f                	je     0x42a04c
42a01d:	83 f9 2d             	cmp    $0x2d,%ecx
42a020:	74 2a                	je     0x42a04c
42a022:	6a 30                	push   $0x30
42a024:	58                   	pop    %eax
42a025:	3b c8                	cmp    %eax,%ecx
42a027:	74 ab                	je     0x429fd4
42a029:	83 f9 43             	cmp    $0x43,%ecx
42a02c:	0f 8e 95 02 00 00    	jle    0x42a2c7
42a032:	83 f9 45             	cmp    $0x45,%ecx
42a035:	7e 0e                	jle    0x42a045
42a037:	8d 41 9c             	lea    -0x64(%ecx),%eax
42a03a:	33 c9                	xor    %ecx,%ecx
42a03c:	41                   	inc    %ecx
42a03d:	3b c1                	cmp    %ecx,%eax
42a03f:	0f 87 82 02 00 00    	ja     0x42a2c7
42a045:	6a 06                	push   $0x6
42a047:	e9 73 ff ff ff       	jmp    0x429fbf
42a04c:	83 ea 02             	sub    $0x2,%edx
42a04f:	6a 0b                	push   $0xb
42a051:	e9 69 ff ff ff       	jmp    0x429fbf
42a056:	8d 41 cf             	lea    -0x31(%ecx),%eax
42a059:	6a 08                	push   $0x8
42a05b:	59                   	pop    %ecx
42a05c:	66 3b c1             	cmp    %cx,%ax
42a05f:	0f 86 39 ff ff ff    	jbe    0x429f9e
42a065:	8b 45 24             	mov    0x24(%ebp),%eax
42a068:	8b 75 84             	mov    -0x7c(%ebp),%esi
42a06b:	8b 00                	mov    (%eax),%eax
42a06d:	8b 80 84 00 00 00    	mov    0x84(%eax),%eax
42a073:	8b 00                	mov    (%eax),%eax
42a075:	0f be 08             	movsbl (%eax),%ecx
42a078:	0f b7 c6             	movzwl %si,%eax
42a07b:	3b c1                	cmp    %ecx,%eax
42a07d:	75 0b                	jne    0x42a08a
42a07f:	6a 05                	push   $0x5
42a081:	58                   	pop    %eax
42a082:	8b 75 a8             	mov    -0x58(%ebp),%esi
42a085:	e9 f2 fe ff ff       	jmp    0x429f7c
42a08a:	6a 30                	push   $0x30
42a08c:	58                   	pop    %eax
42a08d:	66 3b f0             	cmp    %ax,%si
42a090:	0f 85 d6 01 00 00    	jne    0x42a26c
42a096:	33 c0                	xor    %eax,%eax
42a098:	40                   	inc    %eax
42a099:	eb e7                	jmp    0x42a082
42a09b:	33 c0                	xor    %eax,%eax
42a09d:	40                   	inc    %eax
42a09e:	6a 30                	push   $0x30
42a0a0:	89 45 90             	mov    %eax,-0x70(%ebp)
42a0a3:	58                   	pop    %eax
42a0a4:	66 3b c8             	cmp    %ax,%cx
42a0a7:	72 32                	jb     0x42a0db
42a0a9:	8b 45 b0             	mov    -0x50(%ebp),%eax
42a0ac:	8b 7d ac             	mov    -0x54(%ebp),%edi
42a0af:	66 3b 4d 9c          	cmp    -0x64(%ebp),%cx
42a0b3:	77 1b                	ja     0x42a0d0
42a0b5:	83 f8 19             	cmp    $0x19,%eax
42a0b8:	73 09                	jae    0x42a0c3
42a0ba:	80 e9 30             	sub    $0x30,%cl
42a0bd:	40                   	inc    %eax
42a0be:	88 0e                	mov    %cl,(%esi)
42a0c0:	46                   	inc    %esi
42a0c1:	eb 01                	jmp    0x42a0c4
42a0c3:	47                   	inc    %edi
42a0c4:	0f b7 0a             	movzwl (%edx),%ecx
42a0c7:	83 c2 02             	add    $0x2,%edx
42a0ca:	66 3b 4d 94          	cmp    -0x6c(%ebp),%cx
42a0ce:	73 df                	jae    0x42a0af
42a0d0:	89 7d ac             	mov    %edi,-0x54(%ebp)
42a0d3:	89 45 b0             	mov    %eax,-0x50(%ebp)
42a0d6:	89 75 a8             	mov    %esi,-0x58(%ebp)
42a0d9:	8b fb                	mov    %ebx,%edi
42a0db:	8b 45 24             	mov    0x24(%ebp),%eax
42a0de:	0f b7 c9             	movzwl %cx,%ecx
42a0e1:	8b 00                	mov    (%eax),%eax
42a0e3:	8b 80 84 00 00 00    	mov    0x84(%eax),%eax
42a0e9:	8b 00                	mov    (%eax),%eax
42a0eb:	0f be 00             	movsbl (%eax),%eax
42a0ee:	3b c8                	cmp    %eax,%ecx
42a0f0:	0f 84 1e ff ff ff    	je     0x42a014
42a0f6:	83 f9 2b             	cmp    $0x2b,%ecx
42a0f9:	0f 84 4d ff ff ff    	je     0x42a04c
42a0ff:	83 f9 2d             	cmp    $0x2d,%ecx
42a102:	0f 84 44 ff ff ff    	je     0x42a04c
42a108:	e9 1c ff ff ff       	jmp    0x42a029
42a10d:	33 c0                	xor    %eax,%eax
42a10f:	40                   	inc    %eax
42a110:	89 45 90             	mov    %eax,-0x70(%ebp)
42a113:	89 45 a0             	mov    %eax,-0x60(%ebp)
42a116:	8b 45 b0             	mov    -0x50(%ebp),%eax
42a119:	85 c0                	test   %eax,%eax
42a11b:	75 1c                	jne    0x42a139
42a11d:	66 3b 4d 94          	cmp    -0x6c(%ebp),%cx
42a121:	75 1a                	jne    0x42a13d
42a123:	8b 75 ac             	mov    -0x54(%ebp),%esi
42a126:	0f b7 0a             	movzwl (%edx),%ecx
42a129:	4e                   	dec    %esi
42a12a:	83 c2 02             	add    $0x2,%edx
42a12d:	66 3b 4d 94          	cmp    -0x6c(%ebp),%cx
42a131:	74 f3                	je     0x42a126
42a133:	89 75 ac             	mov    %esi,-0x54(%ebp)
42a136:	8b 75 a8             	mov    -0x58(%ebp),%esi
42a139:	66 3b 4d 94          	cmp    -0x6c(%ebp),%cx
42a13d:	72 2d                	jb     0x42a16c
42a13f:	8b 7d ac             	mov    -0x54(%ebp),%edi
42a142:	66 3b 4d 9c          	cmp    -0x64(%ebp),%cx
42a146:	77 19                	ja     0x42a161
42a148:	83 f8 19             	cmp    $0x19,%eax
42a14b:	73 08                	jae    0x42a155
42a14d:	80 e9 30             	sub    $0x30,%cl
42a150:	40                   	inc    %eax
42a151:	88 0e                	mov    %cl,(%esi)
42a153:	46                   	inc    %esi
42a154:	4f                   	dec    %edi
42a155:	0f b7 0a             	movzwl (%edx),%ecx
42a158:	83 c2 02             	add    $0x2,%edx
42a15b:	66 3b 4d 94          	cmp    -0x6c(%ebp),%cx
42a15f:	73 e1                	jae    0x42a142
42a161:	89 7d ac             	mov    %edi,-0x54(%ebp)
42a164:	89 45 b0             	mov    %eax,-0x50(%ebp)
42a167:	89 75 a8             	mov    %esi,-0x58(%ebp)
42a16a:	8b fb                	mov    %ebx,%edi
42a16c:	0f b7 c1             	movzwl %cx,%eax