42fda7:	83 ec 28             	sub    $0x28,%esp
42fdaa:	8d 4d d8             	lea    -0x28(%ebp),%ecx
42fdad:	56                   	push   %esi
42fdae:	ff 75 1c             	push   0x1c(%ebp)
42fdb1:	e8 2c d3 fd ff       	call   0x40d0e2
42fdb6:	8d 45 d8             	lea    -0x28(%ebp),%eax
42fdb9:	50                   	push   %eax
42fdba:	ff 75 18             	push   0x18(%ebp)
42fdbd:	ff 75 14             	push   0x14(%ebp)
42fdc0:	ff 75 10             	push   0x10(%ebp)
42fdc3:	ff 75 0c             	push   0xc(%ebp)
42fdc6:	ff 75 08             	push   0x8(%ebp)
42fdc9:	e8 58 fc ff ff       	call   0x42fa26
42fdce:	83 c4 18             	add    $0x18,%esp
42fdd1:	8d 4d d8             	lea    -0x28(%ebp),%ecx
42fdd4:	8b f0                	mov    %eax,%esi
42fdd6:	e8 4f d3 fd ff       	call   0x40d12a
42fddb:	8b c6                	mov    %esi,%eax
42fddd:	5e                   	pop    %esi
42fdde:	c9                   	leave
42fddf:	c3                   	ret
42fde0:	8b ff                	mov    %edi,%edi
42fde2:	55                   	push   %ebp
42fde3:	8b ec                	mov    %esp,%ebp
42fde5:	83 ec 24             	sub    $0x24,%esp
42fde8:	a1 c0 d0 43 00       	mov    0x43d0c0,%eax
42fded:	33 c5                	xor    %ebp,%eax
42fdef:	89 45 fc             	mov    %eax,-0x4(%ebp)
42fdf2:	8b 45 0c             	mov    0xc(%ebp),%eax
42fdf5:	8b 4d 08             	mov    0x8(%ebp),%ecx
42fdf8:	8b 55 18             	mov    0x18(%ebp),%edx
42fdfb:	89 4d dc             	mov    %ecx,-0x24(%ebp)
42fdfe:	89 45 e8             	mov    %eax,-0x18(%ebp)
42fe01:	89 55 e4             	mov    %edx,-0x1c(%ebp)
42fe04:	53                   	push   %ebx
42fe05:	8b 5d 14             	mov    0x14(%ebp),%ebx
42fe08:	89 5d e0             	mov    %ebx,-0x20(%ebp)
42fe0b:	56                   	push   %esi
42fe0c:	57                   	push   %edi
42fe0d:	8b 38                	mov    (%eax),%edi
42fe0f:	85 c9                	test   %ecx,%ecx
42fe11:	0f 84 96 00 00 00    	je     0x42fead
42fe17:	8b 45 10             	mov    0x10(%ebp),%eax
42fe1a:	8b f1                	mov    %ecx,%esi
42fe1c:	89 7d f0             	mov    %edi,-0x10(%ebp)
42fe1f:	83 f8 04             	cmp    $0x4,%eax
42fe22:	73 08                	jae    0x42fe2c
42fe24:	8d 4d f4             	lea    -0xc(%ebp),%ecx
42fe27:	89 4d ec             	mov    %ecx,-0x14(%ebp)
42fe2a:	eb 05                	jmp    0x42fe31
42fe2c:	8b ce                	mov    %esi,%ecx
42fe2e:	89 75 ec             	mov    %esi,-0x14(%ebp)
42fe31:	0f b7 07             	movzwl (%edi),%eax
42fe34:	52                   	push   %edx
42fe35:	53                   	push   %ebx
42fe36:	50                   	push   %eax
42fe37:	51                   	push   %ecx
42fe38:	e8 b2 00 00 00       	call   0x42feef
42fe3d:	8b d8                	mov    %eax,%ebx
42fe3f:	83 c4 10             	add    $0x10,%esp
42fe42:	83 fb ff             	cmp    $0xffffffff,%ebx
42fe45:	74 59                	je     0x42fea0
42fe47:	8b 45 ec             	mov    -0x14(%ebp),%eax
42fe4a:	3b c6                	cmp    %esi,%eax
42fe4c:	74 10                	je     0x42fe5e
42fe4e:	39 5d 10             	cmp    %ebx,0x10(%ebp)
42fe51:	72 48                	jb     0x42fe9b
42fe53:	53                   	push   %ebx
42fe54:	50                   	push   %eax
42fe55:	56                   	push   %esi
42fe56:	e8 e5 af fd ff       	call   0x40ae40
42fe5b:	83 c4 0c             	add    $0xc,%esp
42fe5e:	85 db                	test   %ebx,%ebx
42fe60:	74 1d                	je     0x42fe7f
42fe62:	8d 04 33             	lea    (%ebx,%esi,1),%eax
42fe65:	8d 48 ff             	lea    -0x1(%eax),%ecx
42fe68:	8b f0                	mov    %eax,%esi
42fe6a:	80 39 00             	cmpb   $0x0,(%ecx)
42fe6d:	75 12                	jne    0x42fe81
42fe6f:	33 c0                	xor    %eax,%eax
42fe71:	8b f1                	mov    %ecx,%esi
42fe73:	8b 55 e8             	mov    -0x18(%ebp),%edx
42fe76:	2b 75 dc             	sub    -0x24(%ebp),%esi
42fe79:	89 02                	mov    %eax,(%edx)
42fe7b:	8b c6                	mov    %esi,%eax
42fe7d:	eb 61                	jmp    0x42fee0
42fe7f:	03 f3                	add    %ebx,%esi
42fe81:	83 c7 02             	add    $0x2,%edi
42fe84:	85 db                	test   %ebx,%ebx
42fe86:	74 03                	je     0x42fe8b
42fe88:	89 7d f0             	mov    %edi,-0x10(%ebp)
42fe8b:	8b 45 10             	mov    0x10(%ebp),%eax
42fe8e:	8b 55 e4             	mov    -0x1c(%ebp),%edx
42fe91:	2b c3                	sub    %ebx,%eax
42fe93:	8b 5d e0             	mov    -0x20(%ebp),%ebx
42fe96:	89 45 10             	mov    %eax,0x10(%ebp)
42fe99:	eb 84                	jmp    0x42fe1f
42fe9b:	8b 45 f0             	mov    -0x10(%ebp),%eax
42fe9e:	eb d3                	jmp    0x42fe73
42fea0:	8b 55 e8             	mov    -0x18(%ebp),%edx
42fea3:	83 c8 ff             	or     $0xffffffff,%eax
42fea6:	8b 4d f0             	mov    -0x10(%ebp),%ecx
42fea9:	89 0a                	mov    %ecx,(%edx)
42feab:	eb 33                	jmp    0x42fee0
42fead:	33 f6                	xor    %esi,%esi
42feaf:	52                   	push   %edx
42feb0:	eb 13                	jmp    0x42fec5
42feb2:	85 c0                	test   %eax,%eax
42feb4:	74 07                	je     0x42febd
42feb6:	80 7c 05 f3 00       	cmpb   $0x0,-0xd(%ebp,%eax,1)
42febb:	74 20                	je     0x42fedd
42febd:	ff 75 e4             	push   -0x1c(%ebp)
42fec0:	03 f0                	add    %eax,%esi
42fec2:	83 c7 02             	add    $0x2,%edi
42fec5:	0f b7 07             	movzwl (%edi),%eax
42fec8:	53                   	push   %ebx
42fec9:	50                   	push   %eax
42feca:	8d 45 f4             	lea    -0xc(%ebp),%eax
42fecd:	50                   	push   %eax
42fece:	e8 1c 00 00 00       	call   0x42feef
42fed3:	83 c4 10             	add    $0x10,%esp
42fed6:	83 f8 ff             	cmp    $0xffffffff,%eax
42fed9:	75 d7                	jne    0x42feb2
42fedb:	eb 03                	jmp    0x42fee0
42fedd:	48                   	dec    %eax
42fede:	03 c6                	add    %esi,%eax
42fee0:	8b 4d fc             	mov    -0x4(%ebp),%ecx
42fee3:	5f                   	pop    %edi
42fee4:	5e                   	pop    %esi
42fee5:	33 cd                	xor    %ebp,%ecx
42fee7:	5b                   	pop    %ebx
42fee8:	e8 ba 9d fd ff       	call   0x409ca7
42feed:	c9                   	leave
42feee:	c3                   	ret
42feef:	8b ff                	mov    %edi,%edi
42fef1:	55                   	push   %ebp
42fef2:	8b ec                	mov    %esp,%ebp
42fef4:	51                   	push   %ecx
42fef5:	51                   	push   %ecx
42fef6:	8b 55 0c             	mov    0xc(%ebp),%edx
42fef9:	56                   	push   %esi
42fefa:	8b 75 10             	mov    0x10(%ebp),%esi
42fefd:	0f b7 ca             	movzwl %dx,%ecx
42ff00:	57                   	push   %edi
42ff01:	85 f6                	test   %esi,%esi
42ff03:	75 05                	jne    0x42ff0a
42ff05:	be 80 ff 43 00       	mov    $0x43ff80,%esi
42ff0a:	83 3e 00             	cmpl   $0x0,(%esi)
42ff0d:	8d 81 00 24 00 00    	lea    0x2400(%ecx),%eax
42ff13:	0f b7 c0             	movzwl %ax,%eax
42ff16:	75 47                	jne    0x42ff5f
42ff18:	bf ff 03 00 00       	mov    $0x3ff,%edi
42ff1d:	66 3b c7             	cmp    %di,%ax
42ff20:	77 0d                	ja     0x42ff2f
42ff22:	ff 75 14             	push   0x14(%ebp)
42ff25:	56                   	push   %esi
42ff26:	e8 26 b1 ff ff       	call   0x42b051
42ff2b:	59                   	pop    %ecx
42ff2c:	59                   	pop    %ecx
42ff2d:	eb 66                	jmp    0x42ff95
42ff2f:	8d 82 00 28 00 00    	lea    0x2800(%edx),%eax
42ff35:	66 3b c7             	cmp    %di,%ax
42ff38:	8b c1                	mov    %ecx,%eax
42ff3a:	77 11                	ja     0x42ff4d
42ff3c:	25 ff 27 ff ff       	and    $0xffff27ff,%eax
42ff41:	83 c0 40             	add    $0x40,%eax
42ff44:	c1 e0 0a             	shl    $0xa,%eax
42ff47:	89 06                	mov    %eax,(%esi)
42ff49:	33 c0                	xor    %eax,%eax
42ff4b:	eb 48                	jmp    0x42ff95
42ff4d:	ff 75 14             	push   0x14(%ebp)
42ff50:	56                   	push   %esi
42ff51:	50                   	push   %eax
42ff52:	ff 75 08             	push   0x8(%ebp)
42ff55:	e8 54 7d ff ff       	call   0x427cae
42ff5a:	83 c4 10             	add    $0x10,%esp
42ff5d:	eb 36                	jmp    0x42ff95
42ff5f:	ff 75 14             	push   0x14(%ebp)
42ff62:	b9 ff 03 00 00       	mov    $0x3ff,%ecx
42ff67:	66 3b c1             	cmp    %cx,%ax
42ff6a:	77 b9                	ja     0x42ff25
42ff6c:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
42ff70:	8d 45 f8             	lea    -0x8(%ebp),%eax
42ff73:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
42ff77:	50                   	push   %eax
42ff78:	0f b7 c2             	movzwl %dx,%eax
42ff7b:	25 ff 23 ff ff       	and    $0xffff23ff,%eax
42ff80:	03 06                	add    (%esi),%eax
42ff82:	50                   	push   %eax
42ff83:	ff 75 08             	push   0x8(%ebp)
42ff86:	e8 23 7d ff ff       	call   0x427cae
42ff8b:	56                   	push   %esi
42ff8c:	50                   	push   %eax
42ff8d:	e8 ab b0 ff ff       	call   0x42b03d
42ff92:	83 c4 18             	add    $0x18,%esp
42ff95:	5f                   	pop    %edi
42ff96:	5e                   	pop    %esi
42ff97:	c9                   	leave
42ff98:	c3                   	ret
42ff99:	55                   	push   %ebp
42ff9a:	8b ec                	mov    %esp,%ebp
42ff9c:	51                   	push   %ecx
42ff9d:	83 3d d0 f5 43 00 01 	cmpl   $0x1,0x43f5d0
42ffa4:	8b 4d 08             	mov    0x8(%ebp),%ecx
42ffa7:	7c 5c                	jl     0x430005
42ffa9:	81 f9 b4 02 00 c0    	cmp    $0xc00002b4,%ecx
42ffaf:	74 08                	je     0x42ffb9
42ffb1:	81 f9 b5 02 00 c0    	cmp    $0xc00002b5,%ecx
42ffb7:	75 4c                	jne    0x430005
42ffb9:	0f ae 5d fc          	stmxcsr -0x4(%ebp)
42ffbd:	8b 45 fc             	mov    -0x4(%ebp),%eax
42ffc0:	83 f0 3f             	xor    $0x3f,%eax
42ffc3:	a8 81                	test   $0x81,%al
42ffc5:	74 42                	je     0x430009
42ffc7:	a9 04 02 00 00       	test   $0x204,%eax
42ffcc:	75 07                	jne    0x42ffd5
42ffce:	b8 8e 00 00 c0       	mov    $0xc000008e,%eax
42ffd3:	c9                   	leave
42ffd4:	c3                   	ret
42ffd5:	a9 02 01 00 00       	test   $0x102,%eax
42ffda:	74 2d                	je     0x430009
42ffdc:	a9 08 04 00 00       	test   $0x408,%eax
42ffe1:	75 07                	jne    0x42ffea
42ffe3:	b8 91 00 00 c0       	mov    $0xc0000091,%eax
42ffe8:	c9                   	leave
42ffe9:	c3                   	ret
42ffea:	a9 10 08 00 00       	test   $0x810,%eax
42ffef:	75 07                	jne    0x42fff8
42fff1:	b8 93 00 00 c0       	mov    $0xc0000093,%eax
42fff6:	c9                   	leave
42fff7:	c3                   	ret
42fff8:	a9 20 10 00 00       	test   $0x1020,%eax
42fffd:	b8 8f 00 00 c0       	mov    $0xc000008f,%eax
430002:	0f 44 c8             	cmove  %eax,%ecx
430005:	8b c1                	mov    %ecx,%eax
430007:	c9                   	leave
430008:	c3                   	ret
430009:	b8 90 00 00 c0       	mov    $0xc0000090,%eax
43000e:	c9                   	leave
43000f:	c3                   	ret
430010:	90                   	nop
430011:	90                   	nop
430012:	b8 e0 a5 43 00       	mov    $0x43a5e0,%eax
430017:	e9 e0 ad fd ff       	jmp    0x40adfc
43001c:	cc                   	int3
43001d:	cc                   	int3
43001e:	cc                   	int3
43001f:	cc                   	int3
430020:	68 ec de 43 00       	push   $0x43deec
430025:	e8 2f 99 fd ff       	call   0x409959
43002a:	59                   	pop    %ecx
43002b:	c3                   	ret
43002c:	cc                   	int3
43002d:	cc                   	int3
43002e:	cc                   	int3
43002f:	cc                   	int3
430030:	cc                   	int3
430031:	90                   	nop
430032:	90                   	nop
430033:	b8 0c a6 43 00       	mov    $0x43a60c,%eax
430038:	e9 bf ad fd ff       	jmp    0x40adfc
43003d:	cc                   	int3
43003e:	cc                   	int3
43003f:	cc                   	int3
430040:	8d 4d e0             	lea    -0x20(%ebp),%ecx
430043:	e9 b8 7a fd ff       	jmp    0x407b00
430048:	8b 4d e8             	mov    -0x18(%ebp),%ecx
43004b:	e9 74 1f fd ff       	jmp    0x401fc4
430050:	8d 4d dc             	lea    -0x24(%ebp),%ecx
430053:	e9 c8 7a fd ff       	jmp    0x407b20
430058:	cc                   	int3
430059:	cc                   	int3
43005a:	cc                   	int3
43005b:	cc                   	int3
43005c:	cc                   	int3
43005d:	90                   	nop
43005e:	90                   	nop
43005f:	b8 4c a8 43 00       	mov    $0x43a84c,%eax
430064:	e9 93 ad fd ff       	jmp    0x40adfc
430069:	cc                   	int3
43006a:	cc                   	int3
43006b:	cc                   	int3
43006c:	cc                   	int3
43006d:	cc                   	int3
43006e:	cc                   	int3
43006f:	cc                   	int3
430070:	8d 4d d0             	lea    -0x30(%ebp),%ecx
430073:	e9 88 7a fd ff       	jmp    0x407b00
430078:	cc                   	int3
430079:	cc                   	int3
43007a:	cc                   	int3
43007b:	cc                   	int3
43007c:	cc                   	int3
43007d:	90                   	nop
43007e:	90                   	nop
43007f:	b8 e4 a7 43 00       	mov    $0x43a7e4,%eax
430084:	e9 73 ad fd ff       	jmp    0x40adfc
430089:	cc                   	int3
43008a:	cc                   	int3
43008b:	cc                   	int3
43008c:	cc                   	int3
43008d:	cc                   	int3
43008e:	cc                   	int3
43008f:	cc                   	int3
430090:	90                   	nop
430091:	90                   	nop
430092:	b8 b8 a7 43 00       	mov    $0x43a7b8,%eax
430097:	e9 60 ad fd ff       	jmp    0x40adfc
43009c:	cc                   	int3
43009d:	cc                   	int3
43009e:	cc                   	int3
43009f:	cc                   	int3
4300a0:	8d 4d e8             	lea    -0x18(%ebp),%ecx
4300a3:	e9 c8 7a fd ff       	jmp    0x407b70
4300a8:	cc                   	int3
4300a9:	cc                   	int3
4300aa:	cc                   	int3
4300ab:	cc                   	int3
4300ac:	cc                   	int3
4300ad:	90                   	nop
4300ae:	90                   	nop
4300af:	b8 10 a8 43 00       	mov    $0x43a810,%eax
4300b4:	e9 43 ad fd ff       	jmp    0x40adfc
4300b9:	cc                   	int3
4300ba:	cc                   	int3
4300bb:	cc                   	int3
4300bc:	cc                   	int3
4300bd:	cc                   	int3
4300be:	cc                   	int3
4300bf:	cc                   	int3
4300c0:	8b 4d c8             	mov    -0x38(%ebp),%ecx
4300c3:	e9 98 7b fd ff       	jmp    0x407c60
4300c8:	8b 4d c8             	mov    -0x38(%ebp),%ecx
4300cb:	83 c1 1c             	add    $0x1c,%ecx
4300ce:	e9 f1 1e fd ff       	jmp    0x401fc4
4300d3:	8b 4d c8             	mov    -0x38(%ebp),%ecx
4300d6:	83 c1 34             	add    $0x34,%ecx
4300d9:	ff 25 18 12 43 00    	jmp    *0x431218
4300df:	6a 24                	push   $0x24
4300e1:	8b 45 e4             	mov    -0x1c(%ebp),%eax
4300e4:	50                   	push   %eax
4300e5:	e8 06 69 fd ff       	call   0x4069f0
4300ea:	83 c4 08             	add    $0x8,%esp
4300ed:	c3                   	ret
4300ee:	8b 45 e8             	mov    -0x18(%ebp),%eax
4300f1:	83 e0 01             	and    $0x1,%eax
4300f4:	0f 84 0c 00 00 00    	je     0x430106
4300fa:	83 65 e8 fe          	andl   $0xfffffffe,-0x18(%ebp)
4300fe:	8d 4d cc             	lea    -0x34(%ebp),%ecx
430101:	e9 be 1e fd ff       	jmp    0x401fc4